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

feat: Add dynamic lists component #808

Merged
merged 55 commits into from
Dec 13, 2023
Merged

Conversation

Skaiir
Copy link
Contributor

@Skaiir Skaiir commented Sep 19, 2023

Closes #796

@Skaiir Skaiir self-assigned this Sep 19, 2023
@bpmn-io-tasks bpmn-io-tasks bot added the needs review Review pending label Sep 19, 2023
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 19, 2023 14:22 Destroyed
@Skaiir Skaiir marked this pull request as draft September 19, 2023 14:23
@bpmn-io-tasks bpmn-io-tasks bot added in progress Currently worked on and removed needs review Review pending labels Sep 19, 2023
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 19, 2023 14:23 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 20, 2023 07:35 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from df8c23a to 8a09bfe Compare September 20, 2023 07:36
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 20, 2023 07:36 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 22, 2023 12:26 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 22, 2023 14:58 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 24, 2023 22:10 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from 845453c to 315fe96 Compare September 24, 2023 22:12
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 24, 2023 22:12 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from 315fe96 to f46e73f Compare September 25, 2023 09:46
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 25, 2023 09:47 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 25, 2023 10:14 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 25, 2023 11:11 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from 1723abf to ac38537 Compare September 25, 2023 11:24
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 25, 2023 11:25 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from ac38537 to c523b26 Compare September 25, 2023 15:19
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 25, 2023 15:19 Destroyed
@Skaiir Skaiir changed the title Repeated Subforms Dynamic lists Sep 25, 2023
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 26, 2023 13:47 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from 2574a40 to 719e560 Compare September 26, 2023 15:00
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy September 26, 2023 15:01 Destroyed
@Skaiir Skaiir force-pushed the repeated-subforms-prototype branch from 719e560 to 842762c Compare October 22, 2023 09:23
@Skaiir
Copy link
Contributor Author

Skaiir commented Dec 12, 2023

Bug 1 resolved, bug 2 is historical and is tracked at #943

@vsgoulart
Copy link
Contributor

Some other small problems I found:

  1. The carbonization of the dynamic list buttons is wrong
  2. The add new button needs to have type="buton" otherwise the form gets submitted when a user adds a new row
  3. Readonly state is not propagated to buttons, I'm not sure if buttons accept this attribute, but the styles should at least indicate the button can't be used

Skaiir added a commit that referenced this pull request Dec 12, 2023
Skaiir added a commit that referenced this pull request Dec 12, 2023
Skaiir added a commit that referenced this pull request Dec 12, 2023
Skaiir added a commit that referenced this pull request Dec 12, 2023
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 12, 2023 16:52 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 12, 2023 20:33 Destroyed
@vsgoulart vsgoulart force-pushed the repeated-subforms-prototype branch from fc490a9 to c3c8802 Compare December 12, 2023 20:39
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 12, 2023 20:39 Destroyed
@vsgoulart vsgoulart force-pushed the repeated-subforms-prototype branch from c3c8802 to 4583328 Compare December 12, 2023 20:49
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 12, 2023 20:49 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 13, 2023 01:14 Destroyed
@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 13, 2023 01:14 Destroyed
Copy link
Contributor

@vsgoulart vsgoulart left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM for now

As we discussed we should focus on doing improvements/refactoring it on the coming months to make the code base more resilient and to make the architecture more scalable

@github-actions github-actions bot temporarily deployed to demo-repeated-subforms-prototy December 13, 2023 13:20 Destroyed
@vsgoulart vsgoulart changed the title Dynamic lists feat: Add dynamic lists component Dec 13, 2023
@vsgoulart vsgoulart merged commit 62f71cf into develop Dec 13, 2023
10 of 11 checks passed
@vsgoulart vsgoulart deleted the repeated-subforms-prototype branch December 13, 2023 13:45
@bpmn-io-tasks bpmn-io-tasks bot removed the in progress Currently worked on label Dec 13, 2023
vsgoulart added a commit that referenced this pull request Dec 13, 2023
* chore: rename expression-language folder

* wip: implemented protoype repeatRenderManager

* feat: `subform` component

* feat: integrated prototype repeatRenderModule

* feat: hooked up indexing to update cycle

Related to #796

* feat: subform properties panel configuration

Related to #796

* feat: added group styles to subform

* feat: form initializer works with repeatable

Related to #796

* chore: display key and path from config

Related to #796

* feat: enforce path for repeatable groups

Related to #796

* feat: adjusted getSubmitData for repeatable

Related to #796

* feat: repeat render manager

Closes #796

* chore: renamed subform to dynamic list

Related to #796

* chore: adjusted path tooltip for repeating

Related to #796

* feat: repeated element validation

Related to #796

* wip: custom editor list renderer (missing icon)

Related to #796

* wip: collapse / expand dynamic lists

Related to #796

* feat: implement group/list alignment

Related to #796

* chore: added empty states to group and list

Related to #796

* feat: brought in new icons and matched visuals

Related to #796

* fix: form root outline never shows

* fix: editor no longer refreshes on element hover

Closes #807
Related to #796

* feat: add/remove items in dynamic lists

Related to #796

* feat: local expression contexts

Related to #796

* feat: add/remove styles

Related to #796

* feat: automatically scroll when adding item

Related to #796

* feat: refine add/remove UX

Related to #796

* chore: use karma-spec reporter for tests

* chore: refactored viewer and editor tests

Related to #808

* chore: large rebase test cleanups

Related to #808

* fix(submit): only modify error object when needed

Related to #808

* fix: final repeated subforms test adjustments

Related to #808

* chore: fixed minor tabs and naming issues

Related to #808

* feat: added carbon styles for dynamic list

Related to #907

* fix: improved dynamic list button outlines

Related to #808

* chore: rebase changes on `develop`

* chore: reduced nesting and improved docs in Form.js core functions

Related to #808

* chore: removed pointless useMemo

Related to #808

* chore: cleanup remnants of ai generation

Related to #808

* chore: switch from hardcoded to computed componentCount test
Related to #808

* fix(performance): centralize variable filtering

Related to camunda/tasklist#3758

* chore: optimize svgs

Related to #808

* feat: implemented proper path management for repeatable fields

Related to #808

* fix: always expand when uncollapsible

Related to #808

* fix: proper key change handling and repeatable filtering

Related to #808

* feat: implement proper variable hiding within repeated field

Related to #808

* chore: adjust table/iframe tests following rebase

Related to #808

* fix: adjust numerical configs of dynamic list to prevent crashes

Related to #808

* fix: properly split path replacements in pathEntry

Related to #808

* fix: ensure dynamic list buttons don't submit

Related to #808

* feat: Carbonise dynamic list

* fix: show proper default uncollapsed items in propspan

Related to #808

* feat(schema): added dynamic list component

Related to #808

* chore(schema): adjust test indexes

Related to #808

---------

Co-authored-by: Niklas Kiefer <[email protected]>
Co-authored-by: Vinicius Goulart <[email protected]>
vsgoulart added a commit that referenced this pull request Dec 14, 2023
* chore: update dependency lerna to v8 (#914)

* chore: update dependency lerna to v8

* deps: remove legacy lerna scripts

Cf. https://lerna.js.org/docs/legacy-package-management

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Niklas Kiefer <[email protected]>
Co-authored-by: Vinícius Goulart <[email protected]>

* chore(CI): updated snapshots [skip ci]

* deps: update dependency didi to v10 (#909)

* deps: update dependency didi to v10

* chore: Bump to [email protected]

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Vinicius Goulart <[email protected]>

* chore(CI): updated snapshots [skip ci]

* chore: Bump to [email protected] (#927)

* deps: update dependency feelin to v3 (#941)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore: Bump `schemaVersion` to 13 (#896)

* chore: Bump schemaVersion to 13

* chore: Fix formatting

Co-authored-by: Niklas Kiefer <[email protected]>

* fix: Fix schema version range on docs

* chore: Remove newline

* feat: Make columns and columnsExpression mutually exclusive

* feat: Add custom error message

---------

Co-authored-by: Niklas Kiefer <[email protected]>

* chore: Fix typos in comments

* feat: Add table component to editor (#905)

* feat: Add table component to editor

* chore: Replace key with id

* chore: Fix typo

* feat: Add dataSource to schema

* fix: Rework initialDemoData and add test

* chore: Update formatting

Co-authored-by: Niklas Kiefer <[email protected]>

---------

Co-authored-by: Niklas Kiefer <[email protected]>

* feat: Add table entries to properties panel (#912)

* chore: Bump `schemaVersion` to 13 (#896)

* chore: Bump schemaVersion to 13

* chore: Fix formatting

Co-authored-by: Niklas Kiefer <[email protected]>

* fix: Fix schema version range on docs

* chore: Remove newline

* feat: Make columns and columnsExpression mutually exclusive

* feat: Add custom error message

---------

Co-authored-by: Niklas Kiefer <[email protected]>

* feat: Add table component to editor (#905)

* feat: Add table component to editor

* chore: Replace key with id

* chore: Fix typo

* feat: Add dataSource to schema

* fix: Rework initialDemoData and add test

* chore: Update formatting

Co-authored-by: Niklas Kiefer <[email protected]>

---------

Co-authored-by: Niklas Kiefer <[email protected]>

* chore: Remove commented code

* feat: Add table entries to properties panel

* fix: Fix tooltip

Co-authored-by: Niklas Kiefer <[email protected]>

* chore: Rename id

* feat: Use behavior to manage column headers

* chore: Fix test description

Co-authored-by: Niklas Kiefer <[email protected]>

---------

Co-authored-by: Niklas Kiefer <[email protected]>

* feat: Add table component to viewer (#920)

* feat: Add table component to viewer

* fix: Fix default rowCount

* feat: Add generic data on editor view

* fix: Refactor form field table styles

* test: Add tests

* fix: Turn data source into FEEL only

* chore: Remove unnecessary new line

* chore: Remove FEEL check on dataSource

* chore: Sort by asc first

* chore: Remove unnecessary label check

* chore: Use const instead of let

* fix: Create EditorTable

* chore: Fix formatting

* chore: Make label id optional

* fix: Add row gap

* fix: Add missing leftovers from table component (#938)

* feat: Add Carbon compatibility styles (#937)

* feat: Add Carbon compatibility styles

* test: Add Carbon tests

* feat: Add dynamic lists component (#808)

* chore: rename expression-language folder

* wip: implemented protoype repeatRenderManager

* feat: `subform` component

* feat: integrated prototype repeatRenderModule

* feat: hooked up indexing to update cycle

Related to #796

* feat: subform properties panel configuration

Related to #796

* feat: added group styles to subform

* feat: form initializer works with repeatable

Related to #796

* chore: display key and path from config

Related to #796

* feat: enforce path for repeatable groups

Related to #796

* feat: adjusted getSubmitData for repeatable

Related to #796

* feat: repeat render manager

Closes #796

* chore: renamed subform to dynamic list

Related to #796

* chore: adjusted path tooltip for repeating

Related to #796

* feat: repeated element validation

Related to #796

* wip: custom editor list renderer (missing icon)

Related to #796

* wip: collapse / expand dynamic lists

Related to #796

* feat: implement group/list alignment

Related to #796

* chore: added empty states to group and list

Related to #796

* feat: brought in new icons and matched visuals

Related to #796

* fix: form root outline never shows

* fix: editor no longer refreshes on element hover

Closes #807
Related to #796

* feat: add/remove items in dynamic lists

Related to #796

* feat: local expression contexts

Related to #796

* feat: add/remove styles

Related to #796

* feat: automatically scroll when adding item

Related to #796

* feat: refine add/remove UX

Related to #796

* chore: use karma-spec reporter for tests

* chore: refactored viewer and editor tests

Related to #808

* chore: large rebase test cleanups

Related to #808

* fix(submit): only modify error object when needed

Related to #808

* fix: final repeated subforms test adjustments

Related to #808

* chore: fixed minor tabs and naming issues

Related to #808

* feat: added carbon styles for dynamic list

Related to #907

* fix: improved dynamic list button outlines

Related to #808

* chore: rebase changes on `develop`

* chore: reduced nesting and improved docs in Form.js core functions

Related to #808

* chore: removed pointless useMemo

Related to #808

* chore: cleanup remnants of ai generation

Related to #808

* chore: switch from hardcoded to computed componentCount test
Related to #808

* fix(performance): centralize variable filtering

Related to https://github.com/camunda/tasklist/issues/3758

* chore: optimize svgs

Related to #808

* feat: implemented proper path management for repeatable fields

Related to #808

* fix: always expand when uncollapsible

Related to #808

* fix: proper key change handling and repeatable filtering

Related to #808

* feat: implement proper variable hiding within repeated field

Related to #808

* chore: adjust table/iframe tests following rebase

Related to #808

* fix: adjust numerical configs of dynamic list to prevent crashes

Related to #808

* fix: properly split path replacements in pathEntry

Related to #808

* fix: ensure dynamic list buttons don't submit

Related to #808

* feat: Carbonise dynamic list

* fix: show proper default uncollapsed items in propspan

Related to #808

* feat(schema): added dynamic list component

Related to #808

* chore(schema): adjust test indexes

Related to #808

---------

Co-authored-by: Niklas Kiefer <[email protected]>
Co-authored-by: Vinicius Goulart <[email protected]>

* chore: update actions/setup-node digest to 7247617

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Niklas Kiefer <[email protected]>
Co-authored-by: Vinícius Goulart <[email protected]>
Co-authored-by: bpmn-io-bot <[email protected]>
Co-authored-by: Valentin Serra <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Implement] Dynamic Lists
5 participants