From 4b93bf450a5f78fc81f8ab5ab3b5d85ca4fb0086 Mon Sep 17 00:00:00 2001 From: Stefan Verhoeven Date: Wed, 1 May 2024 13:26:41 +0200 Subject: [PATCH 01/11] Skip exit module + regen catalogs Fixes #153 --- .../generate_haddock3_catalog.py | 6 +- .../public/catalog/haddock3.easy.yaml | 87 +++++++++++------- .../public/catalog/haddock3.expert.yaml | 91 ++++++++++++------- .../public/catalog/haddock3.guru.yaml | 91 ++++++++++++------- 4 files changed, 176 insertions(+), 99 deletions(-) diff --git a/packages/haddock3_catalog/generate_haddock3_catalog.py b/packages/haddock3_catalog/generate_haddock3_catalog.py index 404a248..f1ea0ab 100755 --- a/packages/haddock3_catalog/generate_haddock3_catalog.py +++ b/packages/haddock3_catalog/generate_haddock3_catalog.py @@ -430,11 +430,15 @@ def process_level(level_fn: Path, level: str): broken_modules = { 'topocg', # Gives `AttributeError: module 'haddock.modules.topology.topocg' has no attribute 'HaddockModule'` error + 'exit', # Does not make sense to have exit module in the catalog } # TODO define module order like category order - # now they are sorted alphabetically + # now they are sorted by insert nodes = [process_module(module, category, level) for module, category in sorted(modules_category.items()) if module not in broken_modules] + # remove catagories without nodes + categories = [c for c in categories if any(n['category'] == c['name'] for n in nodes)] + catalog = { "title": f"Haddock 3 on {level} level", "categories": categories, diff --git a/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml b/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml index a2b1bcb..03def31 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml @@ -15,18 +15,6 @@ categories: - name: analysis description: HADDOCK3 modules related to model analysis. collapsed: false -- name: extras - description: ' - - HADDOCK3 extra modules. - - - The extra modules are modules that do not belong to any of the standard - - simulation categories but that help further configuring the workflow. - - ' - collapsed: true global: schema: type: object @@ -460,6 +448,13 @@ nodes: type: number maximum: 1000 minimum: 1 + allatoms: + default: false + title: Atoms to be considered during the analysis. + description: Atoms to be considered during the analysis. + $comment: Atoms to be considered during the analysis. If false (default), + only backbone atoms will be considered, otherwise all the heavy-atoms. + type: boolean required: [] additionalProperties: false uiSchema: @@ -494,6 +489,8 @@ nodes: ui:group: analysis clt_threshold: ui:group: analysis + allatoms: + ui:group: analysis tomlSchema: {} - id: clustfcc category: analysis @@ -898,25 +895,6 @@ nodes: elecflag: ui:group: force field tomlSchema: {} -- id: exit - category: extras - label: Exit module - description: Stop the workflow when this module is reached. - schema: - type: object - properties: - message: - default: Stopping the workflow. - title: Exiting message. - description: The message to print when exiting. - $comment: The message to print when exiting. - type: string - minLength: 0 - maxLength: 1000 - required: [] - additionalProperties: false - uiSchema: {} - tomlSchema: {} - id: flexref category: refinement label: Flexible refinement with CNS. @@ -1055,6 +1033,8 @@ nodes: ui:group: other restraints elecflag: ui:group: force field + sinter_rigid_final: + ui:group: sampling tomlSchema: mol_shape: indexed: true @@ -1073,6 +1053,7 @@ nodes: uiSchema: ambig_fname: ui:widget: file + ui:group: distance restraints tomlSchema: {} - id: ilrmsdmatrix category: analysis @@ -1207,7 +1188,35 @@ nodes: type: boolean required: [] additionalProperties: false - uiSchema: {} + uiSchema: + glowworms: + ui:group: sampling + steps: + ui:group: sampling + swarms: + ui:group: sampling + scoring: + ui:group: scoring + top: + ui:group: analysis + receptor_chains: + ui:group: restraints + receptor_active: + ui:group: restraints + receptor_passive: + ui:group: restraints + ligand_chains: + ui:group: restraints + ligand_active: + ui:group: restraints + ligand_passive: + ui:group: restraints + noxt: + ui:group: topology + noh: + ui:group: topology + restraints: + ui:group: distance restraints tomlSchema: {} - id: mdref category: refinement @@ -1644,6 +1653,18 @@ nodes: type: number maximum: 99999 minimum: 1 + sortby: + default: score + title: Method used to define `best cluster`. + description: Best cluster can be defined based either on cluster models scores, + or on cluster size. By default, 'score' is selected. + $comment: if the selection is done by 'score' the average score of the top + (4) models of each cluster is used to define the cluster rank. When clustering + by 'size', a bigger cluster size corresponds to a higher rank. By default, + 'score' is selected. + type: string + minLength: 2 + maxLength: 15 required: [] additionalProperties: false uiSchema: @@ -1651,6 +1672,8 @@ nodes: ui:group: analysis top_models: ui:group: analysis + sortby: + ui:group: analysis tomlSchema: {} - id: topoaa category: topology diff --git a/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml b/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml index 4c88449..64cfe5e 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml @@ -15,18 +15,6 @@ categories: - name: analysis description: HADDOCK3 modules related to model analysis. collapsed: false -- name: extras - description: ' - - HADDOCK3 extra modules. - - - The extra modules are modules that do not belong to any of the standard - - simulation categories but that help further configuring the workflow. - - ' - collapsed: true global: schema: type: object @@ -498,6 +486,13 @@ nodes: type: number maximum: 1000 minimum: 1 + allatoms: + default: false + title: Atoms to be considered during the analysis. + description: Atoms to be considered during the analysis. + $comment: Atoms to be considered during the analysis. If false (default), + only backbone atoms will be considered, otherwise all the heavy-atoms. + type: boolean required: [] additionalProperties: false uiSchema: @@ -532,6 +527,8 @@ nodes: ui:group: analysis clt_threshold: ui:group: analysis + allatoms: + ui:group: analysis tomlSchema: {} - id: clustfcc category: analysis @@ -817,7 +814,7 @@ nodes: generate_chordchart: ui:group: analysis topX: - ui:group: sample + ui:group: analysis cluster_heatmap_datatype: ui:group: analysis chordchart_datatype: @@ -2973,25 +2970,6 @@ nodes: tolerance: ui:group: module tomlSchema: {} -- id: exit - category: extras - label: Exit module - description: Stop the workflow when this module is reached. - schema: - type: object - properties: - message: - default: Stopping the workflow. - title: Exiting message. - description: The message to print when exiting. - $comment: The message to print when exiting. - type: string - minLength: 0 - maxLength: 1000 - required: [] - additionalProperties: false - uiSchema: {} - tomlSchema: {} - id: flexref category: refinement label: Flexible refinement with CNS. @@ -5113,6 +5091,8 @@ nodes: ui:group: sampling mdsteps_cool3: ui:group: sampling + sinter_rigid_final: + ui:group: sampling tolerance: ui:group: module nseg1: @@ -5263,6 +5243,7 @@ nodes: uiSchema: ambig_fname: ui:widget: file + ui:group: distance restraints tomlSchema: {} - id: ilrmsdmatrix category: analysis @@ -5397,7 +5378,35 @@ nodes: type: boolean required: [] additionalProperties: false - uiSchema: {} + uiSchema: + glowworms: + ui:group: sampling + steps: + ui:group: sampling + swarms: + ui:group: sampling + scoring: + ui:group: scoring + top: + ui:group: analysis + receptor_chains: + ui:group: restraints + receptor_active: + ui:group: restraints + receptor_passive: + ui:group: restraints + ligand_chains: + ui:group: restraints + ligand_active: + ui:group: restraints + ligand_passive: + ui:group: restraints + noxt: + ui:group: topology + noh: + ui:group: topology + restraints: + ui:group: distance restraints tomlSchema: {} - id: mdref category: refinement @@ -9288,6 +9297,18 @@ nodes: type: number maximum: 99999 minimum: 1 + sortby: + default: score + title: Method used to define `best cluster`. + description: Best cluster can be defined based either on cluster models scores, + or on cluster size. By default, 'score' is selected. + $comment: if the selection is done by 'score' the average score of the top + (4) models of each cluster is used to define the cluster rank. When clustering + by 'size', a bigger cluster size corresponds to a higher rank. By default, + 'score' is selected. + type: string + minLength: 2 + maxLength: 15 required: [] additionalProperties: false uiSchema: @@ -9295,6 +9316,8 @@ nodes: ui:group: analysis top_models: ui:group: analysis + sortby: + ui:group: analysis tomlSchema: {} - id: topoaa category: topology @@ -9434,6 +9457,8 @@ nodes: ligand_top_fname: ui:widget: file ui:group: force field + limit: + ui:group: sampling tolerance: ui:group: module mol: diff --git a/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml b/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml index f662e3a..0fe685b 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml @@ -15,18 +15,6 @@ categories: - name: analysis description: HADDOCK3 modules related to model analysis. collapsed: false -- name: extras - description: ' - - HADDOCK3 extra modules. - - - The extra modules are modules that do not belong to any of the standard - - simulation categories but that help further configuring the workflow. - - ' - collapsed: true global: schema: type: object @@ -510,6 +498,13 @@ nodes: type: number maximum: 1000 minimum: 1 + allatoms: + default: false + title: Atoms to be considered during the analysis. + description: Atoms to be considered during the analysis. + $comment: Atoms to be considered during the analysis. If false (default), + only backbone atoms will be considered, otherwise all the heavy-atoms. + type: boolean required: [] additionalProperties: false uiSchema: @@ -544,6 +539,8 @@ nodes: ui:group: analysis clt_threshold: ui:group: analysis + allatoms: + ui:group: analysis tomlSchema: {} - id: clustfcc category: analysis @@ -829,7 +826,7 @@ nodes: generate_chordchart: ui:group: analysis topX: - ui:group: sample + ui:group: analysis cluster_heatmap_datatype: ui:group: analysis chordchart_datatype: @@ -3035,25 +3032,6 @@ nodes: log_level: ui:group: module tomlSchema: {} -- id: exit - category: extras - label: Exit module - description: Stop the workflow when this module is reached. - schema: - type: object - properties: - message: - default: Stopping the workflow. - title: Exiting message. - description: The message to print when exiting. - $comment: The message to print when exiting. - type: string - minLength: 0 - maxLength: 1000 - required: [] - additionalProperties: false - uiSchema: {} - tomlSchema: {} - id: flexref category: refinement label: Flexible refinement with CNS. @@ -5383,6 +5361,8 @@ nodes: ui:group: sampling sinter_rigid_init: ui:group: sampling + sinter_rigid_final: + ui:group: sampling sinter_cool2_init: ui:group: sampling sinter_cool2_final: @@ -5547,6 +5527,7 @@ nodes: uiSchema: ambig_fname: ui:widget: file + ui:group: distance restraints tomlSchema: {} - id: ilrmsdmatrix category: analysis @@ -5694,7 +5675,35 @@ nodes: type: boolean required: [] additionalProperties: false - uiSchema: {} + uiSchema: + glowworms: + ui:group: sampling + steps: + ui:group: sampling + swarms: + ui:group: sampling + scoring: + ui:group: scoring + top: + ui:group: analysis + receptor_chains: + ui:group: restraints + receptor_active: + ui:group: restraints + receptor_passive: + ui:group: restraints + ligand_chains: + ui:group: restraints + ligand_active: + ui:group: restraints + ligand_passive: + ui:group: restraints + noxt: + ui:group: topology + noh: + ui:group: topology + restraints: + ui:group: distance restraints tomlSchema: {} - id: mdref category: refinement @@ -9716,6 +9725,18 @@ nodes: type: number maximum: 99999 minimum: 1 + sortby: + default: score + title: Method used to define `best cluster`. + description: Best cluster can be defined based either on cluster models scores, + or on cluster size. By default, 'score' is selected. + $comment: if the selection is done by 'score' the average score of the top + (4) models of each cluster is used to define the cluster rank. When clustering + by 'size', a bigger cluster size corresponds to a higher rank. By default, + 'score' is selected. + type: string + minLength: 2 + maxLength: 15 required: [] additionalProperties: false uiSchema: @@ -9723,6 +9744,8 @@ nodes: ui:group: analysis top_models: ui:group: analysis + sortby: + ui:group: analysis tomlSchema: {} - id: topoaa category: topology @@ -9888,6 +9911,8 @@ nodes: ligand_top_fname: ui:widget: file ui:group: force field + limit: + ui:group: sampling tolerance: ui:group: module mol: From 515b2cb55e61fe57dc0be6b9e4d1b64561fe76c6 Mon Sep 17 00:00:00 2001 From: Stefan Verhoeven Date: Wed, 1 May 2024 14:05:36 +0200 Subject: [PATCH 02/11] Add test for group / name conflict --- packages/core/src/grouper.test.ts | 82 +++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/packages/core/src/grouper.test.ts b/packages/core/src/grouper.test.ts index b608c75..0af8a23 100644 --- a/packages/core/src/grouper.test.ts +++ b/packages/core/src/grouper.test.ts @@ -504,6 +504,88 @@ describe('given a un-grouped prop with same name as group', () => { }) }) +describe('given a prop in own group with same name as group of another prop', () => { + describe('groupSchema()', () => { + it('should make 2 groups each with a prop', () => { + const schema: JSONSchema7 = { + type: 'object', + properties: { + receptor_chains: { + type: 'string' + }, + restraints: { + type: 'string' + } + }, + additionalProperties: false + } + const uiSchema: UiSchema = { + receptor_chains: { + 'ui:group': 'restraints' + }, + restraints: { + 'ui:group': 'distance restraints' + } + } + const groupedSchema = groupSchema(schema, uiSchema) + + const expectedSchema: JSONSchema7 = { + type: 'object', + properties: { + restraints: { + type: 'object', + properties: { + receptor_chains: { + type: 'string' + } + }, + additionalProperties: false + }, + 'distance restraints': { + type: 'object', + properties: { + restraints: { + type: 'string' + } + }, + additionalProperties: false + } + }, + additionalProperties: false + } + expect(groupedSchema).toEqual(expectedSchema) + }) + }) + + describe('unGroupParameters()', () => { + it('should work', () => { + const groupedParameters = { + restraints: { + receptor_chains: 'val1' + }, + 'distance restraints': { + restraints: 'val2' + } + } + + const actual = unGroupParameters(groupedParameters, { + receptor_chains: { + 'ui:group': 'restraints' + }, + restraints: { + 'ui:group': 'distance restraints' + } + }) + + const expectedParameters = { + receptor_chains: 'val1', + restraints: 'val2' + } + expect(actual).toEqual(expectedParameters) + }) + }) +}) + describe('given a prop with same name as group and another prop in same group', () => { describe('groupSchema()', () => { it('should move property inside object with same name', () => { From 663a1ad81171c8292153c17b42853176484783bb Mon Sep 17 00:00:00 2001 From: Stefan Verhoeven Date: Fri, 3 May 2024 08:19:50 +0200 Subject: [PATCH 03/11] add todos --- packages/core/src/grouper.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/core/src/grouper.ts b/packages/core/src/grouper.ts index 404b197..4563f49 100644 --- a/packages/core/src/grouper.ts +++ b/packages/core/src/grouper.ts @@ -37,6 +37,10 @@ export function groupSchema ( .filter((v) => 'ui:group' in v) .map((v) => v['ui:group']) ) + // TODO direct prop with same name as group throw error + // TODO prop with group and same name as any group should be nested first + // todos should replace lines 44-65 + const directProps = schema.properties ?? {} const directPropNamesWithSameNameAsGroup = new Set( Object.keys(directProps).filter((k) => definedGroups.has(k)) From 201d6d954354cc6438add95cfce27f99e3e2ef1b Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Fri, 3 May 2024 10:52:14 +0200 Subject: [PATCH 04/11] Update vitest so vitest VS Code extension works --- packages/core/package.json | 2 +- packages/form/package.json | 2 +- vitest.workspace.ts | 3 + yarn.lock | 1009 ++++++++++++++++++++++++++++++++---- 4 files changed, 927 insertions(+), 89 deletions(-) create mode 100644 vitest.workspace.ts diff --git a/packages/core/package.json b/packages/core/package.json index abcbb7d..1df314b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -59,7 +59,7 @@ "tsup": "^6.1.3", "typedoc": "^0.23.7", "vite": "^3.0.4", - "vitest": "^0.20.2" + "vitest": "1.5.3" }, "dependencies": { "@dnd-kit/core": "^6.0.5", diff --git a/packages/form/package.json b/packages/form/package.json index f8b8eca..3c1fbe7 100644 --- a/packages/form/package.json +++ b/packages/form/package.json @@ -60,7 +60,7 @@ "ts-standard": "^11.0.0", "tsup": "^6.1.3", "typedoc": "^0.23.7", - "vitest": "^0.20.2" + "vitest": "^1.5.3" }, "tsup": { "entry": [ diff --git a/vitest.workspace.ts b/vitest.workspace.ts new file mode 100644 index 0000000..c00c0cf --- /dev/null +++ b/vitest.workspace.ts @@ -0,0 +1,3 @@ +export default [ + 'packages/*/vitest.config.ts' + ] \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 04d6bc0..2ffe88c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1909,6 +1909,167 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/aix-ppc64@npm:0.20.2" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/android-arm64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/android-arm64@npm:0.20.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/android-arm@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/android-arm@npm:0.20.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@esbuild/android-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/android-x64@npm:0.20.2" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/darwin-arm64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/darwin-arm64@npm:0.20.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/darwin-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/darwin-x64@npm:0.20.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/freebsd-arm64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/freebsd-arm64@npm:0.20.2" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/freebsd-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/freebsd-x64@npm:0.20.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/linux-arm64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-arm64@npm:0.20.2" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/linux-arm@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-arm@npm:0.20.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@esbuild/linux-ia32@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-ia32@npm:0.20.2" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-loong64@npm:0.20.2" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + +"@esbuild/linux-mips64el@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-mips64el@npm:0.20.2" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"@esbuild/linux-ppc64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-ppc64@npm:0.20.2" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/linux-riscv64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-riscv64@npm:0.20.2" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"@esbuild/linux-s390x@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-s390x@npm:0.20.2" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"@esbuild/linux-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/linux-x64@npm:0.20.2" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/netbsd-x64@npm:0.20.2" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openbsd-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/openbsd-x64@npm:0.20.2" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/sunos-x64@npm:0.20.2" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/win32-arm64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/win32-arm64@npm:0.20.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/win32-ia32@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/win32-ia32@npm:0.20.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/win32-x64@npm:0.20.2": + version: 0.20.2 + resolution: "@esbuild/win32-x64@npm:0.20.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@eslint/eslintrc@npm:^0.4.3": version: 0.4.3 resolution: "@eslint/eslintrc@npm:0.4.3" @@ -2095,7 +2256,7 @@ __metadata: tsup: ^6.1.3 typedoc: ^0.23.7 vite: ^3.0.4 - vitest: ^0.20.2 + vitest: 1.5.3 web-encoding: ^1.1.5 peerDependencies: react: ^17.0.0 || ^18.0.0 @@ -2130,7 +2291,7 @@ __metadata: ts-standard: ^11.0.0 tsup: ^6.1.3 typedoc: ^0.23.7 - vitest: ^0.20.2 + vitest: ^1.5.3 peerDependencies: react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 @@ -2175,6 +2336,15 @@ __metadata: languageName: node linkType: hard +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" + dependencies: + "@sinclair/typebox": ^0.27.8 + checksum: 910040425f0fc93cd13e68c750b7885590b8839066dfa0cd78e7def07bbb708ad869381f725945d66f2284de5663bbecf63e8fdd856e2ae6e261ba30b1687e93 + languageName: node + linkType: hard + "@jest/transform@npm:^26.6.2": version: 26.6.2 resolution: "@jest/transform@npm:26.6.2" @@ -2292,6 +2462,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/sourcemap-codec@npm:^1.4.15": + version: 1.4.15 + resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" + checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 + languageName: node + linkType: hard + "@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.9": version: 0.3.14 resolution: "@jridgewell/trace-mapping@npm:0.3.14" @@ -2571,6 +2748,125 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.17.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-android-arm64@npm:4.17.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-darwin-arm64@npm:4.17.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-darwin-x64@npm:4.17.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.17.2" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-musleabihf@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.17.2" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.17.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.17.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.17.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.17.2" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.17.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.17.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.17.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.17.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.17.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.17.2": + version: 4.17.2 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.17.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 00bd7362a3439021aa1ea51b0e0d0a0e8ca1351a3d54c606b115fdcc49b51b16db6e5f43b4fe7a28c38688523e22a94d49dd31168868b655f0d4d50f032d07a1 + languageName: node + linkType: hard + "@storybook/addon-actions@npm:6.5.9, @storybook/addon-actions@npm:^6.5.9": version: 6.5.9 resolution: "@storybook/addon-actions@npm:6.5.9" @@ -3868,22 +4164,6 @@ __metadata: languageName: node linkType: hard -"@types/chai-subset@npm:^1.3.3": - version: 1.3.3 - resolution: "@types/chai-subset@npm:1.3.3" - dependencies: - "@types/chai": "*" - checksum: 4481da7345022995f5a105e6683744f7203d2c3d19cfe88d8e17274d045722948abf55e0adfd97709e0f043dade37a4d4e98cd4c660e2e8a14f23e6ecf79418f - languageName: node - linkType: hard - -"@types/chai@npm:*, @types/chai@npm:^4.3.1": - version: 4.3.1 - resolution: "@types/chai@npm:4.3.1" - checksum: 2ee246b76c469cd620a7a1876a73bc597074361b67d547b4bd96a0c1adb43597ede2d8589ab626192e14349d83cbb646cc11e2c179eeeb43ff11596de94d82c4 - languageName: node - linkType: hard - "@types/eslint-scope@npm:^3.7.3": version: 3.7.4 resolution: "@types/eslint-scope@npm:3.7.4" @@ -3911,6 +4191,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.5, @types/estree@npm:^1.0.0": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a + languageName: node + linkType: hard + "@types/estree@npm:^0.0.51": version: 0.0.51 resolution: "@types/estree@npm:0.0.51" @@ -4399,6 +4686,60 @@ __metadata: languageName: node linkType: hard +"@vitest/expect@npm:1.5.3": + version: 1.5.3 + resolution: "@vitest/expect@npm:1.5.3" + dependencies: + "@vitest/spy": 1.5.3 + "@vitest/utils": 1.5.3 + chai: ^4.3.10 + checksum: b273ffc229ddbfa91fef6e48e170e0f192f7989a6c59db182819b2b5885268d910578899b242818a18142bc261074a60536212f1aaa9f20b6f91f9e4b81e1443 + languageName: node + linkType: hard + +"@vitest/runner@npm:1.5.3": + version: 1.5.3 + resolution: "@vitest/runner@npm:1.5.3" + dependencies: + "@vitest/utils": 1.5.3 + p-limit: ^5.0.0 + pathe: ^1.1.1 + checksum: b7e5193e3ea967cd9edb96b7db3cc0addea46e3c1a47908ca4ff0ccd31f69f021beda69bcbf3fff42ad59504aa49b946b1b05529994fba5112e3b023a5d61bd6 + languageName: node + linkType: hard + +"@vitest/snapshot@npm:1.5.3": + version: 1.5.3 + resolution: "@vitest/snapshot@npm:1.5.3" + dependencies: + magic-string: ^0.30.5 + pathe: ^1.1.1 + pretty-format: ^29.7.0 + checksum: 34ff60f412dd41fff56a4001ceb7b37865d89914fba47e12eb661c776eb3f37345459de3f451a8e94decae7c122fc7d59e879bd8b956bdbfaead1f581a3ef259 + languageName: node + linkType: hard + +"@vitest/spy@npm:1.5.3": + version: 1.5.3 + resolution: "@vitest/spy@npm:1.5.3" + dependencies: + tinyspy: ^2.2.0 + checksum: 2219d248f3bb1679ab592e7432cabd91588041eb5ab8f978fda57fc371cb763fed8760bd5b09d26bb9fae680ae61592a45a72ce49f77b94668c822bfed97f4a6 + languageName: node + linkType: hard + +"@vitest/utils@npm:1.5.3": + version: 1.5.3 + resolution: "@vitest/utils@npm:1.5.3" + dependencies: + diff-sequences: ^29.6.3 + estree-walker: ^3.0.3 + loupe: ^2.3.7 + pretty-format: ^29.7.0 + checksum: 17152b8e6f6d2ec61970637df9b545f4b96a0acae1d4e1bc1e7c6b3e3c6f59f61b9f898e243ed44a1b9429433a7a8cd3add7a14bcd63e2bfabf00447e8a5d751 + languageName: node + linkType: hard + "@webassemblyjs/ast@npm:1.11.1": version: 1.11.1 resolution: "@webassemblyjs/ast@npm:1.11.1" @@ -4818,6 +5159,13 @@ __metadata: languageName: node linkType: hard +"acorn-walk@npm:^8.3.2": + version: 8.3.2 + resolution: "acorn-walk@npm:8.3.2" + checksum: 3626b9d26a37b1b427796feaa5261faf712307a8920392c8dce9a5739fb31077667f4ad2ec71c7ac6aaf9f61f04a9d3d67ff56f459587206fc04aa31c27ef392 + languageName: node + linkType: hard + "acorn@npm:^6.4.1": version: 6.4.2 resolution: "acorn@npm:6.4.2" @@ -4836,6 +5184,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.11.3": + version: 8.11.3 + resolution: "acorn@npm:8.11.3" + bin: + acorn: bin/acorn + checksum: 76d8e7d559512566b43ab4aadc374f11f563f0a9e21626dd59cb2888444e9445923ae9f3699972767f18af61df89cd89f5eaaf772d1327b055b45cb829b4a88c + languageName: node + linkType: hard + "acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.6.0, acorn@npm:^8.7.1": version: 8.7.1 resolution: "acorn@npm:8.7.1" @@ -5926,6 +6283,13 @@ __metadata: languageName: node linkType: hard +"cac@npm:^6.7.14": + version: 6.7.14 + resolution: "cac@npm:6.7.14" + checksum: 45a2496a9443abbe7f52a49b22fbe51b1905eff46e03fd5e6c98e3f85077be3f8949685a1849b1a9cd2bc3e5567dfebcf64f01ce01847baf918f1b37c839791a + languageName: node + linkType: hard + "cacache@npm:^12.0.2": version: 12.0.4 resolution: "cacache@npm:12.0.4" @@ -6120,18 +6484,18 @@ __metadata: languageName: node linkType: hard -"chai@npm:^4.3.6": - version: 4.3.6 - resolution: "chai@npm:4.3.6" +"chai@npm:^4.3.10": + version: 4.4.1 + resolution: "chai@npm:4.4.1" dependencies: assertion-error: ^1.1.0 - check-error: ^1.0.2 - deep-eql: ^3.0.1 - get-func-name: ^2.0.0 - loupe: ^2.3.1 + check-error: ^1.0.3 + deep-eql: ^4.1.3 + get-func-name: ^2.0.2 + loupe: ^2.3.6 pathval: ^1.1.1 - type-detect: ^4.0.5 - checksum: acff93fd537f96d4a4d62dd83810285dffcfccb5089e1bf2a1205b28ec82d93dff551368722893cf85004282df10ee68802737c33c90c5493957ed449ed7ce71 + type-detect: ^4.0.8 + checksum: 9ab84f36eb8e0b280c56c6c21ca4da5933132cd8a0c89c384f1497f77953640db0bc151edd47f81748240a9fab57b78f7d925edfeedc8e8fc98016d71f40c36e languageName: node linkType: hard @@ -6177,10 +6541,12 @@ __metadata: languageName: node linkType: hard -"check-error@npm:^1.0.2": - version: 1.0.2 - resolution: "check-error@npm:1.0.2" - checksum: d9d106504404b8addd1ee3f63f8c0eaa7cd962a1a28eb9c519b1c4a1dc7098be38007fc0060f045ee00f075fbb7a2a4f42abcf61d68323677e11ab98dc16042e +"check-error@npm:^1.0.3": + version: 1.0.3 + resolution: "check-error@npm:1.0.3" + dependencies: + get-func-name: ^2.0.2 + checksum: e2131025cf059b21080f4813e55b3c480419256914601750b0fee3bd9b2b8315b531e551ef12560419b8b6d92a3636511322752b1ce905703239e7cc451b6399 languageName: node linkType: hard @@ -6547,6 +6913,13 @@ __metadata: languageName: node linkType: hard +"confbox@npm:^0.1.7": + version: 0.1.7 + resolution: "confbox@npm:0.1.7" + checksum: bde836c26f5154a348b0c0a757f8a0138929e5737e0553be3c4f07a056abca618b861aa63ac3b22d344789b56be99a1382928933e08cd500df00213bf4d8fb43 + languageName: node + linkType: hard + "console-browserify@npm:^1.1.0": version: 1.2.0 resolution: "console-browserify@npm:1.2.0" @@ -6975,12 +7348,12 @@ __metadata: languageName: node linkType: hard -"deep-eql@npm:^3.0.1": - version: 3.0.1 - resolution: "deep-eql@npm:3.0.1" +"deep-eql@npm:^4.1.3": + version: 4.1.3 + resolution: "deep-eql@npm:4.1.3" dependencies: type-detect: ^4.0.0 - checksum: 4f4c9fb79eb994fb6e81d4aa8b063adc40c00f831588aa65e20857d5d52f15fb23034a6576ecf886f7ff6222d5ae42e71e9b7d57113e0715b1df7ea1e812b125 + checksum: 7f6d30cb41c713973dc07eaadded848b2ab0b835e518a88b91bea72f34e08c4c71d167a722a6f302d3a6108f05afd8e6d7650689a84d5d29ec7fe6220420397f languageName: node linkType: hard @@ -7139,6 +7512,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: f4914158e1f2276343d98ff5b31fc004e7304f5470bf0f1adb2ac6955d85a531a6458d33e87667f98f6ae52ebd3891bb47d420bb48a5bd8b7a27ee25b20e33aa + languageName: node + linkType: hard + "diffie-hellman@npm:^5.0.0": version: 5.0.3 resolution: "diffie-hellman@npm:5.0.3" @@ -7801,6 +8181,86 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:^0.20.1": + version: 0.20.2 + resolution: "esbuild@npm:0.20.2" + dependencies: + "@esbuild/aix-ppc64": 0.20.2 + "@esbuild/android-arm": 0.20.2 + "@esbuild/android-arm64": 0.20.2 + "@esbuild/android-x64": 0.20.2 + "@esbuild/darwin-arm64": 0.20.2 + "@esbuild/darwin-x64": 0.20.2 + "@esbuild/freebsd-arm64": 0.20.2 + "@esbuild/freebsd-x64": 0.20.2 + "@esbuild/linux-arm": 0.20.2 + "@esbuild/linux-arm64": 0.20.2 + "@esbuild/linux-ia32": 0.20.2 + "@esbuild/linux-loong64": 0.20.2 + "@esbuild/linux-mips64el": 0.20.2 + "@esbuild/linux-ppc64": 0.20.2 + "@esbuild/linux-riscv64": 0.20.2 + "@esbuild/linux-s390x": 0.20.2 + "@esbuild/linux-x64": 0.20.2 + "@esbuild/netbsd-x64": 0.20.2 + "@esbuild/openbsd-x64": 0.20.2 + "@esbuild/sunos-x64": 0.20.2 + "@esbuild/win32-arm64": 0.20.2 + "@esbuild/win32-ia32": 0.20.2 + "@esbuild/win32-x64": 0.20.2 + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: bc88050fc1ca5c1bd03648f9979e514bdefb956a63aa3974373bb7b9cbac0b3aac9b9da1b5bdca0b3490e39d6b451c72815dbd6b7d7f978c91fbe9c9e9aa4e4c + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -8253,6 +8713,15 @@ __metadata: languageName: node linkType: hard +"estree-walker@npm:^3.0.3": + version: 3.0.3 + resolution: "estree-walker@npm:3.0.3" + dependencies: + "@types/estree": ^1.0.0 + checksum: a65728d5727b71de172c5df323385755a16c0fdab8234dc756c3854cfee343261ddfbb72a809a5660fac8c75d960bb3e21aa898c2d7e9b19bb298482ca58a3af + languageName: node + linkType: hard + "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -8324,6 +8793,23 @@ __metadata: languageName: node linkType: hard +"execa@npm:^8.0.1": + version: 8.0.1 + resolution: "execa@npm:8.0.1" + dependencies: + cross-spawn: ^7.0.3 + get-stream: ^8.0.1 + human-signals: ^5.0.0 + is-stream: ^3.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^5.1.0 + onetime: ^6.0.0 + signal-exit: ^4.1.0 + strip-final-newline: ^3.0.0 + checksum: cac1bf86589d1d9b73bdc5dda65c52012d1a9619c44c526891956745f7b366ca2603d29fe3f7460bacc2b48c6eab5d6a4f7afe0534b31473d3708d1265545e1f + languageName: node + linkType: hard + "expand-brackets@npm:^2.1.4": version: 2.1.4 resolution: "expand-brackets@npm:2.1.4" @@ -8923,6 +9409,16 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:~2.3.3": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: latest + checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 + conditions: os=darwin + languageName: node + linkType: hard + "fsevents@patch:fsevents@^1.2.7#~builtin": version: 1.2.13 resolution: "fsevents@patch:fsevents@npm%3A1.2.13#~builtin::version=1.2.13&hash=18f3a7" @@ -8942,6 +9438,15 @@ __metadata: languageName: node linkType: hard +"fsevents@patch:fsevents@~2.3.3#~builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=18f3a7" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.1": version: 1.1.1 resolution: "function-bind@npm:1.1.1" @@ -9022,10 +9527,10 @@ __metadata: languageName: node linkType: hard -"get-func-name@npm:^2.0.0": - version: 2.0.0 - resolution: "get-func-name@npm:2.0.0" - checksum: 8d82e69f3e7fab9e27c547945dfe5cc0c57fc0adf08ce135dddb01081d75684a03e7a0487466f478872b341d52ac763ae49e660d01ab83741f74932085f693c3 +"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2": + version: 2.0.2 + resolution: "get-func-name@npm:2.0.2" + checksum: 3f62f4c23647de9d46e6f76d2b3eafe58933a9b3830c60669e4180d6c601ce1b4aa310ba8366143f55e52b139f992087a9f0647274e8745621fa2af7e0acf13b languageName: node linkType: hard @@ -9077,6 +9582,13 @@ __metadata: languageName: node linkType: hard +"get-stream@npm:^8.0.1": + version: 8.0.1 + resolution: "get-stream@npm:8.0.1" + checksum: 01e3d3cf29e1393f05f44d2f00445c5f9ec3d1c49e8179b31795484b9c117f4c695e5e07b88b50785d5c8248a788c85d9913a79266fc77e3ef11f78f10f1b974 + languageName: node + linkType: hard + "get-symbol-description@npm:^1.0.0": version: 1.0.0 resolution: "get-symbol-description@npm:1.0.0" @@ -9709,6 +10221,13 @@ __metadata: languageName: node linkType: hard +"human-signals@npm:^5.0.0": + version: 5.0.0 + resolution: "human-signals@npm:5.0.0" + checksum: 6504560d5ed91444f16bea3bd9dfc66110a339442084e56c3e7fa7bbdf3f406426d6563d662bdce67064b165eac31eeabfc0857ed170aaa612cf14ec9f9a464c + languageName: node + linkType: hard + "humanize-ms@npm:^1.2.1": version: 1.2.1 resolution: "humanize-ms@npm:1.2.1" @@ -10321,6 +10840,13 @@ __metadata: languageName: node linkType: hard +"is-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "is-stream@npm:3.0.0" + checksum: 172093fe99119ffd07611ab6d1bcccfe8bc4aa80d864b15f43e63e54b7abc71e779acd69afdb854c4e2a67fdc16ae710e370eda40088d1cfc956a50ed82d8f16 + languageName: node + linkType: hard + "is-string@npm:^1.0.5, is-string@npm:^1.0.7": version: 1.0.7 resolution: "is-string@npm:1.0.7" @@ -10647,6 +11173,13 @@ __metadata: languageName: node linkType: hard +"js-tokens@npm:^9.0.0": + version: 9.0.0 + resolution: "js-tokens@npm:9.0.0" + checksum: 427d0db681caab0c906cfc78a0235bbe7b41712cee83f3f14785c1de079a1b1a85693cc8f99a3f71685d0d76acaa5b9c8920850b67f93d3eeb7ef186987d186c + languageName: node + linkType: hard + "js-yaml@npm:^3.13.1": version: 3.14.1 resolution: "js-yaml@npm:3.14.1" @@ -11016,10 +11549,13 @@ __metadata: languageName: node linkType: hard -"local-pkg@npm:^0.4.2": - version: 0.4.2 - resolution: "local-pkg@npm:0.4.2" - checksum: 22be451353c25c4411b552bf01880ebc9e995b93574b2facc7757968d888356df59199cacada14162ab53bbc9da055bb692c907b4171f008dbce45a2afc777c1 +"local-pkg@npm:^0.5.0": + version: 0.5.0 + resolution: "local-pkg@npm:0.5.0" + dependencies: + mlly: ^1.4.2 + pkg-types: ^1.0.3 + checksum: b0a6931e588ad4f7bf4ab49faacf49e07fc4d05030f895aa055d46727a15b99300d39491cf2c3e3f05284aec65565fb760debb74c32e64109f4a101f9300d81a languageName: node linkType: hard @@ -11197,12 +11733,12 @@ __metadata: languageName: node linkType: hard -"loupe@npm:^2.3.1": - version: 2.3.4 - resolution: "loupe@npm:2.3.4" +"loupe@npm:^2.3.6, loupe@npm:^2.3.7": + version: 2.3.7 + resolution: "loupe@npm:2.3.7" dependencies: - get-func-name: ^2.0.0 - checksum: 5af91db61aa18530f1749a64735ee194ac263e65e9f4d1562bf3036c591f1baa948289c193e0e34c7b5e2c1b75d3c1dc4fce87f5edb3cee10b0c0df46bc9ffb3 + get-func-name: ^2.0.1 + checksum: 96c058ec7167598e238bb7fb9def2f9339215e97d6685d9c1e3e4bdb33d14600e11fe7a812cf0c003dfb73ca2df374f146280b2287cae9e8d989e9d7a69a203b languageName: node linkType: hard @@ -11275,6 +11811,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:^0.30.5": + version: 0.30.10 + resolution: "magic-string@npm:0.30.10" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.15 + checksum: 456fd47c39b296c47dff967e1965121ace35417eab7f45a99e681e725b8661b48e1573c366ee67a27715025b3740773c46b088f115421c7365ea4ea6fa10d399 + languageName: node + linkType: hard + "make-dir@npm:^2.0.0, make-dir@npm:^2.1.0": version: 2.1.0 resolution: "make-dir@npm:2.1.0" @@ -11614,6 +12159,13 @@ __metadata: languageName: node linkType: hard +"mimic-fn@npm:^4.0.0": + version: 4.0.0 + resolution: "mimic-fn@npm:4.0.0" + checksum: 995dcece15ee29aa16e188de6633d43a3db4611bcf93620e7e62109ec41c79c0f34277165b8ce5e361205049766e371851264c21ac64ca35499acb5421c2ba56 + languageName: node + linkType: hard + "min-document@npm:^2.19.0": version: 2.19.0 resolution: "min-document@npm:2.19.0" @@ -11787,6 +12339,18 @@ __metadata: languageName: node linkType: hard +"mlly@npm:^1.4.2, mlly@npm:^1.6.1": + version: 1.7.0 + resolution: "mlly@npm:1.7.0" + dependencies: + acorn: ^8.11.3 + pathe: ^1.1.2 + pkg-types: ^1.1.0 + ufo: ^1.5.3 + checksum: c1548f4dd0e31ce15d293ebb7c61778bd28c405573dc43dcf799eaeb8f6b776d7dadd95e957d6631b9cc4bb963cd01079d58b7e2290ed540aa460e061bdbd1fa + languageName: node + linkType: hard + "move-concurrently@npm:^1.0.1": version: 1.0.1 resolution: "move-concurrently@npm:1.0.1" @@ -11858,6 +12422,15 @@ __metadata: languageName: node linkType: hard +"nanoid@npm:^3.3.7": + version: 3.3.7 + resolution: "nanoid@npm:3.3.7" + bin: + nanoid: bin/nanoid.cjs + checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 + languageName: node + linkType: hard + "nanoid@npm:^4.0.0": version: 4.0.0 resolution: "nanoid@npm:4.0.0" @@ -12083,6 +12656,15 @@ __metadata: languageName: node linkType: hard +"npm-run-path@npm:^5.1.0": + version: 5.3.0 + resolution: "npm-run-path@npm:5.3.0" + dependencies: + path-key: ^4.0.0 + checksum: ae8e7a89da9594fb9c308f6555c73f618152340dcaae423e5fb3620026fefbec463618a8b761920382d666fa7a2d8d240b6fe320e8a6cdd54dc3687e2b659d25 + languageName: node + linkType: hard + "npmlog@npm:^5.0.1": version: 5.0.1 resolution: "npmlog@npm:5.0.1" @@ -12288,6 +12870,15 @@ __metadata: languageName: node linkType: hard +"onetime@npm:^6.0.0": + version: 6.0.0 + resolution: "onetime@npm:6.0.0" + dependencies: + mimic-fn: ^4.0.0 + checksum: 0846ce78e440841335d4e9182ef69d5762e9f38aa7499b19f42ea1c4cd40f0b4446094c455c713f9adac3f4ae86f613bb5e30c99e52652764d06a89f709b3788 + languageName: node + linkType: hard + "open@npm:^7.0.3": version: 7.4.2 resolution: "open@npm:7.4.2" @@ -12412,6 +13003,15 @@ __metadata: languageName: node linkType: hard +"p-limit@npm:^5.0.0": + version: 5.0.0 + resolution: "p-limit@npm:5.0.0" + dependencies: + yocto-queue: ^1.0.0 + checksum: 87bf5837dee6942f0dbeff318436179931d9a97848d1b07dbd86140a477a5d2e6b90d9701b210b4e21fe7beaea2979dfde366e4f576fa644a59bd4d6a6371da7 + languageName: node + linkType: hard + "p-locate@npm:^2.0.0": version: 2.0.0 resolution: "p-locate@npm:2.0.0" @@ -12696,6 +13296,13 @@ __metadata: languageName: node linkType: hard +"path-key@npm:^4.0.0": + version: 4.0.0 + resolution: "path-key@npm:4.0.0" + checksum: 8e6c314ae6d16b83e93032c61020129f6f4484590a777eed709c4a01b50e498822b00f76ceaf94bc64dbd90b327df56ceadce27da3d83393790f1219e07721d7 + languageName: node + linkType: hard + "path-parse@npm:^1.0.7": version: 1.0.7 resolution: "path-parse@npm:1.0.7" @@ -12737,6 +13344,13 @@ __metadata: languageName: node linkType: hard +"pathe@npm:^1.1.1, pathe@npm:^1.1.2": + version: 1.1.2 + resolution: "pathe@npm:1.1.2" + checksum: ec5f778d9790e7b9ffc3e4c1df39a5bb1ce94657a4e3ad830c1276491ca9d79f189f47609884671db173400256b005f4955f7952f52a2aeb5834ad5fb4faf134 + languageName: node + linkType: hard + "pathval@npm:^1.1.1": version: 1.1.1 resolution: "pathval@npm:1.1.1" @@ -12859,6 +13473,17 @@ __metadata: languageName: node linkType: hard +"pkg-types@npm:^1.0.3, pkg-types@npm:^1.1.0": + version: 1.1.0 + resolution: "pkg-types@npm:1.1.0" + dependencies: + confbox: ^0.1.7 + mlly: ^1.6.1 + pathe: ^1.1.2 + checksum: 9cd3684e308c622db79efc8edc9291662e01cb42ed624ea2fa5400fb6eab94679b4e5b28808e9b763298a023c2381fd72a363a1c84a9073c96609af4c5c59f8f + languageName: node + linkType: hard + "playwright-core@npm:1.23.2": version: 1.23.2 resolution: "playwright-core@npm:1.23.2" @@ -13015,6 +13640,17 @@ __metadata: languageName: node linkType: hard +"postcss@npm:^8.4.38": + version: 8.4.38 + resolution: "postcss@npm:8.4.38" + dependencies: + nanoid: ^3.3.7 + picocolors: ^1.0.0 + source-map-js: ^1.2.0 + checksum: 649f9e60a763ca4b5a7bbec446a069edf07f057f6d780a5a0070576b841538d1ecf7dd888f2fbfd1f76200e26c969e405aeeae66332e6927dbdc8bdcb90b9451 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -13059,6 +13695,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^29.7.0": + version: 29.7.0 + resolution: "pretty-format@npm:29.7.0" + dependencies: + "@jest/schemas": ^29.6.3 + ansi-styles: ^5.0.0 + react-is: ^18.0.0 + checksum: 032c1602383e71e9c0c02a01bbd25d6759d60e9c7cf21937dde8357aa753da348fcec5def5d1002c9678a8524d5fe099ad98861286550ef44de8808cc61e43b6 + languageName: node + linkType: hard + "pretty-hrtime@npm:^1.0.3": version: 1.0.3 resolution: "pretty-hrtime@npm:1.0.3" @@ -13564,6 +14211,13 @@ __metadata: languageName: node linkType: hard +"react-is@npm:^18.0.0": + version: 18.3.1 + resolution: "react-is@npm:18.3.1" + checksum: e20fe84c86ff172fc8d898251b7cc2c43645d108bf96d0b8edf39b98f9a2cae97b40520ee7ed8ee0085ccc94736c4886294456033304151c3f94978cec03df21 + languageName: node + linkType: hard + "react-lifecycles-compat@npm:^3.0.4": version: 3.0.4 resolution: "react-lifecycles-compat@npm:3.0.4" @@ -14196,6 +14850,69 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.13.0": + version: 4.17.2 + resolution: "rollup@npm:4.17.2" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.17.2 + "@rollup/rollup-android-arm64": 4.17.2 + "@rollup/rollup-darwin-arm64": 4.17.2 + "@rollup/rollup-darwin-x64": 4.17.2 + "@rollup/rollup-linux-arm-gnueabihf": 4.17.2 + "@rollup/rollup-linux-arm-musleabihf": 4.17.2 + "@rollup/rollup-linux-arm64-gnu": 4.17.2 + "@rollup/rollup-linux-arm64-musl": 4.17.2 + "@rollup/rollup-linux-powerpc64le-gnu": 4.17.2 + "@rollup/rollup-linux-riscv64-gnu": 4.17.2 + "@rollup/rollup-linux-s390x-gnu": 4.17.2 + "@rollup/rollup-linux-x64-gnu": 4.17.2 + "@rollup/rollup-linux-x64-musl": 4.17.2 + "@rollup/rollup-win32-arm64-msvc": 4.17.2 + "@rollup/rollup-win32-ia32-msvc": 4.17.2 + "@rollup/rollup-win32-x64-msvc": 4.17.2 + "@types/estree": 1.0.5 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-powerpc64le-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: e6a2813fea25ea816ce582a04c2ffccc0b841ddc22842325c39353620214055bf827e0d7f6714e836170079faf0443ffc27966ccae27900ae3baa039aa36a8e1 + languageName: node + linkType: hard + "rsvp@npm:^4.8.4": version: 4.8.5 resolution: "rsvp@npm:4.8.5" @@ -14559,6 +15276,13 @@ __metadata: languageName: node linkType: hard +"siginfo@npm:^2.0.0": + version: 2.0.0 + resolution: "siginfo@npm:2.0.0" + checksum: 8aa5a98640ca09fe00d74416eca97551b3e42991614a3d1b824b115fc1401543650914f651ab1311518177e4d297e80b953f4cd4cd7ea1eabe824e8f2091de01 + languageName: node + linkType: hard + "signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -14566,6 +15290,13 @@ __metadata: languageName: node linkType: hard +"signal-exit@npm:^4.1.0": + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: 64c757b498cb8629ffa5f75485340594d2f8189e9b08700e69199069c8e3070fb3e255f7ab873c05dc0b3cec412aea7402e10a5990cb6a050bd33ba062a6c549 + languageName: node + linkType: hard + "sisteransi@npm:^1.0.5": version: 1.0.5 resolution: "sisteransi@npm:1.0.5" @@ -14676,6 +15407,13 @@ __metadata: languageName: node linkType: hard +"source-map-js@npm:^1.2.0": + version: 1.2.0 + resolution: "source-map-js@npm:1.2.0" + checksum: 791a43306d9223792e84293b00458bf102a8946e7188f3db0e4e22d8d530b5f80a4ce468eb5ec0bf585443ad55ebbd630bf379c98db0b1f317fd902500217f97 + languageName: node + linkType: hard + "source-map-resolve@npm:^0.5.0": version: 0.5.3 resolution: "source-map-resolve@npm:0.5.3" @@ -14834,6 +15572,13 @@ __metadata: languageName: node linkType: hard +"stackback@npm:0.0.2": + version: 0.0.2 + resolution: "stackback@npm:0.0.2" + checksum: 2d4dc4e64e2db796de4a3c856d5943daccdfa3dd092e452a1ce059c81e9a9c29e0b9badba91b43ef0d5ff5c04ee62feb3bcc559a804e16faf447bac2d883aa99 + languageName: node + linkType: hard + "stackframe@npm:^1.3.4": version: 1.3.4 resolution: "stackframe@npm:1.3.4" @@ -14877,6 +15622,13 @@ __metadata: languageName: node linkType: hard +"std-env@npm:^3.5.0": + version: 3.7.0 + resolution: "std-env@npm:3.7.0" + checksum: 4f489d13ff2ab838c9acd4ed6b786b51aa52ecacdfeaefe9275fcb220ff2ac80c6e95674723508fd29850a694569563a8caaaea738eb82ca16429b3a0b50e510 + languageName: node + linkType: hard + "store2@npm:^2.12.0": version: 2.13.2 resolution: "store2@npm:2.13.2" @@ -15061,6 +15813,13 @@ __metadata: languageName: node linkType: hard +"strip-final-newline@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-final-newline@npm:3.0.0" + checksum: 23ee263adfa2070cd0f23d1ac14e2ed2f000c9b44229aec9c799f1367ec001478469560abefd00c5c99ee6f0b31c137d53ec6029c53e9f32a93804e18c201050 + languageName: node + linkType: hard + "strip-indent@npm:^1.0.1": version: 1.0.1 resolution: "strip-indent@npm:1.0.1" @@ -15088,6 +15847,15 @@ __metadata: languageName: node linkType: hard +"strip-literal@npm:^2.0.0": + version: 2.1.0 + resolution: "strip-literal@npm:2.1.0" + dependencies: + js-tokens: ^9.0.0 + checksum: 37c2072634d2de11a3644fe1bcf4abd566d85e89f0d8e8b10d35d04e7bef962e7c112fbe5b805ce63e59dfacedc240356eeef57976351502966b7c64b742c6ac + languageName: node + linkType: hard + "style-loader@npm:^1.3.0": version: 1.3.0 resolution: "style-loader@npm:1.3.0" @@ -15403,17 +16171,24 @@ __metadata: languageName: node linkType: hard -"tinypool@npm:^0.2.4": - version: 0.2.4 - resolution: "tinypool@npm:0.2.4" - checksum: f050bd36c89529a2a0d3f9c1fdbba3f317114e3ee6eb5d5ba72c51e887d45ef3ef8d8533fb2ca2eba7189d19d2231712b81b3a75e099248532f5563369929c33 +"tinybench@npm:^2.5.1": + version: 2.8.0 + resolution: "tinybench@npm:2.8.0" + checksum: 024a307c6a71f6e2903e110952457ee3dfa606093b45d7f49efcfd01d452650e099474080677ff650b0fd76b49074425ac68ff2a70561699a78515a278bf0862 languageName: node linkType: hard -"tinyspy@npm:^1.0.0": - version: 1.0.0 - resolution: "tinyspy@npm:1.0.0" - checksum: f9a7cea406db9b0f99a4ef162eb0a45d88fc36facbc309702c8d568283baa363ab3c4138d8402fbfdef7a8d3157ff7cfae3e99ec6c75d8f684bd7b23485b5ec5 +"tinypool@npm:^0.8.3": + version: 0.8.4 + resolution: "tinypool@npm:0.8.4" + checksum: d40c40e062d5eeae85dadc39294dde6bc7b9a7a7cf0c972acbbe5a2b42491dfd4c48381c1e48bbe02aff4890e63de73d115b2e7de2ce4c81356aa5e654a43caf + languageName: node + linkType: hard + +"tinyspy@npm:^2.2.0": + version: 2.2.1 + resolution: "tinyspy@npm:2.2.1" + checksum: 170d6232e87f9044f537b50b406a38fbfd6f79a261cd12b92879947bd340939a833a678632ce4f5c4a6feab4477e9c21cd43faac3b90b68b77dd0536c4149736 languageName: node linkType: hard @@ -15861,7 +16636,7 @@ __metadata: languageName: node linkType: hard -"type-detect@npm:^4.0.0, type-detect@npm:^4.0.5": +"type-detect@npm:^4.0.0, type-detect@npm:^4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" checksum: 62b5628bff67c0eb0b66afa371bd73e230399a8d2ad30d852716efcc4656a7516904570cd8631a49a3ce57c10225adf5d0cbdcb47f6b0255fe6557c453925a15 @@ -15958,6 +16733,13 @@ __metadata: languageName: node linkType: hard +"ufo@npm:^1.5.3": + version: 1.5.3 + resolution: "ufo@npm:1.5.3" + checksum: 2f54fa543b2e689cc4ab341fe2194937afe37c5ee43cd782e6ecc184e36859e84d4197a43ae4cd6e9a56f793ca7c5b950dfff3f16fadaeef9b6b88b05c88c8ef + languageName: node + linkType: hard + "uglify-js@npm:^3.1.4": version: 3.16.2 resolution: "uglify-js@npm:3.16.2" @@ -16465,9 +17247,24 @@ __metadata: languageName: node linkType: hard -"vite@npm:^2.9.12 || ^3.0.0-0": - version: 3.0.0-beta.8 - resolution: "vite@npm:3.0.0-beta.8" +"vite-node@npm:1.5.3": + version: 1.5.3 + resolution: "vite-node@npm:1.5.3" + dependencies: + cac: ^6.7.14 + debug: ^4.3.4 + pathe: ^1.1.1 + picocolors: ^1.0.0 + vite: ^5.0.0 + bin: + vite-node: vite-node.mjs + checksum: 6f3a851f5490ed8b7fa9ca2a2e6b2b0f6f74569dbd606b6437458792c3f0423deae1c9f5127a3d35c6d47b3f32dce459c406dd59f5cb9f59b52f86287b73e153 + languageName: node + linkType: hard + +"vite@npm:^3.0.4": + version: 3.0.4 + resolution: "vite@npm:3.0.4" dependencies: esbuild: ^0.14.47 fsevents: ~2.3.2 @@ -16493,78 +17290,97 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: 22c66cbcf69a428c0844d76158ac8e65337915b741105e68461427b880dd345eb1f8573c766bdfdeb4c2d3df7b84f85833663b4b3fe8f20f7d7b381f952c4726 + checksum: f13eceb94f7b399942ce5e7c10df73314f7b073171d6594228b078cc1203042c4cdb9e8356fe64ad444c3533c31437abb3c64ac56478f0865fab598e924cf68b languageName: node linkType: hard -"vite@npm:^3.0.4": - version: 3.0.4 - resolution: "vite@npm:3.0.4" +"vite@npm:^5.0.0": + version: 5.2.11 + resolution: "vite@npm:5.2.11" dependencies: - esbuild: ^0.14.47 - fsevents: ~2.3.2 - postcss: ^8.4.14 - resolve: ^1.22.1 - rollup: ^2.75.6 + esbuild: ^0.20.1 + fsevents: ~2.3.3 + postcss: ^8.4.38 + rollup: ^4.13.0 peerDependencies: + "@types/node": ^18.0.0 || >=20.0.0 less: "*" + lightningcss: ^1.21.0 sass: "*" stylus: "*" + sugarss: "*" terser: ^5.4.0 dependenciesMeta: fsevents: optional: true peerDependenciesMeta: + "@types/node": + optional: true less: optional: true + lightningcss: + optional: true sass: optional: true stylus: optional: true + sugarss: + optional: true terser: optional: true bin: vite: bin/vite.js - checksum: f13eceb94f7b399942ce5e7c10df73314f7b073171d6594228b078cc1203042c4cdb9e8356fe64ad444c3533c31437abb3c64ac56478f0865fab598e924cf68b + checksum: 3f9f976cc6ada93aca56abcc683a140e807725b351abc241a1ec0763ec561a4bf5760e1ad94de4e59505904ddaa88727de66af02f61ecf540c7720045de55d0a languageName: node linkType: hard -"vitest@npm:^0.20.2": - version: 0.20.2 - resolution: "vitest@npm:0.20.2" +"vitest@npm:1.5.3, vitest@npm:^1.5.3": + version: 1.5.3 + resolution: "vitest@npm:1.5.3" dependencies: - "@types/chai": ^4.3.1 - "@types/chai-subset": ^1.3.3 - "@types/node": "*" - chai: ^4.3.6 + "@vitest/expect": 1.5.3 + "@vitest/runner": 1.5.3 + "@vitest/snapshot": 1.5.3 + "@vitest/spy": 1.5.3 + "@vitest/utils": 1.5.3 + acorn-walk: ^8.3.2 + chai: ^4.3.10 debug: ^4.3.4 - local-pkg: ^0.4.2 - tinypool: ^0.2.4 - tinyspy: ^1.0.0 - vite: ^2.9.12 || ^3.0.0-0 + execa: ^8.0.1 + local-pkg: ^0.5.0 + magic-string: ^0.30.5 + pathe: ^1.1.1 + picocolors: ^1.0.0 + std-env: ^3.5.0 + strip-literal: ^2.0.0 + tinybench: ^2.5.1 + tinypool: ^0.8.3 + vite: ^5.0.0 + vite-node: 1.5.3 + why-is-node-running: ^2.2.2 peerDependencies: "@edge-runtime/vm": "*" - "@vitest/browser": "*" - "@vitest/ui": "*" - c8: "*" + "@types/node": ^18.0.0 || >=20.0.0 + "@vitest/browser": 1.5.3 + "@vitest/ui": 1.5.3 happy-dom: "*" jsdom: "*" peerDependenciesMeta: "@edge-runtime/vm": optional: true + "@types/node": + optional: true "@vitest/browser": optional: true "@vitest/ui": optional: true - c8: - optional: true happy-dom: optional: true jsdom: optional: true bin: vitest: vitest.mjs - checksum: eea156689f119bd45cf3cfaa2d0af42f3c86e3952fd4cec0e8b6ee67da9b4ad4266180573f6750293285324f40535b698795eff520da535419fff076d1e3bc3a + checksum: 1cd965e34dcd9a3f4dead3b455470d1fc4c7aa09ca7a3e0b2493c85cf2d5e9913aace1ee41cb17caaada4e4ba3effa552a2ae5f3cc689b6899a5ef85e856e8c6 languageName: node linkType: hard @@ -16945,6 +17761,18 @@ __metadata: languageName: node linkType: hard +"why-is-node-running@npm:^2.2.2": + version: 2.2.2 + resolution: "why-is-node-running@npm:2.2.2" + dependencies: + siginfo: ^2.0.0 + stackback: 0.0.2 + bin: + why-is-node-running: cli.js + checksum: 50820428f6a82dfc3cbce661570bcae9b658723217359b6037b67e495255409b4c8bc7931745f5c175df71210450464517cab32b2f7458ac9c40b4925065200a + languageName: node + linkType: hard + "wide-align@npm:^1.1.2, wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" @@ -17170,6 +17998,13 @@ __metadata: languageName: node linkType: hard +"yocto-queue@npm:^1.0.0": + version: 1.0.0 + resolution: "yocto-queue@npm:1.0.0" + checksum: 2cac84540f65c64ccc1683c267edce396b26b1e931aa429660aefac8fbe0188167b7aee815a3c22fa59a28a58d898d1a2b1825048f834d8d629f4c2a5d443801 + languageName: node + linkType: hard + "zwitch@npm:^1.0.0": version: 1.0.5 resolution: "zwitch@npm:1.0.5" From 922b3a3afb5a45d5855c9bbecd3685c9d694c302 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Fri, 3 May 2024 10:53:19 +0200 Subject: [PATCH 05/11] Fix group overlap with prop name --- packages/core/src/grouper.test.ts | 2 +- packages/core/src/grouper.ts | 61 ++++++++++++++++++++----------- 2 files changed, 40 insertions(+), 23 deletions(-) diff --git a/packages/core/src/grouper.test.ts b/packages/core/src/grouper.test.ts index 0af8a23..145e475 100644 --- a/packages/core/src/grouper.test.ts +++ b/packages/core/src/grouper.test.ts @@ -5,7 +5,7 @@ import { groupCatalog, groupParameters, groupSchema, groupUiSchema, unGroupParam import { ICatalog, IParameters } from './types' function deepCopy (value: T): T { - return JSON.parse(JSON.stringify(value)) + return structuredClone(value) } describe('given a schema without any property with ui:group in uiSchema', () => { diff --git a/packages/core/src/grouper.ts b/packages/core/src/grouper.ts index 4563f49..c7bff7a 100644 --- a/packages/core/src/grouper.ts +++ b/packages/core/src/grouper.ts @@ -29,7 +29,7 @@ export function groupSchema ( schema: JSONSchema7, uiSchema: UiSchema ): JSONSchema7 { - const newSchema = JSON.parse(JSON.stringify(schema)) + const newSchema = structuredClone(schema) // Handle overlap between groups and direct prop names. const definedGroups = new Set( @@ -37,28 +37,38 @@ export function groupSchema ( .filter((v) => 'ui:group' in v) .map((v) => v['ui:group']) ) - // TODO direct prop with same name as group throw error - // TODO prop with group and same name as any group should be nested first - // todos should replace lines 44-65 - - const directProps = schema.properties ?? {} - const directPropNamesWithSameNameAsGroup = new Set( - Object.keys(directProps).filter((k) => definedGroups.has(k)) + const propsWithGroup = new Set( + Object.keys(uiSchema).filter((k) => 'ui:group' in uiSchema[k]) ) - for (const k of directPropNamesWithSameNameAsGroup) { - const propHasGroup = - k in uiSchema && 'ui:group' in uiSchema[k] && 'ui:group' in uiSchema[k] - if (!(propHasGroup && uiSchema[k]['ui:group'] === k)) { - throw new Error( - `Can not have group and un-grouped parameter with same name ${k}` - ) - } - // Prop has same name as its group so nest it - const v = newSchema.properties[k] - newSchema.properties[k] = { + const allProps = new Set(Object.keys(schema.properties ?? {})) + const grouplessProps = new Set([...allProps].filter((x) => !propsWithGroup.has(x))) + const grouplessPropsWithSameNameAsGroup = new Set( + [...grouplessProps].filter((x) => definedGroups.has(x)) + ) + // direct prop with same name as group throw error + if (grouplessPropsWithSameNameAsGroup.size > 0) { + const msg = Array.from(grouplessPropsWithSameNameAsGroup).join(', ') + throw new Error( + `Can not have group and un-grouped parameter with same name ${msg}` + ) + } + + if (!('properties' in newSchema && typeof newSchema.properties === 'object')) { + throw new Error('Schema must have properties') + } + + // prop with group and same name as any group should be nested first + const propsWithSameNameAsAnyGroup = new Set(Object.entries(uiSchema).filter(([k, v]) => 'ui:group' in v && definedGroups.has(k)).map((d) => d[0])) + for (const k of propsWithSameNameAsAnyGroup) { + const prop = newSchema.properties[k] + /* eslint-disable @typescript-eslint/no-dynamic-delete */ + delete newSchema.properties[k] + /* eslint-enable @typescript-eslint/no-dynamic-delete */ + const group = uiSchema[k]['ui:group'] + newSchema.properties[group] = { type: 'object', properties: { - [k]: v + [k]: prop }, additionalProperties: false } @@ -66,8 +76,11 @@ export function groupSchema ( Object.entries(uiSchema).forEach(([k, v]) => { // TODO recursivly, now only loops over first direct props - if ('ui:group' in v && !directPropNamesWithSameNameAsGroup.has(k)) { + if ('ui:group' in v && !propsWithSameNameAsAnyGroup.has(k)) { const group = v['ui:group'] + if (!('properties' in newSchema && typeof newSchema.properties === 'object')) { + throw new Error('Schema must have properties') + } if (!(group in newSchema.properties)) { newSchema.properties[group] = { type: 'object', @@ -75,7 +88,11 @@ export function groupSchema ( additionalProperties: false } } - newSchema.properties[group].properties[k] = newSchema.properties[k] + const newGroup = newSchema.properties[group] + if (typeof newGroup === 'boolean' || newGroup.properties === undefined) { + throw new Error('Schema must have properties') + } + newGroup.properties[k] = newSchema.properties[k] // Remove k as it now is in the group /* eslint-disable @typescript-eslint/no-dynamic-delete */ delete newSchema.properties[k] From 6c1cec417a12a940d083f728f31640fbe849de29 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Fri, 3 May 2024 11:07:52 +0200 Subject: [PATCH 06/11] Add test coverage dependency --- packages/core/package.json | 1 + packages/form/package.json | 1 + yarn.lock | 176 ++++++++++++++++++++++++++++++++++++- 3 files changed, 177 insertions(+), 1 deletion(-) diff --git a/packages/core/package.json b/packages/core/package.json index 1df314b..5278eb1 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -51,6 +51,7 @@ "@types/js-yaml": "^4.0.5", "@types/papaparse": "^5.3.2", "@types/react-syntax-highlighter": "^13.5.2", + "@vitest/coverage-v8": "^1.5.3", "babel-loader": "^8.2.5", "c8": "^7.11.0", "jsdom": "^20.0.0", diff --git a/packages/form/package.json b/packages/form/package.json index 3c1fbe7..8e63877 100644 --- a/packages/form/package.json +++ b/packages/form/package.json @@ -54,6 +54,7 @@ "@storybook/react": "^6.5.9", "@storybook/testing-library": "^0.0.13", "@testing-library/react": "12", + "@vitest/coverage-v8": "^1.5.3", "babel-loader": "^8.2.5", "jsdom": "^20.0.0", "postcss": "^8.4.14", diff --git a/yarn.lock b/yarn.lock index 2ffe88c..534b764 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,6 +15,16 @@ __metadata: languageName: node linkType: hard +"@ampproject/remapping@npm:^2.2.1": + version: 2.3.0 + resolution: "@ampproject/remapping@npm:2.3.0" + dependencies: + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0 + languageName: node + linkType: hard + "@babel/code-frame@npm:7.12.11": version: 7.12.11 resolution: "@babel/code-frame@npm:7.12.11" @@ -358,6 +368,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-string-parser@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/helper-string-parser@npm:7.24.1" + checksum: 8404e865b06013979a12406aab4c0e8d2e377199deec09dfe9f57b833b0c9ce7b6e8c1c553f2da8d0bcd240c5005bd7a269f4fef0d628aeb7d5fe035c436fb67 + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.18.6": version: 7.18.6 resolution: "@babel/helper-validator-identifier@npm:7.18.6" @@ -372,6 +389,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.24.5": + version: 7.24.5 + resolution: "@babel/helper-validator-identifier@npm:7.24.5" + checksum: 75d6f9f475c08f3be87bae4953e9b8d8c72983e16ed2860870b328d048cb20dccb4fcbf85eacbdd817ea1efbb38552a6db9046e2e37bfe13bdec44ac8939024c + languageName: node + linkType: hard + "@babel/helper-validator-option@npm:^7.18.6": version: 7.18.6 resolution: "@babel/helper-validator-option@npm:7.18.6" @@ -422,6 +446,15 @@ __metadata: languageName: node linkType: hard +"@babel/parser@npm:^7.24.4": + version: 7.24.5 + resolution: "@babel/parser@npm:7.24.5" + bin: + parser: ./bin/babel-parser.js + checksum: a251ea41bf8b5f61048beb320d43017aff68af5a3506bd2ef392180f5fa32c1061513171d582bb3d46ea48e3659dece8b3ba52511a2566066e58abee300ce2a0 + languageName: node + linkType: hard + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.18.6": version: 7.18.6 resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.18.6" @@ -1625,6 +1658,17 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.24.0": + version: 7.24.5 + resolution: "@babel/types@npm:7.24.5" + dependencies: + "@babel/helper-string-parser": ^7.24.1 + "@babel/helper-validator-identifier": ^7.24.5 + to-fast-properties: ^2.0.0 + checksum: 8eeeacd996593b176e649ee49d8dc3f26f9bb6aa1e3b592030e61a0e58ea010fb018dccc51e5314c8139409ea6cbab02e29b33e674e1f6962d8e24c52da6375b + languageName: node + linkType: hard + "@base2/pretty-print-object@npm:1.0.1": version: 1.0.1 resolution: "@base2/pretty-print-object@npm:1.0.1" @@ -2234,6 +2278,7 @@ __metadata: "@types/js-yaml": ^4.0.5 "@types/papaparse": ^5.3.2 "@types/react-syntax-highlighter": ^13.5.2 + "@vitest/coverage-v8": ^1.5.3 "@zip.js/zip.js": ^2.3.23 ajv: ^8.9.0 ajv-formats: ^2.1.1 @@ -2281,6 +2326,7 @@ __metadata: "@storybook/react": ^6.5.9 "@storybook/testing-library": ^0.0.13 "@testing-library/react": 12 + "@vitest/coverage-v8": ^1.5.3 ajv: ^8.9.0 babel-loader: ^8.2.5 jsdom: ^20.0.0 @@ -2431,6 +2477,17 @@ __metadata: languageName: node linkType: hard +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.5 + resolution: "@jridgewell/gen-mapping@npm:0.3.5" + dependencies: + "@jridgewell/set-array": ^1.2.1 + "@jridgewell/sourcemap-codec": ^1.4.10 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: ff7a1764ebd76a5e129c8890aa3e2f46045109dabde62b0b6c6a250152227647178ff2069ea234753a690d8f3c4ac8b5e7b267bbee272bffb7f3b0a370ab6e52 + languageName: node + linkType: hard + "@jridgewell/resolve-uri@npm:^3.0.3": version: 3.1.0 resolution: "@jridgewell/resolve-uri@npm:3.1.0" @@ -2438,6 +2495,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 + languageName: node + linkType: hard + "@jridgewell/set-array@npm:^1.0.0, @jridgewell/set-array@npm:^1.0.1": version: 1.1.2 resolution: "@jridgewell/set-array@npm:1.1.2" @@ -2445,6 +2509,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 + languageName: node + linkType: hard + "@jridgewell/source-map@npm:^0.3.2": version: 0.3.2 resolution: "@jridgewell/source-map@npm:0.3.2" @@ -2462,7 +2533,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.15": +"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 @@ -2479,6 +2550,16 @@ __metadata: languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:^0.3.23, @jridgewell/trace-mapping@npm:^0.3.24": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" + dependencies: + "@jridgewell/resolve-uri": ^3.1.0 + "@jridgewell/sourcemap-codec": ^1.4.14 + checksum: 9d3c40d225e139987b50c48988f8717a54a8c994d8a948ee42e1412e08988761d0754d7d10b803061cc3aebf35f92a5dbbab493bd0e1a9ef9e89a2130e83ba34 + languageName: node + linkType: hard + "@ltd/j-toml@npm:^1.24.0": version: 1.30.0 resolution: "@ltd/j-toml@npm:1.30.0" @@ -4686,6 +4767,29 @@ __metadata: languageName: node linkType: hard +"@vitest/coverage-v8@npm:^1.5.3": + version: 1.5.3 + resolution: "@vitest/coverage-v8@npm:1.5.3" + dependencies: + "@ampproject/remapping": ^2.2.1 + "@bcoe/v8-coverage": ^0.2.3 + debug: ^4.3.4 + istanbul-lib-coverage: ^3.2.2 + istanbul-lib-report: ^3.0.1 + istanbul-lib-source-maps: ^5.0.4 + istanbul-reports: ^3.1.6 + magic-string: ^0.30.5 + magicast: ^0.3.3 + picocolors: ^1.0.0 + std-env: ^3.5.0 + strip-literal: ^2.0.0 + test-exclude: ^6.0.0 + peerDependencies: + vitest: 1.5.3 + checksum: 9e43aed30ca29d1693ce91ce2c55b7445ae57b4fb016ecb5baea829407ba48c636e3627764a50b0807830b93dd9a069da39439d8c9f9bfb2ebbe38745f6578cc + languageName: node + linkType: hard + "@vitest/expect@npm:1.5.3": version: 1.5.3 resolution: "@vitest/expect@npm:1.5.3" @@ -11006,6 +11110,13 @@ __metadata: languageName: node linkType: hard +"istanbul-lib-coverage@npm:^3.2.2": + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 + languageName: node + linkType: hard + "istanbul-lib-instrument@npm:^5.0.4": version: 5.2.0 resolution: "istanbul-lib-instrument@npm:5.2.0" @@ -11030,6 +11141,28 @@ __metadata: languageName: node linkType: hard +"istanbul-lib-report@npm:^3.0.1": + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" + dependencies: + istanbul-lib-coverage: ^3.0.0 + make-dir: ^4.0.0 + supports-color: ^7.1.0 + checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 + languageName: node + linkType: hard + +"istanbul-lib-source-maps@npm:^5.0.4": + version: 5.0.4 + resolution: "istanbul-lib-source-maps@npm:5.0.4" + dependencies: + "@jridgewell/trace-mapping": ^0.3.23 + debug: ^4.1.1 + istanbul-lib-coverage: ^3.0.0 + checksum: f34550c75b957312787eaa86a6c115b269f090905c0128f8acdb553a8d9b6562581be0e7c0b68247d97172fdfd6445517cbe46651f984453cce3c517b2e931ad + languageName: node + linkType: hard + "istanbul-reports@npm:^3.1.4": version: 3.1.4 resolution: "istanbul-reports@npm:3.1.4" @@ -11040,6 +11173,16 @@ __metadata: languageName: node linkType: hard +"istanbul-reports@npm:^3.1.6": + version: 3.1.7 + resolution: "istanbul-reports@npm:3.1.7" + dependencies: + html-escaper: ^2.0.0 + istanbul-lib-report: ^3.0.0 + checksum: 2072db6e07bfbb4d0eb30e2700250636182398c1af811aea5032acb219d2080f7586923c09fa194029efd6b92361afb3dcbe1ebcc3ee6651d13340f7c6c4ed95 + languageName: node + linkType: hard + "iterate-iterator@npm:^1.0.1": version: 1.0.2 resolution: "iterate-iterator@npm:1.0.2" @@ -11820,6 +11963,17 @@ __metadata: languageName: node linkType: hard +"magicast@npm:^0.3.3": + version: 0.3.4 + resolution: "magicast@npm:0.3.4" + dependencies: + "@babel/parser": ^7.24.4 + "@babel/types": ^7.24.0 + source-map-js: ^1.2.0 + checksum: 9cc84b8424d2c9b03533c16abec5b29f3897619a07714232c602382660867140858f54f482da2b9968ba4b89e198e66578f483415256c4eb2656ae7265bbb2de + languageName: node + linkType: hard + "make-dir@npm:^2.0.0, make-dir@npm:^2.1.0": version: 2.1.0 resolution: "make-dir@npm:2.1.0" @@ -11839,6 +11993,15 @@ __metadata: languageName: node linkType: hard +"make-dir@npm:^4.0.0": + version: 4.0.0 + resolution: "make-dir@npm:4.0.0" + dependencies: + semver: ^7.5.3 + checksum: bf0731a2dd3aab4db6f3de1585cea0b746bb73eb5a02e3d8d72757e376e64e6ada190b1eddcde5b2f24a81b688a9897efd5018737d05e02e2a671dda9cff8a8a + languageName: node + linkType: hard + "make-fetch-happen@npm:^10.0.3": version: 10.1.8 resolution: "make-fetch-happen@npm:10.1.8" @@ -15095,6 +15258,17 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.5.3": + version: 7.6.0 + resolution: "semver@npm:7.6.0" + dependencies: + lru-cache: ^6.0.0 + bin: + semver: bin/semver.js + checksum: 7427f05b70786c696640edc29fdd4bc33b2acf3bbe1740b955029044f80575fc664e1a512e4113c3af21e767154a94b4aa214bf6cd6e42a1f6dba5914e0b208c + languageName: node + linkType: hard + "send@npm:0.18.0": version: 0.18.0 resolution: "send@npm:0.18.0" From 4017d6c9df1a24422b6c598f4e63a85002dc0806 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Fri, 3 May 2024 11:16:13 +0200 Subject: [PATCH 07/11] Fix tests --- packages/core/src/grouper.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/grouper.ts b/packages/core/src/grouper.ts index c7bff7a..7c1e2e5 100644 --- a/packages/core/src/grouper.ts +++ b/packages/core/src/grouper.ts @@ -54,7 +54,7 @@ export function groupSchema ( } if (!('properties' in newSchema && typeof newSchema.properties === 'object')) { - throw new Error('Schema must have properties') + return newSchema } // prop with group and same name as any group should be nested first @@ -90,7 +90,7 @@ export function groupSchema ( } const newGroup = newSchema.properties[group] if (typeof newGroup === 'boolean' || newGroup.properties === undefined) { - throw new Error('Schema must have properties') + return } newGroup.properties[k] = newSchema.properties[k] // Remove k as it now is in the group From 55bdb1487c81095371aa4e74928ad32f17da3a80 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Fri, 3 May 2024 12:16:25 +0200 Subject: [PATCH 08/11] Update CHANGELOG --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a5025e0..2bdcca7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +### Changed + +* Improved handling of groups in ui schema + +### Fixed + +* Hide the exit module ([#153](https://github.com/i-VRESSE/workflow-builder/issues/153)) + + ## @i-vresse/wb-core 2.0.1 - 2024-03-25 ### Changed From 298c54169f6f51b37059f9747d95b948bf9fb97a Mon Sep 17 00:00:00 2001 From: Stefan Verhoeven Date: Tue, 7 May 2024 10:36:59 +0200 Subject: [PATCH 09/11] Nodes which have single collapsibe field are expanded initially --- packages/core/src/store.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/packages/core/src/store.ts b/packages/core/src/store.ts index 753bb69..3fe9936 100644 --- a/packages/core/src/store.ts +++ b/packages/core/src/store.ts @@ -404,6 +404,27 @@ export function useSelectedNodeFormSchema (): JSONSchema7 | undefined { return useRecoilValue(selectedNodeFormSchemaState) } +function expandSingleCollapsibleField (uiSchema: UiSchema): UiSchema { + const nrCollapsibles = Object.values(uiSchema).filter( + (v) => v['ui:field'] === 'collapsible' + ).length + if (nrCollapsibles === 1) { + const firstCollapsibleKey = Object.keys(uiSchema).find( + (k) => uiSchema[k]['ui:field'] === 'collapsible' + ) + if (firstCollapsibleKey !== undefined) { + return { + ...uiSchema, + [firstCollapsibleKey]: { + ...uiSchema[firstCollapsibleKey], + 'ui:collapsed': false + } + } + } + } + return uiSchema +} + const selectedNodeFormUiSchemaState = selector({ key: 'selectedNodeFormUiSchema', get: ({ get }) => { @@ -419,7 +440,8 @@ const selectedNodeFormUiSchemaState = selector({ moleculeInfos, moleculesPropName ) - return uiSchemaWithMolInfo + + return expandSingleCollapsibleField(uiSchemaWithMolInfo) } }) From f2ee9d2d93f82f515a774e6660a370439c1bdda1 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Thu, 16 May 2024 11:16:46 +0200 Subject: [PATCH 10/11] Regen catalog of https://github.com/haddocking/haddock3/pull/841/commits/05872896e0a8e86ef53f47b4fb4558e77909a964 --- .../public/catalog/haddock3.easy.yaml | 12 ++++++++++++ .../public/catalog/haddock3.expert.yaml | 12 ++++++++++++ .../public/catalog/haddock3.guru.yaml | 12 ++++++++++++ 3 files changed, 36 insertions(+) diff --git a/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml b/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml index 03def31..85b3c3f 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.easy.yaml @@ -1105,6 +1105,16 @@ nodes: $comment: Atoms to be considered during the analysis. If false (default), only backbone atoms will be considered, otherwise all the heavy-atoms. type: boolean + contact_distance_cutoff: + default: 5.0 + title: Distance cutoff defining a contact. + description: Cutoff distance (in Angstrom) defining a contact. + $comment: Distance (in Angstrom) cutoff defining a contact. Any atoms within + this cutoff range will be used to define the interface. Standard values + are usually 3.9 A or 5.0 A. + type: number + maximum: 30.0 + minimum: 0.1 required: [] additionalProperties: false uiSchema: @@ -1116,6 +1126,8 @@ nodes: ui:group: analysis allatoms: ui:group: analysis + contact_distance_cutoff: + ui:group: analysis tomlSchema: {} - id: lightdock category: sampling diff --git a/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml b/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml index 64cfe5e..f4d6624 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.expert.yaml @@ -5295,6 +5295,16 @@ nodes: $comment: Atoms to be considered during the analysis. If false (default), only backbone atoms will be considered, otherwise all the heavy-atoms. type: boolean + contact_distance_cutoff: + default: 5.0 + title: Distance cutoff defining a contact. + description: Cutoff distance (in Angstrom) defining a contact. + $comment: Distance (in Angstrom) cutoff defining a contact. Any atoms within + this cutoff range will be used to define the interface. Standard values + are usually 3.9 A or 5.0 A. + type: number + maximum: 30.0 + minimum: 0.1 required: [] additionalProperties: false uiSchema: @@ -5306,6 +5316,8 @@ nodes: ui:group: analysis allatoms: ui:group: analysis + contact_distance_cutoff: + ui:group: analysis tomlSchema: {} - id: lightdock category: sampling diff --git a/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml b/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml index 0fe685b..188cd57 100644 --- a/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml +++ b/packages/haddock3_catalog/public/catalog/haddock3.guru.yaml @@ -5590,6 +5590,16 @@ nodes: $comment: Atoms to be considered during the analysis. If false (default), only backbone atoms will be considered, otherwise all the heavy-atoms. type: boolean + contact_distance_cutoff: + default: 5.0 + title: Distance cutoff defining a contact. + description: Cutoff distance (in Angstrom) defining a contact. + $comment: Distance (in Angstrom) cutoff defining a contact. Any atoms within + this cutoff range will be used to define the interface. Standard values + are usually 3.9 A or 5.0 A. + type: number + maximum: 30.0 + minimum: 0.1 required: [] additionalProperties: false uiSchema: @@ -5603,6 +5613,8 @@ nodes: ui:group: analysis allatoms: ui:group: analysis + contact_distance_cutoff: + ui:group: analysis tomlSchema: {} - id: lightdock category: sampling From 6d488440a10c0abc275b9404fc2edf50344cbd20 Mon Sep 17 00:00:00 2001 From: sverhoeven Date: Thu, 16 May 2024 11:19:50 +0200 Subject: [PATCH 11/11] Update changelog --- CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2bdcca7..7b028d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,13 +8,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -* Improved handling of groups in ui schema +* Autosave ([#144](https://github.com/i-VRESSE/workflow-builder/pull/144)) +* Improved handling of groups in ui schema +* Nodes with all its properties in a single group is expanded by default ### Fixed * Hide the exit module ([#153](https://github.com/i-VRESSE/workflow-builder/issues/153)) - ## @i-vresse/wb-core 2.0.1 - 2024-03-25 ### Changed