Skip to content

Commit

Permalink
5.1.0 (#486)
Browse files Browse the repository at this point in the history
* Fix rare bug that can cause a flickering line

* Add overrideable header border bottom color

* Add onKeyDown/Up

* Allow disabling drawing of the focus ring

* Allow passing of custom image window loader

* Fix markdown button

* Custom renderer API (#481)

* Update names

* Add third party renderer API

* "Fix" build

* More correct type

* Implement onPaste

* Unify draw args

* Mostly working?

* Fix build

* This one too

* Cleanup most casts

* Fix tests

* Deprecate useCustomCells

* Improve type compat

* Fix

* Add test for broken space behavior

* Fix test

* Make it possible to disable grow when resizing

* Move to NPM workspaces (#482)

* Building workspaces

* Storybook crap

* Fix storybook

* Cleanup versioning

* Hopefully fix CI

* Try again

* Correct node version

* Simplify

* More work on correct builds

* More build fixes

* Fix broken tests

* 5.0.1-alpha1

* Try fix deploy

* Update prod scripts

* Add precise scrolling and tests

* Start/center/end tests

* Simplify type definition

* Add links cell

* Fix buggy sdouble scrolling behavior when using a controlled selection

* Re-enable code splitting

* Also enable splitting for cells package

* Fix deps culling

* Fix naming

* Remove resolution

* Fix error where links would still open editor eroniously

* 5.0.1-alpha2

* Add link cell editor

* Remove do nothing code

* Remove more dead code

* Offer better control over propagation

* Add tests for weird behavioral issue with scrolling

* Minor bump

* Increase permisivity of ImageWindowLoader interface

* Add control for image cell rounding radius

* Improve radius further

* Fix focus ring

* add ability to provide initial grid size

* Start adding support for scrollOffsetX/Y

* Fix test

* Support bounce scrolling

* Duh

* 5.1.0-alpha2

* Remove random math.random that was left in from debugging

* Add button cell

* Clean

* Improve button behavior

* Do better math

* Fix middle center bias fetch

* Enforce hover requriements

* add ability to independtly control max auto column size and max user settable column size

* docs v2 (#488)

* Start working on docs v2

* More docs

* More docs

* Update docs

* Fix drawing bug with draw focus ring disabled

* Fix initial scroll offset working when no initial size provided

* Fix issue where scrolling to invalid locations would sometimes fail weirdly

* Implement visible region x watching as well

* 5.1.0-alpha3

* Improve types to reduce errors

* Fix perf issue with data grid

* make it easier to see perf issues in storybook

* Cut an annoying amount of CPU time off the render loop for high FPS displays

* Fix tests

* 5.1.0-alpha4

* Minor perf improvements

* Fix build

* Add tests

* Disable blitting in safari as they broke the fast path

* 5.1.0-alpha5

* Fix infinite scroll

* Make diagonal scroll prevention more reliable and less jumpy

* More type improvements

* Double buffer support for safari (#491)

* Basic buffer juggling

* Make double buffering an option

* Ensure row markers are stable

* Make double buffering configurable

* Allow selection from all possible blit modes

* Fix tests

* Build fixes

* Resolve issue where dropdown cell would select first item every time regardless of what is selected

* Doo dee doo

* Add some tests for compact selection

* One more test

* Handle scaling factors

* Fix tests

* Fix classname being passed to canvas inappropriately

* 5.1.0-beta1

* Export declaration maps

* Fix keyboard shortcut not focusing search input (#443)

If search field loses focus, pressing the keyboard shortcut
again should refocus it.

Not addressing customization in: #443

* Prep for stable

Co-authored-by: Mark Miro <contact@markmiro.com>
  • Loading branch information
jassmith and markmiro committed Sep 25, 2022
1 parent 6409366 commit 8085cd8
Show file tree
Hide file tree
Showing 113 changed files with 45,561 additions and 16,522 deletions.
26 changes: 8 additions & 18 deletions .github/workflows/beta.js.yml
Expand Up @@ -18,13 +18,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
- name: Bootstrap
run: npm run bootstrap
node-version: 16
- name: Build
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand All @@ -40,13 +37,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
- name: Bootstrap
run: npm run bootstrap
node-version: 16
- name: Build
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand All @@ -62,14 +56,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
node-version: 16
- name: Bootstrap
run: npm run bootstrap
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-cjs
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand Down
14 changes: 5 additions & 9 deletions .github/workflows/node.js.yml
Expand Up @@ -8,17 +8,13 @@ on: push
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x]

steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
- name: Use Node.js 16
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm run bootstrap
node-version: 16
- run: npm install
- run: npm run build
- run: npm run test -- --coverage
- run: npm run test-source
Expand All @@ -35,6 +31,6 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
- run: npm run bootstrap
node-version: 16
- run: npm install
- run: npm run test-18
22 changes: 6 additions & 16 deletions .github/workflows/release.js.yml
Expand Up @@ -19,13 +19,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
node-version: 16
- name: Bootstrap
run: npm run bootstrap
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand All @@ -40,13 +37,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
node-version: 16
- name: Bootstrap
run: npm run bootstrap
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand All @@ -61,14 +55,10 @@ jobs:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 14
node-version: 16
- name: Bootstrap
run: npm run bootstrap
run: npm install && npm run build
working-directory: .
- run: npm run lint
- run: npm run build-js
- run: npm run build-cjs
- run: npm run build-types
- uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/storybook.js.yml
Expand Up @@ -13,10 +13,10 @@ jobs:
persist-credentials: false
- uses: actions/setup-node@v1
with:
node-version: 14
node-version: 16
- name: Install and Build 🔧
run: |
npm run bootstrap
npm install
npm run build-storybook
- name: Deploy 🚀
uses: JamesIves/github-pages-deploy-action@3.6.2
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Expand Up @@ -6,4 +6,6 @@ node_modules*
.cache
pubsub-debug.log
storybook-build/
coverage/
coverage/
*.tsbuildinfo
**/docs/*
1 change: 1 addition & 0 deletions .npmrc
@@ -0,0 +1 @@
legacy-peer-deps=true
2 changes: 1 addition & 1 deletion .nvmrc
@@ -1 +1 @@
v14.18.0
v16.16.0
14 changes: 7 additions & 7 deletions .storybook/main.js
@@ -1,16 +1,14 @@
const MiniCssExtractPlugin = require("mini-css-extract-plugin");

module.exports = {
stories: ["../**/*.stories.tsx"],
addons: [
"@storybook/addon-links",
"@storybook/addon-essentials",
"@storybook/addon-knobs",
"@storybook/addon-controls",
],
stories: ["../**/src/**/*.stories.tsx"],
addons: ["@storybook/addon-controls"],
core: {
builder: "webpack5",
},
typescript: {
reactDocgen: false,
},
webpackFinal: async (config, { configType }) => {
// `configType` has a value of 'DEVELOPMENT' or 'PRODUCTION'
// You can change the configuration based on that.
Expand All @@ -33,6 +31,8 @@ module.exports = {
],
});

config.optimization.minimize = false;

return config;
},
};
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Expand Up @@ -15,7 +15,7 @@ is to use Codespaces if you have access to it. If you do not, simply cloning the
Once codespaces is up and running make sure `jq` is installed and then:

```bash
npm run bootstrap && npm run storybook
npm run install && npm run storybook
```

## Forking the data grid?
Expand Down
9 changes: 5 additions & 4 deletions README.md
Expand Up @@ -6,7 +6,6 @@

<p align="center">Built as the basis for the <a href="https://www.glideapps.com/data-editor" target="_blank">Glide Data Editor</a>. <a href="https://www.glideapps.com/jobs#open-positions" target="_blank">We're hiring</a>.</p>


<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/glideapps/glide-data-grid/master/media/data-grid-dark.png">
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/glideapps/glide-data-grid/master/media/data-grid.png">
Expand Down Expand Up @@ -86,14 +85,14 @@ function getData([col, row]: Item): GridCell {
kind: GridCellKind.Text,
data: person.firstName,
allowOverlay: false,
displayData: person.firstName
displayData: person.firstName,
};
} else if (col === 1) {
return {
kind: GridCellKind.Text,
data: person.lastName,
allowOverlay: false,
displayData: person.lastName
displayData: person.lastName,
};
} else {
throw new Error();
Expand All @@ -103,7 +102,7 @@ function getData([col, row]: Item): GridCell {

## Full API documentation

The full [API documentation is in the `API.md` file](packages/core/API.md).
The full [API documentation is on the main site](https://grid.glideapps.com/docs/index.html).

# 📒 FAQ

Expand Down Expand Up @@ -152,6 +151,7 @@ There are some hacks you can do like setting timers and entering into a "low fid
The easiest way to use the grid with Next is to create a component which wraps up your grid and then import it as a dynamic.

home.tsx

```tsx
import type { NextPage } from "next";
import dynamic from "next/dynamic";
Expand All @@ -177,6 +177,7 @@ export const Home: NextPage = () => {
```

grid.tsx

```tsx
import React from "react";
import DataEditor from "@glideapps/glide-data-grid";
Expand Down
32 changes: 0 additions & 32 deletions bootstrap.sh

This file was deleted.

11 changes: 0 additions & 11 deletions build-all.sh

This file was deleted.

0 comments on commit 8085cd8

Please sign in to comment.