Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Airtable Import #750

Merged
merged 40 commits into from
Sep 8, 2022

Conversation

htuerker
Copy link
Contributor

@htuerker htuerker commented Aug 18, 2022

This PR contains several changes for the CSV Import utility as well.

Importing all fields:

Screen.Recording.2022-08-18.at.22.09.20.mov

Importing 10k+ records

Screen.Recording.2022-08-18.at.22.12.32.mov

CSV Import document ID selection:

Screen.Recording.2022-08-18.at.22.34.29.mov

Possible improvements within the review process:

  • Wizard Step components are an almost exact copy, so there's a possibility to use some abstraction here to prevent duplications. There isn't any coupling between importers as I created a top-level "Import Data" abstraction. Everything works independently right now. In future implementations that provide other types of importers such as spreadsheets and SQL, a well-defined abstraction would bring quality.
  • Type suggestion mechanism has been built to serve only "ImportExistingWizard", so it isn't working properly for CSV import as everything is a "string" in CSV data. I did not want to put those changes in this PR's scope. Some duplication isn't an issue here as every import type would require specific suggestions. So, I'd suggest here implementing a specific suggestion mechanism for CSV as I did for Airtable.
  • CSV importParsers & exportFormatters not working properly. I've just extended some fields such as Geopoint, Rating, Slider. But, I'd love to see CSV import/export functionality works fully consistently by allowing complete reversible operations. To be clear, a Rowy table that is exported should easily be imported by the CSV importer.
  • The audit logger fails at serving 100+ concurrent requests(importing 100+ rows is enough to make it fail) with my minimal rowy-backend setup for local development. Now, I disabled audit creation(failing requests really slow the process more than 10x). Possible workaround: Log many audit changes within a request backend#17

harinij and others added 30 commits June 30, 2022 18:43
* Bump ejs from 3.1.6 to 3.1.8

Bumps [ejs](https://github.com/mde/ejs) from 3.1.6 to 3.1.8.
- [Release notes](https://github.com/mde/ejs/releases)
- [Changelog](https://github.com/mde/ejs/blob/main/CHANGELOG.md)
- [Commits](mde/ejs@v3.1.6...v3.1.8)

---
updated-dependencies:
- dependency-name: ejs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump minimist from 1.2.5 to 1.2.6

Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump tmpl from 1.0.4 to 1.0.5

Bumps [tmpl](https://github.com/daaku/nodejs-tmpl) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/daaku/nodejs-tmpl/releases)
- [Commits](https://github.com/daaku/nodejs-tmpl/commits/v1.0.5)

---
updated-dependencies:
- dependency-name: tmpl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Bump protobufjs from 6.11.2 to 6.11.3

Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 6.11.2 to 6.11.3.
- [Release notes](https://github.com/protobufjs/protobuf.js/releases)
- [Changelog](https://github.com/protobufjs/protobuf.js/blob/v6.11.3/CHANGELOG.md)
- [Commits](protobufjs/protobuf.js@v6.11.2...v6.11.3)

---
updated-dependencies:
- dependency-name: protobufjs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix(rich-text-editor): fix dark mode ui appearance (rowyio#696)

* fix(rich-text-editor): fix dark mode ui appearance

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/components/RichTextEditor.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/theme/RichTextEditorDarkCSS.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* Update src/theme/RichTextEditorLightCSS.tsx

Co-authored-by: Sidney Alcantara <[email protected]>

* fix(rich-text-editor): add stylings to dropdown

* fix(rich-text-editor): add toolbar stylings

* fix(rich-text-editor): reset hover&focus bg

Co-authored-by: Sidney Alcantara <[email protected]>

* update date & time filter operators for clarity

* Action field: prevent selecting self as required field (fixes ROWY-551)

* Date & Time: only show date for date filters

* move fullScreenButton to be shared, remove md settings

* bundle-analyzer

* Leaf icon: use mdi-material-ui

* Feat: Percentage field color customization (rowyio#692)

* feat(percentage-c11n): convert to table cell

* feat(percentage-c11n): add logic to default configs

* feat(percentage-c11n): add color picker to settings

* feat(percentage-c11n): change default colors

* feat(percentage-c11n): fix button text color

* feat(percentage-c11n): add labels to settings

* feat(percentage-c11n): add preview section

* feat(percentage-c11n): fix cache issues with debouncing

* feat(percentage-c11n): add width responsiveness to color picker

* feat(percentage-c11n): fix responsiveness issues

* feat(percentage-c11n): add checkbox, refactor a little

* feat(percentage-c11n): convert data type to array

* feat(percentage-c11n): refactor config states

* feat(percentage-c11n): fix defaults

* feat(percentage-c11n): add basic cell without bg

* feat(percentage-c11n): remove collapse

* feat(percentage-c11n): refactor checkStates

* feat(percentage-c11n): add grid layout

* feat(percentage-c11n): chore conventions

* feat(percentage-c11n): add default theme color to sidedrawer

* remove redundant fragment

Co-authored-by: Sidney Alcantara <[email protected]>

* fix text color in preview

Co-authored-by: Sidney Alcantara <[email protected]>

* fix: change state to derived state

Co-authored-by: Sidney Alcantara <[email protected]>

* fix: review suggestions

* fix: remove redundant change call

Co-authored-by: Sidney Alcantara <[email protected]>

* fix(percentage-c11n): remove redundant dependencies

Co-authored-by: Shams <[email protected]>
Co-authored-by: Sidney Alcantara <[email protected]>

* extend callable timeout to over 9minutes

* fix timeout value

* fix page loading with white screen while system is in dark mode

* Revert "bundle-analyzer"

This reverts commit dd214b9.

* fix nav items not accessible with Tab

* Percentage: don’t display if value null or undefined

* fix NavDrawer causing compile to fail

* show text field if collections array is empy

* column ids

* row ID

* fix create table showing empty dropdown for collections

* fix row not writing to db once all required fields are written

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Han Tuerker <[email protected]>
Co-authored-by: shamsmosowi <[email protected]>
- extract import methods
- move fieldParser into utils
- add documentID radio buttons
- used __rowy_ref object to set document id
- add document id validation
- add step error messages
- add invalid rows information
@shamsmosowi shamsmosowi merged commit 0e98aff into rowyio:develop Sep 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants