From d894745b909434a3be5f8ac78779664f17ad3ca2 Mon Sep 17 00:00:00 2001 From: Kumar Aditya Raj Date: Thu, 8 Aug 2024 18:01:23 +0530 Subject: [PATCH 01/22] kie-tools#2428: [serverless-workflow-dev-ui-webapp] The reload button doesn't fetch data (#2478) --- .../jest.config.js | 13 ++- .../package.json | 1 + .../WorkflowDefinitionList.tsx | 29 ++++-- .../WorkflowDefinitionListToolbar.tsx | 8 +- .../tests/__mocks__/styleMock.js | 20 +++++ .../WorkflowDefinitionList.test.tsx | 90 +++++++++++++++++++ .../tests/jest.setup.ts | 20 +++++ pnpm-lock.yaml | 53 +++++------ 8 files changed, 194 insertions(+), 40 deletions(-) create mode 100644 packages/runtime-tools-swf-enveloped-components/tests/__mocks__/styleMock.js create mode 100644 packages/runtime-tools-swf-enveloped-components/tests/components/WorkflowDefinitionList.test.tsx create mode 100644 packages/runtime-tools-swf-enveloped-components/tests/jest.setup.ts diff --git a/packages/runtime-tools-swf-enveloped-components/jest.config.js b/packages/runtime-tools-swf-enveloped-components/jest.config.js index e2963bba168..b4ae71727d8 100644 --- a/packages/runtime-tools-swf-enveloped-components/jest.config.js +++ b/packages/runtime-tools-swf-enveloped-components/jest.config.js @@ -17,14 +17,25 @@ * under the License. */ -const { config, babelTransform, typescriptTransform } = require("@kie-tools/jest-base/jest.config"); +const { + styleMock, + config, + babelTransform, + typescriptTransform, + jestSetupPath, +} = require("@kie-tools/jest-base/jest.config"); /** @type {import('ts-jest').JestConfigWithTsJest} */ module.exports = { ...config, testEnvironment: "jsdom", + moduleNameMapper: { + ...styleMock, + }, transform: { ...babelTransform, ...typescriptTransform, }, + transformIgnorePatterns: [], + setupFilesAfterEnv: [jestSetupPath], }; diff --git a/packages/runtime-tools-swf-enveloped-components/package.json b/packages/runtime-tools-swf-enveloped-components/package.json index c8e25d10ae9..30574956755 100644 --- a/packages/runtime-tools-swf-enveloped-components/package.json +++ b/packages/runtime-tools-swf-enveloped-components/package.json @@ -70,6 +70,7 @@ "@kie-tools/root-env": "workspace:*", "@kie-tools/tsconfig": "workspace:*", "@testing-library/jest-dom": "^6.4.6", + "@testing-library/react": "^12.1.5", "@types/babel__standalone": "^7.1.7", "@types/jest": "^29.5.12", "@types/jest-when": "^3.5.5", diff --git a/packages/runtime-tools-swf-enveloped-components/src/workflowDefinitions/envelope/components/WorkflowDefinitionList/WorkflowDefinitionList.tsx b/packages/runtime-tools-swf-enveloped-components/src/workflowDefinitions/envelope/components/WorkflowDefinitionList/WorkflowDefinitionList.tsx index 3daf331a1bd..b8ebf7510bf 100644 --- a/packages/runtime-tools-swf-enveloped-components/src/workflowDefinitions/envelope/components/WorkflowDefinitionList/WorkflowDefinitionList.tsx +++ b/packages/runtime-tools-swf-enveloped-components/src/workflowDefinitions/envelope/components/WorkflowDefinitionList/WorkflowDefinitionList.tsx @@ -45,6 +45,18 @@ const WorkflowDefinitionList: React.FC const [filterWorkflowNames, setFilterWorkflowNames] = useState([]); const [error, setError] = useState(); + const doQuery = async (): Promise => { + try { + const response: WorkflowDefinition[] = await driver.getWorkflowDefinitionsQuery(); + setWorkflowDefinitionList(response); + setIsLoading(false); + } catch (err) { + setError(err.errorMessage); + } finally { + setIsLoading(false); + } + }; + useEffect(() => { if (!isEnvelopeConnectedToChannel) { setIsLoading(true); @@ -57,16 +69,9 @@ const WorkflowDefinitionList: React.FC }, [isEnvelopeConnectedToChannel]); const init = async (): Promise => { - try { - const response = await driver.getWorkflowDefinitionsQuery(); - const workflowDefinitionFilter = await driver.getWorkflowDefinitionFilter(); - setFilterWorkflowNames(workflowDefinitionFilter); - setWorkflowDefinitionList(response); - setIsLoading(false); - } catch (errorContent) { - setError(errorContent); - } + doQuery(); }; + const columns: DataTableColumn[] = [ getColumn("workflowName", `Workflow Name`), getColumn("endpoint", "Endpoint"), @@ -84,6 +89,11 @@ const WorkflowDefinitionList: React.FC await driver.setWorkflowDefinitionFilter(filterWorkflowNames); }; + const doRefresh = async (): Promise => { + setIsLoading(true); + doQuery(); + }; + const filterWorkflowDefinition = (): WorkflowDefinition[] => { if (filterWorkflowNames.length === 0) { return workflowDefinitionList; @@ -109,6 +119,7 @@ const WorkflowDefinitionList: React.FC filterWorkflowNames={filterWorkflowNames} setFilterWorkflowNames={setFilterWorkflowNames} applyFilter={applyFilter} + doRefresh={doRefresh} /> >; applyFilter: () => void; onOpenTriggerCloudEvent?: () => void; + doRefresh: () => void; } enum Category { @@ -52,6 +53,7 @@ const WorkflowDefinitionListToolbar: React.FC { const [workflowNameInput, setWorkflowNameInput] = useState(""); @@ -60,11 +62,6 @@ const WorkflowDefinitionListToolbar: React.FC { - setFilterWorkflowNames([...filterWorkflowNames]); - applyFilter(); - }; - const onEnterClicked = (event: React.KeyboardEvent): void => { /* istanbul ignore else */ if (event.key === "Enter") { @@ -112,6 +109,7 @@ const WorkflowDefinitionListToolbar: React.FC diff --git a/packages/runtime-tools-swf-enveloped-components/tests/__mocks__/styleMock.js b/packages/runtime-tools-swf-enveloped-components/tests/__mocks__/styleMock.js new file mode 100644 index 00000000000..4bd939113b0 --- /dev/null +++ b/packages/runtime-tools-swf-enveloped-components/tests/__mocks__/styleMock.js @@ -0,0 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +module.exports = {}; diff --git a/packages/runtime-tools-swf-enveloped-components/tests/components/WorkflowDefinitionList.test.tsx b/packages/runtime-tools-swf-enveloped-components/tests/components/WorkflowDefinitionList.test.tsx new file mode 100644 index 00000000000..6226790263e --- /dev/null +++ b/packages/runtime-tools-swf-enveloped-components/tests/components/WorkflowDefinitionList.test.tsx @@ -0,0 +1,90 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import * as React from "react"; +import { render, waitFor, screen, fireEvent, act } from "@testing-library/react"; +import "@testing-library/jest-dom"; +import WorkflowDefinitionList from "@kie-tools/runtime-tools-swf-enveloped-components/dist/workflowDefinitions/envelope/components/WorkflowDefinitionList/WorkflowDefinitionList"; + +const mockDriver = { + getWorkflowDefinitionsQuery: jest.fn(), + openWorkflowForm: jest.fn(), + openTriggerCloudEvent: jest.fn(), + setWorkflowDefinitionFilter: jest.fn(), + getWorkflowDefinitionFilter: jest.fn(), +}; + +const sampleWorkflowDefinitions = [ + { workflowName: "Test Workflow 1", endpoint: "/endpoint1", serviceUrl: "http://example.com/1" }, + { workflowName: "Test Workflow 2", endpoint: "/endpoint2", serviceUrl: "http://example.com/2" }, +]; + +describe("WorkflowDefinitionList component", () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + test("should fetch and set workflow definitions correctly", async () => { + mockDriver.getWorkflowDefinitionsQuery.mockResolvedValue(sampleWorkflowDefinitions); + const component = render( + + ); + + await waitFor(() => { + expect(mockDriver.getWorkflowDefinitionsQuery).toHaveBeenCalled(); + expect(component.queryByText("Test Workflow 1")).toBeInTheDocument(); + expect(component.queryByText("Test Workflow 2")).toBeInTheDocument(); + }); + }); + + test("should maintain filter after refresh", async () => { + mockDriver.getWorkflowDefinitionsQuery.mockResolvedValue(sampleWorkflowDefinitions); + + const component = render( + + ); + + await (async () => { + await mockDriver.setWorkflowDefinitionFilter(); + }); + + expect(component.queryByText("Test Workflow 1")).toBeInTheDocument(); + expect(component.queryByText("Test Workflow 2")).toBeInTheDocument(); + + fireEvent.change(component.getByTestId("workflow-filter-input"), { + target: { value: "Test Workflow 1" }, + }); + + fireEvent.click(component.getByTestId("apply-filter")); + expect(component.queryByText("Test Workflow 2")).not.toBeInTheDocument(); + + fireEvent.click(component.getByTestId("refresh")); + expect(component.queryByText("Test Workflow 2")).not.toBeInTheDocument(); + }); +}); diff --git a/packages/runtime-tools-swf-enveloped-components/tests/jest.setup.ts b/packages/runtime-tools-swf-enveloped-components/tests/jest.setup.ts new file mode 100644 index 00000000000..1c413b1660e --- /dev/null +++ b/packages/runtime-tools-swf-enveloped-components/tests/jest.setup.ts @@ -0,0 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import "@testing-library/jest-dom"; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f993eb74769..993df030159 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8217,6 +8217,9 @@ importers: '@testing-library/jest-dom': specifier: ^6.4.6 version: 6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3))) + '@testing-library/react': + specifier: ^12.1.5 + version: 12.1.5(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@types/babel__standalone': specifier: ^7.1.7 version: 7.1.7 @@ -29136,7 +29139,7 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.1801.3(chokidar@3.6.0) - '@angular-devkit/build-webpack': 0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)) + '@angular-devkit/build-webpack': 0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1) '@angular-devkit/core': 18.1.3(chokidar@3.6.0) '@angular/build': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(@types/node@22.0.2)(chokidar@3.6.0)(less@4.2.0)(postcss@8.4.38)(stylus@0.59.0)(terser@5.29.2)(typescript@5.5.3) '@angular/compiler-cli': 18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3) @@ -29150,15 +29153,15 @@ snapshots: '@babel/preset-env': 7.24.7(@babel/core@7.24.7) '@babel/runtime': 7.24.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)) + '@ngtools/webpack': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1) '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.3.2(@types/node@22.0.2)(less@4.2.0)(sass@1.77.6)(stylus@0.59.0)(terser@5.29.2)) ansi-colors: 4.1.3 autoprefixer: 10.4.19(postcss@8.4.38) - babel-loader: 9.1.3(@babel/core@7.24.7)(webpack@5.92.1(esbuild@0.21.5)) + babel-loader: 9.1.3(@babel/core@7.24.7)(webpack@5.92.1) browserslist: 4.23.0 - copy-webpack-plugin: 12.0.2(webpack@5.92.1(esbuild@0.21.5)) + copy-webpack-plugin: 12.0.2(webpack@5.92.1) critters: 0.0.24 - css-loader: 7.1.2(webpack@5.92.1(esbuild@0.21.5)) + css-loader: 7.1.2(webpack@5.92.1) esbuild-wasm: 0.21.5 fast-glob: 3.3.2 http-proxy-middleware: 3.0.0 @@ -29167,11 +29170,11 @@ snapshots: jsonc-parser: 3.3.1 karma-source-map-support: 1.4.0 less: 4.2.0 - less-loader: 12.2.0(less@4.2.0)(webpack@5.92.1(esbuild@0.21.5)) - license-webpack-plugin: 4.0.2(webpack@5.92.1(esbuild@0.21.5)) + less-loader: 12.2.0(less@4.2.0)(webpack@5.92.1) + license-webpack-plugin: 4.0.2(webpack@5.92.1) loader-utils: 3.3.1 magic-string: 0.30.10 - mini-css-extract-plugin: 2.9.0(webpack@5.92.1(esbuild@0.21.5)) + mini-css-extract-plugin: 2.9.0(webpack@5.92.1) mrmime: 2.0.0 open: 10.1.0 ora: 5.4.1 @@ -29179,13 +29182,13 @@ snapshots: picomatch: 4.0.2 piscina: 4.6.1 postcss: 8.4.38 - postcss-loader: 8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)) + postcss-loader: 8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1) resolve-url-loader: 5.0.0 rxjs: 7.8.1 sass: 1.77.6 - sass-loader: 14.2.1(sass@1.77.6)(webpack@5.92.1(esbuild@0.21.5)) + sass-loader: 14.2.1(sass@1.77.6)(webpack@5.92.1) semver: 7.6.2 - source-map-loader: 5.0.0(webpack@5.92.1(esbuild@0.21.5)) + source-map-loader: 5.0.0(webpack@5.92.1) source-map-support: 0.5.21 terser: 5.29.2 tree-kill: 1.2.2 @@ -29198,7 +29201,7 @@ snapshots: webpack-dev-middleware: 7.2.1(webpack@5.92.1) webpack-dev-server: 5.0.4(webpack@5.92.1) webpack-merge: 5.10.0 - webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)) + webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1) optionalDependencies: esbuild: 0.21.5 jest: 29.7.0(@types/node@22.0.2) @@ -29222,7 +29225,7 @@ snapshots: - utf-8-validate - webpack-cli - '@angular-devkit/build-webpack@0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5))': + '@angular-devkit/build-webpack@0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1)': dependencies: '@angular-devkit/architect': 0.1801.3(chokidar@3.6.0) rxjs: 7.8.1 @@ -36235,7 +36238,7 @@ snapshots: pump: 3.0.0 tar-fs: 2.1.1 - '@ngtools/webpack@18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5))': + '@ngtools/webpack@18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1)': dependencies: '@angular/compiler-cli': 18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3) typescript: 5.5.3 @@ -42281,7 +42284,7 @@ snapshots: schema-utils: 4.2.0 webpack: 5.88.2(webpack-cli@4.10.0) - babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.92.1(esbuild@0.21.5)): + babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.92.1): dependencies: '@babel/core': 7.24.7 find-cache-dir: 4.0.0 @@ -43629,7 +43632,7 @@ snapshots: serialize-javascript: 6.0.1 webpack: 5.88.2 - copy-webpack-plugin@12.0.2(webpack@5.92.1(esbuild@0.21.5)): + copy-webpack-plugin@12.0.2(webpack@5.92.1): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -44010,7 +44013,7 @@ snapshots: semver: 7.5.4 webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - css-loader@7.1.2(webpack@5.92.1(esbuild@0.21.5)): + css-loader@7.1.2(webpack@5.92.1): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 @@ -48733,7 +48736,7 @@ snapshots: dependencies: readable-stream: 2.3.7 - less-loader@12.2.0(less@4.2.0)(webpack@5.92.1(esbuild@0.21.5)): + less-loader@12.2.0(less@4.2.0)(webpack@5.92.1): dependencies: less: 4.2.0 optionalDependencies: @@ -48762,7 +48765,7 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - license-webpack-plugin@4.0.2(webpack@5.92.1(esbuild@0.21.5)): + license-webpack-plugin@4.0.2(webpack@5.92.1): dependencies: webpack-sources: 3.2.3 optionalDependencies: @@ -49221,7 +49224,7 @@ snapshots: tapable: 2.2.1 webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) - mini-css-extract-plugin@2.9.0(webpack@5.92.1(esbuild@0.21.5)): + mini-css-extract-plugin@2.9.0(webpack@5.92.1): dependencies: schema-utils: 4.2.0 tapable: 2.2.1 @@ -49624,7 +49627,7 @@ snapshots: dependencies: growly: 1.3.0 is-wsl: 2.2.0 - semver: 7.5.4 + semver: 7.6.2 shellwords: 0.1.1 uuid: 8.3.2 which: 2.0.2 @@ -50463,7 +50466,7 @@ snapshots: dependencies: postcss: 8.4.38 - postcss-loader@8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)): + postcss-loader@8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1): dependencies: cosmiconfig: 9.0.0(typescript@5.5.3) jiti: 1.21.6 @@ -51990,7 +51993,7 @@ snapshots: optionalDependencies: sass: 1.77.6 - sass-loader@14.2.1(sass@1.77.6)(webpack@5.92.1(esbuild@0.21.5)): + sass-loader@14.2.1(sass@1.77.6)(webpack@5.92.1): dependencies: neo-async: 2.6.2 optionalDependencies: @@ -52412,7 +52415,7 @@ snapshots: source-map-js: 0.6.2 webpack: 5.88.2 - source-map-loader@5.0.0(webpack@5.92.1(esbuild@0.21.5)): + source-map-loader@5.0.0(webpack@5.92.1): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.0 @@ -54768,7 +54771,7 @@ snapshots: webpack-sources@3.2.3: {} - webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)): + webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1): dependencies: typed-assert: 1.0.8 webpack: 5.92.1(esbuild@0.21.5) From 8ade5051d8b9524e8e072d3574908f20c2af74d6 Mon Sep 17 00:00:00 2001 From: Thiago Lugli Date: Thu, 8 Aug 2024 10:01:34 -0300 Subject: [PATCH 02/22] NO-ISSUE: Temporarily disable failing stunner-editors tests (#2523) --- .../ActivityDataIOEditorViewImplTest.java | 8 +++++--- .../importsEditor/ImportsFieldEditorWidgetTest.java | 8 +++++--- .../fields/metaDataEditor/MetaDataListItemWidgetTest.java | 8 +++++--- .../MetaDataListItemWidgetViewImplTest.java | 8 +++++--- .../client/forms/fields/model/AssignmentDataTest.java | 8 +++++--- 5 files changed, 25 insertions(+), 15 deletions(-) diff --git a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/assignmentsEditor/ActivityDataIOEditorViewImplTest.java b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/assignmentsEditor/ActivityDataIOEditorViewImplTest.java index fb64dfe85f6..c639dea1d73 100644 --- a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/assignmentsEditor/ActivityDataIOEditorViewImplTest.java +++ b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/assignmentsEditor/ActivityDataIOEditorViewImplTest.java @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ @@ -30,6 +30,7 @@ import com.google.gwtmockito.GwtMockito; import org.gwtbootstrap3.client.ui.Button; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.kie.workbench.common.stunner.bpmn.client.forms.fields.i18n.StunnerFormsClientFieldsConstants; @@ -52,6 +53,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +@Ignore("https://github.com/apache/incubator-kie-issues/issues/1431") @RunWith(MockitoJUnitRunner.class) public class ActivityDataIOEditorViewImplTest { diff --git a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/importsEditor/ImportsFieldEditorWidgetTest.java b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/importsEditor/ImportsFieldEditorWidgetTest.java index 6863bd8b79a..b17d11908af 100644 --- a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/importsEditor/ImportsFieldEditorWidgetTest.java +++ b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/importsEditor/ImportsFieldEditorWidgetTest.java @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ @@ -28,6 +28,7 @@ import org.gwtbootstrap3.client.ui.Button; import org.gwtbootstrap3.client.ui.TextBox; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.kie.workbench.common.stunner.bpmn.client.forms.fields.i18n.StunnerFormsClientFieldsConstants; @@ -50,6 +51,7 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; +@Ignore("https://github.com/apache/incubator-kie-issues/issues/1431") @RunWith(MockitoJUnitRunner.class) public class ImportsFieldEditorWidgetTest { diff --git a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetTest.java b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetTest.java index 09e399c35de..12fb06a9c6b 100644 --- a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetTest.java +++ b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetTest.java @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ @@ -29,6 +29,7 @@ import org.gwtbootstrap3.client.ui.constants.IconType; import org.jboss.errai.databinding.client.api.DataBinder; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.kie.workbench.common.stunner.bpmn.client.forms.fields.model.MetaDataRow; @@ -45,6 +46,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +@Ignore("https://github.com/apache/incubator-kie-issues/issues/1431") @RunWith(MockitoJUnitRunner.class) public class MetaDataListItemWidgetTest { diff --git a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetViewImplTest.java b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetViewImplTest.java index e15b97405b8..db9242302f4 100644 --- a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetViewImplTest.java +++ b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/metaDataEditor/MetaDataListItemWidgetViewImplTest.java @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ @@ -32,6 +32,7 @@ import org.gwtbootstrap3.client.ui.constants.IconType; import org.jboss.errai.databinding.client.api.DataBinder; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.kie.workbench.common.stunner.bpmn.client.forms.fields.model.MetaDataRow; @@ -57,6 +58,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +@Ignore("https://github.com/apache/incubator-kie-issues/issues/1431") @RunWith(MockitoJUnitRunner.class) public class MetaDataListItemWidgetViewImplTest { diff --git a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/model/AssignmentDataTest.java b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/model/AssignmentDataTest.java index 0fab6583a09..4637b88aa34 100644 --- a/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/model/AssignmentDataTest.java +++ b/packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-client/src/test/java/org/kie/workbench/common/stunner/bpmn/client/forms/fields/model/AssignmentDataTest.java @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ @@ -24,12 +24,14 @@ import org.junit.After; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.junit.MockitoJUnitRunner; import static org.junit.Assert.assertEquals; +@Ignore("https://github.com/apache/incubator-kie-issues/issues/1431") @RunWith(MockitoJUnitRunner.Silent.class) public class AssignmentDataTest extends AssignmentBaseTest { From ec84b2d24e74b2be01ea79363ccb305a37d147ad Mon Sep 17 00:00:00 2001 From: Jozef Marko Date: Thu, 8 Aug 2024 21:26:22 +0200 Subject: [PATCH 03/22] kie-issues#1161: Add end-to-end tests for Conditional Expression on the Boxed Expression Component (#2336) --- .../ConditionalExpression.tsx | 2 +- .../LiteralExpression/LiteralExpression.tsx | 2 +- .../boxedExpressions/BoxedExpressions.mdx | 1 + .../Conditional/Conditional.mdx | 25 +++ .../Conditional/Conditional.stories.tsx | 181 ++++++++++++++++++ .../tests-e2e/__fixtures__/stories.ts | 4 + .../boxed-conditional--reset-state.png | Bin 0 -> 2683 bytes ...conditional-copy-and-paste-recursively.png | Bin 0 -> 11436 bytes .../boxed-conditional-monthly-fee.png | Bin 0 -> 18102 bytes ...ditional-with-nested-other-expressions.png | Bin 0 -> 40222 bytes .../nested-boxed-conditional--reset-state.png | Bin 0 -> 14659 bytes .../conditional/nested-boxed-conditional.png | Bin 0 -> 18576 bytes .../boxed-conditionald-resized-using-else.png | Bin 0 -> 13138 bytes .../boxed-conditionald-resized-using-if.png | Bin 0 -> 13009 bytes .../boxed-conditionald-resized-using-root.png | Bin 0 -> 8362 bytes .../boxed-conditionald-resized-using-then.png | Bin 0 -> 13135 bytes .../boxed-conditional--reset-state.png | Bin 0 -> 2433 bytes ...conditional-copy-and-paste-recursively.png | Bin 0 -> 10310 bytes .../boxed-conditional-monthly-fee.png | Bin 0 -> 16343 bytes ...ditional-with-nested-other-expressions.png | Bin 0 -> 36134 bytes .../nested-boxed-conditional--reset-state.png | Bin 0 -> 13246 bytes .../conditional/nested-boxed-conditional.png | Bin 0 -> 16676 bytes .../boxed-conditionald-resized-using-else.png | Bin 0 -> 11775 bytes .../boxed-conditionald-resized-using-if.png | Bin 0 -> 11668 bytes .../boxed-conditionald-resized-using-root.png | Bin 0 -> 7508 bytes .../boxed-conditionald-resized-using-then.png | Bin 0 -> 11786 bytes .../boxed-conditional--reset-state.png | Bin 0 -> 2240 bytes .../boxed-conditional-monthly-fee.png | Bin 0 -> 15395 bytes ...ditional-with-nested-other-expressions.png | Bin 0 -> 31977 bytes .../nested-boxed-conditional--reset-state.png | Bin 0 -> 11655 bytes .../conditional/nested-boxed-conditional.png | Bin 0 -> 14757 bytes .../boxed-conditionald-resized-using-else.png | Bin 0 -> 10050 bytes .../boxed-conditionald-resized-using-if.png | Bin 0 -> 10089 bytes .../boxed-conditionald-resized-using-root.png | Bin 0 -> 6747 bytes .../boxed-conditionald-resized-using-then.png | Bin 0 -> 10066 bytes .../expressions/literalExpressionElement.ts | 6 +- .../conditional/populate.spec.ts | 167 ++++++++++++++++ .../features/resizing/resizing.spec.ts | 68 +++++++ .../tests/__mocks__/monacoMock.js | 66 ------- .../tests/__mocks__/styleMocks.js | 20 -- .../keysUtils/NavigationKeysUtils.test.ts | 168 ---------------- 41 files changed, 453 insertions(+), 257 deletions(-) create mode 100644 packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.mdx create mode 100644 packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.stories.tsx create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-monthly-fee.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-else.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-if.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-root.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-then.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-monthly-fee.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-else.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-if.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-root.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-then.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-monthly-fee.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/nested-boxed-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-else.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-if.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-root.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-then.png create mode 100644 packages/boxed-expression-component/tests-e2e/boxedExpressions/conditional/populate.spec.ts delete mode 100644 packages/boxed-expression-component/tests/__mocks__/monacoMock.js delete mode 100644 packages/boxed-expression-component/tests/__mocks__/styleMocks.js delete mode 100644 packages/boxed-expression-component/tests/keysUtils/NavigationKeysUtils.test.ts diff --git a/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx b/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx index b0c678ad55e..948e4d836d1 100644 --- a/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx @@ -228,7 +228,7 @@ export function ConditionalExpression({ return ( -
+
resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={id} diff --git a/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx b/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx index e807a58b21d..06114f95e7e 100644 --- a/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx @@ -212,7 +212,7 @@ export function LiteralExpression({ return (
-
{`=`}
+
{`=`}
resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} forwardRef={beeTableRef} diff --git a/packages/boxed-expression-component/stories/boxedExpressions/BoxedExpressions.mdx b/packages/boxed-expression-component/stories/boxedExpressions/BoxedExpressions.mdx index 113520fc2b9..cdcc417b620 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/BoxedExpressions.mdx +++ b/packages/boxed-expression-component/stories/boxedExpressions/BoxedExpressions.mdx @@ -38,6 +38,7 @@ Currently, the following boxed expressions are supported: - [List](/docs/boxed-expressions-list--overview) - [Literal](/docs/boxed-expressions-literal--overview) - [Relation](/docs/boxed-expressions-relation--overview) +- [Conditional](/docs/boxed-expressions-conditional--overview) - [Filter](/docs/boxed-expressions-filter--overview) - [Every](/docs/boxed-expressions-every--overview) - [For](/docs/boxed-expressions-for--overview) diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.mdx b/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.mdx new file mode 100644 index 00000000000..4d3a7e41440 --- /dev/null +++ b/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.mdx @@ -0,0 +1,25 @@ +{/* Licensed to the Apache Software Foundation (ASF) under one */} +{/* or more contributor license agreements. See the NOTICE file */} +{/* distributed with this work for additional information */} +{/* regarding copyright ownership. The ASF licenses this file */} +{/* to you under the Apache License, Version 2.0 (the */} +{/* "License"); you may not use this file except in compliance */} +{/* with the License. You may obtain a copy of the License at */} +{/* */} +{/* http://www.apache.org/licenses/LICENSE-2.0 */} +{/* */} +{/* Unless required by applicable law or agreed to in writing, */} +{/* software distributed under the License is distributed on an */} +{/* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY */} +{/* KIND, either express or implied. See the License for the */} +{/* specific language governing permissions and limitations */} +{/* under the License. */} + +import { Meta, Story, Canvas, Subtitle } from "@storybook/blocks"; +import * as Conditional from "./Conditional.stories"; + + + +# Boxed Conditional Expression + +The Boxed Conditional expression was implemented as an alternative way of defining FEEL expressions `if [condition satisfied] then [something] else [something else]` diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.stories.tsx new file mode 100644 index 00000000000..c7d4b94294e --- /dev/null +++ b/packages/boxed-expression-component/stories/boxedExpressions/Conditional/Conditional.stories.tsx @@ -0,0 +1,181 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Meta, StoryObj } from "@storybook/react"; +import { BoxedExpressionEditor, BoxedExpressionEditorProps } from "../../../src/BoxedExpressionEditor"; +import { BoxedExpressionEditorStory, BoxedExpressionEditorStoryArgs } from "../../boxedExpressionStoriesWrapper"; +import { generateUuid } from "../../../src/api"; +import { Base as EmptyExpression } from "../../misc/Empty/EmptyExpression.stories"; + +// More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export +const meta: Meta = { + title: "Boxed Expressions/Conditional", + component: BoxedExpressionEditor, + includeStories: /^[A-Z]/, +}; + +export default meta; +type Story = StoryObj; + +// More on writing stories with args: https://storybook.js.org/docs/react/writing-stories/args +export const Base: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "conditional", + "@_id": generateUuid(), + "@_label": "Expression Name", + if: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + then: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + else: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + }, + }, +}; + +export const MonthlyFee: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "conditional", + "@_id": "_D98FB35A-C6A5-4BA7-AD38-176D56A31983", + "@_label": "MonthlyFee", + "@_typeRef": "number", + if: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + text: { __$$text: 'ProductType = "STANDARD LOAN"' }, + }, + }, + then: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + text: { __$$text: "20" }, + }, + }, + else: { + "@_id": generateUuid(), + expression: { + __$$element: "conditional", + "@_id": generateUuid(), + if: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": "_D98FB35A-C6A5-4BA7-AD38-176D56A31983", + text: { __$$text: 'ProductType = "SPECIAL OFFERING"' }, + }, + }, + then: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + text: { __$$text: "25" }, + }, + }, + else: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + text: { __$$text: "null" }, + }, + }, + }, + }, + }, + widthsById: { + "_D98FB35A-C6A5-4BA7-AD38-176D56A31983": [300], + }, + }, +}; + +export const Nested: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "context", + "@_id": generateUuid(), + "@_label": "Expression Name", + contextEntry: [ + { + "@_id": generateUuid(), + variable: { + "@_id": generateUuid(), + "@_name": "ContextEntry-1", + }, + expression: { + __$$element: "conditional", + "@_id": generateUuid(), + "@_label": "Expression Name", + if: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + then: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + else: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + }, + }, + ], + }, + }, +}; diff --git a/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts b/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts index b8219799152..ffc94be0906 100644 --- a/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts +++ b/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts @@ -66,6 +66,10 @@ export class Stories { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-filter--${type}`)}` ?? ""); } + public async openBoxedConditional(type: BoxedExpressionTypes = "base") { + await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-conditional--${type}`)}` ?? ""); + } + public async openBoxedEvery(type: BoxedExpressionTypes = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-every--${type}`)}` ?? ""); } diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional--reset-state.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional--reset-state.png new file mode 100644 index 0000000000000000000000000000000000000000..f44c5cba2c9ba8100fbf4d6a0b6b4a360599bb3c GIT binary patch literal 2683 zcmcImXIB&076o*W5~?_q&=FaTNHKIGNHO#<6EO6SAT5LrDu{?8Abmhes4;*90|7&e z8bj|&mp*|9F%tp?q)K_2FK?~)1LniIXMfr2uDkX=`<}Glq2_!%56g+YxYLF7US@Pka+?cB+(u+2 z6&p}Tu7X;Ot^(37`V{=&gssflXkJU1FE(Q{XNX z1L=P)y-4K_pmMjEXIkb7}Cqg}w*e^x>`o{2$?e%zpta zJ?lnL_edvc%jM}GzgjT9XL{=M&B zQv-vs`SU-%I~ybSD61GT0B4Byb&NTwrnWX!t2aA45s>jrH=ibYux=I1>k>N9&UfXu zpTm?>EaeGE_38A)gxP&3u{*q?zqHww6@KdEvs;Zh;A|_qZeZGb)YAU&VOk~#|JQi0 zjjcrrS?KzhCNp4~LEG9eqlK3MfnQQmatv?fD-Jut-0xb_#v9q=*7iuuq2R~uzVD*G zG9EcTK+$J$)w4j0(E%?q+M0`-n?hPCt7IH&B@*_E$%f8fiNQ*}b|EHj|JXe``=H|X z{?C$nt4?BPQAy6gQ2$Id9INN)0kO7M7}wBntH-XdublCdRz3?TeZ-u>q}c3hpuWtV zD`pUg5Z6WBz3zi4xM$DWmg30$*WYuGMn;A{28e$uJwGwP&f*mGwD@Af)QnJvg&Td4 z&A4b^#1TTCV+$ODAS%ZK&VT!-$m(-{8J_`3TQu}Z$p>>wL@I%)I}5*D%TWvaktlTtU*nt*hpSoxNjZ z?r^kLNPG;CLJ@Kc45VO9FIn1J*S^7@;qFN{UdmpuZ5T{h*`{WE-WT%M+}X@ft6~ZG z&CxSr6UohbIfh8&ZJf1^^u0jW2B$%5eYbJh?MNJ|cNl&m(on zfxvIyka(X_7kPR4VnN_=J%L^%VkFL1I&HF+)1iQ{*k&8V-dvy{;X<}HgLVDdwK@`$WR8J@k@bK??eIi3w^K7;Wv4C1={X|E5u*> zhT0|ZNly$Cjpc6GW@>6pwfsa23=R$lFq^Nu)7DwrJ&HSLv~7L0!%q7U-l5^xv|_ zq9h1foPg^_D3MW`KE@+gUp*x3-%GSax_`UZIW_`rwg0?L*cKoM?*lYI9B_4rfxmwYO@L*8`w`xF%5P zo?*AZ2L}gL(?QHQaQ6^H8<^S$1u5x#Sj_`!P;=BFvf(BwQ#{Y&|TfC-3NU7FduI(o0=9#v;LD}>T4A{T7FDdM6 zkx@Mz&6BLJfZ4tzd48;p>F0zCNyQkLTk$i$uF=y##YMRVwnsF3buq3oXn*ez4_I1Y zX~`XRxS=Z!@)wqt*6^tuwH%zf>)GSo#Xq7gqa)QQwk7}NC<()F_M z=L0@4SKpF@Iti&7L@3#rR0`KCJ3LK%NudDVF$sM>IA4tsft!?K9VW0x&zq&{CdNg(^Pfi!o%3zsaERtH+pjc zR{2&;%E59XZzjYP7Qxd?*I8x8=|*|UJljoAW{iwgbdO1etu-y+UFJ1x)0OlTwGKC5 z6_%5`$T62{0=mtgpx!^~Byz&#ejfjPQ2{QtbuEX4spoiU=j(xjD;qv%EDKs~j5v#k zjG1C!ON5c2!2a!nOXgJ#D7Q|1gRnLsBNnAqSp3Q}mUXGSd_a5%oStxm`)>TYzM%mi zyDghoCwaER3*fw9UDzl|$Gxb?i4`>J2{Ag_aRJ9&brKM-_?)`r4{WoqW17??n=G2& zydq*^EUY3YB1;xFVgFZv;7J+{#nPgvU|o8=v-8P3Ej F`M)tl8e{+f literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png new file mode 100644 index 0000000000000000000000000000000000000000..6bd847a9a484b12ac620f8406afb2ddff838c2ad GIT binary patch literal 11436 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 P43d{ok}iDl_S63XOt043 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-monthly-fee.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/boxed-conditional-monthly-fee.png new file mode 100644 index 0000000000000000000000000000000000000000..386d6ec164d089b0e26b606428fbee87cfefbb20 GIT binary patch literal 18102 zcmch2kl>b3I3c(vKyY^m?he770KtNXKm~U#EVz^4Rut~; zP{>=H)2I7%-*Zpj?)Sd;2VaVvU3;%R_gZs~ImTE7zn2wz{NVWm2n6z2LR?rL0>N+v zKZW=1f+MNeeL3JC3_E$TcaXw<(lrR=FNlP&prUi~Cep=S`sAu(Z;WB$BaB5(;i|Defn!>@sX<7ZzTm8w}DCZk^4CLn*U=)Kuc);Ls}IWW>&Grem#6)@0_b zZPP!E;SGIdn@kOmD6t;l2_7iH-?;R<~AY@4lbvOwQ zVgc4sN?+li&VV(KZ99PEE39V5iQ0FZ5JY8MGL|Ejj39AEDk6#%X1u(`*CJIVQ(Mw$ zd#qJX4dERD*zHOhy>-l29aW)mgNQLruljR^Z?7%IW7;2Ms8qNzf+5(dQB&CRAvV*m z$C4CGP=$}(PPU9uP&9@Ldcn2UzIGR@#%=x>mx!n{oG~eWb676}#aCZE5rUy|GBjX* z?(mR0Ciwhl{rA>!zxh;yZ=ZVA+|rtanHqQBH;xPs1jo(6tRCg}S(5i05oBK1wGlW@ zOOmmi316DLR(dmaea|C4oSvPhHSW?&zZKMdAtBLqxQ2{beLkXEXU_$0{XtPtIFCgA zH+b5t)EGaZz^(y-wesGfA>W^7QSolBBEsF%hL|2&TKtI}k$5=dvIj=6-R@7<28a4B zKNWbELD+wgX1RW~TdhGLZd>!xhrSWG=o}|ZZ8zsQSYFI|jmWqUo*^tupZDZ&VR2>U zpj}IweuBYSSwBD(mtaG0W0ULj)uD zNJu;`)> z8AMJ_?!m){v({3T3wv)WV*#;=^E7QjCb`bmyIw2-@1(Hj!1=$qpgrBC-R_@az11^INxXvn2Ix22Y7uS~67% z967zPw6x?!FPfy1^4-ciDit_?ic@38L?0C$J>ci2r-#d0VWu_c2*D;+ScAa$>mT$qIpYDxRofbNMoydG~APzoha0n;llnd&W90V7WdbA zgkF8iM;j){47@7)wX1lv49~ZB(-9W0O-7@eW+fw*(i#p3lwh!JuR|O7k(Wlv*T~}HEJAbnM%e-M9 z7E3IqpmKfrAXh2U@xl2+Q%5_Vbq>>ZLUw^uDKuiM5V3c7c1tsidEDoDXT;P(RSx0^X54}h6|PvK*mEt5(ExzM`Kg{F4Yv9oF2u5YHPc@ zdkml{%4TCCIb9c7TD0AXL))6;%ZzPLXFWyhSY}FOD^}G`Ptmt$=jQIeRg+|+Z#;w2 z1_$o#A7{91sGCe|D?yI8C%Yn1j7!c&cLihVh8i|Bg~xK-J`R+0PP`UlUMf_xe?&5x zpRQ)l*iqUWX5Wy)Lvo$2Q+u>Au%}P#elP(a-*W8WR?3S-TsaD?<r1g0lp`s; zGNl%mKs8)HM@;nuDPPJK$yFI@`a5C0!VKge&ZwB%@NC&Z`Dl!L_a0GDzV0>EexW<} z+GH}h_s~9ql=rQt788GiCt-ep(&gP#th*(42Sv%9{q06&e|{K#f;((qOkFy=p&{?7 zD5As471`JaySjPXGj4lvj!N;`f6+J1!6zgv+geE*KR%EH5ex|pm5`FKbp78Bkl=9@S9bPicEvy6{Dc-xSn5RktX4LskqyA1|N~`6$zvPRL zyAK)op7QZZZHE&#GDi%5HP}DcXU@4Ra1D`BO0WA z5j4Zp9$R6H3)?wi86U~i3-D^=Pb@GA79mmSv!KhB$@80 z7U#25d0NV^h;!^kVOfsrB)*tu+Kf$F=8ZoVaB1nY$H!H8-s(wyvwXrdR*yF^@q?OX zzi*{12X%V4b{aW0LKVz;Mi0XpLyJX~nQNf=lE#W&mYY#pa68#Ka8Ve(6J)lHi*P#r zzK~L{p&1~aI7oT}2LE>{@1Jnve>_#nzkD^Y!u~n$R~a5Bts{?T6Xy2hY+ogyebwJR zuQ=Tk9I^R(u^TO!$|i-oeSEa&l8@A@_RhVG_Ag%gR+oIp%xh>oeJRGN`d-{u?M>0o zG_|NGVdaAE`HD|H`5aND={@*T{wNDw%HJ8&nxRu8X*94xF`vpXA7uFEz6 zVZ^5hMF|WAY0-U6tFr3omUrFTT_AxlbWiC9SPA9(;!VH-v%Fb{$PJ%O_Uxk zQf1p|fL;B?_?*M~@cw&d?r%QdDUPB1ttnemJZ9r$Ufz=*M!4J$UqSQ(9%V?RaF3Vh zH~Xa(VMBY9uxD2f%7wbR6bt0DNc+EbW(^I8E516TdANJLZ_67Q8VOfZA>!9cg=|hh z<-&vR)$#I)%gS|_bHuoA66L`x^^nVq!-ZO8WfP0#n(}7PRcU13!`s)Qt}!6%B4e|W zenR*J6Q>^67!gLK3rTN2iAzYWL>zAg-Mi2Au|+Us%dx$lFIE-h?u!_a)NtpG(#-(# zna7Opn@t$%`0^KHUsCLWDqam};1pl|`iw!!<4FoZAp2*0v2qkLYZqKJngu%)WyUyQ zw^>%R;)6m3g4*;llq$?t%vTcTxsG_5_*3bA{kns7r&xbS3sO5h{q2{RSK^64njC5h zVSQpz^@k;!AacfyxyS1~>S};5uuX3+wLb-PS({Sg>00*X3R`K+njwJ*5+|hVrFcMww^dpTCKrp+*WkR^3yH2K=SzMe@pG(>j{iYDHh{PbvRDjsXQ zc4%ZN=(8c&K%EJ~>+N3N;+-0M>c!~de7cqV6>d5|0?w8CI_$HP&U zX@aXpIkRx%ov?|aa{ONuwpy}PxSNxz%0(CS0GmF3tEi}$c$E0%3rM|ciAOXPWASBJ zX|=}Ym~cXEoEi-{RvLV*Mdd%mt$!Qk+D5Fhs;lc=tNP1r%&Ct0(?|R>GfQeQK^ofl zhsvsNbs(8g631VT%yI*^1!BU50uRpfdd*6ns!=WaY#Egq4G1r;%m3Ck{8o#Dqpa}H zACyA4zMd1MhP`P5sJ)9&<_4Yl)?o9g%Dyast2LzP z?0;98jf6yy@!b0I^=oUPCW46D{#7^$%+bO0SqL0XLrzZa?COg9{JG@y)un{AbR8X< zj*hO`fDH!<_3E0EPGs{p9m-BAs}l-*0+3U_5$_SDFL$3qKX>%#I@ggd zJ6~;WFGcWIQd)K_EU~nEoM6K*uWU`&$(aLLJ%->BhH?zgTTWxI@63ifDC{|NJ=#&u zmA?$9essAn5nZa#pVN5ag*6X*5z_0v(&&%!d*x1}*kbh#KbEHbw~LXLCtvA^DGJ>3 zUZP4;Y8h7X+HPDAw-vbhUQb5fiUoZoA-mC8p72E;21e27Z0Z0xCD+Q&A#VT5cg@$T zY3kW18`Txe*#amk>zqUeLUcT$V4vtRU^t@n;p1vL_LC>nls^`;$`*T0$bq)*|uk@!R^SVT1+`d~~OBuK|Rh8y+_U+9lP$9nm{CN)wg(?-OEjg1v zefoaeA+7?#?B!D@8S%1--TQ43d&l8LsWMBVbSqzda4Vscjnx8T4d(RJ#owjQed=IQ zMx4^>9R+g3emU#O0B7pS&#{p|9m!h{ixU`or}n5E5lB~cSl@CzURXQ6?e*<~}>pjH20 zVo4JQ)Zk82P;Ie1Gsack19DHP2@ikcverhgBDk?;}y1JWFRYk)K#Zz0uxgSGa4wktXy|!ysR>z8-RWu@ zVG)rJnWB&R0ak!dYPqgat&bK++1tOacRiwDWZWtpSkr#CO8mC?+U8T}# z1QQKj;Bby&sN8u&&tA*~!^M`m*wh7?HqI(>lW*U)zUAgM(|BNf5+U|$M11S!qMhg! zj;C(j@Eoya-bBQ;`t>hNbTuiv*Cn%DCE2gXbK&<73Ys^NT5}z~BtcTwEhYWa77tfd zi%1;kM&=I$MzkhfXz!myH!5_6+ReI*Ax0Hf(*+o*sROPq(fTDSL_CfRec#^LIY>NH z)6ya*2*rfKV375(qJhncvWaq2JcQ#G1r1H07`e+G@5dw@EM~*62$(cFw~+{!qY>pb zBm$O`lLN_DDe<|!SP?LvsY?V%SYAFEHQ#u3zQLec>c^;F`6VGi9ITbKi830%kyx*{ z)oLOfrN6xnUR*SYj)@5l4yHXK0?fus(XiRe6OcJ5a z)GuCq9^glZWe5dECnrB@8qQHrEjPg-;V_?V`h0u1P;<&=IxCUWhT`+*&np)^e6h~7 zlA?ivaB?)B_2}wup{r)%?j=cG%{G~*TzHFFrLDe!-86$`{P0QcU{>6t<{ir~jb~i?CK|l?!(FYth8pt2wFjc|e;imQsVDS^ zCGlrTs0iKS8xT0JFPqsim#y0$7_ogIYdx!S3+4y2Wyn+Kx(lx4NE!c#sZ`dejMEbH z^7+xcmCTOr%yAD7GlrINBPSYfbwK^^1D9lWf@(ZpgGv2bp4?QXgxscD?Hx&06~xuge#gXOAvbu{+ z{^;#gr3Hw&5wh07dOfB4cZSgY2XyzR;Ax)UL_!IoQc^V68#=;C#EguVxvrIpv^=_w zA~$wlzqF)F96YVwd0jiw(D#R9d6dSbY9+~Be7uzr>ImOnR9f*nYU>4IjCf=9Vw(A@ zXSi$0Zj}{n@iWfJEk_;?k|P7Tb$+pXT48B{*b|sskc%jsf%X>lRn!k`i#(KYwbiQw zC-y!)r# z%?XfqpfWzL_%vp8ez+FF0Z2}eXm$?{c#IK0eo%sfFkhZ88A}%t<>u;I`|=gnQBBu` zyn+H*TBfzxSIrvRB{r_?SpdWlJNzB?e?V>{;&?l@wU9H^c@cE!J07^BJ6xRS z#Pwpl=qpgu%^D479<-N9hZwV|0Zvg4Y)MOQDcXKuZa-=?eX8Jgw%Xoc-nNzWWPn#jkb+b6bXloP0YWn~U+yo7m1yafpwPPiJqh zeK{2sSEGMqP>}V5{^sU)j@#40eMa;#3(vW1Da(xd=1)*w##@sWycfGIvRi9wYqA6E zY;2^=qM$C+oh>J|c69Juk?}ZgMrTKK>#Z-pV>^gE=pTT7P}H~s_c6Ba!3ug3rf1x} zlVy2*RG5|gs&graYT*VtxGGrQ;@si!$za6VKiZMvjEi?kO_f}Hwp_xmi&v0WaYtwS z*q_pf29K?T;|1O)cDn;(bGgZ`?ecorsk2)2ZY0x!v*!f8L0WH(&Ncl>fz6=@6@$^k zH@>+C8&T{-Z`}ruqtp|mhIU0s`y~yKztU8z57foBz~Q~N{vz5+LY^ZB+LbnO{KK&t zevk9rrFd;_{=YOqcB7@GjaZ91-kLf zxKD_A;gRO}OGc>9W>4Lz-DW_n|Pg(dP^jskoT;baBk(D6eeMy1>&N}s7wy~=Xh>-uuqy5%t_B7r29 z)fk}cb&L(AI?vy)b=;D?JU_ZwkD-Ljj(2uU<@nDi!N>Nov3P*)N)5WAdva|SJEJa+ zr>s^UuLV3NDK#6Rd;Z#_$>Rjsaf4tK0GJ5>t^k)UH~Hhk?XbSvO<$CJ5YhB(nsJ-K z(}bKy!IS2^&&cn(jQ?8YlHj`jL}*`lU)&zbeR!MF<RrC3bJ3` z*&b`h5(0WNX2BB%%R>!27%VWy7cFXheiQc8qZAj-tH|9#yKE~ad#$i;d=ipRSmM$W znV(kZz0}p>;uzIMm6Qm;bYe!I>=^eabJZOVN)<9~koG7SQd5+(efaRfaMbwSyLbK< zN!86Dn54R1m6#6+SOAi91iEMGq%ht0p+x)1EDzH$ky?k1WoHer@E;KG+d3E;8?!rZ zs-$`xPaITguLd$x*al=<{%AfwU5L#2m`4C`M*dR;CW4Q;)%029d4i3Z=wq!$h zO8&2j%4Za-#=Qx@&W|=UH3NczUer*oK79CaqRyp^-qAulC($vWAyLE^Ysi%MRf_RU z&x@j2X>`P;$RTNx1QKh|lxLslKsn9cu!cguUjz3r@Cljx@A!-r{?2wY*1Zj}Sd{}u zmPROp-nx$lB*dI$RaFTj7B zy*JDqXkG#y)7K~=`i%5{`CzuTwasmB_meqI3xX*I0aXj611eH}_k{U*J&*$4o@^s+ z?Cf4LF-2ra#Sdl(VR2Yai#s}U%+1Xmt_@*1Ii2kD^TwMD{SLQ;xy){1%#c&p&aCz? z^NB#r$3KckJq|e9y_N1_LGOgz{B=FL%zlgkB~)gjSjw0dJACtL^oQL_zn{N9D_9D2 z%7u@bz?w4|%_j!Hn4vETX1q7w28042PlDd-#j96A@Ko234yaf1=B9ZZgQ~nO#E5+Y zu+v#ttoEz#MI*^&)YP7XbjY|PWS6MRR~M8kzYk|9{Z$%{S)RXgx2fSJhnbjK@@Ub= zk>*q(!18D?)3pYcKv-E>K|l4-$;s&(hlM1NHfdy&X8}n30f!G|Nf81`bocl;8xRVc z<0ZF~3Mlizh% zm#*V#CiIqzU-{7J>VG{HDo&ikq5vZV%B!@eC%>wyYJ{P`zyIR$a&38Gh{3cN*C{&T zwDE(d>X|xi8+c zRDuDUODD2^yV(#<0+OdxlqInsD%&HxIGL61^x3PP%l~+5 zve*gbc?@`e?+SrJxD@=M*B1nhB{OK6r^idVAb_*7*#N+E{uP;#K6p)*1OOF{26eUG7{&d3NJQLyoPhg?EY-Y%SXub(G8j= zA`m=~jh zMWa~_*WF}2Dy_x>p5-YWG!}|?@`s0$A#d`>5}q&d+@fR zGdH0x>zXzsbZcdYoi+I9PjLo<8}HKdkxWk89|i(ZQ6DjO4-bD77k_DPrZ5-bxOMB| zMm))Vrs>*8xYjtCb9H&)-qkYzv<<-CBphFfxxYS8u(dmQMOPYI8>#CHrQogwiUV-D zJR&~S$(afkU%QDOEiEy~)jqzy;?k1M0|SImXqtQ#sI^OxmsrVh&j<)&8Q2qx(~c-~ zs;0mVAqjoi0!IdcWdswUp;FA}-!GF=;-LJ|oy&|rw-%kDI4v8=-LV)@*ei?g!T(bxAFk2=EG@Pmd%?~Dg}Ko#Dp zw0L-7dp^+JP0hjr0ZB2n+5@CoJ+y)sp%w3APqnUZ53d4+yizigS$5ja^_#x~;nMz$AjNxd_O;jlIo{7 zSqLBnLOP(-92M8M7C{%_no9`*8cb%%$KW?a$8hn10Td&KT_ z^*t5TQJ;c=N?hmN1OXx3^x4u%jd#3l8?_M&j`HTUy)%jZ@~|?g@7rhm8X|zfoq-@y z!}h>6XBW5yYz={7VNR8ipt;5V7W zFg`gjuD|Aa+Iati!7|S^qZax~X8W51>LaKA3TPy_3`cT50-H~n-HNPiDsPuJ#%&GF z=oZk_4>V&&T%{yK|P>ZSqXO{SF`dFgADHndwhDQGD1yA@Q(yJ@6mS*9gf7Vq%W(7JN2nl z%#@gww_JN`BXh5CHa(V=3HVOAuF)1aR{3sN-bzt@;Ka^vFHpBQD+Sd5C&fT>iQU2G zfoqfi=s|Rw{qE;$BH{qxg0ML6>S(!by`h#%l?LQ{LqkJv0&7c2U%qOY$#gaA(fUZH zVNYDXT19ux0IPocQ(|I?7;2f*SzqkrNdN@#sHM|gkJbU>|2s#4#&K(M$z*4=fCKXVgP3~4!yw-QX{|k$W4dp2_4-R(k@Yj7##kk{!$xV*sa+iDZ_{Vmpg(7|3bRAgj zVP<@OR#^SN%=k~#7hdqkx|~(6r~(y>=7Fsga_0m+7L}0FyvTDU_$;ma^`nB04iESr zy3#YMF@CQOFH6V z@Hk}~52WG~#!KTds8@!8u-ynNfIgRym8GVp&K}mkc_<=QAHb5KO7cMoQ7toKbw9O+ z07VZ#d@644Zy+V`qc_jRiRrTN@1b+TfsEZ1Su?Z$_3p`-`k>BIcr3FxgvxfJW)W%%Utlfll7=6S+rZc znbNe~va4iH2aMx1s+{@L!k8T;{aSPtf0iHoO*^4HZm3wmjl>eO8?k^X zB268mP+%+o1kYt)yMP!N80@a+6>+D8dV53U<>mX`n7Y3Oj|_ zdv8K-FgohOTW3xAICuC)0D-vnZb!Bmyl5IqE3B|u(AMnWseF^vYY-{Nx#KD1P8XAS zGA7WQitxaAb1So&YrQ?1o8(Bxa`RoP8PE4&i=w-j^_{ffbuPuJTh{0xRxk^5@csi) z%;|nwoXJSrb;jr}EbKRAFRQEj!tHo71EdBOhPXy|UU)buS2WN>SoK=(jTUP503|DB za%gBMCDqu#fKw}s;^j+XK*IwSan^9h325oE%unH1(By-a=Q8m~ubAS1O&OFN$d|EoQvGc^Vkazs6|S4O9Fea| zLwLLZWyDW9|FJjFUWEmj5JSiEMYdZ#g)5S#>+Q3kX>Y$cJ0KfqJe_|?Et}j~X)&dt z79Rx|flzycY;0^G`1tsoqxJZVYUSx#^{zMME&_Zx+36uMF|qsQ(HO*hx;pCg)OoVX z3i~Z+{+xH}Pe{?~C3={V{O7AwTU89%mQ1ZveWA1h^&LQ%r)Ycy^`^3+7w?tLFf=Hm z-)^)xN-`lG^`;?+Tv`o&eGKL4Our6qA49^2Enws`%?)9<0mXY8aKh1m8YX7mf_sXS z@uM1cLq4JDUw?;H15I4FY+`m;+!hG7AYV1JLK&0`9X3X9=HpDgn}Ui8fLbh}1dO)5 zOHLc3;pm;lv>S@n%gam4^UM%%3qZ|<@b0zZ85kMKH+p)2BSFEzHvf&O1+^~Wmij+?!;!Po94s zIlau$hN!U2;-#J*i-5K7-x$b@4ci$&S-Cxt^*<|sBA3Ru?FC%$a1+7o(ENlFm9{Qd zK)qDQo-2UD_axzj7%C-J;X_viMjM#$=)$kG92}!hz9dA8j`hc1nN}y4{JqsyKDBe6 zZNj)o<2O3Ba=dNC&vjh_IYE2z&U4jW3!@zhI{JUmGy`W^e5Wdo^ImxnwL zSpf;?K=Hpw#+qlm*^2H^uM6N;ANdZd{f#J7$RwsAEXb^<^FP?vkv00S@FQR_0`;r* z2M4XdKjF>>E!tZ@0O36h8z^%}nei6fR0e2~6G`NVdDhSBduhrPtVzioB9}?Wy32e! z#p{t3(|c?6E9H%-4HWORJH#qKsT-v%%?-a?;2)|k>f)Pzv%%khYJ3vf<C$hbNiTbvokQmoT^RqJCcM!0r>koN ze*OB8Q==0$EiKky0k-)ZV#Snr9zMCW06tQOLturuO1EvQ6I%ov5Hua>v9XQZ_pb{pi z0JB9(ae5{^Lyztj6)pttKFriL;Y+oEg&U zBLlH}jtjZr7NesBHLRt?Etc;0ys!moTkUoBgbspo?3X)u2@&|kM82YjcgG6UVI2#A z&{yh&O4Uq8EZ#UWp9j9NX81(@#}5dJKbEq2L=j6FKdXb7z0`$AyOO0Ej$J+%coR+v z{F>SjNOw!=m$kr(Ap7AWtN=Fznw!0=XNeR>DC?`$rP_Gqguo(1@T=2;wR58|0Gepm|gKh`)kRgK(F2q?#gzI z7#okO>&e+tnX!4Un1j_MFk06Z*y#SK$!-g}vX>;q6wh1OG893Z25P#UM!RyDkRbC| z{nNB=Ang58GH=mis`;X#OVQHVERc)M_hKW7jBiPvY=mA^ zEOZBxeV@{@kGN`6Pcs1jZF4gjwh3J)lr`+js#!0x1*I=txcRq@nO4->;B3S$RPm&q z^UHIOOu4>fT)X)s``|@5NP_Tcpz#lFk)b(?c;1Y`Q#E_T_Fc=ZTf*mJPdA?lf3U%U zkcj19^g!FSa$&V{>1X9n9+|Ov$9-hp8S4>JfAZt%x*{8d_D-_vXS3&j5-@qBn7%Bp z%!Q@}GLtKXj~BttS(FOhK3=x0DIxF{l%y%CXkz(H(KlgyWO4MqW(*gPw68PiF8lfv zA*nXJPBFI5cWvq?jnr|zH3P}8I|PgE3EL9Hh4DKgA?o*i4$zdMTpY!iW8ud&De zH2_(cH5CbrbhUQ!<#B01uCi@-9bG~9o4Klhi`5Md@9l=Ca-{fs5g}_>G>P8r?|My$y|0p5fRzi zjh^@f1p7cp2YM|o=r)&fh4654-fOTq=$B25H+b-X`cCiZ=?MrvZpTe=S=lF8*yQ$V zFaZH5gqfKca19^xl$QJnwQkS>DYt#l;h}x4{hCiw63NWWjQ#5Gn~JJaHlbl-0&J@h zQlf`IR{@R8DmdXSs4RI z&Ld*BJ3z1omvNc%C+x29!~xWdRJNtNySufM6Acwro2koM^< z{TE8DkoKG7Q9eGmjQW#-rQ;<7Ll_phGXxtO8=jLyz^G;oj4(IeyZ!xr;I7F8U~srV zozNRZt^~ZjZ0SUw5wn~A6?h}6*NZib0CszA^4lAXt-2N;Cr3wv;1KLB;@PQ-0Y3-H z9H0kkkA&_x&j2k7yfoVxPhjOCX3=T-SWrPh$G||z!4U^;3%)EQ-dE0koN4Yk`5~z7 zRuyXXmq5Vj{F2t-%<7!|gODcMQMXylqPv5|0d0nFLN(|#>-V2Ktp0w%VKtMV&irz~ z<4brvB3N4>S9nH(=Qa(wF%TQIh~C?#p!4w@J(CHf6@Pk4GmVjBUcNB_xV<-#JrD$y zTIO48u`bn^S=EF&gG#Y?bv5TS5?Qkl!DI3}9pmf%!+CHdj!9DzXqw~IHZQ@{@(TP1C)6DN{xWR*PKxT!rQAmayuY$&++~kMTtrf+_NJ)!5b{k-{rDfMzTm6y(7g zJLBf&<{P75EWL7o0#pO`X*A3@%>(R^NGb#G3223&K62SDKgGvyRgmLrTZj~p1%f45 zou3t|=6m}4sliMDraLy*LzBV5!SPy$ywJ$DHH$qePj9nII6GRz(>r@1w*H*MH7aw+p!=wzm}uQ=3DEy_K50H7D#2N z5QqwSs{p%;i;utP?0zn0Dk371b>(w<_`eeaQ8)zVM(qbz5l7!fD%sM@XnJ4-)+dbQ zh4dJ*!`o9(qt*txG`piee=T~(<(eC<;W=$(W2&A zU#ssj(oLWw`{ak#SAW{fOCt1#CtbvCK;=6_`|?kZY6!X3aJ*VA`tZN%d<~w0?z&eq z)X|Ok?tdJ%8`^{p_H6suZgzWO;3^FMZ9n-&4K<^7&9|W6-Q0o7vxi(^|0q(2u&9mx zwd?r)|JPeI|4k+RH?{5`)G*lic_ZoBR)Aqnj!*?vfAwhyqg5=F28NQvV?rFY8fi3M z4FMp#i%VrEPpO$w_}0!A@y9hZBRW5>Y*=PkQpvfF=J+)Rwv}iAy1dqLdvzVRPy&v+ z59ST9S`>L8f-Puk3`a5Z?2;jnyDB$-7a&bsBwj&B-)``}d7C4-+4FUkLQtqDW8+rV zafQ1zKFkD%R;t&#k0(X#)NRs@QO>hrav&D=x{Y0H%L$@NqZ1QdepMpijF_{+x+O!l zfLsTg`u{ZqLDfb*VCLiVt(x&X@!49?a=#0;+OaK=SXBF-9{+&(FBWgGDHx%Hh=&{3 zjJ~uj_(!=ez_tD5SfoG7ONqfizF`{GiwErkoie6+3_>(Tcu&chZsuY#}i z6sC$f@{ZHgrd3jW6pO_}b*5^}#dX=jV=J`$9;DtO9%n7dQjDAzB&rs|;dy2sIA`<& zX&p41wW`#jvLTpLTM#ZoB0cq^Qo`{|tRdr2Uv}ft1lpndz^&nO2~E1c78Cg8VntOd zKDYYkE)^X{Z(xfIgoRWP8xrtx6{E@e4j+UlA{`6Tf^!Jb;q)PgJQDkT+k5Vw>;H68 zeTH61!sOJ{vqyKgEHSy4#O9-vRH#y+ zMvhn{IW7K!u8pJaHG8wO{iWQ3f{%Yaea}l?W$JMJioR#;>N3`KB?b0TODi1Ca1JT=>Bm2`V_)IQmCM zMo=Fa#`PmH7%?3UjaW|{-fam7cDyYB4b}p`{VhyX_?85`$yf*ZEUbULTaluxSrYb|UGX5)JxdWk&ya zZ}RSQ)0b@&)FTJXy?f`6lvGu7NMM#G1_r{x!td(q>$&Zg!?Lrp<=3~TYcl)$W&Pj1 z0B5+T?4#WIwmG135j5^btl{8b#6`$t!BOJ$9QJ#N(;^FH_x86nVC)g`1Om` zE;AmWdmi4s<(QY7E4eXR5JL$trkH1=He5C( z+E7&u;aK3fGh?yPO)wVnjO#hkDd*B;TPQRuOkKSyufhSnc{*^U?Ot+XwR8Rb?+ysD| zB#=R>jv8USq5Bep2%4gC;#l?N4>`Ykwa&@;?$#|v8^702L;ANjF=CdO)N`w}2S%|rcxlJT zfHWZ^Iat*4((%a1FS_{_LLK7m(zm^OpAN!;msX1bY2k|QG8o*ZhCtR1c+@s?v{lyL TPJ%x~1CbDs6)t?I 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png new file mode 100644 index 0000000000000000000000000000000000000000..45dbeb7584087f5dee3751c638468f9f9ae0fac0 GIT binary patch literal 14659 zcmcJ$WmH^IurAny;2I#fB_t3aSRl9sLU1R+-Q8V-JHa7%2=49>BoN%)y^+RUXLIk5 zH|yS+d28N!?+0+`K7D%clCP@1svROHBZ`4aj0%B3FvP_^D?lJ{a^QLv84>(;qBQXY zf8gvDM1>%wL!>(p2qi@P^Cu;jRM?`ij?&kqp5w!~vn6+$030EqsI$mSWV)~AP3#UO zO^s8YQ;wEJzJ{=TN-@zL|0Q#=x4#L*lH$YO6m<9oj*2p4CJK{GHyX^ObmA;h7hu?a141q zwosCo=Z#2KZneJpYkzDGWNR#CP98zHFHwYZ@~{^|!6Y4l^(EcYm1s==;|WYz16*F3 zRgv`!^F-_hlqu}io#UNp1nHirXlP+!jPCm`-1N#Nxw*CYX!dAh}#VU;<*AmWzf=;Az|T;Ayxt zGQXzxLP8>iO1|kc6Ur4R)i*S1Im|A)U$D5WFkD?=+=@h5|${h zmYdVikj#?(Wu!*(x%K_F=grxH_$Vz#PL3h(%@I5)H>s?a7yqgEO)}9qb(PC3szj)y zsglg=fd`j|XWo7;QQO8hFtFQc z{5=E1k+pdlwoodp5}u8Q1B*kM0K5jrsjA{%6oy6@zx%5{eGHG)nQrNzBlLt&oWO9%hcC%Ep*tTZ8)l_hsZQ`J{p8N-I>f;Dq?KZ#S0&X3t;=s9hl zA-TKn!(fb!&3Qpcv$I?dm{_bb^t7}h1q#0e+h^;jKSD9y#i2st`dGOh=Tj03zwVxr z2aoMIfDLDJKu32R5+{V&Sy|V2XvjC$Wgmmoa<+PV$iI}Z?{KDIugR`dx@F?hgy$7B zB!`AdKz^pA%o5hcHyt+nLGup?G`$2Z1e^|*B%Nd!AzvpaJ#OzkLM0`RFE8IxQT20b z=1uFG>z_95nT^&!unAXy@=+n@=NQFzh94m*bryNX4tVm>(H2XMWRL(MaY@O3gn1Jq zqwZ7hv_WlS0qRv+|N6{+iQt$q1$0DspjQYUewt9(G%g<0TfCo#i|Zs2>CkvI#&BX{ zO3%{pFEqMyhm<_9U1vo_joY68-ZvouKUcc-)OYXXE}~0vD2dLrqO=(uDt@ zmuN>WEwxr;-MU@Eq5XGgC_#I=c>5?i`)--!vHlzErBE#~40LJDi^ec1lh z%DOD_(J9qO7-#HZ^SW7$BJ!(J^Td~#R;7&1_hr*%TIT-PYlyF>JJ4SFhrAIC!0z~r zlPQF(`x-^=l|OUzF=fn`?A4Y>uZ4;dfIoYwK|wtYc`U9jE-S06qtP%N@LGD>VDc?W z9Zv*paRx80IPxpT-_+X!*(-+V{}t`TeNg`&zvcOVAm4ujM{%Ffy{UwcMJin0TB01n z!OL&4_}j$)-Z!RZ-(FOw;PY6#spu4SR!Lz@to==BDSrI5WIY9IIZHvkTl?XHj=k2& z<8+nhxdW z=nJK2L-?~a8X~H76?A+Whi@LNUK767fjh&+$zn3VDfGH=L`8de!MjDm#^w23rNYnM zT_XEwHs4Mv#>R;Kv{W(f=Eqb>#Bx)ZUsJ83x@JIp1jgt+(ung2b8X3OyzjnLVG$h) zW>_XA2Z_BsTJF6eyOEL6{vxsHSe7RnJKM@8!JpuH>eY?i8ziryHMdv#nH&vFOV_Q;zY1XR@*IjPVRsUQ9vf{H7ONpknKTG~SPBh{m{^7OZ2hd&&r zBiT4wx0u$+^&g`kueHt&vz}b=R8(8E$d_2lAz$*J^YTA@hw+DLl^IX^x+*Du zWxhDr0YW)_mos@jC@qb*VNjD|WvJhOG*8WP z8e$B^A5TdmnNmRMtT2_a+uDPBeXyEgZy zV?X}Sqrni8?`MM6cCki${t}ZnJUc5J=st;M6m{W*okJ1kC{VmFQjc)3gplCS?!oae z#!1iT@YIoPB}g6)++-rxu8?|nS9_OX z8TJwl3Bf$M#>-t}ji|6DB%gwzF$Z8M072t^-VO)e99pZ(i1kuQpT1_Z@)f{72c=ysFY)5)6>mHWN!8TE4 zy+>VGL~m+p1((@ej0aKYac`dI_cob6DBqwV-reoxPY-R^p*%=59KpXq4S3d~6{SFX zAD*X?W#6`?Fh~obqpxP;;Lx|SvP#V}AB7tk8zUx04d~#MH8gTsqC7%F zHM)X16ECL}3_=L)_F%wkshC*PvTrYccx+H&30!_a4e&MfPL}>+_xhSE*+TsmEl&oY z`C_P`?N$}t@-clf)t>sD?4c6vA03Ugwb$+!n@wDYy1KfvjhfYJYu^|;ncn$VI7?^e zQ)bj_CuW<^Q*T>qn|lHe9B{cSYcpN5CSkBbJc)IQ7AKg`Un^erh;u2rYrIr55p+hys#i+!^O$74xP|eZfSLFjAcDo z;!l15ujTjo^MJtdiHXl^?Vc0gl;x8WJEQq{-U?bPjKR0`TByX&lck!hqCPxk zY@;IS`CP9O5_-BJNJ5uA|!!l|1He@zXqWH z?|4O6vefFgip4+BzOjLpKynJz=RG}ehvnYi?pYIZ?(rAy?J^b(VKiMb+e~@>HZs&M z*H9ICTlIL)-bvw+boi}w?by5J??79dhpMBdSVe8>_o@T^_T3tS_jMMEq{4^Z*p`Ny z6yNIVZF?7!obRXbgeFhs_ zYwHJ*X&|AWOo@pPkSKW5HGJs1`OR{+W3+nR<9v(c`SlI6(;tRz64u8T3LjYEkg-q= zj&Cp=Ffpk=ygy5|>%6(x%%<3`(!C_lUF5#ND$-s^dLxJsAua83)QNSrN8Srn*Ml>$ z8m(Yr`F`HyRCNiJZ(djk@%RuP-aI9$?vIF=TI0dWMI-YeUwJQWI>YsnPbNMAhwR0t zg;viQ6}98O?5L3{NdnBbdCbP`vUngc{C2iJ2@OR)IdAV+2pJ}o5-m&+{Q)sZlMm)H9{x86s_4M_QVc!IA)pnOm1(}IHH zQDH!PFeDS+xQYLzr+W={fanw3LUzD7^m|)tj*7o)P}*q~p=muzK_l0&Z)S>oGH}to zUjIU|`F?VmbAF!nax+o&XlUNy)Y;Z_Drs z%^~5a-~bsTg$IPhoIdbkM|gol+qO~#UeHB{5+P4!bYfwkU`!#s=~62_l|Q1`7nf9; zM+O+&aPukVD=)9RlN}8!3U+_zw)@DRjc!_x`>ZEuXxGc;WhY$|1;z6fxYo`b`<9kT ze4fPg+a3dP75Xz7N&n)uwO4?diYU&*Z<50HM@(wSj-*5OBF+R6+;MTrD{5ai+CPU7 zU0-MVRLsXZ6|O4qp;qK5P6QMP|T3mTo_8U-ZKhRzpj$i z6o#gbMVeWf^&N?N@q1Gh>tbi8S|S?i8wQ%hiDHZ5_Y6tLb!{XWHmZusqPEEibB%7V zeV13CEijKo{;MGe zAx&$zB9(Nk(%uC+B<^r>*{Q>v`K(59Rdgs*E~*a#gKE#U#w+c^Pi0Kh z+~b+}&af9dJD7C@zdz$qCvl?SdSCVf95gMK;b#ukj0`kAS4(}BHIZFs z=wtS$D$QPe5;?vy4-YO)HIXd2+gn-I^J$N(iP~zyCl1I+&&MXlgbsRRKUbFs@Np0b z$jVw2t7U9^@$w`JT3Z99ADNNV4gBjDR#)xqENf}cio+{rQ18z*FtjbK4j=Zi^0eF8 zapb>Ta(_Qt9z8?Or*hYRJK%Z!wi}DwU!g!}JDRE*>VO^`*-E_}QQs<#rL?jS75pSW z$~8Vo_p)M?FF4}hlcOe?TUt6a82P6ox7T801VYjD%IaE&z9KbijpZF10|$Y!sHg@h zS!PKc^k6L(BO%B8L#7BaWS(hPQM!eTjTiR{q1=^B4h; z9uM;J=)obMN)$!~3VG0`OV5=9mB1h_fT~9EZ(QWvZhH?nswpZTlqgb z?|4kMV%e_$=pjaH)u@aU*_%4Db6lks9b3;z7iTiMR0PDAk6Q6i0Rx|6NXY3T2n{Tj6<# zo#>4~kkNhev?K+|Vzl&&wLquoZ4yYnX8#wX{C}bB{!;?9>1$FpPk#7*dLY;D@_B>^W!g_xO{U(ffK zWhh>ZM=iHOZ$f2EIdQz>T0PxXch^pWs*gSFPEW2~d+ktVQoELxBE26^Yl^-lVy~TO z+WL5%FJj^0a#wtct=x>vEN0OVOkBm1u!lZ_w zRv!(|D~!g7*erBACcnks~0`5VD$a)1Hl)!cI*y|&>UxcM$FoHjNInDu6`t;kqo7TqsT z$A7);J{LGXJFRc5KiV>9(q$%8se2U(-jdf|7L?P0C?2N!r=-v?dkJJ*WrsB1oP_;0 zHmE$>&XLM+k%dU~0K~-^#xPn4h#wdhgBawjt_w?^c}athbMtxr2g^C+n7DV^f^p zYR6-*(bfNgFwoK>P%&p}+Ea z5K8wpVh60B2v9;;;`_W6gIDs4O}3JctpLOB)(?lPbk~hA0p#WoWQY_f=~-KgYI^cP z=AHKS<|8#BXThNxt4IeQz3^FCKLT#kk1NBged!*F@QJn+xPC`VYx-XO8f`ppNg8ND zCNdIME9vG&t$2{`@8`!SEj{Ss?p|rMhzK~_f10t>Hb*wRTIu8j=(4Z6&JPRuaB1J3 z6TVo@Iy;;vY0(-U(sUQ&N-#o~W0J*s27iZwd_+b2Hh!*=8!%1fwY5+5u9a0}U1FZC zXD@95z&S6iW^_oJR+LbdVA-_3p&p~Qq*mk5Qw_EdLSmb3xc{9vTccmyia3O6WouK z6j6g|#*tdIGP!quAR}JQ$NSF4zQvY>tNXsNM4rKpg;au!NAp|9+IR-uNn*2e$8)7` z-$2=H|E*-!Asjk;hHK2UCT&|D>7*+h$a(-DK zrgysnIqc6mL*{A=0QztQ(xZ<2fq38Dc>rpd#H|I6m6dgOcembr?0KV8$jYDg&i#4s zA03K$CRSEi_S;92YGpO?FaN%MyRoqa7U0*ELa+I{gX`yyt^>Z?;Qgt9v9S*)s4~o! zCuyl;cvS|o5`pN%f^J6mPmb2c_lRy}xt=;TRl+xtjUw*i=C-o4YE@hWouI`e<+bow z-Y(X;y}wX}w|UP%=I-vEN=jByS=qeuq5aeMs~eYCz>sUPjKZFIbyxQeB(Yzo8it0- z$lI*F+1z}|_VJ_r%8D*285s&1M#FE|JOBE|QWt`U)m!7^)3Hs9#a7&Sh2G%RlHr65 z&QwY zc%1c(%_ZAfTTDz%SDOyE^-WFNE!Vqk)(l=z3|)tB7J2FRX~sgJ<4pwOy#)ie$21Py znoWLUy|g`IGF(Q*w+heL-nD zuq~tQ2e?Vn2h}$1KbY31iZYy>r8;}wUeV0NVq=09BP_8Ll*-Y{+Fq-v;{~O;FDUNx zJQ#)p1hO@XHiN8NH==3MJNo7tvs3IfB_%i|^zL+x7A|!}IdX*4ycl`^1ZDe{E`54q z+kL!F)$deoXc&BkkO^ixrUbfGR$F(81AZ9-q)TvE)0@E!@hV_;zaSAQa4 z1@-ma|E`)c6J8zkKiV#LdUI`4ZVtYtWJYGP&WNvf|t1tL0mXim;sL&F@4#p>^kjojVgO|Z4SceL%3gRs!~n2f}*B+^o02YRa?J3)(M@KjH6bY3^8~$}_DWL*|lm3$&bVA;^ ziQk_A18{VFYP>O{E>9QVMZqm*<%Az8BSR|7)9n|<{~geLmywnRq_XgT=6e#`J4JP@ z4?!H$Sw7Gtl@!md$Ralpoc z?pUnW=ud@oIiB~(a2C8HewPIwhfkn?2>myw{SBMPhS>`a?)RIwV+#}hfGF+bt1_{$ z*Z{WqhT&rXhdZwQfA?Hg(`o-tk!ByY~iLx>L+hR z^@PFLxI!}TI=O`_v-JU= zIx{!-f|y)pH3S!;GCwoYV9tTFhJ{<_#nAcy=MWY7y_UQ(u?|a~rNr0;gzJ^vtuLyk z;_59qR|wCs7ijT(io+e~=;?^q&CnCReM?GC9xZWq*4G4q0q}C~->bq z1mtWYY{$pP>FAnPqgYczW#;Ep*H{EJZ}`=|~bt>S2yRW&d+DtBp*0_)U0Du1!Dxsf@(bM>&t zG^9E-Fc3Z#qX)82nIT3}fdseqO4?+iE2QVO^B*s<(4S`(7RGc3A}%ZpQ)JF2Cj%Nh zCgJCTm75qeIgCTk?eYn`y5^^&Sk{L%vc3TmmCKWXC74^7e9keuuVMfqcWz^CSsHg7 zbbU;7>Q_;z4b+?dcVJ*>bOa;F022MAU_HZeFOG5xUi5~9z5hP;*e`!C-#l;I=M7j zUg_&M96ZtvnDdh7(k4z+_xi?uxI|8)$*f%oew)vq(;<3#+V-)&LQS1iBWA+<(n5pX z0r!ZO$^I4so!unky4n zBIOK~rqseqW?PYoCR#;5S;VNTu{FIt8X9n+`N`<`Xc;-1;EMg7rQIFN$%TdR`9pNu z|5S!(fn23$zfmNGWKLsY%LikMlEwc2cXj)uJPul=5F zVtRaLUE>WOxhANn>#Vy1)=4e0%vx{U|vlB{nrlP+y-4z`_1Z zWpeqDW_e8wkF^cbbHwO`7^#MDVKRACtN(Npn6$+7h2argUGJ`7%H2n$1qHeJ<=Dy` zb!bE5I}TtiBzvd_czwtE1>ib+dXLNP3Oj&Cb_BpE7!K&GF@(*1RZ|GBiNKgL)@<}( zjn;Ir?F`vjM9NX<&AN9lD9(RMT|rzH)WP<&Ch}1z=o(z~i`KU?>`CC9nw(f!fp!It z>JO)OD5(jR)gE_-#YY@W1_7YLAABSS_@(mM7!i{Q(KukLFDES7Zn)Tfj@x3xq_*4A zU};)AQ=tGE9o1+7hHGkJVQ}7Ocy=(qtRfqgq&4t(VBS}wCLtMWdwTTd9cLFO`#ddM zIGp8q?ZLOY!%4@e$gJAj^L%f6N!D~NEr8t^Xp)k5&z=QC$4VTv>~ZlEzI}Gskr-a` z1f^#i&y$O`Xj$)nb=o5rk#;;!=H_ilVsoXtz{Gq4qw$@&bHRQI$;Th|mSxJ*X9`1# zbExSLS7=&o-rSnc?!D?3Hl`ms2Sz*VVF|3xzoUl#Z5?Cr>mNQc-us`$gi0XtT{|my z-|hPZajo``UC-Ww*`W>b|qH%wYe9FN~x0 zJ|zCpE9ZVO<3Z4lc00oO{-<_Db+y62qiC{4Jllk2tv=U5r&W40v*e5Jrsm^6;r1O> z1vvo>qBs$Uu~nx#_zMq4oxQUSpAj>>DIYJp@{Gs%-avg5pd>2J0+OI@n03`(izU3!QxskX3LZkAC$Xki6W>r-ZUH z#KR#m3Txw4F19ym;rnER;6JT93vxtsz>B_ES^W|WHV$1t@wTm>>_DHR`?2^bVK=D)E;rG@SYo7phG(Qrj%)D9S3?;_)&_o%DvDQh1EJ?Dq3*3h-dn9!JiD$-|3CfKW+t>#$GvG6Dvu)4ST$HhG<>y zif&mi^qoZuyWFfZsh)TlaL; zlk%y4>_t*Cv3~N*!(}JE z$;RHoJJxq&|IXgcWRQV7ayx_a1LqG*(O5###R!|nDV|QHiHX&n{jT1a4+{2ZNz9q& zq?|yr14?FY4ybF7t&hna3JgG@1U|W2_;-A2-ix?Zc0{8^=PXnx$y{g17`gdU0NIRB z%HbeNQ&Vd@3vR9}z=)BL9E?SU_CiL#)|^Y7Ul@$HySx_mMLsd(Lt-2mClhd1PTe0$ zHNu%^@I83-{my!ldr7^%gD}%Dei8<{U{>frt@fxNfz~)$9}jZ!R2%Fmuv%CNz}k!= zh`v0QmMGJKrDH=kN3E{YLTEofzgk<<5!ExoZ0Q&dm!~$|{LpBPF3M^T-Pp6-?*)qo zEMrJi3fgRdh{w&oe)kBUx}Fi^uvGd;W9h!e0U1xK|A59XVZVqyiGjWxcQMMZj*fuQ zD89QC7*ZXk*S?>za(T^9m69)GTskTXUp4ON#z(=VDxxH|ca@h{g)2H%1<5b4UP*4y z9tX6vp(WYd_;`nt;Cf#7c$ zDNWT*Y0E42*A;QRm@IH4WAZ%avrjBB^02Uea@{ByLh}Xkh{3_)dFLeCdw1=>)`G~k zA2njh^Mk5zb1a7y9!sp+;qJCaZ%r($S{hdmvf%&meI0;qYjsMMbWiogZ0E`7X*_B{ z&k+^uhDfu@@(XgB8w0VenV#`39;9^Rp_#uU39qd+wA?852w0WnvL<6N{77nzYqv% zI8JZyjzl1>UDI0eoN7Jny^VV~6$4s5e)JkDtkeG6zO~DzAT$L3axH4~)%N#D=%n9R zs67!L5>K0s7^y}A}@2Po8l#Zn-Wl?2v-%YOh6yqx^_Q)xG2Rr8Vi=!#y zq+Z6m44;T(-{i%`;PCK$XfCpCr=*0$ht`DuQ}pzIpXBuVl z**8+JcZibr1zeJn$MYP-ZXfo+1nO*qJq?XaDj<}}d3bnUzkW@~Zb1k}iU>5dvPZ$x zXIM?m`O6y6kUKi=p*WpTl+99FO7)ES@dNwr?v5LLQyK}ipt+fOMNI`9C})W2=|Li3 zmY<*BHM~qvBY`03>B;wV4M#&$GkjBa9FIUzQ86s2iKMo+7Q)889Kyt4Acl)kC% zceRpkK&XSsRtrlD8wUsG(!7R-fWlq6Na{DbhNj}l-@*bKxWMONbF`)85nno+T~DFQ zZ30xHkzIX#p)oNy-^#S4EiD;hsihl#JG!{IXxOS(R#maEvNoA^;{F*Ot;kNX(QGV* zudXeP>=cc(I~sZ6>-Q{~Qz_Y=Uajr9s;DG^C4YJdiM?C59?p_`cjb7_4Y;;&zJa>sdnP8{(>NAp z)(=(4Xc(r`rFXv1YGE@X5`8S(j;KbPOyDQJ`2*R>mPS-{j1Mgb7-)rI^mn&R@a_KM4v#QfUO4lz>DM z&iAHc)6*l>N^;GoOT)={60WXXrixVo*<#%`cseZLEpu2`TpW%;!u}&MF$j=OX*|wG zUBNE^w^M5|E9B+Hf4S&P0r~s)ug5K{PAd5WLcGLZS%Lemf6-JSQBiq~jX(eV5u}z% z0@<~}a;v9-fx*iDzLcHahhhHP_ke1sujf=yPzawl*q^E3^zQzih{KBX;^Lwk#_V=x z5)%{ij)|!UXtp<&W_@GBVe&!1A#RUR5RChYNr-R$X{S>9`gN3wF6Q7Eq7p!JHXn$1?#@hrmBHWP~zTDp^QVlMD_2z0PntA38BxaI5ESrSqW{8!?8AjLdtj z<|F_GxOjM2i0V=IO7y*+{Zf@L)c`|=NDSg;_ z8+m_w$!au^WPaARKG$&YP)P7zO$bcj9%MKUbMXoIgojK0dfimBw@8bJ%5F91o0v$0 zM!*E`_r3Y<8K8&}{`8H-{NBLB2cH71A-!MO5HKw*s;>1tqb$mHv8{xaiZu*n-I_0t zOm&v)`SYtfG+9WEgvg;5%h@i`U@cjbO1%paU3@5L?cIM;7lZf*1U$(WpGhk`A_C*Z zix;22d|89RFf7|^+%K)jz3*)G^Dp*iV;%RVl(ZbYXbaHVYwSs&nMIHaUfhf6JR)a#a}(esIFp)6=_J4WfA3 zu5gZmuBj=Cpp6YPQ|r~5$oA&;6AvHa=Lg^0+Z&gV@WFmdYP}XZT}E-bH7E?Kh*1-{ zcX;6>9GGZmXb@6TQeba4@NM^dJ&puV)7-{ALwp0bws4@qfKH4psRB(V{{p%di&Rau z>bcF$Ph-G2YC;}2DpD43|sk(y*Y=`x^= z)4kc>SDhb6mzp|6_9!kOJM-+R+X}Ve?P2`@ZrmuVqM&-i3B{WEuvUkNLHxPR>;B)r zf0PUi5g@V!F15G=8zKC_$_nPu2hw;hQ#V0pb;N}2UAzPcDdG|mjXJaIJyE!%qzhKl zyquhbK7D->#Kgo$XJ@?DBvBLsGKPk4fyKjeML&Ng)b8o-KIx^&SOLhI=DcK@S~_YH zzUrbTEbM1%om*d@^c@~4U2$6A@p{;)KNa&Y6lwxmu~)z~cIIm6fp*#l2VuWXftwv1 z96$gHV&mY9S*e4?fGKna1_l#0Vh;}wplQ~jX|oy!*xZBlg^}$dLVimc*}65^V3K?% zmkktIGNI(R{k9FYbUntLn?J5K#j+I|r;p`iiz zSONwBvu5Z6%VQ>NAj_yh3m;c|r1*9MBthcdy&ap75D1tv)PP@$-}Bej^z;u;*-E}i zg2+J2#FST1P_XDmPe(_{W%mZKU)v=;U?%|7GJJiXVN&o95NLa}$I&VRWNTSzuIdTx z@9#%JFMO~v>5R%X{9TDRR#@z ztXBS#$DQV8UeziuDq?9C@CGM0XSI4=Mi~}JqMC2I)zL|~gR}gG@8*J>P<3ZRwP)&G z=~;7^BFdsTswf`OzI{uWwjjAzg)Oy^fac||U%%$0oo!6+55V~cz#r#jWo0eijg2V) zI0uaon9!=8;iMTjGPA@fTQq5RcV&BXdFb6vb&VRZmg>0Yz)eR-XJc#oz1C0H{qkTF zVC=?TSzB&-IkvU6bzxCaK~WLwK`1;P9^S~zjF_ApHjQk0*WBD3XZVqO#`>Af-<`&< zbT7TUyucY90J*>)UbC^C`94|b{mr>wE%pQKz(q}sSXZ}1*o-(LP^)DKUD>oo4XoC? zF32mp$qN3=0`wpA2pbw2PC$n*t!`kWiTcB8t$IO8QRirT`;{a)kQ)nMqoTTUkY9^u zlOI>~V&l=2fVN119Pu7!N=XSrS?k@J>mJERJ;LlS=;j>K9j9}0bn(U7ZA({3poja8 zo?gE{fuX*!acy%mKq5yEU=i@0kpe}UlamvbW)~L4T&Y)-l#qxo`ghq_n3%0Pvmo67 zaVI1)vRj9_T<X=1_LK&5}*6U3V51OmJZk`$ON7uRbOA9N`)Rm zESNT1TudY9b1OHWW~7!)5C4+g4uTHI6tO`}w6|y7n=Z>!ud|w&olWDY7ZwtlsWQfr zmzU?{=C->!(yg^#9s*I2mX2<1THD*OJDjM#zFtmKb1(##29yVHXlS;bw|5-4tJO*> zN{^0g!2L2H4%<37Y^=2V0f0aKM->H5@6a+ZSWYtnWC!ttonxoKljF0G79B9}^*`sc z-~`j~ZAMCM?B?Hy9Ph^mfFVu?3*rFf-CCY9aUmfg!Vd<>V8~onRu*Jle{RnA3Q9}6 zXJ?Z^Qn%=$Ha5E+L_j~^=Isq^=xVnJ2pZ2}Zz@7Q`^zVFlecf)Fnd3EfUuth=uEG> zr*yD0mCGLZ_LIB2o)~~^K(*TB1w0Za+thfSwKo6lJ}VGlcvAw77eV}Ll(@t*jqu(k_M z>#cETkM9f-N#afCrI?{B1*d$M$XT0I)`mfif+Z>W{^PjJ|D?$JucvGNcixT%q7b5w zkhH02ors3W5_u`v;`3Kl+}+z9{S-;qLK@_=0R-T{AuT$hUsg8BD{#8-*CP_|yQ(zg UPiXMqR3t=PMCNm;kdE*F1-=8fu>b%7 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/conditional/nested-boxed-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..9a7177e73fb7a4c01f52915ed531abfe666d720f GIT binary patch literal 18576 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 Y1FfdqW7(zPJ1Wq#rz$dErA&kV4X-Htz5oCK literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-root.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-root.png new file mode 100644 index 0000000000000000000000000000000000000000..7370f1957314b8e9f8fe4dc201ec920d618846d4 GIT binary patch literal 8362 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 E7dkG46aWAK literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-then.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-conditionald-resized-using-then.png new file mode 100644 index 0000000000000000000000000000000000000000..8f29758822e2a4ac135e7d760fb13877695aa0ef GIT binary patch literal 13135 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 F{eOSFsdE4T literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-copy-and-paste-recursively.png new file mode 100644 index 0000000000000000000000000000000000000000..13013a99c4caee0d2284623c5a148bde7c1d0b27 GIT binary patch literal 10310 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 ay?K)3;MwOK1YoB=hPbc{tl*vQr~d=pKr{vb literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png new file mode 100644 index 0000000000000000000000000000000000000000..7192f369de95cad23874aeeb88062664bb7b60de GIT binary patch literal 36134 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png new file mode 100644 index 0000000000000000000000000000000000000000..30ce064cdce763e4c8149c87dd753aabd794a9e9 GIT binary patch literal 13246 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 Z@cR4r&+1}6_(BdK^GQLXSllq+e*n>B<8lB1 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/conditional/nested-boxed-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..b51cdfc3f504ddab74851bad20348f4f9c2b9eae GIT binary patch literal 16676 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-else.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-else.png new file mode 100644 index 0000000000000000000000000000000000000000..80be3408ba722f1fe35d3e43ee6483e6cd629461 GIT binary patch literal 11775 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-then.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-conditionald-resized-using-then.png new file mode 100644 index 0000000000000000000000000000000000000000..0d0f642c594eecc65100b0fc7c7133c397fa92c5 GIT binary patch literal 11786 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 NWQ;OLRv=vB{s+-?EL{Kq literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-monthly-fee.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-monthly-fee.png new file mode 100644 index 0000000000000000000000000000000000000000..181a4cdda762a06536062d5faf30729794707ee8 GIT binary patch literal 15395 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 CR!H;! literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/boxed-conditional-with-nested-other-expressions.png new file mode 100644 index 0000000000000000000000000000000000000000..6598af722c9b7e55450800ae90f60375502d431f GIT binary patch literal 31977 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/conditional/nested-boxed-conditional--reset-state.png new file mode 100644 index 0000000000000000000000000000000000000000..7253c2a2c5eaed6b25e1e5ea2e5606ce5c0d835d GIT binary patch literal 11655 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 L0;E{-!>9iNhR8@{ literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-else.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-else.png new file mode 100644 index 0000000000000000000000000000000000000000..4ed1291557ff6502732c2fe1c08468017ea3037a GIT binary patch literal 10050 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 Vd6c>|5I-T1M-MfjC5lg8{2L-BPUZjr literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-if.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-if.png new file mode 100644 index 0000000000000000000000000000000000000000..5f126677cbfaecb0bdb61ceb6d5ca168baa2cdb6 GIT binary patch literal 10089 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 I$=4tL7q*xeV*mgE literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-root.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-conditionald-resized-using-root.png new file mode 100644 index 0000000000000000000000000000000000000000..e8cae2a2c8a8dde89e0f6a326d2271c191331fad GIT binary patch literal 6747 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

V&$k3CcB4WJ?}8>7j5<{&{V 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts index 2429c5c6e7e..58be5f3ae21 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts @@ -20,7 +20,7 @@ import { Locator, Page } from "@playwright/test"; import { Monaco } from "../../__fixtures__/monaco"; import { NameAndDataTypeCell } from "../nameAndDataTypeCell"; -import { ExpressionCell } from "../expressionContainer"; +import { ContextMenu, ExpressionCell } from "../expressionContainer"; export class LiteralExpressionElement { constructor( @@ -40,6 +40,10 @@ export class LiteralExpressionElement { return new ExpressionCell(this.locator.getByRole("cell").nth(0), this.monaco); } + get equalsSignContextMenu() { + return new ContextMenu(this.locator.getByTestId("kie-tools--equals-sign")); + } + get expressionHeaderCell() { return new NameAndDataTypeCell(this.locator.getByRole("columnheader")); } diff --git a/packages/boxed-expression-component/tests-e2e/boxedExpressions/conditional/populate.spec.ts b/packages/boxed-expression-component/tests-e2e/boxedExpressions/conditional/populate.spec.ts new file mode 100644 index 00000000000..0ff8889de66 --- /dev/null +++ b/packages/boxed-expression-component/tests-e2e/boxedExpressions/conditional/populate.spec.ts @@ -0,0 +1,167 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import _ from "lodash"; +import { test, expect } from "../../__fixtures__/base"; + +test.describe("Populate Boxed Conditional", () => { + test("should rename a Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + await bee.expression.asConditional().expressionHeaderCell.open(); + await bee.expression + .asConditional() + .expressionHeaderCell.setName({ name: "Conditional Expression Name", close: true }); + + expect(await bee.expression.asConditional().expressionHeaderCell.content.textContent()).toEqual( + "Conditional Expression Name()" + ); + }); + + test("should change a Conditional data type", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + await bee.expression.asConditional().expressionHeaderCell.open(); + await bee.expression.asConditional().expressionHeaderCell.setDataType({ dataType: "boolean", close: true }); + + expect(await bee.expression.asConditional().expressionHeaderCell.content.textContent()).toEqual( + "Expression Name(boolean)" + ); + }); + + test("should create the Monthly Fee Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + // HEADER + await bee.expression.asConditional().expressionHeaderCell.open(); + await bee.expression.asConditional().expressionHeaderCell.setName({ name: "MonthlyFee", close: false }); + await bee.expression.asConditional().expressionHeaderCell.setDataType({ dataType: "number", close: true }); + + // IF + await bee.expression.asConditional().if.expression.asLiteral().fill('ProdctType = "STANDARD LOAN"'); + + // THEN + await bee.expression.asConditional().then.expression.asLiteral().fill("20"); + + // ELSE + await bee.expression.asConditional().else.expression.asLiteral().equalsSignContextMenu.open(); + await bee.expression + .asConditional() + .else.expression.asLiteral() + .equalsSignContextMenu.option("Reset") + .nth(0) + .click(); + await bee.expression.asConditional().else.selectExpressionMenu.selectConditional(); + await bee.expression.asConditional().else.expression.asConditional().if.selectExpressionMenu.selectLiteral(); + await bee.expression + .asConditional() + .else.expression.asConditional() + .if.expression.asLiteral() + .fill('ProdctType = "SPECIAL OFFERING"'); + await bee.expression.asConditional().else.expression.asConditional().then.selectExpressionMenu.selectLiteral(); + await bee.expression.asConditional().else.expression.asConditional().then.expression.asLiteral().fill("25"); + await bee.expression.asConditional().else.expression.asConditional().else.selectExpressionMenu.selectLiteral(); + await bee.expression.asConditional().else.expression.asConditional().else.expression.asLiteral().fill("null"); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditional-monthly-fee.png"); + }); + + test("should create a nested Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + await bee.expression.header.reset(); + await bee.selectExpressionMenu.selectContext(); + await bee.expression.asContext().entry(0).selectExpressionMenu.selectConditional(); + + await bee.expression.asContext().entry(0).expression.asConditional().if.selectExpressionMenu.selectLiteral(); + await bee.expression.asContext().entry(0).expression.asConditional().if.expression.asLiteral().fill("1 > 0"); + + await bee.expression.asContext().entry(0).expression.asConditional().then.selectExpressionMenu.selectLiteral(); + await bee.expression.asContext().entry(0).expression.asConditional().then.expression.asLiteral().fill("always"); + + await bee.expression.asContext().entry(0).expression.asConditional().else.selectExpressionMenu.selectLiteral(); + await bee.expression.asContext().entry(0).expression.asConditional().else.expression.asLiteral().fill("never"); + + await expect(bee.getContainer()).toHaveScreenshot("nested-boxed-conditional.png"); + }); + + test("should combine other expressions with the Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + await bee.expression.asConditional().if.expression.asLiteral().equalsSignContextMenu.open(); + await bee.expression.asConditional().if.expression.asLiteral().equalsSignContextMenu.option("Reset").nth(0).click(); + await bee.expression.asConditional().if.selectExpressionMenu.selectContext(); + + await bee.expression.asConditional().then.expression.asLiteral().equalsSignContextMenu.open(); + await bee.expression + .asConditional() + .then.expression.asLiteral() + .equalsSignContextMenu.option("Reset") + .nth(0) + .click(); + await bee.expression.asConditional().then.selectExpressionMenu.selectDecisionTable(); + + await bee.expression.asConditional().else.expression.asLiteral().equalsSignContextMenu.open(); + await bee.expression + .asConditional() + .else.expression.asLiteral() + .equalsSignContextMenu.option("Reset") + .nth(0) + .click(); + await bee.expression.asConditional().else.selectExpressionMenu.selectSome(); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditional-with-nested-other-expressions.png"); + }); + + test("should reset a Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional(); + + await bee.expression.header.reset(); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditional--reset-state.png"); + }); + + test("should reset a nested Conditional", async ({ bee, stories }) => { + await stories.openBoxedConditional("nested"); + + await bee.expression.asContext().entry(0).expression.header.reset(); + + await expect(bee.getContainer()).toHaveScreenshot("nested-boxed-conditional--reset-state.png"); + }); + + test("should copy and paste Conditional", async ({ bee, browserName, context, stories }) => { + test.skip( + browserName === "webkit", + "Playwright Webkit doesn't support clipboard permissions: https://github.com/microsoft/playwright/issues/13037" + ); + + await context.grantPermissions(["clipboard-read", "clipboard-write"]); + + await stories.openBoxedConditional(); + + // Copy the root of the expression + await bee.expression.header.copy(); + + // Paste it recursively as 'if' expression + await bee.expression.asConditional().if.expression.asLiteral().equalsSignContextMenu.open(); + await bee.expression.asConditional().if.expression.asLiteral().equalsSignContextMenu.option("Paste").nth(0).click(); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditional-copy-and-paste-recursively.png"); + }); +}); diff --git a/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts b/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts index c46a5ef64ea..78fa3a32f94 100644 --- a/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts +++ b/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts @@ -1009,4 +1009,72 @@ test.describe("Resizing", () => { await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-nested-resized-using-match.png"); }); }); + + test.describe("Conditional expression", async () => { + test("should resize a Conditional", async ({ bee, resizing, stories }) => { + await stories.openBoxedConditional(); + + await resizing.resizeCell( + bee.expression.asConditional().expressionHeaderCell.content, + { x: 0, y: 0 }, + { x: 250, y: 0 } + ); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditionald-resized-using-root.png"); + }); + + test("should resize a Conditional - if", async ({ bee, monaco, page, resizing, stories }) => { + await stories.openBoxedConditional(); + + await monaco.fill({ + monacoParentLocator: page, + nth: 0, + content: "some pretty long text that will not fit the 'if' box", + }); + + await resizing.resizeCell( + bee.expression.asConditional().if.expression.asLiteral().content, + { x: 0, y: 0 }, + { x: 250, y: 0 } + ); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditionald-resized-using-if.png"); + }); + + test("should resize a Conditional - then", async ({ bee, monaco, page, resizing, stories }) => { + await stories.openBoxedConditional(); + + await monaco.fill({ + monacoParentLocator: page, + nth: 1, + content: "some pretty long text that will not fit the 'then' box", + }); + + await resizing.resizeCell( + bee.expression.asConditional().then.expression.asLiteral().content, + { x: 0, y: 0 }, + { x: 250, y: 0 } + ); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditionald-resized-using-then.png"); + }); + + test("should resize a Conditional - else", async ({ bee, monaco, page, resizing, stories }) => { + await stories.openBoxedConditional(); + + await monaco.fill({ + monacoParentLocator: page, + nth: 2, + content: "some pretty long text that will not fit the 'else' box", + }); + + await resizing.resizeCell( + bee.expression.asConditional().else.expression.asLiteral().content, + { x: 0, y: 0 }, + { x: 250, y: 0 } + ); + + await expect(bee.getContainer()).toHaveScreenshot("boxed-conditionald-resized-using-else.png"); + }); + }); }); diff --git a/packages/boxed-expression-component/tests/__mocks__/monacoMock.js b/packages/boxed-expression-component/tests/__mocks__/monacoMock.js deleted file mode 100644 index a1fa4fbe465..00000000000 --- a/packages/boxed-expression-component/tests/__mocks__/monacoMock.js +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -const languages = []; -let value = "new value"; -let onDidBlurEditorText; - -module.exports = { - languages: { - registeredLanguages: [], - register: (language) => { - languages.push(language); - }, - getLanguages: () => { - return languages; - }, - setMonarchTokensProvider: (_name, _tokens) => {}, - registerCompletionItemProvider: (_name, _provider) => {}, - CompletionItemKind: { - Keyword: "Keyword", - Function: "Function", - }, - CompletionItemInsertTextRule: { - InsertAsSnippet: "InsertAsSnippet", - }, - }, - editor: { - defineTheme: (_name, _theme) => {}, - colorize: () => ({ - then: (fn) => fn(), - }), - create: (element, _config) => { - element.innerHTML = ""; - return { - dispose: () => {}, - getValue: () => value, - setValue: (newValue) => { - if (newValue.includes("")) { - onDidBlurEditorText(newValue); - } - }, - setPosition: (_v) => {}, - focus: () => {}, - onDidChangeModelContent: () => {}, - onDidBlurEditorText: (fn) => (onDidBlurEditorText = fn), - onKeyDown: () => {}, - }; - }, - }, -}; diff --git a/packages/boxed-expression-component/tests/__mocks__/styleMocks.js b/packages/boxed-expression-component/tests/__mocks__/styleMocks.js deleted file mode 100644 index 4bd939113b0..00000000000 --- a/packages/boxed-expression-component/tests/__mocks__/styleMocks.js +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -module.exports = {}; diff --git a/packages/boxed-expression-component/tests/keysUtils/NavigationKeysUtils.test.ts b/packages/boxed-expression-component/tests/keysUtils/NavigationKeysUtils.test.ts deleted file mode 100644 index 5026ecb1f8c..00000000000 --- a/packages/boxed-expression-component/tests/keysUtils/NavigationKeysUtils.test.ts +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import { NavigationKeysUtils } from "@kie-tools/boxed-expression-component/dist/keysUtils/keyUtils"; - -const notAKey = "NotAKey"; -const testDescription = "With input key: '%s', should return '%s'"; - -describe("NavigationKeysUtils", () => { - describe("isEscape", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["escapex", false], - ["escape", true], - ["Escape", true], - ["ESCAPE", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isEsc(key!)).toBe(expected); - }); - }); - - describe("isAltGraph", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["altgraphx", false], - ["altgraph", true], - ["AltGraph", true], - ["ALTGRAPH", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isAltGraph(key!)).toBe(expected); - }); - }); - - describe("isArrowDown", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["arrowdownx", false], - ["arrowdown", true], - ["ArrowDown", true], - ["ARROWDOWN", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isArrowDown(key!)).toBe(expected); - }); - }); - - describe("isArrowLeft", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["arrowleftx", false], - ["arrowleft", true], - ["ArrowLeft", true], - ["ARROWLEFT", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isArrowLeft(key!)).toBe(expected); - }); - }); - - describe("isArrowRight", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["arrowrightx", false], - ["arrowright", true], - ["ArrowRight", true], - ["ARROWRIGHT", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isArrowRight(key!)).toBe(expected); - }); - }); - - describe("isArrowUp", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["arrowupx", false], - ["arrowup", true], - ["ArrowUp", true], - ["ARROWUP", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isArrowUp(key!)).toBe(expected); - }); - }); - - describe("isAnyArrow", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["enter", false], - ["arrowupx", false], - ["arrowup", true], - ["arrowleft", true], - ["ArrowUp", true], - ["ARROWRIGHT", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isAnyArrow(key!)).toBe(expected); - }); - }); - - describe("isEnter", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["enterx", false], - ["enter", true], - ["Enter", true], - ["ENTER", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isEnter(key!)).toBe(expected); - }); - }); - - describe("isTab", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["tabx", false], - ["tab", true], - ["Tab", true], - ["TAB", true], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isTab(key!)).toBe(expected); - }); - }); - - describe("isFX", () => { - test.each([ - [undefined, false], - ["", false], - [notAKey, false], - ["F1x", false], - ["f1", true], - ["F1", true], - ["F12", true], - ["F120", false], - ])(testDescription, (key, expected) => { - expect(NavigationKeysUtils.isFunctionKey(key!)).toBe(expected); - }); - }); -}); From 50cde81a3ba190f5a6eb8d28262891b786f0b116 Mon Sep 17 00:00:00 2001 From: Thiago Lugli Date: Fri, 9 Aug 2024 09:23:27 -0300 Subject: [PATCH 04/22] kie-issues#1418: Remove "prod" dependencies from Standalone Editors packages (#2512) --- .../dts-bundle.config.json | 12 ++++ packages/dmn-editor-standalone/package.json | 20 +++--- packages/dmn-editor-standalone/src/index.ts | 3 + .../stories/DevWebApp.stories.tsx | 2 +- .../tests-e2e/__fixtures__/editor.ts | 3 +- packages/dmn-editor-standalone/tsconfig.json | 5 +- .../dts-bundle.config.json | 24 +++++++ packages/kie-editors-standalone/package.json | 10 +-- .../kie-editors-standalone/src/bpmn/index.ts | 7 ++- .../kie-editors-standalone/src/dmn/index.ts | 10 +-- packages/kie-editors-standalone/tsconfig.json | 5 +- .../webpack.package-resources.config.js | 12 ++++ pnpm-lock.yaml | 62 ++++++++++++------- repo/graph.dot | 4 +- 14 files changed, 127 insertions(+), 52 deletions(-) create mode 100644 packages/dmn-editor-standalone/dts-bundle.config.json create mode 100644 packages/kie-editors-standalone/dts-bundle.config.json diff --git a/packages/dmn-editor-standalone/dts-bundle.config.json b/packages/dmn-editor-standalone/dts-bundle.config.json new file mode 100644 index 00000000000..5998ca18745 --- /dev/null +++ b/packages/dmn-editor-standalone/dts-bundle.config.json @@ -0,0 +1,12 @@ +{ + "compilationOptions": { + "preferredConfigPath": "./tsconfig.json" + }, + + "entries": [ + { + "filePath": "./src/index.ts", + "outFile": "./dist/index.d.ts" + } + ] +} diff --git a/packages/dmn-editor-standalone/package.json b/packages/dmn-editor-standalone/package.json index 0c54945afbe..795ecac7e71 100644 --- a/packages/dmn-editor-standalone/package.json +++ b/packages/dmn-editor-standalone/package.json @@ -16,8 +16,9 @@ "dist" ], "scripts": { - "build:dev": "rimraf dist && webpack --config webpack.envelope-config.js --env dev && webpack --env dev", - "build:prod": "pnpm lint && rimraf dist && webpack --config webpack.envelope-config.js --env prod && webpack --env prod && pnpm test-e2e", + "build:bundle-types": "dts-bundle-generator --config dts-bundle.config.json", + "build:dev": "rimraf dist && webpack --config webpack.envelope-config.js --env dev && webpack --env dev && pnpm build:bundle-types", + "build:prod": "pnpm lint && rimraf dist && webpack --config webpack.envelope-config.js --env prod && webpack --env prod && pnpm build:bundle-types && pnpm test-e2e", "lint": "run-script-if --bool \"$(build-env linters.run)\" --then \"kie-tools--eslint ./src\"", "start": "nodemon -e ts --watch src --exec 'pnpm build:dev && pnpm storybook-start'", "storybook-start": "run-script-os", @@ -27,25 +28,22 @@ "test-e2e:open": "pnpm exec playwright show-report dist-tests-e2e/reports", "test-e2e:run": "pnpm exec playwright test" }, - "dependencies": { - "@kie-tools-core/editor": "workspace:*", - "@kie-tools-core/envelope-bus": "workspace:*", - "@kie-tools-core/notifications": "workspace:*", - "@kie-tools-core/workspace": "workspace:*", - "@kie-tools/dmn-editor-envelope": "workspace:*", - "minimatch": "^3.0.5" - }, "devDependencies": { "@babel/core": "^7.16.0", "@babel/preset-env": "^7.16.0", "@babel/preset-react": "^7.16.0", "@babel/preset-typescript": "^7.22.5", "@kie-tools-core/backend": "workspace:*", + "@kie-tools-core/editor": "workspace:*", + "@kie-tools-core/envelope-bus": "workspace:*", "@kie-tools-core/i18n": "workspace:*", + "@kie-tools-core/notifications": "workspace:*", "@kie-tools-core/patternfly-base": "workspace:*", "@kie-tools-core/webpack-base": "workspace:*", + "@kie-tools-core/workspace": "workspace:*", "@kie-tools/boxed-expression-component": "workspace:*", "@kie-tools/dmn-editor": "workspace:*", + "@kie-tools/dmn-editor-envelope": "workspace:*", "@kie-tools/dmn-marshaller": "workspace:*", "@kie-tools/eslint": "workspace:*", "@kie-tools/playwright-base": "workspace:*", @@ -71,9 +69,11 @@ "buffer": "^6.0.3", "cross-env": "^7.0.3", "deep-object-diff": "^1.1.9", + "dts-bundle-generator": "^9.5.1", "html-webpack-plugin": "^5.3.2", "junit-report-merger": "^4.0.0", "lodash": "^4.17.21", + "minimatch": "^3.0.5", "nodemon": "^3.1.4", "prettier": "^3.3.2", "process": "^0.11.10", diff --git a/packages/dmn-editor-standalone/src/index.ts b/packages/dmn-editor-standalone/src/index.ts index fd4cdb0c9db..44486327b46 100644 --- a/packages/dmn-editor-standalone/src/index.ts +++ b/packages/dmn-editor-standalone/src/index.ts @@ -17,6 +17,9 @@ * under the License. */ +// eslint-disable-next-line @typescript-eslint/triple-slash-reference +/// // Required for bundling types + import dmnEnvelopeJs from "../dist/envelope.js"; import { StateControl } from "@kie-tools-core/editor/dist/channel"; import { DmnEditorStandaloneChannelApiImpl, DmnEditorStandaloneResource } from "./DmnEditorStandaloneChannelApiImpl"; diff --git a/packages/dmn-editor-standalone/stories/DevWebApp.stories.tsx b/packages/dmn-editor-standalone/stories/DevWebApp.stories.tsx index 499ff9c06ce..02de54d739f 100644 --- a/packages/dmn-editor-standalone/stories/DevWebApp.stories.tsx +++ b/packages/dmn-editor-standalone/stories/DevWebApp.stories.tsx @@ -23,7 +23,7 @@ import { useRef, useState, useEffect, useCallback } from "react"; import "@patternfly/react-core/dist/styles/base.css"; import { Page, PageSection } from "@patternfly/react-core/dist/js/components/Page"; import * as DmnEditor from "../dist/index"; -import { DmnEditorStandaloneApi } from "../dist/DmnEditorStandaloneApi"; +import { DmnEditorStandaloneApi } from "../dist/index"; import { Flex } from "@patternfly/react-core/dist/js/layouts/Flex/Flex"; import { FlexItem } from "@patternfly/react-core/dist/js/layouts/Flex/FlexItem"; import { Text, TextVariants } from "@patternfly/react-core/dist/js/components/Text"; diff --git a/packages/dmn-editor-standalone/tests-e2e/__fixtures__/editor.ts b/packages/dmn-editor-standalone/tests-e2e/__fixtures__/editor.ts index f72046ca2f2..5ecc57ef09d 100644 --- a/packages/dmn-editor-standalone/tests-e2e/__fixtures__/editor.ts +++ b/packages/dmn-editor-standalone/tests-e2e/__fixtures__/editor.ts @@ -19,8 +19,7 @@ import { Page, expect } from "@playwright/test"; import { ContentType } from "@kie-tools-core/workspace/dist/api"; -import type { DmnEditorStandaloneApi } from "@kie-tools/dmn-editor-standalone/dist/DmnEditorStandaloneApi"; -import type { open } from "@kie-tools/dmn-editor-standalone/dist"; +import type { open, DmnEditorStandaloneApi } from "@kie-tools/dmn-editor-standalone/dist"; import * as prettier from "prettier"; export enum DefaultNodeName { diff --git a/packages/dmn-editor-standalone/tsconfig.json b/packages/dmn-editor-standalone/tsconfig.json index eda786a5eb1..6eaa9245ccf 100644 --- a/packages/dmn-editor-standalone/tsconfig.json +++ b/packages/dmn-editor-standalone/tsconfig.json @@ -2,6 +2,9 @@ "extends": "@kie-tools/tsconfig/tsconfig.esm.json", "compilerOptions": { "esModuleInterop": true, - "jsx": "react-jsx" + "jsx": "react-jsx", + // Skip declarations, they are bundled manually in another step + "declarationMap": false, + "declaration": false } } diff --git a/packages/kie-editors-standalone/dts-bundle.config.json b/packages/kie-editors-standalone/dts-bundle.config.json new file mode 100644 index 00000000000..c73a34918d4 --- /dev/null +++ b/packages/kie-editors-standalone/dts-bundle.config.json @@ -0,0 +1,24 @@ +{ + "compilationOptions": { + "preferredConfigPath": "./tsconfig.json" + }, + + "entries": [ + { + "filePath": "./src/dmn/index.ts", + "outFile": "./dist/dmn/index.d.ts" + }, + { + "filePath": "./src/bpmn/index.ts", + "outFile": "./dist/bpmn/index.d.ts" + }, + { + "filePath": "./src/common/Editor.ts", + "outFile": "./dist/common/Editor.d.ts" + }, + { + "filePath": "./src/common/EditorResources.ts", + "outFile": "./dist/common/EditorResources.d.ts" + } + ] +} diff --git a/packages/kie-editors-standalone/package.json b/packages/kie-editors-standalone/package.json index ec10cb11975..6d82ff13779 100644 --- a/packages/kie-editors-standalone/package.json +++ b/packages/kie-editors-standalone/package.json @@ -19,9 +19,10 @@ "dist/jsdiagram" ], "scripts": { - "build:dev": "rimraf dist && webpack --env dev --config webpack.build-resources.config.js && pnpm build:preprocessor && webpack --env dev --config webpack.package-resources.config.js", + "build:bundle-types": "dts-bundle-generator --config dts-bundle.config.json", + "build:dev": "rimraf dist && webpack --env dev --config webpack.build-resources.config.js && pnpm build:preprocessor && webpack --env dev --config webpack.package-resources.config.js && pnpm build:bundle-types", "build:preprocessor": "node dist/preprocessor/preprocessor.js", - "build:prod": "pnpm lint && pnpm test && rimraf dist && webpack --config webpack.build-resources.config.js && pnpm build:preprocessor && webpack --config webpack.package-resources.config.js && pnpm test-e2e", + "build:prod": "pnpm lint && pnpm test && rimraf dist && webpack --config webpack.build-resources.config.js && pnpm build:preprocessor && webpack --config webpack.package-resources.config.js && pnpm build:bundle-types && pnpm test-e2e", "build:productization": "pnpm build:prod", "cy:open": "run-script-os", "cy:open:darwin:linux": "cypress open --project e2e-tests --config \"baseUrl=http://localhost:$(build-env standaloneEditors.dev.port)\"", @@ -37,9 +38,6 @@ "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --silent --verbose --passWithNoTests\"", "test-e2e": "run-script-if --ignore-errors \"$(build-env endToEndTests.ignoreFailures)\" --bool \"$(build-env endToEndTests.run)\" --then \"pnpm rimraf ./dist-tests-e2e\" \"pnpm start-server-and-test start-e2e http-get://0.0.0.0:$(build-env standaloneEditors.dev.port) cy:run\" \"pnpm postreport\"" }, - "dependencies": { - "@kie-tools/kie-bc-editors": "workspace:*" - }, "devDependencies": { "@babel/core": "^7.16.0", "@babel/preset-env": "^7.16.0", @@ -54,6 +52,7 @@ "@kie-tools-core/workspace": "workspace:*", "@kie-tools/eslint": "workspace:*", "@kie-tools/jest-base": "workspace:*", + "@kie-tools/kie-bc-editors": "workspace:*", "@kie-tools/root-env": "workspace:*", "@kie-tools/stunner-editors": "workspace:*", "@kie-tools/tsconfig": "workspace:*", @@ -69,6 +68,7 @@ "cypress-file-upload": "^5.0.8", "cypress-iframe": "^1.0.1", "cypress-log-to-output": "^1.1.2", + "dts-bundle-generator": "^9.5.1", "html-webpack-plugin": "^5.3.2", "jest": "^29.7.0", "jest-environment-jsdom": "^29.7.0", diff --git a/packages/kie-editors-standalone/src/bpmn/index.ts b/packages/kie-editors-standalone/src/bpmn/index.ts index 9de2876c724..b84c85ee439 100644 --- a/packages/kie-editors-standalone/src/bpmn/index.ts +++ b/packages/kie-editors-standalone/src/bpmn/index.ts @@ -17,7 +17,10 @@ * under the License. */ -import bpmnEnvelopeIndex from "!!raw-loader!../../dist/resources/bpmn/bpmnEnvelopeIndex.html"; +// eslint-disable-next-line @typescript-eslint/triple-slash-reference +/// // Required for bundling types + +import bpmnEnvelopeIndex from "../../dist/resources/bpmn/bpmnEnvelopeIndex.html"; import { EnvelopeServer } from "@kie-tools-core/envelope-bus/dist/channel"; import { ChannelType, @@ -28,8 +31,8 @@ import { StandaloneEditorsEditorChannelApiImpl } from "../envelope/StandaloneEdi import { StateControl } from "@kie-tools-core/editor/dist/channel"; import { ContentType } from "@kie-tools-core/workspace/dist/api"; import { createEditor, Editor, StandaloneEditorApi } from "../common/Editor"; -import { BpmnEditorEnvelopeApi } from "../../../kie-bc-editors/dist/bpmn/api"; import { BpmnEditorDiagramApi } from "../jsdiagram/BpmnEditorDiagramApi"; +import { BpmnEditorEnvelopeApi } from "@kie-tools/kie-bc-editors/dist/bpmn/api"; declare global { interface Window { diff --git a/packages/kie-editors-standalone/src/dmn/index.ts b/packages/kie-editors-standalone/src/dmn/index.ts index 4600b4a87c2..0c670864f29 100644 --- a/packages/kie-editors-standalone/src/dmn/index.ts +++ b/packages/kie-editors-standalone/src/dmn/index.ts @@ -17,20 +17,22 @@ * under the License. */ -import bpmnEnvelopeIndex from "!!raw-loader!../../dist/resources/dmn/dmnEnvelopeIndex.html"; +// eslint-disable-next-line @typescript-eslint/triple-slash-reference +/// // Required for bundling types + +import dmnEnvelopeIndex from "../../dist/resources/dmn/dmnEnvelopeIndex.html"; import { EnvelopeServer } from "@kie-tools-core/envelope-bus/dist/channel"; import { ChannelType, DEFAULT_WORKSPACE_ROOT_ABSOLUTE_POSIX_PATH, KogitoEditorChannelApi, - KogitoEditorEnvelopeApi, } from "@kie-tools-core/editor/dist/api"; import { StandaloneEditorsEditorChannelApiImpl } from "../envelope/StandaloneEditorsEditorChannelApiImpl"; import { StateControl } from "@kie-tools-core/editor/dist/channel"; import { ContentType } from "@kie-tools-core/workspace/dist/api"; import { createEditor, Editor, StandaloneEditorApi } from "../common/Editor"; -import { DmnEditorEnvelopeApi } from "../../../kie-bc-editors/dist/dmn/api/DmnEditorEnvelopeApi"; import { DmnEditorDiagramApi } from "../jsdiagram/DmnEditorDiagramApi"; +import { DmnEditorEnvelopeApi } from "@kie-tools/kie-bc-editors/dist/dmn/api"; declare global { interface Window { @@ -72,7 +74,7 @@ export function open(args: { resources?: Map }>; }): StandaloneEditorApi & DmnEditorDiagramApi { const iframe = document.createElement("iframe"); - iframe.srcdoc = bpmnEnvelopeIndex; + iframe.srcdoc = dmnEnvelopeIndex; iframe.style.width = "100%"; iframe.style.height = "100%"; iframe.style.border = "none"; diff --git a/packages/kie-editors-standalone/tsconfig.json b/packages/kie-editors-standalone/tsconfig.json index 9154a249aa5..06f9450f444 100644 --- a/packages/kie-editors-standalone/tsconfig.json +++ b/packages/kie-editors-standalone/tsconfig.json @@ -1,6 +1,9 @@ { "extends": "@kie-tools/tsconfig/tsconfig.esm.json", "compilerOptions": { - "jsx": "react-jsx" + "jsx": "react-jsx", + // Skip declarations, they are bundled manually in another step + "declarationMap": false, + "declaration": false } } diff --git a/packages/kie-editors-standalone/webpack.package-resources.config.js b/packages/kie-editors-standalone/webpack.package-resources.config.js index 0e9f22ff193..550deafb3b9 100644 --- a/packages/kie-editors-standalone/webpack.package-resources.config.js +++ b/packages/kie-editors-standalone/webpack.package-resources.config.js @@ -35,6 +35,18 @@ module.exports = (env) => dmn: "./src/dmn/index.ts", bpmn: "./src/bpmn/index.ts", }, + module: { + rules: [ + { + test: /dmnEnvelopeIndex\.html$/, + type: "asset/source", + }, + { + test: /bpmnEnvelopeIndex\.html$/, + type: "asset/source", + }, + ], + }, devServer: { historyApiFallback: false, static: [{ directory: path.join(__dirname, "./dist") }], diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 993df030159..a209d4e0447 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3471,25 +3471,6 @@ importers: version: 5.5.3 packages/dmn-editor-standalone: - dependencies: - '@kie-tools-core/editor': - specifier: workspace:* - version: link:../editor - '@kie-tools-core/envelope-bus': - specifier: workspace:* - version: link:../envelope-bus - '@kie-tools-core/notifications': - specifier: workspace:* - version: link:../notifications - '@kie-tools-core/workspace': - specifier: workspace:* - version: link:../workspace - '@kie-tools/dmn-editor-envelope': - specifier: workspace:* - version: link:../dmn-editor-envelope - minimatch: - specifier: ^3.0.5 - version: 3.1.2 devDependencies: '@babel/core': specifier: ^7.16.0 @@ -3506,21 +3487,36 @@ importers: '@kie-tools-core/backend': specifier: workspace:* version: link:../backend + '@kie-tools-core/editor': + specifier: workspace:* + version: link:../editor + '@kie-tools-core/envelope-bus': + specifier: workspace:* + version: link:../envelope-bus '@kie-tools-core/i18n': specifier: workspace:* version: link:../i18n + '@kie-tools-core/notifications': + specifier: workspace:* + version: link:../notifications '@kie-tools-core/patternfly-base': specifier: workspace:* version: link:../patternfly-base '@kie-tools-core/webpack-base': specifier: workspace:* version: link:../webpack-base + '@kie-tools-core/workspace': + specifier: workspace:* + version: link:../workspace '@kie-tools/boxed-expression-component': specifier: workspace:* version: link:../boxed-expression-component '@kie-tools/dmn-editor': specifier: workspace:* version: link:../dmn-editor + '@kie-tools/dmn-editor-envelope': + specifier: workspace:* + version: link:../dmn-editor-envelope '@kie-tools/dmn-marshaller': specifier: workspace:* version: link:../dmn-marshaller @@ -3596,6 +3592,9 @@ importers: deep-object-diff: specifier: ^1.1.9 version: 1.1.9 + dts-bundle-generator: + specifier: ^9.5.1 + version: 9.5.1 html-webpack-plugin: specifier: ^5.3.2 version: 5.5.3(webpack@5.88.2(webpack-cli@4.10.0)) @@ -3605,6 +3604,9 @@ importers: lodash: specifier: ^4.17.21 version: 4.17.21 + minimatch: + specifier: ^3.0.5 + version: 3.1.2 nodemon: specifier: ^3.1.4 version: 3.1.4 @@ -5594,10 +5596,6 @@ importers: version: 5.9.0 packages/kie-editors-standalone: - dependencies: - '@kie-tools/kie-bc-editors': - specifier: workspace:* - version: link:../kie-bc-editors devDependencies: '@babel/core': specifier: ^7.16.0 @@ -5638,6 +5636,9 @@ importers: '@kie-tools/jest-base': specifier: workspace:* version: link:../jest-base + '@kie-tools/kie-bc-editors': + specifier: workspace:* + version: link:../kie-bc-editors '@kie-tools/root-env': specifier: workspace:* version: link:../root-env @@ -5683,6 +5684,9 @@ importers: cypress-log-to-output: specifier: ^1.1.2 version: 1.1.2 + dts-bundle-generator: + specifier: ^9.5.1 + version: 9.5.1 html-webpack-plugin: specifier: ^5.3.2 version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) @@ -21586,6 +21590,11 @@ packages: resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} engines: {node: '>=4'} + dts-bundle-generator@9.5.1: + resolution: {integrity: sha512-DxpJOb2FNnEyOzMkG11sxO2dmxPjthoVWxfKqWYJ/bI/rT1rvTMktF5EKjAYrRZu6Z6t3NhOUZ0sZ5ZXevOfbA==} + engines: {node: '>=14.0.0'} + hasBin: true + duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} @@ -44772,6 +44781,11 @@ snapshots: dset@3.1.2: {} + dts-bundle-generator@9.5.1: + dependencies: + typescript: 5.5.3 + yargs: 17.7.2 + duplexer@0.1.2: {} duplexify@3.7.1: @@ -55395,7 +55409,7 @@ snapshots: yargs@17.7.2: dependencies: cliui: 8.0.1 - escalade: 3.1.1 + escalade: 3.1.2 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 diff --git a/repo/graph.dot b/repo/graph.dot index 2f45304d39f..e9b96f5e77f 100644 --- a/repo/graph.dot +++ b/repo/graph.dot @@ -329,7 +329,7 @@ digraph G { "@kie-tools/dmn-editor" -> "@kie-tools/pmml-editor-marshaller" [ style = "solid", color = "blue" ]; "@kie-tools/dmn-editor-envelope" -> "@kie-tools-core/editor" [ style = "solid", color = "blue" ]; "@kie-tools/dmn-editor-envelope" -> "@kie-tools/dmn-editor" [ style = "solid", color = "blue" ]; - "@kie-tools/dmn-editor-standalone" -> "@kie-tools/dmn-editor-envelope" [ style = "solid", color = "blue" ]; + "@kie-tools/dmn-editor-standalone" -> "@kie-tools/dmn-editor-envelope" [ style = "dashed", color = "blue" ]; "@kie-tools/dmn-feel-antlr4-parser" -> "@kie-tools/dmn-marshaller" [ style = "solid", color = "blue" ]; "@kie-tools/dmn-language-service" -> "@kie-tools/dmn-feel-antlr4-parser" [ style = "solid", color = "blue" ]; "@kie-tools/dmn-language-service" -> "@kie-tools-core/switch-expression-ts" [ style = "dashed", color = "blue" ]; @@ -404,7 +404,7 @@ digraph G { "kie-editors-dev-vscode-extension" -> "@kie-tools/vscode-java-code-completion-extension-plugin" [ style = "solid", color = "black" ]; "kie-editors-dev-vscode-extension" -> "@kie-tools/stunner-editors" [ style = "dashed", color = "black" ]; "kie-editors-dev-vscode-extension" -> "@kie-tools/vscode-extension-common-test-helpers" [ style = "dashed", color = "black" ]; - "@kie-tools/kie-editors-standalone" -> "@kie-tools/kie-bc-editors" [ style = "solid", color = "blue" ]; + "@kie-tools/kie-editors-standalone" -> "@kie-tools/kie-bc-editors" [ style = "dashed", color = "blue" ]; "@kie-tools/kie-editors-standalone" -> "@kie-tools/stunner-editors" [ style = "dashed", color = "blue" ]; "@kie-tools/kie-sandbox-distribution" -> "@kie-tools/cors-proxy-image" [ style = "solid", color = "black" ]; "@kie-tools/kie-sandbox-distribution" -> "@kie-tools/kie-sandbox-extended-services-image" [ style = "solid", color = "black" ]; From a99f44cd9b4f1be6583a252bb8dbc0ab765d817a Mon Sep 17 00:00:00 2001 From: Jozef Marko Date: Fri, 9 Aug 2024 16:49:18 +0200 Subject: [PATCH 05/22] kie-issues#947: Playwright expansion phase - part 2 - Decision Service node (#2454) --- .../dmn-editor/src/draggable/Draggable.tsx | 27 +- .../DecisionServiceProperties.tsx | 13 +- .../decisionServicePropertiesPanel.ts | 72 ++++ .../resize-non-empty-decision-service.png | Bin 0 -> 48791 bytes .../resize-non-empty-decision-service.png | Bin 0 -> 48841 bytes .../resize-non-empty-decision-service.png | Bin 0 -> 43423 bytes .../drgElements/modelDecisionService.spec.ts | 365 ++++++++++++++++++ .../drgElements/resizeDecisionService.spec.ts | 22 ++ 8 files changed, 482 insertions(+), 17 deletions(-) create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drgElements/resize-non-empty-decision-service.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/drgElements/resize-non-empty-decision-service.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/drgElements/resize-non-empty-decision-service.png create mode 100644 packages/dmn-editor/tests-e2e/drgElements/modelDecisionService.spec.ts diff --git a/packages/dmn-editor/src/draggable/Draggable.tsx b/packages/dmn-editor/src/draggable/Draggable.tsx index 59040cb0215..25fa300f9e9 100644 --- a/packages/dmn-editor/src/draggable/Draggable.tsx +++ b/packages/dmn-editor/src/draggable/Draggable.tsx @@ -253,24 +253,27 @@ export function Draggable(props: { data-testid={`kie-tools--dmn-editor--draggable-row-${props.index}`} > {!props.isDisabled ? ( - setDraggable(true)} - onPointerLeave={() => setDraggable(false)} - style={props.handlerStyle} - > - - +

+ setDraggable(true)} + onPointerLeave={() => setDraggable(false)} + style={props.handlerStyle} + > + + +
) : (
)}
{props.children}
diff --git a/packages/dmn-editor/src/propertiesPanel/DecisionServiceProperties.tsx b/packages/dmn-editor/src/propertiesPanel/DecisionServiceProperties.tsx index 76adad60526..b2c7a7ff810 100644 --- a/packages/dmn-editor/src/propertiesPanel/DecisionServiceProperties.tsx +++ b/packages/dmn-editor/src/propertiesPanel/DecisionServiceProperties.tsx @@ -161,14 +161,17 @@ export function DecisionServiceProperties({ - + - + - + - + -

+

d)+c%X^ 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 z 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 F{|6Hr`~Ls{ literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png b/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png new file mode 100644 index 0000000000000000000000000000000000000000..e579c0ead3d57072ea640c4ffc839f98e5f15beb GIT binary patch literal 35998 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png b/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png new file mode 100644 index 0000000000000000000000000000000000000000..01b13cdb8924e90eaf5dff2b0b666fe19310209f GIT binary patch literal 36343 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ðp8>4;C5V+<3u!u63UEur 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts b/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts index 6419c9f4a60..25b09449bb3 100644 --- a/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts +++ b/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts @@ -305,16 +305,16 @@ test.describe("Add edge - Association", () => { nodes, edges, }) => { - test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/982"); test.info().annotations.push({ type: TestAnnotations.REGRESSION, description: "https://github.com/apache/incubator-kie-issues/issues/982", }); - await palette.dragNewNode({ type: NodeType.GROUP, targetPosition: { x: 300, y: 300 } }); + await palette.dragNewNode({ type: NodeType.GROUP, targetPosition: { x: 400, y: 400 } }); await nodes.dragNewConnectedEdge({ type: EdgeType.ASSOCIATION, from: DefaultNodeName.TEXT_ANNOTATION, to: DefaultNodeName.GROUP, + position: NodePosition.TOP, }); expect(await edges.get({ from: DefaultNodeName.TEXT_ANNOTATION, to: DefaultNodeName.GROUP })).toBeAttached(); From 19694daee0c7eff52da003a2a091e6c9c578c15f Mon Sep 17 00:00:00 2001 From: Dmitrii Tikhomirov Date: Mon, 12 Aug 2024 05:40:57 -0700 Subject: [PATCH 08/22] kie-issues#1337: kn-plugin-workflow should verify if the cluster has SonataFlow Operator installed (#2446) --- packages/kn-plugin-workflow/pkg/command/deploy.go | 7 +++++++ packages/kn-plugin-workflow/pkg/common/kubectl.go | 15 ++++++++++++--- .../kn-plugin-workflow/pkg/metadata/constants.go | 3 +++ 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/packages/kn-plugin-workflow/pkg/command/deploy.go b/packages/kn-plugin-workflow/pkg/command/deploy.go index ba201e5aff2..d97443ee9f9 100644 --- a/packages/kn-plugin-workflow/pkg/command/deploy.go +++ b/packages/kn-plugin-workflow/pkg/command/deploy.go @@ -188,6 +188,13 @@ func runDeployCmdConfig(cmd *cobra.Command) (cfg DeployUndeployCmdConfig, err er return cfg, fmt.Errorf("❌ ERROR: failed to get default dashboards files folder: %w", err) } + // check if sonataflow operator CRDs are installed + for _, crd := range metadata.SonataflowCRDs { + if !common.CheckKubectlCrdExists(crd) { + return cfg, fmt.Errorf("❌ ERROR: the required CRDs are not installed.. Install the SonataFlow Operator CRD first") + } + } + //setup manifest path if err := setupConfigManifestPath(&cfg); err != nil { return cfg, err diff --git a/packages/kn-plugin-workflow/pkg/common/kubectl.go b/packages/kn-plugin-workflow/pkg/common/kubectl.go index 17b3f54396a..dfb349b3f72 100644 --- a/packages/kn-plugin-workflow/pkg/common/kubectl.go +++ b/packages/kn-plugin-workflow/pkg/common/kubectl.go @@ -6,15 +6,15 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ package common @@ -68,3 +68,12 @@ func CheckKubectl() error { fmt.Println(" - ✅ kubectl is available") return nil } + +func CheckKubectlCrdExists(crd string) bool { + cmd := exec.Command("kubectl", "get", "crd", crd) + _, err := cmd.Output() + if err != nil { + return false + } + return true +} diff --git a/packages/kn-plugin-workflow/pkg/metadata/constants.go b/packages/kn-plugin-workflow/pkg/metadata/constants.go index 601dee87cb6..b5179857bb8 100644 --- a/packages/kn-plugin-workflow/pkg/metadata/constants.go +++ b/packages/kn-plugin-workflow/pkg/metadata/constants.go @@ -48,6 +48,9 @@ var KogitoDependencies = []Dependency{ {GroupId: "org.apache.kie.sonataflow", ArtifactId: "sonataflow-quarkus-devui", Version: "${kie.tooling.version}"}, } +// requared crds for sonataflow +var SonataflowCRDs = []string{"sonataflowbuilds.sonataflow.org", "sonataflowclusterplatforms.sonataflow.org", "sonataflowplatforms.sonataflow.org", "sonataflows.sonataflow.org"} + const ( QuarkusMavenPlugin = "quarkus-maven-plugin" QuarkusKubernetesExtension = "quarkus-kubernetes" From 01e01b2137a16108c48787a37acaa277b2dc375b Mon Sep 17 00:00:00 2001 From: Dmitrii Tikhomirov Date: Mon, 12 Aug 2024 08:01:12 -0700 Subject: [PATCH 09/22] kie-issues#1335: kn workflow build output log should be saved in the target dir (#2474) --- .../pkg/command/quarkus/build.go | 59 +++++++++++++++---- 1 file changed, 47 insertions(+), 12 deletions(-) diff --git a/packages/kn-plugin-workflow/pkg/command/quarkus/build.go b/packages/kn-plugin-workflow/pkg/command/quarkus/build.go index afcbab66f90..6f0085d8ae2 100644 --- a/packages/kn-plugin-workflow/pkg/command/quarkus/build.go +++ b/packages/kn-plugin-workflow/pkg/command/quarkus/build.go @@ -21,6 +21,10 @@ package quarkus import ( "fmt" + "io" + "log" + "os" + "path/filepath" "regexp" "strconv" "strings" @@ -224,8 +228,32 @@ func runAddExtension(cfg BuildCmdConfig) error { } func runBuildImage(cfg BuildCmdConfig) (out string, err error) { + var flags = log.Flags() + defer log.SetFlags(flags) + log.SetFlags(0) + + dir := "target" + filePath := filepath.Join(dir, "build.log") + + if _, err := os.Stat(dir); os.IsNotExist(err) { + err = os.MkdirAll(dir, 0755) + if err != nil { + log.Fatalf("Unable to create a target folder: %v", err) + } + } + + file, err := os.Create(filePath) + if err != nil { + log.Fatalf("Unable to create a log file : %v", err) + } + log.SetOutput(file) + defer file.Close() + + multiWriter := io.MultiWriter(os.Stdout, file) + registry, repository, name, tag := getImageConfig(cfg) if err = checkImageName(name); err != nil { + log.Print(err) return } @@ -247,25 +275,32 @@ func runBuildImage(cfg BuildCmdConfig) (out string, err error) { executableName, ) - if err = common.RunCommand( - build, - "build", - ); err != nil { + build.Stdout = multiWriter + build.Stderr = multiWriter + + if err := build.Start(); err != nil { + // write to the log as well + log.Println("ERROR: starting command \"build\" failed") if cfg.Push { - fmt.Println("ERROR: Image build failed.") - fmt.Println("If you're using a private registry, check if you're authenticated") + log.Println("ERROR: Image build failed.") + log.Println("If you're using a private registry, check if you're authenticated") } - return + return "", err + } + + if err := build.Wait(); err != nil { + log.Println("ERROR: something went wrong during command \"build\"") + return "", err } out = getImage(registry, repository, name, tag) if cfg.Push { - fmt.Printf("Created and pushed an image to registry: %s\n", out) + log.Printf("Created and pushed an image to registry: %s\n", out) } else { - fmt.Printf("Created a local image: %s\n", out) + log.Printf("Created a local image: %s\n", out) } - fmt.Println("✅ Build success") + log.Println("✅ Build success") return } @@ -274,11 +309,11 @@ func checkImageName(name string) (err error) { if !matched { fmt.Println(` ERROR: Image name should match [a-z]([-a-z0-9]*[a-z0-9])? -The name needs to start with a lower case letter and then it can be composed exclusvely of lower case letters, numbers or dashes ('-') +The name needs to start with a lower case letter and then it can be composed exclusively of lower case letters, numbers or dashes ('-') Example of valid names: "test-0-0-1", "test", "t1" Example of invalid names: "1-test", "test.1", "test/1" `) - err = fmt.Errorf("invalid image name") + err = fmt.Errorf("invalid image name: %s", name) } return } From 19901c9c0a8c0a50af9cc404eef95923c09c7e77 Mon Sep 17 00:00:00 2001 From: Jianrong Zhang Date: Fri, 16 Aug 2024 04:26:24 -0400 Subject: [PATCH 10/22] Add monitoring add-on for SonataFlow build images (#2535) --- .../modules/sonataflow/builder/build-config/module.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sonataflow-builder-image/resources/modules/sonataflow/builder/build-config/module.yaml b/packages/sonataflow-builder-image/resources/modules/sonataflow/builder/build-config/module.yaml index 9874ea8510d..de38debf479 100644 --- a/packages/sonataflow-builder-image/resources/modules/sonataflow/builder/build-config/module.yaml +++ b/packages/sonataflow-builder-image/resources/modules/sonataflow/builder/build-config/module.yaml @@ -26,4 +26,4 @@ envs: value: "false" - name: QUARKUS_EXTENSIONS # Follow up issue to remove KOGITO_VERSION: https://issues.redhat.com/browse/KOGITO-9270 - value: quarkus-kubernetes,smallrye-health,org.apache.kie.sonataflow:sonataflow-quarkus:${KOGITO_VERSION},org.kie:kie-addons-quarkus-knative-eventing:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-microprofile-config-service-catalog:${KOGITO_VERSION},org.kie:kie-addons-quarkus-kubernetes:${KOGITO_VERSION},org.kie:kie-addons-quarkus-events-process:${KOGITO_VERSION},org.kie:kie-addons-quarkus-process-management:${KOGITO_VERSION},org.kie:kie-addons-quarkus-source-files:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-knative-serving:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-jobs-knative-eventing:${KOGITO_VERSION} + value: quarkus-kubernetes,smallrye-health,org.apache.kie.sonataflow:sonataflow-quarkus:${KOGITO_VERSION},org.kie:kie-addons-quarkus-knative-eventing:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-microprofile-config-service-catalog:${KOGITO_VERSION},org.kie:kie-addons-quarkus-kubernetes:${KOGITO_VERSION},org.kie:kie-addons-quarkus-events-process:${KOGITO_VERSION},org.kie:kie-addons-quarkus-process-management:${KOGITO_VERSION},org.kie:kie-addons-quarkus-source-files:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-knative-serving:${KOGITO_VERSION},org.kie:kogito-addons-quarkus-jobs-knative-eventing:${KOGITO_VERSION},org.kie:kie-addons-quarkus-monitoring-prometheus:${KOGITO_VERSION},org.kie:kie-addons-quarkus-monitoring-elastic:${KOGITO_VERSION},org.kie:kie-addons-quarkus-monitoring-sonataflow:${KOGITO_VERSION} From 416d18b59605eacb797f1cf6cad214158d13fc29 Mon Sep 17 00:00:00 2001 From: Jozef Marko Date: Mon, 19 Aug 2024 17:07:32 +0200 Subject: [PATCH 11/22] kie-issues#1391: Sandbox: Gist Integration announce unsuccessful force push as successful (#2473) --- .../Toolbar/GitIntegration/GitIntegrationContextProvider.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/online-editor/src/editor/Toolbar/GitIntegration/GitIntegrationContextProvider.tsx b/packages/online-editor/src/editor/Toolbar/GitIntegration/GitIntegrationContextProvider.tsx index fbec769e047..bb887646a7d 100644 --- a/packages/online-editor/src/editor/Toolbar/GitIntegration/GitIntegrationContextProvider.tsx +++ b/packages/online-editor/src/editor/Toolbar/GitIntegration/GitIntegrationContextProvider.tsx @@ -451,14 +451,13 @@ export function GitIntegrationContextProvider(props: GitIntegrationContextProvid authInfo, insecurelyDisableTlsCertificateValidation, }); + alerts.successfullyUpdatedGistOrSnippetAlert.show(); } catch (e) { alerts.errorAlert.show(); } finally { setGistOrSnippetLoading(false); setSyncGistOrSnippetDropdownOpen(false); } - - alerts.successfullyUpdatedGistOrSnippetAlert.show(); }, [ alerts.errorAlert, alerts.successfullyUpdatedGistOrSnippetAlert, From 7e2a58b577e15122e1f98d908c49c78f8b56edbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jos=C3=A9=20dos=20Santos?= Date: Mon, 19 Aug 2024 12:40:34 -0300 Subject: [PATCH 12/22] kie-issues#1147: DMN Editor Filter expression resize handler is at wrong position (#2527) --- .../src/resizing/Hooks.tsx | 6 +- ...boxed-filter-aligned-match-conditional.png | Bin 0 -> 15606 bytes .../boxed-filter-aligned-match-context.png | Bin 0 -> 16410 bytes ...ed-filter-aligned-match-decision-table.png | Bin 0 -> 17837 bytes .../boxed-filter-aligned-match-every.png | Bin 0 -> 15338 bytes .../boxed-filter-aligned-match-filter.png | Bin 0 -> 12095 bytes .../filter/boxed-filter-aligned-match-for.png | Bin 0 -> 14207 bytes .../boxed-filter-aligned-match-function.png | Bin 0 -> 12884 bytes .../boxed-filter-aligned-match-invocation.png | Bin 0 -> 14390 bytes .../boxed-filter-aligned-match-list.png | Bin 0 -> 9880 bytes .../boxed-filter-aligned-match-some.png | Bin 0 -> 15255 bytes ...boxed-filter-resized-match-conditional.png | Bin 0 -> 14367 bytes .../boxed-filter-resized-match-context.png | Bin 0 -> 14962 bytes ...ed-filter-resized-match-decision-table.png | Bin 0 -> 18136 bytes .../boxed-filter-resized-match-every.png | Bin 0 -> 14094 bytes .../boxed-filter-resized-match-filter.png | Bin 0 -> 10623 bytes .../boxed-filter-resized-match-for.png | Bin 0 -> 12938 bytes .../boxed-filter-resized-match-function.png | Bin 0 -> 11317 bytes .../boxed-filter-resized-match-invocation.png | Bin 0 -> 12846 bytes .../boxed-filter-resized-match-list.png | Bin 0 -> 8229 bytes .../boxed-filter-resized-match-some.png | Bin 0 -> 14023 bytes ...boxed-filter-aligned-match-conditional.png | Bin 0 -> 15612 bytes .../boxed-filter-aligned-match-context.png | Bin 0 -> 16410 bytes ...ed-filter-aligned-match-decision-table.png | Bin 0 -> 17837 bytes .../boxed-filter-aligned-match-every.png | Bin 0 -> 15347 bytes .../boxed-filter-aligned-match-filter.png | Bin 0 -> 12095 bytes .../filter/boxed-filter-aligned-match-for.png | Bin 0 -> 14216 bytes .../boxed-filter-aligned-match-function.png | Bin 0 -> 12884 bytes .../boxed-filter-aligned-match-invocation.png | Bin 0 -> 14395 bytes .../boxed-filter-aligned-match-list.png | Bin 0 -> 9872 bytes .../boxed-filter-aligned-match-some.png | Bin 0 -> 15255 bytes ...boxed-filter-resized-match-conditional.png | Bin 0 -> 14367 bytes .../boxed-filter-resized-match-context.png | Bin 0 -> 14962 bytes ...ed-filter-resized-match-decision-table.png | Bin 0 -> 18136 bytes .../boxed-filter-resized-match-every.png | Bin 0 -> 14094 bytes .../boxed-filter-resized-match-filter.png | Bin 0 -> 10623 bytes .../boxed-filter-resized-match-for.png | Bin 0 -> 12938 bytes .../boxed-filter-resized-match-function.png | Bin 0 -> 11317 bytes .../boxed-filter-resized-match-invocation.png | Bin 0 -> 12846 bytes .../boxed-filter-resized-match-list.png | Bin 0 -> 8229 bytes .../boxed-filter-resized-match-some.png | Bin 0 -> 14023 bytes ...boxed-filter-aligned-match-conditional.png | Bin 0 -> 14316 bytes .../boxed-filter-aligned-match-context.png | Bin 0 -> 14824 bytes ...ed-filter-aligned-match-decision-table.png | Bin 0 -> 15762 bytes .../boxed-filter-aligned-match-every.png | Bin 0 -> 13936 bytes .../boxed-filter-aligned-match-filter.png | Bin 0 -> 11005 bytes .../filter/boxed-filter-aligned-match-for.png | Bin 0 -> 13128 bytes .../boxed-filter-aligned-match-function.png | Bin 0 -> 11424 bytes .../boxed-filter-aligned-match-invocation.png | Bin 0 -> 12887 bytes .../boxed-filter-aligned-match-list.png | Bin 0 -> 8956 bytes .../boxed-filter-aligned-match-some.png | Bin 0 -> 13977 bytes ...boxed-filter-resized-match-conditional.png | Bin 0 -> 13218 bytes .../boxed-filter-resized-match-context.png | Bin 0 -> 13528 bytes ...ed-filter-resized-match-decision-table.png | Bin 0 -> 16111 bytes .../boxed-filter-resized-match-every.png | Bin 0 -> 12779 bytes .../boxed-filter-resized-match-filter.png | Bin 0 -> 9695 bytes .../boxed-filter-resized-match-for.png | Bin 0 -> 11904 bytes .../boxed-filter-resized-match-function.png | Bin 0 -> 10053 bytes .../boxed-filter-resized-match-invocation.png | Bin 0 -> 11584 bytes .../boxed-filter-resized-match-list.png | Bin 0 -> 7475 bytes .../boxed-filter-resized-match-some.png | Bin 0 -> 12857 bytes .../tests-e2e/api/expressionContainer.ts | 15 +- .../expressions/contextExpressionElement.ts | 4 + .../invocationExpressionElement.ts | 4 + .../api/expressions/listExpressionElement.ts | 4 + .../filter/filterExpression.spec.ts | 167 ++++++++++++ .../features/resizing/resizing.spec.ts | 240 +++++++++++++++++- 67 files changed, 433 insertions(+), 7 deletions(-) create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-some.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-some.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-some.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-some.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-some.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-conditional.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-context.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-decision-table.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-every.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-filter.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-for.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-function.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-invocation.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-list.png create mode 100644 packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-some.png diff --git a/packages/boxed-expression-component/src/resizing/Hooks.tsx b/packages/boxed-expression-component/src/resizing/Hooks.tsx index 106b09020fa..4231fccdf65 100644 --- a/packages/boxed-expression-component/src/resizing/Hooks.tsx +++ b/packages/boxed-expression-component/src/resizing/Hooks.tsx @@ -68,7 +68,11 @@ export function useNestedExpressionResizingWidthValue( return Math.max( nestedExpressionContainerResizingWidthValue - fixedColumnResizingWidth.value - extraWidth, - ...nestedExpressions.map((e) => getExpressionResizingWidth(e, new Map(), widthsById)), + ...nestedExpressions.map( + (e) => + getExpressionResizingWidth(e, new Map(), widthsById) + + (nestedExpressionsExtraWidths?.get(e?.["@_id"] ?? "") ?? 0) + ), nestedExpressionMinWidth ); }, [ diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..da2016540664484dde63d3fe635428bc24ccc84c GIT binary patch literal 15606 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%0D3)T4>tI$;qBq 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 A%>V!Z literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png new file mode 100644 index 0000000000000000000000000000000000000000..01c469c4a3f3261a972f6575ba692697b99d967b GIT binary patch literal 17837 zcmce;byQr>w

_a0n#0hmhdz4uJp(?(VLQy9Rd&?hxGF-QC@t(6}_x=|JNe=TjXfFDrqLLWlwY0MLK__^t>5zR_TUC*|SoYdgqGeQZX@Mdl=|fDD1~iKh!_|u7-Cg zxghhSYfi+j?z%7&oZH`YoD#UlzuwRAbi8RAOJ)kd6hW$qMD%Ed3B(jRH^XLw9_T|2 zgE2)y;T6XJx%f#{R#sN7=@+KRuy=&`f4jbLmo1gZA+YgL1d03}$2IO|Aq9rnqIa3p z27^2>_GzdyKcNw^d@Zq`@4{DELuCO(%T;r9tELA!Z~P#F)Z)ATx;{R4^Ez46*y+xb zJeJAj8f~H}hD5$EX#X@58Pc{^Yli3DXj-vi-B}wuValXaJKeWYF*Y&pxvAma9%tJJ z^gPD9wUl3^Re7*7Vyt*fCFS z1)HA+TM-0u*S02*TDMd&Om=^04A4ipquNj4QUT&IggT6_Tq^~?*I%BMI22;68_{jr z4U8IIX1BX*x0`Y1NJuJ?DLkZ;YtfEQF4_mCe}m3*%Bct{+)PjI*)P$d0MD&5U$F-y(3wp8^=j z12GL1TtBe6Mkt&?9?td~hn~qDck?q7Sdx=Voe#Er(@?wDjgyYX0c(SOO>^Hydm(b( zcLS@tyB`6sKAkrp*mojGpj&!;HhK%=b&kKL<13jsh5-k71b9Tlot5})b$|5hR;Gm7 z9_pADYs=N8lIe|W=$GA~df(V(+$=dewI*}h{0Hx)0*2| zvUED~o)@qMJ$=H52dKft;Rm&BJSwxY@`~6qDvNSX_AXi1%w@yY#@g?6frIe-S$1?r!ae>Czx6Y4yp#C%Fk z$cCrz1muD_8&Z9qgGMfp=d~0fWVWQ^e$4#5!n3#GQ7>jbleBOopw*gN7;dEJWk0&j zcGyxB;D$5Q`S4lp8thM<4J=NH)eSZb20KjFj^ur@2GDE8iOO*W6J5@G!fdGPS=j?s zou`L^<#DmPA^$YHGwk{$NDR)t5bk#%$d?IaFU$OEb{){_yR~PJ{o79y?b@C;4M!s=5~*Dlwr$e%mU^UzTiuX zL_Yu^?)ce4ZFHcNm+qI@n?2hg0&mW1{}i3?jQhjQ?LcCr{N2$U#@J~aFDD(J=iW;E zf`MoyeTnQ=tW$Y;W6!&2dE#sH{)g8=f$Zn9yhfkR@<<7G0dqlmoFq)H1cF90 z;Gux>$qN~2MmWpF5sLz(aP4cw@$z8+1}-4wCg$s3E;k`w&y_lbnD;l^nlSnhL00dP zKbSFAX{L-)YmZXj>Wm-21mAj(*Y$kH%PsWgj9rk^Z<~e6#NFwKmTzk`Jjb3I4owo7 z)sob&o)2OsGduTJhV_XiYC1GH0Mo0-^uEIrZn?b%&!X>n4}v7|*?iX>|4bUqu7iAi z=kq|)v(bA_t)XB|_B8U246RFWNQVYsY_JCzp#D3ADvEY9Nm2jc#^dGcEsyPfM4R9C>Ek;HB1eW-Ol$gwJgV2J)M%@&ZA5zTV~=2#PGLM&H~R1H#@5>5>Q_o56K}fd z(yC%B*e)X#D>gVkgOrm-Q+ti2E{LYPT*m7UKb0pEq;(|IvW4Z_w$;sF2o0jmQ zn2@5rFmwi$6iJ-OU zGybEem>*^UyUT4I{^qV=`@0yg{4SXym6iLL44d^jE~__;QPre|?uspLMn6@V*RX(* zK?DS1vnqu>FKa+f&Hm+%(PN?MpyoCfzXcLm;j^Bg6s<)WmDv^-4<=fS`+3|YK@8`G zBu^s)8SGTIgxPTBug5k4Vb8bR*CEMk7-4>Xuj1qG74$6}WStBi)gxo-x!|f4mXXV` zD@UO>2iQdyk>qcJ;9qfIP2aJ}Nd$Sjn*NKP%Pb%o`Th4g*B7oKYqHlRv;iFqN~kND zmH$1ocV#{s33Xs5Gx-Fdr~a7!&Z{4CT>hA|JcR%FrJ7Iwr(WUzb5;M{m4Hsh#Sqmd zy>|jGrnsCNIWKPTlK3C9>*=~+;~^7LAEeaIZJWJ2ZmE{|TaRuV@Y>XExZ5~=AoXHX z17B(H`(z0P(NHM_Cj)oJG|Nh~2Mn@aL9YfhU{YXWxHnE)?!72MD)#zA5#B;b%CbzZwfF@R*gih@palu^~6tGer* z%+uS=ZjmM=@-HFHiIcGL+e$$eVD&EKqZo$hY zq!fOE>{q!^lBp3HP`poloR7%+l95(t#bqr;%efjRA`vlmOiuX8v?*g;yUkGxuIsIO z+8{1Z#CXygfce8KGuAG*Sx}_EO+^B8)^o-@7;JExIua5on@1JI4Vz}P^|BX)r?(ud zYD#py9zh0t)VIi|n*R&!GwJ8@8BuWrQyMvl>M-Z@4}!U6J*v0I!JF7vP;vlg@0}*wk|8%N5RY;3VX4FvgY#o5-vK<4*S5{p|X~I}=nuX8`*2vfGl- zi}a7GZ+Qf>uBnNC8Ryr6-`^X+O()}&?LdaXRAzyX+?q`|=Coz(y^BLjCEjqEnmWj9 zAzwewXSA7r@A^4shQQmSkJ|m~B7a1hd*KK?Y!q({o6}W95-tY!g}ckFY7ot3b*-uh z<`6;H*ffWM&MMH@4+CSkvlwV_kAayBvHnHqA3~PSIUco9ZVJ~J?d7tvV_ZPMeY;Ut z1gL8npl8wJZ&$NP62KLhiH}Ko%{twu4U>B^ACqNwn+LED04~>0~5dijN9qIrZb6<&Ddl}TnvG0H!rR0TPi5r%*CzGiHeN^x3L>I)I1-`S&ar%{_9wUSrXIY;}bLObv5+U*(R7lYS4KRL(b+hsD zY-_KGF+8SYsrqJvZssK%5ma@d!bc$d@JnJf`Fbki-Orp=I^Rn(Klk3RM!6zLskn+{ zd!%V{K1+>ap5{iVES|*d+3`cVP1Im5s%2&oYH#sWku|PwJmk1T={0;2Pf8{%W1(1__ZGTJM1$^^QKg z94$z%&r5#UsufP>qn7<~@!uTOktEw}6GRaI)PhkkVF`rC_SD#T0T(o`BTgXt$onrh z1@eIgfPt9TW;y@AnaY3Slm3VFruZcU;O4@K{?%Pz1OJ~wK>A%uOC(|>df`7_6j}z5 zSgT;GdM(#jzT6R5CH<#GOr+7!D(Q5~zt7M9yVLt02KbLMo z8k_|T9$+_qX+CV5Kh6RoklzO{%%OkU7e_CkiXr7wQZzBQ1~$|>V?Xh88?Iw=0h13> zX)EIPj?G<@+YBV{ZMi`L_hB#{uQ7gmY`m*F+p}{MpY}Jwk6p~yYD$T%MxN0&!}&)e zx?b}ozk>8gyJ;%j$ zebl)U%hT!JpLtm`4A>)Ow@(vZ*dB)Q^Kd@w$tz-1SE6ZE?d){c z3ecw&fM_YI+N)5UW|$aJ%AxJThNs^mM=zonjUsr1xrS9UYK9Up_&An;!X|7 zu>f~5@o-DyyEYvxhLs#i_u-@$u1L}yi3=P(qM5@?u!$Q`fitVn+cBerh)YmyI; zYVH1GCvwJfy^b>H>)Mf5diI2@_3Q+dLK|cCJGIi@ffv0~3lf%D+I!=$$?oM_q7N_q z`bDIV_Z0h-s!~bxF!D>&)K}nB=$i3IJZ8+ADD!X5?*Fysa~Mm9xvC`uDEtfw=@|I) zK|$_&B-xIUj-A_Xbed>mK8_C}?;JY~Yucn@>+i)JaF813NT2G+yN_feC_T|~(|y(B|J3k2%i z9g}3#_v?oS-xCe16`k?Hr>+N#yt;?XUhVMIQALw-4j1sULHNz&b1G`%gBWE-!Aj0q zJLIJ0*Lmq&f9)l{5Ad@9mxb4UC%_f?-p6~cvSXW)(#^k|3+~n&%}^K*%L*3Uqg~;F z=es_U+l-Elp1L%J3HCc80q4+klH@&X_Q$wTd8YUBDiuaNyqlN0u&3?*uo;9*Dja}nRFp&xy%)t^Ij1CPfp9qyJ~J?-0s?&Ft_8C zRJb!pz@_5?KIpaL-kRQSH$6*qWb)(lD6Un1p(L!Dg`NEU%rK46m z`1_%zCPnc0w=1)%Q$IIJs+>CIFvbd7GPn)kl23;S2rlW~~2hdxn z7oXifMYl#}^EBwKz0+x^-0UgpGV<(MR7Fswe~(`wJ`@+|UIXw`z)Na8N^A1TaBmQo z1%$v4ZL@rXw7ERr|5;|DrgjwtE+elyS-Xbn-?D2;YZo|% zn*>;hoDeSI%ts@^pP?>M%@Fwu42C2uDX~Jk+1%ZH`Sj~c!|i3HHZfLzOQ*hQQl-ZB z`LKV@4QwzQLh!}8Qy*$(Nhzzt_xD`yP0Vk+sVPn(-8px~BuFlLIQ z`uvclV_BSPBSsZfw9B4^gMTQA6Zy@|+;>*H{bEUaGBgD#j8Wj`BOD-jbak*yi#3_Cm>{l+DtShS z)geQh*Ki;_NHrcLNt4%@CyoG!xWHjIJXTVIOZ`)>Sa=h(N=QPyP69(mx7bi;a4QB$ zB(4Imprz3UUu?1zvYIN;$rNNzy$z zBHKpk>`Jy-NR8a}K!~j2<}jFBj8sHmRz8t_e=bY!q$2#u9uFUtEds63^lU)1>ujvl zP+d5$5r)1#tx_nY$Kl?EE73Tk#1x=pvS}*>gfI*t342~IbsWr=D8OyNiM*uTNHDR( zMV|kj3|Gl?E?j-bonP210<&1YbxE-6WOQb7&%ciFaYxj>KzFI(0o8PFxLYZM-_E^$uuZ9_np>kAf2s@sld7-l{?I z2zD^paeL4A#2fXjP-BzW-X-HP2@D-LHYP81aI!nTKmkPOD#SZ`zSk+S)ZEvn$|)_y zmEEj7Yb&dm?FD@cN%u^O&ARzl_?Ap-)f+jL%zskdi|HMh>q*nUi2sqEy4}oCx ze}!)U)9Uj7PR#aS7E<-Y>RSUhlvcqDLD)u0QgTfpm?A&2hni}V?0mCntPdQ^NdeVL z8u4ml@`L|W?QsVSliD>+i)stKXX&d7ON!FJLtzjfr5v^fxwM9QU7%LIQO}WQadCY; zSkYu6AK9p_EeMK5d5m}FW4p%HB_}TlSU>eQg#g%7d~IV0B1%guXHL*FD;+RVw6!xB zHUQB0Qeb$O1?z35Xo4X#`*z2n@A1ftMwy}%<)o7u*~Y&Enf8breOIfynvt!Crm6l$TRubjC}5Z-?}s0KMALBT z*@%ZGGO-jpfnu-CTxP9hN?fl_f1)Q0xAAVr^E!_ivd=@9x_%awmBtG;ep$`lXykJ~ z-jq(PbbA@;nsS+Vb&)W|LPcwPn_sqo0i<1jTq-Cljl9fk)KByEgqz@MJT4TaW>89( zo>0qjXdz~j8zDPUhANo|ItPgLMDmj01b3W!69@OtjX1r9VuqEh9l^H&9$Dr>@7FV* zhKp`d&q#_aPaEnoZVMxio$AJK5r^h!EY>}A6c47isY=cybvCPeLYa16*Fo+dT^3&D zmd@1P=rEt){j5x5m-d>$rg?6i7=GsxmHio|q z?^vPH%6x85bUQ`%YWL?DXX!4j$~Mt@RR+1%^P6*C;ly$IX1 zxB7Q#sR1x?^O@+~!DB$fallh>=IV0Y&Am@tPwh9AypZqG~7wwV<^CeiU%hHHM4H^-y{% z9?$L!e z`04q1V;dW9Dh~G2-&|x31TFLFQBu3V*I^yEg&VI z%Bre9&mgl6MVx=|ZQ(B;TOwL_lBwFLOuv7Q`{C5K2F8MFlJE4a_3zr@h6|ow=k4vd z_fHzYBi*B7y60#R7#pzoLUs%a2E#Dm$%0$D;6+-0$H&hx-2NBl|g zS->GZQH{wMJyKrnMQG+5xGveW!5d$1QOQ_Qc?&!*Tt&lspUu!n#%>Wh$AH2?6VG*~ zn54qRdcI@N6x`x8*J(R#$Lf9t+*tTqTm3g1e7cg1p|mAmFmoeQ;kQ6mR-yvw%Jf9x z2{0maUq&2#J6ks*taZz+(sAWTi0xtzPdzumYTl0TJ};Y0$#mF_Y&&Ttmp!dSWs#;^ z>KlsZQCs)sJBQWcWp(po15^h_3%srxz*FyTo)12zO_^B^K8Ci{h>IW%NOKupbNaN< zlo9wbdo9u_oCD+&uOJc@lzKuycYAbgvb6i}`AkiQOG{R>>aPLiw38?Jh+V_(N+GRj zvc7eu5-OK}-aMBN_LJ@#@kurB#xMV%m))ttbwf66JKBkKjr4pN`*Z6^)({2xsj7F5 zjvWUg3u59XlEYuVU_e1zbvSghrLSKth^ZJz&eIZ~jed_X9q!QhEbwiP6~{KWEm$ev zT8D{zxUELTnHha+9Y z-e=Ubj||T3Vyjppyb^y+ThYhfW;E=_NUz&1#5z_OEO*q&lrw&)ax^f_Ev&|b>)`Jy zdiqR}n#{?hLjyxxl6#Tw0K7|dJ@Ayfy(5Bi8jEk`;AvD_SLoY8#Dkv8-+EY=p1EL2 zh18_jIH!JnDqlMhKvRWwUFU-B>d{YDy4$!pD%whGT{RPjY)rnLk(6H_NlO)DE=Gd3 z5^Cfok)3An&Sj}B0i)3w0!4pAn6mh7djc>Z_8Nd3p*Xi1|D}tO=8-x>|L2Ug!=b=F zBdS*c5vMcbRK}O(tZ{_S&-9l5N{;8LIzLIwhL0<}{zwQ?bCxNg0-Z@Ej(CPOTzQ*z zjz3oFcL(mU;mUcj_Lh*}pYHT7o}WsIywaMp&v`FJ=yU?>T1A#^2eDc1C3!5mzGcbMi)SQx)`-l(a#;cVUUHCp z$?yOoIXmACNboZ@vm9D&h~g_zI-?Ce%gT@U*4XIsKd1i5CIQ%O^jlLiov-LpCAz== z-IU2vQ|q|x7`XJFQF=fUF3@KO!?RU1XRI|r)$J#uD*&?%_b?G z^iGQRz9CN43y%?NvEohi$po5@EqtU0mhfLIq!uk~wxpr+{CF)HQvjM#r#-x5TUgcc zIM&c49H9MOUr39q7TrZ?qVVUt7GV3LWqFAef_~}TLSLOx_W*NOQzm=s>y6Obd2l7B zhr|TI_VQhd$poT$pZHX~HtqNVHtmgziHd9}5sCFwq5#hbOP6%XJT~db@T5&j)AvI+ zD5ATE*OED|m*#fuCGhFp_yG+vo{IKQ<5OWZC4=6<2z_&Q(P4p{6cA_OYAJ$Jd^Ai7 zuaOu|$QX{3z(fIG2Unko@IsAZHG*5KpNehYHysuGk%I7bTE97k@zG%TqfwMm9c}AV zZQ>Sy)n#uoqMn|blKZ!wuSOaqe&Ox$l899AVDlHsYCr%3( zc7a}Gsh>DXPTkU!n9EMf5xj!<-heSNXCLY7c(aj_V4mM2V79t>ta22AqWmc26J7LA zJ^&xE+pyZkHVTL1+*)bv9-c>VTbpBIpWp_hT`g$WuM`ZQ8gw<hN>1!$3zH%7haWnoB{Y=SS zW7njoUwe&q>om--hw67G$lt4z>~xoo^Os~`{cgXCiz~exzp!9setog=F*<5@D&Oq)O2l|Jtv`30l*di=F#E0$Hq=b8@+eeL~Srs zWx=_06aQi<$)vr2*8gO=3zZfT8Sq$7QEhfY{s2Wh0P$^CFC=0vJ&ti} zKRn|IBLwL4j7bCr(HM(FaD=Ug>Eg3NgEsN(^a5z9yjH}~KsC3(Az0y{RLj;=!Cl5+ zX8~2H{}vZ8&k2)8@gL*F#5+b)yDfk(Gx{KG&DlCfuIUsng>E zWRB0JRdYnnCv1xO)2sQG-c>`-%2!ECm&OGKKk~2y{|P`YAp|hvP?m4~R#0Y2h{?{6 zy#oJ@0j{PLn+E>E>TTx%WcX9$4gP51kl?hPqGk=lQBXi(QF5R)@N6Ze5BqEwiv{4@ z`k?S3cXFwrmePCgQNWCY-s0%tD)*zfx69PygvKqPnI3n#R8mIydY=MLtUUNSGB95R zp?FGi*{go|i^6wtvFNJ+UZbJGM$X@Dq9f8s5K&79M>>N866!skbXYM&jMBP<+iUsF z#M?+WW9j;g5aD7WKJ^j>3ruQwRAD+P&abBa?;_RTMhYD@qgqJ~_en=M{Mhs*Pq7J5 zk+6@|&S*v?nKGDVC>>2r64+5+_8o+9!G;3~)JfA!@}qE7%ys)2;splStQI*5O@A|z zPKc>7umfiFYzk;!ez?N-t~2c``2#K|gbX(}eG_LjorLy3>#^WUfY2a` zAtbIeheDUj&MeP(IBMb(?vXUzawGVuNd(Fngix?+Xe9cDNDsof)kbF^ccih2)TAH+ z_;aUG5+gyQG+uOOVfX-besT^cWRdT`6Jt9x|kvC!b040 zS@Uyl9mkU=_5~|;bbtgsa11%=`);ICFrf^3KqDL1TciH~VxD)`R1g(}o8g}yo>9t6&+mAKVd==k$M zzfiaYGa6fBpLKGxusR(1yv6zh;SO;f47-d0HMR%~qI7&fv@&CIcxFrCBN1D03yrv& zVGYT2`OJJh&U7(5Ami(jr&nygX@9=!K}yh1u%BMuIKTUp}^SKc3(A&Y(5>%+%B!@H@{Q+IBtcu1)+5(uRz~&%wI8 zR@0F0%jJ(M5(471eI`=v!?X|IDIad`{q?EbN`PnU^J?LMX72^KX&HzzX>4Zx_<(+g z0l+U6M|YqHFzP9grsp%?9ArLUI^Ik3G(nh(PIM9^9T6Hvysw>|UT-y2**{LWnRCT52iwxL?C%r}%=`)5 zW34i5W6!cj)5G7QWx8&+0SrNzcPg8$YT21xlxLD##?=)9(aCHNmHQjE{^PS~t!k7efM1s)~QRZB~b~<@2+cY^%NB3XOMm+zmYsU znOOK(psrc{zzdl9?Y-8BgKXOMv~o-nFevmkvZ$8VaZ&OzQ7|fk^z6N2c6TO6$G&dI z6FoQ0+|qK?6dCSW`Xv6C@m8@~a+TicRJg_Ay^ud5*!t$iBVWR3;a?Y$pJ&VdRYhi7 zs@(>t=O~uDI{y2en^WiAY_86eptU!P4g}3%kL47rB`=?Yq!h4^~7#t2!voSP8ws5D$&bhZM=#$a1xoec;EXXMS zwKQE5K#R5r?9^TK6Exd%6{BHJ!`Rada;-oYufsMc?cyXY0O9#B|{h zxB(6JHY87WIH#jFerMHqoW$J1YPc;A7uy>IXfFdkfv;T$8=wEQ(g5$8jzjtMC)ZkT z6EyDbS47u*$|`EUPzjuU_wev(NhM?61BEfD4B+UGw0|WzSSU!WM!$3w-P_@)^2#IP zADBw<(KM-!lTCX%l@`+S_UUcSlz^7pbFw|2^f`Ch+y3Wn_pF+?SB8fii{vAdD zboQ@(ctTM@$Lhy@gs~PmS7T2DDe4Tq1|a;sQtHj{3$JJT%kVn1YpW<}-KXnwTNfy& z7k(!WwNim~1oxUXE@}o^=DxA1sDRmCl$@HlBK6w44G-h&1?ANtF*wyU-`AEBVkM$k~eV|YcjcS}XD)k=DH zd8SQzoC2H~lW(rgaywUJh3-`kc2!b_%~S_C24ri?w*)J^ZH~&$xwutG1+3bUcJRo| zGZYEMEEc?adFyx_T@xa0F~;Jx1%*#-Y4dKv;RGFvhd%T3K9*{$^mb2Z8KXN}e4U;* z<}-fn(hIw;P%6lj?@8%A4}lYV4y)>b9I}zZgAS^l6QLyTle8+AV+6scb2F>tV9uG)0Z|%5ZBVy1?Q|8s=^$hsBJZ$>}v%J8W(>V{5*dBVrB;hgi&5_bd4??=MAs zdMi=bmT9Uw5@1tKU}{z((`J8*yTL!K!kM8+X)V`&1DXp~&Ysek zPyTW-#Rf;9H#r3uKg6w5lQI~sRJ`dXm?OKw%@I4C*sQv`wjr}wX+bC8vdW=1-(E!5 zJHS>+VHs|%89;*)R|9kBj~nS&TFWO(5^l-4oU76NK#mPwUexI zO(&OG>0_Of2QyaXzt`O>l0mogpF!~J-mH0)7LkqLYo@_^dGO2b$E7tBLPoj&qQ;_6 zqH#O!oXGdnBnM7?iv2n!5*Zpp zKenwd9|Y#~iOBwP-rw4j53*r|2R$JxTbYT9d*semR@qV9`u*&BUB5cpd{@(|N=>(i zfUM~-M4WA7vY!H-q74h_f`1d%HKZpm69S$GCp1lER~kSYI_c~Cq7vdUM37j$yh;7w z3csZ|UNc#ohH4WBJ$5KN+<=I5d(p)uAG^^2X0pHnhanc-NmT0-Xq))_YjIieOpnWR zFHVH9O=7jX$l4+Jk0R2bCl4GBd_ffS&FZsAJziyQ;5p*G0zg5PI$6cTkj!THsLDl#D+LbO4Ag`co7@VAqhbSyMkQ$kwGeTfd5M{WPdt*rTz6Oqv7R74& z=;RPA@igl8bEsP9E0lozlXmQ<0)l5E!; zTAN|-P%x;3l@vGoaUpIs3YzK`raz4pIsIloI#Wn}z7d{K$Rl_~)k_s>e)&4(e|;iT zt>6|4lT-Te5su3?jKhyo<`qOSGQ=vE$i?G{D8y-G?T0>{PqXmt6V6QX&A*C2IxKr> zP;%mZ?#xZF_>>j>$m9b9kI8MgfN0j6b!{?0g0*vNmxH3akMZo8 zx(x&m7={9Oob4b;Yfr3#0^DC_TRuSW?^#0b5Xc(LChSRMTDxK(kD1ryh)>aqExl1) z#f>k}s*ze&W@yNG;HFdGGt-RF~xEXKO+frAAtUrX4I%Yxz7yE|L9{ z9t3%%<=2!6Q@Ga8i7eeLwkO{bQ*pNG{7Lq{2)`D5WOyEb>U0nJCFw6rf z=4xIT2;QE=DK1CeV8X5TbI`ePLa2k~JkLPecUWw~QadGHgQj+|Q)K6KBCihArmco! zC)~F76CvJO7d=LJ7^H2@x#Fme@fVIvslMw;wL1p_c1|utA0e}UQd!>KlR2ZZ7+I$k9%w}w$Yc0HeXoCoS`!dv;I!k(ieL_2Wabeq&l}+b{346J>jJ@2>P2u_l0Q9e zS6>}KXn=3JFSCJ9SF?Y@_a7i9R)by7lVbrkwmR3c=dkj%H&IJ5;jdTcvj(nqzZ|la zyqy+K*6PE>swPpJW%Oor0K+f)Nv<&RR9^Mx-vt0$skY-Nogld7jV*Y;19r<1A~L5W zmU|Z80eL3JnVyWN%hf;s5KS4pK#c^BA?+dW+E_}#lU@C*O&~`f^#&z2x5c`q34D=P z$uBc+UV8!V0q(BM6youwIydPJpb!m#4WtM=6piZhHeiJU?^&M8Tx-MNrU*WG{wW*m zM1cevJM#QL--mY;eGc30e|MRDL5dZlb%)os^$$IDve?!4v5&=@P8|-Y1%7WhC}_Ns zPQEe6{0~tTZX^LuFWtdRtnF`>=^g)Cqo?~F&KTbN|( zZq(ZbncSw8%Jle{=;ZimdBc4}Y|>Reyn8eHT-vLsxC*I7qiG|z#r9=TeC=Z59X$N4 zljvh`Mh5Y58Q*trv2&sg4#uK?tI+-L>?8cY%JlfRZIm9i<0{1;a9E9^g>-MC5USFmLrZhK$79C)!1X|ht1iD)3qNJ< zoUUX{ygkL@o5lsvs9Os&<&NB{2HC(d2*Ih6(s6H)BJ%rigP}(&O`y6z&22?f0!#Xm zl&yN!t*Z8M%7YV6QyF^DhpQ_G$aRw< z4U1}dsGOW04ns0Z(E8eY0J!98#-T)+Hc=9%=46dd;@Gf+A86xc-JinZP(p9$ZmIQE z$A3o;%eLlKcC1#;``6K8aDb{Z_Va z7pHb0EI3fT1X>rAGU9Af%hMoZz=G!z~8b3g=?(%gR%qf8q=VjRBQphkD`XH91GHe#qAuWOa% zKJ4`L^eX$*@+tc@%h=3}iu6aPHOvB{pznS9UIT71&y}!)i%TOsZKsfe-bM@GaoH}D zgr`JBS+l+U*<|Wwp4#Eo2yn6-2}?$^1vmq^Xz5ze)xf1E>|pHzT_23en5jnM238Dr zc|ooZo^g8oQ@a|HNAx~WrnJ;`;L!EGgY&0iSk+i}LiFT+ZEvDJE((WkROc$-7ZPT+ z&{+d2;krAvo4qQ}_^A6=Ck~wP9fVSPr*1hxdt1%^^BwNhx$p%^4DRr}y!oFI!ZRH^ z#MoRHbt|?!6-G19z@xvMRxiVy<0~0f4rE;?_wD?%4xKk5nh7Kme3zGtQUs3QjoU)YwFQ7{xJ+l7#P0 zXysABui@521MD6R%&gA`f<0G28_ff?k<@BI7AX^dcGHE& zf$O!?UuEj;>g4Y}k+6xc`s9Psm0D)(ZC*Y{hedFH1x{MhZCEs!*~rdI^f%lur8KJ> z93O%i<)&_VI>77FOtCmsq3Q*&0ARnz!6Q;y7sW$N>oYV;~%@tMYy)HgFp*L$EsZdrv zkGAE+ddlD|wR1THsUFAi3&d z96u!%HlcuBA5~muI5cs%ZvJjkKJw0Q3`c1&7C0-GR=milN9RR%yGUgM?CrR2Tzq{k znRjZpumXF8R%Ib_HFOQ6g1Nq6+`rdb1KAGHs|^+u4UIH2f9((5YAp+PVOO9I)GdHn zWmKOo25aYD;)bkK@WFpd7#g&Vjtcpi_^2xFbgJp@u}%`jQnedCAhNO>SpL8$F2d!~ zCQpq!Sguk*;^^82qA;H=m(tFar^k&L*j;P?g4|+MdONm+vgJYd7@V9SXyD%Nb5*)5 zGp9<~vFX&7=@6tHU;0wK8nM+U%O@}o zeh5vuwZS4#Y!RVt=N!9u_<_Un;W1FfMolm!A$`wKb;IGKG$|Ijv^G={GKu(VepB~d zZ>JB!7m);m%6fWwRaIty!cJZ2FWWz;=|8iJxUYO#=;-DiwD*5@oW8XJpEN2Y z9sECAtDe8iU+(S>ljA~*FTVJD+<*3Tb20O)uiI}ni{G!WPtE=O?2FRvB%8Wj#bvo$ zFTd2uIU2QkRabGT!yN4^ZlR%GE6aA<9%PF*b?z1eqj>Um~{6>E>B7)5^LVQ9GZi}eDd>164-E31L$uP}JJ`njxg HN@xNAd888- literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-every.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-every.png new file mode 100644 index 0000000000000000000000000000000000000000..de3115675f7a0894ec91272b6201abe65f24d737 GIT binary patch literal 15338 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-filter.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-filter.png new file mode 100644 index 0000000000000000000000000000000000000000..244ba5c2f6839c79652258188f31236aa8e14e4e GIT binary patch literal 12095 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 BivR!s literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..d67f02b34e8e94808dbe784d8a6f0b500520788d GIT binary patch literal 14207 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 S_x3jtfP{#waFw9G|NjDf{C$=H literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png new file mode 100644 index 0000000000000000000000000000000000000000..decc7fdb64cd92554e7982184c644cedcc341c54 GIT binary patch literal 14390 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-list.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-list.png new file mode 100644 index 0000000000000000000000000000000000000000..9e3473b810fff6b312efa3224153d81a18b1f156 GIT binary patch literal 9880 zcmbt)1yCK&v+g26gKKbiNpN>3xVt+XJOqaT!6A5X2o^lJA0Sw8cMk4Okc0F1-FNHO z|2~(ht(n=ash!#Fp6>qo>qu2)Su_+P6aWCw{nOUJ2lxykqF(;B1+Qqok}v0rzp-847LroCLO&B7q9DK)b|MIp6~O<@n4^sN^j zo1^}WoWeXz3paRjZ4X0fEGsMP{pBb>r@S@U!^HqO3}r7@4?-IpQoe8Sq;y2W`&Oh6 z*fIo^GE@qRiim9(Nckc?YX95{Jh$2ZKxm^!%5TG_z*>u814b15+*BVzFk9=gRxC() zBLrtdJKLXAOKWNdq^XM%bpoJ)_ifHd`GRei;M1YKfbNUGtsPl3gL|n~Lf?%kLr>So z3P7e^e`1g3+dDnm2DT2EEbA7D=PJ?P5-uL~ywwX_bZZUU8$E3<|NheUeG_`65g>YU z=qso{&8xC^F#M5P(=GSe`yG<7{V9nN@GbnSqi)lE&&w0N(lj83+56SAd?%mM%T|Ev z4oXb_7li*aK$NH}01p6!?ltJqA_{#;Gf|V|o3oB|;MZrh3@V|D>hW#H zyW2pf;!Xi#APDRyrQuUF>mgQa5B}+~7C5F0*nZm2!W(DkP!xI2ty{(Rb+}60E0zP< z<%7G|-CEjC6KUxA7^DxA-qs(}VCb zIi*ZR?>6G75qA85HmlpHv}tFIo%|ktf??*?)3`WqztOV2(>i*j51QmZmUZeyj!s1P zJXdyOM;CCHBuU3pd_s1HI#*fY0F`oC>kHsl2V9RY$w!@P-TUXplZFOQ05c!SBp7jU zg8CRnCJjkxb;ikLUSmpwmIpIxTWMJ9*r2S&w+zLR=OOIcVQsB3+Z5|n2y_vM3*Mn$ zn?)R-z+jP{uV@b&;pF!Rr3d)HO@xb`(V|s6Q-)Kgi|SD}pV6}kd5?9S$x?kyu0RlG z$n}QcNH7d_V252u&^Y&Yt6`_pNhg+~xB1|PMD7a21n z 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 h4}l8=0( literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-some.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/boxedExpressions/filter/boxed-filter-aligned-match-some.png new file mode 100644 index 0000000000000000000000000000000000000000..b025d33dc6ef754c9008e4183b6721851638475e GIT binary patch literal 15255 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%0D&zR2Qh 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%0D{1z*9gV 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%0AN8w{Y?N}|VzYmg|3a^9xejqD`5V3PTKUtg9 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-filter.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-filter.png new file mode 100644 index 0000000000000000000000000000000000000000..8b44270a3386519d2ca884c9f839c88a2055af04 GIT binary patch literal 10623 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..02114a380fc1430c31a75cd583e211faccf2b253 GIT binary patch literal 12938 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 a_wT1}vx2?}M`K~+%s literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-function.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-function.png new file mode 100644 index 0000000000000000000000000000000000000000..566347d7dcd4ce7f963d008a5d2d2bb87e1ae3af GIT binary patch literal 11317 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-list.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-list.png new file mode 100644 index 0000000000000000000000000000000000000000..d4ecfb82b092ca1ad6cc21605bde43273c41d94b GIT binary patch literal 8229 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-some.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/Google-Chrome/features/resizing/boxed-filter-resized-match-some.png new file mode 100644 index 0000000000000000000000000000000000000000..8668cbac705924a6850adde0cce0723b8fec8903 GIT binary patch literal 14023 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..d0f9e97b9e5da3a71235b36454187278242876f1 GIT binary patch literal 15612 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

    nIV1iBF)9U{y~P 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 A%>V!Z literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-decision-table.png new file mode 100644 index 0000000000000000000000000000000000000000..01c469c4a3f3261a972f6575ba692697b99d967b GIT binary patch literal 17837 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 a^0gAIZyo&M-+EyK0^fzDg-Qf;{Qe94z5i?g literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-list.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-list.png new file mode 100644 index 0000000000000000000000000000000000000000..545a6965f919fd3b2d132ce103ca1dadb4a39ff7 GIT binary patch literal 9872 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-some.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-some.png new file mode 100644 index 0000000000000000000000000000000000000000..b025d33dc6ef754c9008e4183b6721851638475e GIT binary patch literal 15255 zcmcJW1y~$ym!_+6hakaSf;Fv-|Jv z%-U>USIhNQbxHSI=iKLcPK7JVOQIqXAOQe?DlH|Z3;>|Np4JFZkdei7=T68Q$Wd8R z1gIP(IsgDNKw9jhs$0g%imxG-NtV!gjEhV$dz~oXIH-s{7yzjtV8$ST=q19HsVbE` z7geU4lWR}&hE7gb++7XszIh%qmo;v>wzN1`=&zJn&XmAHON1$sf7KKvBp1%fCAQNp zGSMz_lF2^2i>Z6I!dZR^cxZj`+a6#W;~yC28)HjgcO2nb^MXboXKHdO;q${Fu)^~U zVuv@1iQP3keltl_T2y3O@&p-I^6 zzw46+!Hv7d++y{`cy3(47LFD$qhu?h;doA2a9Mvoldf8JurT63o7c`xWP_w(7H zHt;AP`Gsk3{xSZxwfOBjNl{cIIW5YkJqxlR<`vg|5}@WfRh)s;`{ETGhXDm(i{n&y zvCC#Z5X&8p2bzgIQ^ge6}wTd;5vN2-XmMzd-%Ry$ZAiu zz1Oq1_;*5eWZ>4fhlj9gC)|!HMOZYZ=P665LF0veB!IGHO!NxgisRN(mGfW#EEZb* z+E&_3lQ+0{i`0i+2vys)RkKE%l^NdLn&jqO;ffi}X{Tt!;B>`x_jLI9h=jpy|Lho1 zgun^Exc;G6v|x?%58#2%->K8v^>WCRy~HN2|TfoNbdf{Xa13)puk2>et_|mWp_JJ;#u; zcx@DZp^v85exMacHQamC9HA%S5Fan0?|D*h;0tyZsz}R#3M1u9<-_Eiw@7=l*1Xpy zoab#n+rW%PO4{Kug9V-j1+gD~XipIO{M?vbPX9$&S>ho6<@AQe%%uA?Uc&|B+t6zJ z#lsqSw<+G*m_PL0?HdBOIaLjf{`Q0zgHiGQ!(R(6Ot+a{&&d4$?c|IU5J?NHmXva2 zy+yE)zngO=ARzF$T1FOK!4Db-WE2#H&Lr!dcr)dT2@n68Xt6fNUyl10SoR2PG+CX% z9}!R+e^GiGah=bTkdJiDL+1BCPyT<}K3d;DuT&*>m>cDLzsBXliS8^k9^1+A2_+=| z?B(#}Fv09JI_u8uWyITn(M>VKrZiz*Oe;tP+O@6U>$6?{2+tY;=lv=m#(_j7` z$P8U|bD4^>SD{IueCjyNt4ZN^KQmS)bURyF2`!jnjmZ49UbM7lAD$z@WxIO+Fky;= ziRUufcDI}X8h2lQ)i@gsR3?m+B4E3TmbCdWPW9Y3WILMy=a=a2`nvCe1^{9Asdp>Z zp@a&3g~p%syvF2;CUU%PZ?Dcc6u!qZ&T(S&x%E>v;7Q)xEN{k3)So^)-!Cti$wWUH z+?SB;1YWM<>^Fz6cEhg1QG^f{2($L>v*D`wPOY_VN41fy=i{a) zqwd|QkI3vu%h^XZ2GZr$9bwP0Nn(S{9NcZe=ljbgvlzIWPS2_{US88xftVF=;Bg~3 zonPk&Bp=jpS`v6%$lx3Ax;A-$MGN?idh<1$S`M{ty}Tna@ad1j+UEvxXx4o02K#qE zaTi-=-tfIVu6CjMtghS{v-OLffvL%yg(g>dOi#UqzKck2WO7t^3pKn+-Idn!43zwn z8qd9geMOAE+ID$SSc~~PGd%zk5Z1u8dlHTPwgJsKdKg*w}K{DXT+QR zY?2^5aN44=!@!k{N*&IQd@7d}aCdsu&=c-HYa=?<|EYec`#oX{4D`&S6Rdn6{*fBK zmt0bTDuXMW@;o!(B6aFsQWgjR8nge@l9jg=`w<<-e zJtxhU1j{W(bk`gA9+kR_F3}JDo%CBj;R1kv(7`Rdjog|3o6N{mQaA1aQucR2EU&+8 z$JTC7eh5;O0^`kl)@S&8?E8W5(Vx`voQb zz~X-FeN$aF7QBy`z_!Wz)$-QMS((S4;;~^&P+*>vlsV_jFCUx}*G<|=oIdzhOrudd zTJgg8aMn0*i*8LE$K~37HL>lhKL`axX65ibPrMEPsgk@Z$Wc94Bq68g;d|64*Tqy7 z+*0y}Zi|Mg2$Unce77K}qqBrS^%D!1c~k}l;C42Cy3KU(gvXDI=dc_&HdefAy9>CJ zD$h(C@h$aFbaxkO_U;mJb!u&~-b;TXqwaC)7chM*+_e0T`|IG1iVMjCJkU9!W9NO{ zBT&`u6^7qK)BBM{)caG-O%^rN*~#PO$(>-}8|mTiM>Te21TZTatpaZM2rogq<5*lt zFBW@$bbMT5Zff9lg4$J<;@YZ7|McCdLlVuqhaN=Nr-;`^?-D-$N}s<8=>H%?{DYw) z!RHh1`}upMUY9Apt81%E`JM(|4m-phEB3op>(IWB;raUyOx9~Fm6s18d?cRD_jaV{ z4aao)PmXg&LfSiswz@5o7Y3(~XLH^bM+&4mO@mX@M}Z?t*&X@&bA*NZq+)@nMnbym z@CHx64G1Iea0K{IGS+6zEfK8Nj?3WhOJBz6r1sqP?x0aadsSkG733dJlY_zC2ltU$ zUS~10zS}NyG;84NDxV!zX6>e;>mP;qYh|y*-CaGgA9xtrAM-0(&>Hm5dpv*CGA?A+ zlfn_SYb=#yZ;-B{p%>q^zj&-)JEIG_h<*ToI#Q(5N4w(Jt+t!YfjNOX2Wd%BRloaV zX@La+J>N!<6I;>cc>7L+g20?{yV=*Fe*Z5(-QG^JZ(d zPF!}k04j{n;AQV!w#VfR@eSqP^ZpNmwwIy2LVU90Dh)rjOMwm+x@nSA7$3|O;3ibu z?^Z=RSu*R@wYa+ewnwjieAD-0XJlhr#}|C;3#QuY?1!SV$HymYz0kcll4E*%t)^@XYIj z0=(~|?480Z_#JwsbEpEe@a4XkpGq>`ru%^ zdM^i{Ygj&Lw%7Fv#Xx8Mz`@h*^E7MsuJbg7bPaWU!M!=*jK9@8Vcep1%H2}pLq=BG zn~wUpvBRt=s=_f{x4SyJIctwSma5|l9KJ5@JTN;54`1lZAAMt|w|zd`<`uSwL~)}r z#2_HH{`|C`*VW4FYA$_syT(k*5qH%MTyTrUlo|WI{Ky@*1Z_4eIy)^BmKfd=z2^^M zaS^nzB-q~r&muLA{uooCN7aZI5Uy49g_^Y4PQa-?fQi(-UiTGX=a`l9QkMDBzo!IJ zetTg7poShQL`lt=Mfoj)HxJwd`4~umujq3O7has`s7pEuJ=4W6;5V{&L6juzj4#lU zy1m8F0Q>Z;E0ho&B?wp~D0Q`6yT3Tq>;7?Fu64K8;AV;`obJ|$C}CDuj5Z+~IT~C| ziiY5nMU05mH=>;;WNG2!=}mjSaZCJr%sN%8@isXUd%ph3cXhPU@oS!g;Sqy@iz#E{ zO&^sxKO=3d&2SjJUmvsxVF4lArX7aa?$pLSfL&Gs6R4X-l#4Y@&47uG*+6N?@ z=AyJ@6z<-XB;k8@&>9%y6d5eQZxG~X(1Mpe%cgH{f0&CoOZ_S>4Z!?n-8U6;w(j#%mX{%WFMJw7Y2(|ze^Vr`@ce{T zwCa0Dii-B!b-ZD6iCX)C*HUP8=?K@k(yIE5a@hSGarpV%KVLvZ`>&V9;D3}y|9$!L zZ^`MOYbesy!+6Z4=wsr;QL-R7QP<-Re@mUE>D*Hk5p%=eFW7s>V^+hNT((kAffxju z*{93+E&lzG>g#`N^Z!{Z^++e2)$i$-*$^JupnU(eZot`k%qKX#B0Nn!{c%l2XJs$@ z_<2*xXy`|DWnBgDxa)}b-k$&aNnmt+S^3g zA52SH{6oN54m)43+tifU97Zwstg#ZXa`GQ?UZG>2ybt|bYM%yg!mHBAtS5Jh0;YZK zVU$e`5Ov~ZQajO|Niq6-0FF5l8@V)}rMw^2c<&;|+Gmn5t!3o^KryIOGW%H2t2K(M z;8RAm+rcv*D0%C4Q>*Z%X+}^f}mZIN6 zt*(7MDu|PHcL^10@P|6Qv@3Xl&KDK6{fc&8N2F`qoKODGgz+G$t;&W$O9>Xw^;zz< z>}Bg+_v;M-=L+ku-P}vouB)se0kfT!RpK95C2?ED zV;v*!nPC0uj@OzmrUE5(_yEjFnlS^9Z#Af*UEn_+3bi*ZY=Aa(F9$BV;o!VpR7_z^5E`I~xV7r=a{vir~;%7tYZrYJU zq)~1Rl3aF5(%d)~bDQe|luC`_&VoX!sezC{yNm164La_!bI*6jwVtJ~s|-sM7Wyvz zA4087J*M`~o=m{U<=X|-bF&c4;&qP}tQ^&-uGk9kOwmhOR(f5iJg=^L$E?-PxJPPQ zIHP7QD4hO@2&`sz*2cxbG#OVoz!J)g!tCYQ!`uje7${4Gs zb6W$#Vf=9GxXw|jtGTVcwF6!DHG~-**CBkzq5_nex2=yv6;-5#gyF^4aEjg6)D0uK z=&e^zn?kL(FUfjOF?3Y7!m=ap$QNsd1$m<2a+ISMh%B(vfa%>W>*figgLZnS<11M0 zcTC!xp1PQsvB_=wE}H3!E{B>%gaDO^ zP9!nBAUN+a&^6dzHbrX^$a&C|UB)}wY&t*$gk#1&1_@aryTZ<=VmPOw!{QC0Wk#X?h@OHPUlXYh`S4L8&3g|HM zF!136+62)FiTFk=^UtwYUS+tchT-!Ohn zEmLiAR3XTN#md^|P-aBFFwE{J+J|JbEFKc_mDf5>PN%4mtYt9T?Cdhsz?6N25E<(& zbfnBi@mi-s$7i3DzBvZ3k3-Wx5QD`v? zjO**04Z5DdMZ0CHu%=tMtJ39v*+h%miVG~>+-&yCYhL>LHl55}UID8>+A2iV5vh*I zhQ>m`miDV9@@L%2R^L-`6&sJqJRF7L$|a53y{ih7uAZTngI{#bt4If1{b`uWQwg~z ziiA{V1sU!X#1)YLn(hZX&+2@9Y+BaxN)+6WBpG7QrtGgdvH=Ot{y9k5?Jdp*Lrvm{ z1CTU3^N|b<2=g$#T%4H3e#&_1t)`J879w~o2QWNQ03hwwhor>v8)`1y77Oo#!fz0{ zSsEGB2-Auy?^mu4QmOCRd+X_7eUW@~A15^}*hF z3paa~9!AQtVhsFfAXGsKF!iU;Ol(cj?w5%m2?-W*U~*6Axv&$z+y{hmAufF?(x6li(1O8~hq*pml zG%v~XW+T$L`rW`R!JnE@DSxc~wC2gam{S|2ezU^*5b%=@g5RaudIi^DTc|2oJ>l#1 zrH*Gh0ucMlC^Y)VfYDS=gGdBBv2Cu3iZj5w8te1bz|a>Nq!LVC=O%A^Id(+)^w`8`>tEHT!ByMjMUg`&$p>7lOCcIw+=tJLOm|EfQXmUV&(UF}Hgy26*6!drIZ8)g-ZbbLjbMF(W+Ov%#ZW251Q1dVkpO!%DjNXh%lkJ8W0dU`xysZJA zkz=Fb;&hIxXC5qlT90X07l|1i9B8xt3KhHCmmD-*$ChwB%`;?cv3NgFHs&i;5@%FA z+U7aHPCz#F%WbevLEqPh!M`ym@x4m&?x;d>i9S+pbrJq#Q8X+dRnOQ_;l9;xmgc~e znF=>P?*=vbq2HzIRLlsgV1@N@Q{(MTsAXwc8E9QIkll5)6~a9PUfbh*EH-kDM-xl$ z(3};<{hplmMlTK+dI)PXz|Dl@vKgF^CeO}51a_aLfjr5*K(X1@3g#@Pm61T&)d*ASbZ`wX-IEXCQ z1LyLZi=F|7yATDx{#W*@XFw}fa`U?f&%)c>Q%n(aRw66)mUj=uE$!hrZE8RFJ=q}w zyleSK?JpfaIy}QLc*ji7eq9_K_lB?S1q8b$d7%K-nFi>qYWD32>b6yj?(2pyK#?2= zqb}0v-MLR>=o|fE~vBXPj0+WhfB-W>=JPUO84R$5nR0U z`PY+g0y+)WuPMboi9GKq)jurpJC5G$?&-VH$qLyw+iQ~!InO>0(hKrT;IB#ZCYUj{ ztZ}fp=d?t`N}#wMbNSv+bi-ba84H?T7L*h2t)5T(I`Qsnw~+j8X7qYdjDB%3zVH)_ zUUgQI*~D&{^Ar)w3He$FCSmfj!`1JdsUo=t%inz7%o2-y{=GJR#Vm{-5D!mV^!4fR zEvRI4bo%$*nxz~{Ig4PgnaI>cpG!{^+Y&@WT$~rYs_Z{W&77$4_2HXFgNYxhgvT}e zZ7}bp*OpUCY<4>7)ZL5H?wiFb(zEKhOOQ%~_aQQBN8<4_9D z&kej?cXyQbnXw>xM-s|uGCbVq-Wb5+z+B{0ApXWlvZQm_LJSD=@}a&1m?OdY=tAe+ zvcK!=B>}^T&zC*uyXeade&cp*>(vb`qYqm{g|kgu#_6U(?aQts9IR|h*Qj2#j&sGY z&zc|ChMcnwBS}*;cr1N(%OAL`9&Q+Xx)M>w*)D`AtDk%iTiyAS+*X7HcOH`+K^GSn zLO!kM5M%2HcPYd%#O9D9HKt%ELb=c093E~z-A#X6;rSx2Wiy~WMcBy&^mL#dTm$F0-01O2pH_WQ9AjVZL<+EF$Qgi;c5!yy~C6h_>lrHqdQHH!{JMUtJNo4#6YZdTJ>dUj4oHt zJ<~U;v9=-S>!=i;CLCHoDy!z0+0w!5xn`%ufazhxOx0{}eu*?g0Mq5B`Z`GG?EUKl z3(HFgloV$RN$Y+PiO8ahoU`*yg3ebX*Ylw!1XMHM*Az$4`h!mG`PqLER=`(H-lC#C zwppIJ25BM)H`D?G-d?;dXPm&F(LPdG z(ZGtLq9TLEE~9^Pga3bqu)qB`u!}p2Q_>syxsKMBoq+D3qf@<;54TNIVXI%z6FR!{ zTAu6OXFHw`f-RxL(p$Zp+f&=?IHjibj=8XRQ|*dhnD3Et_382osPtUtkobI8nMID; zO=8{zeh#+R_1Oja)mGeB;{ajDRc;)^E9u!iO4T=dUv@!K>=>ZF2+wP3Jav|Mf(i%E z=eUqxm5l{XfioL*2NnQDFn`i&?6?S7IEN;26K5NmRO6S-&|gc_enRvNooSi!M$=n} z-)clIc--C9qoK%@e@>nte?!W3%9uz_x7-Msxgs8=`Uo{@WtjTSNK(Ya()&}T)&)F_ z7I`Ec*O_&AqnI$HT>Q3$jXFZ79GD?aH|Lda z3>y(&8se{FipF29_$OiQsVxha)l&FBj+bs=LwD`n(j^DX1QQh^yhL2eWViq6LR|ge zs(MC0%=JO+Iwd8!#aaBplo&QANaQdgfC5)+`N*J(HsOQ;DFP3Z-r(#un8}?cOf}iv zSk^}gRHc%)dU;tRv%4&S>W!?Gs46jblSU$)*ka5h(t@OJPv#b3a0^>b(=w6D$8-Go zQe*G%V^rg}m73pb>yvC^CG;!|RmK`kDA;jSsZvVR4TjG8XH#%mi3mpf`Ydnw3vmL- zxqOr23JVOyErQdT2Dy$taVAtPld7ZAP%A3Y5$M7ue_Aw0uS6$6Mz(fSn>^#p5D``t zQDT>a_KR+)(6ojI!r(-ZY+dp2k^DBxdHPCg48=IoL4cd1)&1^`u5Q?e^uLzeFv6JN zhhZaNsbodXf&ApN6O0g4Ve)(ZnmS;_FbgV+@~JJK&4y@KmFl|lpee!~0=gCioWE%4 z>3)wreE?Z*0>b5&L0X=1a#hekM8kLPY$1Ao{{)yH-`?-eqk0n~U`WUMjf7Kcpm_w= zRg8Z&1^~^3)T;7G8N*p6kMty_TaDnLFmx*h2UN)ao+nn#$VSUDhGWZZB5XS}k>bu- zeskr~Heviem7BPvrhIa5m>pjoK7bY)0A?K5C6$1>=%VH`MPXGyE1qxhw&QX5)NwYJ zt_)Z^npZJ0R-!m?Bz4kCb#%dyfk=xOu!#3WqIWcLRQPyo$T<=5d0UzU!qH-ByacP@ z6SlJ~J(qyEXf^4H^!xTX21LxCrpZu%Vm^89)_xpr)`HjVMPgI+%m>r-)w@2O!SW~M zit5E0TFkykc>5Gn&9+bF)V4{|5kWm0c0X%+aqY0nS#Q*<8st@Qla&E`i!0=a<7MFH zmR>^aW1eP9dqbB>l34JDXVGgZl}o4|29@Cm5g-*m`Go&ktM-@^k@u-u*Q%nXKzR2u zyJG)@TQ59B3=p;S_xmu;j}-vVG5`?EY__P&_C;71pJNnpu~XG5kH zNI%PYf$`bK&wtGi}~5jE3`wbhxWFn!^&IQ zM2e!?i2q}*QzY88DHi3uz~@weHed{w2Cnu(d2~t{?ps{+;}_Y|ypFuadE)MM10=OX zV;M=T2QPXMAdaaPa+3OqA-<$9zWfi8B0x{xiGS@heTJn9iAW4XGW4Zl`-mKOOlHg2 zO3LQZM}kO3ksg_N=i=Bfc{q zN_CAY8H)32tXAH^#N)LsB-!pY3lSMct+`w?Wx8SrUqthVE}iJVmLnme*beG#jH@W; z3={7-ATwDVBdo1EK6U@%r?i|tqUW@sRYOLy=HB%!{tMExmz4=yuGG8o&L+h4^j50j zEW*J>FQ-ea^$RW5UcBj7gJ4=U+6<&u`|4u>KnTukBa= zm&eu=)X^Z+^mNy;po$JGZ@znVfBD|Ek0Y}0fOu-qahVDQB%Fa`o=kuH>deSKrJ~YX zZ{)uoMGF727#MFS2AwSjMT|>Y?CaxN z31<^w5_3=c{FI;yEjitOLq48Q*lPU7C(2-A$^NOKSqz_vdE@ErA4c2o_q@A+D_i-z zaUghvr4(-wJ)^h#^&c5M1bmx=dh3<75z?ag_fe($cXD9 zK7lITv7<(^nxgo_Zo2~$Br=5z$-#!hQFLln1qp<8uk3oI)J@QuFTOmzwj}60_bU3n z6Vh&~{N(b?zXr1r;Y_j^CmQflLRE%sX1}{|~EeM1@nr6>Y=&(bk2onXEb@ZzI>$IKN@@Yk^FDFTgx z=8Uc992x;Tg@W|`YTx^hrb~*;%a?~L9L_UF2CMF##LEK1J?NiRN0EyC)dQ7vLh;BM zF27~e5iqYQD&e!g)x?ud6o#6JZ&(~qBzuq@gen)Xok5C@?@21e+3{%~mw{b5rA^oP zZaeOed6C%MMsCzjzAT%Y8b29k9-g|u}krn=sP zxV&~LJ@c)aIMXPDjZf#E;Eioliuw%_U!kkusMXXIAbbHwVyr}R_=18Au@p@TMR!=r z^$e8twQw*KPuX%D#t93onM30WLA0~RyWx0AfU2~r6Qksv+DBCPGULD=lMQF~ku>5_ z-SjLt4Ds+UTD#9l2_<9i4juL0>Pv$5uis*oA>=^;ytN|*A*E0tSMfyGT`esj7KVp; zCE0Sz9LRBpCR_@up>iI7Bnl1B1*T)?iqkUW*(9MABPXnK3QL5A)zpB9B050E><^Q6 zrtK_5aTQZ4(v*k)`e!c%6|I$DvClR*9qaoeMeM*Dn=t#Hh}CK#pmH=*s2D+h`PG^)|cZHvu~R;D%b#E@>9#1 z#rj%aQ+fSEFB+|w^k>w*tOY1?7}^Lp3Pk0A)uLhmkYXn~F+X&BNL3j7_1%tG4rE!a zBZ57DwSF zlwtqgms4*W_!`sr&EW2_LL%W`z=74k4oVDBioT~7`%jxjEcnCcdt@O2@;ut9W%0l^ zMg}@Z60M{mgJp7xkRBObB2dJkjVvaWVYz_ZU+7lPN+wCwecPH_QuArj_QgIos_Cb| z;ySIabyNrx$k#-g?3msT-?Wy@wMe+>fDw2>#d=UKrQv5Aks9|W$19$k$!W5g;)HQQL@2fFI zFq)hVPmCQtWexr==MG-BdeZ-KuWW`&vxIbHTD0>szy!<(C%A-&p|PjcXuhRi zlblu$8O|JQa#jB)e6&GDii-Hq+Qd(wi|5IX9Y#CYT=o+5@H4po)|^(c=($)!9XKa&`%grtf9D|ntTp=+&E%c+p&*EV82%kYwvQ_(8BN+9ZUU_#FDimWHGU(ihKrUx+pHq6EtK6h;bbj z|H-lZ^n-?I-szW)T-Gu6V*~R=!?8Vlo069IUMP1=5_zDi?41!00zXqXaD%E^I6?n8 zqnwhkx93P%`aTmA@?m+?gS>!fAbqg+>0k{~Dec;_MkVz}s9C$FACRC8gLh=N76=G0 zJ&D?ee93?Fe%5i8>7X(!(paq+FSI)O={9-VPh0p-=}D zmUIpR7}ce9?0=e(G7??&n!b$W_V|~Sm#}AV4c0nf|9Oc={oEE9?$*QGU+Tpc_A#a( z_if@lr_*j49zYSwZ)2bts|KWT>~d$mjfR-x6sPq#y-kZI1;XL#Y97x@KcW=r%+dnF zJTud`w-rD7ip7VI8jcOs{uHeP!~MoMK6dCld2{n14(mbuCh+t_gJj2`NvszRiN7OG zCF|jINke&g_fXX!2RCxE6k$MLw+JCJ#)*wEs(Ldeug1n$6w05C!4Iw`irHtnnediF zYI|c>k=SAkEoJoNu39+NdsQ`di9{EPNhweB6numiszIIl=Z?t84$}~y2A>sMGquZ? z4lW@2Gc7eicXBWm+PPbn+i6)}m#rITnoE1d^Z9u7`MQY+j6 z^<^~-_LhEjwJ7AvVfop7+;trxEGOEtB9TF)7KjNewNlR_o!$r^DQt zRY@T@dr)hGef+E9*CPx{V{xCj1ofUBLVEhZJ}6|$a7-yO?Mrn&d?YGgX)V9{y$bCv zC5OhEy1eBvT{v=vk>UA%2&*+U7+YZ{X#Ww- zmAU({!c=SEKw*ndVFSNYuhb!OkKYiTrb)gNJ8aIB4$3Do`qG>;XKfi(9KT!(BmghJ zc7M;iQU(#8g4Z!OI3MKqe%|`gxjo0Qp^P3>+5&3J|9J*iDGb3tYW2n;1B87VJQRt9 z1*>gmY~asF+t^$4np}+{jopzrAsIY z4U7NfYLtH|hZNS;6?sSGmQ#PSO@J5x8AwrobCBbsb0x;BsLueXQfJgs$%u}|4U3uTr zJPy;=WzL>1SKX%k=9$DmDi#s&Tb%v<(SW6G)T#ky$UqNQevS}w^1r=IHCtjC2leD6 z^*weIYQ^mnMQDxW<#U$XeDrXt<_P89*2bMYdCetBn*FTO%%qg;*-)h2r@MLhREZ-` ziGzwrEE&^!KD=AYp|U#(~XWxNhx@>>39A7$bt-8@QQMg-|eA zGgS#a?JVRq4q(Fq!uVF|E3$-bSjpIpDAmwNO3Ipn)n>nh5kL`n{!#&nISmJN0Dy@q z$(P2f@3T8q%S59qsnV%^oUAB*(2QWqu2cRNOA;DFL=YKggi$bVFVNZQ0L8LH_Hsm6c?#do8hLJZp^t;PIjiV3yJC}o+$!#6&$UOUb3 zZ1*6_$}OanAm(47q(im^y7#SbDf?Of&?K^a9PEKBH4NsBVv#q zEOUNkgNQaZRoV`oVmA`&V=ZOS|3IsUi}=hRu(Ox2)TpuZxwMGgVS~~1kzmCrB*fR5 zst<5W^2l7hHK2J{&Fvf2v71n2Xz@{rQG!$~54Sf)t(Y(Yj3LW1-T+!n?b%|HLnQOGc?CKUq9Q=(eeVsBw# zoywyp-#0VUQIr6s7$qo!?6fr^046Ru zLhKx&8W4tglWa{}8HtI}MtvkB@Fo@TqYsalVQVh?!Z*b()isEuAQg)(u4Me4;JUG_ zfIUAIy02s|9AqFyF1#JqP+l;MOAXY}{-|DQjX{dcGTZ(s#8_5}ebLAOrpN`br9p?w zu85Gkf!v_0Bub$uAlRGJQrAnI2okWtO`mjnZtq! z92xebk_r+?5XoHa9Lz0^{RCil8R#n?B9;kLoH`Q@24aGMJcQ35O}O8BFcgGQ4YCg% zLIM+IanLga#7n;9OfvlZMFj2qlJZt+YyF2(lN|b(6VY>w+~+41W6_PE&Td1_ap07>CsF)B#r3+k^{e&l?JlF*bGg0#S(hZ;z@^=Cg)ljszCmgj0C4hYm6}winu55C`b}JE1u-Xgmjp zC>z^>MHwjU5jzPpeKbj>HtYaAh)`m`BG*LKuxF(rkBm$fvFBs)5tG`mLgOJ$pp#=} zW=6s0N7RaYnc>8pd0u7Zsb*kZuaAoFo%Q#{;}uT9%#qPilEY}-38_XeJ?hMc$I_RK z^0k@iX`r(=9IKKTbC zV@4#I?fCEEFrow|O~J|@X878^ZC;W6d8tj~f%lFn@?x$;46%-+o-DODW!Z_OtgaDq z&)>}FlE6-wCCKa~<7t0}_JZW?VvD{jOzb@AcqKHqVgO;Ow+Uhd3|u zzY7Nd-iz8(Z=)KyxJ^@o2KbELf&-x8er68f6@}EH0{}HxKb#%|x}Q(o85sof zk0$^Cf3zUsxa{bBxC3%9-t05ffutFoioBag7aAg4NgVgN8Rg{*sV2OfVh=O^FWl__ zfJ3t;ugDvW=sWLC2(DK3iSWbpg-fZD1_1E(XBpHfIx^h%xJ#*_>67VOl3hD>MuH+u zc4~5Bp+#iFoZr>96eTV#AyNwm+duKM|A5HK%=OHsO5uw&SOUS#95S&3&lM#YV zf;FLxhGKpby=xA)`!6Fnfy?~%s2@kyM@F2#{aPxO=82ukTTXXBXI2XWfmn4H2Pe6- zsE(J;PGQ*tx#$o_4&jyeU^O&cHk~vx>6#U5I6<-3&01EaKPL zn!i2ZUt;;%1nVv^+JB0_VtX%1jEZ#3-F}%idH_=U`N~;+-ux8;0N@H-LMAo=Waaa$HBpA_FX&6U`IJG zIsrbuOAm}aJoK;as?Zw^@aH=z;rt0{M>w@-Gxt;KKWG4wrbi4#^&G~L|Ms%~VO)H0 z{A)1$&n-a24^l4F-E&-dr-szM2-x{@L*@%;YAtBp;PdyYz9{rsSE7RPxl6NT4!%(u zOFl{ud^@_;Sk`o1F811YK=vem%-hI!g42F2x&jaVlW~Ae&|+{4m-#5%B3kVgE-_UR z)wYRbN@58&&ay}GdgaH+bqsVTP=HMc$_x+JJFn*tKCTn3)M#yrzpcj(cS`x^GsHPt z^Ng44cm$!+o3V2-+vzTPMXUm`$yP~nBH{Dlam&obquY&YXhc0rOl|Ze=V02^SQ_NsF{h@{O3vIOk@r031 z36^HJ4QY3}hZ2QzMWE_{_Av~51pXp1;)qJp#5hfU`eLg@Sqq)2tlTBeCwAWXBg)~`^faj3?axajpG1`C86kX3;&rWe z$t)uH*Z4d1idia_rK-~r)mzjd)^l|1CTUyu65;Zu1bnMqXnfqoPHn~oOga~cU}EUp zVe9qdGY~DlIU6+Nh0kg9z?FC5P{-haOw=A`aUyq?IlFL7jTf`;U5LCg9z%ksX7Ocvx8eJAMEdl@a3FEjy?q{PK_0wW(5a)Usxvz9wM@VcBvLhIh`)4r)n7u21S*gZ^yv+v3%s5!b5 ztRoHwXlg$FiU^D1>x|x=b1tpAwq2uv+Xugjb!&f{Q0`t{B)VY+p~bL~bN z6Gj)LKOs#I&_kS?D6o;u^(OV)p50L;m&<KqyGM)K44aGT% zk+!?+{H6XVFlSAD;zL(PVAMw#v{+0ER1)%zSS#++e)07Ct0+6g0{BA49%0D&zR2Qh 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%0D{1z*9gV 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%0AN8w{Y?N}|VzYmg|3a^9xejqD`5V3PTKUtg9 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-filter.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-filter.png new file mode 100644 index 0000000000000000000000000000000000000000..8b44270a3386519d2ca884c9f839c88a2055af04 GIT binary patch literal 10623 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..02114a380fc1430c31a75cd583e211faccf2b253 GIT binary patch literal 12938 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 a_wT1}vx2?}M`K~+%s literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-function.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-function.png new file mode 100644 index 0000000000000000000000000000000000000000..566347d7dcd4ce7f963d008a5d2d2bb87e1ae3af GIT binary patch literal 11317 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-list.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-list.png new file mode 100644 index 0000000000000000000000000000000000000000..d4ecfb82b092ca1ad6cc21605bde43273c41d94b GIT binary patch literal 8229 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-some.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/features/resizing/boxed-filter-resized-match-some.png new file mode 100644 index 0000000000000000000000000000000000000000..8668cbac705924a6850adde0cce0723b8fec8903 GIT binary patch literal 14023 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..3937d89f9dc943b6906e6742f2e6fabc5201cb62 GIT binary patch literal 14316 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 q#UdnrO7c%orYcnnLx(g&cQf4W zIsdcH`rmWzUF)2?*1daRn6-!f?eF{Ee4h8+;c6P-iDewvzUk0Od18;QU}U@PaeK~ z!}-DJ=d?KwBZc`fqy2Ux%wlPm@rLm&e;4t>3&v66Y|is&Iy&iZi^5VF4{+K!epTO~ zTydWh8ytSP3=q2taN8Vc7>0Pi&)EE)ob}`(8rJjE!%(|ra^Mjex$}0Xp+Es`%xZM_Lh!j#+CMC7l*L@lhZC-U?3t{)Gbs33#vy- zNZ9*mBkcz5m%;swvAz9Vrs_YBK6o$9h^DSeVnL0(#k@~;$5oGf=0oZLQMQ+?|Us;%Plp$RfnUEGA^%u#Qg@o>qVt?jwXRkb{oCEmI^ z8bN?9T#RGW!O_uorjx+0Swz1-52V5O5%A|=v&zcyww+Q$(qnOWRxe!(`Dar zbg0ZY(gXOjvhpp_1Pd@STIg0yZ`g^z!7v~1I)m|*cK?*vigl+sdS`E5wU=8`%f~0O zPg}P;P-Ll`1lyed`s8O|5v*{WB(Jr z=AU=?Z28|b?}KY7!4IteNga=G?wV-!W+5L|#j&7TAt51azxV2qySpCV-ZTwIpicfA z8d7;L7NlJvt2@yH#eB|V zikJF&8(U8U9q8y_J^JVIb4)!g?YQqQZ)Zx&YwI#Z`G+JeX2uupmSRxryUU2h*|7!0 z(m-2ir1!_Yh{+Q;6;};MM#GEN zY$MnG9@U2uUsXN5UTt=jnU#~(smJX%!&+CRu&bQU9G~dT3`LqWtR%BCZft~GtA2$- zjEq9w5ke*Xhp8#_h#&Tg?hKeC_w;AIHTAL=B$a8t`L%;2=9K z8ME@Y)(OegvUH7A$@V-x^l&=?0HILM@+ZK+ryoJV!?*}7zZSNDZ5(_5oAdAAzx8hl ze|t<%&jtuIG+>wfWPSJpPx>a!+ucz7Psz>{v6I_zmPDBjlfJuio|k9QnO|C4=9Fy> z@Qa(bqQ?6HpqlaiBay7XpPznCoW#YJYV+FGyMNKmfq`cWsKbU*{Suj($;Uv6o9&WU zi!mnP*Fp{0@aQ`WM-C!&+&5O%C7GGsW~K*lfbWhzwLj|1TN|0KZjSt>hD^-8!_V*O4dRB<_SKm3hf+l(Xm|1y3LO&UHHg^8Y(0RUmRP6f)i}^7E>gYPy6UfKn0(vSvm}LYW+pKJ zrrb(tCM0s-%fr=tgq*+BsE~=ZcX)sRtAu(Nf6@8&VeSv8As-nIU}|e_Z)e45TL5p@ zm)d(m@yW%DdlsSjZ9;RtwY^iAw*DsvT!7#Hn20-+QD#E(n=!fDYB$8+hS&=l ztJk(?#s!guRMhzTpAGE`Ad=YxtnBRgKwojk<>*#SDM{g4cc6dXU^)#M3Fnx(L;+mI zHMXLH^G_SGW?+9!0?I#tZX|Xrph2m%CFEE6ff@~fsyTogpsp6tze#5kw9*GeeXXl;T)LBgqxL7>72A*U z%;|EEl*4L7qdou{QKS8O+_oJ?+P>WZ$6?`z%Hxx%GG}9I z8loqoGYbrUnfOQaJLqVeaT;;~&2s2HWwk#1skO8Ug>Hs@hv4_GhgZX4bPpb6e8IxMxUl9R1ODu< zJp{lZ$oS0xY9;6+M+Hkeuc3h+`K|zC&%kzW=X>+HFky=lM|McVMmPRFgx<_7Mn+?a z#nt;Z@UuEw=_*;pp5xEr?d>^Xp&yc62Y!19zT9K|jS@b~?k4|>WLQ$b8T{U*vgUP3 z;gOq{x`#(|!;V<=B%j#9rOSSGVMf4x;2YCl9q+}t&Ew-Ug3O%EwvlT%0D3X5VMT4B zuW2ADX45_DK$xbba&Vx-V#*s+2aejvo$vrS`1vpZJ%c&9mRcLKosf)YEu2F7f>EvKrmU5wk2Ggo_7lyBY&1+$- z59K5gaopU(O^uVCgQR-8mkmus50{tMJOuA#taWtMt*jJOqP6qKDRChB%9ep?VO8;! zRT`sNr!H=B%*20Zd!%l+{p)(Ipczbpo>AS+FPu}0s_U7MVn2DD@EE91MVT;$P)maw z9a5e92-tn|9r&}efwGwY04g(H8l2$CA2IW>oNzRhg4RnQ36>OhXTMFk{=4>CC zMl3->zPTb|Q*%1s9K;;tdpZ?zhL)MrDD-?!W~{`(g90Mt@O!@C6=3sC4(-?CSX?D3 z5kv%>qC}kxI$Rk|>9RS&-Ks2=yUCD6MGk({dm$$J{mD+|wv@Wd629 z^}@lhd3s{{As~{LR@C9S_IoC0Ed)_SxpPy}!@Yv@GngBGm~nHi{P=NzXS)VbKwvKs zKi~pkh7FoQFOKrAd8P5ux(0Pk-`RnoMj_WTqb%{*!|U9`Yq8qFR?)v{WPUe|)c`M5 z4Ja9PgCV8+{yyhV=BiHVgZKIIC!cm~CEdBPHO3`C$&dCUEKLL1 zbrPj$0((|b%bD_}YKASo_8U3!pm*f^Lkf?2q$kZV=Y0@#@u_4P4Mh+6{!WUZqbcKn zxwvHJ;(V?vU{MYq6C!ZClE}%>v&eih_ZW2UZWi{|?23K-x z`8W9f#qQs6*ndn*L2&k;o;<$6RP%_4lyRZL%Hllmnm@b>u(ZDD!F%+aM?2Pe^fu6o z+x2)YmJ&zOW}q=PMS<;4!++I*{~!AQf4|%+>hkymvYyL84~Yod=^wt({FV@X`f4Q9 ze6a=lM`~jgH{`6bzOhInmutmk_Zby^z6>lGhL3<37b`BzysoTlT*6I*_=?yB6trZo zW>B(AZ?NfFSeiq|vc>W7togH}jq`<%$1k>rhOQ#Ni=5m>D(d{C!&;eY7bC~{oTVMx zpM%3VK0m+G%9k^Gs;Q-|i}fkkuZOt8+ry$_njZ4_^bZ)(w|gwqr48od){B*tl+oU| zFAt=0mu0m^2k`A^%Q$IUB{nMByiVcr6cXf&Rm`P}Wq`_17NJWJ*iOY`pSaiPm$ZbM z@9s80APZsvO-rU60VhlB8|?ZkyCAT`2_+G{U6pugJ@uvMHK3N1k?3_dyX{H&_}Gnt zl7i*ohtG|TrEF)HBjsPqU4Wie&#Jtlv4P(|e%4Vp^bi6#$Z*`T(V#Ml zP3eY4Z$*Pg$6k+)|AQXuvTUd(hZWlPs%LQdI6CwyV}ANLJ3EK|9-8(HDr4^$i~in_&E3t*_2jVG zeUQzQG_gN>)P{w`e|gNuZJWo2z9FV4I(h)cZ#9%`{hVM7c{)-aP63q}o5umTk|+A7 zrWV|(fTWZZwD&5-*(;cz_sPN7F9S-Zbf5anvqtObI_YrwlP@156H5vTOUHK3mI7MjG1K3Tk4ydOi(nuc)YDF!)HPnAJlFt^q0Fd=LbqF2ZUcAS4O8`rT0e zrFXSC5cp-vQC(9zki;7npq-DPz`?+X{|8{@^7ZLhYnn`@7C!0A#lC8oX+?#!qR`eH zoJ_$5&@nT+D)T0GS5;KeM}iTJBCQl*)59wBMkaP|FM^K*=ICJNmccIKSI^-j^O^#> zv9-3lwMIq4dDX;z@$~7Mx2I=AeFM88#ZsBIfqkTLK9Qb2?*syOHtT1O#h)wF676gU zXBvT~x3zWn`X4oo^xDj-$Z@U@V3Rw8tWG9e8n0#naaw{}W@7!4 >ShP;>zI4n%o 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�*KRMHfvlh)SP85kHmJv^`; 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 bmw4J9MM-b-eT~8Otbm%5mSVBIio literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..770201906b292f3da57196d3b139ed7d0e00cdcd GIT binary patch literal 13128 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png new file mode 100644 index 0000000000000000000000000000000000000000..f0c50d3a9d4540aa79af06af1b3e5621794e7faf GIT binary patch literal 12887 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-list.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/boxedExpressions/filter/boxed-filter-aligned-match-list.png new file mode 100644 index 0000000000000000000000000000000000000000..1becb3d21a3622742c9627456173af157beba58e GIT binary patch literal 8956 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-conditional.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-conditional.png new file mode 100644 index 0000000000000000000000000000000000000000..1b70995dce41957ae70f11c3d1b8237e0a911423 GIT binary patch literal 13218 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-context.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-context.png new file mode 100644 index 0000000000000000000000000000000000000000..fe0852c85585c28ec490df10d872fd2abb3a0ffe GIT binary patch literal 13528 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-decision-table.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-decision-table.png new file mode 100644 index 0000000000000000000000000000000000000000..7708ec63c8d2f690dd7917d6d31933e44649aae2 GIT binary patch literal 16111 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 z zXlS_0&tICF`g)|qlw5503s`uxk=HFcI?hNrfTaMcT`VAtWLD^!YO! z910GLzIgHC`ue(Dx#h^mP>*he3xf&adSu>pTUl9|d3$qn zYRi=lxNP8&3JYzYKCM3#1Z2td(XFsns-R{)Bz!( zCNEE+aA;$)&U;BAT-HQ@PLM7nBBD>53W(4T)$FP&5$Md^+|M&!{d84u%-2Nrw53oa zK&M6C?Jfb|j3&HB?4y}$P-=GVz}nlpuE7`t<^Iq-zz$qH;y^q>)a%q$T3Q-Nva9Qp z1JXBhcMu_fgUrv*1I-1C(x+eyYhB!N1_={so|%9wG+O7u&9UKO?8pH_1|>fcG^|x# zR#v<0t%|+9y^>NFFm_2E+wJG)=iL%`4@{gOVA&qxc(5bf+}sHD4|+0JSpW^BYIn#qye`(hbNy!ny$J$RRU5j=Sp0`!fJod^(Iv=#t4J3MOUH-)afUP zcyLey5*P&N;Ym;$s24j?Q0D~PI8uR)-s(5hNot>g~Q%}{@B6{8e z?EuM(eZcHoT*So0Kv*NQ&!EyNyRNRTv@{}~mofl&A;1$`3i(#h`UVE$SgcZ#=m^N1 z4-Fws54V8ojsICaV0mh4YP?3ZSU{YBGY4W>Sa)6tG_NK27O*>@L@+%)9k8ODoR#_y zgyrSs0w%fd@-EAzmw>xDIXStxtH1{WOMLU@O<=(!Q;IS(&HrDrhl8W7z5RuP!tTya zX;~Sd&ofFOQ3Zy(M*JLHa&n{y`SzmmonlL`!)d>0UZcU)Jungq1=763qobk1Pqcqe zP8y}Ff+M&U(gMt95DhPnQLV?^Et&CJl8TsDxvY;Km87T7pB+qYEH4*VRD_0xE=;5c z`1`wV)EvN=d$4H7p+Y14v>%h#{)o9=g>^u1uqX(uf%$^i(cum0$e0+{nV$hehVF_S z)W?U1*26{9N?i5S(>Po$Fup+feq>~y z{;y==|9|@6?<2>5`$)q7UgJMt#DUTA@$#^1ocU;x3y}AEc8;3Arvl?oz$YX!#Ml1J ca{*8IbWm{9e|H+xK0+Wbq?BLh($ literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-filter.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-filter.png new file mode 100644 index 0000000000000000000000000000000000000000..bfc2308b9ef234b29b739fdd825407fe66e93ba0 GIT binary patch literal 9695 zcmch72UJr{*X{vD1O=o>FB+6CAYHl;5mAb?AXTI(y>|$T^!5S*(gh4i2k9*orAw%x zL!|d!LPERe^_G9#@7{0S@4x?A-{fS@G$2sYPlQX*>Mo@$Dv2~Ad|4jxWU`A3km+Y4`qF00e2cr)HCyjV3>nPnd}*jnLCf3ewT=7R{#J( zM?wQ}@T7lNo&cc#k1XtaMTOnW6`H@72Q6K5?hWYdV@?Ios>l)8(Y#C|lSDVf-y1Cn*jC51@gEFml-T@G@4Bq{Ri}{3v89wgt{@7ja zcwr$lR2wt!S4MIWKoszD3rYAX^z7WX#%|`Y^=U}h+s^7f?2CS+kP!Ml!s0C0giY$D zp&=uDZ9O~a04eGGqHvfYD%avUt!jqIL*eJ?i5WUDlV+P)vRZve)!E)m0cAi=^ zxvcE$6}v0I>#}Kw0IJyd9J5m5U$hTCbJCE~38Z8qP?TZN{!Pr--~?`R!$B>DzJuhd zWYYyq4j#QwYi!VN)R?w!q>mkDcsLldGkqM84vq(td;q!jyH~j0(#9US=;)MX8C2m; z+I-wl8k5)3?V7MIbFqV@>t|=ar@5SzThmCy@IW#GbvK(ko^#vN^hX@+^{1&{h1IbyQ@~LOZ_rIDW=q! z5SWgsaN0ZbnA;rP~p{QSn5(Md@zw0(iF`o+O;SF%fDhy8Chx$_N-iUoO~CUXbJRjz4D8cA+G z>9$d$GqzcOf$y@;!l2m6ogQPL!n;_OYny?;);1tK1|tC zj@)Ie#P*&Qd{ocmaxb+s=*f#hZh;*kM%q$+CR)~K&}8msP8jB}jE3K%QJcr3iAPdc zd<+FLAt~N*+to}ly)gB(ZK+V_ZWi=YdSaaGo}rCPMNWLLqRnU&Md}FV_ngPCkb%(mI+D?BE2}piAM-YQohD$?F2>}-y8P0xZA&qW7KqG8`!Tt>!B4BVZ%s`c z2-}E?+Enj2>u~k6oWfv9Sq%zqPjCgQQ=|5nh2NXnrDN$Q^N#Y$tIIO#JTlVFxU=}< zW3h^E*NaqkS%UX5my0VD#jmUcVyR-$k0IXXz0o?U)km9US;*s`bRkAG`#J_S;-VvL zmuEY)5kc_$s(h!dNZ<1-{rvk>@{^^~3|-I!3^OfcKEBKf)KvfZxyLE*5j*1=e|uoU6a#nHaTqDZe^ zT~8d|Pfi%pGdyLbGICh)w7Fn-O}feNWRIv9hAa4R(#gyM;s+&GvX;PcBlA9A66Q>0 z+_+E0O-XcBUBla(`_s1S5gAtESJ%5S0h6Lq^qzVjhnAV2o%ay>cvLs1`>j}Vq>&MH z@%Q}ZRvsjKfIBwt@+by{B5%s=Sf`X}F(A)jC8XJQbV?w;8gj_Iwk{+xil%y5tUK&7 zZ7xC;+iebkL@(5LZf)LgvM!nZuDG_=F6Zv-c0YSdT~_O_9DV_wNI9>fg2qoKX8J6f z5hixdGD;G?=~f@4>>LxND)1H#0wn2-vGIvLa!s)b85yn*tWk}-pC|HR^De?j;p9kN z_wyZuJ%;^5`OUmt#}Kugy4d87%NVvg$FsLCW($giV@nnmt`t-+)x3LD-7GDgKcqK7 zOSJWim*r$XQ(ynC8K26;WK$&yL#0tU5<*ne8*?48pUWM~r)P2=m#%PPSw!63)KMfXtpDAjlEJlagd>u z$K=~hZ_jg%@^O^4sJKV}xLpI4K!y~4E#yu4c<-3Wom;nFTDC=QA7C(9(&2QmYcs?`(^1!g8J>74=SE`wYOVQQ!T`mQd7!#7FLdQ z{!qm4V4l|N=qo`@-xttb9O@%<>4YuzaX;^cHJz7YWhjL$obgeOa%>lsN~H!g)LOQB9{8L_2#~7urm--yn$#qQUhLLTgsu))WwPNnT@ceptF7Wix*Jt<>qG~q zqe;*1T}t~c_lHpQN2ML_PEWW%ARiU(QmSg?hjKMn@`(sKo?vw75oLry1mA3I8}UYy z1w;qw%*^3DJk^)`ms^*au*xd8=Ci>Jhgn}U-1MXLYl>cOs>&_c!mhI+p|GZOOs!MU z(h`}fYJ}OFi~XU}4Mrvb<7VTr@x%F6@!Kd=W;32RA;!blY44}Jj-S@BI{Y#uz-d7Z z>GyUkF682H?x{=O6I58FtCMs6ZtJPDm6iX)sTzF@+4I5z{3yl#!TBK?(|j}!ua}fM zzc{BDl|3CEhLuvr7RFOkzS~&0JsfTOn|R)o|E_OWtw#%eN*SA5U9D2+XWPe~%4)nk zzxY#~tKgepa-YnVL)}-e%9`OuW@bia!^b+jIUK4*Hn!jO_!g#T7PK_=r>3y>hC3x1 zFUUyB_4uf@3o1y$inq4tO7aY!Jr{OmP_=Z)YjrGal-5RA+rGs=LuJ zx5f)Q9bIWi5%Kp8h0A*?ceSd^HRu>4W|hfmex@#7)1D@ln|gCheZ&`&1% z3Q%f7LKG(_HDzYC_;V1kd|bPS2{zC}Eatpa<4&0#A9E+kRYD`9nI10}9E3WMuvoVt zF=No?N6qD4Kk_JSRq5s6nhgnET4~Pn@c79_hw8q9dv}^2#8U3u%NvnK78{kTR z6M8RRIjn1^R^x?H!vlFWdgome8qi3mE!twQG z;)An&F%gY+6E!lOd}JLxrbd5oE8Li==UyE0D86E(+5cbwRNKp=MQY(ZwIzW7szJoa z&gRegH7yQ`9VyZrCPJEP@^kYF(5k2?W0jii)`6B5@UW_uDR6kJ(PIR^oL0YdU);F# z+bKPEcaIP3yj<>-b5H7ZNc_~3o<6hW4B_E=pwnY?n;&J6D3_LCvYSavfr<%_lX^4} z)(%!-O5*1&F7n3BV1HR2Y<7iu4ZggT^vDQp(|(`FZ}O)mzi#2tjN|;t7vvFVG==2F zXe#+7R@(?>!j|Ofhd%T2T_&97JS%#5Q{Gx_`v9DY*i23)Hbbu)V1?fD(e_3-G>gg1;beQxB1O~$exSI>Q($d}TnVDv- zT{4|tSmC6dny9})PgF+8(%>p-r|5Sc{9r0AEj>&b5-Z*4?6$N;dVxON(fmF%JUKNv zGo5fi%ePDy<6W$q@46yU(o8}daer+RJ-t~}Qo_$>(rm%2>*nt6d%PE7S%J%GzF3NN zVRf?-HdbPbsp5Q^{z~T+H;jvimuGTnD)&hzwEfqe z?8qI>=MfQxi~AoM8!yK%E0y`G^|cD~>)g4G^Ux`MmL~8^1h4Khgl1tN0|qhM7~5bs zW*^ZWml&6pgR-`<(c+q>KaO;I%~@AG#6LhhwykWr+NK2@d%`Z*1|9S zA=dVG2Q2sVV1jzkH%^xN1x-y&Ni{L@ckV#4G*)?Fj?77}Th`C!il2_!rPaJGZ?_GT z@{xq_sBqCNn_EaqNL(cfITW8;M?@gn+hd9h z*hRQ9;``!Ho8fG;L&>cPEzU9fX+9X2^T?~)78Wjad?~{4_cb*;Yw?(mswt3IWqb2N zFy%f`H>q~6lIPkiT~5kmBTtpaf%1gpv_9o$xz6v+YS6uya(qs6zMW<*|od0aQL`=wYBX*%*W&7Z%*4IjX2Nv?ia{hWL)@UfPbB2+S6%ysDN-d*a@u8E1D&`6_> zxs$-wu0XAmhYz?U?m7DIZiVm9w;8M;We^(m#hA*f%CF<*Lg(iWJ4b2UR1ti%&+Uq5 z`(~P&Ni6QSQ-%GsnU?VXsk*kE>k7V=n$%ssqOp=w-Zr_=@MNdC&9%?3TsS_e-h)(3 z7@EKu%yB9gI%cq>30qpwrqwPS?*A;hk|9bb;BzvMtC)Dj5TE-|Jw+(N#0kr?81r&% z?xn6iB%!;pu?YuZ?sOu2oYdN~<1{*rJM%PCY#K+Q2D{${I7pw#-;wW>j9xf9y8<3> zEc_eG<8#G?MwCBp>cC#NMU3;Es;-U zWGbeeOQ5+OzP0&Lp%vR8mTb7>AnHH_4uDTK?Is_2EO{fy1=& z^JmD|oY_V@&Q2#kVy5+t6SE>NUM()9Tw-pAQv4tnjO#?k+tYh*!8?6aHNVpPx*+Xu z8vjThZk`vlzWFPmFF2^fJ{ooKm#5cOROI+HB1;mR1xkmlEy&3=^DCQ4AhBhqT0=cPsM|T&{6ptJU~Uu z$VlJNyj;&7_6d%gm|O2rfedZ9Zf~JLXk55d9i;I&4 zWk*Lx8)rtZmnygRH8xIf>XdI>Aq@N~6f$iqO1V}g83s+sNU;`66%|FlY5DMAbKb~l`3n?^IgZAo{AblT}AQ0_n z9i(eJ&qcg^l{ZT!%QkCTPzY zXP&oTgs)bnM694nrW$oP;wc9!*B<6~hiS3rt+`I-#}4Zoq+nzYgQ1Y*M^@XPcCXJn zoE)BL!{Jd6^uP1TZX4=bhilx?u5T!vYJ9>)1KPr}NbEC|8m-+YWr&~_08u?#o+8kq<+21jU9kO z$Ec~BWD-7VdD7z~B_|CG^vebUDM1eyd%AHRby&LxE?738_%|b0q$|?@LR}8~p|}Ak zBjnWp0Hy2y)(msWe+E(yreo06x9-dKrQ%KYxXP!bB-p#dz!3_d#c}so8-IFQVV9bg zf|9#6<2QS5fOOq^oj?fCYg#SL6C+Sxh~C2g(aEeh0{|_z81_?@|G~+uvBLtqUcHGU z9l`WtC-O3+4^cjLc3U%nRAGzB=jvAr2=P+|1@+4@#Iuf0PIH;T!B^Fjh4PCU+s39E zzE;})s25$|oZiik52^P80vhP||DR4~V2UvsxDSELVeAaV{dNaUA(Q2H2QtGIrI9b( zp1oseo*U~_qoGUcFsZM9JJ(nm%{;vBs+99?BJN2%r|Pd?nt2E-Gmgm z_wNODh^o{4_?*C)7;GRbJrHU7gXRl#adCBggP`Kcjb)Ocw)Ti+t9%zIWKj4N>*nf? zJjSQSa|AmPzE>-~ME7SdNR*7}I?)N_`6i8?yDGgnT#%}fdCdt3CX$)_mz>PE+$jLF zmM$_4od9^h&6hKDzwt+fxw!TlE2xYK7Y)Ae{u&Bdjyv0(vL`2klv^|BpEbCcf4LL9 z-ef@Tv`PJOGFM3b3qEGn>0P2#34ziTIQ~#VKp=Ufr&EFW=kSl5qN1}@>bzXFjK$o) z*d$Iyr*@G2j%K95@5heTRVkqbB6#96eraS636Rr1QF{XZXspSL+wGqK0jT)Te9erN z4v_P;qrgBNQsA|6P)G=cO8Vm)1FhEAf!CES4iJKt&%%1mVIOTkjvjgI-<$~w5|cC6 zIxPejH_+>Y#jf7o3O71I(oowOU|jS0^WLT2q#HMGq^71KH1nIAFNYA%mz=%e2UC-i z`uh6PGBU*VIi*Ovbw?xv0RaKU=#Jn-<-1|9LE9OkNJ72$(MC!+dpR+(*6-d;)Vpom z5NIs38RL&=-|yzk{M@&EAvX9{1f*nH8aLlQO;1lJA|g^j?7uf)7X%yu1r0swyff&z`-ru{qe?)vI^qZuT5`E5gdk%G`M*-ukBe zXJ@CCxjFsK;DCUD@$qqR8S%jQjoFH^NqahiO)PZA>`VlrA#DC9rWzUp*-s)ux!Bp+ zWo7*_NWZnUwcEFE+uPe)SXkKE*;QEfrO5b*QQqg|#MHYz&(c_2T$H{%I{>|G)_v>i z>jx|SVB)#24PD+!&=9a3tPds>)0KPI<&9Y4k;VC!WR`41r}Q$zYmih4h|03{0;{#dJ~iTmZ>?_etmwZ$VHQjKs=I^ z3=R%H7N480a|sFxGN`tFRqJS~riR*@s>#X8QRRqNzUPf!%kz0)bjk~f@8&l_O52R` zMJc%)t`36#X{f71H&bml_1&UZQc6l44DbWylI>Gy?9<$9te~iPpX!;nHy&oUIaac*J(Iv*&r>3M(QB#BBDAeX5 zB5X~2(@z5ldvi~v|D;f`cP}!e>;5~H z{w(8j97fH#+@IO+@K!AK$oo7+)aC@%P+$McvO@VD1X8Rk1;04+88xi3M(1ng4Gj%J zK+vkDGhVi;s+qOetruuP+K?hL!QY$Sy-G29yJ!)usLT@nb_n z!+uI)V&Yik5j5Ju%4%$Ia8RaXYy)??&luG)IQWty{z&}sJt{X$t9WYP-rgPy3kzeE z(w$p}WTO}1w+7oI=)k2#%waYyF0L(;#YTh?GVfr#*Ta>Ew!4J~`spS?)`9t~1QnwiaOo-zND*M-14MfIuk$ z61)53J;0I!N<1zuuEelT)4*VAXh_q@$ZvDJ9EC!GgL#dJNJm$9w%)DxP5Gz9ME{ey z5O8i9SaP95w>#sdp|N83|I3?@py)D=4>FMD&s;~6L?IV3Ey}jr<$kW!|R#w*x!a-gQB4pPX<%LD65fdzEy zwwbGk2d2#QN3yV0N=nM~^z>+nQ7|3YkJW^6?sBXL-wo5!Ag z>Ay!u6=oi40LH-)0x`_Jzj`>b*<_Hyo@X=uHVgi+FE+ZRCo{bQcV!5E6Fc;FxHbFW z5U0suTAu$|wvIhA@_eu1i2sEfwpuVgTRNZ$JJ-No1zsyYjb`odLEXN7mAP}qZ`qG% zRXt-;oZg54h$Lhh>$Epy^N|yFA_e*QpD6m<0e`v+Tf?(IEd2Jh2l94pwpoRu>2+=$ zx;Yc0O+bsF6OBv!(!7`P@duyj1qSCp+CR)*j88xSi^W<^9jD(&=GMP5RSgKLRJpz? zu_22lAIeLFe%Db}Q)T<4ri3LGsVYE^J^)#~P_@COgW)|l!q2YY+lqFhu_1NH>3Z5gv-?F1Q*2F%m20!m0q#%DtL+8ha!^*2CsptbWexEbMJih=#ltu`01!Nh+$uhAT6`nGj8ZFNoFQOb z*z(N!Iyh_B-21O_1{%<+&Ls{N1Ogs*O=&%w;nlbx0f1?_KVUk%BuH{nB2OUdnFn_l O0neVOK}!@~fB0_$Jamcx literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..552ad90fee643648eb2f9c5a40d2aa5f121d1207 GIT binary patch literal 11904 zcmch72UL??x8|#&B8W&46a*9ylr9KJSBZdB>AeV2r1xG#q&E?f5&>yqKza)$6p`L* z1Oh0bLqZQ7=J?&2b^rU#|F5}o=dO8K1UMw8?6dcCp8f0-{#;p>jD(H^f*`VIaxgUr zI%cSy;Oeiii$ULLNiXiEpbj^(*q z`1)=;N9kSot+L`Gf#&X`lZV_Hwj42+WBsMHi}EegL>44>Z|uOqFXzPbN8}->@k%|4 z9)e!i2K~AKnOuHD552xmY!5-L#9N!2tCQy-2y?z0c?P=9GJ8@alU3!w1VN7aMvNTG zSL~Vf_#6t4Q_euICmyDK`ff*jaXL24e`^B0yh4BA*Qtp(n#`ZD8>0n%^y1LSfbDIW zWW{k01Lio}DI`I%oCtz~s*j^4`p^r(3ze$}TcJ1{!(D;?_<# zN%ehVU~iR>?^6|EWYN*OVez7r28K;lrr|s>cnMj71+cF_8<_Vs3VxH28bEtzYGkiRTK= zL%J;%yRk2d@}KB4p5O39#mGy#v0f4kdD9MGk$*-!DlOtev9FB2U z+=dkmr1|Yut7@eMR1}vkvr!~-)7al@MWb^atf>ZS1XbvwLOx-9nMvS${y6pU-6AjO zHN}eLg{txCq6IqPs+!5jN4Gp(@tG<23mO=%z#6*?0 zwBSP?8wtCrS+lPXvOeCO*~gesKW%Z$Bqs+4`AzYglDCI75kE_|P`grl6IUhIi6Bqn z4QCgZ@UJpiZQ4_3AemBZ$309RN0Z7$qW|EBxBfWaKRBn9uk1#w!&o#%EQ-_sm7eWY(Iy3oBIIN(MDvClZDrv#S^gihAsL4&uAe^q*>M4tiFE znA}?Mu%|Yx@L+)|+3SvZpmQr$4nC(9+CDKyM-^48BZ?|AS&!BI%1{M8Y$Jtp7EA|i zw5sY~`t;Kp?W9gursd6@;nWwA`o#9dfsOC_ohaf6_!%kB{ey`ksoTLK+A}oVWp+xh zZ$EMjB10lM&b7v{Fb6)DgVpE@8vCx>%jwL%dCM-fKg1N)HnI0z1x`mN>9nd|+SGSy)TV_Fy`G>46mM*QR8?>VRztW@{vJmypV5HiGB#|+5DO@NmNBqyY`PK_6 zOw;=toC)^$klq->(?j^{cN@`e2fYNsQY-S$8 z`kD!m={gJz7G;=@lE+12d%F@RO}E40RbMd@S5}Yfva%*kh1ePPS|_ATu#r*$FULqO zhJOeLuPZ z5s^Lf5S5fqKKrJ96v8S+dxG?%QoE(`PvTsErDIGiecFB?hPKLhlzd*M)f2Src6$7a ztlEo&APbDiIV^MLce5{7<9vtj+Ov8ebeF!j0o!iTYrMFGJ#0>k8(=h=dNB|mvo@_= zH00&!<$^7v+a`lL=`NA(Q6i%RYd#8U%@Y?-;Ha7pX`L{z z82%AysVq3WgbbxAt43t-aN-PP_4O00yG(^Vk`-aB9`2i)npCQCI>Q42{^oqH%Yqfh zMgtOcv+K{Lfu}yKy?Ye&#wR98vGvP=D0AMBwRa4>wkE9IR)~rswrz!xR!q) (t) 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-function.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-function.png new file mode 100644 index 0000000000000000000000000000000000000000..4e830734110dc07330927482734fc6ea41c083f7 GIT binary patch literal 10053 zcmch72T+qyw{1YBN=HDXXhbX^AiW1Q6sgiX!9wr76BKFEM5G2pQ9*hQ2_RjhgOq?F zgx*6!@9llw`~JD_-8T2#JM&WJn>lm7Q}$VBowd*2F;BHs>1a47#683eixdIEiD;Gadr`}rr2VIdplZK?D3O(%n{ z;ry8{Jcv{hdA6P;@<`1-*%tX^A8|5d;WAb2Rz>}eUrUUWS+vXg4O104$BP#)dMFrv zpdxSe;6{&5H^07}yChwiNH;Z*LMZh1{&-x=>$Tf6vz*jkWg>VH1e%K-s3QY~nKQMr zgTlz(2!lWus9?b8-b6%16bFGo=mqNqT2OP?yW<>{Z;>v%AP|ZQCM;vxmKM#HH}GQY zGN}3fjQy`Cq*w0q0nnY^oSb1tpT~{!LdmBK*nDR!JE*y2W<0170-si-r0kmZs4xjW z4?%Q%x&;bDOd*XMUy+?9LbiVQk4>$uuGY}MZJ+JnISWv8|Lv|SAt?blA1W#>Eu9$t z9=(A^r)Q4K!eLW|tC7%Ee{{+$e+2NCmo>w zXdKdjhmbXk3+&f}$);0%EN3*JK!4ZPt@iiogQD%Xf9;NGPPPaw2ox4Np)WKYtSZ^q z>~`tfElwuwVH?W~9Fc?eW+HG`=iUz|I)PLAhW6A*OA@cZQ8kROx- z1;vFzb$S-&#yU{`stnvH71aiB)(>d4&2Z#o<0QE<6H|M;Ha2+RsKSW{WUU$h?0|yu z(%#hef^QHdBh|(2CHw=z-qlk|;+w~Qw-~8v-0Js<`+JOodoKGl7s<_QXh9+guG4ev z+S&=hjV_7_y>pv!DmR%fQBvNc5oXc#^BXWeX0Y5=dZn~6z30N)&C8j(i^h zx&nb-5dQ+mPi`8ONd^)L+qeX>2F(DV1N|#Zh8_rFX@%FV|4;&;x~{1BG3Yv%Jb>XB z#HfwV1F#_8VhKYmAhWF z7JoDLksMV+D(%M)DB$4psDXyg!i=+{qreopUCZoj$pWL?PRKzQWsI2KuyOGW59DYk z=N5f}z#{mI#zaz%zFP?7bo(|)HAeW?R}PP%vZIb z3qPhxD8GcII1wKy(8hcEYJ zZTl*09U!oEa|DHkny?lm0vlDH`p=&m}}?gx}1K{w^YQd=m2_n@H5| zFZC0GU18%Eo0$GM1~Zf#VHwOt`gPpOch^cyvrzP!N7NW)qu|Z2Q=DvgJ~k-e<<5^Z z)kZ#yvT5lUkInjAd;BF=6|GreqG$AVn)c#o(#>PVf;;ymcXrWrwNn-T0rmzv1#Oh8 z_j+)+@kckm5Q>W4?D-;i1AF_e#OJS&U8W3bbhq3R9Uz60uz*E_4z_ioJKH+;6C!%v z(rzWJ9ivN1e6V-~aZP!mm(6B-OUoSpa_a>w#8qU+R6rbq5i&)2EaV+?TW0xi?!HRg zyQmB;X*$1An?E)dG__75i6S(oLK_Bz@60#C&i48jilEP_ndoHHpgoe#R+X+V&gsp4 z?o%p`&)rKFstwXNFLFJfJU0FqhI@?L+qurw7|b#?RdP8?)9DucSqsxj1~3&nl9C01faTp)DB5168VLZm+g1>YrP zVPAF+$fm(>3_q_(*Ww3SS5ix_&o{;{JbDa+xxe&w_vd5Uy!5&y9LkpxbXg5m_trCc zFg7wP`3#(qNub!!H|teoN_)M`O8*A2YT18%l4j zpJb5wwZC-POJ>ATTws!^t2>~$$f9dtF*`E=ArXm#cMwrOa&tCrMj^NW9LE+R#P7)G zo=3O*&L68`)Qwfg!Y5veGbeSu1cP}J?YL3wF_a?~bCsQ(T(ow`$nwDXhbyX2oUz|zA6?z&vcB+d@+FSy{jafM%llV3#?@e|%?s9{6 zkAftk4?4dxx3s!AY55>lj)7q|CUv2KZ3r+ZZUHMq(kl7iP7;&D#!^1@P1qo>Qc z&;IT<9ZhObpo4)rIFmWYLO1yE;7r(SAVg}*#qOU*>Q58#I+`VDfp7PgO&u7@+C@G)z-pW8nPT-9!BYdZ?E4Eh3D%)%58T)!%1g5 z3+%)1->VGD80QFjPmio5l)jn@$x!rCQMR;nFvQ%sci}R1lOD6PLq}9l1bNFGqVYTv zIosX+Wl2=5QizdB${$%bJ}|7mHMQpUL`+3sx3MKp_ zGdsfX+d+x~uej5Qm%g4OBJ)B>NIUp=Xf+eh8)9H&IXAoPKUJ6l-GQHnBBFgm(SA!& zK?`~)VZR@;FOg)FLfK+L?je*F2gz-!R@f>#qvu1GRjxW(YQPB(WxdL!3H^qV(7kbE z?p!|t!EDrMEoRnm*4sXD%ga_yPS$7y<8pM$%X>!fDr6(B^P(K78%PklRUK9KuX>_Q4 z*g56-!EtH+Sw~;{;ksKx!`3E@ThS{udLk=3M(rC$^k}eEi%I}io*@{~>Ri#Ak*W#p zPEA!wS)E+y8O0-;G1v^mQ(a>_QN(f7Iwmu7qgkoMstkj2F{_l8v3+YaWeaFcd3kMH zJ3n7PH(34nV}1lD)3XW_aCms)$DXw{l49tM-pk|T zKpl)Me%djdLH-1v(Xv}x`n|U?$$szn4nqSpJ&R)8Qfa~;hJr34t=Shw}uJ}Z!U?#g7+2Li${Xk?lWU?@X$4Lc2(6cT{}6a z$AHX9>(2<;7;!jS$GNtr82$xWun;6Cn)RD89zUU|7z}M*ilV%D;NKndJ-0?%DCLaw zEsbZg{FS+pYQ#k^T!(H;3oJ)k25qJsf)BgE{d2Zuw~B^Ur>RElzRb$G!p`hr?lG)`(+y!rxu(PkOGoW%e!NSXhSgZvCA)V0?NR@1r=2RemoY?#l7$3;Ay% z=u08D1ijBo$GG4>8a|D#i1x!wMCIapoIr?X zYQ9xS$=ABo(~8O*B9QtH9p%2;uHSE zW&{Y+IZ6S*3rqcfWm!PX9?Tf4n?XD-|FbN1F>vJABLlg|ZtT9-Ki|ks%Iq$^3b=c% z5xtuKBbodk68*o{)Bj#YYYn%C#%)IjYJ$+OQS-8OL16(K{3Xr6N27GjKQX|*P6?>V zE3B;g@|ch9_>i(UQ)~>==Yl@Os;-F0wOj3?Fgd)<`Ye+Sz;l zw-J-W*58^cb9THTzcJWaXG~^}!q&lfy_A_?s<7f|r?Vu3U$jaIGgXAE>(Dh>T^P*G zM!9wbe|j4wuYE#J4xGuReq_l!MvWrkNHa{~a0#}25ZfLR{qy;zWo(+{$e2gjqGhj8 zXAhCI>bw6gzb~WXzL~_m6bn+z+-4-gy27MCN5QMMyxCgh;E+<#r1~ogwbZsh`2f+k zen!aYF)E>^phd)8_RM%H3}vTfa(hf@~VDzD7y8pNfh!_`Pz(+#1W8AY)!yHs2C+-~px%#&)WYwyLidILsX^ zQ6xuB&qVR^=kE0joj=)1ROH}&Bv*ej!Ih*oPb2`u6Qg#W5>Qo@f08D`vQ0oK|9n zko5c5?%X9ED1Af5^g1K!m3cW?*~m!M%ThDF1uU496kxI+lQNBrg1;41+z`4k_)?Vi z((4i&T+zBq-hwIS=M8~v=b>uWcr%}!-z_OlV;VMr*X* z4+O!Y+x5dXw{8iH7HibMuyTW~7sS2TeDZ|+RXO^5d0yc?#Rm?glS`gDWpOv7Sn{=4 zXowuA4_e<0KQ&%jn^*ed8#WW&K6^{R=nC6>6EbLN@G<4Ro-)rl0D`qxQ`)pr_hj_| zc`J)Yxh=oPaz`1HR7z5V{OP4W*Vory7nTYcWMKOPm)10dMW?E^PXbv(Yg*h_5z(n*O~Jo#f=} z=cB<#FV8d3-yga#zB^GF*!hseDL0Pu@)DXr`WF~1_AhPcf9qW)5cDObSdz?2-oA~Y zj*aF6v$Gq6MLFZ1w#GO+L>s-FP;$>w`>LFis5dQsei7HIPWFh3d%w*Tb8z z@VwvJ_7x^(X5u6so;I!T1%<4!?URa%6Vde(ZI+~mP)_7MQQ5%ef+&Gj1vTxA(39nv z4;ckXgZk0H-Xc`r-)0wDw36VwY+Ge|ot0TP)=VtKc2&Zu-`ssH#x0SJ&EjoLY+?+e zyJUxw!E@}+{!Vd0>3eBu|KlT1Wq)~|!~v@CT3Q=HjgJBp#88`HZtA58m0|aQLABT9xou(c+F*m^|Ee zJo+?jNZS4VoJe(WlC-pJg2k}2B%ltG)VOj!{0N;(&5NW6aU#46A9Z4lQKkrQF)N&P z%qT)23>Hgui@3PB_?W4sN{xyX~c&R#>ib zb8`d4zoV>yu1A`QI|}*9%Qr-3O%v83PW=;KqUd+_c8(}1O3hHOI_3h755}>$hVyl} z3;xWD!0dwtJEm;?toTwiIz^nGR)Ri3eVc!2qphW>S7fNqk}NAXKK19Y&_wWKlB|G` z;w!XN$5F`a3-qtWewe%HoQbP;O_=bzApc^sria%V|ISJ!qds_MXdyq*uG+6!<69-b zZSLzU4kM0!3=AZ1{^SC~eC{7#$eU;GveJMZ4IFL1=2f~i04As;tgMjMmYd00__^N*Yr1kG&Ft-@THUfh>FMQ5w8;p#()1UdlSm(S zkksYB8iV4$p)vk@H*5b;0-tvW0re3X0s>9wg;Gsr-0k`zplfc9`#$pLJ1;0KrhiO> zhl4}9?nRa77Mij(Y00uFVrARekOpMkDx2vs#P0)4b^T>R9gB09J+)l$Teo6em;aDRA5oJ5 zZihqda=xck@Y`PN>G&ooaNrR`6Q;WQvdqEC5=?RPpl!4z5rR)kXXNF+^5Cr#Sr}r{ z|IPYg@mkH^-udaaSa@<83m5AMq(KV6S-&CL;ED^CrXTS|EK_Ur(8v zy-96w0oFNmuMB=psM1+tXI-?s#~7=enVS0Z&4G+Vfo;`cTO!2C)rcmdwFI$#xZ3== zyL&Y`zaL#&Yh*Z9Y*w)|r?Zc=M}|4PSZoO?%r~S2dVpVxlk}jLAJG$&M zn*nCoB$STg5^g)@{s~lw02U zQdHrr^D&XgE!u|K!zFNq%Kjg6yfGP8Oh9W17u)!&%z6e6o& zGah0tIexMR5=n{=IN*#|DKT1FU%JUi6^YQd)IUyJI%`q*n3^?DT#)fkXvz_0ifMly z-l7CW?(W{W(E|M-B9Rb%?_SZ7PH9OI0|PB^M{jpqPVSki>e4igQD6uHfgrrg=DYQ4 zY-IG5c$ik3^a*s{cTI|M@LhO#ZEbB$%_?Q08@Bp0stl#13x#@A=u0L#CSC*aBOfqK z{mQeAZJ(VZDzs)ze`-E6|6ZH6RZGdAjFpwPUivUFXD*mJqp?+7W(Ih0Ia27>L|YcO zPHj#^W;po;3b%E78UNFZgqj>iW_u^9b%mEr?C41W!H1}_I#7O#3!zWa2Xq? zjgF2I+}4kFVfqZ$8L4Fc`p(N1Q5y% z?}Eap1r!x0`F)((8fzS>K+{Ida%{{yB? zj%idrJ=1`b2*ew?1C#y*dyWqX2_Tg&Ti7S+4SlYYX_%SKa9GQTvOwDlmg7Wwj5?(q zdr(q(^rE2o5^3QvG@l`uEn6Jl1F@f|<3>Iixfh3|=4`C@B|17dtUv(ma<-EXsaU1_ z^`YH)6!qOs$Yha)V+cOc(q+@!YZR}(I@7MO2=4toW)3rzd~x=E(_uG19a_>Vo&E`k zm^nB&JbChDG#}7r&%{LX#=Yt*s2a=QNF#F0Vp^3^j#(8QNPt+vg`%*m5q7%^#c3>w!JPWFX1az z()xLw#FbTV-(;;ERHvNCo9MS*RjWm%b?B}_^|zx6J5Hao@$ZI9E#zS^A50(qOGRC) zvuK}HUEbrVK$-nuKh>bw;s7T7HmmG7gkvRs+pIkvA{}pb85%hKE0%B_)yjH(g zHrjSA=EU5hw`)4AtSyzjBN`d)?fA`rv~VxE<6G~LxYXA&yy$eZq-AX3XQ9x=tPcUP zBU-zvih;MUgU7LkW>(%S>aIpdByWovfepIiEF`*2G4Hd6W@; z0*42pK2t{wLb#)Me_ARuljPvL{I}Vqz;CrPt<0@jUF4R50t-0v7C`6vV zz~dLQwUyu)KmaSCKCwOFx*VwpUL~#F>6Srx;%@f4ih|$9<)ntpmTQ06+So+Z$hKyk zx$JoR#r*YlbnNXQ@V>kUM>7`$s9@GQMUDxY==-+gy=URT-0R-zDdxE0serrq;8)Ft z{3sK_BQ|85#xta-^gUmthq2h=F-O-XCz<^bdvTLq+gD0z&=g}IyU`Hu^gMe##YhcXm$Ng+p7)c{$`{k)raFNwj5W zgn2f9j22g)6oJ@^~g{5^fVu4c#k!@+0=Gea-;mvOrl zy~BuT+1--R&rI9K3>M$_+@GA{&R~gyHV@kECjEGp&rM$9zdvoBiZkJhypR zDtZ`p!N>8|ZcuVfV`Z-)zn{CW!*`*5I{JND>f7L0tOZP$jSZm$HACw0dAyUB_1KO= z*eVD!U5$^VZ%80S1>F_#q+y~at{n#k7H2ObIoYMICJu}hq>LIxA%>giVzHX?9~;!T zQqq|@9xPNzS*`viP@JD$Odk7r8WoqEoNNd2-zM6AGnCl&mw)y2&*13zIRrR~S4p3T z?;yMLCP}5S`H80MV#5U~Q^GfJxQpb^+;mXw&LkLs=(j)L3$PEE_b#R`{_2s*nCLJ5 z*;3G8=mdnrA{!^fu0}Rmsj`oqU6L6SD}kpoCux6~-SY~0{YavZjxNRcKAVP@fm>`CYs5*tbbf|83_@~iy&BLyjyp)+!=;!e^v zjs~OmlM-r-zI;x^`MwJX956$R9?vI{E)e_mutZv8_x*RffAMjOOAlR|rR`{{%}Tz@ zNcEM+YK2haj_7wEp8kjDk;j)<3UzUD`Jz`P67rD_H;!~N_Vo00bS$KE+Vc~i<6~0p zueKQw@d!R!>=|CS;No}?;d9fSW%c_#zTD>K=0Wa{DalKOTlv)WTOn%|9VRGHvZ0%f zpRwxkJ47dlrQ;`l`w|Ctw%Oh4DlgBJN+9^o$Kt&}E8;jw)`AE^Blu`ozlkNb{lx?`sQKmYN@Lj;EltewtK*tCQ4w(>+kwW7J!wKmIM~OB zTjZcP>$Y)2_;HWem>3I={@=|G_|Fb?bm@BHXp+76JP>=X<5=RjQMUmr-$^q-6?R`=rS*6#bnBa>w8mR2q4 zxxSrw*-vS#QanEC60?0x!Vnu8yI4SJ=kyKAns!*ha-UuHKHZAAvNE zB`)QBAH`MQ1f?&J2WoW`?LeyqAMFhn%@ob4-psE^_5l(-BIEFn&*2t#JbE40lnz8+ z;9WWo`ewRnP6M z3L( z#oM>@DS7}KWJ;>45=-oOfd^ux zE}FkL@C`wJZf?T+2Pwu@H*#<11P`^hM>yyM;}Cn;wx0+;xk+FHfqpUm|4^C#0dlEK zr9|%5MqhMk;0LS29Uuh27u}1)XSX%X-(&tW&q_5lsJ7`NYxT_zSdX|XpMQFw(_FWG zYWnUv>qSH-*k)B57I^5Jo6FT*V2^qdb0@zd-29xpxujW{4|vavYtc5@Q9k0)LukBu zyjC|EsJSz^Vg9A%p{EWAWF0*1N(mfxXOM{e-)xT2R0lv_9O#L%HnjAS_3QryXS{8! literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-invocation.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/webkit/features/resizing/boxed-filter-resized-match-invocation.png new file mode 100644 index 0000000000000000000000000000000000000000..6cecc83d8d7ca807fa061952a4be76c6443258d1 GIT binary patch literal 11584 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts b/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts index 549e11a2e33..32fca2cfdcc 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts @@ -165,10 +165,15 @@ export class ChildExpression { private locator: Locator, monaco: Monaco ) { - this._expression = new ExpressionContainer( - this.locator.getByTestId("kie-tools--bee--expression-container").nth(0), - monaco - ); + this._expression = new ExpressionContainer(this.elementCell, monaco); + } + + public async hover() { + await this.elementCell.hover(); + } + + get elementCell() { + return this.locator.getByTestId("kie-tools--bee--expression-container").nth(0); } get expression() { @@ -176,7 +181,7 @@ export class ChildExpression { } get selectExpressionMenu() { - return new SelectExpressionMenu(this.locator.getByTestId("kie-tools--bee--expression-container").nth(0)); + return new SelectExpressionMenu(this.elementCell); } get contextMenu() { diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts index c3c06e92d00..8a08fb58e81 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts @@ -104,4 +104,8 @@ export class ContextExpressionEntry { get variable() { return new NameAndDataTypeCell(this.locator.getByRole("cell").nth(0)); } + + get elementCell() { + return this.childExpression.elementCell; + } } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts index 71a186cc2ba..5409013e281 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts @@ -100,4 +100,8 @@ class InvocationParameter { get descriptionCell() { return new NameAndDataTypeCell(this.locator.getByTestId(`kie-tools--bee--expression-column-1`).nth(0)); } + + get elementCell() { + return this.expressionElement.elementCell; + } } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/listExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/listExpressionElement.ts index 646d99d4836..05ef0b46f32 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/listExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/listExpressionElement.ts @@ -76,6 +76,10 @@ export class Row { return this.childExpression.expression; } + get elementCell() { + return this.childExpression.elementCell; + } + get selectExpressionMenu() { return this.childExpression.selectExpressionMenu; } diff --git a/packages/boxed-expression-component/tests-e2e/boxedExpressions/filter/filterExpression.spec.ts b/packages/boxed-expression-component/tests-e2e/boxedExpressions/filter/filterExpression.spec.ts index cf742918f75..0490d1ef39a 100644 --- a/packages/boxed-expression-component/tests-e2e/boxedExpressions/filter/filterExpression.spec.ts +++ b/packages/boxed-expression-component/tests-e2e/boxedExpressions/filter/filterExpression.spec.ts @@ -108,4 +108,171 @@ test.describe("Create Boxed Filter", () => { expect((await jsonModel.getFilterExpression()).in["@_id"]).not.toBeUndefined(); expect((await jsonModel.getFilterExpression()).match["@_id"]).not.toBeUndefined(); }); + + test.describe("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell", () => { + // We're testing the expressions known to be wider than the default Filter Expression width, not all expressions + test.beforeEach(async ({ stories, browserName, clipboard }) => { + await stories.openBoxedFilter("base"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Context Expression", async ({ + bee, + page, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectContext(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-context.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Decision Table", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectDecisionTable(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-decision-table.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - List", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectList(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-list.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Invocation", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectInvocation(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-invocation.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Function", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFunction(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-function.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Conditional", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectConditional(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-conditional.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - For", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFor(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-for.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Every", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectEvery(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-every.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Some", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectSome(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-some.png"); + }); + + test("should correctly fill the 'in' cell when the 'match' cell is larger than the 'in' cell - Filter", async ({ + bee, + jsonModel, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFilter(); + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-aligned-match-filter.png"); + }); + }); }); diff --git a/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts b/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts index 78fa3a32f94..9e72f472613 100644 --- a/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts +++ b/packages/boxed-expression-component/tests-e2e/features/resizing/resizing.spec.ts @@ -17,7 +17,7 @@ * under the License. */ -import { test, expect } from "../../__fixtures__/base"; +import { expect, test } from "../../__fixtures__/base"; import { TestAnnotations } from "@kie-tools/playwright-base/annotations"; import { WidthConstants } from "../../__fixtures__/jsonModel"; @@ -1008,6 +1008,244 @@ test.describe("Resizing", () => { await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-nested-resized-using-match.png"); }); + + test("should correct resize the 'in' cell when the 'match' is resized - Context", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/1147", + }); + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectContext(); + await filterExpression.match.expression.asContext().entry(0).selectExpressionMenu.selectLiteral(); + await resizing.resizeCell( + filterExpression.match.expression.asContext().entry(0).elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-context.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Decision Table", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectDecisionTable(); + + await resizing.resizeCell( + filterExpression.match.expression.asDecisionTable().cellAt({ row: 1, column: 1 }).content, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-decision-table.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - List", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectList(); + await filterExpression.match.expression.asList().row(0).selectExpressionMenu.selectLiteral(); + await resizing.resizeCell( + filterExpression.match.expression.asList().row(0).elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-list.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Invocation", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectInvocation(); + + await filterExpression.match.expression.asInvocation().parameter(0).selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asInvocation().parameter(0).elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-invocation.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Function", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFunction(); + + await filterExpression.match.expression.asFunction().entry(0).selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asFunction().entry(0).elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-function.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - For", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFor(); + + await filterExpression.match.expression.asFor().in.selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asFor().in.elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-for.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Conditional", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectConditional(); + + await filterExpression.match.expression.asConditional().if.selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asConditional().if.elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-conditional.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Every", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectEvery(); + + await filterExpression.match.expression.asEvery().in.selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asEvery().in.elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-every.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Some", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectSome(); + + await filterExpression.match.expression.asSome().in.selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asSome().in.elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-some.png"); + }); + + test("should correct resize the 'in' cell when the 'match' is resized - Filter", async ({ + bee, + monaco, + page, + resizing, + stories, + }) => { + await stories.openBoxedFilter(); + const filterExpression = bee.expression.asFilter(); + await filterExpression.match.selectExpressionMenu.selectFilter(); + + await filterExpression.match.expression.asFilter().match.selectExpressionMenu.selectLiteral(); + + await resizing.resizeCell( + filterExpression.match.expression.asFilter().match.elementCell, + { x: 0, y: 0 }, + { x: 150, y: 0 } + ); + + // We're hovering the 'in' to make the width difference to the 'match' more clear + await filterExpression.in.hover(); + await expect(bee.getContainer()).toHaveScreenshot("boxed-filter-resized-match-filter.png"); + }); }); test.describe("Conditional expression", async () => { From fde68d3790f321e80dd4817e5dee9c74625474fd Mon Sep 17 00:00:00 2001 From: Kbowers <92726146+kbowers-ibm@users.noreply.github.com> Date: Mon, 19 Aug 2024 18:39:28 +0200 Subject: [PATCH 13/22] NO-ISSUE: Add option to disable the Extended Services wizard on KIE Sandbox (#2533) --- .../online-editor/build/defaultEnvJson.ts | 1 + packages/online-editor/env/index.js | 5 ++++ packages/online-editor/src/env/EnvJson.ts | 1 + .../ExtendedServicesModal.tsx | 27 ++++++++++++++++++- packages/online-editor/src/i18n/OnlineI18n.ts | 6 +++++ packages/online-editor/src/i18n/locales/de.ts | 6 +++++ packages/online-editor/src/i18n/locales/en.ts | 6 +++++ 7 files changed, 51 insertions(+), 1 deletion(-) diff --git a/packages/online-editor/build/defaultEnvJson.ts b/packages/online-editor/build/defaultEnvJson.ts index 2d7821bcb4f..5c06712afec 100644 --- a/packages/online-editor/build/defaultEnvJson.ts +++ b/packages/online-editor/build/defaultEnvJson.ts @@ -44,6 +44,7 @@ export const defaultEnvJson: EnvJson = { KIE_SANDBOX_CORS_PROXY_URL: buildEnv.onlineEditor.corsProxyUrl, KIE_SANDBOX_FEEDBACK_URL: buildEnv.onlineEditor.feedbackUrl, KIE_SANDBOX_EXTENDED_SERVICES_URL: buildEnv.onlineEditor.extendedServicesUrl, + KIE_SANDBOX_DISABLE_EXTENDED_SERVICES_WIZARD: buildEnv.onlineEditor.disableExtendedServicesWizard, KIE_SANDBOX_DEV_DEPLOYMENT_BASE_IMAGE_URL: getDevDeploymentImageUrl(buildEnv.devDeployments.baseImage), KIE_SANDBOX_DEV_DEPLOYMENT_KOGITO_QUARKUS_BLANK_APP_IMAGE_URL: getDevDeploymentImageUrl( buildEnv.devDeployments.kogitoQuarkusBlankAppImage diff --git a/packages/online-editor/env/index.js b/packages/online-editor/env/index.js index 6ebfe6c93ce..1992135db40 100644 --- a/packages/online-editor/env/index.js +++ b/packages/online-editor/env/index.js @@ -58,6 +58,10 @@ module.exports = composeEnv([rootEnv, extendedServicesEnv, corsProxyEnv], { default: `http://${extendedServicesEnv.env.extendedServices.ip}:${extendedServicesEnv.env.extendedServices.port}`, description: "Extended Services URL.", }, + ONLINE_EDITOR__disableExtendedServicesWizard: { + default: `${false}`, + description: "Disables the Extended Services Wizard.", + }, ONLINE_EDITOR__feedbackUrl: { default: "https://github.com/apache/incubator-kie-issues/issues/439#issuecomment-1821845917", description: "URL where users can give feedback, currently present in the New DMN Editor dropdown.", @@ -154,6 +158,7 @@ module.exports = composeEnv([rootEnv, extendedServicesEnv, corsProxyEnv], { }, appName: getOrDefault(this.vars.ONLINE_EDITOR__appName), extendedServicesUrl: getOrDefault(this.vars.ONLINE_EDITOR__extendedServicesUrl), + disableExtendedServicesWizard: str2bool(getOrDefault(this.vars.ONLINE_EDITOR__disableExtendedServicesWizard)), corsProxyUrl: getOrDefault(this.vars.ONLINE_EDITOR__corsProxyUrl), feedbackUrl: getOrDefault(this.vars.ONLINE_EDITOR__feedbackUrl), requireCustomCommitMessage: str2bool(getOrDefault(this.vars.ONLINE_EDITOR__requireCustomCommitMessage)), diff --git a/packages/online-editor/src/env/EnvJson.ts b/packages/online-editor/src/env/EnvJson.ts index 555955941d8..1c2838484c6 100644 --- a/packages/online-editor/src/env/EnvJson.ts +++ b/packages/online-editor/src/env/EnvJson.ts @@ -24,6 +24,7 @@ import { EditorConfig } from "../envelopeLocator/EditorEnvelopeLocatorApi"; export interface EnvJson { KIE_SANDBOX_VERSION: string; KIE_SANDBOX_EXTENDED_SERVICES_URL: string; + KIE_SANDBOX_DISABLE_EXTENDED_SERVICES_WIZARD: boolean; KIE_SANDBOX_CORS_PROXY_URL: string; KIE_SANDBOX_FEEDBACK_URL: string; KIE_SANDBOX_DEV_DEPLOYMENT_BASE_IMAGE_URL: string; diff --git a/packages/online-editor/src/extendedServices/ExtendedServicesModal.tsx b/packages/online-editor/src/extendedServices/ExtendedServicesModal.tsx index e04401d0fe2..85035144262 100644 --- a/packages/online-editor/src/extendedServices/ExtendedServicesModal.tsx +++ b/packages/online-editor/src/extendedServices/ExtendedServicesModal.tsx @@ -45,10 +45,12 @@ import { DependentFeature, useExtendedServices } from "./ExtendedServicesContext import { ExtendedServicesStatus } from "./ExtendedServicesStatus"; import { useRoutes } from "../navigation/Hooks"; import { useSettingsDispatch } from "../settings/SettingsContext"; +import { useEnv } from "../env/hooks/EnvContext"; enum ModalPage { INITIAL, WIZARD, + DISABLED, } const UBUNTU_APP_INDICATOR_LIB = "apt install libayatana-appindicator3-1"; @@ -60,6 +62,7 @@ export function ExtendedServicesModal() { const [operatingSystem, setOperatingSystem] = useState(getOperatingSystem() ?? OperatingSystem.LINUX); const [modalPage, setModalPage] = useState(ModalPage.INITIAL); const extendedServices = useExtendedServices(); + const { env } = useEnv(); const KIE_SANDBOX_EXTENDED_SERVICES_MACOS_DMG = useMemo( () => `kie_sandbox_extended_services_macos_${extendedServices.version}.dmg`, @@ -634,6 +637,8 @@ export function ExtendedServicesModal() { return ""; case ModalPage.WIZARD: return i18n.dmnRunner.modal.wizard.title; + case ModalPage.DISABLED: + return i18n.dmnRunner.modal.wizard.disabled.title; } }, [modalPage, i18n]); @@ -643,6 +648,8 @@ export function ExtendedServicesModal() { return ModalVariant.medium; case ModalPage.WIZARD: return ModalVariant.large; + case ModalPage.DISABLED: + return ModalVariant.medium; } }, [modalPage]); @@ -660,7 +667,11 @@ export function ExtendedServicesModal() { {modalPage === ModalPage.INITIAL && ( @@ -768,6 +779,20 @@ export function ExtendedServicesModal() { />

    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 HN@xNAd888- literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-every.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-every.png new file mode 100644 index 0000000000000000000000000000000000000000..38a805cad8e13c2479c2119c8138ee865607c502 GIT binary patch literal 15347 zcmc(m1yEeyy5$cZED$`nyK8WFcL>2f1PJaH+%34fySqd100}O^y>S|ChX0+J`|i8- zX6D^jGc{e+TBrM*KDE#OertVehpQ+_qaxuW0RVt1D08oG3ZQnq@ezKh5();=Z z<)kJp22@WG9s&R^m9lmNay;`{!#x|)*K!zg>#)(UXaQAyQ2 z1jEE+lYNU6g}iuPL7buG<>mMXLa(1=$K1ZLevAFQalvPu>-7!&$Z1<`@v08NpX&A) zp;7ovUU$<{2h#(>jSttRoAPrvXfWI^2Y$-t1=5zcweM)jS+B1wwaC_>Q zUhL;+Xt!~VMD{DR+pkfXi03vwl*H3c+*nUPAc_amqzz=*<&4D;z zT7ZT+4q@V`6=Hwk(H&X9ZQ2p&rX|CuBrugDnc=SpKyP>6An^iZ7L;|`w)*y8HVhHT z01?$+W7ufL$28u`a}Py59%f4Y_t10p#W0*i2!Ma{4;p@0{$b)gsIRhh2!QzTpkLeg zjc`p8bnlv58_Ii37B^X2FGI-Lb0lP&8UP%vB0G+B4wZXfQ7R&P!##IS(eH1QlL1wqB>u+c{koV-xp6Bf>!)Mo7WRI z#AA=6!b_MzoCoYCer+;l+a%em_|N>t7Ip#M8GN=QpMye7{k*8(0JcoF-r@uzC+EMS z><}&x&U(OYxJVThvCzGg;=|AGqVMuZ3eilJ4^wcQd0XsPR`iQ>a#7@wlQT?MN^w^7 zHN&E#pYI3mr@K^ShEy1|1!Pox7CnMOYR6@iyr04X~@ zXLRyzmM}_CEIqJJTE>a>b#N+;EVvvU9YM|~oM6`82dR+A$;!6x8r=VGr@{b$Ys-f9GjlXnvHyGzW z2EfCv8|MoXdVvpHz}Z6JufJA9o$L?pE&86fzW7v8mSmjm3%KS(+CNh)^;o8gEP@ zOVNx^9w%j{SeXRh0{-|);_^4mxQ0mmtNdDwpMB5T6cL=AKrdx*LX5r+G+Yj!71r|9 zgVI`eh)1Gk0NYSQzt3|sb&2dhW?&4P)YIgNI~W2r9yh$)z{ZD+QD!9*J&?V&)vqcP z89eq+Pdb4}4k-M`)%^A{FjoABUIQIhalcRowxpH2Zvu`{IT5=cvl*I}P^1nZqS*Bb zC;)gTeAV4?`XhXfE!;X0cg>^A8jCik>-oeBwJZ^1=ZLQ#&)(;c)b@|;c_wOKv$^bP z<*96s>Yc(f?6aw5^-20cw$(~KA|3_1h*S@HE^2l{m(rn1U){(wTItyp1!xwXe=Ebd$cNO-QeYF(}Ml= z`=3O@Q&GINqYX_se>AL)WAJ}`YTv@;bz{j&mxBTtPdD0J{H}uZ&OCND&0D5qi%bFk zvDW(-Y_v(a)7hrxWg`1dx6-5>uaT^@iP1k^eqec`>Bh$BY#(qejjEcJrKbAyG542m z9wv|7y{eAYlu|sS-p4*}mG16`QJY&+icp9^ZdVr9i`AF8z8a~u^8!`Wyg-+qJ1>vJ z(@G`GZD%olU0hAO$Y**T=Z@mSy))e#QCSWn(U`Qr=etrf0Ep;u82xs{(?S%H_VqZn zs$lxJspUjgZ#1!>pe-1|kf#(d2Sk>_l%puaubMYH`ab3UdsBT8A zCPETUB525MRe-B_dnq0fJ)`!^ zuAusD$XgP=_WiDwo~NS`hUB8*n5@USoDxt4AO5S~V?3&ZYsrupg(M=JEwC?1@ zX8Wc6`0I82^-?ohMLP9_+p5Q@jIsJ5LX*gH_j9@{06;sapMsf{4t3D8{L{|7K8&96 zlmxN7)cH*d-<~abX=p&@T2HU6`>>UWM*2-pW##-9n>hHjW0!%? z?*P5V{6vAy`#WF8CGRvRSP7;v+)F6&fOGpqvVod4_lF`Z(9L&e%|)rq#nkC5MxL3Z zlntk{n~1tKst)U)X@{ZA{i8(ovhkNh9Hfp8eYwNQ=J#Q0-S&-O_Aofe#3H>lIr-qb ze`6!eAeEBR?t!}W&@Hi{M2SV=P@|Ui>HSfoM_-CyA$NYh zBqA>GCZa}@+Z9>r*W;UJ60Vkzjn(@p>G#5VW6(g9+;5_Lt4N7OS$X?xfzFj;DJ26> z<+)+S0H&IdBmTzUp^&keCXggigK&z^pi{3n769FvfucmihQnly2%mOf7KpCbM!XSk~CmC>;;k> z4AZ}~*!bQXJU#Eb)M zVjV)&Q1u}0w}$qa;D-Gvv?Xw0$)~1kPuOeH2Tecam2H_qVLF6X4dU52Q8AjQW)b=H0>2f=Rdkn=6fif2pU&n{PRf!3wH-6G#!c1cb> z=yAIS`S}nTr`hLFa1m=)oZuEiYIN6KDuy;h(3(3%9PHzn> z$3*wXZ~8d);7Gy8wx07Wo(xRt>ADHscB5pr2bjfhZz=XxG%bc0tTnf;ccsFAtb}Q4 zAyp(iR4kv^84yKQ?`Nlpy`Ji{U4O---W+Tz_uLvXq!b5y&DDaM`r!uYE>!U;M7<0D zMEHyN9n{CEK|Nyk+ZH8L^_$R+^1K=FlYE9aVx-^8FFy$R>7NnkK__c#(oTrNrp?V9 z;8_>e4&B`q1SN(h9?GCi$ZvvHB)!Lt00WNKSWevAr^wMjb_~j8QQkmJ7yeg zIM$*T67_gNCI_C@{MOD#P~U!DAh7pc)d5fC7&=B;3qRkaTb>buzzgE+Iq@G>6CNwH zvmwGSn}4Q#4}E6ksGs z_IQEQb~5bsOcY>KGjY&<)2X|EsC7tOgs7F~w=;S+uBlUa2hzKYrkXJIl(?Gv&SCZURgLU(AHJOIOgLK! zYWToPO{8T)16553HpW5bjtRB$0?3Kcbg#ls?37L>dw_=4`YmqV6Jm zKu;)a!8kjmPB z-Q*YcurDj=Pgh^cC<1;{Yfw~C8&i|$OX!LlmQaJaCuEsm4#Ri>^y0yP+B`at6sTti zsb{iPZaK1qH9^k_i<@^rf zn|apwA>E!FQF435EFL>F!r6ofOrgP^GO3C2Z(b*=;D?6MD-Mjl*1@*(KN%U>hFxCu z!Le{MGP02fsasD&2@m~5)9YQ>YVPC8cBzGd$ys8UloLO~5K60rX5leu9A8y4u-16s ztY3;D!o%c)BC?u~K+JckCOcEZBepeY9eI`$pBq>NR=_b_d3p>5D>PH0AjtgT1!Qzu zO(t!>^anHOoZWaYWeWHma(04;a{Yx<1!)O=eQpN$TWPWl(p(Tpe&{<4o=#VLSNU#I z^!N<^dOm{`KmuO3Yc>1CLs3=ru&(S(RyVuxFSJIrsIDG>piiFRuTi%;igEPgt3Z`o>I%6w;(&(i13 z=|zvgKJ`tPMz*F5MFh6B%pV1uIN@koAU8ML9A}eV%uxQBi#J-d)ocZOq4dZ<<=Z;WAnM<-x;S zObHz~45P>6>v^D~&LHy1ak#UHCtbbN4teuOvT)am?;Hh>Vt#Jh-WAiji0$)xv1ow> zEW)MB{^47X=F~s?(ggUjPlFy)D2qsqn6)&r-J?0_+Y^4M zRS93LH3zt0B{QkF9r!=A^$gcEve@mHPGbo6iqQBQeXasFspk%iT^{Kxs@ti@KfrsI zs=Ro}T4M`Z9_qJD@KC);%7*!Fz1O5}TH(fH=;gP5x)2TWM6s{-tTB_$xKGxzcUUYg zd9AJ8%Jb6-%3&l!RCY9+)<6&jXumo?WB)Q zB3LJe7xW-~5p?flf-JB2W(qO{m%rpUaoEAY9m5)Ol#89ddW_Y`Mh&dglo5(!rk1d zb0IvT&-??ZhOrrL8BUu56enx#dP*5wbPl=Ae||buHoF$u!5YjSi#w>Nta3&Q-A&~n zzg!+Y>bVkqsE#|pjMmJ7wH{}>jWWacmt(hZ+zC=a%jM4eG9QgE4%T>8alt*-Tm5<# zG0`R42^_fVC$&+rFdrQ11LWk|X$d6m3NLr=sCd%Ux9R-vF4EK!rwN5;P=Jdx9Mj`I z<(|dIzK;IIq86P5sN79=(+R8N{3SXEKqNLJ4n>g$9|~WYt8qBGg()>%2C5NMbKa!X zb+I=w!wDp%8q3Anl-@^(*i;~i3=OFQ8s6>O>!D}qI2%4>ybk%{a>PVvRe579>D0`f z))tLrbPd!)TpE$|z2TUsY;+vB)9>YBL`>Ak<6PNESL}Wa$og)~9OAA&|LK(4{Mi?n zSAJTQl!KqL=6hvU?%K2H`Lt-bU?*(IF{1#J`N0(_fju#o>z6GY`AM0zvL1V$QzTWP zB{d*ox+a_O!FED&r4D4|vYl4UWAG-6C1OS$3jm68Y~NqBOy)#&ZC2}1ODWSTanlye z($KhQe6goN7axKu!zI|dTiSjt@8m%?Q{0W+7YHx+INQa;s&SkY3{Ec{_Rl>OnPePu z>`r5N__>e$#UT&3g%gw!Z$dwl+Aak-?NbzP3oFtbEsvO4I1~1z6X25>(<@y(!VY)G zs)j%PI=(Agn5VflqD0(IU|BZW z84NFO{jQ3Ob{nlY8J-5N)ZqlJ5RuaigiZ|(Ho{1{H2x-?7w@l}qL%4e1Z4LltORC7 z68O<*KdVz1<5sp>-nJC4UJnM3lcec3^n9M)*OP~qw!2@*pgwG8C{!k{iIta=_1_zq zjEhTlx0C#sf&XzEBhkw7Qo{6;nw*$4&ru;Yz4gSdZ+QSSqSEE#H+t^}(EM|>e&iNL z!d7lqk_ZZbezUsM)YL8X!24XbeG|uNhjpz3MfyMp0Kd*2R}JR~iNr8Re2%w-v0;KT zZN71GbGiyxRjogD3)>mQ1lph9$6^Bh!|m#pQ#}cU!nASU5v@6`KdfV=2()wTv0*h< z9JPH^yvbt10CF*gEvGtm*Yy;3zUGEF8|tud^_Duw0&Hv=3rii2?tc2KcV&c}5i~OW zty8?xramyTdkJ54jxg~ayG2GspS#gEp50&SLM)2f+Aho#e~*ydDN!k=^TA_KN0T^g zMJiWdLl>5{_dhQaEOM{>XB{Ogl zf_G&0Co+*<#A%X7uYz=qkLjHfQH{MaF;97cBvDTGD%K^D6(umH4QVl8xgpjH(6INu zC~CR=jR}xWj-ZifV-8b_y9HyF2`|aeP#pr!on*TczAph%(7D+tUm!abX5*{jSY^G(XW3&u zGt86$c@kqlkypra++IT-Ru?%MnqqL$Xu$@gSakSm9JZ5F=5vDGr>xwVv+)pEKhNI1 zJG1v~(&)0e&tx|3wtHY2SL%9EUCQBZQNJjdt!nvTNnI-4+|IDV)h3Y2;JF8V&+K~S(6|OiiJ3st*juPIK*k z6X2L@AeqT z6H9WCoht-BoXXl()5+W^kg5xa;&YRVZiF(eu`L9d6);;z*}a;<57^l&HUwOg_jio} zAlM`Ozi{kt4VC{qj{P(D{O=8FaVQaWo5$hw3dU3tr#&(M6 zz@`n;%TH##LH8|9+UkwXXWou8EDst=7lli(EECKcRgj9`hhMp_3YXK(ewa+24ECF7 zR;9(od+u3{gT6lYV01F)fXQ{+*QU?Kw%-p_WP6qeJRp6g8`RUW<^684qswu>Puv(t zWnZc_f(Tq)Pe61z#SX}y-#xZ$`1l<+pCa#1>ltMr1EKw)k&xS?$(SJ?e!G*&++LhMGsKm0My{G?Bv;$X+}zqR*Oe zP-Dro=}VGM%g!)?(9+@YN1eK^%jLAW4O*{#cKpxFO^|!cao-L`qCXQQEY*>Wkl2im zV+KoVYw)&loG;lOduZSq79^^nY{*C9`eI1CpPpSraI;U1;P$xp6XdWCmrF~Xq4e`{ zTPPj_rtdu7~iYO1?@h~(^Er3DRIPw3Ax24X@BQ# zb3@Gm%E#8gGvN(0!;A55>!UZ_oXq zGz9-k#f+ZSmY3Cm!?Xo~@8Cqg&w}sT9j`r3)YV6bkVu**Gccbny(g*-Klp)hy{My< zA7gM6UV%=aNf2LGuE%{>ki*jK?Th>YY+>f2eu_gE#Caz=!A9}WW*g5U#%Hr7fk4V(sU zkQW3WpZf2wCOFtvR#w1TaKh^sqg6{hiW$q>H=Q7=jN*ag453$X`9TOrBxm*#1PK|U zleO)yc8fJ{Ep{y%HRLJC8}#vf>UnBi`6bSIUx7q?Pcx5_$DrvK<=DbBKCg_|bGl8m zBD4+#q!n8;_&)S<%|&fI(_<{%h0?UR3gPp<1W4mv$#N7ocj>W#HXlu(j4qj4N_y0u z3}14AguM;Zw)5Yn#RR?5)$(T*E@B5r^U8@UX?uqplXEQFa8I)@ciXe}xHKyyK2z)W zqCr*6?K( zG#rVvUEOArG`_g4MB#}nr~q<|1YM@=>AuXC;Ig2SQkyQ7f8y}5wv7wx_-XlLnr&0* z+2@={Y)wrpkqJ97 zF51Uo-s!@n&twoOb%-LM(-|6;e{9gm(I!kR<5#PiX88JbrdjeVB)^tdcq0T{(=iYF z{OX+&l4at`C@b_00(iwV3T3U7~4z&83MotM!CO?y#BbsE(nZ8-I925WxjuHbs znir1Y?32~z_c+4?t4~NFW>a7KCk!!kziWhSw=2d{j-5JEDp>AfSAJ|-Rk+o-lgy2p zI*CfX(*;)s*D~LS}vnc!Q)i>$?~wu z4!SCq<4ihT58=Dq^eTIAX#u{(Nr_-@GHj8{l%z;_?HKcKL*~lSvTbC3H<+pSXFRDU zBo_!+KFMpnDgdYDDEmyjh)z*7br(LO)LcbSAh{{06Y2dkxur|04wAo#qAM~3ycjzG zG^%@61kcT2nKm9I#R-c6K%t7x-Xyh!k@kh0D5dDT6XSr)$)ff&lbG;9* zU)R+~AuBZX?Y$%f!jiJlZQPcwQQ$N3`hquZY zH#V~dBDm5#Fl<9+S1K$2RG@f{(f1}N+U7!uU{OVwJ3JaBh;oi!U%6~kz4wO>Gj5HEuHi^WB~~UCyN2h* z`hKIejmCHOi&Xc!%-G4}C#~Y~w_=CR0FX}#m1BN@r$!|UKRf|lnqPSEAsIeyVDn+V z-R<=UJN6ATJ{J~fV%$)7@9)ZegRM*}dL?=p6)Qp4>oyvm96uokSLeE@rQ#a*XD0Ju z!TWhDTU{(f(>?eZh(Ic8bqgJ}uM~*B1hQpPAbVDZ64CocG=R%Odir-+D#|`)8?Ip! zHnR@RvK5>A81%dTFwwLY<0F=L@8H5sP9H$<%9v-Pl?aV|Qvq zBK~)bWfZjmA_B!`TyOdWBLIxEks_<5v?CoBE6Ulksl@vWqkq4#fXTkn&#zWLjST+= z%Q)idGw3wK@Paa;Mzo;)>q<{NzVN{HL~WNpWrfX59nfDb0HmT%A z7&WRSQ}&;4I7o=aj}!{@(}{8KwUxsTrQsyO%*Ma-nx5# zLlW7ED{&Wh2wqgo_`YtEFJ_SQg_VHqCPfCDDs6T~qB~9w5Q&#aGUlh5i=Zr@p=79s z#`2eY^A%o@=tA=iJrFOpOC@QZMD84t{upCZ9zjdTIpQ)gidSGj^T5!L1VtX&MI}jv z{SG=eWL%!1tdcO)z`m(gtVlV^RU!a6mivGorCe6Xa@yrxON-TMM-_TXB~OQAB~b(S zven-B2Hynp=waqC+k7VB&?%jMOWXS`439((nuMx*!_)2dn#~4SW)Zt-PF&{nd`w2D@WWtP)x31QINJ$V^Q5Gd%EurPfr8f^oqie# zg{i#gnCdP?eZB#lAlLS>t97o}8FCDY`{(*LW>(0IToQ9m)CfN~BN>bM|H4u2V?er|57+!41H~VKKRAN74ITxL1=?@&#;IEUUM?+>0JGJbGq>rm z=j!s5TMhz^%WnvNdw45)&*E=x_}1?${M@v99t~gSp1L$068^(5&%Yg&w$2H~?(zJ0 z*ijKT)6)1(f_bd_qyUgqj_T8p4Y&JH0BHEnjE&pSAxS0^O-ik{PRU~y#)SvNld-Cu zoo#Hm@*b*I$3Xv_;5<6j({rD~=9`UYxJRTEs`?>4fp6V4|)dYM5I_+d|~6HzP>H*R}jw3O)c zt?-7QB{gT6bJ2rs5uXU>&i6)b;@>qy?Vd!=-VF`n=4 zPkY`gNi9{LSuw`6R2Xl@U18?xT;6vDKmp|L5#zApu66*Lg8zsrGg)Pl$~dimSomAzFr@y{pKZEdCLb0fEICtCDFk{{ zTVu=eloxKCSMF^RZc5U_oi_va*A9v=O1{;i2y%<+C%5p?Z6PW=!4~8ZL2M3K=zV%> z7-ocRa5ymufgo}>x`Evl9m#}rO{&6nM{PdqvijQEe0CED1BWXZp~s6?jrZ|4!%4z= z@P`J)R|{l_z&%dVBlnSm_Gj^zl%%)GLM^U7s@5LnDk^-{{$o(~{>^QKQpxbSI*DmC zCKAvpRH`#|glp<>TnAO(QQxKnFU)Y-xPEA`^~C=hE2JUgDv@Jj=L@ZvZ@OUlE7`Nv zMUc`1xg0ABpKE8&+)^anEn|}40NFTGwJ%HDG4Mb-Pwh-Jt-KmT)wE+O9+C*ECxb@f zob{d+5W$v?+KBb;O=&rj$P6c($RWxSgZ6H^%Nj0*>UX;2xd8mi^HKQFISkt|Gp<=R z9Tg}E)rif?CGKo^AjI51j?DM>o!keGW5gm;z9}s_Bw9eM`sC)2i7(LSzMPR40|_n= zO4&g&c(iHNx{zEn?`CmkKYP`?+hXg>>z|=CVqz@qvtxLLak1;AkSVuhw$%4PoMb$! z1t=e^hY~`NL15^0G=3$?_8tok5PAPaYYmy8t4#j#Q^)~gFfCnW-y*LbX%HYeBSI+} zF}HI4>iUKUkyqVRu?XHDzFN7}d2~ihuJW~&?)s@b=}cOY;RR6bEZ?cZYb}z=<5gg< ziN@gpQlgi5$@s4prX%kZ;?0Z{#J!ip*xu*UO4-*RDQbBw>ffa=SaPLP!cj9m-Z)-K z;)-DP6tWA*2dw(QEzw|x^xVy1l1H#l`qpR(wvw1c?M3xy%(<*NKswTCu2gw zm~=#;C4<8gbh4Aw&{eYzDGH|@;~Zz(*N!r28-Lc=Msku=zMPT#C1bAZasDll=oNrS z>7kH-Fi*S7ayhkYC(qZ3ZCCf84%(TBsL-g0C0`;`CFEs($S>lEPn5cz(oH~RV7EwU zxm!SwMN|9d1i2NTWlz$ww%N%7q<ssg&^4I@Yq&Vgi!qNjTVEV)SvfUTYz<{t|#ct(c6;`Ls`(!;IkhT7U zPSj9^8Yn+t0V7p1jf?2t6~WE&^589p+^H(se9*Id>rUTE1sR@q4GWL7{2;DXy*8!} zbW)6Lx^^rG7l{!LWYnkdUt^)m9(1xxyXZmrH}Idov| zXtk~`ZS{w}vxasP#sr3JcrfU*xfUHA8Kdx-S*l3qci#%40-hO3bd}fg)CIKfruJAR z#^$}uUlpNO%$&@?eX3NQR*Jf#7xF?oV$pV#Zrc(yes5fot+Q9;d@^RPRR{;4Q~igC zqhjjTM@uLo)dh$>NC;Q#M>FouFmw&}AXzg(^`RE|9aq`I7~(>jr$;e|H8aCME(vKd_^N~W6OSLQm$JJE}hcrqXv&$!_PCeI(vO3N|0LN;~N^Zg${ z>Eam&Ow5P}l}l|(g5rVn!St)UROY|NJ~=73CBq`>47_&AC7z6pDg%AcpaI)6w6*tP z(NYpUEBfz})Ah)NbnRU~oWkojHg>WzayN^4*RQ9a)*l|$dOh2Cr9&Ytz*c$O!@sm+ zEL})chbIK?+S#jEeF<)rST}RC$e;wb&k9zZobVDs@ZUFBr=JZms^5s+hbNoB!}zD zjxdtYq9d|wG`D;e{Swn59&Yaz`I!CM@ z-TA0wU4e*R;(XGg)$a%WN7Ub8d_UlJw#dK($PolV5pkpy0H@7_BOeptZ(FjUHJkA; zr=)S20E{w5@Ey4tM;^vB7o0Jek7sl&AG*7i5;LnWJJHk_!RqlQ5^8bDyk~{t$Vq$e z&_x2JReqJ&Ct#dZ^ScM^R8r4ssXE1aLIOLBVVv#PJ*IeW*r@w^ZXD9t8Gn3Qw@{br zCz>dfA96BeD2840OE1*wXPuutUp32wi` z^<{&Dg5h|#n3$Nr1ecWxFFn{kq9d%|F%W~yI|2?D+oRTB7r(p{7&8Ax#^2KWLrpEW zvUOszdV=eiQWbiB&{sNmY)ehpbefK}?(+}*PoUf5t4d}sBcJ``L$UwQI5)FKcEIeI z!v3i{T9dL&S5vHU|+8($%mIivvMjz0jAE?-uWYvbYy-ymQyWXIRRGq4#l2oa?-`qaykDa zE0MDwXKeut=(c07;pU*({ik+~z&d$8H(0C}oNYSFZQ-C}mEkQzZ z#DVh%#Et=vVqI?O&qTvHmjBer*Kef-P_U}`I=A_zRN)#LVGk$J$jVTE<3LDUDNr+) zW?PKpR+RH<0<5Q5nnQ_T?4)ApHAfdf`R}1JYJ|O3(0@mQ>eX|vDSuX}h5+X9H-lqk z^v-tTS!7>c*-YoxN3?yR4)7-K4eh3&AVk4zP>- zK<^iYEn+>&Z&F|m&2;x+W&;99na^R$FCuGRsz>P|Z^h#Jbzl>V2U$q?B!x!;=y$QSt z6yQg`4BpjHiIfTJ>f-9%vbte5OT=g{EdY!eH5?f%9w_Q3?6XTK(@Mx1qYh6kL6gDK zM!=IJs%5ShmjHkaC6;xSz0cvO@^lNH8>%9dO`YC1^P%JZ&Y3TD9~B5ufBNJx$_8;Y zV7;?s!wT$uw!rrQZUN&txH9F3HjlP=tiwe$TKGG7k)7B$E zH!A2`U)+YiPMO=@ekwCq?Dmfon`fe?ef{zPsDGhTsA7haj@5XnCMAQ#v*4d$)%4x} z305cCoEZK?SnYN}k|H3yuc(aA-8f@lxeWc}!CX+?A@&iAGJO|MMGT4c;ff-NUY>rk zmh+utng#FPQ-mrbPoryy{rj-#)9`YPh?$Jan9NRZ1Qxhw@^=*E=g9}x$Qr6~D?K$( zMD~pzK8Ruaz42vvNR2ftDAVDm*^gwp4H#g`ES)bG_B zDtoUeN?K1#n``RwJ!Ym!-dGe)1H-~tBQW*ao1{Y-bl<|p-FH#tlZ^~w71Vb>MeO2L9$PJVM6mAZf1k!i6 zpO9QUVHgk?0@u3t05jz%aX;EchfiUtQ*rZLJgX%c)1ll>q3YedV(U}<6 zaOSUjfjHLmF4v>{3O4*mn&lLjSM>sRT|RLRw^JT%kDfeba~SO$J#1tZS*o{01SPmY zz1kKHSKh)JK^|CGN4;aSe7m$-zlZIoM2?&`pR@B=e1$(!ttrAlQUzfZdCUh+w zcj}SY!`I!uUWVR| zUtmys@o(DeqX{B@cY5ok@EBS;v=y=|Uo1xlMOdOXXA&Y8{AIz0xwMHZ!}zaTm?JSf zCydg{1vT)Z#Mj>#r2VYy%iiXk{VG(fTKRkT`|5gslbzV%2U9J(=5TmcGjoEq_57w? zSlaZ>sHsfGnEZA+ST<59n=QU{M_Ie+`{GO-91*MzUu#heDx)g#rwQUef2ACRnv3`z z{#11a3+INXr>Aeb%wjy=bgi|Ber|AEX~p8^;Bd<2ca)^an|0ZBo+>AM=GCpKC@+Wh zzt|pm@n2XsxOTXXwZttkl-(GW77z38`$T-h5+#WLMgq%xEw0B%$O<)D{iAbHonbEuDU^cX?^s^DnR7-iUxxw0H1}l}aZj zgt)B|Z*x<4-Dut*9O-?XkhUtFMU7;mM(c5rQyZc5`&))WTifSqk_ToDAxNd?;l-H} WGce@QN8z9DnL$BOw%*tWYzyO{?((%S<1C|rJd~bwY+%x)Q_-NACst@ z5b0H`#RK8hFfQ{mY5s(uk+O@Na_l!it|zhl6;+|M>2BI6`m?2z^*SGu(O;t@V%dFw zlP6t5sN7Yrq|PNguLM2I4&zuQP=;;~96?cb*1Y!pAUo%6H;=Lq`@5%m2psj>Q2l~a zK%9p)no|6G_bv5X;(r9W);2Z;rwHOa3}lbE-!Wf5K^!qy-BfT}zP&9?orWR=Ff4k= zEm4Npzac$N|ASLZS%&8CeHxlPH%F08QmiI&k^X#o)Isf9dkgjJl%c#UX*2G08MaCT z?Q8}yO*4hqql*Z`-o3*%fZdu@l^fxshbq4wGOc+RMfm<5_VJaO?P9jJy+CgCk5Ia+ zT2SJq!7lN$>)fVRDEZwm9fMG1GF<;mafcTvs$m>R5Cp`RD(KdDZrVKGc!;9{ss#0> z&_9}nLvfrH=}(taY(vvX{Y4HaXXMC0K>U6gvn_W&&gu*cJqXBAA$>4*xp-=>BmyXY zrWdJ@`c}K3&$d0L2ql6y~9gGn49hMjx3vuG{?`91y73SL^O>h-qxro`z#( z>#Iy|gX5wV`9Epg?IV}DK886QU1y}V32iqFyb*Lx6%vyb zC&cTFk`gpyeX6E;(BZ53oLU*qpDUqcyPWIab_^e&DkHo620mWueZduPF>}WA1XER& zm8~EuAaQAR0qw$R88hs@RckpI9$UDdu-9X(6R5UJnltwx7dD z7=!d`JgKD&yT@of-nV;(J-Pc(UcbA^6wZeq(%J*hvGc*)LO63N#FLaG>66JC3bMs_M9P z-hBVPxEmoCZ0@X}q@;AqlYN`d5mFh8b*;3y?z?3yNcCS6@t+y_&)|UnWNm8dd~3K$ zc9r-gk*w=s}Ctc-O-;Yg8Z93e`xgHlbu~YP}&9G<;3hKH3)V zTZ5y=UvqUe?@?c5{I-VVJU4+*$@Fj?1$uC&V$2?hTwo=SrUE{p7y(BjQ%krL58yfrlT9i z{*mWYVqsQq7bY%G9m(M*6G<-5pNjIttm*|S!#@9EM>^x|ZC-xjH)xumeYc@PlRyR*`t!Y!Cs5Z4S# zjaxGTuP^&VMVvyG+b_W2gd+J^?M{>RCEpKJK?ViHTpatSuEvWBlwPm_CiHXoH*)8kM|p5%I@$20h%5AL|(z$lLEkUUQ9j_c!eR-yYn1siuq zAfaR%LP~nHUVV^%(=g*!OgGAA)6(HSfY`TyLcz`U=Lw7S#?7^p-*bmZNZ8|PyS6YU z8p&zB=%|5Qo=9N7dhy0g^4QSWXcE(L#IU*mjlGcdN$Uw=I{cj)0OShkGhHL9n+rEx zLUlO?-cI5Hq6JFn?YGrxau%-4Gi|$%DmN(gCKls^s^o5dFjkcHD@7UlFP8{6Sh=1z zb9%-QNQH5vm7_)G1r?vxt6ZY5X?JJGeQ_$3c!PF^kR3RHUx0X81sQft{;mC!tZQTG+OsTX)<&X!y$y#c$?^!vTL^z4}^Q*q-fx>n3MKtCVjF05wle(I2iy3ic}m zX0S&Lrxn9=R5?$5d@K_8n-&3J!Z+a-Zj-Iq^Oj0x#=B z?d`8$MUq*%G%&q~Od#`5!Zvx%F{qS77NGLw*qEkI!5avn|UAid9ocz;Oyk-uMtWxgrw>k^5DBI4ApF3B_(fdv|pXX#6y#V3UPBeI-;)* zf=({Uj?ONaPe%n-2H?b3PRRu`ZHa`eG$YX;g5rR#1ixicYS2%oEkg!2$L}KEuS5xA z8=Pd~@BrtP0dhP1*u>jSIkqnU_O*k`MLjhi!LJ)shE=Uz?YWw?F=?@}XSj0w{BS#L z2XZ8^1+mK7dBRCKt3kZ({-sr!*!wv03*UB=`=<_GA|H*eNl4z=>9{bu!`Hr8KfzGz zI)?=u1`f#3gB+F4bN5_ar|kWmD>6XEEjM}AC!O_CqEJO4?zp<->0p}jGO5DD-gkag z?kb9y*Ygz?khzjYZmf9=kGM0EgO;dH3kN8Zt+aWSP2jzK{HiXaNL+&GG+tD-fD^V{ zvU+CD+#5am+*b#6F-I0zth)*p!cDZz;2Y=#ZdtFft|^@d;ww;Y0Kl?8wzKEr?$l$A zKS%!a4&Fr11Yu#_Nb1znL4$(`%oXJ_O8ebPawO9g#*ABd{v#F&R9(R@Sl{?^Z?4z} zBsAbW8I02+hlo8F%K9PVh#}-{Fln}*5{KOyq)=`Z&DF1K@;_7q{`qi~LnyXy_4y{< z(?eW4xsZ_l%@Tf;#gp4`N#`Gzw!5;7cT7CUpf)VN7_0JD5_4JEXk@oeko}ULF zaxETW>~i|5y(G*yx)Syf=tL`K8C$X}`MNTJ0&Zs5fWG-n4V~E_ZJm(F@4gT{OUTuW>r#?#>&{hbqjL*^0NtVFIshbKQ>vxn)C{I-YAA- zlz#zj z*RIaSEeFa^wkCeKCB$6Yxx4sv&Y+t#58>ZDu)Nv5Z)xTt#o^YbbRPV3z7Jxeslxq& z=CBa8u(MDElR7Kt=jD0uxEj;gjaUvwXufeaRDiMLvQH(0oe?`=88$bbt@G3?pr4j6 z{rL6n;^?W()SLacPx@mHn`LX2L@zgYh^T-LZTKECcFwkB-Q8qTXFZ8;Otynf$o1j; z+R}!$GHA0|`R>&G*DWKgcfEQCpAy#X}k82g=>`>(gcBk0K9XA+;PLsO8{# z)<;SceJWvQEi|LkE;Q8oo(PmIy+=py2p8KGLU_<{w$c4Yz;$3})zi@-nf3BLrSIa} zIh534v1up!5w@7*LPL(t+G{iYm1Y!4rTyaJ`Q9(~dZ)3W2y|Z-{%K)_4o;Mq6wPs~ zSIYPg{1v=RXU8jN|JHFzGm3OZ1R%FLA#}&8_Sq(ukE_zSNnFMy3MWr}x}~aZroV<6 z*DX#P>!A@#m`Kp<+Q3AxP6kf2oIT5B!96n~+Z{q6fhp?k%*k0AZvDk!(VGRahS}fO z97B{I$ic=tjabFkx;Bu&R3up?PwbzBeTu)FpRy^MtJIr%AQ-8cX z;*|sPOdsFg$2)Kmb#`poT!+C*>JeaYz%S*Wk2;nLizuw+&!UNJf4&QR86giAh^-H& zQZE53o5a*Ye|-?5eI0a9N=jv|*g^sXjoznG4`omc*l#O~w}@c@6aCzj!MALB1=$xA z!NuQjo;MRN9cgR8KmTqh<6yAi*Fynjlr)t~jU)AYv2CN%UyA7oj0ge!VdkBR>A9iF zqaBIy9S@ChX|2egiG5r59B{eR%8&s|D_iV9cgGqs0G^qvl{>|+*@o0dJd=N`8|D2f z1s3iGNgHl@X>1~xwgdXI_R#|;4idzK9eXc>@TM{N(+p$Bc^q^v&ij`ME1Kx|kQ+{5 z`!a(!g)*=kt+q!ydas8aw#kX5E|{2|Y%-kakuW!4Em2dRErGn@#sjmDtMX}WgZ?_^ z4kjVUz16vGXzs>1pk6L}cKjuLDc*gS{Ex2}(!_AASzLvm+|$Imb+7lNUdtfE0y^H$ zVL6 zDfLNUT@Aa&UYEoA)Izl~I5<)YvMViC%3OdoFRh(0P-E3e#i!{)OV zlkDe)fFFlDmI1kQ#!Ar2#hUX#bXA+txD_EuIC6bmN_v@JQV5(p+##ROK4Sq#=3;Du zZN!6fH916C{D7$N!Q=qRnx6jc5qku&pzrwuo;;GG|Hn-I#?83pa(y&>jq|>-IVUnYZC2o#jW+kozlUUtyP-9tAcZKMWa>kV@`4(v-kZ)p>l*LL<{mOdz2j1KOx`d zW~`-oVq=e^9*Nj)Hno$0MnG0^d+!r2BdqCI^eUjv{{D9pw|l=tA}!;39g?ESLD;HN zM*uzLPrj=)0et#1zBRu_&;+7c&!?+Ne1C2a-ntnrUo}I2Fk)`rtMHigG!9PWfI3J8 z{c^{1JS!?yoC+z=BSm7`VKpuZcLz*vf2KeqTou=Hsd@6$_BxA7^I1bltfzl|n18@b zy2+iw)`o5}ct97@DP)wl>oFRo)8@$rkl|!Zyr)xGO|==T7$9|@uMaZ+&7FL@q)=$0 z`FOvIz9ZY$dPF+AZN8fAa?>;ey616NAhqIre`!-vR@%PX@Sz6)7X*3iFKy|0k6bo$ z^phspYTX$P@t((isp&Ti6xd^JdL9emm=6zJQkl0$OEn+KNJ#W*U244$nGLcxEoJxa zs!&SzxSNtbph;s?;6{RE2yAnk{q`E*zS)EzE2VPL9?{WmrI&Ia=f_B6`St2nLmcU0 zu|AMt@`A#)bpk>GS{aq`)|*PUo}}Ystk$m2@-$qOe&E>FqK)oB{DGBZ#~HQiPoQ+R zp;d`5;^D2{^Uxh={`X=DmpVoXT`zk!p|^)b_PCnRmg(g`nBO!lTQWy z0C7&?*OYicYuRW`g|j8s;^yW~8g!iY2h_XY3>q?%_rf5P(e<^*@qRlWoO`+3Z`Vsz z26bN2?s|e)qJ6~doWGK;;3Mp05F!`gTpeBq`7n}qbmLn@lMyKmZ*#m?9%jS&j!;Ko zm%p_IIwOB~{7Fj&MJd%{A80}%W0A*Pk+#DB#rrBRv0*voRe=<7Q@QYIs z5x~(mXTay=X}C~$`<|YGvoPdr%HkqbBEoW74@uWIzG=vWrIYYmN3>NW;KS+ZFVoD> z(!~+WB8Vy)V8$!c4A!)=Z1nHnF}UJW>hM-(u68G@C9n`MC>O@7F8cXgaMJ0*sU4@$74=0W=HajnR}P6Rg~Y0 zSck^rvklocY%%)Z_N#3iHH+W#oJgh;JqP1t)-}L(4i_k~K_?xeiv7V+bnmj3sh#UU z&)*^1Et_#M%rMc5_**Dc z-|C@V?#4ZGdoV*CnT39kAKre>TmK3k1wKbHmhVbBsG}iA@O|ui8U5v5Cu_4$JbIp# zuX#4U#=);kI&RnU(6l}#Mhcx+yctY#at33*iU0tbtfgXf@Al0L-vMkNY8JLP-W32Y z2pa&}+yuy#0?*=KC3=o^t24r*^35VzIoLqbP`T}I<0OPxL}Zq=Pk0ppU`anVllM{H z*^^RXhGCG?O5iwgfX;P*IVeaOIwKVQZG3r^1`d$tqc>TJ4mT$ngtNduXr35u6tn$G zCMt>Owx?b2+?Dm_F6Rr0<-XoG_G%wY`65f(Fw!|HyvZ}YyYeitQb z9i?6A<9Y3&iIYSa7O)#HrdF|T>u`xr)zL4%+;Y>%gBNg}Z}-*qs~}RlR>b7{{@X)x zl%>9$#?9ezZeD#fB*#Cb06KqP?M*^)?+;1n#yuGvZxyQ|2cIOu08P2k{?1>=mQpTEa^6-l#M8m~1S3aj@|HYWpb)-Ojpg+_1ed z6S$4z751%K0Er?_>0IyWQ_gvz0r6d%2;ow@0iNKJc$&5R6IX)_c+uS1GL>VeV>>!v zOKm@_Dz-O$0J~6DL0=#fw+MASu8u<3UHW#i*>QBHEM(Hfc{A!HeZA@mNq{=fSW{8l zy3lPa6M-S1_n0_wh`Z8%`- zKLsbH1s|-w0S=Eh{Rl#pL*D++2Toip=RM44TcBnZ- zYmXEVx9Ypf7PKeM|xcE2zr&35w*pD`2%@6~iF9WUJqF5dYyfqRhfS#xs> z3k!RgAATIS!dk*n4fDAdc;1z!iUqUm7Lwc$g3y4#36D?PjPw7q#?moGE(%U_>x=Uh zhW%C9eS~G|D^Fk2;t(1fG}F2=w{GPdt8aA`#ED!F9dhNWf;Dp$-|N?SetEfRWZa+p zXtmpbKP0Q`sV;KFLp-LH1y!*iH_}>2==A+QwQWuOSuv(%YE=e|-a^u-BR5;{LAUL! z{`ubL)@YDGidnbqqgKi}tN~5ZX>YS>*bPgS-g1fr1LoS^1cKBOrNFoPjX|EUtI<1LhB)qK0c&C!a?C^ z=QytJ#kH}!WT_u{52deZ8?5|ITAHpJW>(rStGgUiyX-cB5SG!|)@~gG+j+Y%6BE`O zP|wW&w#EW>HfX)Mq0OoxeAdAOm6PfIR-Bi}oXCCOa55ocYp z%$qTPaMJudCpQIR05z=c&T|7r?qn&3vLL;THQnMzrk2v2hF1Kb zX{WF6*$7Z5{d{<>%+yw_nXcI_@jumT2h!Q-mo_6vKOo{!RAv zQx)=r#YFY-dy*H8W~ZjWZw4-eWq$TPD*RV(V5eS#|F)0%PW4INgcxBLpNRYCs|XYfN_e^Ovol2+Xzi67Ns)G@})tTwS3Tqx-4WwcvXXnYxD z{(Y#)8PV1{rQOmHqNo1(kl9#p7$LuN!GR9SdnjhsOp%OSFm?FrzqJ^fM@LAZY^=+; zvG^5Sx)_>Qps=vBCLQ~#%Ke8B?E^)=Ioo!4(H&2*ZcFbffXchnc6auQ87@MbwD!VT zsjk*iYq487g5IEepM~jTCR^RBH8a*KS1-f_bxX|D=4Nv&B!jy{@wqnBKq(~ArqVnb zy2QpV`9)*KYyBF_#va;RDZTWh6o*MwDow&l_akS`EB8hk3*A68UJEa;g7hnV`CKk@ zeU}(UfTn54F3DaS7tXRj-mE^2OEWH1)j?lPyj*3EnEuSCRDQTj$TvWhttc(Xds%_| zdy*7i*^yTu{pI4_-JWn0;Y1ADwudl!QslW$#+7)3(d?C6iL3W(0Jov7IAnJJ%?FN; z1dtC5jMZ!k=!)oB+ktHC`z5Mcn#ZbU`>Y)7dCS_G)-K>TI_EW+Wf@^oQS9SSS+LAL zsU%J9wLISn@yj1ohWfViABHEb*_oHLW@j_r$?P()mK4_P>0Z@=cM!xXvqqS7z7|M% zKo7sG7kvrT?Q;=4>q@=It}CVAD8rcN|9SjicER~$gN2!qp>mF;MpZd|v}cEvae}GK z*x1OlwiOe}+XE-`{U0Yuvl&%Uo%^MF7A@s&_S&#l1`Xo+)$+CUiO>sQ(aYApwxD;~ zX;pf)g*8Ja4O^az9Dk8j$YIDiMEPi=NZP`mf$tU2o|5Dobf>po7bG9Kb^~)Q~5~(wml8>RQdn_`{W;9fXFYJ7ULP7 zj7)rn_F1}RIRF8FZ3475gAyPpRLlpLI`i7Tqp09o{{sNy=y-=CD~ecHK%Mq@Ko=SS zKaOH$s2!^&1^4ov0?Rr*B@&VVbz(*Dw42|El4^)KmTB-g1hAENDsO%g2ob)D#iy6f z2PU<2nZYjQdyX2?QGt6$x_ANGx2Q4icr+9c0wUGms3pIfc^JN^1`hXRM zUFT#%Ep3vEJzcCH1AWLikY{V^dZ$U;t5+0Ax3u?9kKjbayz|qOa-pgrj*Va+pfA6Wy=BoBn zL5_$skPWG%%}d!Qi|i z@iY^!w8`Qw$aS!M5&xC6WFVo{YYF^Vd`szk{>OfLX_so5KnI#8=pyN)hL-x_tFaGx zT9{apZ$;q%JQX|5Z-SJ<;{&yVAN7!5K;EJf>iJ2let?ofU319=J6U}umDFBxBeW8& zx}&ZsZ7eILY`d&f2Ogku^xe2*LOZ&~jWLqJ&k~}=5>*qGtPX!8=SgldG^QW#Kw}>s zerfR6WfcNB9=ls*iJc>^r}|B%X4M)l5V()#GPZ=A8TP{JN(hh-%nTmYZR?O5jEn(Y z`?9TVtoK;OnEXil#pO5nRO0P^cAHD`IB>YUMwtGq-X%FxR$4)=OUw~8#>Vzc6?>>i z8~cxA)OHj2pUHAB(1PCJumvQZVhKy0)dE({FyQKR9)}GA>bBL^$zdBNgV)|xg6dQ{S7#2#^ z7Y=okVv(tErt*2K3^KNgT1sbUI&e)m^0R!2em6d}d~Bn=fLbs?RDWkOOzV|w!q1>}T&g*G?qUtp6M^xN5) z(cX6r2&rvgo4i8U_IRWvqoY3qwy#ic9xMHSRBsUH&t!_Gz`u+!|EYiM@?Zr0`IEhmd0h5H?TRq1 zmkrCThbD?VbDZUCIc?+r`)wN|NRQxXc*q{llSi5Pl={Ocow!I4v)|ong*ct6gn!*3 zQg79BacC#yEDyN^xW8!B@X7TwRI4vWCFJe21tH1G3&?y@qIOOE7oqTS5p2e-sMkKP@QDvk4(Q#2a`5E2r5eFSaiNuB(%_d!nE<(JRt`Gvg!A&DAIo`H!>=H zAAo?!?B8emdm`SBpq`voYyHz{G$5MUDmguKyU%I$h`0D~G;o>?+lmq&h#9*FRW#Wi1z2 z(&+oLTSh;9?ab`mE=Eb(_0}QzAzzl*g2NMi^d(RsysC*h2&Xieo_MVvJ z&-T~m_Li&*e7ypWU7gx1bRc0H2`T@e9XW9r1tK;W8?{<= z#Sn9dC6Z^Y=TwE>h_~BGp;Zf~TI6&=N*I}|uFv4a`!cN2U-qL#S?xEw<(2zLc@q}< z`{~5rlGnL#{-36%bFcq1)b#&J>Hm3B3eE~V!1y;v34#I^J}xoKnMZfrBZ>3S((-xO zq?RfW+W*WTmD#*0jc5c;!+oj9We3Mz&HNpuk?#NiejwW^KI6AN&Lr54b90en3Lrp| zB=E6J2$^RqJZ?j}d%xxGDLWo2IRE%GcABw%vSpd6h5N;xqvHD&R#@GZmC0D4#Cn02j_7pnTpCx7xGF}0v*O!z>qWk7z0 z)PUnkK2bLwXE*7(KKA-Eo#fwqEfPO%u?8sxI7^pv7hCS-()|}VVO{@<7au=5>bN_l zSgv&^LU`qVvP6pQ!lb{x0<0t`yS{>g!Q3 z$Hm1c<3I5AyUyM&*byki`3?a_(-=`_KGYk89a-X->t9#V7C# zsD@a&q=;ntXzhjEgXTqsbk3sH4wZ8h0%e5p{-Y+=e;Sznoq;NV%iPL^3p*V-f*3`v zra+fYhiz$H-3-SFA-B72f_m;Y^I)F0u^j<0)LdbXw=6X_m#y<%E8bBaRgJWQ$TT69 zWKx}|623blxlV?SIteWzsH?yJ#clpCj`EUc9E)#-&kd+LFA@#_$Vn+nR*HWP`Y+fX BivR!s literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-for.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-for.png new file mode 100644 index 0000000000000000000000000000000000000000..309baf04d7915906c440b2f4ee105b6593439616 GIT binary patch literal 14216 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 literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-function.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-function.png new file mode 100644 index 0000000000000000000000000000000000000000..8ec765362b133e847ef2a4b1145bcad2823c8eb8 GIT binary patch literal 12884 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 S_x3jtfP{#waFw9G|NjDf{C$=H literal 0 HcmV?d00001 diff --git a/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png b/packages/boxed-expression-component/tests-e2e/__screenshots__/chromium/boxedExpressions/filter/boxed-filter-aligned-match-invocation.png new file mode 100644 index 0000000000000000000000000000000000000000..c13cd988a9762b67856c46fbf1e4dc7912c5f9da GIT binary patch literal 14395 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

)} + {modalPage === ModalPage.DISABLED && ( +
+ +
+ + + {i18n.dmnRunner.modal.wizard.disabled.message} + + + {i18n.dmnRunner.modal.wizard.disabled.helper} + + +
+ )} ); } diff --git a/packages/online-editor/src/i18n/OnlineI18n.ts b/packages/online-editor/src/i18n/OnlineI18n.ts index 7548222661b..8aa75b76693 100644 --- a/packages/online-editor/src/i18n/OnlineI18n.ts +++ b/packages/online-editor/src/i18n/OnlineI18n.ts @@ -399,6 +399,12 @@ interface OnlineDictionary extends ReferenceDictionary { title: string; message: string; }; + disabled: { + title: string; + alert: string; + message: string; + helper: string; + }; macos: { install: { download: string; diff --git a/packages/online-editor/src/i18n/locales/de.ts b/packages/online-editor/src/i18n/locales/de.ts index 626072bc2cb..b660395f1ce 100644 --- a/packages/online-editor/src/i18n/locales/de.ts +++ b/packages/online-editor/src/i18n/locales/de.ts @@ -469,6 +469,12 @@ export const de: OnlineI18n = { title: `${de_common.names.extendedServices} wurde angehalten!`, message: `Es sieht so aus, als ob ${de_common.names.extendedServices} plötzlich beendet wurde, bitte folgen Sie diesen Anweisungen, um es wieder zu starten.`, }, + disabled: { + title: `${de_common.names.dmnRunner}`, + alert: `Sie sind nicht mit ${de_common.names.extendedServices} verbunden.`, + message: `Beachten Sie, dass einige Funktionen wie der ${de_common.names.dmnRunner}, ohne ${de_common.names.extendedServices} nicht verfügbar sind.`, + helper: `Stellen Sie sicher, dass ${de_common.names.extendedServices} ausgeführt wird, und überprüfen Sie dann die Host- und Porteinstellungen.`, + }, macos: { install: { download: ` ${de_common.names.extendedServices}.`, diff --git a/packages/online-editor/src/i18n/locales/en.ts b/packages/online-editor/src/i18n/locales/en.ts index 6e906202563..2b1bb39cea5 100644 --- a/packages/online-editor/src/i18n/locales/en.ts +++ b/packages/online-editor/src/i18n/locales/en.ts @@ -457,6 +457,12 @@ export const en: OnlineI18n = { title: `${en_common.names.extendedServices} has stopped!`, message: `It looks like the ${en_common.names.extendedServices} has suddenly stopped, please follow these instructions to start it again.`, }, + disabled: { + title: `${en_common.names.dmnRunner}`, + alert: `You are not connected to ${en_common.names.extendedServices}.`, + message: `Note that some features, such as the ${en_common.names.dmnRunner}, are unavailable without ${en_common.names.extendedServices}.`, + helper: `Ensure ${en_common.names.extendedServices} is running, then review the host and port settings.`, + }, macos: { install: { download: ` ${en_common.names.extendedServices}.`, From 745be5dd56063ccbd2ab5ef62f340e412781ec0b Mon Sep 17 00:00:00 2001 From: Jozef Marko Date: Tue, 20 Aug 2024 09:06:21 +0200 Subject: [PATCH 14/22] kie-issues#981: On the DMN Editor it should be possible to create or associate a Knowledge Source node to a Text Annotation node (#2525) --- .../src/diagram/connections/graphStructure.ts | 1 + ...edge-source-node-to-text-annotation-node.png | Bin 0 -> 43822 bytes ...dd-text-annotation-from-knowledge-source.png | Bin 0 -> 44380 bytes ...edge-source-node-to-text-annotation-node.png | Bin 0 -> 38776 bytes ...dd-text-annotation-from-knowledge-source.png | Bin 0 -> 40196 bytes ...edge-source-node-to-text-annotation-node.png | Bin 0 -> 34439 bytes ...dd-text-annotation-from-knowledge-source.png | Bin 0 -> 36773 bytes .../drdArtifacts/addAssociation.spec.ts | 1 - .../drdArtifacts/addTextAnnotation.spec.ts | 1 - 9 files changed, 1 insertion(+), 2 deletions(-) create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-text-annotation-from-knowledge-source.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-text-annotation-from-knowledge-source.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-text-annotation-from-knowledge-source.png diff --git a/packages/dmn-editor/src/diagram/connections/graphStructure.ts b/packages/dmn-editor/src/diagram/connections/graphStructure.ts index a77b1961d97..fdcf10d4b3a 100644 --- a/packages/dmn-editor/src/diagram/connections/graphStructure.ts +++ b/packages/dmn-editor/src/diagram/connections/graphStructure.ts @@ -60,6 +60,7 @@ export const graphStructure: Map>> = new M NODE_TYPES.knowledgeSource, new Map>([ [EDGE_TYPES.authorityRequirement, new Set([NODE_TYPES.decision, NODE_TYPES.bkm, NODE_TYPES.knowledgeSource])], + [EDGE_TYPES.association, new Set([NODE_TYPES.textAnnotation])], ]), ], [ diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png b/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png new file mode 100644 index 0000000000000000000000000000000000000000..2c7beb946688b6a33406dc72c9e5454fef8f6798 GIT binary patch literal 43822 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-text-annotation-from-knowledge-source.png b/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-text-annotation-from-knowledge-source.png new file mode 100644 index 0000000000000000000000000000000000000000..74e4b78038b9e6bcef79abd948d52b3a97222a84 GIT binary patch literal 44380 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�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 mYFC7&q+ literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png b/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-knowledge-source-node-to-text-annotation-node.png new file mode 100644 index 0000000000000000000000000000000000000000..a70b1828834c871896396132f30f00c8c0963eb6 GIT binary patch literal 38776 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-text-annotation-from-knowledge-source.png b/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-text-annotation-from-knowledge-source.png new file mode 100644 index 0000000000000000000000000000000000000000..49e55f55ce477134d764e56e26bf6ca46324e156 GIT binary patch literal 40196 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

GeP(t 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-text-annotation-from-knowledge-source.png b/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-text-annotation-from-knowledge-source.png new file mode 100644 index 0000000000000000000000000000000000000000..0b25c2c8c96a5f65facec7aa1cdf0392b374ece8 GIT binary patch literal 36773 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 P;#11|)s*5CjW7KlfsQ)A literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts b/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts index 25b09449bb3..1526752da8b 100644 --- a/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts +++ b/packages/dmn-editor/tests-e2e/drdArtifacts/addAssociation.spec.ts @@ -85,7 +85,6 @@ test.describe("Add edge - Association", () => { nodes, edges, }) => { - test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/981"); test.info().annotations.push({ type: TestAnnotations.REGRESSION, description: "https://github.com/apache/incubator-kie-issues/issues/981", diff --git a/packages/dmn-editor/tests-e2e/drdArtifacts/addTextAnnotation.spec.ts b/packages/dmn-editor/tests-e2e/drdArtifacts/addTextAnnotation.spec.ts index 396a26e2561..868ce7b91b2 100644 --- a/packages/dmn-editor/tests-e2e/drdArtifacts/addTextAnnotation.spec.ts +++ b/packages/dmn-editor/tests-e2e/drdArtifacts/addTextAnnotation.spec.ts @@ -127,7 +127,6 @@ test.describe("Add node - Text Annotation", () => { nodes, edges, }) => { - test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/981"); test.info().annotations.push({ type: TestAnnotations.REGRESSION, description: "https://github.com/apache/incubator-kie-issues/issues/981", From b9ee5e43319aedfb1108346b9402ee96b725d4ab Mon Sep 17 00:00:00 2001 From: Dmitrii Tikhomirov Date: Tue, 20 Aug 2024 04:37:05 -0700 Subject: [PATCH 15/22] =?UTF-8?q?incubator-kie-issues#1334:=20kn=20workflo?= =?UTF-8?q?w=20create=20should=20preserve=20the=20ind=E2=80=A6=20(#2531)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../e2e-tests/quarkus_convert_test.go | 7 ------- .../e2e-tests/quarkus_create_test.go | 7 ------- .../pkg/command/quarkus/create.go | 6 +++++- .../pkg/command/quarkus/quarkus_project.go | 18 +++++++++++++++++- 4 files changed, 22 insertions(+), 16 deletions(-) diff --git a/packages/kn-plugin-workflow/e2e-tests/quarkus_convert_test.go b/packages/kn-plugin-workflow/e2e-tests/quarkus_convert_test.go index e8d7726c904..8fd60a5b6ca 100644 --- a/packages/kn-plugin-workflow/e2e-tests/quarkus_convert_test.go +++ b/packages/kn-plugin-workflow/e2e-tests/quarkus_convert_test.go @@ -118,8 +118,6 @@ func RunQuarkusConvertTest(t *testing.T, cfgTestInputCreateConvert CfgTestInputC "src/main/docker", "src/main", "src", - ".mvn/wrapper", - ".mvn", } VerifyDirectoriesExist(t, projectDir, expectedDirectories) expectedFiles := []string{ @@ -129,15 +127,10 @@ func RunQuarkusConvertTest(t *testing.T, cfgTestInputCreateConvert CfgTestInputC "src/main/docker/Dockerfile.jvm", "src/main/docker/Dockerfile.native", "src/main/docker/Dockerfile.native-micro", - ".mvn/wrapper/.gitignore", - ".mvn/wrapper/MavenWrapperDownloader.java", - ".mvn/wrapper/maven-wrapper.properties", ".gitignore", "pom.xml", "README.md", ".dockerignore", - "mvnw.cmd", - "mvnw", } VerifyFilesExist(t, projectDir, expectedFiles) diff --git a/packages/kn-plugin-workflow/e2e-tests/quarkus_create_test.go b/packages/kn-plugin-workflow/e2e-tests/quarkus_create_test.go index 200f50d808c..5284e76fcae 100644 --- a/packages/kn-plugin-workflow/e2e-tests/quarkus_create_test.go +++ b/packages/kn-plugin-workflow/e2e-tests/quarkus_create_test.go @@ -120,8 +120,6 @@ func RunQuarkusCreateTest(t *testing.T, test CfgTestInputQuarkusCreate) string { "src/main/docker", "src/main", "src", - ".mvn/wrapper", - ".mvn", } VerifyDirectoriesExist(t, projectDir, expectedDirectories) expectedFiles := []string{ @@ -131,15 +129,10 @@ func RunQuarkusCreateTest(t *testing.T, test CfgTestInputQuarkusCreate) string { "src/main/docker/Dockerfile.jvm", "src/main/docker/Dockerfile.native", "src/main/docker/Dockerfile.native-micro", - ".mvn/wrapper/.gitignore", - ".mvn/wrapper/MavenWrapperDownloader.java", - ".mvn/wrapper/maven-wrapper.properties", ".gitignore", "pom.xml", "README.md", ".dockerignore", - "mvnw.cmd", - "mvnw", } VerifyFilesExist(t, projectDir, expectedFiles) diff --git a/packages/kn-plugin-workflow/pkg/command/quarkus/create.go b/packages/kn-plugin-workflow/pkg/command/quarkus/create.go index d16a1d051c7..e43e03e1813 100644 --- a/packages/kn-plugin-workflow/pkg/command/quarkus/create.go +++ b/packages/kn-plugin-workflow/pkg/command/quarkus/create.go @@ -114,7 +114,6 @@ func runCreateProject(cfg CreateQuarkusProjectConfig) (err error) { "mvn", fmt.Sprintf("%s:%s:%s:create", cfg.DependenciesVersion.QuarkusPlatformGroupId, metadata.QuarkusMavenPlugin, cfg.DependenciesVersion.QuarkusVersion), "-DprojectGroupId=org.acme", - "-DnoCode", fmt.Sprintf("-DplatformVersion=%s", cfg.DependenciesVersion.QuarkusVersion), fmt.Sprintf("-DprojectArtifactId=%s", cfg.ProjectName), fmt.Sprintf("-Dextensions=%s", cfg.Extensions)) @@ -127,6 +126,11 @@ func runCreateProject(cfg CreateQuarkusProjectConfig) (err error) { ); err != nil { return err } + + if err := PostMavenCleanup(cfg); err != nil { + return err + } + return } diff --git a/packages/kn-plugin-workflow/pkg/command/quarkus/quarkus_project.go b/packages/kn-plugin-workflow/pkg/command/quarkus/quarkus_project.go index 7befb9aa0a9..6d3bf133e51 100644 --- a/packages/kn-plugin-workflow/pkg/command/quarkus/quarkus_project.go +++ b/packages/kn-plugin-workflow/pkg/command/quarkus/quarkus_project.go @@ -21,6 +21,7 @@ package quarkus import ( "fmt" + "os" "github.com/apache/incubator-kie-tools/packages/kn-plugin-workflow/pkg/common" "github.com/apache/incubator-kie-tools/packages/kn-plugin-workflow/pkg/metadata" @@ -39,6 +40,8 @@ type Repository struct { Url string } +var filesToRemove = []string{"mvnw", "mvnw.cmd", ".mvn"} + func CreateQuarkusProject(cfg CreateQuarkusProjectConfig) error { if err := common.CheckProjectName(cfg.ProjectName); err != nil { return err @@ -51,7 +54,6 @@ func CreateQuarkusProject(cfg CreateQuarkusProjectConfig) error { "mvn", fmt.Sprintf("%s:%s:%s:create", cfg.DependenciesVersion.QuarkusPlatformGroupId, metadata.QuarkusMavenPlugin, cfg.DependenciesVersion.QuarkusVersion), "-DprojectGroupId=org.acme", - "-DnoCode", fmt.Sprintf("-DprojectArtifactId=%s", cfg.ProjectName), fmt.Sprintf("-Dextensions=%s", cfg.Extensions)) @@ -62,6 +64,10 @@ func CreateQuarkusProject(cfg CreateQuarkusProjectConfig) error { return err } + if err := PostMavenCleanup(cfg); err != nil { + return err + } + //Until we are part of Quarkus 3.x bom we need to manipulate the pom.xml to use the right kogito dependencies pomPath := cfg.ProjectName + "/pom.xml" if err := manipulatePomToKogito(pomPath, cfg); err != nil { @@ -70,6 +76,16 @@ func CreateQuarkusProject(cfg CreateQuarkusProjectConfig) error { return nil } +func PostMavenCleanup(cfg CreateQuarkusProjectConfig) error { + for _, file := range filesToRemove { + var fqdn = cfg.ProjectName + "/" + file + if err := os.RemoveAll(fqdn); err != nil { + return fmt.Errorf("error removing %s: %w", fqdn, err) + } + } + return nil +} + func manipulatePomToKogito(filename string, cfg CreateQuarkusProjectConfig) error { if cfg.DependenciesVersion.QuarkusPlatformGroupId == "" || cfg.DependenciesVersion.QuarkusVersion == "" { From 80848773ec1e39b3dba8d0d507651565d06670da Mon Sep 17 00:00:00 2001 From: Roberto Oliveira Date: Tue, 20 Aug 2024 09:26:19 -0400 Subject: [PATCH 16/22] NO-ISSUE: upgrade axios to version 1.7.4 (fixes CVE-2024-39338) (#2540) --- packages/backend/package.json | 2 +- .../runtime-tools-components/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../serverless-logic-web-tools/package.json | 2 +- pnpm-lock.yaml | 48 +++++++++---------- 10 files changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/backend/package.json b/packages/backend/package.json index 6ea0e377b44..792009c6f83 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -26,7 +26,7 @@ "@kie-tools-core/i18n": "workspace:*", "@kie-tools-core/notifications": "workspace:*", "@kie-tools-core/workspace": "workspace:*", - "axios": "^1.6.8", + "axios": "^1.7.4", "fast-xml-parser": "^4.4.1", "portfinder": "^1.0.32", "semver": "^7.5.4", diff --git a/packages/runtime-tools-components/package.json b/packages/runtime-tools-components/package.json index 854d932c17f..1a4919bef6a 100644 --- a/packages/runtime-tools-components/package.json +++ b/packages/runtime-tools-components/package.json @@ -35,7 +35,7 @@ "@patternfly/react-styles": "^4.92.6", "@patternfly/react-table": "^4.112.39", "ajv": "^6.12.6", - "axios": "^1.6.8", + "axios": "^1.7.4", "copyfiles": "^2.4.1", "history": "^4.9.0", "keycloak-js": "^23.0.5", diff --git a/packages/runtime-tools-management-console-webapp/package.json b/packages/runtime-tools-management-console-webapp/package.json index 6203e414f3b..075f57a920c 100644 --- a/packages/runtime-tools-management-console-webapp/package.json +++ b/packages/runtime-tools-management-console-webapp/package.json @@ -37,7 +37,7 @@ "apollo-link-context": "^1.0.20", "apollo-link-error": "1.1.13", "apollo-link-http": "1.5.17", - "axios": "^1.6.8", + "axios": "^1.7.4", "graphql": "14.3.1", "history": "^4.9.0", "react": "^17.0.2", diff --git a/packages/runtime-tools-process-dev-ui-webapp/package.json b/packages/runtime-tools-process-dev-ui-webapp/package.json index 1264ea4d9a4..8854fef6bdd 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/package.json +++ b/packages/runtime-tools-process-dev-ui-webapp/package.json @@ -45,7 +45,7 @@ "apollo-client": "2.6.10", "apollo-link-error": "1.1.13", "apollo-link-http": "1.5.17", - "axios": "^1.6.8", + "axios": "^1.7.4", "history": "^4.9.0", "lodash": "^4.17.21", "react": "^17.0.2", diff --git a/packages/runtime-tools-process-gateway-api/package.json b/packages/runtime-tools-process-gateway-api/package.json index a3d3904dff0..d4b6a34b026 100644 --- a/packages/runtime-tools-process-gateway-api/package.json +++ b/packages/runtime-tools-process-gateway-api/package.json @@ -27,7 +27,7 @@ "@apidevtools/swagger-parser": "^10.1.0", "@kie-tools/runtime-tools-shared-gateway-api": "workspace:*", "apollo-client": "2.6.10", - "axios": "^1.6.8", + "axios": "^1.7.4", "gql-query-builder": "3.1.3", "graphql": "14.3.1", "graphql-tag": "2.0.0", diff --git a/packages/runtime-tools-process-webapp-components/package.json b/packages/runtime-tools-process-webapp-components/package.json index 2104b305dfa..e2eb157284f 100644 --- a/packages/runtime-tools-process-webapp-components/package.json +++ b/packages/runtime-tools-process-webapp-components/package.json @@ -29,7 +29,7 @@ "@kie-tools/runtime-tools-shared-enveloped-components": "workspace:*", "@kie-tools/runtime-tools-shared-gateway-api": "workspace:*", "apollo-client": "2.6.10", - "axios": "^1.6.8", + "axios": "^1.7.4", "lodash": "^4.17.21", "react": "^17.0.2" }, diff --git a/packages/runtime-tools-swf-gateway-api/package.json b/packages/runtime-tools-swf-gateway-api/package.json index fe6aab528b2..31279cbdf01 100644 --- a/packages/runtime-tools-swf-gateway-api/package.json +++ b/packages/runtime-tools-swf-gateway-api/package.json @@ -28,7 +28,7 @@ "@apidevtools/swagger-parser": "^10.1.0", "@kie-tools/runtime-tools-shared-gateway-api": "workspace:*", "apollo-client": "2.6.10", - "axios": "^1.6.8", + "axios": "^1.7.4", "gql-query-builder": "3.1.3", "graphql": "14.3.1", "graphql-tag": "2.0.0", diff --git a/packages/runtime-tools-task-console-webapp/package.json b/packages/runtime-tools-task-console-webapp/package.json index c55f6dd3f53..72139a20fed 100644 --- a/packages/runtime-tools-task-console-webapp/package.json +++ b/packages/runtime-tools-task-console-webapp/package.json @@ -40,7 +40,7 @@ "apollo-link-context": "^1.0.20", "apollo-link-error": "1.1.13", "apollo-link-http": "1.5.17", - "axios": "^1.6.8", + "axios": "^1.7.4", "graphql": "14.3.1", "history": "^4.9.0", "lodash": "^4.17.21", diff --git a/packages/serverless-logic-web-tools/package.json b/packages/serverless-logic-web-tools/package.json index c33803a4eee..53454f21b74 100644 --- a/packages/serverless-logic-web-tools/package.json +++ b/packages/serverless-logic-web-tools/package.json @@ -71,7 +71,7 @@ "apollo-client": "2.6.10", "apollo-link-error": "1.1.13", "apollo-link-http": "1.5.17", - "axios": "^1.6.8", + "axios": "^1.7.4", "bowser": "^2.10.0", "buffer": "^6.0.3", "client-zip": "^2.3.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a209d4e0447..f3c8122e490 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -762,8 +762,8 @@ importers: specifier: workspace:* version: link:../workspace axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 fast-xml-parser: specifier: ^4.4.1 version: 4.4.1 @@ -6953,8 +6953,8 @@ importers: specifier: ^6.12.6 version: 6.12.6 axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -7083,8 +7083,8 @@ importers: specifier: 1.5.17 version: 1.5.17(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 graphql: specifier: 14.3.1 version: 14.3.1 @@ -7333,8 +7333,8 @@ importers: specifier: 1.5.17 version: 1.5.17(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 history: specifier: ^4.9.0 version: 4.10.1 @@ -7716,8 +7716,8 @@ importers: specifier: 2.6.10 version: 2.6.10(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 gql-query-builder: specifier: 3.1.3 version: 3.1.3 @@ -7825,8 +7825,8 @@ importers: specifier: 2.6.10 version: 2.6.10(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 lodash: specifier: ^4.17.21 version: 4.17.21 @@ -8285,8 +8285,8 @@ importers: specifier: 2.6.10 version: 2.6.10(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 gql-query-builder: specifier: 3.1.3 version: 3.1.3 @@ -8521,8 +8521,8 @@ importers: specifier: 1.5.17 version: 1.5.17(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 graphql: specifier: 14.3.1 version: 14.3.1 @@ -9025,8 +9025,8 @@ importers: specifier: 1.5.17 version: 1.5.17(graphql@14.3.1) axios: - specifier: ^1.6.8 - version: 1.6.8 + specifier: ^1.7.4 + version: 1.7.4 bowser: specifier: ^2.10.0 version: 2.11.0 @@ -19846,8 +19846,8 @@ packages: axios@0.27.2: resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} - axios@1.6.8: - resolution: {integrity: sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==} + axios@1.7.4: + resolution: {integrity: sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==} azure-devops-node-api@11.0.1: resolution: {integrity: sha512-YMdjAw9l5p/6leiyIloxj3k7VIvYThKjvqgiQn88r3nhT93ENwsoDS3A83CyJ4uTWzCZ5f5jCi6c27rTU5Pz+A==} @@ -42152,7 +42152,7 @@ snapshots: transitivePeerDependencies: - debug - axios@1.6.8: + axios@1.7.4: dependencies: follow-redirects: 1.15.6 form-data: 4.0.0 @@ -42160,7 +42160,7 @@ snapshots: transitivePeerDependencies: - debug - axios@1.6.8(debug@4.3.4): + axios@1.7.4(debug@4.3.4): dependencies: follow-redirects: 1.15.6(debug@4.3.4) form-data: 4.0.0 @@ -54443,7 +54443,7 @@ snapshots: wait-on@7.2.0: dependencies: - axios: 1.6.8 + axios: 1.7.4 joi: 17.12.0 lodash: 4.17.21 minimist: 1.2.8 @@ -54453,7 +54453,7 @@ snapshots: wait-on@7.2.0(debug@4.3.4): dependencies: - axios: 1.6.8(debug@4.3.4) + axios: 1.7.4(debug@4.3.4) joi: 17.12.0 lodash: 4.17.21 minimist: 1.2.8 From 0cb8f85d0956e0a360af06cba4379c0c9e07dd2a Mon Sep 17 00:00:00 2001 From: Thiago Lugli Date: Tue, 20 Aug 2024 11:41:46 -0300 Subject: [PATCH 17/22] NO-ISSUE: Upgrade webpack to 5.92.1 (#2539) --- README.md | 2 +- .../package.json | 2 +- .../package.json | 2 +- examples/ping-pong-view-angular/package.json | 3 +- .../package.json | 2 +- examples/uniforms-patternfly/package.json | 2 +- examples/webapp/package.json | 2 +- .../boxed-expression-component/package.json | 2 +- packages/bpmn-vscode-extension/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- packages/cors-proxy/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../dashbuilder-component-map/package.json | 2 +- .../package.json | 2 +- .../dashbuilder-component-table/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- packages/dashbuilder-editor/package.json | 2 +- .../package.json | 2 +- packages/dashbuilder-viewer/package.json | 2 +- .../package.json | 2 +- packages/dmn-editor-standalone/package.json | 2 +- packages/dmn-editor/package.json | 2 +- packages/dmn-vscode-extension/package.json | 2 +- .../package.json | 2 +- packages/feel-input-component/package.json | 2 +- packages/form-generation-tool/package.json | 2 +- packages/image-env-to-json/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- packages/kie-editors-standalone/package.json | 2 +- packages/monaco-editor/package.json | 2 +- packages/online-editor/package.json | 2 +- packages/patternfly-base/package.json | 2 +- packages/pmml-editor/package.json | 2 +- packages/pmml-vscode-extension/package.json | 2 +- .../package.json | 3 +- .../package.json | 3 +- .../package.json | 3 +- packages/scesim-editor/package.json | 2 +- .../serverless-logic-web-tools/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../sonataflow-deployment-webapp/package.json | 2 +- packages/storybook-base/package.json | 2 +- .../stunner-editors-dmn-loader/package.json | 2 +- .../uniforms-bootstrap4-codegen/package.json | 2 +- .../uniforms-patternfly-codegen/package.json | 2 +- packages/uniforms-patternfly/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- packages/webpack-base/package.json | 2 +- packages/yard-editor/package.json | 2 +- packages/yard-model/package.json | 2 +- packages/yard-vscode-extension/package.json | 2 +- pnpm-lock.yaml | 3563 +++++++++-------- 63 files changed, 2052 insertions(+), 1639 deletions(-) diff --git a/README.md b/README.md index df3dc6f0a74..5d41dc7ffd7 100644 --- a/README.md +++ b/README.md @@ -185,7 +185,7 @@ The Apache KIE Tools project contains several applications. To develop each one 1. After you've successfully built the project following the instructions above, open the `packages/kie-editors-dev-vscode-extension` folder on VS Code. Use a new VS Code window so that the `packages/kie-editors-dev-vscode-extension` folder shows up as root in the VS Code explorer. 2. From there, you can Run the extension or the end-to-end tests by using the `Debug` menu/section. You can also use the respective shortcuts (F5 to start debugging, for instance). -3. **NOTE:** To run the VS Code extension in development mode, you need `webpack` and `webpack-cli` to be globally installed on NPM. Normally you can do that with `npm install -g webpack@^5.88.2 webpack-cli@^4.10.0`, but `sudo` may be required depending on your installation. +3. **NOTE:** To run the VS Code extension in development mode, you need `webpack` and `webpack-cli` to be globally installed on NPM. Normally you can do that with `npm install -g webpack@^5.92.1 webpack-cli@^4.10.0`, but `sudo` may be required depending on your installation. 4. **Remember!** If you make changes to any package other than `packages/kie-editors-dev-vscode-extension`, you have to manually rebuild them before relaunching the extension on VS Code. #### VS Code Extension (Serverless Workflow Editor) diff --git a/examples/base64png-editor-chrome-extension/package.json b/examples/base64png-editor-chrome-extension/package.json index eeab5bc3347..08129d5c413 100644 --- a/examples/base64png-editor-chrome-extension/package.json +++ b/examples/base64png-editor-chrome-extension/package.json @@ -33,7 +33,7 @@ "copy-webpack-plugin": "^11.0.0", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/examples/base64png-editor-vscode-extension/package.json b/examples/base64png-editor-vscode-extension/package.json index 4beb32b86f7..cdbd9ee73c2 100644 --- a/examples/base64png-editor-vscode-extension/package.json +++ b/examples/base64png-editor-vscode-extension/package.json @@ -38,7 +38,7 @@ "@vscode/vsce": "^2.22.0", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/examples/ping-pong-view-angular/package.json b/examples/ping-pong-view-angular/package.json index 2a40e5e30a2..a3f6532c905 100644 --- a/examples/ping-pong-view-angular/package.json +++ b/examples/ping-pong-view-angular/package.json @@ -46,6 +46,7 @@ "@kie-tools/root-env": "workspace:*", "@kie-tools/tsconfig": "workspace:*", "rimraf": "^3.0.2", - "typescript": "^5.5.3" + "typescript": "^5.5.3", + "webpack": "^5.92.1" } } diff --git a/examples/todo-list-view-vscode-extension/package.json b/examples/todo-list-view-vscode-extension/package.json index a18638a0fba..f94483d86b3 100644 --- a/examples/todo-list-view-vscode-extension/package.json +++ b/examples/todo-list-view-vscode-extension/package.json @@ -36,7 +36,7 @@ "@vscode/vsce": "^2.22.0", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/examples/uniforms-patternfly/package.json b/examples/uniforms-patternfly/package.json index 68b1c45581f..9b643bf55e5 100644 --- a/examples/uniforms-patternfly/package.json +++ b/examples/uniforms-patternfly/package.json @@ -36,7 +36,7 @@ "react-router-dom": "^5.3.4", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/examples/webapp/package.json b/examples/webapp/package.json index 0a7d0f55ce0..19d3a076b0a 100644 --- a/examples/webapp/package.json +++ b/examples/webapp/package.json @@ -46,7 +46,7 @@ "react-router-dom": "^5.3.4", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/boxed-expression-component/package.json b/packages/boxed-expression-component/package.json index d17ad505396..44e84bdec63 100644 --- a/packages/boxed-expression-component/package.json +++ b/packages/boxed-expression-component/package.json @@ -80,7 +80,7 @@ "storybook": "^7.3.2", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/bpmn-vscode-extension/package.json b/packages/bpmn-vscode-extension/package.json index 20e2d65cb74..48400e50396 100644 --- a/packages/bpmn-vscode-extension/package.json +++ b/packages/bpmn-vscode-extension/package.json @@ -45,7 +45,7 @@ "copy-webpack-plugin": "^11.0.0", "process": "^0.11.10", "rimraf": "^3.0.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/chrome-extension-pack-kogito-kie-editors/package.json b/packages/chrome-extension-pack-kogito-kie-editors/package.json index 7bd978b3c00..6030fcbd441 100644 --- a/packages/chrome-extension-pack-kogito-kie-editors/package.json +++ b/packages/chrome-extension-pack-kogito-kie-editors/package.json @@ -57,7 +57,7 @@ "start-server-and-test": "^2.0.3", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/chrome-extension-serverless-workflow-editor/package.json b/packages/chrome-extension-serverless-workflow-editor/package.json index 003d780d3c0..06c85c0881b 100644 --- a/packages/chrome-extension-serverless-workflow-editor/package.json +++ b/packages/chrome-extension-serverless-workflow-editor/package.json @@ -60,7 +60,7 @@ "typescript": "^5.5.3", "vscode-languageserver-textdocument": "^1.0.4", "vscode-languageserver-types": "^3.16.0", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/cors-proxy/package.json b/packages/cors-proxy/package.json index ab940523999..4a51561146e 100644 --- a/packages/cors-proxy/package.json +++ b/packages/cors-proxy/package.json @@ -50,7 +50,7 @@ "run-script-os": "^1.1.6", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-merge": "^5.9.0" } diff --git a/packages/dashbuilder-component-assembler/package.json b/packages/dashbuilder-component-assembler/package.json index 824cbc94434..8524321ba93 100644 --- a/packages/dashbuilder-component-assembler/package.json +++ b/packages/dashbuilder-component-assembler/package.json @@ -36,7 +36,7 @@ "copy-webpack-plugin": "^11.0.0", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-echarts/package.json b/packages/dashbuilder-component-echarts/package.json index 87505eda23b..6c12f83918a 100644 --- a/packages/dashbuilder-component-echarts/package.json +++ b/packages/dashbuilder-component-echarts/package.json @@ -42,7 +42,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-map/package.json b/packages/dashbuilder-component-map/package.json index 7044adf9135..3df60281448 100644 --- a/packages/dashbuilder-component-map/package.json +++ b/packages/dashbuilder-component-map/package.json @@ -46,7 +46,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-svg-heatmap/package.json b/packages/dashbuilder-component-svg-heatmap/package.json index b2f017e5e40..586be3f3452 100644 --- a/packages/dashbuilder-component-svg-heatmap/package.json +++ b/packages/dashbuilder-component-svg-heatmap/package.json @@ -43,7 +43,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-table/package.json b/packages/dashbuilder-component-table/package.json index d55c118f4d6..3f3f6cf69bf 100644 --- a/packages/dashbuilder-component-table/package.json +++ b/packages/dashbuilder-component-table/package.json @@ -45,7 +45,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-timeseries/package.json b/packages/dashbuilder-component-timeseries/package.json index 43d0a52097f..8970bb02d55 100644 --- a/packages/dashbuilder-component-timeseries/package.json +++ b/packages/dashbuilder-component-timeseries/package.json @@ -42,7 +42,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-uniforms/package.json b/packages/dashbuilder-component-uniforms/package.json index d5d9670f348..ff410e5e442 100644 --- a/packages/dashbuilder-component-uniforms/package.json +++ b/packages/dashbuilder-component-uniforms/package.json @@ -48,7 +48,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-component-victory-charts/package.json b/packages/dashbuilder-component-victory-charts/package.json index bad138496c8..05756f7275c 100644 --- a/packages/dashbuilder-component-victory-charts/package.json +++ b/packages/dashbuilder-component-victory-charts/package.json @@ -49,7 +49,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-editor/package.json b/packages/dashbuilder-editor/package.json index a6313916229..4eac6a727d7 100644 --- a/packages/dashbuilder-editor/package.json +++ b/packages/dashbuilder-editor/package.json @@ -65,7 +65,7 @@ "start-server-and-test": "^2.0.3", "typescript": "^5.5.3", "vscode-json-languageservice": "^4.2.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-viewer-deployment-webapp/package.json b/packages/dashbuilder-viewer-deployment-webapp/package.json index 35f0542fc1e..82656db978f 100644 --- a/packages/dashbuilder-viewer-deployment-webapp/package.json +++ b/packages/dashbuilder-viewer-deployment-webapp/package.json @@ -54,7 +54,7 @@ "html-webpack-plugin": "^5.3.2", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dashbuilder-viewer/package.json b/packages/dashbuilder-viewer/package.json index 17330dd3288..7c848d5142f 100644 --- a/packages/dashbuilder-viewer/package.json +++ b/packages/dashbuilder-viewer/package.json @@ -55,7 +55,7 @@ "start-server-and-test": "^2.0.3", "typescript": "^5.5.3", "vscode-json-languageservice": "^4.2.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dev-deployment-dmn-form-webapp/package.json b/packages/dev-deployment-dmn-form-webapp/package.json index 03ef39f0464..8036a264f34 100644 --- a/packages/dev-deployment-dmn-form-webapp/package.json +++ b/packages/dev-deployment-dmn-form-webapp/package.json @@ -72,7 +72,7 @@ "ts-jest": "^29.1.5", "ts-node": "^10.9.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dmn-editor-standalone/package.json b/packages/dmn-editor-standalone/package.json index 795ecac7e71..8322cfdbd01 100644 --- a/packages/dmn-editor-standalone/package.json +++ b/packages/dmn-editor-standalone/package.json @@ -84,7 +84,7 @@ "run-script-os": "^1.1.6", "storybook": "^7.3.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-bundle-analyzer": "^4.10.2", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", diff --git a/packages/dmn-editor/package.json b/packages/dmn-editor/package.json index b1ee3fdf418..48940c12c4f 100644 --- a/packages/dmn-editor/package.json +++ b/packages/dmn-editor/package.json @@ -97,7 +97,7 @@ "start-server-and-test": "^2.0.3", "storybook": "^7.3.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/dmn-vscode-extension/package.json b/packages/dmn-vscode-extension/package.json index f0f13b79113..74266ee7309 100644 --- a/packages/dmn-vscode-extension/package.json +++ b/packages/dmn-vscode-extension/package.json @@ -48,7 +48,7 @@ "process": "^0.11.10", "rimraf": "^3.0.2", "stream-browserify": "3.0.0", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/extended-services-vscode-extension/package.json b/packages/extended-services-vscode-extension/package.json index e7500e4ed6e..5f44e8db472 100644 --- a/packages/extended-services-vscode-extension/package.json +++ b/packages/extended-services-vscode-extension/package.json @@ -45,7 +45,7 @@ "copy-webpack-plugin": "^11.0.0", "node-fetch": "^3.3.1", "rimraf": "^3.0.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/feel-input-component/package.json b/packages/feel-input-component/package.json index e3934cec91f..95222784c5d 100644 --- a/packages/feel-input-component/package.json +++ b/packages/feel-input-component/package.json @@ -49,7 +49,7 @@ "rimraf": "^3.0.2", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/form-generation-tool/package.json b/packages/form-generation-tool/package.json index 2e261c2d3b9..3ce1e88afa6 100644 --- a/packages/form-generation-tool/package.json +++ b/packages/form-generation-tool/package.json @@ -62,7 +62,7 @@ "run-script-os": "^1.1.6", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/image-env-to-json/package.json b/packages/image-env-to-json/package.json index f0332efb04a..4db344f52e2 100644 --- a/packages/image-env-to-json/package.json +++ b/packages/image-env-to-json/package.json @@ -36,7 +36,7 @@ "rimraf": "^3.0.2", "run-script-os": "^1.1.6", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/import-java-classes-component/package.json b/packages/import-java-classes-component/package.json index 4cb9b36a19a..0aea92d726a 100644 --- a/packages/import-java-classes-component/package.json +++ b/packages/import-java-classes-component/package.json @@ -55,7 +55,7 @@ "rimraf": "^3.0.2", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/kie-editors-dev-vscode-extension/package.json b/packages/kie-editors-dev-vscode-extension/package.json index dd953f76082..907539fc928 100644 --- a/packages/kie-editors-dev-vscode-extension/package.json +++ b/packages/kie-editors-dev-vscode-extension/package.json @@ -76,7 +76,7 @@ "sanitize-filename-ts": "^1.0.2", "typescript": "^5.5.3", "vscode-extension-tester": "^8.3.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/kie-editors-standalone/package.json b/packages/kie-editors-standalone/package.json index 6d82ff13779..27926f2fb7d 100644 --- a/packages/kie-editors-standalone/package.json +++ b/packages/kie-editors-standalone/package.json @@ -87,7 +87,7 @@ "ts-jest": "^29.1.5", "typescript": "^5.5.3", "underscore": "^1.13.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/monaco-editor/package.json b/packages/monaco-editor/package.json index 69037f6fbd7..de7159de94e 100644 --- a/packages/monaco-editor/package.json +++ b/packages/monaco-editor/package.json @@ -32,7 +32,7 @@ "ts-loader": "^9.4.2", "typescript": "^5.5.3", "url-loader": "^4.1.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/online-editor/package.json b/packages/online-editor/package.json index 3a3be813377..1865f34cfe1 100644 --- a/packages/online-editor/package.json +++ b/packages/online-editor/package.json @@ -119,7 +119,7 @@ "ts-jest": "^29.1.5", "ts-node": "^10.9.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/patternfly-base/package.json b/packages/patternfly-base/package.json index d2fc6efa8e8..68cd0375722 100644 --- a/packages/patternfly-base/package.json +++ b/packages/patternfly-base/package.json @@ -27,6 +27,6 @@ "style-loader": "^2.0.0", "svg-url-loader": "^8.0.0", "url-loader": "^4.1.1", - "webpack": "^5.88.2" + "webpack": "^5.92.1" } } diff --git a/packages/pmml-editor/package.json b/packages/pmml-editor/package.json index a9dcf3a0a83..5b6a21fe867 100644 --- a/packages/pmml-editor/package.json +++ b/packages/pmml-editor/package.json @@ -105,7 +105,7 @@ "ts-jest": "^29.1.5", "ts-node": "^10.9.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/pmml-vscode-extension/package.json b/packages/pmml-vscode-extension/package.json index ff76278abd4..e0815bf755b 100644 --- a/packages/pmml-vscode-extension/package.json +++ b/packages/pmml-vscode-extension/package.json @@ -45,7 +45,7 @@ "file-loader": "^6.2.0", "process": "^0.11.10", "rimraf": "^3.0.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/runtime-tools-management-console-webapp/package.json b/packages/runtime-tools-management-console-webapp/package.json index 075f57a920c..9a8979045f2 100644 --- a/packages/runtime-tools-management-console-webapp/package.json +++ b/packages/runtime-tools-management-console-webapp/package.json @@ -64,7 +64,6 @@ "@types/react-dom": "^17.0.5", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", - "@types/webpack": "^4.41.33", "apollo-server-express": "^3.13.0", "body-parser": "^1.20.2", "concurrently": "^8.2.2", @@ -95,7 +94,7 @@ "url-loader": "^4.1.1", "uuid": "^8.3.2", "waait": "^1.0.5", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/runtime-tools-process-dev-ui-webapp/package.json b/packages/runtime-tools-process-dev-ui-webapp/package.json index 8854fef6bdd..1878229c8a9 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/package.json +++ b/packages/runtime-tools-process-dev-ui-webapp/package.json @@ -78,7 +78,6 @@ "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", "@types/uuid": "^8.3.0", - "@types/webpack": "^4.41.33", "apollo-server-express": "^3.13.0", "body-parser": "^1.20.2", "concurrently": "^8.2.2", @@ -113,7 +112,7 @@ "url": "^0.11.3", "url-loader": "^4.1.1", "waait": "^1.0.5", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/runtime-tools-task-console-webapp/package.json b/packages/runtime-tools-task-console-webapp/package.json index 72139a20fed..f41bc3bd355 100644 --- a/packages/runtime-tools-task-console-webapp/package.json +++ b/packages/runtime-tools-task-console-webapp/package.json @@ -68,7 +68,6 @@ "@types/react-dom": "^17.0.5", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", - "@types/webpack": "^4.41.33", "apollo-server-express": "^3.13.0", "concurrently": "^8.2.2", "copy-webpack-plugin": "^11.0.0", @@ -93,7 +92,7 @@ "url-loader": "^4.1.1", "uuid": "^8.3.2", "waait": "^1.0.5", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/scesim-editor/package.json b/packages/scesim-editor/package.json index 9c686f4cd4c..14b7e854388 100644 --- a/packages/scesim-editor/package.json +++ b/packages/scesim-editor/package.json @@ -62,7 +62,7 @@ "run-script-os": "^1.1.6", "storybook": "^7.3.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/serverless-logic-web-tools/package.json b/packages/serverless-logic-web-tools/package.json index 53454f21b74..c855492bb4d 100644 --- a/packages/serverless-logic-web-tools/package.json +++ b/packages/serverless-logic-web-tools/package.json @@ -143,7 +143,7 @@ "ts-node": "^10.9.2", "typescript": "^5.5.3", "vscode-languageserver-textdocument": "^1.0.4", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/serverless-workflow-combined-editor/package.json b/packages/serverless-workflow-combined-editor/package.json index d2e08f3b9a7..e02cf61a3a2 100644 --- a/packages/serverless-workflow-combined-editor/package.json +++ b/packages/serverless-workflow-combined-editor/package.json @@ -67,7 +67,7 @@ "start-server-and-test": "^2.0.3", "typescript": "^5.5.3", "vscode-json-languageservice": "^4.2.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/serverless-workflow-dev-ui-webapp/package.json b/packages/serverless-workflow-dev-ui-webapp/package.json index 81e05f336cb..5487e71004c 100644 --- a/packages/serverless-workflow-dev-ui-webapp/package.json +++ b/packages/serverless-workflow-dev-ui-webapp/package.json @@ -105,7 +105,7 @@ "typescript": "^5.5.3", "url": "^0.11.3", "url-loader": "^4.1.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/serverless-workflow-standalone-editor/package.json b/packages/serverless-workflow-standalone-editor/package.json index c0374b5c545..4bae4d698bf 100644 --- a/packages/serverless-workflow-standalone-editor/package.json +++ b/packages/serverless-workflow-standalone-editor/package.json @@ -80,7 +80,7 @@ "vscode-json-languageservice": "^4.2.1", "vscode-languageserver-textdocument": "^1.0.4", "vscode-languageserver-types": "^3.16.0", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/serverless-workflow-text-editor/package.json b/packages/serverless-workflow-text-editor/package.json index 09102cfb60b..d581690fe29 100644 --- a/packages/serverless-workflow-text-editor/package.json +++ b/packages/serverless-workflow-text-editor/package.json @@ -59,7 +59,7 @@ "start-server-and-test": "^2.0.3", "typescript": "^5.5.3", "vscode-json-languageservice": "^4.2.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/serverless-workflow-vscode-extension/package.json b/packages/serverless-workflow-vscode-extension/package.json index d66a07739cc..21f008fa211 100644 --- a/packages/serverless-workflow-vscode-extension/package.json +++ b/packages/serverless-workflow-vscode-extension/package.json @@ -81,7 +81,7 @@ "selenium-webdriver": "^4.15.0", "typescript": "^5.5.3", "vscode-extension-tester": "^8.3.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/sonataflow-deployment-webapp/package.json b/packages/sonataflow-deployment-webapp/package.json index b6b845a8834..8ec7243a7c2 100644 --- a/packages/sonataflow-deployment-webapp/package.json +++ b/packages/sonataflow-deployment-webapp/package.json @@ -78,7 +78,7 @@ "terser-webpack-plugin": "^5.3.9", "ts-jest": "^29.1.5", "url": "^0.11.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/storybook-base/package.json b/packages/storybook-base/package.json index 28bf8ba28ec..d4bfdc8fb7b 100644 --- a/packages/storybook-base/package.json +++ b/packages/storybook-base/package.json @@ -48,7 +48,7 @@ "rimraf": "^3.0.2", "storybook": "^7.3.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-merge": "^5.9.0" } } diff --git a/packages/stunner-editors-dmn-loader/package.json b/packages/stunner-editors-dmn-loader/package.json index 09f0c465184..812e7ac9799 100644 --- a/packages/stunner-editors-dmn-loader/package.json +++ b/packages/stunner-editors-dmn-loader/package.json @@ -36,7 +36,7 @@ "@types/react-dom": "^17.0.5", "rimraf": "^3.0.2", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/uniforms-bootstrap4-codegen/package.json b/packages/uniforms-bootstrap4-codegen/package.json index c6799ee3c75..03cb975acc7 100644 --- a/packages/uniforms-bootstrap4-codegen/package.json +++ b/packages/uniforms-bootstrap4-codegen/package.json @@ -59,7 +59,7 @@ "simpl-schema": "^1.12.0", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", "webpack-node-externals": "^3.0.0" diff --git a/packages/uniforms-patternfly-codegen/package.json b/packages/uniforms-patternfly-codegen/package.json index bb6385eb630..75d3d7bf1ab 100644 --- a/packages/uniforms-patternfly-codegen/package.json +++ b/packages/uniforms-patternfly-codegen/package.json @@ -57,7 +57,7 @@ "simpl-schema": "^1.12.0", "ts-jest": "^29.1.5", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/uniforms-patternfly/package.json b/packages/uniforms-patternfly/package.json index f2046c965b2..cb0f36a7100 100644 --- a/packages/uniforms-patternfly/package.json +++ b/packages/uniforms-patternfly/package.json @@ -61,7 +61,7 @@ "ts-node": "^10.9.2", "typescript": "^5.5.3", "uniforms-bridge-simple-schema-2": "^3.10.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/vscode-extension-dashbuilder-editor/package.json b/packages/vscode-extension-dashbuilder-editor/package.json index 8ec169bcc0f..dd199cbd16b 100644 --- a/packages/vscode-extension-dashbuilder-editor/package.json +++ b/packages/vscode-extension-dashbuilder-editor/package.json @@ -70,7 +70,7 @@ "selenium-webdriver": "^4.15.0", "typescript": "^5.5.3", "vscode-extension-tester": "^8.3.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/vscode-extension-kie-ba-bundle/package.json b/packages/vscode-extension-kie-ba-bundle/package.json index e494811b5c5..2d71b3a96e1 100644 --- a/packages/vscode-extension-kie-ba-bundle/package.json +++ b/packages/vscode-extension-kie-ba-bundle/package.json @@ -30,7 +30,7 @@ "@types/vscode": "1.67.0", "@vscode/vsce": "^2.22.0", "rimraf": "^3.0.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/vscode-extension-kogito-bundle/package.json b/packages/vscode-extension-kogito-bundle/package.json index 64f7dc05f85..ada242da342 100644 --- a/packages/vscode-extension-kogito-bundle/package.json +++ b/packages/vscode-extension-kogito-bundle/package.json @@ -30,7 +30,7 @@ "@types/vscode": "1.67.0", "@vscode/vsce": "^2.22.0", "rimraf": "^3.0.2", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/webpack-base/package.json b/packages/webpack-base/package.json index d7333d089a6..32da836cc31 100644 --- a/packages/webpack-base/package.json +++ b/packages/webpack-base/package.json @@ -25,6 +25,6 @@ "querystring-es3": "^0.2.1", "source-map-loader": "^2.0.2", "ts-loader": "^9.4.2", - "webpack": "^5.88.2" + "webpack": "^5.92.1" } } diff --git a/packages/yard-editor/package.json b/packages/yard-editor/package.json index f1547719bd1..49fbfe4d57e 100644 --- a/packages/yard-editor/package.json +++ b/packages/yard-editor/package.json @@ -67,7 +67,7 @@ "rimraf": "^3.0.2", "start-server-and-test": "^2.0.3", "typescript": "^5.5.3", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/packages/yard-model/package.json b/packages/yard-model/package.json index d034b4547ab..767d45ffb69 100644 --- a/packages/yard-model/package.json +++ b/packages/yard-model/package.json @@ -36,7 +36,7 @@ "copy-webpack-plugin": "^11.0.0", "rimraf": "^3.0.2", "run-script-os": "^1.1.6", - "webpack": "^5.88.2" + "webpack": "^5.92.1" }, "kieTools": { "requiredPreinstalledCliCommands": [ diff --git a/packages/yard-vscode-extension/package.json b/packages/yard-vscode-extension/package.json index c2847d9ee76..a122ca5fc7e 100644 --- a/packages/yard-vscode-extension/package.json +++ b/packages/yard-vscode-extension/package.json @@ -73,7 +73,7 @@ "selenium-webdriver": "^4.15.0", "typescript": "^5.5.3", "vscode-extension-tester": "^8.3.1", - "webpack": "^5.88.2", + "webpack": "^5.92.1", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f3c8122e490..f9cac243a34 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -158,7 +158,7 @@ importers: version: 0.0.193 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -166,20 +166,20 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 zip-webpack-plugin: specifier: ^4.0.1 - version: 4.0.1(webpack-sources@3.2.3)(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.1(webpack-sources@3.2.3)(webpack@5.92.1(webpack-cli@4.10.0)) examples/base64png-editor-vscode-extension: dependencies: @@ -224,14 +224,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -395,6 +395,9 @@ importers: typescript: specifier: ^5.5.3 version: 5.5.3 + webpack: + specifier: ^5.92.1 + version: 5.92.1 examples/ping-pong-view-react: dependencies: @@ -532,14 +535,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -609,7 +612,7 @@ importers: version: 1.12.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) react-router-dom: specifier: ^5.3.4 version: 5.3.4(react@17.0.2) @@ -620,14 +623,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -724,7 +727,7 @@ importers: version: 5.3.3 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -738,14 +741,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -948,7 +951,7 @@ importers: version: 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@storybook/react-webpack5': specifier: ^7.3.2 - version: 7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/react-dom@17.0.8)(@types/react@17.0.21)(@types/webpack@4.41.38)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + version: 7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@types/jest': specifier: ^29.5.12 version: 29.5.12 @@ -972,7 +975,7 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -981,7 +984,7 @@ importers: version: 7.0.3 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -1010,14 +1013,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -1130,7 +1133,7 @@ importers: version: 2.22.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -1138,14 +1141,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -1312,7 +1315,7 @@ importers: version: 4.3.10 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -1344,20 +1347,20 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 zip-webpack-plugin: specifier: ^4.0.1 - version: 4.0.1(webpack-sources@3.2.3)(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.1(webpack-sources@3.2.3)(webpack@5.92.1(webpack-cli@4.10.0)) packages/chrome-extension-serverless-workflow-editor: devDependencies: @@ -1429,7 +1432,7 @@ importers: version: 3.5.5 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -1447,7 +1450,7 @@ importers: version: 0.39.0 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) monaco-yaml: specifier: ^4.0.4 version: 4.0.4(monaco-editor@0.39.0) @@ -1473,20 +1476,20 @@ importers: specifier: ^3.16.0 version: 3.17.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 zip-webpack-plugin: specifier: ^4.0.1 - version: 4.0.1(webpack-sources@3.2.3)(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.1(webpack-sources@3.2.3)(webpack@5.92.1(webpack-cli@4.10.0)) packages/chrome-extension-test-helper: devDependencies: @@ -1582,11 +1585,11 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack@5.88.2) + version: 4.10.0(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -1781,7 +1784,7 @@ importers: version: link:../tsconfig copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -1789,14 +1792,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -1897,10 +1900,10 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -1908,14 +1911,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2028,10 +2031,10 @@ importers: version: 1.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2039,14 +2042,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2104,10 +2107,10 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2115,14 +2118,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2180,13 +2183,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2194,14 +2197,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2256,10 +2259,10 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2267,14 +2270,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2347,10 +2350,10 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2358,14 +2361,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2435,13 +2438,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2449,14 +2452,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2547,7 +2550,7 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -2556,7 +2559,7 @@ importers: version: 3.0.1 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2570,14 +2573,14 @@ importers: specifier: ^4.2.1 version: 4.2.1 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2732,7 +2735,7 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -2752,14 +2755,14 @@ importers: specifier: ^4.2.1 version: 4.2.1 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -2847,13 +2850,13 @@ importers: version: 5.3.3 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-replace-webpack-plugin: specifier: ^2.6.0 version: 2.6.0 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -2861,14 +2864,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -3032,13 +3035,13 @@ importers: version: 5.3.3 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) cross-env: specifier: ^7.0.3 version: 7.0.3 html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -3053,7 +3056,7 @@ importers: version: 3.6.0(jest@29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3))) node-polyfill-webpack-plugin: specifier: ^2.0.1 - version: 2.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -3070,14 +3073,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -3308,7 +3311,7 @@ importers: version: 7.6.13(react@17.0.2) '@storybook/addon-webpack5-compiler-babel': specifier: ^3.0.3 - version: 3.0.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + version: 3.0.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) '@storybook/blocks': specifier: ^7.3.2 version: 7.6.13(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2) @@ -3323,7 +3326,7 @@ importers: version: 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@storybook/react-webpack5': specifier: ^7.3.2 - version: 7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + version: 7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@types/d3-drag': specifier: ^3.0.3 version: 3.0.7 @@ -3347,7 +3350,7 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -3359,7 +3362,7 @@ importers: version: 1.1.9 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) lodash: specifier: ^4.17.21 version: 4.17.21 @@ -3379,14 +3382,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -3549,7 +3552,7 @@ importers: version: 7.6.13(react@17.0.2) '@storybook/addon-webpack5-compiler-babel': specifier: ^3.0.3 - version: 3.0.3(webpack@5.88.2(webpack-cli@4.10.0)) + version: 3.0.3(webpack@5.92.1(webpack-cli@4.10.0)) '@storybook/blocks': specifier: ^7.3.2 version: 7.6.13(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2) @@ -3564,7 +3567,7 @@ importers: version: 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@storybook/react-webpack5': specifier: ^7.3.2 - version: 7.6.13(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + version: 7.6.13(@babel/core@7.23.9)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@types/jest-when': specifier: ^3.5.5 version: 3.5.5 @@ -3597,7 +3600,7 @@ importers: version: 9.5.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(webpack-cli@4.10.0)) junit-report-merger: specifier: ^4.0.0 version: 4.0.0 @@ -3618,7 +3621,7 @@ importers: version: 0.11.10 raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(webpack-cli@4.10.0)) react: specifier: ^17.0.2 version: 17.0.2 @@ -3638,17 +3641,17 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-bundle-analyzer: specifier: ^4.10.2 version: 4.10.2 webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -3988,7 +3991,7 @@ importers: version: 6.0.3 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -3999,14 +4002,14 @@ importers: specifier: 3.0.0 version: 3.0.0 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -4369,7 +4372,7 @@ importers: version: 2.22.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) node-fetch: specifier: ^3.3.1 version: 3.3.1 @@ -4377,14 +4380,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -4457,13 +4460,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -4483,14 +4486,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -4816,14 +4819,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -4988,14 +4991,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -5080,13 +5083,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) identity-obj-proxy: specifier: ^3.0.0 version: 3.0.0 @@ -5115,14 +5118,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -5548,13 +5551,13 @@ importers: version: 4.3.10 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cpr: specifier: ^3.0.1 version: 3.0.1 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) mocha: specifier: ^10.6.0 version: 10.6.0 @@ -5583,14 +5586,14 @@ importers: specifier: ^8.3.1 version: 8.3.1(mocha@10.6.0)(typescript@5.5.3) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -5671,7 +5674,7 @@ importers: version: 1.11.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cypress: specifier: ^13.13.0 version: 13.13.0 @@ -5689,7 +5692,7 @@ importers: version: 9.5.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -5713,7 +5716,7 @@ importers: version: 0.11.10 raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(webpack-cli@4.10.0)) react: specifier: ^17.0.2 version: 17.0.2 @@ -5742,14 +5745,14 @@ importers: specifier: ^1.13.1 version: 1.13.1 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -6106,31 +6109,31 @@ importers: version: link:../tsconfig css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.2.7(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 2.0.0(webpack@5.92.1(webpack-cli@4.10.0)) ts-loader: specifier: ^9.4.2 - version: 9.4.2(typescript@5.5.3)(webpack@5.88.2(webpack-cli@4.10.0)) + version: 9.4.2(typescript@5.5.3)(webpack@5.92.1(webpack-cli@4.10.0)) typescript: specifier: ^5.5.3 version: 5.5.3 url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2(webpack-cli@4.10.0)))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1(webpack-cli@4.10.0)))(webpack@5.92.1(webpack-cli@4.10.0)) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -6411,13 +6414,13 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) html-replace-webpack-plugin: specifier: ^2.6.0 version: 2.6.0 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -6446,14 +6449,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -6492,31 +6495,31 @@ importers: version: link:../root-env css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2) + version: 5.2.7(webpack@5.92.1) file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2) + version: 6.2.0(webpack@5.92.1) raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2) + version: 4.0.2(webpack@5.92.1) sass: specifier: ^1.43.4 version: 1.49.9 sass-loader: specifier: ^12.3.0 - version: 12.4.0(sass@1.49.9)(webpack@5.88.2) + version: 12.4.0(sass@1.49.9)(webpack@5.92.1) style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2) + version: 2.0.0(webpack@5.92.1) svg-url-loader: specifier: ^8.0.0 - version: 8.0.0(webpack@5.88.2) + version: 8.0.0(webpack@5.92.1) url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2))(webpack@5.88.2) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1))(webpack@5.92.1) webpack: - specifier: ^5.88.2 - version: 5.88.2 + specifier: ^5.92.1 + version: 5.92.1 packages/playwright-base: devDependencies: @@ -6685,7 +6688,7 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 @@ -6706,7 +6709,7 @@ importers: version: 1.1.2 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -6738,14 +6741,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -6855,7 +6858,7 @@ importers: version: 2.22.0 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -6863,14 +6866,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -7112,16 +7115,16 @@ importers: devDependencies: '@babel/core': specifier: ^7.16.0 - version: 7.23.9 + version: 7.24.9 '@babel/preset-env': specifier: ^7.16.0 - version: 7.23.9(@babel/core@7.23.9) + version: 7.24.7(@babel/core@7.24.9) '@graphql-codegen/add': specifier: ^3.2.3 version: 3.2.3(graphql@14.3.1) '@graphql-codegen/cli': specifier: ^2.16.5 - version: 2.16.5(@babel/core@7.23.9)(@swc/core@1.3.92)(@types/node@22.0.2)(encoding@0.1.13)(enquirer@2.3.6)(graphql@14.3.1)(typescript@5.5.3) + version: 2.16.5(@babel/core@7.24.9)(@swc/core@1.3.92)(@types/node@22.0.2)(encoding@0.1.13)(enquirer@2.3.6)(graphql@14.3.1)(typescript@5.5.3) '@graphql-codegen/introspection': specifier: ^2.2.3 version: 2.2.3(encoding@0.1.13)(graphql@14.3.1) @@ -7158,9 +7161,6 @@ importers: '@types/react-router-dom': specifier: ^5.3.3 version: 5.3.3 - '@types/webpack': - specifier: ^4.41.33 - version: 4.41.38 apollo-server-express: specifier: ^3.13.0 version: 3.13.0(encoding@0.1.13)(express@4.19.2)(graphql@14.3.1) @@ -7172,7 +7172,7 @@ importers: version: 8.2.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) core-js: specifier: 3.6.5 version: 3.6.5 @@ -7181,19 +7181,19 @@ importers: version: 2.8.5 css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.2.7(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) css-minimizer-webpack-plugin: specifier: ^5.0.1 - version: 5.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) express: specifier: ^4.19.2 version: 4.19.2 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) https-browserify: specifier: ^1.0.0 version: 1.0.0 @@ -7205,7 +7205,7 @@ importers: version: 4.17.21 mini-css-extract-plugin: specifier: ^2.7.6 - version: 2.8.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.9.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) nodemon: specifier: ^3.1.4 version: 3.1.4 @@ -7214,7 +7214,7 @@ importers: version: 3.0.2 sass-loader: specifier: ^12.3.0 - version: 12.4.0(sass@1.77.6)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 12.4.0(sass@1.77.6)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) serve: specifier: ^12.0.1 version: 12.0.1 @@ -7226,13 +7226,13 @@ importers: version: 3.2.0 style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) svg-url-loader: specifier: ^8.0.0 - version: 8.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 8.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) ts-loader: specifier: ^9.4.2 - version: 9.4.2(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 9.4.2(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) tsconfig-paths-webpack-plugin: specifier: ^3.5.2 version: 3.5.2 @@ -7244,7 +7244,7 @@ importers: version: 0.11.3 url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) uuid: specifier: ^8.3.2 version: 8.3.2 @@ -7252,17 +7252,17 @@ importers: specifier: ^1.0.5 version: 1.0.5 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 - version: 5.9.0 + version: 5.10.0 packages/runtime-tools-process-dev-ui-webapp: dependencies: @@ -7310,7 +7310,7 @@ importers: version: 4.224.2 '@patternfly/react-code-editor': specifier: 4.82.113 - version: 4.82.113(react-dom@17.0.2(react@17.0.2))(react-monaco-editor@0.51.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2))(react@17.0.2) + version: 4.82.113(react-dom@17.0.2(react@17.0.2))(react-monaco-editor@0.49.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2))(react@17.0.2) '@patternfly/react-core': specifier: ^4.276.6 version: 4.276.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) @@ -7371,19 +7371,19 @@ importers: devDependencies: '@babel/core': specifier: ^7.16.0 - version: 7.23.9 + version: 7.24.9 '@babel/preset-env': specifier: ^7.16.0 - version: 7.23.9(@babel/core@7.23.9) + version: 7.24.7(@babel/core@7.24.9) '@babel/preset-react': specifier: ^7.16.0 - version: 7.22.15(@babel/core@7.23.9) + version: 7.22.15(@babel/core@7.24.9) '@graphql-codegen/add': specifier: ^3.2.3 version: 3.2.3(graphql@14.3.1) '@graphql-codegen/cli': specifier: ^2.16.5 - version: 2.16.5(@babel/core@7.23.9)(@swc/core@1.3.92)(@types/node@22.0.2)(encoding@0.1.13)(enquirer@2.3.6)(graphql@14.3.1)(typescript@5.5.3) + version: 2.16.5(@babel/core@7.24.9)(@swc/core@1.3.92)(@types/node@22.0.2)(encoding@0.1.13)(enquirer@2.3.6)(graphql@14.3.1)(typescript@5.5.3) '@graphql-codegen/introspection': specifier: ^2.2.3 version: 2.2.3(encoding@0.1.13)(graphql@14.3.1) @@ -7410,7 +7410,7 @@ importers: version: link:../tsconfig '@types/history': specifier: ^4.7.3 - version: 4.7.5 + version: 4.7.11 '@types/react': specifier: ^17.0.6 version: 17.0.21 @@ -7426,9 +7426,6 @@ importers: '@types/uuid': specifier: ^8.3.0 version: 8.3.0 - '@types/webpack': - specifier: ^4.41.33 - version: 4.41.38 apollo-server-express: specifier: ^3.13.0 version: 3.13.0(encoding@0.1.13)(express@4.19.2)(graphql@14.3.1) @@ -7440,7 +7437,7 @@ importers: version: 8.2.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) core-js: specifier: 3.6.5 version: 3.6.5 @@ -7449,25 +7446,25 @@ importers: version: 2.8.5 css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.2.7(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) css-minimizer-webpack-plugin: specifier: ^5.0.1 - version: 5.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) express: specifier: ^4.19.2 version: 4.19.2 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) filemanager-webpack-plugin: specifier: ^7.0.0 - version: 7.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 7.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) graphql: specifier: 14.3.1 version: 14.3.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) https-browserify: specifier: ^1.0.0 version: 1.0.0 @@ -7476,13 +7473,13 @@ importers: version: 3.0.0 mini-css-extract-plugin: specifier: ^2.7.6 - version: 2.8.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.9.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) node-polyfill-webpack-plugin: specifier: ^2.0.1 - version: 2.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) nodemon: specifier: ^3.1.4 version: 3.1.4 @@ -7491,28 +7488,28 @@ importers: version: 7.2.3 raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 sass-loader: specifier: ^12.3.0 - version: 12.4.0(sass@1.77.6)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 12.4.0(sass@1.77.6)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) stream-http: specifier: ^3.2.0 version: 3.2.0 style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) svg-url-loader: specifier: ^8.0.0 - version: 8.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 8.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) swagger-ui-express: specifier: ^5.0.0 version: 5.0.0(express@4.19.2) ts-loader: specifier: ^9.4.2 - version: 9.4.2(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 9.4.2(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) tsconfig-paths-webpack-plugin: specifier: ^3.5.2 version: 3.5.2 @@ -7524,22 +7521,22 @@ importers: version: 0.11.3 url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) waait: specifier: ^1.0.5 version: 1.0.5 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 - version: 5.9.0 + version: 5.10.0 packages/runtime-tools-process-enveloped-components: dependencies: @@ -8599,9 +8596,6 @@ importers: '@types/react-router-dom': specifier: ^5.3.3 version: 5.3.3 - '@types/webpack': - specifier: ^4.41.33 - version: 4.41.38 apollo-server-express: specifier: ^3.13.0 version: 3.13.0(encoding@0.1.13)(express@4.19.2)(graphql@14.3.1) @@ -8610,22 +8604,22 @@ importers: version: 8.2.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.2.7(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) css-minimizer-webpack-plugin: specifier: ^5.0.1 - version: 5.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) express: specifier: ^4.19.2 version: 4.19.2 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) https-browserify: specifier: ^1.0.0 version: 1.0.0 @@ -8634,7 +8628,7 @@ importers: version: 3.0.0 mini-css-extract-plugin: specifier: ^2.7.6 - version: 2.8.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.8.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) nodemon: specifier: ^3.1.4 version: 3.1.4 @@ -8643,19 +8637,19 @@ importers: version: 3.0.2 sass-loader: specifier: ^12.3.0 - version: 12.4.0(sass@1.77.6)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 12.4.0(sass@1.77.6)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) stream-http: specifier: ^3.2.0 version: 3.2.0 style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) svg-url-loader: specifier: ^8.0.0 - version: 8.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 8.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) ts-loader: specifier: ^9.4.2 - version: 9.4.2(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 9.4.2(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) tsconfig-paths-webpack-plugin: specifier: ^3.5.2 version: 3.5.2 @@ -8667,7 +8661,7 @@ importers: version: 0.11.3 url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) uuid: specifier: ^8.3.2 version: 8.3.2 @@ -8675,14 +8669,14 @@ importers: specifier: ^1.0.5 version: 1.0.5 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -8776,7 +8770,7 @@ importers: version: 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@storybook/react-webpack5': specifier: ^7.3.2 - version: 7.6.13(@babel/core@7.18.10)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + version: 7.6.13(@babel/core@7.18.10)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@types/lodash': specifier: ^4.14.168 version: 4.14.169 @@ -8797,13 +8791,13 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cross-env: specifier: ^7.0.3 version: 7.0.3 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -8817,14 +8811,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -9165,7 +9159,7 @@ importers: version: 8.3.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) cypress: specifier: ^13.13.0 version: 13.13.0 @@ -9186,7 +9180,7 @@ importers: version: 2.6.0 html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -9210,10 +9204,10 @@ importers: version: 3.0.5 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) node-polyfill-webpack-plugin: specifier: ^2.0.1 - version: 2.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 2.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -9236,14 +9230,14 @@ importers: specifier: ^1.0.4 version: 1.0.7 webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -9446,13 +9440,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -9466,14 +9460,14 @@ importers: specifier: ^4.2.1 version: 4.2.1 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -9640,28 +9634,28 @@ importers: version: 8.2.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cors: specifier: ^2.8.5 version: 2.8.5 css-loader: specifier: ^5.2.6 - version: 5.2.7(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.2.7(webpack@5.92.1(webpack-cli@4.10.0)) express: specifier: ^4.19.2 version: 4.19.2 file-loader: specifier: ^6.2.0 - version: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) filemanager-webpack-plugin: specifier: ^7.0.0 - version: 7.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.0(webpack@5.92.1(webpack-cli@4.10.0)) graphql: specifier: 14.3.1 version: 14.3.1 html-webpack-plugin: specifier: ^5.3.2 - version: 5.5.3(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.5.3(webpack@5.92.1(webpack-cli@4.10.0)) https-browserify: specifier: ^1.0.0 version: 1.0.0 @@ -9682,28 +9676,28 @@ importers: version: 4.17.21 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) node-polyfill-webpack-plugin: specifier: ^2.0.1 - version: 2.0.1(webpack@5.88.2(webpack-cli@4.10.0)) + version: 2.0.1(webpack@5.92.1(webpack-cli@4.10.0)) raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 sass-loader: specifier: ^12.3.0 - version: 12.4.0(sass@1.77.6)(webpack@5.88.2(webpack-cli@4.10.0)) + version: 12.4.0(sass@1.77.6)(webpack@5.92.1(webpack-cli@4.10.0)) stream-http: specifier: ^3.2.0 version: 3.2.0 style-loader: specifier: ^2.0.0 - version: 2.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 2.0.0(webpack@5.92.1(webpack-cli@4.10.0)) svg-url-loader: specifier: ^8.0.0 - version: 8.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 8.0.0(webpack@5.92.1(webpack-cli@4.10.0)) swagger-ui-express: specifier: ^5.0.0 version: 5.0.0(express@4.19.2) @@ -9718,16 +9712,16 @@ importers: version: 0.11.3 url-loader: specifier: ^4.1.1 - version: 4.1.1(file-loader@6.2.0(webpack@5.88.2(webpack-cli@4.10.0)))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.1.1(file-loader@6.2.0(webpack@5.92.1(webpack-cli@4.10.0)))(webpack@5.92.1(webpack-cli@4.10.0)) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10148,13 +10142,13 @@ importers: version: 1.11.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) filemanager-webpack-plugin: specifier: ^7.0.0 - version: 7.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.0(webpack@5.92.1(webpack-cli@4.10.0)) html-webpack-plugin: specifier: ^5.3.2 - version: 5.3.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.2(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -10175,13 +10169,13 @@ importers: version: 0.39.0 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) monaco-yaml: specifier: ^4.0.4 version: 4.0.4(monaco-editor@0.39.0) raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(webpack-cli@4.10.0)) react: specifier: ^17.0.2 version: 17.0.2 @@ -10219,14 +10213,14 @@ importers: specifier: ^3.16.0 version: 3.17.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10320,10 +10314,10 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -10337,14 +10331,14 @@ importers: specifier: ^4.2.1 version: 4.2.1 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10462,7 +10456,7 @@ importers: version: 4.3.10 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cpr: specifier: ^3.0.1 version: 3.0.1 @@ -10480,7 +10474,7 @@ importers: version: 1.5.1(mocha@10.6.0) monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -10500,14 +10494,14 @@ importers: specifier: ^8.3.1 version: 8.3.1(mocha@10.6.0)(typescript@5.5.3) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10670,7 +10664,7 @@ importers: version: 5.3.3 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -10682,10 +10676,10 @@ importers: version: 16.0.0 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) node-polyfill-webpack-plugin: specifier: ^2.0.1 - version: 2.0.1(webpack@5.88.2(webpack-cli@4.10.0)) + version: 2.0.1(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -10694,7 +10688,7 @@ importers: version: 3.2.0 terser-webpack-plugin: specifier: ^5.3.9 - version: 5.3.9(webpack@5.88.2(webpack-cli@4.10.0)) + version: 5.3.9(webpack@5.92.1(webpack-cli@4.10.0)) ts-jest: specifier: ^29.1.5 version: 29.1.5(@babel/core@7.18.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.18.10))(jest@29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)))(typescript@5.5.3) @@ -10702,14 +10696,14 @@ importers: specifier: ^0.11.3 version: 0.11.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10842,10 +10836,10 @@ importers: version: 7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@storybook/addon-webpack5-compiler-babel': specifier: ^3.0.3 - version: 3.0.3(webpack@5.88.2(esbuild@0.18.20)) + version: 3.0.3(webpack@5.92.1(esbuild@0.18.20)) '@storybook/react-webpack5': specifier: ^7.3.2 - version: 7.4.6(@babel/core@7.23.9)(@types/react-dom@17.0.8)(@types/react@17.0.21)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4) + version: 7.4.6(@babel/core@7.23.9)(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4) '@storybook/theming': specifier: ^7.3.2 version: 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) @@ -10862,8 +10856,8 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(esbuild@0.18.20) + specifier: ^5.92.1 + version: 5.92.1(esbuild@0.18.20) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -10959,14 +10953,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11168,7 +11162,7 @@ importers: version: 1.11.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2) + version: 11.0.0(webpack@5.92.1) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -11183,7 +11177,7 @@ importers: version: 3.6.0(jest@29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3))) raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2) + version: 4.0.2(webpack@5.92.1) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -11197,11 +11191,11 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2 + specifier: ^5.92.1 + version: 5.92.1 webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack@5.88.2) + version: 4.15.1(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11277,7 +11271,7 @@ importers: version: 1.12.2 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)) @@ -11306,14 +11300,14 @@ importers: specifier: ^3.10.2 version: 3.10.2(react@17.0.2) webpack: - specifier: ^5.88.2 - version: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11392,7 +11386,7 @@ importers: version: 1.12.0 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)) @@ -11407,7 +11401,7 @@ importers: version: 3.6.0(jest@29.7.0(@types/node@22.0.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3))) raw-loader: specifier: ^4.0.2 - version: 4.0.2(webpack@5.88.2(webpack-cli@4.10.0)) + version: 4.0.2(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -11421,14 +11415,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11853,7 +11847,7 @@ importers: version: 4.3.10 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) cpr: specifier: ^3.0.1 version: 3.0.1 @@ -11888,14 +11882,14 @@ importers: specifier: ^8.3.1 version: 8.3.1(mocha@10.6.0)(typescript@5.5.3) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11924,14 +11918,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -11960,14 +11954,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -12040,13 +12034,13 @@ importers: version: 0.2.1 source-map-loader: specifier: ^2.0.2 - version: 2.0.2(webpack@5.88.2) + version: 2.0.2(webpack@5.92.1) ts-loader: specifier: ^9.4.2 - version: 9.4.2(typescript@5.5.3)(webpack@5.88.2) + version: 9.4.2(typescript@5.5.3)(webpack@5.92.1) webpack: - specifier: ^5.88.2 - version: 5.88.2 + specifier: ^5.92.1 + version: 5.92.1 packages/workspace: dependencies: @@ -12465,13 +12459,13 @@ importers: version: 17.0.8 copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2(webpack-cli@4.10.0)) + version: 11.0.0(webpack@5.92.1(webpack-cli@4.10.0)) copyfiles: specifier: ^2.4.1 version: 2.4.1 monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -12482,14 +12476,14 @@ importers: specifier: ^5.5.3 version: 5.5.3 webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -12560,7 +12554,7 @@ importers: version: link:../root-env copy-webpack-plugin: specifier: ^11.0.0 - version: 11.0.0(webpack@5.88.2) + version: 11.0.0(webpack@5.92.1) rimraf: specifier: ^3.0.2 version: 3.0.2 @@ -12568,8 +12562,8 @@ importers: specifier: ^1.1.6 version: 1.1.6 webpack: - specifier: ^5.88.2 - version: 5.88.2 + specifier: ^5.92.1 + version: 5.92.1 packages/yard-validator: dependencies: @@ -12737,7 +12731,7 @@ importers: version: 1.5.1(mocha@10.6.0) monaco-editor-webpack-plugin: specifier: ^7.0.1 - version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)) + version: 7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)) process: specifier: ^0.11.10 version: 0.11.10 @@ -12757,14 +12751,14 @@ importers: specifier: ^8.3.1 version: 8.3.1(mocha@10.6.0)(typescript@5.5.3) webpack: - specifier: ^5.88.2 - version: 5.88.2(webpack-cli@4.10.0) + specifier: ^5.92.1 + version: 5.92.1(webpack-cli@4.10.0) webpack-cli: specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) webpack-dev-server: specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + version: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-merge: specifier: ^5.9.0 version: 5.9.0 @@ -18586,9 +18580,6 @@ packages: '@types/estree@0.0.51': resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - '@types/estree@1.0.1': - resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} - '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} @@ -18910,18 +18901,12 @@ packages: '@types/sockjs@0.3.36': resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==} - '@types/source-list-map@0.1.6': - resolution: {integrity: sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==} - '@types/ssri@7.1.1': resolution: {integrity: sha512-DPP/jkDaqGiyU75MyMURxLWyYLwKSjnAuGe9ZCsLp9QZOpXmDfuevk769F0BS86TmRuD5krnp06qw9nSoNO+0g==} '@types/stack-utils@2.0.0': resolution: {integrity: sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==} - '@types/tapable@1.0.12': - resolution: {integrity: sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q==} - '@types/through@0.0.30': resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} @@ -18931,9 +18916,6 @@ packages: '@types/treeify@1.0.0': resolution: {integrity: sha512-ONpcZAEYlbPx4EtJwfTyCDQJGUpKf4sEcuySdCVjK5Fj/3vHp5HII1fqa1/+qrsLnpYELCQTfVW/awsGJePoIg==} - '@types/uglify-js@3.17.5': - resolution: {integrity: sha512-TU+fZFBTBcXj/GpDpDaBmgWk/gn96kMZ+uocaFUlV2f8a6WdMzzI44QBCmGcCiYR0Y6ZlNRiyUyKKt5nl/lbzQ==} - '@types/underscore@1.11.2': resolution: {integrity: sha512-Ls2ylbo7++ITrWk2Yc3G/jijwSq5V3GT0tlgVXEl2kKYXY3ImrtmTCoE2uyTWFRI5owMBriloZFWbE1SXOsE7w==} @@ -18946,12 +18928,6 @@ packages: '@types/vscode@1.67.0': resolution: {integrity: sha512-GH8BDf8cw9AC9080uneJfulhSa7KHSMI2s/CyKePXoGNos9J486w2V4YKoeNUqIEkW4hKoEAWp6/cXTwyGj47g==} - '@types/webpack-sources@3.2.3': - resolution: {integrity: sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw==} - - '@types/webpack@4.41.38': - resolution: {integrity: sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw==} - '@types/wrap-ansi@3.0.0': resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} @@ -19115,9 +19091,6 @@ packages: engines: {node: '>= 16'} hasBin: true - '@webassemblyjs/ast@1.11.6': - resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==} - '@webassemblyjs/ast@1.12.1': resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} @@ -19127,9 +19100,6 @@ packages: '@webassemblyjs/helper-api-error@1.11.6': resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} - '@webassemblyjs/helper-buffer@1.11.6': - resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==} - '@webassemblyjs/helper-buffer@1.12.1': resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==} @@ -19139,9 +19109,6 @@ packages: '@webassemblyjs/helper-wasm-bytecode@1.11.6': resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} - '@webassemblyjs/helper-wasm-section@1.11.6': - resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==} - '@webassemblyjs/helper-wasm-section@1.12.1': resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==} @@ -19154,33 +19121,18 @@ packages: '@webassemblyjs/utf8@1.11.6': resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} - '@webassemblyjs/wasm-edit@1.11.6': - resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==} - '@webassemblyjs/wasm-edit@1.12.1': resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==} - '@webassemblyjs/wasm-gen@1.11.6': - resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==} - '@webassemblyjs/wasm-gen@1.12.1': resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==} - '@webassemblyjs/wasm-opt@1.11.6': - resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==} - '@webassemblyjs/wasm-opt@1.12.1': resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==} - '@webassemblyjs/wasm-parser@1.11.6': - resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==} - '@webassemblyjs/wasm-parser@1.12.1': resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==} - '@webassemblyjs/wast-printer@1.11.6': - resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==} - '@webassemblyjs/wast-printer@1.12.1': resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==} @@ -19379,11 +19331,6 @@ packages: acorn-globals@7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} - acorn-import-assertions@1.9.0: - resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} - peerDependencies: - acorn: ^8 - acorn-import-attributes@1.9.5: resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} peerDependencies: @@ -20144,11 +20091,6 @@ packages: browserify-zlib@0.2.0: resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} - browserslist@4.22.1: - resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - browserslist@4.23.0: resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} @@ -20308,9 +20250,6 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001547: - resolution: {integrity: sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==} - caniuse-lite@1.0.30001600: resolution: {integrity: sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==} @@ -21624,9 +21563,6 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.4.549: - resolution: {integrity: sha512-gpXfJslSi4hYDkA0mTLEpYKRv9siAgSUgZ+UWyk+J5Cttpd1ThCVwdclzIwQSclz3hYn049+M2fgrP1WpvF8xg==} - electron-to-chromium@1.4.719: resolution: {integrity: sha512-FbWy2Q2YgdFzkFUW/W5jBjE9dj+804+98E4Pup78JBPnbdb3pv6IneY2JCPKdeKLh3AOKHQeYf+KwLr7mxGh6Q==} @@ -21774,9 +21710,6 @@ packages: es-iterator-helpers@1.0.15: resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} - es-module-lexer@1.3.0: - resolution: {integrity: sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==} - es-module-lexer@1.4.1: resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} @@ -24941,9 +24874,6 @@ packages: peerDependencies: webpack: '>=5' - node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} - node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} @@ -25711,36 +25641,18 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-modules-extract-imports@3.0.0: - resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - postcss-modules-extract-imports@3.1.0: resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 - postcss-modules-local-by-default@4.0.0: - resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - postcss-modules-local-by-default@4.0.5: resolution: {integrity: sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 - postcss-modules-scope@3.0.0: - resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - postcss-modules-scope@3.2.0: resolution: {integrity: sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==} engines: {node: ^10 || ^12 || >= 14} @@ -25844,10 +25756,6 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.12: - resolution: {integrity: sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.4.38: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} @@ -26310,13 +26218,6 @@ packages: monaco-editor: ^0.33.0 react: '>=17 <= 18' - react-monaco-editor@0.51.0: - resolution: {integrity: sha512-6jx1V8p6gHVKJHFaTvicOtmlhFjOJhekobeNd92ZAo7F5UvAin1cF7bxWLCKgtxClYZ7CB3Ar284Kpbhj22FpQ==} - peerDependencies: - '@types/react': ^17.0.6 - monaco-editor: ^0.34.1 - react: '>=17 <= 18' - react-pure-loaders@3.0.1: resolution: {integrity: sha512-FwJy+NNCGS0ojtslaY0ubhzayw1zgYCY3nGKLEAMjNhIH5p/ld+MOe/JIdh50dUaYf3rqH4TNlJLPl/iy9UOLA==} peerDependencies: @@ -28598,10 +28499,6 @@ packages: walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} - watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - watchpack@2.4.1: resolution: {integrity: sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==} engines: {node: '>=10.13.0'} @@ -28739,16 +28636,6 @@ packages: webpack-virtual-modules@0.5.0: resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==} - webpack@5.88.2: - resolution: {integrity: sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - webpack@5.92.1: resolution: {integrity: sha512-JECQ7IwJb+7fgUFBlrJzbyu3GEuNBcdqr1LD7IbSzwkSmIevTm8PF+wej3Oxuz/JFBUZ6O1o43zsPkwm1C4TmA==} engines: {node: '>=10.13.0'} @@ -29148,7 +29035,7 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.1801.3(chokidar@3.6.0) - '@angular-devkit/build-webpack': 0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1) + '@angular-devkit/build-webpack': 0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)) '@angular-devkit/core': 18.1.3(chokidar@3.6.0) '@angular/build': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(@types/node@22.0.2)(chokidar@3.6.0)(less@4.2.0)(postcss@8.4.38)(stylus@0.59.0)(terser@5.29.2)(typescript@5.5.3) '@angular/compiler-cli': 18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3) @@ -29162,15 +29049,15 @@ snapshots: '@babel/preset-env': 7.24.7(@babel/core@7.24.7) '@babel/runtime': 7.24.7 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1) + '@ngtools/webpack': 18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)) '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.3.2(@types/node@22.0.2)(less@4.2.0)(sass@1.77.6)(stylus@0.59.0)(terser@5.29.2)) ansi-colors: 4.1.3 autoprefixer: 10.4.19(postcss@8.4.38) - babel-loader: 9.1.3(@babel/core@7.24.7)(webpack@5.92.1) + babel-loader: 9.1.3(@babel/core@7.24.7)(webpack@5.92.1(esbuild@0.21.5)) browserslist: 4.23.0 - copy-webpack-plugin: 12.0.2(webpack@5.92.1) + copy-webpack-plugin: 12.0.2(webpack@5.92.1(esbuild@0.21.5)) critters: 0.0.24 - css-loader: 7.1.2(webpack@5.92.1) + css-loader: 7.1.2(webpack@5.92.1(esbuild@0.21.5)) esbuild-wasm: 0.21.5 fast-glob: 3.3.2 http-proxy-middleware: 3.0.0 @@ -29179,11 +29066,11 @@ snapshots: jsonc-parser: 3.3.1 karma-source-map-support: 1.4.0 less: 4.2.0 - less-loader: 12.2.0(less@4.2.0)(webpack@5.92.1) - license-webpack-plugin: 4.0.2(webpack@5.92.1) + less-loader: 12.2.0(less@4.2.0)(webpack@5.92.1(esbuild@0.21.5)) + license-webpack-plugin: 4.0.2(webpack@5.92.1(esbuild@0.21.5)) loader-utils: 3.3.1 magic-string: 0.30.10 - mini-css-extract-plugin: 2.9.0(webpack@5.92.1) + mini-css-extract-plugin: 2.9.0(webpack@5.92.1(esbuild@0.21.5)) mrmime: 2.0.0 open: 10.1.0 ora: 5.4.1 @@ -29191,13 +29078,13 @@ snapshots: picomatch: 4.0.2 piscina: 4.6.1 postcss: 8.4.38 - postcss-loader: 8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1) + postcss-loader: 8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)) resolve-url-loader: 5.0.0 rxjs: 7.8.1 sass: 1.77.6 - sass-loader: 14.2.1(sass@1.77.6)(webpack@5.92.1) + sass-loader: 14.2.1(sass@1.77.6)(webpack@5.92.1(esbuild@0.21.5)) semver: 7.6.2 - source-map-loader: 5.0.0(webpack@5.92.1) + source-map-loader: 5.0.0(webpack@5.92.1(esbuild@0.21.5)) source-map-support: 0.5.21 terser: 5.29.2 tree-kill: 1.2.2 @@ -29207,10 +29094,10 @@ snapshots: vite: 5.3.2(@types/node@22.0.2)(less@4.2.0)(sass@1.77.6)(stylus@0.59.0)(terser@5.29.2) watchpack: 2.4.1 webpack: 5.92.1(esbuild@0.21.5) - webpack-dev-middleware: 7.2.1(webpack@5.92.1) - webpack-dev-server: 5.0.4(webpack@5.92.1) + webpack-dev-middleware: 7.2.1(webpack@5.92.1(esbuild@0.21.5)) + webpack-dev-server: 5.0.4(webpack@5.92.1(esbuild@0.21.5)) webpack-merge: 5.10.0 - webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1) + webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)) optionalDependencies: esbuild: 0.21.5 jest: 29.7.0(@types/node@22.0.2) @@ -29234,12 +29121,12 @@ snapshots: - utf-8-validate - webpack-cli - '@angular-devkit/build-webpack@0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1)': + '@angular-devkit/build-webpack@0.1801.3(chokidar@3.6.0)(webpack-dev-server@5.0.4(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5))': dependencies: '@angular-devkit/architect': 0.1801.3(chokidar@3.6.0) rxjs: 7.8.1 webpack: 5.92.1(esbuild@0.21.5) - webpack-dev-server: 5.0.4(webpack@5.92.1) + webpack-dev-server: 5.0.4(webpack@5.92.1(esbuild@0.21.5)) transitivePeerDependencies: - chokidar @@ -29276,7 +29163,7 @@ snapshots: '@inquirer/confirm': 3.1.11 '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.3.2(@types/node@22.0.2)(less@4.2.0)(sass@1.77.6)(stylus@0.59.0)(terser@5.29.2)) ansi-colors: 4.1.3 - browserslist: 4.23.0 + browserslist: 4.23.2 critters: 0.0.24 esbuild: 0.21.5 fast-glob: 3.3.2 @@ -29627,13 +29514,13 @@ snapshots: '@ardatan/relay-compiler@12.0.0(encoding@0.1.13)(graphql@14.3.1)': dependencies: - '@babel/core': 7.23.9 - '@babel/generator': 7.23.6 - '@babel/parser': 7.23.9 + '@babel/core': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/parser': 7.25.3 '@babel/runtime': 7.23.6 - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 - babel-preset-fbjs: 3.4.0(@babel/core@7.23.9) + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 + babel-preset-fbjs: 3.4.0(@babel/core@7.24.9) chalk: 4.1.2 fb-watchman: 2.0.1 fbjs: 3.0.2(encoding@0.1.13) @@ -29763,7 +29650,7 @@ snapshots: '@babel/code-frame@7.24.7': dependencies: '@babel/highlight': 7.24.7 - picocolors: 1.0.0 + picocolors: 1.0.1 '@babel/compat-data@7.17.7': {} @@ -29877,7 +29764,7 @@ snapshots: '@babel/core@7.24.9': dependencies: - '@ampproject/remapping': 2.2.0 + '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.24.7 '@babel/generator': 7.25.0 '@babel/helper-compilation-targets': 7.25.2 @@ -29944,11 +29831,11 @@ snapshots: '@babel/helper-annotate-as-pure@7.18.6': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-annotate-as-pure@7.22.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-annotate-as-pure@7.24.7': dependencies: @@ -29956,11 +29843,11 @@ snapshots: '@babel/helper-builder-binary-assignment-operator-visitor@7.21.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': dependencies: @@ -29990,7 +29877,7 @@ snapshots: '@babel/compat-data': 7.23.5 '@babel/core': 7.18.10 '@babel/helper-validator-option': 7.23.5 - browserslist: 4.23.0 + browserslist: 4.23.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -29998,7 +29885,7 @@ snapshots: dependencies: '@babel/compat-data': 7.23.5 '@babel/helper-validator-option': 7.23.5 - browserslist: 4.23.0 + browserslist: 4.23.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -30006,7 +29893,7 @@ snapshots: dependencies: '@babel/compat-data': 7.23.5 '@babel/helper-validator-option': 7.23.5 - browserslist: 4.23.0 + browserslist: 4.23.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -30096,6 +29983,19 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-create-class-features-plugin@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.24.7 + '@babel/helper-member-expression-to-functions': 7.24.8 + '@babel/helper-optimise-call-expression': 7.24.7 + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.9) + '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/traverse': 7.25.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + '@babel/helper-create-regexp-features-plugin@7.21.8(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -30159,10 +30059,17 @@ snapshots: regexpu-core: 5.3.2 semver: 6.3.1 + '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.24.7 + regexpu-core: 5.3.2 + semver: 6.3.1 + '@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.5 lodash.debounce: 4.0.8 @@ -30174,7 +30081,7 @@ snapshots: '@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.5 lodash.debounce: 4.0.8 @@ -30186,7 +30093,7 @@ snapshots: '@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 - '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.5 lodash.debounce: 4.0.8 @@ -30198,8 +30105,8 @@ snapshots: '@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 debug: 4.3.5 lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -30209,8 +30116,8 @@ snapshots: '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 debug: 4.3.5 lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -30220,8 +30127,8 @@ snapshots: '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 debug: 4.3.5 lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -30239,6 +30146,17 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + debug: 4.3.5 + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + '@babel/helper-environment-visitor@7.16.7': dependencies: '@babel/types': 7.23.9 @@ -30258,8 +30176,8 @@ snapshots: '@babel/helper-function-name@7.23.0': dependencies: - '@babel/template': 7.23.9 - '@babel/types': 7.23.9 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 '@babel/helper-hoist-variables@7.16.7': dependencies: @@ -30267,11 +30185,11 @@ snapshots: '@babel/helper-hoist-variables@7.22.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-member-expression-to-functions@7.23.0': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-member-expression-to-functions@7.24.8': dependencies: @@ -30282,7 +30200,7 @@ snapshots: '@babel/helper-module-imports@7.22.15': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-module-imports@7.24.7': dependencies: @@ -30393,7 +30311,7 @@ snapshots: '@babel/helper-optimise-call-expression@7.22.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-optimise-call-expression@7.24.7': dependencies: @@ -30413,7 +30331,7 @@ snapshots: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-remap-async-to-generator@7.18.9(@babel/core@7.24.9)': dependencies: @@ -30421,7 +30339,7 @@ snapshots: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.18.10)': dependencies: @@ -30453,6 +30371,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.24.7 + '@babel/helper-wrap-function': 7.25.0 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/helper-replace-supers@7.22.20(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -30497,9 +30424,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-replace-supers@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-member-expression-to-functions': 7.24.8 + '@babel/helper-optimise-call-expression': 7.24.7 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/helper-simple-access@7.22.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-simple-access@7.24.7': dependencies: @@ -30510,7 +30446,7 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers@7.22.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-skip-transparent-expression-wrappers@7.24.7': dependencies: @@ -30525,11 +30461,11 @@ snapshots: '@babel/helper-split-export-declaration@7.18.6': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-split-export-declaration@7.22.6': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@babel/helper-split-export-declaration@7.24.7': dependencies: @@ -30556,8 +30492,8 @@ snapshots: '@babel/helper-wrap-function@7.22.20': dependencies: '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.23.9 - '@babel/types': 7.23.9 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 '@babel/helper-wrap-function@7.25.0': dependencies: @@ -30621,7 +30557,7 @@ snapshots: '@babel/helper-validator-identifier': 7.24.7 chalk: 2.4.2 js-tokens: 4.0.0 - picocolors: 1.0.0 + picocolors: 1.0.1 '@babel/parser@7.17.9': dependencies: @@ -30655,6 +30591,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -30690,6 +30634,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -30741,6 +30690,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -30761,6 +30719,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/plugin-proposal-async-generator-functions@7.16.8(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -30801,10 +30767,10 @@ snapshots: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.18.10) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.23.9)': + '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.24.9) '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-proposal-class-static-block@7.17.6(@babel/core@7.16.12)': @@ -30918,11 +30884,11 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.18.10) - '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.23.9)': + '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.9) '@babel/plugin-proposal-numeric-separator@7.16.7(@babel/core@7.16.12)': dependencies: @@ -30969,14 +30935,14 @@ snapshots: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.18.10) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.18.10) - '@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.23.9)': + '@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.24.9)': dependencies: '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.9) '@babel/plugin-proposal-optional-catch-binding@7.16.7(@babel/core@7.16.12)': dependencies: @@ -31024,13 +30990,6 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.18.10) - '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 @@ -31092,6 +31051,10 @@ snapshots: dependencies: '@babel/core': 7.24.7 + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/plugin-proposal-unicode-property-regex@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -31155,31 +31118,30 @@ snapshots: '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 optional: true '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 optional: true '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 optional: true '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 - '@babel/helper-plugin-utils': 7.22.5 - optional: true + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.16.12)': dependencies: @@ -31304,22 +31266,27 @@ snapshots: '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 + + '@babel/plugin-syntax-flow@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-assertions@7.20.0(@babel/core@7.18.10)': dependencies: @@ -31341,11 +31308,21 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.23.9)': + dependencies: + '@babel/core': 7.23.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -31366,38 +31343,42 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 optional: true '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 optional: true '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 - '@babel/helper-plugin-utils': 7.22.5 - optional: true + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.16.12)': dependencies: @@ -31714,6 +31695,11 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -31732,6 +31718,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-transform-arrow-functions@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -31767,6 +31759,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-async-generator-functions@7.22.15(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -31801,6 +31798,16 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-environment-visitor': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-async-to-generator@7.16.8(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -31852,6 +31859,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-imports': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-block-scoped-functions@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -31887,6 +31903,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-block-scoping@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -31922,6 +31943,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -31948,6 +31974,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -31978,6 +32012,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-classes@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32064,6 +32107,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-classes@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.24.7 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.9) + '@babel/traverse': 7.25.3 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-computed-properties@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32104,6 +32159,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/template': 7.25.0 + '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/template': 7.25.0 + '@babel/plugin-transform-destructuring@7.17.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32139,6 +32200,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-dotall-regex@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32199,6 +32265,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-duplicate-keys@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32234,6 +32306,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32258,6 +32335,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.7) + '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-exponentiation-operator@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32302,6 +32385,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32326,30 +32417,42 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.7) + '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.16.12) '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.18.10) '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.0) '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.9) + '@babel/plugin-transform-flow-strip-types@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-for-of@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32390,6 +32493,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-function-name@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32441,6 +32552,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32465,6 +32585,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.7) + '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-literals@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32500,6 +32626,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-literals@7.25.2(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32524,6 +32655,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.7) + '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-transform-member-expression-literals@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32559,6 +32696,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-modules-amd@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32605,6 +32747,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-modules-commonjs@7.17.9(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32663,6 +32813,13 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-simple-access': 7.22.5 + '@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-simple-access': 7.22.5 + '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32672,6 +32829,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-simple-access': 7.24.7 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-modules-systemjs@7.17.8(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32732,6 +32898,16 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-identifier': 7.24.7 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-modules-umd@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32776,6 +32952,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-named-capturing-groups-regex@7.16.8(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32810,6 +32994,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-new-target@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32845,6 +33035,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32869,6 +33064,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.7) + '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32893,6 +33094,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.7) + '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.23.0)': dependencies: '@babel/compat-data': 7.23.5 @@ -32928,6 +33135,14 @@ snapshots: '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.7) '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.7) + '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-object-super@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -32972,6 +33187,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -32996,6 +33219,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.7) + '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-optional-chaining@7.23.0(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -33026,6 +33255,15 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-parameters@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33076,6 +33314,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -33102,6 +33345,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -33136,6 +33387,16 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.24.7 + '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-property-literals@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33171,10 +33432,15 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-constant-elements@7.17.12(@babel/core@7.23.9)': + '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + + '@babel/plugin-transform-react-constant-elements@7.17.12(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-react-display-name@7.16.0(@babel/core@7.16.12)': dependencies: @@ -33211,6 +33477,11 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-transform-react-display-name@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-transform-react-jsx-development@7.16.0(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33246,6 +33517,11 @@ snapshots: '@babel/core': 7.23.9 '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.9) + '@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.24.9) + '@babel/plugin-transform-react-jsx@7.16.0(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33360,6 +33636,12 @@ snapshots: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-transform-react-pure-annotations@7.22.5(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-transform-regenerator@7.17.9(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33400,6 +33682,12 @@ snapshots: '@babel/helper-plugin-utils': 7.24.8 regenerator-transform: 0.15.2 + '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + regenerator-transform: 0.15.2 + '@babel/plugin-transform-reserved-words@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33435,6 +33723,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-runtime@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33482,6 +33775,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-spread@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33526,6 +33824,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-sticky-regex@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33561,6 +33867,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-template-literals@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33596,6 +33907,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-typeof-symbol@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33631,6 +33947,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-typescript@7.22.15(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33663,6 +33984,14 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.9) + '@babel/plugin-transform-typescript@7.22.15(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-unicode-escapes@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33698,6 +34027,11 @@ snapshots: '@babel/core': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -33722,6 +34056,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-regex@7.16.7(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -33764,6 +34104,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 @@ -33788,6 +34134,12 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.7) '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.24.9) + '@babel/helper-plugin-utils': 7.24.8 + '@babel/preset-env@7.16.11(@babel/core@7.16.12)': dependencies: '@babel/compat-data': 7.17.7 @@ -34369,7 +34721,94 @@ snapshots: babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.7) babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.7) babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.7) - core-js-compat: 3.35.1 + core-js-compat: 3.37.1 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/preset-env@7.24.7(@babel/core@7.24.9)': + dependencies: + '@babel/compat-data': 7.25.2 + '@babel/core': 7.24.9 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.24.9) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.9) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.9) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.9) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.9) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.9) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.9) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.9) + '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-async-generator-functions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.24.9) + '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.24.9) + '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.24.9) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.9) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.9) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.9) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.9) + core-js-compat: 3.37.1 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -34377,31 +34816,38 @@ snapshots: '@babel/preset-flow@7.22.15(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.16.12) '@babel/preset-flow@7.22.15(@babel/core@7.18.10)': dependencies: '@babel/core': 7.18.10 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.18.10) '@babel/preset-flow@7.22.15(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.0) '@babel/preset-flow@7.22.15(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.9) + '@babel/preset-flow@7.22.15(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-validator-option': 7.24.8 + '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.24.9) + '@babel/preset-modules@0.1.5(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -34432,22 +34878,29 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.0)': dependencies: '@babel/core': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/types': 7.25.2 esutils: 2.0.3 '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.9)': dependencies: '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/types': 7.25.2 esutils: 2.0.3 '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/types': 7.25.2 + esutils: 2.0.3 + + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/types': 7.25.2 esutils: 2.0.3 '@babel/preset-react@7.16.0(@babel/core@7.16.12)': @@ -34520,6 +34973,16 @@ snapshots: '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.9) '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.23.9) + '@babel/preset-react@7.22.15(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.24.9) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-react-pure-annotations': 7.22.5(@babel/core@7.24.9) + '@babel/preset-typescript@7.23.0(@babel/core@7.16.12)': dependencies: '@babel/core': 7.16.12 @@ -34556,9 +35019,18 @@ snapshots: '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.9) '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.9) - '@babel/register@7.22.15(@babel/core@7.23.9)': + '@babel/preset-typescript@7.23.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.9) + '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.24.9) + + '@babel/register@7.22.15(@babel/core@7.24.9)': + dependencies: + '@babel/core': 7.24.9 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 @@ -35062,6 +35534,57 @@ snapshots: - typescript - utf-8-validate + '@graphql-codegen/cli@2.16.5(@babel/core@7.24.9)(@swc/core@1.3.92)(@types/node@22.0.2)(encoding@0.1.13)(enquirer@2.3.6)(graphql@14.3.1)(typescript@5.5.3)': + dependencies: + '@babel/generator': 7.23.6 + '@babel/template': 7.23.9 + '@babel/types': 7.23.9 + '@graphql-codegen/core': 2.6.8(graphql@14.3.1) + '@graphql-codegen/plugin-helpers': 3.1.2(graphql@14.3.1) + '@graphql-tools/apollo-engine-loader': 7.3.26(encoding@0.1.13)(graphql@14.3.1) + '@graphql-tools/code-file-loader': 7.3.23(@babel/core@7.24.9)(graphql@14.3.1) + '@graphql-tools/git-loader': 7.3.0(@babel/core@7.24.9)(graphql@14.3.1) + '@graphql-tools/github-loader': 7.3.28(@babel/core@7.24.9)(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1) + '@graphql-tools/graphql-file-loader': 7.5.17(graphql@14.3.1) + '@graphql-tools/json-file-loader': 7.4.18(graphql@14.3.1) + '@graphql-tools/load': 7.8.14(graphql@14.3.1) + '@graphql-tools/prisma-loader': 7.2.72(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1) + '@graphql-tools/url-loader': 7.17.18(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1) + '@graphql-tools/utils': 9.2.1(graphql@14.3.1) + '@whatwg-node/fetch': 0.6.9(@types/node@22.0.2) + chalk: 4.1.2 + chokidar: 3.5.3 + cosmiconfig: 7.0.1 + cosmiconfig-typescript-loader: 4.4.0(@types/node@22.0.2)(cosmiconfig@7.0.1)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3))(typescript@5.5.3) + debounce: 1.2.1 + detect-indent: 6.1.0 + graphql: 14.3.1 + graphql-config: 4.5.0(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1) + inquirer: 8.2.4 + is-glob: 4.0.3 + json-to-pretty-yaml: 1.2.2 + listr2: 4.0.5(enquirer@2.3.6) + log-symbols: 4.1.0 + shell-quote: 1.8.1 + string-env-interpolation: 1.0.1 + ts-log: 2.2.5 + ts-node: 10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3) + tslib: 2.6.2 + yaml: 1.10.2 + yargs: 17.7.2 + transitivePeerDependencies: + - '@babel/core' + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - bufferutil + - cosmiconfig-toml-loader + - encoding + - enquirer + - supports-color + - typescript + - utf-8-validate + '@graphql-codegen/core@2.6.8(graphql@14.3.1)': dependencies: '@graphql-codegen/plugin-helpers': 3.1.2(graphql@14.3.1) @@ -35221,6 +35744,18 @@ snapshots: - '@babel/core' - supports-color + '@graphql-tools/code-file-loader@7.3.23(@babel/core@7.24.9)(graphql@14.3.1)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 7.5.2(@babel/core@7.24.9)(graphql@14.3.1) + '@graphql-tools/utils': 9.2.1(graphql@14.3.1) + globby: 11.1.0 + graphql: 14.3.1 + tslib: 2.6.2 + unixify: 1.0.0 + transitivePeerDependencies: + - '@babel/core' + - supports-color + '@graphql-tools/delegate@9.0.35(graphql@14.3.1)': dependencies: '@graphql-tools/batch-execute': 8.5.22(graphql@14.3.1) @@ -35294,6 +35829,19 @@ snapshots: - '@babel/core' - supports-color + '@graphql-tools/git-loader@7.3.0(@babel/core@7.24.9)(graphql@14.3.1)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 7.5.2(@babel/core@7.24.9)(graphql@14.3.1) + '@graphql-tools/utils': 9.2.1(graphql@14.3.1) + graphql: 14.3.1 + is-glob: 4.0.3 + micromatch: 4.0.5 + tslib: 2.6.2 + unixify: 1.0.0 + transitivePeerDependencies: + - '@babel/core' + - supports-color + '@graphql-tools/github-loader@7.3.28(@babel/core@7.23.9)(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1)': dependencies: '@ardatan/sync-fetch': 0.0.1(encoding@0.1.13) @@ -35310,6 +35858,22 @@ snapshots: - encoding - supports-color + '@graphql-tools/github-loader@7.3.28(@babel/core@7.24.9)(@types/node@22.0.2)(encoding@0.1.13)(graphql@14.3.1)': + dependencies: + '@ardatan/sync-fetch': 0.0.1(encoding@0.1.13) + '@graphql-tools/executor-http': 0.1.10(@types/node@22.0.2)(graphql@14.3.1) + '@graphql-tools/graphql-tag-pluck': 7.5.2(@babel/core@7.24.9)(graphql@14.3.1) + '@graphql-tools/utils': 9.2.1(graphql@14.3.1) + '@whatwg-node/fetch': 0.8.8 + graphql: 14.3.1 + tslib: 2.6.2 + value-or-promise: 1.0.12 + transitivePeerDependencies: + - '@babel/core' + - '@types/node' + - encoding + - supports-color + '@graphql-tools/graphql-file-loader@7.5.17(graphql@14.3.1)': dependencies: '@graphql-tools/import': 6.7.18(graphql@14.3.1) @@ -35321,10 +35885,23 @@ snapshots: '@graphql-tools/graphql-tag-pluck@7.5.2(@babel/core@7.23.9)(graphql@14.3.1)': dependencies: - '@babel/parser': 7.23.9 - '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.9) - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + '@babel/parser': 7.25.3 + '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.23.9) + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 + '@graphql-tools/utils': 9.2.1(graphql@14.3.1) + graphql: 14.3.1 + tslib: 2.6.2 + transitivePeerDependencies: + - '@babel/core' + - supports-color + + '@graphql-tools/graphql-tag-pluck@7.5.2(@babel/core@7.24.9)(graphql@14.3.1)': + dependencies: + '@babel/parser': 7.25.3 + '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.24.9) + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 '@graphql-tools/utils': 9.2.1(graphql@14.3.1) graphql: 14.3.1 tslib: 2.6.2 @@ -35359,7 +35936,7 @@ snapshots: dependencies: '@graphql-tools/utils': 8.9.0(graphql@14.3.1) graphql: 14.3.1 - tslib: 2.6.2 + tslib: 2.6.3 '@graphql-tools/merge@8.4.2(graphql@14.3.1)': dependencies: @@ -35373,7 +35950,7 @@ snapshots: '@graphql-tools/utils': 9.2.1(graphql@14.3.1) fast-json-stable-stringify: 2.1.0 graphql: 14.3.1 - tslib: 2.6.2 + tslib: 2.6.3 '@graphql-tools/optimize@1.4.0(graphql@14.3.1)': dependencies: @@ -35423,7 +36000,7 @@ snapshots: '@graphql-tools/merge': 8.3.1(graphql@14.3.1) '@graphql-tools/utils': 8.9.0(graphql@14.3.1) graphql: 14.3.1 - tslib: 2.6.2 + tslib: 2.6.3 value-or-promise: 1.0.11 '@graphql-tools/schema@9.0.19(graphql@14.3.1)': @@ -35464,7 +36041,7 @@ snapshots: '@graphql-tools/utils@8.9.0(graphql@14.3.1)': dependencies: graphql: 14.3.1 - tslib: 2.6.2 + tslib: 2.6.3 '@graphql-tools/utils@9.2.1(graphql@14.3.1)': dependencies: @@ -35941,7 +36518,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 '@types/node': 20.14.2 chalk: 4.1.2 collect-v8-coverage: 1.0.1 @@ -35970,7 +36547,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 '@types/node': 20.14.2 chalk: 4.1.2 collect-v8-coverage: 1.0.1 @@ -36000,7 +36577,7 @@ snapshots: '@jest/source-map@29.6.3': dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 callsites: 3.1.0 graceful-fs: 4.2.11 @@ -36020,7 +36597,7 @@ snapshots: '@jest/transform@29.7.0': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.18 babel-plugin-istanbul: 6.1.1 @@ -36075,7 +36652,7 @@ snapshots: '@jridgewell/source-map@0.3.3': dependencies: '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.4.14': {} @@ -36247,7 +36824,7 @@ snapshots: pump: 3.0.0 tar-fs: 2.1.1 - '@ngtools/webpack@18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1)': + '@ngtools/webpack@18.1.3(@angular/compiler-cli@18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3))(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5))': dependencies: '@angular/compiler-cli': 18.1.3(@angular/compiler@18.1.3(@angular/core@18.1.3(rxjs@7.5.2)(zone.js@0.14.8)))(typescript@5.5.3) typescript: 5.5.3 @@ -36494,7 +37071,7 @@ snapshots: victory-voronoi-container: 36.6.8(react@17.0.2) victory-zoom-container: 36.6.8(react@17.0.2) - '@patternfly/react-code-editor@4.82.113(react-dom@17.0.2(react@17.0.2))(react-monaco-editor@0.51.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2))(react@17.0.2)': + '@patternfly/react-code-editor@4.82.113(react-dom@17.0.2(react@17.0.2))(react-monaco-editor@0.49.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2))(react@17.0.2)': dependencies: '@patternfly/react-core': 4.276.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@patternfly/react-icons': 4.93.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) @@ -36502,8 +37079,8 @@ snapshots: react: 17.0.2 react-dom: 17.0.2(react@17.0.2) react-dropzone: 11.7.1(react@17.0.2) - react-monaco-editor: 0.51.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2) - tslib: 2.6.2 + react-monaco-editor: 0.49.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2) + tslib: 2.6.3 '@patternfly/react-core@4.276.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2)': dependencies: @@ -36562,7 +37139,7 @@ snapshots: dependencies: playwright: 1.45.2 - '@pmmmwh/react-refresh-webpack-plugin@0.5.11(@types/webpack@4.41.38)(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.11(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': dependencies: ansi-html-community: 0.0.8 common-path-prefix: 3.0.0 @@ -36574,14 +37151,13 @@ snapshots: react-refresh: 0.11.0 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) optionalDependencies: - '@types/webpack': 4.41.38 type-fest: 4.21.0 - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-hot-middleware: 2.25.4 - '@pmmmwh/react-refresh-webpack-plugin@0.5.11(@types/webpack@4.41.38)(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(esbuild@0.18.20))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.11(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-hot-middleware@2.25.4)(webpack@5.92.1(esbuild@0.18.20))': dependencies: ansi-html-community: 0.0.8 common-path-prefix: 3.0.0 @@ -36593,13 +37169,12 @@ snapshots: react-refresh: 0.11.0 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.88.2(esbuild@0.18.20) + webpack: 5.92.1(esbuild@0.18.20) optionalDependencies: - '@types/webpack': 4.41.38 type-fest: 4.21.0 webpack-hot-middleware: 2.25.4 - '@pmmmwh/react-refresh-webpack-plugin@0.5.11(@types/webpack@4.41.38)(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.11(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': dependencies: ansi-html-community: 0.0.8 common-path-prefix: 3.0.0 @@ -36611,14 +37186,13 @@ snapshots: react-refresh: 0.14.0 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) optionalDependencies: - '@types/webpack': 4.41.38 type-fest: 4.21.0 - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-hot-middleware: 2.25.4 - '@pmmmwh/react-refresh-webpack-plugin@0.5.11(@types/webpack@4.41.38)(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(webpack-cli@4.10.0))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.11(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: ansi-html-community: 0.0.8 common-path-prefix: 3.0.0 @@ -36630,11 +37204,10 @@ snapshots: react-refresh: 0.14.0 schema-utils: 3.3.0 source-map: 0.7.4 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) optionalDependencies: - '@types/webpack': 4.41.38 type-fest: 4.21.0 - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) webpack-hot-middleware: 2.25.4 '@pnpm/build-modules@9.3.5(@pnpm/logger@4.0.0)(typanion@3.9.0)': @@ -38191,26 +38764,26 @@ snapshots: - '@types/react' - '@types/react-dom' - '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': + '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': dependencies: '@babel/core': 7.23.9 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) transitivePeerDependencies: - supports-color - webpack - '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.88.2(esbuild@0.18.20))': + '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.92.1(esbuild@0.18.20))': dependencies: '@babel/core': 7.23.9 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(esbuild@0.18.20)) + babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.92.1(esbuild@0.18.20)) transitivePeerDependencies: - supports-color - webpack - '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.88.2(webpack-cli@4.10.0))': + '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: '@babel/core': 7.23.9 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(webpack-cli@4.10.0)) + babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.92.1(webpack-cli@4.10.0)) transitivePeerDependencies: - supports-color - webpack @@ -38390,7 +38963,7 @@ snapshots: '@storybook/builder-webpack5@7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@storybook/addons': 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@storybook/channels': 7.4.6 '@storybook/client-api': 7.4.6 @@ -38410,30 +38983,30 @@ snapshots: '@swc/core': 1.3.92 '@types/node': 16.18.58 '@types/semver': 7.5.2 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) babel-plugin-named-exports-order: 0.0.2 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 constants-browserify: 1.0.0 - css-loader: 6.7.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + css-loader: 6.7.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + html-webpack-plugin: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) path-browserify: 1.0.1 process: 0.11.10 react: 17.0.2 react-dom: 17.0.2(react@17.0.2) semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) - swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + style-loader: 3.3.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) + swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) - webpack-dev-middleware: 6.1.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) + webpack-dev-middleware: 6.1.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -38448,9 +39021,9 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@storybook/builder-webpack5@7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@storybook/addons': 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) '@storybook/channels': 7.4.6 '@storybook/client-api': 7.4.6 @@ -38470,30 +39043,30 @@ snapshots: '@swc/core': 1.3.92 '@types/node': 16.18.58 '@types/semver': 7.5.2 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) babel-plugin-named-exports-order: 0.0.2 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 constants-browserify: 1.0.0 - css-loader: 6.7.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + css-loader: 6.7.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + html-webpack-plugin: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) path-browserify: 1.0.1 process: 0.11.10 react: 17.0.2 react-dom: 17.0.2(react@17.0.2) semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) - swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + style-loader: 3.3.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - webpack-dev-middleware: 6.1.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack-dev-middleware: 6.1.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -38508,9 +39081,9 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(esbuild@0.18.20)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(esbuild@0.18.20)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@storybook/channels': 7.6.13 '@storybook/client-logger': 7.6.13 '@storybook/core-common': 7.6.13(encoding@0.1.13) @@ -38522,30 +39095,30 @@ snapshots: '@swc/core': 1.3.92 '@types/node': 18.17.18 '@types/semver': 7.5.2 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.2.3 constants-browserify: 1.0.0 - css-loader: 6.7.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + css-loader: 6.7.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) es-module-lexer: 1.4.1 express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + html-webpack-plugin: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) magic-string: 0.30.7 path-browserify: 1.0.1 process: 0.11.10 semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) - swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + style-loader: 3.3.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - webpack-dev-middleware: 6.1.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack-dev-middleware: 6.1.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -38558,9 +39131,9 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@storybook/channels': 7.6.13 '@storybook/client-logger': 7.6.13 '@storybook/core-common': 7.6.13(encoding@0.1.13) @@ -38572,30 +39145,30 @@ snapshots: '@swc/core': 1.3.92 '@types/node': 18.17.18 '@types/semver': 7.5.2 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.2.3 constants-browserify: 1.0.0 - css-loader: 6.7.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + css-loader: 6.7.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) es-module-lexer: 1.4.1 express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + html-webpack-plugin: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) magic-string: 0.30.7 path-browserify: 1.0.1 process: 0.11.10 semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) - swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + style-loader: 3.3.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) + swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) - webpack-dev-middleware: 6.1.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) + webpack-dev-middleware: 6.1.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -38608,9 +39181,9 @@ snapshots: - uglify-js - webpack-cli - '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@storybook/builder-webpack5@7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@storybook/channels': 7.6.13 '@storybook/client-logger': 7.6.13 '@storybook/core-common': 7.6.13(encoding@0.1.13) @@ -38622,30 +39195,30 @@ snapshots: '@swc/core': 1.3.92 '@types/node': 18.17.18 '@types/semver': 7.5.2 - babel-loader: 9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.2.3 constants-browserify: 1.0.0 - css-loader: 6.7.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + css-loader: 6.7.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) es-module-lexer: 1.4.1 express: 4.19.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) fs-extra: 11.1.1 - html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + html-webpack-plugin: 5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) magic-string: 0.30.7 path-browserify: 1.0.1 process: 0.11.10 semver: 7.5.4 - style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) - swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + style-loader: 3.3.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) + swc-loader: 0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) ts-dedent: 2.2.0 url: 0.11.3 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - webpack-dev-middleware: 6.1.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) + webpack-dev-middleware: 6.1.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) webpack-hot-middleware: 2.25.4 webpack-virtual-modules: 0.5.0 optionalDependencies: @@ -38678,8 +39251,8 @@ snapshots: '@storybook/cli@7.4.6': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) '@babel/types': 7.23.9 '@ndelangen/get-tarball': 3.0.9 '@storybook/codemod': 7.4.6 @@ -38706,7 +39279,7 @@ snapshots: get-port: 5.1.1 giget: 1.1.3 globby: 11.1.0 - jscodeshift: 0.14.0(@babel/preset-env@7.23.9(@babel/core@7.23.9)) + jscodeshift: 0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)) leven: 3.1.0 ora: 5.4.1 prettier: 2.8.8 @@ -38727,8 +39300,8 @@ snapshots: '@storybook/cli@7.4.6(encoding@0.1.13)': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) '@babel/types': 7.23.9 '@ndelangen/get-tarball': 3.0.9 '@storybook/codemod': 7.4.6 @@ -38755,7 +39328,7 @@ snapshots: get-port: 5.1.1 giget: 1.1.3 globby: 11.1.0 - jscodeshift: 0.14.0(@babel/preset-env@7.23.9(@babel/core@7.23.9)) + jscodeshift: 0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)) leven: 3.1.0 ora: 5.4.1 prettier: 2.8.8 @@ -38776,8 +39349,8 @@ snapshots: '@storybook/cli@7.6.13(encoding@0.1.13)': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) '@babel/types': 7.23.9 '@ndelangen/get-tarball': 3.0.9 '@storybook/codemod': 7.6.13 @@ -38804,7 +39377,7 @@ snapshots: get-port: 5.1.1 giget: 1.1.3 globby: 11.1.0 - jscodeshift: 0.15.1(@babel/preset-env@7.23.9(@babel/core@7.23.9)) + jscodeshift: 0.15.1(@babel/preset-env@7.24.7(@babel/core@7.24.9)) leven: 3.1.0 ora: 5.4.1 prettier: 2.8.8 @@ -38837,9 +39410,9 @@ snapshots: '@storybook/codemod@7.4.6': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) - '@babel/types': 7.23.9 + '@babel/core': 7.24.9 + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) + '@babel/types': 7.25.2 '@storybook/csf': 0.1.2 '@storybook/csf-tools': 7.4.6 '@storybook/node-logger': 7.4.6 @@ -38847,7 +39420,7 @@ snapshots: '@types/cross-spawn': 6.0.3 cross-spawn: 7.0.3 globby: 11.1.0 - jscodeshift: 0.14.0(@babel/preset-env@7.23.9(@babel/core@7.23.9)) + jscodeshift: 0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)) lodash: 4.17.21 prettier: 2.8.8 recast: 0.23.4 @@ -38856,9 +39429,9 @@ snapshots: '@storybook/codemod@7.6.13': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) - '@babel/types': 7.23.9 + '@babel/core': 7.24.9 + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) + '@babel/types': 7.25.2 '@storybook/csf': 0.1.2 '@storybook/csf-tools': 7.6.13 '@storybook/node-logger': 7.6.13 @@ -38866,7 +39439,7 @@ snapshots: '@types/cross-spawn': 6.0.3 cross-spawn: 7.0.3 globby: 11.1.0 - jscodeshift: 0.15.1(@babel/preset-env@7.23.9(@babel/core@7.23.9)) + jscodeshift: 0.15.1(@babel/preset-env@7.24.7(@babel/core@7.24.9)) lodash: 4.17.21 prettier: 2.8.8 recast: 0.23.4 @@ -39049,13 +39622,13 @@ snapshots: pretty-hrtime: 1.0.3 prompts: 2.4.2 read-pkg-up: 7.0.1 - semver: 7.5.4 + semver: 7.6.2 telejson: 7.2.0 tiny-invariant: 1.3.1 ts-dedent: 2.2.0 util: 0.12.5 util-deprecate: 1.0.2 - watchpack: 2.4.0 + watchpack: 2.4.1 ws: 8.18.0 transitivePeerDependencies: - bufferutil @@ -39098,13 +39671,13 @@ snapshots: pretty-hrtime: 1.0.3 prompts: 2.4.2 read-pkg-up: 7.0.1 - semver: 7.5.4 + semver: 7.6.2 telejson: 7.2.0 tiny-invariant: 1.3.1 ts-dedent: 2.2.0 util: 0.12.5 util-deprecate: 1.0.2 - watchpack: 2.4.0 + watchpack: 2.4.1 ws: 8.18.0 transitivePeerDependencies: - bufferutil @@ -39147,13 +39720,13 @@ snapshots: pretty-hrtime: 1.0.3 prompts: 2.4.2 read-pkg-up: 7.0.1 - semver: 7.5.4 + semver: 7.6.2 telejson: 7.2.0 tiny-invariant: 1.3.1 ts-dedent: 2.2.0 util: 0.12.5 util-deprecate: 1.0.2 - watchpack: 2.4.0 + watchpack: 2.4.1 ws: 8.18.0 transitivePeerDependencies: - bufferutil @@ -39217,10 +39790,10 @@ snapshots: '@storybook/csf-tools@7.6.13': dependencies: - '@babel/generator': 7.23.6 - '@babel/parser': 7.23.9 - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + '@babel/generator': 7.25.0 + '@babel/parser': 7.25.3 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 '@storybook/csf': 0.1.2 '@storybook/types': 7.6.13 fs-extra: 11.2.0 @@ -39330,16 +39903,16 @@ snapshots: '@storybook/postinstall@7.4.6': {} - '@storybook/preset-react-webpack@7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/webpack@4.41.38)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.15(@babel/core@7.16.12) '@babel/preset-react': 7.22.15(@babel/core@7.16.12) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@4.41.38)(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) '@storybook/core-webpack': 7.4.6 '@storybook/docs-tools': 7.4.6 '@storybook/node-logger': 7.4.6 '@storybook/react': 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) '@types/node': 16.18.58 '@types/semver': 7.5.2 babel-plugin-add-react-displayname: 0.0.5 @@ -39349,7 +39922,7 @@ snapshots: react-dom: 17.0.2(react@17.0.2) react-refresh: 0.11.0 semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) optionalDependencies: '@babel/core': 7.16.12 typescript: 5.5.3 @@ -39367,16 +39940,16 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@7.4.6(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.4.6(@babel/core@7.23.9)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.15(@babel/core@7.23.9) '@babel/preset-react': 7.22.15(@babel/core@7.23.9) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@4.41.38)(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-hot-middleware@2.25.4)(webpack@5.88.2(esbuild@0.18.20)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(react-refresh@0.11.0)(type-fest@4.21.0)(webpack-hot-middleware@2.25.4)(webpack@5.92.1(esbuild@0.18.20)) '@storybook/core-webpack': 7.4.6(encoding@0.1.13) '@storybook/docs-tools': 7.4.6(encoding@0.1.13) '@storybook/node-logger': 7.4.6 '@storybook/react': 7.4.6(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(esbuild@0.18.20)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(esbuild@0.18.20)) '@types/node': 16.18.58 '@types/semver': 7.5.2 babel-plugin-add-react-displayname: 0.0.5 @@ -39386,7 +39959,7 @@ snapshots: react-dom: 17.0.2(react@17.0.2) react-refresh: 0.11.0 semver: 7.5.4 - webpack: 5.88.2(esbuild@0.18.20) + webpack: 5.92.1(esbuild@0.18.20) optionalDependencies: '@babel/core': 7.23.9 typescript: 5.5.3 @@ -39404,16 +39977,16 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@7.6.13(@babel/core@7.18.10)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.6.13(@babel/core@7.18.10)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.15(@babel/core@7.18.10) '@babel/preset-react': 7.22.15(@babel/core@7.18.10) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@4.41.38)(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(webpack-cli@4.10.0)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(webpack-cli@4.10.0)) '@storybook/core-webpack': 7.6.13(encoding@0.1.13) '@storybook/docs-tools': 7.6.13(encoding@0.1.13) '@storybook/node-logger': 7.6.13 '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(webpack-cli@4.10.0)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(webpack-cli@4.10.0)) '@types/node': 18.17.18 '@types/semver': 7.5.2 babel-plugin-add-react-displayname: 0.0.5 @@ -39424,7 +39997,7 @@ snapshots: react-dom: 17.0.2(react@17.0.2) react-refresh: 0.14.0 semver: 7.5.4 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) optionalDependencies: '@babel/core': 7.18.10 typescript: 5.5.3 @@ -39442,16 +40015,16 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.15(@babel/core@7.23.0) '@babel/preset-react': 7.22.15(@babel/core@7.23.0) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@4.41.38)(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) '@storybook/core-webpack': 7.6.13(encoding@0.1.13) '@storybook/docs-tools': 7.6.13(encoding@0.1.13) '@storybook/node-logger': 7.6.13 '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) '@types/node': 18.17.18 '@types/semver': 7.5.2 babel-plugin-add-react-displayname: 0.0.5 @@ -39462,7 +40035,7 @@ snapshots: react-dom: 17.0.2(react@17.0.2) react-refresh: 0.14.0 semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) optionalDependencies: '@babel/core': 7.23.0 typescript: 5.5.3 @@ -39480,16 +40053,16 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/preset-react-webpack@7.6.13(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/preset-react-webpack@7.6.13(@babel/core@7.23.9)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: '@babel/preset-flow': 7.22.15(@babel/core@7.23.9) '@babel/preset-react': 7.22.15(@babel/core@7.23.9) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@4.41.38)(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)(webpack@5.88.2(webpack-cli@4.10.0)) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(react-refresh@0.14.0)(type-fest@4.21.0)(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)(webpack@5.92.1(webpack-cli@4.10.0)) '@storybook/core-webpack': 7.6.13(encoding@0.1.13) '@storybook/docs-tools': 7.6.13(encoding@0.1.13) '@storybook/node-logger': 7.6.13 '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(webpack-cli@4.10.0)) + '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(webpack-cli@4.10.0)) '@types/node': 18.17.18 '@types/semver': 7.5.2 babel-plugin-add-react-displayname: 0.0.5 @@ -39500,7 +40073,7 @@ snapshots: react-dom: 17.0.2(react@17.0.2) react-refresh: 0.14.0 semver: 7.5.4 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) optionalDependencies: '@babel/core': 7.23.9 typescript: 5.5.3 @@ -39556,7 +40129,7 @@ snapshots: '@storybook/preview@7.6.13': {} - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0))': dependencies: debug: 4.3.5 endent: 2.1.0 @@ -39566,11 +40139,11 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.5.3) tslib: 2.6.2 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) transitivePeerDependencies: - supports-color - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(esbuild@0.18.20))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(esbuild@0.18.20))': dependencies: debug: 4.3.5 endent: 2.1.0 @@ -39580,11 +40153,11 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.5.3) tslib: 2.6.2 typescript: 5.5.3 - webpack: 5.88.2(esbuild@0.18.20) + webpack: 5.92.1(esbuild@0.18.20) transitivePeerDependencies: - supports-color - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.88.2(webpack-cli@4.10.0))': + '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.5.3)(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: debug: 4.3.5 endent: 2.1.0 @@ -39594,7 +40167,7 @@ snapshots: react-docgen-typescript: 2.2.2(typescript@5.5.3) tslib: 2.6.2 typescript: 5.5.3 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) transitivePeerDependencies: - supports-color @@ -39608,10 +40181,10 @@ snapshots: react: 17.0.2 react-dom: 17.0.2(react@17.0.2) - '@storybook/react-webpack5@7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/react-dom@17.0.8)(@types/react@17.0.21)(@types/webpack@4.41.38)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: - '@storybook/builder-webpack5': 7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(@types/webpack@4.41.38)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + '@storybook/builder-webpack5': 7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.16.12)(@swc/core@1.3.92)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@storybook/react': 7.4.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@types/node': 16.18.58 react: 17.0.2 @@ -39636,10 +40209,10 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/react-webpack5@7.4.6(@babel/core@7.23.9)(@types/react-dom@17.0.8)(@types/react@17.0.21)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.4.6(@babel/core@7.23.9)(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4)': dependencies: '@storybook/builder-webpack5': 7.4.6(@types/react-dom@17.0.8)(@types/react@17.0.21)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) - '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4) + '@storybook/preset-react-webpack': 7.4.6(@babel/core@7.23.9)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-hot-middleware@2.25.4) '@storybook/react': 7.4.6(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@types/node': 16.18.58 react: 17.0.2 @@ -39664,10 +40237,10 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/react-webpack5@7.6.13(@babel/core@7.18.10)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.6.13(@babel/core@7.18.10)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: - '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.18.10)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.18.10)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@types/node': 18.17.18 react: 17.0.2 @@ -39690,10 +40263,10 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/react-webpack5@7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: - '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(esbuild@0.18.20)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(@types/webpack@4.41.38)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(esbuild@0.18.20)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.23.0)(@swc/core@1.3.92)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@types/node': 18.17.18 react: 17.0.2 @@ -39716,10 +40289,10 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@storybook/react-webpack5@7.6.13(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4)': + '@storybook/react-webpack5@7.6.13(@babel/core@7.23.9)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4)': dependencies: - '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.23.9)(@types/webpack@4.41.38)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))(webpack-hot-middleware@2.25.4) + '@storybook/builder-webpack5': 7.6.13(encoding@0.1.13)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@storybook/preset-react-webpack': 7.6.13(@babel/core@7.23.9)(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(type-fest@4.21.0)(typescript@5.5.3)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))(webpack-hot-middleware@2.25.4) '@storybook/react': 7.6.13(encoding@0.1.13)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)(typescript@5.5.3) '@types/node': 18.17.18 react: 17.0.2 @@ -39928,49 +40501,49 @@ snapshots: '@types/express': 4.17.17 file-system-cache: 2.3.0 - '@svgr/babel-plugin-add-jsx-attribute@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-add-jsx-attribute@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-remove-jsx-attribute@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-remove-jsx-attribute@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-remove-jsx-empty-expression@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-remove-jsx-empty-expression@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-replace-jsx-attribute-value@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-replace-jsx-attribute-value@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-svg-dynamic-title@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-svg-dynamic-title@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-svg-em-dimensions@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-svg-em-dimensions@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-transform-react-native-svg@6.0.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-transform-react-native-svg@6.0.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-plugin-transform-svg-component@6.2.0(@babel/core@7.23.9)': + '@svgr/babel-plugin-transform-svg-component@6.2.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 - '@svgr/babel-preset@6.2.0(@babel/core@7.23.9)': + '@svgr/babel-preset@6.2.0(@babel/core@7.24.9)': dependencies: - '@babel/core': 7.23.9 - '@svgr/babel-plugin-add-jsx-attribute': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-remove-jsx-attribute': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-remove-jsx-empty-expression': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-svg-dynamic-title': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-svg-em-dimensions': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-transform-react-native-svg': 6.0.0(@babel/core@7.23.9) - '@svgr/babel-plugin-transform-svg-component': 6.2.0(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@svgr/babel-plugin-add-jsx-attribute': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-remove-jsx-attribute': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-remove-jsx-empty-expression': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-replace-jsx-attribute-value': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-svg-dynamic-title': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-svg-em-dimensions': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-transform-react-native-svg': 6.0.0(@babel/core@7.24.9) + '@svgr/babel-plugin-transform-svg-component': 6.2.0(@babel/core@7.24.9) '@svgr/core@6.2.1': dependencies: @@ -39982,13 +40555,13 @@ snapshots: '@svgr/hast-util-to-babel-ast@6.2.1': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 entities: 3.0.1 '@svgr/plugin-jsx@6.2.1(@svgr/core@6.2.1)': dependencies: - '@babel/core': 7.23.9 - '@svgr/babel-preset': 6.2.0(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@svgr/babel-preset': 6.2.0(@babel/core@7.24.9) '@svgr/core': 6.2.1 '@svgr/hast-util-to-babel-ast': 6.2.1 svg-parser: 2.0.4 @@ -40004,11 +40577,11 @@ snapshots: '@svgr/webpack@6.2.1': dependencies: - '@babel/core': 7.23.9 - '@babel/plugin-transform-react-constant-elements': 7.17.12(@babel/core@7.23.9) - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) - '@babel/preset-react': 7.22.15(@babel/core@7.23.9) - '@babel/preset-typescript': 7.23.0(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/plugin-transform-react-constant-elements': 7.17.12(@babel/core@7.24.9) + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) + '@babel/preset-react': 7.22.15(@babel/core@7.24.9) + '@babel/preset-typescript': 7.23.0(@babel/core@7.24.9) '@svgr/core': 6.2.1 '@svgr/plugin-jsx': 6.2.1(@svgr/core@6.2.1) '@svgr/plugin-svgo': 6.2.0(@svgr/core@6.2.1) @@ -40170,7 +40743,7 @@ snapshots: '@types/accepts@1.3.7': dependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.13 '@types/archiver@5.3.1': dependencies: @@ -40188,7 +40761,7 @@ snapshots: '@types/babel__generator@7.6.1': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@types/babel__standalone@7.1.7': dependencies: @@ -40196,12 +40769,12 @@ snapshots: '@types/babel__template@7.0.2': dependencies: - '@babel/parser': 7.23.9 - '@babel/types': 7.23.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 '@types/babel__traverse@7.20.5': dependencies: - '@babel/types': 7.23.9 + '@babel/types': 7.25.2 '@types/body-parser@1.19.2': dependencies: @@ -40260,7 +40833,7 @@ snapshots: '@types/cross-spawn@6.0.3': dependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.13 '@types/cypress@1.1.3': dependencies: @@ -40419,22 +40992,20 @@ snapshots: '@types/eslint-scope@3.7.3': dependencies: '@types/eslint': 7.2.10 - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 '@types/eslint@7.2.10': dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 '@types/estree@0.0.51': {} - '@types/estree@1.0.1': {} - '@types/estree@1.0.5': {} '@types/express-serve-static-core@4.17.31': dependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.13 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 @@ -40450,7 +41021,7 @@ snapshots: '@types/body-parser': 1.19.2 '@types/express-serve-static-core': 4.17.35 '@types/qs': 6.9.7 - '@types/serve-static': 1.13.10 + '@types/serve-static': 1.15.7 '@types/express@4.17.17': dependencies: @@ -40488,7 +41059,7 @@ snapshots: '@types/graceful-fs@4.1.3': dependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.13 '@types/har-format@1.2.5': {} @@ -40806,16 +41377,12 @@ snapshots: dependencies: '@types/node': 20.14.2 - '@types/source-list-map@0.1.6': {} - '@types/ssri@7.1.1': dependencies: '@types/node': 20.14.2 '@types/stack-utils@2.0.0': {} - '@types/tapable@1.0.12': {} - '@types/through@0.0.30': dependencies: '@types/node': 20.14.2 @@ -40824,10 +41391,6 @@ snapshots: '@types/treeify@1.0.0': {} - '@types/uglify-js@3.17.5': - dependencies: - source-map: 0.6.1 - '@types/underscore@1.11.2': {} '@types/unist@2.0.8': {} @@ -40836,21 +41399,6 @@ snapshots: '@types/vscode@1.67.0': {} - '@types/webpack-sources@3.2.3': - dependencies: - '@types/node': 20.14.2 - '@types/source-list-map': 0.1.6 - source-map: 0.7.4 - - '@types/webpack@4.41.38': - dependencies: - '@types/node': 20.14.2 - '@types/tapable': 1.0.12 - '@types/uglify-js': 3.17.5 - '@types/webpack-sources': 3.2.3 - anymatch: 3.1.2 - source-map: 0.6.1 - '@types/wrap-ansi@3.0.0': {} '@types/ws@8.5.12': @@ -41099,11 +41647,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@webassemblyjs/ast@1.11.6': - dependencies: - '@webassemblyjs/helper-numbers': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/ast@1.12.1': dependencies: '@webassemblyjs/helper-numbers': 1.11.6 @@ -41113,8 +41656,6 @@ snapshots: '@webassemblyjs/helper-api-error@1.11.6': {} - '@webassemblyjs/helper-buffer@1.11.6': {} - '@webassemblyjs/helper-buffer@1.12.1': {} '@webassemblyjs/helper-numbers@1.11.6': @@ -41125,13 +41666,6 @@ snapshots: '@webassemblyjs/helper-wasm-bytecode@1.11.6': {} - '@webassemblyjs/helper-wasm-section@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/helper-wasm-section@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 @@ -41149,17 +41683,6 @@ snapshots: '@webassemblyjs/utf8@1.11.6': {} - '@webassemblyjs/wasm-edit@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/helper-wasm-section': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-opt': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - '@webassemblyjs/wast-printer': 1.11.6 - '@webassemblyjs/wasm-edit@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 @@ -41171,14 +41694,6 @@ snapshots: '@webassemblyjs/wasm-parser': 1.12.1 '@webassemblyjs/wast-printer': 1.12.1 - '@webassemblyjs/wasm-gen@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/ieee754': 1.11.6 - '@webassemblyjs/leb128': 1.11.6 - '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wasm-gen@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 @@ -41187,13 +41702,6 @@ snapshots: '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wasm-opt@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-buffer': 1.11.6 - '@webassemblyjs/wasm-gen': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - '@webassemblyjs/wasm-opt@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 @@ -41201,15 +41709,6 @@ snapshots: '@webassemblyjs/wasm-gen': 1.12.1 '@webassemblyjs/wasm-parser': 1.12.1 - '@webassemblyjs/wasm-parser@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/helper-api-error': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/ieee754': 1.11.6 - '@webassemblyjs/leb128': 1.11.6 - '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wasm-parser@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 @@ -41219,61 +41718,56 @@ snapshots: '@webassemblyjs/leb128': 1.11.6 '@webassemblyjs/utf8': 1.11.6 - '@webassemblyjs/wast-printer@1.11.6': - dependencies: - '@webassemblyjs/ast': 1.11.6 - '@xtuc/long': 4.2.2 - '@webassemblyjs/wast-printer@1.12.1': dependencies: '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: - webpack: 5.88.2(webpack-cli@4.10.0) - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack: 5.92.1(webpack-cli@4.10.0) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1) - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: - webpack: 5.88.2(webpack-cli@4.10.0) - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack: 5.92.1(webpack-cli@4.10.0) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0))': dependencies: - webpack: 5.88.2(webpack-cli@4.10.0) - webpack-cli: 4.10.0(webpack@5.88.2) + webpack: 5.92.1(webpack-cli@4.10.0) + webpack-cli: 4.10.0(webpack@5.92.1) - '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: envinfo: 7.8.1 - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1) - '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))': + '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))': dependencies: envinfo: 7.8.1 - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) - '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack@5.88.2))': + '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack@5.92.1))': dependencies: envinfo: 7.8.1 - webpack-cli: 4.10.0(webpack@5.88.2) + webpack-cli: 4.10.0(webpack@5.92.1) - '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))': + '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))': dependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1) optionalDependencies: - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) - '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2))': + '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1))': dependencies: - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) optionalDependencies: - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) - '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack@5.88.2))': + '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack@5.92.1))': dependencies: - webpack-cli: 4.10.0(webpack@5.88.2) + webpack-cli: 4.10.0(webpack@5.92.1) '@whatwg-node/events@0.0.2': {} @@ -41421,17 +41915,17 @@ snapshots: cross-spawn: 7.0.3 diff: 5.2.0 dotenv: 16.3.1 - fast-glob: 3.2.11 + fast-glob: 3.3.2 got: 11.8.2 lodash: 4.17.21 micromatch: 4.0.5 p-limit: 2.3.0 - semver: 7.5.4 + semver: 7.6.2 strip-ansi: 6.0.1 - tar: 6.2.0 + tar: 6.2.1 tinylogic: 2.0.0 treeify: 1.1.0 - tslib: 2.6.2 + tslib: 2.6.3 tunnel: 0.0.6 transitivePeerDependencies: - typanion @@ -41452,7 +41946,7 @@ snapshots: '@yarnpkg/fslib@3.0.0-rc.50': dependencies: - tslib: 2.6.2 + tslib: 2.6.3 '@yarnpkg/json-proxy@2.1.1': dependencies: @@ -41468,7 +41962,7 @@ snapshots: dependencies: '@types/emscripten': 1.39.6 '@yarnpkg/fslib': 3.0.0-rc.50 - tslib: 2.6.2 + tslib: 2.6.3 '@yarnpkg/lockfile@1.1.0': {} @@ -41487,7 +41981,7 @@ snapshots: '@yarnpkg/parsers@3.0.0-rc.50': dependencies: js-yaml: 3.14.1 - tslib: 2.6.2 + tslib: 2.6.3 '@yarnpkg/pnp@2.3.2': dependencies: @@ -41535,9 +42029,9 @@ snapshots: chalk: 3.0.0 clipanion: 4.0.0-rc.2(typanion@3.9.0) cross-spawn: 7.0.3 - fast-glob: 3.2.11 + fast-glob: 3.3.2 micromatch: 4.0.5 - tslib: 2.6.2 + tslib: 2.6.3 transitivePeerDependencies: - typanion @@ -41586,10 +42080,6 @@ snapshots: acorn: 8.10.0 acorn-walk: 8.2.0 - acorn-import-assertions@1.9.0(acorn@8.10.0): - dependencies: - acorn: 8.10.0 - acorn-import-attributes@1.9.5(acorn@8.10.0): dependencies: acorn: 8.10.0 @@ -42129,7 +42619,7 @@ snapshots: autoprefixer@10.4.19(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 caniuse-lite: 1.0.30001600 fraction.js: 4.3.7 normalize-range: 0.1.2 @@ -42178,9 +42668,9 @@ snapshots: tunnel: 0.0.6 typed-rest-client: 1.8.4 - babel-core@7.0.0-bridge.0(@babel/core@7.23.9): + babel-core@7.0.0-bridge.0(@babel/core@7.24.9): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 babel-jest@29.7.0(@babel/core@7.16.12): dependencies: @@ -42249,56 +42739,62 @@ snapshots: slash: 3.0.0 transitivePeerDependencies: - supports-color - optional: true - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: '@babel/core': 7.23.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.92.1(esbuild@0.18.20)): dependencies: '@babel/core': 7.23.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(esbuild@0.18.20) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: '@babel/core': 7.23.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(webpack-cli@4.10.0) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.92.1(esbuild@0.21.5)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.7 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(esbuild@0.21.5) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(esbuild@0.18.20)): + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.88.2(webpack-cli@4.10.0)): + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - babel-loader@9.1.3(@babel/core@7.24.7)(webpack@5.92.1): + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - '@babel/core': 7.24.7 + '@babel/core': 7.24.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) + + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): + dependencies: + '@babel/core': 7.24.9 + find-cache-dir: 4.0.0 + schema-utils: 4.2.0 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) babel-plugin-add-react-displayname@0.0.5: {} @@ -42321,7 +42817,7 @@ snapshots: babel-plugin-istanbul@6.1.1: dependencies: - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@istanbuljs/load-nyc-config': 1.0.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.1.0 @@ -42331,14 +42827,14 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.23.9 - '@babel/types': 7.23.9 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.5 babel-plugin-macros@2.8.0: dependencies: - '@babel/runtime': 7.23.6 + '@babel/runtime': 7.24.7 cosmiconfig: 6.0.0 resolve: 1.22.8 @@ -42380,6 +42876,15 @@ snapshots: transitivePeerDependencies: - supports-color + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.24.9): + dependencies: + '@babel/compat-data': 7.25.2 + '@babel/core': 7.24.9 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.0): dependencies: '@babel/compat-data': 7.23.5 @@ -42415,6 +42920,14 @@ snapshots: transitivePeerDependencies: - supports-color + babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.9): + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + core-js-compat: 3.37.1 + transitivePeerDependencies: + - supports-color + babel-plugin-polyfill-corejs3@0.5.2(@babel/core@7.16.12): dependencies: '@babel/core': 7.16.12 @@ -42512,6 +43025,13 @@ snapshots: transitivePeerDependencies: - supports-color + babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.24.9): + dependencies: + '@babel/core': 7.24.9 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + transitivePeerDependencies: + - supports-color + babel-plugin-react-docgen@4.2.1: dependencies: ast-types: 0.14.2 @@ -42606,38 +43126,39 @@ snapshots: '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.9) '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.9) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.9) - optional: true - babel-preset-fbjs@3.4.0(@babel/core@7.23.9): + babel-preset-fbjs@3.4.0(@babel/core@7.24.9): dependencies: - '@babel/core': 7.23.9 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.9) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.23.9) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.9) - '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.9) - '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.23.9) - '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.23.9) - '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.9) - '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.9) + '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.24.9) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.9) + '@babel/plugin-syntax-flow': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.24.9) + '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-flow-strip-types': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.24.9) + '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.24.9) + '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-react-display-name': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.24.9) + '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.9) babel-plugin-syntax-trailing-function-commas: 7.0.0-beta.0 + transitivePeerDependencies: + - supports-color babel-preset-jest@29.6.3(@babel/core@7.16.12): dependencies: @@ -42671,7 +43192,6 @@ snapshots: '@babel/core': 7.24.9 babel-plugin-jest-hoist: 29.6.3 babel-preset-current-node-syntax: 1.0.1(@babel/core@7.24.9) - optional: true balanced-match@0.4.2: {} @@ -42885,13 +43405,6 @@ snapshots: dependencies: pako: 1.0.11 - browserslist@4.22.1: - dependencies: - caniuse-lite: 1.0.30001547 - electron-to-chromium: 1.4.549 - node-releases: 2.0.13 - update-browserslist-db: 1.0.13(browserslist@4.22.1) - browserslist@4.23.0: dependencies: caniuse-lite: 1.0.30001600 @@ -43111,13 +43624,11 @@ snapshots: caniuse-api@3.0.0: dependencies: - browserslist: 4.23.0 - caniuse-lite: 1.0.30001600 + browserslist: 4.23.2 + caniuse-lite: 1.0.30001646 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001547: {} - caniuse-lite@1.0.30001600: {} caniuse-lite@1.0.30001646: {} @@ -43601,7 +44112,7 @@ snapshots: dependencies: is-what: 3.14.1 - copy-webpack-plugin@11.0.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + copy-webpack-plugin@11.0.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: fast-glob: 3.2.11 glob-parent: 6.0.2 @@ -43609,9 +44120,9 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.0.0 serialize-javascript: 6.0.1 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - copy-webpack-plugin@11.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + copy-webpack-plugin@11.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: fast-glob: 3.2.11 glob-parent: 6.0.2 @@ -43619,9 +44130,9 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.0.0 serialize-javascript: 6.0.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - copy-webpack-plugin@11.0.0(webpack@5.88.2(webpack-cli@4.10.0)): + copy-webpack-plugin@11.0.0(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: fast-glob: 3.2.11 glob-parent: 6.0.2 @@ -43629,9 +44140,9 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.0.0 serialize-javascript: 6.0.1 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - copy-webpack-plugin@11.0.0(webpack@5.88.2): + copy-webpack-plugin@11.0.0(webpack@5.92.1): dependencies: fast-glob: 3.2.11 glob-parent: 6.0.2 @@ -43639,9 +44150,9 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.0.0 serialize-javascript: 6.0.1 - webpack: 5.88.2 + webpack: 5.92.1 - copy-webpack-plugin@12.0.2(webpack@5.92.1): + copy-webpack-plugin@12.0.2(webpack@5.92.1(esbuild@0.21.5)): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -43663,24 +44174,24 @@ snapshots: core-js-compat@3.21.1: dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 semver: 7.0.0 core-js-compat@3.30.2: dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 core-js-compat@3.33.0: dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 core-js-compat@3.35.1: dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 core-js-compat@3.37.1: dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 core-js-pure@3.33.0: {} @@ -43932,97 +44443,97 @@ snapshots: dependencies: postcss: 8.4.38 - css-loader@5.2.7(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + css-loader@5.2.7(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: - icss-utils: 5.1.0(postcss@8.4.12) - loader-utils: 2.0.2 - postcss: 8.4.12 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.12) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.12) - postcss-modules-scope: 3.0.0(postcss@8.4.12) - postcss-modules-values: 4.0.0(postcss@8.4.12) + icss-utils: 5.1.0(postcss@8.4.38) + loader-utils: 2.0.4 + postcss: 8.4.38 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - schema-utils: 3.1.1 - semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + schema-utils: 3.3.0 + semver: 7.6.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - css-loader@5.2.7(webpack@5.88.2(webpack-cli@4.10.0)): + css-loader@5.2.7(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: - icss-utils: 5.1.0(postcss@8.4.12) - loader-utils: 2.0.2 - postcss: 8.4.12 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.12) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.12) - postcss-modules-scope: 3.0.0(postcss@8.4.12) - postcss-modules-values: 4.0.0(postcss@8.4.12) + icss-utils: 5.1.0(postcss@8.4.38) + loader-utils: 2.0.4 + postcss: 8.4.38 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - schema-utils: 3.1.1 - semver: 7.5.4 - webpack: 5.88.2(webpack-cli@4.10.0) + schema-utils: 3.3.0 + semver: 7.6.2 + webpack: 5.92.1(webpack-cli@4.10.0) - css-loader@5.2.7(webpack@5.88.2): + css-loader@5.2.7(webpack@5.92.1): dependencies: - icss-utils: 5.1.0(postcss@8.4.12) - loader-utils: 2.0.2 - postcss: 8.4.12 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.12) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.12) - postcss-modules-scope: 3.0.0(postcss@8.4.12) - postcss-modules-values: 4.0.0(postcss@8.4.12) + icss-utils: 5.1.0(postcss@8.4.38) + loader-utils: 2.0.4 + postcss: 8.4.38 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - schema-utils: 3.1.1 - semver: 7.5.4 - webpack: 5.88.2 + schema-utils: 3.3.0 + semver: 7.6.2 + webpack: 5.92.1 - css-loader@6.7.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + css-loader@6.7.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.38) - postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + semver: 7.6.2 + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - css-loader@6.7.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + css-loader@6.7.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.38) - postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + semver: 7.6.2 + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - css-loader@6.7.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + css-loader@6.7.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.38) - postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + semver: 7.6.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - css-loader@6.7.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + css-loader@6.7.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.38) - postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - semver: 7.5.4 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + semver: 7.6.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) - css-loader@7.1.2(webpack@5.92.1): + css-loader@7.1.2(webpack@5.92.1(esbuild@0.21.5)): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 @@ -44035,15 +44546,15 @@ snapshots: optionalDependencies: webpack: 5.92.1(esbuild@0.21.5) - css-minimizer-webpack-plugin@5.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + css-minimizer-webpack-plugin@5.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 cssnano: 6.1.2(postcss@8.4.38) jest-worker: 29.7.0 postcss: 8.4.38 schema-utils: 4.2.0 - serialize-javascript: 6.0.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + serialize-javascript: 6.0.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) css-select@4.3.0: dependencies: @@ -44088,7 +44599,7 @@ snapshots: cssnano-preset-default@6.1.2(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 css-declaration-sorter: 7.2.0(postcss@8.4.38) cssnano-utils: 4.0.2(postcss@8.4.38) postcss: 8.4.38 @@ -44393,7 +44904,7 @@ snapshots: date-fns@2.30.0: dependencies: - '@babel/runtime': 7.23.6 + '@babel/runtime': 7.24.7 date-format@4.0.3: {} @@ -44819,8 +45330,6 @@ snapshots: dependencies: jake: 10.8.7 - electron-to-chromium@1.4.549: {} - electron-to-chromium@1.4.719: {} electron-to-chromium@1.5.4: {} @@ -45065,8 +45574,6 @@ snapshots: iterator.prototype: 1.1.2 safe-array-concat: 1.0.1 - es-module-lexer@1.3.0: {} - es-module-lexer@1.4.1: {} es-set-tostringtag@2.0.1: @@ -45410,8 +45917,8 @@ snapshots: estree-to-babel@3.2.1: dependencies: - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 c8: 7.14.0 transitivePeerDependencies: - supports-color @@ -45715,29 +46222,29 @@ snapshots: dependencies: flat-cache: 3.0.4 - file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - file-loader@6.2.0(webpack@5.88.2(webpack-cli@4.10.0)): + file-loader@6.2.0(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - file-loader@6.2.0(webpack@5.88.2): + file-loader@6.2.0(webpack@5.92.1): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2 + webpack: 5.92.1 file-selector@0.2.4: dependencies: @@ -45762,7 +46269,7 @@ snapshots: dependencies: minimatch: 5.1.6 - filemanager-webpack-plugin@7.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + filemanager-webpack-plugin@7.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: '@types/archiver': 5.3.1 archiver: 5.3.1 @@ -45772,9 +46279,9 @@ snapshots: is-glob: 4.0.3 normalize-path: 3.0.0 schema-utils: 4.0.0 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - filemanager-webpack-plugin@7.0.0(webpack@5.88.2(webpack-cli@4.10.0)): + filemanager-webpack-plugin@7.0.0(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: '@types/archiver': 5.3.1 archiver: 5.3.1 @@ -45784,7 +46291,7 @@ snapshots: is-glob: 4.0.3 normalize-path: 3.0.0 schema-utils: 4.0.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) filename-reserved-regex@2.0.0: {} @@ -45928,9 +46435,9 @@ snapshots: forever-agent@0.6.1: {} - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.0.1 @@ -45940,14 +46447,14 @@ snapshots: minimatch: 3.1.2 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.5.4 + semver: 7.6.2 tapable: 2.2.1 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.0.1 @@ -45957,14 +46464,14 @@ snapshots: minimatch: 3.1.2 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.5.4 + semver: 7.6.2 tapable: 2.2.1 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.0.1 @@ -45974,14 +46481,14 @@ snapshots: minimatch: 3.1.2 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.5.4 + semver: 7.6.2 tapable: 2.2.1 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.0.1 @@ -45991,10 +46498,10 @@ snapshots: minimatch: 3.1.2 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.5.4 + semver: 7.6.2 tapable: 2.2.1 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) form-data-encoder@2.1.4: {} @@ -46575,77 +47082,77 @@ snapshots: html-tags@3.3.1: {} - html-webpack-plugin@5.3.2(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + html-webpack-plugin@5.3.2(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 5.1.1 html-minifier-terser: 5.1.1 lodash: 4.17.21 pretty-error: 3.0.4 tapable: 2.2.0 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - html-webpack-plugin@5.3.2(webpack@5.88.2(webpack-cli@4.10.0)): + html-webpack-plugin@5.3.2(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 5.1.1 html-minifier-terser: 5.1.1 lodash: 4.17.21 pretty-error: 3.0.4 tapable: 2.2.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + html-webpack-plugin@5.5.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + html-webpack-plugin@5.5.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + html-webpack-plugin@5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + html-webpack-plugin@5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) - html-webpack-plugin@5.5.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + html-webpack-plugin@5.5.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - html-webpack-plugin@5.5.3(webpack@5.88.2(webpack-cli@4.10.0)): + html-webpack-plugin@5.5.3(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) html-webpack-plugin@5.5.3(webpack@5.92.1): dependencies: @@ -46654,7 +47161,7 @@ snapshots: lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.92.1 optional: true htmlparser2@6.1.0: @@ -46875,10 +47382,6 @@ snapshots: dependencies: safer-buffer: 2.1.2 - icss-utils@5.1.0(postcss@8.4.12): - dependencies: - postcss: 8.4.12 - icss-utils@5.1.0(postcss@8.4.38): dependencies: postcss: 8.4.38 @@ -47296,8 +47799,8 @@ snapshots: istanbul-lib-instrument@5.1.0: dependencies: - '@babel/core': 7.23.9 - '@babel/parser': 7.23.9 + '@babel/core': 7.24.9 + '@babel/parser': 7.25.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 6.3.1 @@ -47306,7 +47809,7 @@ snapshots: istanbul-lib-instrument@6.0.2: dependencies: - '@babel/core': 7.24.7 + '@babel/core': 7.24.9 '@babel/parser': 7.23.9 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 @@ -47376,7 +47879,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.14.2 + '@types/node': 20.14.13 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -47542,10 +48045,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47573,10 +48076,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47604,10 +48107,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@types/node@20.14.2)(typescript@5.5.3)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47666,10 +48169,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47697,10 +48200,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@types/node@22.0.2)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47728,10 +48231,10 @@ snapshots: jest-config@29.7.0(@types/node@22.0.2): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47759,10 +48262,10 @@ snapshots: jest-config@29.7.0(@types/node@22.0.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.0.2)(typescript@5.5.3)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47790,10 +48293,10 @@ snapshots: jest-config@29.7.0(@types/node@22.0.2)(ts-node@10.9.2(@types/node@22.0.2)(typescript@5.5.3)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47821,10 +48324,10 @@ snapshots: jest-config@29.7.0(@types/node@22.0.2)(ts-node@10.9.2(@types/node@22.0.2)): dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.9) + babel-jest: 29.7.0(@babel/core@7.24.9) chalk: 4.1.2 ci-info: 3.3.2 deepmerge: 4.2.2 @@ -47889,7 +48392,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.14.2 + '@types/node': 20.14.13 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -47939,7 +48442,7 @@ snapshots: jest-message-util@29.7.0: dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 '@jest/types': 29.6.3 '@types/stack-utils': 2.0.0 chalk: 4.1.2 @@ -48035,15 +48538,15 @@ snapshots: jest-snapshot@29.7.0: dependencies: - '@babel/core': 7.23.9 - '@babel/generator': 7.23.6 - '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.9) - '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.9) - '@babel/types': 7.23.9 + '@babel/core': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.9) + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.24.9) + '@babel/types': 7.25.2 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.9) + babel-preset-current-node-syntax: 1.0.1(@babel/core@7.24.9) chalk: 4.1.2 expect: 29.7.0 graceful-fs: 4.2.11 @@ -48054,7 +48557,7 @@ snapshots: jest-util: 29.7.0 natural-compare: 1.4.0 pretty-format: 29.7.0 - semver: 7.5.4 + semver: 7.6.2 transitivePeerDependencies: - supports-color @@ -48113,7 +48616,7 @@ snapshots: jest-worker@29.7.0: dependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.13 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -48249,19 +48752,19 @@ snapshots: jsbn@1.1.0: {} - jscodeshift@0.14.0(@babel/preset-env@7.23.9(@babel/core@7.23.9)): + jscodeshift@0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)): dependencies: - '@babel/core': 7.23.9 - '@babel/parser': 7.23.9 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.23.9) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.23.9) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.9) - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) - '@babel/preset-flow': 7.22.15(@babel/core@7.23.9) - '@babel/preset-typescript': 7.23.0(@babel/core@7.23.9) - '@babel/register': 7.22.15(@babel/core@7.23.9) - babel-core: 7.0.0-bridge.0(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.24.9) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.24.9) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.24.9) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) + '@babel/preset-flow': 7.22.15(@babel/core@7.24.9) + '@babel/preset-typescript': 7.23.0(@babel/core@7.24.9) + '@babel/register': 7.22.15(@babel/core@7.24.9) + babel-core: 7.0.0-bridge.0(@babel/core@7.24.9) chalk: 4.1.2 flow-parser: 0.218.0 graceful-fs: 4.2.11 @@ -48274,19 +48777,19 @@ snapshots: transitivePeerDependencies: - supports-color - jscodeshift@0.15.1(@babel/preset-env@7.23.9(@babel/core@7.23.9)): + jscodeshift@0.15.1(@babel/preset-env@7.24.7(@babel/core@7.24.9)): dependencies: - '@babel/core': 7.23.9 - '@babel/parser': 7.23.9 - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.9) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.9) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.9) - '@babel/preset-flow': 7.22.15(@babel/core@7.23.9) - '@babel/preset-typescript': 7.23.0(@babel/core@7.23.9) - '@babel/register': 7.22.15(@babel/core@7.23.9) - babel-core: 7.0.0-bridge.0(@babel/core@7.23.9) + '@babel/core': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.9) + '@babel/preset-flow': 7.22.15(@babel/core@7.24.9) + '@babel/preset-typescript': 7.23.0(@babel/core@7.24.9) + '@babel/register': 7.22.15(@babel/core@7.24.9) + babel-core: 7.0.0-bridge.0(@babel/core@7.24.9) chalk: 4.1.2 flow-parser: 0.218.0 graceful-fs: 4.2.11 @@ -48297,7 +48800,7 @@ snapshots: temp: 0.8.4 write-file-atomic: 2.4.3 optionalDependencies: - '@babel/preset-env': 7.23.9(@babel/core@7.23.9) + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) transitivePeerDependencies: - supports-color @@ -48464,7 +48967,7 @@ snapshots: lodash.isstring: 4.0.1 lodash.once: 4.1.1 ms: 2.1.3 - semver: 7.5.4 + semver: 7.6.2 jsprim@2.0.2: dependencies: @@ -48750,7 +49253,7 @@ snapshots: dependencies: readable-stream: 2.3.7 - less-loader@12.2.0(less@4.2.0)(webpack@5.92.1): + less-loader@12.2.0(less@4.2.0)(webpack@5.92.1(esbuild@0.21.5)): dependencies: less: 4.2.0 optionalDependencies: @@ -48779,7 +49282,7 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - license-webpack-plugin@4.0.2(webpack@5.92.1): + license-webpack-plugin@4.0.2(webpack@5.92.1(esbuild@0.21.5)): dependencies: webpack-sources: 3.2.3 optionalDependencies: @@ -49036,7 +49539,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.5.4 + semver: 7.6.2 make-error@1.3.6: {} @@ -49232,13 +49735,19 @@ snapshots: min-indent@1.0.1: {} - mini-css-extract-plugin@2.8.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + mini-css-extract-plugin@2.8.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: schema-utils: 4.0.0 tapable: 2.2.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) + + mini-css-extract-plugin@2.9.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): + dependencies: + schema-utils: 4.2.0 + tapable: 2.2.1 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - mini-css-extract-plugin@2.9.0(webpack@5.92.1): + mini-css-extract-plugin@2.9.0(webpack@5.92.1(esbuild@0.21.5)): dependencies: schema-utils: 4.2.0 tapable: 2.2.1 @@ -49396,19 +49905,19 @@ snapshots: moment@2.29.4: {} - monaco-editor-webpack-plugin@7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + monaco-editor-webpack-plugin@7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 monaco-editor: 0.39.0 monaco-yaml: 4.0.4(monaco-editor@0.39.0) - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - monaco-editor-webpack-plugin@7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.88.2(webpack-cli@4.10.0)): + monaco-editor-webpack-plugin@7.0.1(monaco-editor@0.39.0)(monaco-yaml@4.0.4(monaco-editor@0.39.0))(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 monaco-editor: 0.39.0 monaco-yaml: 4.0.4(monaco-editor@0.39.0) - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) monaco-editor@0.39.0: {} @@ -49542,7 +50051,7 @@ snapshots: node-abi@3.43.0: dependencies: - semver: 7.5.4 + semver: 7.6.2 node-abort-controller@3.1.1: {} @@ -49647,7 +50156,7 @@ snapshots: which: 2.0.2 optional: true - node-polyfill-webpack-plugin@2.0.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -49674,9 +50183,9 @@ snapshots: url: 0.11.3 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - node-polyfill-webpack-plugin@2.0.1(webpack@5.88.2(webpack-cli@4.10.0)): + node-polyfill-webpack-plugin@2.0.1(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -49703,9 +50212,7 @@ snapshots: url: 0.11.3 util: 0.12.5 vm-browserify: 1.1.2 - webpack: 5.88.2(webpack-cli@4.10.0) - - node-releases@2.0.13: {} + webpack: 5.92.1(webpack-cli@4.10.0) node-releases@2.0.14: {} @@ -50172,7 +50679,7 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.23.5 + '@babel/code-frame': 7.24.7 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.1.6 @@ -50452,7 +50959,7 @@ snapshots: postcss-colormin@6.1.0(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 caniuse-api: 3.0.0 colord: 2.9.3 postcss: 8.4.38 @@ -50460,7 +50967,7 @@ snapshots: postcss-convert-values@6.1.0(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 postcss: 8.4.38 postcss-value-parser: 4.2.0 @@ -50480,7 +50987,7 @@ snapshots: dependencies: postcss: 8.4.38 - postcss-loader@8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1): + postcss-loader@8.1.1(postcss@8.4.38)(typescript@5.5.3)(webpack@5.92.1(esbuild@0.21.5)): dependencies: cosmiconfig: 9.0.0(typescript@5.5.3) jiti: 1.21.6 @@ -50501,7 +51008,7 @@ snapshots: postcss-merge-rules@6.1.1(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 caniuse-api: 3.0.0 cssnano-utils: 4.0.2(postcss@8.4.38) postcss: 8.4.38 @@ -50521,7 +51028,7 @@ snapshots: postcss-minify-params@6.1.0(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 cssnano-utils: 4.0.2(postcss@8.4.38) postcss: 8.4.38 postcss-value-parser: 4.2.0 @@ -50531,32 +51038,10 @@ snapshots: postcss: 8.4.38 postcss-selector-parser: 6.0.16 - postcss-modules-extract-imports@3.0.0(postcss@8.4.12): - dependencies: - postcss: 8.4.12 - - postcss-modules-extract-imports@3.0.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-modules-extract-imports@3.1.0(postcss@8.4.38): dependencies: postcss: 8.4.38 - postcss-modules-local-by-default@4.0.0(postcss@8.4.12): - dependencies: - icss-utils: 5.1.0(postcss@8.4.12) - postcss: 8.4.12 - postcss-selector-parser: 6.0.16 - postcss-value-parser: 4.2.0 - - postcss-modules-local-by-default@4.0.0(postcss@8.4.38): - dependencies: - icss-utils: 5.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-selector-parser: 6.0.16 - postcss-value-parser: 4.2.0 - postcss-modules-local-by-default@4.0.5(postcss@8.4.38): dependencies: icss-utils: 5.1.0(postcss@8.4.38) @@ -50564,26 +51049,11 @@ snapshots: postcss-selector-parser: 6.0.16 postcss-value-parser: 4.2.0 - postcss-modules-scope@3.0.0(postcss@8.4.12): - dependencies: - postcss: 8.4.12 - postcss-selector-parser: 6.0.16 - - postcss-modules-scope@3.0.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.0.16 - postcss-modules-scope@3.2.0(postcss@8.4.38): dependencies: postcss: 8.4.38 postcss-selector-parser: 6.0.16 - postcss-modules-values@4.0.0(postcss@8.4.12): - dependencies: - icss-utils: 5.1.0(postcss@8.4.12) - postcss: 8.4.12 - postcss-modules-values@4.0.0(postcss@8.4.38): dependencies: icss-utils: 5.1.0(postcss@8.4.38) @@ -50620,7 +51090,7 @@ snapshots: postcss-normalize-unicode@6.1.0(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 postcss: 8.4.38 postcss-value-parser: 4.2.0 @@ -50642,7 +51112,7 @@ snapshots: postcss-reduce-initial@6.1.0(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 caniuse-api: 3.0.0 postcss: 8.4.38 @@ -50669,12 +51139,6 @@ snapshots: postcss-value-parser@4.2.0: {} - postcss@8.4.12: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.2.0 - postcss@8.4.38: dependencies: nanoid: 3.3.7 @@ -50959,23 +51423,23 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 - raw-loader@4.0.2(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + raw-loader@4.0.2(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - raw-loader@4.0.2(webpack@5.88.2(webpack-cli@4.10.0)): + raw-loader@4.0.2(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - raw-loader@4.0.2(webpack@5.88.2): + raw-loader@4.0.2(webpack@5.92.1): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2 + webpack: 5.92.1 rc@1.2.8: dependencies: @@ -51119,9 +51583,9 @@ snapshots: react-docgen@5.4.3: dependencies: - '@babel/core': 7.23.9 - '@babel/generator': 7.23.6 - '@babel/runtime': 7.23.6 + '@babel/core': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/runtime': 7.24.7 ast-types: 0.14.2 commander: 2.20.3 doctrine: 3.0.0 @@ -51134,9 +51598,9 @@ snapshots: react-docgen@7.0.3: dependencies: - '@babel/core': 7.23.9 - '@babel/traverse': 7.23.9 - '@babel/types': 7.23.9 + '@babel/core': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.5 '@types/doctrine': 0.0.9 @@ -51273,13 +51737,6 @@ snapshots: prop-types: 15.8.1 react: 17.0.2 - react-monaco-editor@0.51.0(@types/react@17.0.21)(monaco-editor@0.39.0)(react@17.0.2): - dependencies: - '@types/react': 17.0.21 - monaco-editor: 0.39.0 - prop-types: 15.8.1 - react: 17.0.2 - react-pure-loaders@3.0.1(@emotion/core@10.3.1(react@17.0.2))(react@17.0.2): dependencies: '@emotion/core': 10.3.1(react@17.0.2) @@ -51694,7 +52151,7 @@ snapshots: relay-runtime@12.0.0(encoding@0.1.13): dependencies: - '@babel/runtime': 7.23.6 + '@babel/runtime': 7.24.7 fbjs: 3.0.2(encoding@0.1.13) invariant: 2.2.4 transitivePeerDependencies: @@ -51983,31 +52440,31 @@ snapshots: dependencies: truncate-utf8-bytes: 1.0.2 - sass-loader@12.4.0(sass@1.49.9)(webpack@5.88.2): + sass-loader@12.4.0(sass@1.49.9)(webpack@5.92.1): dependencies: klona: 2.0.5 neo-async: 2.6.2 - webpack: 5.88.2 + webpack: 5.92.1 optionalDependencies: sass: 1.49.9 - sass-loader@12.4.0(sass@1.77.6)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + sass-loader@12.4.0(sass@1.77.6)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: klona: 2.0.5 neo-async: 2.6.2 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) optionalDependencies: sass: 1.77.6 - sass-loader@12.4.0(sass@1.77.6)(webpack@5.88.2(webpack-cli@4.10.0)): + sass-loader@12.4.0(sass@1.77.6)(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: klona: 2.0.5 neo-async: 2.6.2 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) optionalDependencies: sass: 1.77.6 - sass-loader@14.2.1(sass@1.77.6)(webpack@5.92.1): + sass-loader@14.2.1(sass@1.77.6)(webpack@5.92.1(esbuild@0.21.5)): dependencies: neo-async: 2.6.2 optionalDependencies: @@ -52422,14 +52879,14 @@ snapshots: source-map-js@1.2.0: {} - source-map-loader@2.0.2(webpack@5.88.2): + source-map-loader@2.0.2(webpack@5.92.1): dependencies: abab: 2.0.5 iconv-lite: 0.6.3 source-map-js: 0.6.2 - webpack: 5.88.2 + webpack: 5.92.1 - source-map-loader@5.0.0(webpack@5.92.1): + source-map-loader@5.0.0(webpack@5.92.1(esbuild@0.21.5)): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.0 @@ -52779,43 +53236,43 @@ snapshots: strnum@1.0.5: {} - style-loader@2.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + style-loader@2.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - style-loader@2.0.0(webpack@5.88.2(webpack-cli@4.10.0)): + style-loader@2.0.0(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - style-loader@2.0.0(webpack@5.88.2): + style-loader@2.0.0(webpack@5.92.1): dependencies: loader-utils: 2.0.2 schema-utils: 3.1.1 - webpack: 5.88.2 + webpack: 5.92.1 - style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + style-loader@3.3.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + style-loader@3.3.3(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + style-loader@3.3.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - style-loader@3.3.3(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + style-loader@3.3.3(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) stylehacks@6.1.1(postcss@8.4.38): dependencies: - browserslist: 4.23.0 + browserslist: 4.23.2 postcss: 8.4.38 postcss-selector-parser: 6.0.16 @@ -52842,7 +53299,7 @@ snapshots: mime: 2.6.0 qs: 6.11.2 readable-stream: 3.6.0 - semver: 7.5.4 + semver: 7.6.2 transitivePeerDependencies: - supports-color @@ -52862,20 +53319,20 @@ snapshots: svg-parser@2.0.4: {} - svg-url-loader@8.0.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + svg-url-loader@8.0.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: - file-loader: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + file-loader: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - svg-url-loader@8.0.0(webpack@5.88.2(webpack-cli@4.10.0)): + svg-url-loader@8.0.0(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: - file-loader: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) - webpack: 5.88.2(webpack-cli@4.10.0) + file-loader: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) + webpack: 5.92.1(webpack-cli@4.10.0) - svg-url-loader@8.0.0(webpack@5.88.2): + svg-url-loader@8.0.0(webpack@5.92.1): dependencies: - file-loader: 6.2.0(webpack@5.88.2) - webpack: 5.88.2 + file-loader: 6.2.0(webpack@5.92.1) + webpack: 5.92.1 svgo@2.8.0: dependencies: @@ -52884,7 +53341,7 @@ snapshots: css-select: 4.3.0 css-tree: 1.1.3 csso: 4.2.0 - picocolors: 1.0.0 + picocolors: 1.0.1 stable: 0.1.8 svgo@3.2.0: @@ -52895,7 +53352,7 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.0.0 + picocolors: 1.0.1 swagger-ui-dist@5.11.2: {} @@ -52908,25 +53365,25 @@ snapshots: dependencies: tslib: 2.6.2 - swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: '@swc/core': 1.3.92 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: '@swc/core': 1.3.92 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: '@swc/core': 1.3.92 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + swc-loader@0.2.3(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: '@swc/core': 1.3.92 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) symbol-observable@1.2.0: {} @@ -53049,111 +53506,111 @@ snapshots: dependencies: execa: 0.7.0 - terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.92.1): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.29.2 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) optionalDependencies: - esbuild: 0.21.5 + '@swc/core': 1.3.92 + esbuild: 0.18.20 - terser-webpack-plugin@5.3.10(webpack@5.92.1): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.29.2 - webpack: 5.92.1 + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) + optionalDependencies: + '@swc/core': 1.3.92 + esbuild: 0.18.20 - terser-webpack-plugin@5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) optionalDependencies: '@swc/core': 1.3.92 - esbuild: 0.18.20 - terser-webpack-plugin@5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) optionalDependencies: '@swc/core': 1.3.92 - esbuild: 0.18.20 - terser-webpack-plugin@5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + terser-webpack-plugin@5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) optionalDependencies: '@swc/core': 1.3.92 - terser-webpack-plugin@5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + terser-webpack-plugin@5.3.10(esbuild@0.18.20)(webpack@5.92.1(esbuild@0.18.20)): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(esbuild@0.18.20) optionalDependencies: - '@swc/core': 1.3.92 + esbuild: 0.18.20 - terser-webpack-plugin@5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.92.1(esbuild@0.21.5)): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(esbuild@0.21.5) optionalDependencies: - '@swc/core': 1.3.92 + esbuild: 0.21.5 - terser-webpack-plugin@5.3.9(esbuild@0.18.20)(webpack@5.88.2(esbuild@0.18.20)): + terser-webpack-plugin@5.3.10(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(esbuild@0.18.20) - optionalDependencies: - esbuild: 0.18.20 + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1(webpack-cli@4.10.0) - terser-webpack-plugin@5.3.9(webpack@5.88.2(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.10(webpack@5.92.1): dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.4.6 schema-utils: 3.3.0 - serialize-javascript: 6.0.1 - terser: 5.19.3 - webpack: 5.88.2(webpack-cli@4.10.0) + serialize-javascript: 6.0.2 + terser: 5.29.2 + webpack: 5.92.1 - terser-webpack-plugin@5.3.9(webpack@5.88.2): + terser-webpack-plugin@5.3.9(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: '@jridgewell/trace-mapping': 0.3.18 jest-worker: 27.4.6 schema-utils: 3.3.0 serialize-javascript: 6.0.1 terser: 5.19.3 - webpack: 5.88.2 + webpack: 5.92.1(webpack-cli@4.10.0) terser@4.8.0: dependencies: @@ -53575,32 +54032,32 @@ snapshots: safe-stable-stringify: 2.4.1 typescript: 4.8.4 - ts-loader@9.4.2(typescript@5.5.3)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + ts-loader@9.4.2(typescript@5.5.3)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.9.3 micromatch: 4.0.5 semver: 7.5.4 typescript: 5.5.3 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) - ts-loader@9.4.2(typescript@5.5.3)(webpack@5.88.2(webpack-cli@4.10.0)): + ts-loader@9.4.2(typescript@5.5.3)(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.9.3 micromatch: 4.0.5 semver: 7.5.4 typescript: 5.5.3 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - ts-loader@9.4.2(typescript@5.5.3)(webpack@5.88.2): + ts-loader@9.4.2(typescript@5.5.3)(webpack@5.92.1): dependencies: chalk: 4.1.2 enhanced-resolve: 5.9.3 micromatch: 4.0.5 semver: 7.5.4 typescript: 5.5.3 - webpack: 5.88.2 + webpack: 5.92.1 ts-log@2.2.5: {} @@ -53971,12 +54428,6 @@ snapshots: untildify@4.0.0: {} - update-browserslist-db@1.0.13(browserslist@4.22.1): - dependencies: - browserslist: 4.22.1 - escalade: 3.1.1 - picocolors: 1.0.0 - update-browserslist-db@1.0.13(browserslist@4.23.0): dependencies: browserslist: 4.23.0 @@ -54010,32 +54461,32 @@ snapshots: url-join@4.0.1: {} - url-loader@4.1.1(file-loader@6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)))(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.34 schema-utils: 3.3.0 - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0) optionalDependencies: - file-loader: 6.2.0(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) + file-loader: 6.2.0(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) - url-loader@4.1.1(file-loader@6.2.0(webpack@5.88.2(webpack-cli@4.10.0)))(webpack@5.88.2(webpack-cli@4.10.0)): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.92.1(webpack-cli@4.10.0)))(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.34 schema-utils: 3.3.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) optionalDependencies: - file-loader: 6.2.0(webpack@5.88.2(webpack-cli@4.10.0)) + file-loader: 6.2.0(webpack@5.92.1(webpack-cli@4.10.0)) - url-loader@4.1.1(file-loader@6.2.0(webpack@5.88.2))(webpack@5.88.2): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.92.1))(webpack@5.92.1): dependencies: loader-utils: 2.0.4 mime-types: 2.1.34 schema-utils: 3.3.0 - webpack: 5.88.2 + webpack: 5.92.1 optionalDependencies: - file-loader: 6.2.0(webpack@5.88.2) + file-loader: 6.2.0(webpack@5.92.1) url-parse@1.5.10: dependencies: @@ -54119,7 +54570,7 @@ snapshots: v8-to-istanbul@9.1.3: dependencies: - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.25 '@types/istanbul-lib-coverage': 2.0.1 convert-source-map: 2.0.0 @@ -54465,11 +54916,6 @@ snapshots: dependencies: makeerror: 1.0.12 - watchpack@2.4.0: - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - watchpack@2.4.1: dependencies: glob-to-regexp: 0.4.1 @@ -54517,12 +54963,12 @@ snapshots: - bufferutil - utf-8-validate - webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2): + webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0)) - '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2)) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0)) + '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1)) colorette: 2.0.16 commander: 7.2.0 cross-spawn: 7.0.3 @@ -54530,18 +54976,18 @@ snapshots: import-local: 3.0.2 interpret: 2.2.0 rechoir: 0.7.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) webpack-merge: 5.9.0 optionalDependencies: webpack-bundle-analyzer: 4.10.2 - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) - webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2): + webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0)) - '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) - '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2)) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0)) + '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) + '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))(webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1)) colorette: 2.0.16 commander: 7.2.0 cross-spawn: 7.0.3 @@ -54549,17 +54995,17 @@ snapshots: import-local: 3.0.2 interpret: 2.2.0 rechoir: 0.7.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) webpack-merge: 5.9.0 optionalDependencies: - webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.88.2) + webpack-dev-server: 4.15.1(webpack-cli@4.10.0)(webpack@5.92.1) - webpack-cli@4.10.0(webpack@5.88.2): + webpack-cli@4.10.0(webpack@5.92.1): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.88.2))(webpack@5.88.2(webpack-cli@4.10.0)) - '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack@5.88.2)) - '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack@5.88.2)) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.92.1))(webpack@5.92.1(webpack-cli@4.10.0)) + '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack@5.92.1)) + '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack@5.92.1)) colorette: 2.0.16 commander: 7.2.0 cross-spawn: 7.0.3 @@ -54567,28 +55013,28 @@ snapshots: import-local: 3.0.2 interpret: 2.2.0 rechoir: 0.7.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) webpack-merge: 5.9.0 - webpack-dev-middleware@5.3.3(webpack@5.88.2(webpack-cli@4.10.0)): + webpack-dev-middleware@5.3.3(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: colorette: 2.0.20 memfs: 3.5.1 mime-types: 2.1.34 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) - webpack-dev-middleware@5.3.3(webpack@5.88.2): + webpack-dev-middleware@5.3.3(webpack@5.92.1): dependencies: colorette: 2.0.20 memfs: 3.5.1 mime-types: 2.1.34 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.88.2 + webpack: 5.92.1 - webpack-dev-middleware@6.1.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): + webpack-dev-middleware@6.1.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: colorette: 2.0.20 memfs: 3.5.1 @@ -54596,9 +55042,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0) - webpack-dev-middleware@6.1.1(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)): + webpack-dev-middleware@6.1.1(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)): dependencies: colorette: 2.0.20 memfs: 3.5.1 @@ -54606,9 +55052,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.88.2(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.92.1(@swc/core@1.3.92)(esbuild@0.18.20) - webpack-dev-middleware@6.1.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))): + webpack-dev-middleware@6.1.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: colorette: 2.0.20 memfs: 3.5.1 @@ -54616,9 +55062,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)) - webpack-dev-middleware@6.1.1(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))): + webpack-dev-middleware@6.1.1(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))): dependencies: colorette: 2.0.20 memfs: 3.5.1 @@ -54626,9 +55072,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)) + webpack: 5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)) - webpack-dev-middleware@7.2.1(webpack@5.92.1): + webpack-dev-middleware@7.2.1(webpack@5.92.1(esbuild@0.21.5)): dependencies: colorette: 2.0.20 memfs: 4.11.1 @@ -54639,7 +55085,7 @@ snapshots: optionalDependencies: webpack: 5.92.1(esbuild@0.21.5) - webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.88.2): + webpack-dev-server@4.15.1(webpack-cli@4.10.0)(webpack@5.92.1): dependencies: '@types/bonjour': 3.5.10 '@types/connect-history-api-fallback': 1.3.5 @@ -54669,18 +55115,18 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.3(webpack@5.88.2(webpack-cli@4.10.0)) + webpack-dev-middleware: 5.3.3(webpack@5.92.1(webpack-cli@4.10.0)) ws: 8.13.0 optionalDependencies: - webpack: 5.88.2(webpack-cli@4.10.0) - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack: 5.92.1(webpack-cli@4.10.0) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - bufferutil - debug - supports-color - utf-8-validate - webpack-dev-server@4.15.1(webpack@5.88.2): + webpack-dev-server@4.15.1(webpack@5.92.1): dependencies: '@types/bonjour': 3.5.10 '@types/connect-history-api-fallback': 1.3.5 @@ -54710,17 +55156,17 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.3(webpack@5.88.2) + webpack-dev-middleware: 5.3.3(webpack@5.92.1) ws: 8.13.0 optionalDependencies: - webpack: 5.88.2 + webpack: 5.92.1 transitivePeerDependencies: - bufferutil - debug - supports-color - utf-8-validate - webpack-dev-server@5.0.4(webpack@5.92.1): + webpack-dev-server@5.0.4(webpack@5.92.1(esbuild@0.21.5)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -54750,7 +55196,7 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 7.2.1(webpack@5.92.1) + webpack-dev-middleware: 7.2.1(webpack@5.92.1(esbuild@0.21.5)) ws: 8.18.0 optionalDependencies: webpack: 5.92.1(esbuild@0.21.5) @@ -54785,7 +55231,7 @@ snapshots: webpack-sources@3.2.3: {} - webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1): + webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.5.3(webpack@5.92.1))(webpack@5.92.1(esbuild@0.21.5)): dependencies: typed-assert: 1.0.8 webpack: 5.92.1(esbuild@0.21.5) @@ -54794,19 +55240,19 @@ snapshots: webpack-virtual-modules@0.5.0: {} - webpack@5.88.2: + webpack@5.92.1: dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54817,27 +55263,27 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(webpack@5.88.2) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(webpack@5.92.1) + watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20): + webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54848,27 +55294,27 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)) + watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0): + webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54879,29 +55325,29 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.88.2(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(esbuild@0.18.20)(webpack@5.92.1(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)) + watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2)): + webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1)): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54912,29 +55358,29 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2))) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1))) + watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2)): + webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1)): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54945,29 +55391,29 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2))) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1))) + watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0): + webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -54978,60 +55424,29 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.92)(webpack@5.88.2(@swc/core@1.3.92)(webpack-cli@4.10.0)) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(@swc/core@1.3.92)(webpack@5.92.1(@swc/core@1.3.92)(webpack-cli@4.10.0)) + watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack@5.88.2(esbuild@0.18.20): - dependencies: - '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 - acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 - chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 - eslint-scope: 5.1.1 - events: 3.3.0 - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - json-parse-even-better-errors: 2.3.1 - loader-runner: 4.2.0 - mime-types: 2.1.34 - neo-async: 2.6.2 - schema-utils: 3.3.0 - tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(esbuild@0.18.20)(webpack@5.88.2(esbuild@0.18.20)) - watchpack: 2.4.0 - webpack-sources: 3.2.3 + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.88.2(webpack-cli@4.10.0): + webpack@5.92.1(esbuild@0.18.20): dependencies: '@types/eslint-scope': 3.7.3 - '@types/estree': 1.0.1 - '@webassemblyjs/ast': 1.11.6 - '@webassemblyjs/wasm-edit': 1.11.6 - '@webassemblyjs/wasm-parser': 1.11.6 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 - acorn-import-assertions: 1.9.0(acorn@8.10.0) - browserslist: 4.22.1 + acorn-import-attributes: 1.9.5(acorn@8.10.0) + browserslist: 4.23.2 chrome-trace-event: 1.0.2 - enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.0 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -55042,17 +55457,15 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(webpack@5.88.2(webpack-cli@4.10.0)) - watchpack: 2.4.0 + terser-webpack-plugin: 5.3.10(esbuild@0.18.20)(webpack@5.92.1(esbuild@0.18.20)) + watchpack: 2.4.1 webpack-sources: 3.2.3 - optionalDependencies: - webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.88.2) transitivePeerDependencies: - '@swc/core' - esbuild - uglify-js - webpack@5.92.1: + webpack@5.92.1(esbuild@0.21.5): dependencies: '@types/eslint-scope': 3.7.3 '@types/estree': 1.0.5 @@ -55061,7 +55474,7 @@ snapshots: '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 acorn-import-attributes: 1.9.5(acorn@8.10.0) - browserslist: 4.23.0 + browserslist: 4.23.2 chrome-trace-event: 1.0.2 enhanced-resolve: 5.17.1 es-module-lexer: 1.4.1 @@ -55075,7 +55488,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(webpack@5.92.1) + terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.92.1(esbuild@0.21.5)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -55083,7 +55496,7 @@ snapshots: - esbuild - uglify-js - webpack@5.92.1(esbuild@0.21.5): + webpack@5.92.1(webpack-cli@4.10.0): dependencies: '@types/eslint-scope': 3.7.3 '@types/estree': 1.0.5 @@ -55092,7 +55505,7 @@ snapshots: '@webassemblyjs/wasm-parser': 1.12.1 acorn: 8.10.0 acorn-import-attributes: 1.9.5(acorn@8.10.0) - browserslist: 4.23.0 + browserslist: 4.23.2 chrome-trace-event: 1.0.2 enhanced-resolve: 5.17.1 es-module-lexer: 1.4.1 @@ -55106,9 +55519,11 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.92.1) + terser-webpack-plugin: 5.3.10(webpack@5.92.1(webpack-cli@4.10.0)) watchpack: 2.4.1 webpack-sources: 3.2.3 + optionalDependencies: + webpack-cli: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.92.1) transitivePeerDependencies: - '@swc/core' - esbuild @@ -55448,9 +55863,9 @@ snapshots: compress-commons: 4.1.0 readable-stream: 3.6.0 - zip-webpack-plugin@4.0.1(webpack-sources@3.2.3)(webpack@5.88.2(webpack-cli@4.10.0)): + zip-webpack-plugin@4.0.1(webpack-sources@3.2.3)(webpack@5.92.1(webpack-cli@4.10.0)): dependencies: - webpack: 5.88.2(webpack-cli@4.10.0) + webpack: 5.92.1(webpack-cli@4.10.0) webpack-sources: 3.2.3 yazl: 2.5.1 From 2bac324e433bb1c3cb2bcc57077acec8ee886883 Mon Sep 17 00:00:00 2001 From: Thiago Lugli Date: Tue, 20 Aug 2024 14:47:35 -0300 Subject: [PATCH 18/22] kie-issues#1443: Change JBPM DevUI to not use current host origin to generate GraphQL URL to be consumed by the frontend (#2536) --- packages/jbpm-quarkus-devui/README.md | 9 + packages/jbpm-quarkus-devui/dev/pom.xml | 337 +++++ .../dev/src/main/resources/Sample.bpmn | 1105 +++++++++++++++++ .../dev/src/main/resources/Sample.dmn | 858 +++++++++++++ .../src/main/resources/application.properties | 55 + .../devui/deployment/DevConsoleProcessor.java | 18 +- .../dev-ui/qwc-jbpm-quarkus-devui.js | 17 +- .../runtime/rpc/JBPMDevuiJsonRPCService.java | 2 + packages/jbpm-quarkus-devui/package.json | 3 +- .../env/index.js | 5 - .../src/api/RuntimeToolsDevUIEnvelopeApi.ts | 6 +- .../FormDetailsContextProvider.tsx | 9 +- .../FormDetails/FormDetailsGatewayApi.ts | 6 +- .../FormsList/FormsListContextProvider.tsx | 8 +- .../channel/FormsList/FormsListGatewayApi.ts | 5 +- .../ProcessDefinitionListContextProvider.tsx | 6 +- .../ProcessDefinitionListQueries.ts | 15 +- .../DevUI/DevUILayout/DevUILayout.tsx | 53 +- .../DevUI/RuntimeTools/RuntimeTools.tsx | 30 +- .../components/contexts/DevUIAppContext.tsx | 37 +- .../contexts/DevUIAppContextProvider.tsx | 31 +- .../contexts/ProcessContextProvider.tsx | 54 + .../contexts/TaskFormContextProvider.tsx | 1 - .../RuntimeToolsDevUIEnvelopeApiImpl.ts | 17 +- .../RuntimeToolsDevUIEnvelopeView.tsx | 27 +- .../RuntimeToolsDevUIEnvelopeViewApi.ts | 6 +- .../src/standalone/standalone.ts | 129 +- .../webpack.config.js | 1 - .../src/gatewayApi/apis.tsx | 13 +- .../ProcessDetailsContextProvider.tsx | 5 +- .../ProcessDetails/ProcessDetailsQueries.ts | 17 +- .../ProcessListContextProvider.tsx | 9 +- .../src/ProcessList/ProcessListQueries.ts | 17 +- 33 files changed, 2690 insertions(+), 221 deletions(-) create mode 100644 packages/jbpm-quarkus-devui/dev/pom.xml create mode 100644 packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.bpmn create mode 100644 packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.dmn create mode 100644 packages/jbpm-quarkus-devui/dev/src/main/resources/application.properties create mode 100644 packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/ProcessContextProvider.tsx diff --git a/packages/jbpm-quarkus-devui/README.md b/packages/jbpm-quarkus-devui/README.md index 3169a8bd637..8f224cb9a48 100644 --- a/packages/jbpm-quarkus-devui/README.md +++ b/packages/jbpm-quarkus-devui/README.md @@ -17,6 +17,15 @@ ## @kie-tools/jbpm-quarkus-devui +### Running the Dev application + +- Run `pnpm start` as usual and access http://0.0.0.0:8080/kie/q/dev-ui + +To test the application running on different domains: + +- Edit your `/etc/hosts` file and add a `0.0.0.0 quarkus-app.localhost` entry +- Run `pnpm start` and access http://quarkus-app.localhost:8080/kie/q/dev-ui + --- Apache KIE (incubating) is an effort undergoing incubation at The Apache Software diff --git a/packages/jbpm-quarkus-devui/dev/pom.xml b/packages/jbpm-quarkus-devui/dev/pom.xml new file mode 100644 index 00000000000..3f49837155f --- /dev/null +++ b/packages/jbpm-quarkus-devui/dev/pom.xml @@ -0,0 +1,337 @@ + + + + + org.kie + kie-tools-maven-base + ${revision} + ../node_modules/@kie-tools/maven-base/pom.xml + + + 4.0.0 + org.kie.kogito + jbpm-quarkus-devui-dev-app + ${revision} + + + 3.13.0 + true + 17 + 17 + UTF-8 + UTF-8 + 3.2.5 + 3.12.1 + 3.2.0 + 3.4.1 + 4.13.2 + true + 1.26.1 + 0.5 + 0.2.2 + + + + + + io.quarkus + quarkus-bom + ${quarkus.platform.version} + pom + import + + + org.kie.kogito + kogito-kie-bom + ${version.org.kie.kogito} + pom + import + + + org.jbpm + jbpm-with-drools-quarkus + ${version.org.kie.kogito} + + + org.jbpm + jbpm-quarkus-devui + ${project.version} + + + org.jbpm + jbpm-quarkus-devui + ${project.version} + sources + + + org.jbpm + jbpm-quarkus-devui-deployment + ${project.version} + + + org.jbpm + jbpm-quarkus-devui-deployment + ${project.version} + sources + + + + + + + org.apache.commons + commons-compress + ${version.org.apache.commons.commons-compress} + + + io.quarkus + quarkus-resteasy + + + io.quarkus + quarkus-resteasy-jackson + + + io.quarkus + quarkus-resteasy-multipart + + + io.quarkus + quarkus-smallrye-openapi + + + io.quarkus + quarkus-smallrye-health + + + org.kie + kie-dmn-openapi + + + org.jbpm + jbpm-with-drools-quarkus + + + org.kie.kogito + kogito-ruleunits + + + + + + org.kie + kie-addons-quarkus-process-svg + + + org.kie + kie-addons-quarkus-source-files + + + org.kie + kie-addons-quarkus-process-management + + + org.kie + kogito-addons-quarkus-jobs-management + + + + + org.kie + kogito-addons-quarkus-data-index-postgresql + + + + + org.kie + kogito-addons-quarkus-jobs + + + org.kie.kogito + jobs-service-postgresql-common + + + + + org.jbpm + jbpm-quarkus-devui + provided + + + + io.quarkiverse.embedded.postgresql + quarkus-embedded-postgresql + ${version.io.quarkiverse.embedded.postgresql} + + + + io.quarkus + quarkus-junit5 + test + + + io.rest-assured + rest-assured + test + + + junit + junit + ${version.junit} + test + + + + + + + src/main/resources + + + + + + org.apache.maven.plugins + maven-site-plugin + ${maven.site.plugin.version} + + + org.apache.commons + commons-compress + ${version.org.apache.commons.commons-compress} + + + org.iq80.snappy + snappy + ${version.org.iq80.snappy} + + + + + org.apache.maven.plugins + maven-remote-resources-plugin + ${maven.remote.resources.plugin.version} + + + org.apache.commons + commons-compress + ${version.org.apache.commons.commons-compress} + + + org.iq80.snappy + snappy + ${version.org.iq80.snappy} + + + + + org.apache.maven.plugins + maven-jar-plugin + ${maven.jar.plugin.version} + + + org.iq80.snappy + snappy + ${version.org.iq80.snappy} + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${surefire-plugin.version} + + + org.iq80.snappy + snappy + ${version.org.iq80.snappy} + + + org.apache.commons + commons-compress + ${version.org.apache.commons.commons-compress} + + + + + + + + io.quarkus + quarkus-maven-plugin + ${quarkus.platform.version} + true + + + + build + + + + + + maven-compiler-plugin + ${compiler-plugin.version} + + ${maven.compiler.parameters} + + + + maven-surefire-plugin + ${surefire-plugin.version} + + + org.jboss.logmanager.LogManager + ${maven.home} + + + + + org.codehaus.mojo + flatten-maven-plugin + 1.6.0 + + true + resolveCiFriendliesOnly + + + + flatten-revision + process-resources + + flatten + + + + flatten-revision-clean + clean + + clean + + + + + + + diff --git a/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.bpmn b/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.bpmn new file mode 100644 index 00000000000..99af89b305c --- /dev/null +++ b/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.bpmn @@ -0,0 +1,1105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + _7B41F971-C74D-4036-8A5E-EFF81C37986A + _C500BCB4-FBE1-43A0-A7C8-5F72670CD927 + _730573E5-BCD9-42BC-9AC8-AE003784831D + + + + + + + + _B11455DE-F77A-4251-A85B-4C66636E3CD9 + _7DDA574A-C220-4FEF-9784-22EF8052EDEC + System.out.println("###################################"); +System.out.println("To: " + candidate); +System.out.println("Subject: Congratulations you made it!"); +System.out.println("Dear " + candidate + ", we are happy to tell you that you've successfully went through the hiring process. You'll find the final Offer details in attached."); +System.out.println("Job Category: " + category); +System.out.println("Base salary: " + salary + "$"); +System.out.println("Bonus: " + bonus + "$"); +System.out.println("###################################"); + + + + + + + + _59F9A0E6-7F9C-43A9-8920-5B40A91169E6 + _ACEE7578-B7D2-4EDF-B104-9ECF3DD8A383 + if(experience <= 5) { + salary = 30000; + category = "Software Engineer"; +} else if (experience <= 10) { + salary = 40000; + category = "Senior Software Engineer"; +} else { + salary = 50000; + category = "Software Architect"; +} + +bonus = skills.split(",").length * 150; + +kcontext.setVariable("category", category); +kcontext.setVariable("salary", salary); +kcontext.setVariable("bonus", bonus); + +System.out.println("###################################"); +System.out.println("Generated offer for candidate: " + candidate); +System.out.println("Job Category: " + category); +System.out.println("Base Salary: " + salary); +System.out.println("Bonus: " + bonus); +System.out.println("###################################"); + + + _7DDA574A-C220-4FEF-9784-22EF8052EDEC + + + _527D3164-4989-4D2C-B80B-9BA9D4C8FB89 + + + + + + + + _94172225-E124-4F14-98DA-C3D62C11254A + _527D3164-4989-4D2C-B80B-9BA9D4C8FB89 + System.out.println("###################################"); +System.out.println("Candidate " + candidate + " don't meet the requirements for the position but we'll keep it on records for the future!"); +System.out.println("###################################"); + + + + _5334FFDC-1FCB-47E6-8085-36DC9A3D17B9 + _B7FC63DD-C08F-4CB3-A51A-79C1B8B18E6E + _C6E61C53-FD35-4347-B69E-30AA93AE4404 + _94172225-E124-4F14-98DA-C3D62C11254A + + + _5162ABF0-DD2E-4BDC-9A46-DDCFCB010287 + _C6E61C53-FD35-4347-B69E-30AA93AE4404 + _59F9A0E6-7F9C-43A9-8920-5B40A91169E6 + + + _C62F7EFB-A009-450A-81C7-57D36F0DF766 + _B7FC63DD-C08F-4CB3-A51A-79C1B8B18E6E + _B11455DE-F77A-4251-A85B-4C66636E3CD9 + + + + + + + + _730573E5-BCD9-42BC-9AC8-AE003784831D + _5334FFDC-1FCB-47E6-8085-36DC9A3D17B9 + System.out.println("###################################"); +System.out.println("Interviews have been skipped after reasonable time"); +System.out.println("###################################"); + + + + + + + + + _8863B46B-9B0F-40B9-AAB1-A7503CF9AA0A + _5162ABF0-DD2E-4BDC-9A46-DDCFCB010287 + System.out.println("New Hiring has been created for candidate: " + candidate); + +kcontext.setVariable("hr_approval", false); +kcontext.setVariable("it_approval", false); + + + + + + + + _A76C6603-0406-423C-940B-3403948DCA1F + _C62F7EFB-A009-450A-81C7-57D36F0DF766 + + + + + + + + + + + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_TaskNameInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_candidateInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_categoryInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_approveInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_baseSalaryInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_bonusInputX + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_SkippableInputX + + + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_approveOutputX + + + + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_TaskNameInputX + + + + + + + candidate + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_candidateInputX + + + category + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_categoryInputX + + + it_approval + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_approveInputX + + + salary + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_baseSalaryInputX + + + bonus + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_bonusInputX + + + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_SkippableInputX + + + + + + + _8962C15F-55EC-46F7-B926-5D5A1FD8D35E_approveOutputX + it_approval + + + + jdoe + + + + + + + + + + _ACEE7578-B7D2-4EDF-B104-9ECF3DD8A383 + _A76C6603-0406-423C-940B-3403948DCA1F + + + + + + + + + + + + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_TaskNameInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_candidateInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_approveInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_categoryInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_baseSalaryInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_bonusInputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_SkippableInputX + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_approveOutputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_categoryOutputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_baseSalaryOutputX + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_bonusOutputX + + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_TaskNameInputX + + + + + + + candidate + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_candidateInputX + + + hr_approval + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_approveInputX + + + category + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_categoryInputX + + + salary + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_baseSalaryInputX + + + bonus + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_bonusInputX + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_SkippableInputX + + + + + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_approveOutputX + hr_approval + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_categoryOutputX + category + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_baseSalaryOutputX + salary + + + _B8C4F63C-81AD-4291-9C1B-84967277EEF6_bonusOutputX + bonus + + + + jdoe + + + + + _8863B46B-9B0F-40B9-AAB1-A7503CF9AA0A + + + _7B41F971-C74D-4036-8A5E-EFF81C37986A + + PT180S + + + + _C500BCB4-FBE1-43A0-A7C8-5F72670CD927 + + PT180S + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + _aqSNwAZBED210Zu9Nz4qtg + _aqSNwAZBED210Zu9Nz4qtg + + diff --git a/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.dmn b/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.dmn new file mode 100644 index 00000000000..7dfb8f79903 --- /dev/null +++ b/packages/jbpm-quarkus-devui/dev/src/main/resources/Sample.dmn @@ -0,0 +1,858 @@ + + + + + + + Product_Type + + + number + + + number + + + number + + + + string + + "M","D","S" + + + + + number + + + Marital_Status + + + string + + "Unemployed","Employed","Self-employed","Student" + + + + boolean + + + + number + + + number + + + number + + + number + + + number + + + + + + Risk_Category + + + number + + + + + string + + + number + + + + string + + "Ineligible","Eligible" + + + + string + + "Decline","Bureau","Through" + + + + string + + "Full","Mini","None" + + + + string + + "Standard Loan","Special Loan" + + + + string + + "High","Medium","Low","Very Low","Decline" + + + + string + + "Poor","Bad","Fair","Good","Excellent" + + + + string + + "Insufficient","Sufficient" + + + + string + + "Sufficient","Insufficient" + + + + string + + "Not Qualified","Qualified" + + + + + number + + [300..850] + + + + + + string + + "Qualified","Not Qualified" + + + + string + + + + + + + + + + + + 0.36 + + + + + + + + + + + + + + + + + + + + + + + + PITI + + + + + (Requested Product.Amount * ((Requested Product.Rate/100)/12)) / (1-(1/(1+(Requested Product.Rate/100)/12) * -Requested Product.Term)) + + + + + + Applicant Data.Monthly.Tax + + + + + + Applicant Data.Monthly.Insurance + + + + + + Applicant Data.Monthly.Income + + + + + + + if Client PITI <= Lender Acceptable PITI() + then "Sufficient" + else "Insufficient" + + + + + + + + + + + + + + (pmt+tax+insurance) / income + + + + + + + + + + + + + + + + + + + + + + + + + DTI + + + + + Applicant Data.Monthly.Repayments + Applicant Data.Monthly.Expenses + + + + + + Applicant Data.Monthly.Income + + + + + + + if Client DTI <= Lender Acceptable DTI() + then "Sufficient" + else "Insufficient" + + + + + + + + + + + + + + Credit Score.FICO + + + + + + + >= 750 + + + "Excellent" + + + + + + + + [700..750) + + + "Good" + + + + + + + + [650..700) + + + "Fair" + + + + + + + + [600..650) + + + "Poor" + + + + + + + + < 600 + + + "Bad" + + + + + + + + + + + + + + + + + + + + + + + Credit Score Rating + + + + + Back End Ratio + + + + + Front End Ratio + + + + + + + + "Poor", "Bad" + + + - + + + - + + + "Not Qualified" + + + "Credit Score too low." + + + + + + + + - + + + "Insufficient" + + + "Sufficient" + + + "Not Qualified" + + + "Debt to income ratio is too high." + + + + + + + + - + + + "Sufficient" + + + "Insufficient" + + + "Not Qualified" + + + "Mortgage payment to income ratio is too high." + + + + + + + + - + + + "Insufficient" + + + "Insufficient" + + + "Not Qualified" + + + "Debt to income ratio is too high AND mortgage payment to income ratio is too high." + + + + + + + + "Fair", "Good", "Excellent" + + + "Sufficient" + + + "Sufficient" + + + "Qualified" + + + "The borrower has been successfully prequalified for the requested loan." + + + + + + + + + + + + + + + + + + + d/i + + + + + + + + + 0.28 + + + + + + + + + 209 + + + 50 + 209 + + + 50 + 100 + 1280 + + + 50 + 100 + 1110 + + + + 1110 + + + 1110 + + + 1110 + + + 1110 + + + 1280 + + + 300 + + + 50 + 300 + + + 50 + 100 + 802 + + + 50 + 100 + 632 + + + + 632 + + + 632 + + + 802 + + + 50 + 224 + 226 + 335 + + + 50 + 233 + 130 + 136 + 135 + 681 + 100 + + + 150 + + + 50 + 150 + + + 228 + + + 50 + 228 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/jbpm-quarkus-devui/dev/src/main/resources/application.properties b/packages/jbpm-quarkus-devui/dev/src/main/resources/application.properties new file mode 100644 index 00000000000..9a21f975326 --- /dev/null +++ b/packages/jbpm-quarkus-devui/dev/src/main/resources/application.properties @@ -0,0 +1,55 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +quarkus.swagger-ui.always-include=true +quarkus.http.cors=true +quarkus.http.cors.origins=* +quarkus.dev-ui.cors.enabled=false + +quarkus.http.host=0.0.0.0 +quarkus.http.port=8080 +quarkus.http.root-path=/kie +quarkus.http.non-application-root-path=/kie/q + +quarkus.resteasy-reactive.path=/kie/ +dev.quarkus.http.cors.origins=/.*/ +quarkus.smallrye-openapi.path=/docs/openapi.json + +quarkus.kogito.devservices.enabled=false +quarkus.devservices.enabled=false + +# Kogito-service +kogito.service.url=http://0.0.0.0:8080/kie + +#Job-service +kogito.jobs-service.url=http://0.0.0.0:8080/kie +kogito.dataindex.http.url=http://0.0.0.0:8080/kie + +quarkus.kogito.data-index.graphql.ui.always-include=true + +quarkus.datasource.db-kind=postgresql + +# run create tables scripts +quarkus.flyway.migrate-at-start=true +quarkus.flyway.baseline-on-migrate=true +quarkus.flyway.baseline-version=0.0 +quarkus.flyway.locations=classpath:/db/migration,classpath:/db/jobs-service,classpath:/db/data-audit/postgresql +quarkus.flyway.table=FLYWAY_RUNTIME_SERVICE + +%dev.jbpm.devui.users.jdoe.groups=admin,HR,IT \ No newline at end of file diff --git a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/java/org/jbpm/quarkus/devui/deployment/DevConsoleProcessor.java b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/java/org/jbpm/quarkus/devui/deployment/DevConsoleProcessor.java index 00c821cf90a..e23831b41c4 100644 --- a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/java/org/jbpm/quarkus/devui/deployment/DevConsoleProcessor.java +++ b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/java/org/jbpm/quarkus/devui/deployment/DevConsoleProcessor.java @@ -26,6 +26,7 @@ import java.util.Optional; import java.util.stream.Collectors; +import org.eclipse.microprofile.config.ConfigProvider; import org.kie.kogito.quarkus.extensions.spi.deployment.KogitoDataIndexServiceAvailableBuildItem; import org.jbpm.quarkus.devui.deployment.data.UserInfo; import org.jbpm.quarkus.devui.runtime.config.DevConsoleRuntimeConfig; @@ -52,7 +53,8 @@ public class DevConsoleProcessor { private static final String STATIC_RESOURCES_PATH = "dev-static/"; - private static final String BASE_RELATIVE_URL = "/q/dev-ui/org.jbpm.jbpm-quarkus-devui"; + private static final String BASE_RELATIVE_URL = "dev-ui/org.jbpm.jbpm-quarkus-devui"; + private static final String NON_APPLICATION_BASE_RELATIVE_URL = "/q/" + BASE_RELATIVE_URL; private static final String DATA_INDEX_CAPABILITY = "org.kie.kogito.data-index"; @SuppressWarnings("unused") @@ -77,13 +79,13 @@ public void deployStaticResources(final DevUIStaticArtifactsRecorder devUIStatic true); routeBuildItemBuildProducer.produce(new RouteBuildItem.Builder() - .route(BASE_RELATIVE_URL + "/resources/*") + .route(NON_APPLICATION_BASE_RELATIVE_URL + "/resources/*") .handler(devUIStaticArtifactsRecorder.handler(devConsoleStaticResourcesDeploymentPath.toString(), shutdownContext)) .build()); routeBuildItemBuildProducer.produce(new RouteBuildItem.Builder() - .route(BASE_RELATIVE_URL + "/*") + .route(NON_APPLICATION_BASE_RELATIVE_URL + "/*") .handler(devUIStaticArtifactsRecorder.handler(devConsoleStaticResourcesDeploymentPath.toString(), shutdownContext)) .build()); @@ -112,19 +114,21 @@ public CardPageBuildItem pages( String uiPath = nonApplicationRootPathBuildItem.resolveManagementPath(BASE_RELATIVE_URL, managementInterfaceBuildTimeConfig, launchModeBuildItem, true); - String openapiPath = getProperty(configurationBuildItem, systemPropertyBuildItems, "quarkus.smallrye-openapi.path"); String devUIUrl = getProperty(configurationBuildItem, systemPropertyBuildItems, "kogito.dev-ui.url"); - String dataIndexUrl = getProperty(configurationBuildItem, systemPropertyBuildItems, "kogito.data-index.url"); + String dataIndexUrl = getProperty(configurationBuildItem, systemPropertyBuildItems, "kogito.dataindex.http.url"); String trustyServiceUrl = getProperty(configurationBuildItem, systemPropertyBuildItems, "kogito.trusty.http.url"); + String quarkusHttpHost = ConfigProvider.getConfig().getValue("quarkus.http.host", String.class); + String quarkusHttpPort = ConfigProvider.getConfig().getValue("quarkus.http.port", String.class); CardPageBuildItem cardPageBuildItem = new CardPageBuildItem(); + cardPageBuildItem.addBuildTimeData("quarkusHttpHost", quarkusHttpHost); + cardPageBuildItem.addBuildTimeData("quarkusHttpPort", quarkusHttpPort); + cardPageBuildItem.addBuildTimeData("quarkusAppRootPath", nonApplicationRootPathBuildItem.getNormalizedHttpRootPath()); cardPageBuildItem.addBuildTimeData("extensionBasePath", uiPath); - cardPageBuildItem.addBuildTimeData("openapiPath", openapiPath); cardPageBuildItem.addBuildTimeData("devUIUrl", devUIUrl); cardPageBuildItem.addBuildTimeData("dataIndexUrl", dataIndexUrl); cardPageBuildItem.addBuildTimeData("isTracingEnabled", false); - cardPageBuildItem.addBuildTimeData("trustyServiceUrl", trustyServiceUrl); cardPageBuildItem.addBuildTimeData("userData", readUsersInfo(devConsoleRuntimeConfig)); cardPageBuildItem.addPage(Page.webComponentPageBuilder() diff --git a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-jbpm-quarkus-devui.js b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-jbpm-quarkus-devui.js index 3bf92676833..0cb4b1a020e 100644 --- a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-jbpm-quarkus-devui.js +++ b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-jbpm-quarkus-devui.js @@ -23,9 +23,10 @@ import { devUIUrl, extensionBasePath, isTracingEnabled, - openapiPath, - trustyServiceUrl, userData, + quarkusAppRootPath, + quarkusHttpHost, + quarkusHttpPort, } from "build-time-data"; import { RouterController } from "router-controller"; @@ -43,6 +44,7 @@ export class QwcJbpmQuarkusDevui extends LitElement { async connectedCallback() { super.connectedCallback(); await this.updateComplete; + if (!document.querySelector("#jbpm-devui-script")) { const script = document.createElement("script"); script.setAttribute("async", ""); @@ -60,15 +62,18 @@ export class QwcJbpmQuarkusDevui extends LitElement { initUI() { const metadata = this._routerController.getCurrentMetaData(); const container = this.renderRoot.querySelector("#envelope-app"); + RuntimeToolsDevUI.open({ container: container, isDataIndexAvailable: true, isTracingEnabled: isTracingEnabled, - dataIndexUrl: `${dataIndexUrl ?? "http://localhost:8180"}/graphql`, - trustyServiceUrl: `${trustyServiceUrl ?? "http://localhost:1336"}`, + quarkusAppOrigin: `http://${quarkusHttpHost}:${quarkusHttpPort}`, + quarkusAppRootPath: quarkusAppRootPath, + shouldReplaceQuarkusAppOriginWithWebappOrigin: true, + dataIndexUrl: `${dataIndexUrl}/graphql`, page: metadata.page ?? "Processes", - devUIUrl: `${devUIUrl ?? window.location.origin}`, - openApiPath: `${openapiPath ?? "q/openapi.json"}`, + devUIUrl: devUIUrl ?? window.location.origin, + devUIOrigin: window.location.origin, availablePages: ["Processes", "Jobs", "Tasks", "Forms"], users: userData ?? [], }); diff --git a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-runtime/src/main/java/org/jbpm/quarkus/devui/runtime/rpc/JBPMDevuiJsonRPCService.java b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-runtime/src/main/java/org/jbpm/quarkus/devui/runtime/rpc/JBPMDevuiJsonRPCService.java index 2e62a776691..5d5f77e9933 100644 --- a/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-runtime/src/main/java/org/jbpm/quarkus/devui/runtime/rpc/JBPMDevuiJsonRPCService.java +++ b/packages/jbpm-quarkus-devui/jbpm-quarkus-devui-runtime/src/main/java/org/jbpm/quarkus/devui/runtime/rpc/JBPMDevuiJsonRPCService.java @@ -37,6 +37,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import static java.lang.Integer.parseInt; + @ApplicationScoped public class JBPMDevuiJsonRPCService { private static final String DATA_INDEX_URL = "kogito.data-index.url"; diff --git a/packages/jbpm-quarkus-devui/package.json b/packages/jbpm-quarkus-devui/package.json index 0bb8ffe2a41..d832c918046 100644 --- a/packages/jbpm-quarkus-devui/package.json +++ b/packages/jbpm-quarkus-devui/package.json @@ -24,7 +24,8 @@ "powershell": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command", "quarkus:dev": "run-script-os", "quarkus:dev:darwin:linux": "mvn clean package quarkus:dev -DskipTests", - "quarkus:dev:win32": "mvn clean package quarkus:dev -DskipTests" + "quarkus:dev:win32": "mvn clean package quarkus:dev -DskipTests", + "start": "pnpm build:dev && mvn -f ./dev/pom.xml quarkus:dev" }, "dependencies": { "@kie-tools/maven-base": "workspace:*" diff --git a/packages/runtime-tools-process-dev-ui-webapp/env/index.js b/packages/runtime-tools-process-dev-ui-webapp/env/index.js index f7f520285d4..f414555a77f 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/env/index.js +++ b/packages/runtime-tools-process-dev-ui-webapp/env/index.js @@ -30,10 +30,6 @@ module.exports = composeEnv([require("@kie-tools/root-env/env")], { description: "URL to a remote Kogito Application. If set, the devUI will use the url to fetch OpenApi doc instead of using the mock value from the server.js.", }, - RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__openApiDocPath: { - default: "/q/openapi.json", - description: "Relative path to the OpenApi document to load the Process Definitions.", - }, RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__host: { default: "localhost", description: "Webpack server hostname", @@ -48,7 +44,6 @@ module.exports = composeEnv([require("@kie-tools/root-env/env")], { runtimeToolsProcessDevUIWebapp: { kogitoDataIndexUrl: getOrDefault(this.vars.RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__kogitoDataIndexUrl), kogitoAppUrl: getOrDefault(this.vars.RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__kogitoAppUrl), - openApiPath: getOrDefault(this.vars.RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__openApiDocPath), host: getOrDefault(this.vars.RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__host), port: getOrDefault(this.vars.RUNTIME_TOOLS_PROCESS_DEV_UI_WEBAPP__port), }, diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/api/RuntimeToolsDevUIEnvelopeApi.ts b/packages/runtime-tools-process-dev-ui-webapp/src/api/RuntimeToolsDevUIEnvelopeApi.ts index 0cf99ed4c88..477e8217f36 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/api/RuntimeToolsDevUIEnvelopeApi.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/api/RuntimeToolsDevUIEnvelopeApi.ts @@ -36,10 +36,12 @@ export interface User { export interface RuntimeToolsDevUIInitArgs { users?: User[]; dataIndexUrl: string; - remoteKogitoAppUrl?: string; + quarkusAppOrigin: string; + quarkusAppRootPath?: string; + shouldReplaceQuarkusAppOriginWithWebappOrigin?: boolean; page: string; + devUIOrigin: string; devUIUrl: string; - openApiPath: string; isDataIndexAvailable: boolean; availablePages?: string[]; customLabels: CustomLabels; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsContextProvider.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsContextProvider.tsx index 76264ab654e..5fabde99b61 100755 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsContextProvider.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsContextProvider.tsx @@ -19,13 +19,20 @@ import React from "react"; import FormDetailsContext from "./FormDetailsContext"; import { FormDetailsGatewayApiImpl } from "./FormDetailsGatewayApi"; +import { useDevUIAppContext } from "../../components/contexts/DevUIAppContext"; interface IOwnProps { children; } const FormDetailsContextProvider: React.FC = ({ children }) => { - return {children}; + const appContext = useDevUIAppContext(); + const baseUrl = appContext.transformQuarkusUrl( + `${appContext.getQuarkusAppOrigin()}${appContext.getQuarkusAppRootPath()}` + ); + return ( + {children} + ); }; export default FormDetailsContextProvider; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts index 985b33742d9..7701f65d363 100755 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts @@ -26,11 +26,13 @@ export interface FormDetailsGatewayApi { } export class FormDetailsGatewayApiImpl implements FormDetailsGatewayApi { + constructor(private baseUrl: string) {} + getFormContent(formName: string): Promise

{ - return getFormContent(formName); + return getFormContent(this.baseUrl, formName); } saveFormContent(formName: string, content: FormContent): Promise { - return saveFormContent(formName, content); + return saveFormContent(this.baseUrl, formName, content); } } diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListContextProvider.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListContextProvider.tsx index d8868abf5a3..607356b4eaa 100755 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListContextProvider.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListContextProvider.tsx @@ -19,13 +19,19 @@ import React from "react"; import FormsListContext from "./FormsListContext"; import { FormsListGatewayApiImpl } from "./FormsListGatewayApi"; +import { useDevUIAppContext } from "../../components/contexts/DevUIAppContext"; interface FormsListContextProviderProps { children; } const FormsListContextProvider: React.FC = ({ children }) => { - return {children}; + const appContext = useDevUIAppContext(); + const baseUrl = appContext.transformQuarkusUrl( + `${appContext.getQuarkusAppOrigin()}${appContext.getQuarkusAppRootPath()}` + ); + + return {children}; }; export default FormsListContextProvider; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts index 80142cb05ab..018cf166ebd 100755 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts @@ -20,6 +20,7 @@ import { FormInfo } from "@kie-tools/runtime-tools-shared-gateway-api/dist/types"; import { FormFilter } from "@kie-tools/runtime-tools-shared-enveloped-components/dist/formsList"; import { getForms } from "@kie-tools/runtime-tools-process-gateway-api/dist/gatewayApi"; + export interface FormsListGatewayApi { getFormFilter(): Promise; applyFilter(formList: FormFilter): Promise; @@ -37,6 +38,8 @@ export interface UnSubscribeHandler { } export class FormsListGatewayApiImpl implements FormsListGatewayApi { + constructor(private baseUrl: string) {} + private _FormFilter: FormFilter = { formNames: [], }; @@ -52,7 +55,7 @@ export class FormsListGatewayApiImpl implements FormsListGatewayApi { }; getFormsQuery(): Promise { - return getForms(this._FormFilter.formNames); + return getForms(this.baseUrl, this._FormFilter.formNames); } openForm = (formData: FormInfo): Promise => { diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListContextProvider.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListContextProvider.tsx index 2b3788fd23f..ffd61b02d44 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListContextProvider.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListContextProvider.tsx @@ -26,15 +26,17 @@ import { GraphQLProcessDefinitionListQueries } from "./ProcessDefinitionListQuer interface ProcessDefinitionListContextProviderProps { apolloClient: ApolloClient; children; + options?: { transformUrls?: (url?: string) => string }; } const ProcessDefinitionListContextProvider: React.FC = ({ apolloClient, children, + options, }) => { const gatewayApiImpl = useMemo(() => { - return new ProcessDefinitionListGatewayApiImpl(new GraphQLProcessDefinitionListQueries(apolloClient)); - }, []); + return new ProcessDefinitionListGatewayApiImpl(new GraphQLProcessDefinitionListQueries(apolloClient, options)); + }, [apolloClient, options]); return ( {children} diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListQueries.ts b/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListQueries.ts index 7acdbcdb2b7..4a0dd280bd5 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListQueries.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/channel/ProcessDefinitionList/ProcessDefinitionListQueries.ts @@ -19,20 +19,25 @@ import { ApolloClient } from "apollo-client"; import { ProcessDefinition } from "@kie-tools/runtime-tools-process-gateway-api/dist/types"; import { getProcessDefinitions } from "@kie-tools/runtime-tools-process-gateway-api/dist/gatewayApi"; -import { OperationType } from "@kie-tools/runtime-tools-shared-gateway-api/dist/types"; export interface ProcessDefinitionListQueries { getProcessDefinitions(): Promise; } export class GraphQLProcessDefinitionListQueries implements ProcessDefinitionListQueries { - private readonly client: ApolloClient; - - constructor(client: ApolloClient) { + constructor( + private readonly client: ApolloClient, + private readonly options?: { transformUrls?: (url?: string) => string } + ) { this.client = client; } getProcessDefinitions(): Promise { - return getProcessDefinitions(this.client); + return getProcessDefinitions(this.client).then((processDefinitions) => + processDefinitions.map((definition) => ({ + ...definition, + endpoint: this.options?.transformUrls?.(definition.endpoint) ?? definition.endpoint, + })) + ); } } diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/DevUILayout/DevUILayout.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/DevUILayout/DevUILayout.tsx index a21816cdb04..45e1ca47104 100755 --- a/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/DevUILayout/DevUILayout.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/DevUILayout/DevUILayout.tsx @@ -36,15 +36,18 @@ import { ProcessDetailsContextProvider } from "@kie-tools/runtime-tools-process- import { JobsManagementContextProvider } from "@kie-tools/runtime-tools-process-webapp-components/dist/JobsManagement"; import { TaskFormContextProvider } from "../../contexts/TaskFormContextProvider"; import { TaskInboxContextProvider } from "../../contexts/TaskInboxContextProvider"; +import ProcessContextProvider from "../../contexts/ProcessContextProvider"; interface IOwnProps { apolloClient: ApolloClient; isProcessEnabled: boolean; users: User[]; children: React.ReactElement; + devUIOrigin: string; devUIUrl: string; - openApiPath: string; - remoteKogitoAppUrl: string; + quarkusAppOrigin: string; + quarkusAppRootPath: string; + shouldReplaceQuarkusAppOriginWithWebappOrigin: boolean; availablePages?: string[]; customLabels: CustomLabels; omittedProcessTimelineEvents?: string[]; @@ -55,9 +58,11 @@ const DevUILayout: React.FC = ({ apolloClient, isProcessEnabled, users, + devUIOrigin, devUIUrl, - openApiPath, - remoteKogitoAppUrl, + quarkusAppOrigin, + quarkusAppRootPath, + shouldReplaceQuarkusAppOriginWithWebappOrigin, availablePages, customLabels, omittedProcessTimelineEvents, @@ -76,9 +81,11 @@ const DevUILayout: React.FC = ({ = ({ > - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/RuntimeTools/RuntimeTools.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/RuntimeTools/RuntimeTools.tsx index ef7c8382351..ec21bf36547 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/RuntimeTools/RuntimeTools.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/components/DevUI/RuntimeTools/RuntimeTools.tsx @@ -33,10 +33,12 @@ interface IOwnProps { isProcessEnabled: boolean; users: User[]; dataIndexUrl: string; + quarkusAppOrigin: string; + quarkusAppRootPath: string; + shouldReplaceQuarkusAppOriginWithWebappOrigin: boolean; navigate: string; + devUIOrigin: string; devUIUrl: string; - openApiPath: string; - remoteKogitoAppUrl: string; availablePages: string[]; customLabels: CustomLabels; omittedProcessTimelineEvents: string[]; @@ -47,9 +49,11 @@ const RuntimeTools: React.FC = ({ users, dataIndexUrl, navigate, + devUIOrigin, devUIUrl, - openApiPath, - remoteKogitoAppUrl, + quarkusAppOrigin, + quarkusAppRootPath, + shouldReplaceQuarkusAppOriginWithWebappOrigin, isProcessEnabled, availablePages, customLabels, @@ -57,9 +61,9 @@ const RuntimeTools: React.FC = ({ diagramPreviewSize, }) => { const httpLink = new HttpLink({ - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - uri: dataIndexUrl, + uri: shouldReplaceQuarkusAppOriginWithWebappOrigin + ? dataIndexUrl.replace(quarkusAppOrigin, devUIOrigin) + : dataIndexUrl, }); const fallbackUI = onError(({ networkError }: any) => { @@ -69,9 +73,11 @@ const RuntimeTools: React.FC = ({ = ({ = ({ +const DevUIAppContextProvider: React.FC = ({ users, + devUIOrigin, devUIUrl, - openApiPath, - remoteKogitoAppUrl, + quarkusAppOrigin, + quarkusAppRootPath, + shouldReplaceQuarkusAppOriginWithWebappOrigin, isProcessEnabled, availablePages, customLabels, @@ -51,9 +38,11 @@ const DevUIAppContextProvider: React.FC = ({ value={ new DevUIAppContextImpl({ users, + devUIOrigin, devUIUrl, - openApiPath, - remoteKogitoAppUrl, + quarkusAppOrigin, + quarkusAppRootPath, + shouldReplaceQuarkusAppOriginWithWebappOrigin, isProcessEnabled, availablePages, customLabels, diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/ProcessContextProvider.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/ProcessContextProvider.tsx new file mode 100644 index 00000000000..578d4fad928 --- /dev/null +++ b/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/ProcessContextProvider.tsx @@ -0,0 +1,54 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import React from "react"; +import { ApolloClient } from "apollo-client"; +import { useDevUIAppContext } from "../../components/contexts/DevUIAppContext"; +import { ProcessListContextProvider } from "@kie-tools/runtime-tools-process-webapp-components/dist/ProcessList"; +import { ProcessDetailsContextProvider } from "@kie-tools/runtime-tools-process-webapp-components/dist/ProcessDetails"; +import { ProcessDefinitionListContextProvider } from "../../channel/ProcessDefinitionList"; + +interface IOwnProps { + apolloClient: ApolloClient; + children; +} + +export const ProcessContextProvider: React.FC = ({ apolloClient, children }) => { + const appContext = useDevUIAppContext(); + + return ( + appContext.transformQuarkusUrl(url) }} + > + appContext.transformQuarkusUrl(url) }} + > + appContext.transformQuarkusUrl(url) }} + > + {children} + + + + ); +}; + +export default ProcessContextProvider; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/TaskFormContextProvider.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/TaskFormContextProvider.tsx index 05c5f840894..c710328e51b 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/TaskFormContextProvider.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/components/contexts/TaskFormContextProvider.tsx @@ -20,7 +20,6 @@ import React from "react"; import { useDevUIAppContext } from "../../components/contexts/DevUIAppContext"; import { TaskFormContext, - TaskFormGatewayApi, TaskFormGatewayApiImpl, } from "@kie-tools/runtime-tools-process-webapp-components/dist/TaskForms"; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeApiImpl.ts b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeApiImpl.ts index 4d6a6c59816..470a1f78490 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeApiImpl.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeApiImpl.ts @@ -61,14 +61,19 @@ export class RuntimeToolsDevUIEnvelopeApiImpl implements RuntimeToolsDevUIEnvelo this.view().setDataIndexUrl(initArgs.dataIndexUrl); this.view().setUsers(initArgs.users); this.view().navigateTo(initArgs.page); - this.view().setDevUIUrl && this.view().setDevUIUrl(initArgs.devUIUrl); - this.view().setOpenApiPath && this.view().setOpenApiPath(initArgs.openApiPath); - this.view().setRemoteKogitoAppUrl && this.view().setRemoteKogitoAppUrl(initArgs.remoteKogitoAppUrl); - this.view().setAvailablePages && this.view().setAvailablePages(initArgs.availablePages); - this.view().setCustomLabels && this.view().setCustomLabels(initArgs.customLabels); + this.view().setDevUIOrigin?.(initArgs.devUIOrigin); + this.view().setDevUIUrl?.(initArgs.devUIUrl); + this.view().setQuarkusAppOrigin?.(initArgs.quarkusAppOrigin); + this.view().setQuarkusAppRootPath?.(initArgs.quarkusAppRootPath); + this.view().setShouldReplaceQuarkusAppOriginWithWebappOrigin && + this.view().setShouldReplaceQuarkusAppOriginWithWebappOrigin( + initArgs.shouldReplaceQuarkusAppOriginWithWebappOrigin + ); + this.view().setAvailablePages?.(initArgs.availablePages); + this.view().setCustomLabels?.(initArgs.customLabels); this.view().setOmittedProcessTimelineEvents && this.view().setOmittedProcessTimelineEvents(initArgs.omittedProcessTimelineEvents); - this.view().setDiagramPreviewSize && this.view().setDiagramPreviewSize(initArgs.diagramPreviewSize); + this.view().setDiagramPreviewSize?.(initArgs.diagramPreviewSize); // Ensure these are set last. This is a workaround to ensure views are corrected configured with other properties // from the DevUIAppContext before they are rendered. i.e. use of DevUIAppContext is not responsive to updates. this.view().setProcessEnabled(initArgs.isDataIndexAvailable); diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeView.tsx b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeView.tsx index 5852f0f6486..59eb7d5120c 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeView.tsx +++ b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeView.tsx @@ -27,11 +27,14 @@ import { DiagramPreviewSize } from "@kie-tools/runtime-tools-process-enveloped-c export const RuntimeToolsDevUIEnvelopeView = React.forwardRef( (props, forwardingRef) => { const [dataIndexUrl, setDataIndexUrl] = React.useState(""); - const [remoteKogitoAppUrl, setRemoteKogitoAppUrl] = React.useState(""); + const [quarkusAppOrigin, setQuarkusAppOrigin] = React.useState(""); + const [quarkusAppRootPath, setQuarkusAppRootPath] = React.useState(""); + const [shouldReplaceQuarkusAppOriginWithWebappOrigin, setShouldReplaceQuarkusAppOriginWithWebappOrigin] = + React.useState(false); const [DevUiUsers, setDevUiUsers] = React.useState([]); const [navigate, setNavigate] = React.useState(""); + const [devUIOrigin, setDevUIOrigin] = React.useState(""); const [devUIUrl, setDevUIUrl] = React.useState(""); - const [openApiPath, setOpenApiPath] = React.useState(""); const [isProcessEnabled, setProcessEnabled] = React.useState(false); const [availablePages, setAvailablePages] = React.useState([]); const [customLabels, setCustomLabels] = React.useState(undefined); @@ -43,8 +46,14 @@ export const RuntimeToolsDevUIEnvelopeView = React.forwardRef { setDataIndexUrl(dataIndexUrl); }, - setRemoteKogitoAppUrl: (remoteKogitoAppUrl) => { - setRemoteKogitoAppUrl(remoteKogitoAppUrl); + setQuarkusAppOrigin: (quarkusAppOrigin: string) => { + setQuarkusAppOrigin(quarkusAppOrigin); + }, + setQuarkusAppRootPath: (quarkusAppRootPath: string) => { + setQuarkusAppRootPath(quarkusAppRootPath); + }, + setShouldReplaceQuarkusAppOriginWithWebappOrigin: (shouldReplaceQuarkusAppOriginWithWebappOrigin: boolean) => { + setShouldReplaceQuarkusAppOriginWithWebappOrigin(shouldReplaceQuarkusAppOriginWithWebappOrigin); }, setUsers: (users) => { setDevUiUsers(users); @@ -55,8 +64,8 @@ export const RuntimeToolsDevUIEnvelopeView = React.forwardRef { setDevUIUrl(url); }, - setOpenApiPath: (path) => { - setOpenApiPath(path); + setDevUIOrigin: (url) => { + setDevUIOrigin(url); }, setProcessEnabled: (isProcessEnabled) => { setProcessEnabled(isProcessEnabled); @@ -82,14 +91,16 @@ export const RuntimeToolsDevUIEnvelopeView = React.forwardRef )} diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeViewApi.ts b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeViewApi.ts index 74b63031772..527a9bd2aa1 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeViewApi.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/envelope/RuntimeToolsDevUIEnvelopeViewApi.ts @@ -22,11 +22,13 @@ import { CustomLabels } from "../api/CustomLabels"; export interface RuntimeToolsDevUIEnvelopeViewApi { setDataIndexUrl: (dataIndexUrl: string) => void; - setRemoteKogitoAppUrl: (remoteKogitoAppUrl: string) => void; + setQuarkusAppOrigin: (quarkusAppOrigin: string) => void; + setQuarkusAppRootPath: (quarkusAppRootPath: string) => void; + setShouldReplaceQuarkusAppOriginWithWebappOrigin: (shouldReplaceQuarkusAppOriginWithWebappOrigin: boolean) => void; setUsers: (users: User[]) => void; navigateTo: (page: string) => void; + setDevUIOrigin: (url: string) => void; setDevUIUrl: (url: string) => void; - setOpenApiPath: (path: string) => void; setProcessEnabled: (isProcessEnabled: boolean) => void; setAvailablePages: (availablePages: string[]) => void; setCustomLabels: (customLabels: CustomLabels) => void; diff --git a/packages/runtime-tools-process-dev-ui-webapp/src/standalone/standalone.ts b/packages/runtime-tools-process-dev-ui-webapp/src/standalone/standalone.ts index 5cada2ade46..dea46a8350b 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/src/standalone/standalone.ts +++ b/packages/runtime-tools-process-dev-ui-webapp/src/standalone/standalone.ts @@ -27,75 +27,49 @@ export interface StandaloneDevUIApi { close: () => void; } -export interface Consoles { - open: (args: { - container: Element; - users: User[]; - dataIndexUrl?: string; - page: string; - devUIUrl: string; - remoteKogitoAppUrl?: string; - openApiPath?: string; - origin?: string; - availablePages?: string[]; - customLabels?: CustomLabels; - omittedProcessTimelineEvents?: string[]; - diagramPreviewSize?: DiagramPreviewSize; - }) => StandaloneDevUIApi; -} +export type StandaloneDevUIArgs = { + container: Element; + isDataIndexAvailable: boolean; + users: User[]; + dataIndexUrl?: string; + quarkusAppOrigin: string; + quarkusAppRootPath?: string; + shouldReplaceQuarkusAppOriginWithWebappOrigin?: boolean; + page: string; + devUIOrigin: string; + devUIUrl: string; + origin?: string; + availablePages?: string[]; + customLabels?: CustomLabels; + omittedProcessTimelineEvents?: string[]; + diagramPreviewSize?: DiagramPreviewSize; +}; -const createEnvelopeServer = ( - iframe: HTMLIFrameElement, - isDataIndexAvailable: boolean, - users: User[], - dataIndexUrl: string, - page: string, - devUIUrl: string, - openApiPath: string, - remoteKogitoAppUrl: string, - customLabels: CustomLabels, - diagramPreviewSize?: DiagramPreviewSize, - origin?: string, - availablePages?: string[], - omittedProcessTimelineEvents?: string[] -) => { +export type StandAloneDevUIEnvelopeServerArgs = Omit & { + dataIndexUrl: string; + customLabels: CustomLabels; +}; + +const createEnvelopeServer = (iframe: HTMLIFrameElement, args: StandAloneDevUIEnvelopeServerArgs) => { const defaultOrigin = window.location.protocol === "file:" ? "*" : window.location.origin; return new EnvelopeServer( { - postMessage: (message) => iframe.contentWindow?.postMessage(message, origin ?? defaultOrigin), + postMessage: (message) => iframe.contentWindow?.postMessage(message, args.origin ?? defaultOrigin), }, - origin ?? defaultOrigin, + args.origin ?? defaultOrigin, (self) => { return self.envelopeApi.requests.runtimeToolsDevUI_initRequest( { origin: self.origin, envelopeServerId: self.id, }, - { - isDataIndexAvailable, - users, - dataIndexUrl, - page, - devUIUrl, - openApiPath, - customLabels, - availablePages, - omittedProcessTimelineEvents, - diagramPreviewSize, - remoteKogitoAppUrl, - } + args ); } ); }; -declare global { - interface Window { - RuntimeToolsDevUI: Consoles; - } -} - export const createDevUI = ( envelopeServer: EnvelopeServer, listener: (message: MessageEvent) => void, @@ -110,21 +84,7 @@ export const createDevUI = ( }; }; -export function open(args: { - container: Element; - isDataIndexAvailable: boolean; - users: User[]; - dataIndexUrl?: string; - remoteKogitoAppUrl?: string; - page: string; - devUIUrl: string; - openApiPath?: string; - origin?: string; - availablePages?: string[]; - customLabels?: CustomLabels; - omittedProcessTimelineEvents?: string[]; - diagramPreviewSize?: DiagramPreviewSize; -}): StandaloneDevUIApi { +export function open(args: StandaloneDevUIArgs): StandaloneDevUIApi { const iframe = document.createElement("iframe"); iframe.srcdoc = devUIEnvelopeIndex; // index coming from webapp iframe.id = "iframe"; @@ -132,24 +92,21 @@ export function open(args: { iframe.style.height = "100%"; iframe.style.border = "none"; - const envelopeServer = createEnvelopeServer( - iframe, - args.isDataIndexAvailable, - args.users, - args.dataIndexUrl ?? process.env.KOGITO_DATAINDEX_HTTP_URL, - args.page, - args.devUIUrl, - args.openApiPath ?? process.env.KOGITO_OPENAPI_PATH, - args.remoteKogitoAppUrl ?? process.env.KOGITO_REMOTE_KOGITO_APP_URL, - args.customLabels ?? { + const envelopeArgs = { + ...args, + container: undefined, + }; + + const envelopeServer = createEnvelopeServer(iframe, { + ...envelopeArgs, + dataIndexUrl: args.dataIndexUrl ?? process.env.KOGITO_DATAINDEX_HTTP_URL, + customLabels: args.customLabels ?? { singularProcessLabel: "Process", pluralProcessLabel: "Processes", }, - args.diagramPreviewSize, - args.origin, - args.availablePages, - args.omittedProcessTimelineEvents ?? [] - ); + omittedProcessTimelineEvents: args.omittedProcessTimelineEvents ?? [], + }); + const channelApi = new RuntimeToolsDevUIChannelApiImpl(); const listener = (message: MessageEvent) => { envelopeServer.receive(message.data, channelApi); @@ -163,3 +120,11 @@ export function open(args: { } window.RuntimeToolsDevUI = { open }; + +declare global { + interface Window { + RuntimeToolsDevUI: { + open: typeof open; + }; + } +} diff --git a/packages/runtime-tools-process-dev-ui-webapp/webpack.config.js b/packages/runtime-tools-process-dev-ui-webapp/webpack.config.js index 62e8485380e..63b8e84bf8d 100644 --- a/packages/runtime-tools-process-dev-ui-webapp/webpack.config.js +++ b/packages/runtime-tools-process-dev-ui-webapp/webpack.config.js @@ -68,7 +68,6 @@ module.exports = async (env) => { KOGITO_APP_NAME: "Runtime tools dev-ui", KOGITO_DATAINDEX_HTTP_URL: dataIndexURL, KOGITO_REMOTE_KOGITO_APP_URL: buildEnv.runtimeToolsProcessDevUIWebapp.kogitoAppUrl, - KOGITO_OPENAPI_PATH: buildEnv.runtimeToolsProcessDevUIWebapp.openApiPath, }), new CopyPlugin({ patterns: [ diff --git a/packages/runtime-tools-process-gateway-api/src/gatewayApi/apis.tsx b/packages/runtime-tools-process-gateway-api/src/gatewayApi/apis.tsx index 17c52c84882..c68ce8d3778 100644 --- a/packages/runtime-tools-process-gateway-api/src/gatewayApi/apis.tsx +++ b/packages/runtime-tools-process-gateway-api/src/gatewayApi/apis.tsx @@ -474,10 +474,10 @@ export const getJobsWithFilters = async ( } }; -export const getForms = (formFilter: string[]): Promise => { +export const getForms = (baseUrl: string, formFilter: string[]): Promise => { return new Promise((resolve, reject) => { axios - .get("/forms/list", { + .get(new URL(`forms/list`, baseUrl).toString(), { params: { names: formFilter.join(";"), }, @@ -489,10 +489,10 @@ export const getForms = (formFilter: string[]): Promise => { }); }; -export const getFormContent = (formName: string): Promise => { +export const getFormContent = (baseUrl: string, formName: string): Promise => { return new Promise((resolve, reject) => { axios - .get(`/forms/${formName}`) + .get(new URL(`forms/${formName}`, baseUrl).toString()) .then((result) => { resolve(result.data); }) @@ -500,10 +500,10 @@ export const getFormContent = (formName: string): Promise => { }); }; -export const saveFormContent = (formName: string, content: FormContent): Promise => { +export const saveFormContent = (baseUrl: string, formName: string, content: FormContent): Promise => { return new Promise((resolve, reject) => { axios - .post(`/forms/${formName}`, content) + .post(new URL(`forms/${formName}`, baseUrl).toString(), content) .then((result) => { resolve(); }) @@ -520,7 +520,6 @@ export const getProcessDefinitions = (client: ApolloClient): Promise { - const processDefinitions = value.data.ProcessDefinitions; resolve( value.data.ProcessDefinitions.map((item: { id: string; endpoint: string }) => { return { diff --git a/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsContextProvider.tsx b/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsContextProvider.tsx index c0c2df7576a..538d5982555 100644 --- a/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsContextProvider.tsx +++ b/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsContextProvider.tsx @@ -25,12 +25,13 @@ import { GraphQLProcessDetailsQueries } from "./ProcessDetailsQueries"; interface IOwnProps { apolloClient: ApolloClient; children: React.ReactElement; + options?: { transformUrls?: (url?: string) => string }; } -export const ProcessDetailsContextProvider: React.FC = ({ apolloClient, children }) => { +export const ProcessDetailsContextProvider: React.FC = ({ apolloClient, children, options }) => { return ( {children} diff --git a/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsQueries.ts b/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsQueries.ts index 9571119a2f7..b2f13598215 100755 --- a/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsQueries.ts +++ b/packages/runtime-tools-process-webapp-components/src/ProcessDetails/ProcessDetailsQueries.ts @@ -65,14 +65,19 @@ export interface ProcessDetailsQueries { } export class GraphQLProcessDetailsQueries implements ProcessDetailsQueries { - private readonly client: ApolloClient; - - constructor(client: ApolloClient) { - this.client = client; - } + constructor( + private readonly client: ApolloClient, + private readonly options?: { transformUrls?: (url?: string) => string } + ) {} async getProcessDetails(id: string): Promise { - return getProcessDetails(id, this.client); + return getProcessDetails(id, this.client).then((details) => { + return { + ...details, + endpoint: this.options?.transformUrls?.(details.endpoint) ?? details.endpoint, + serviceUrl: this.options?.transformUrls?.(details.serviceUrl) ?? details.serviceUrl, + }; + }); } async getJobs(id: string): Promise { diff --git a/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListContextProvider.tsx b/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListContextProvider.tsx index 05fe3b3994a..fa61b4bdc32 100644 --- a/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListContextProvider.tsx +++ b/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListContextProvider.tsx @@ -25,11 +25,16 @@ import { GraphQLProcessListQueries } from "./ProcessListQueries"; interface ProcessListContextProviderProps { apolloClient: ApolloClient; children: ReactElement; + options?: { transformUrls?: (url?: string) => string }; } -export const ProcessListContextProvider: FC = ({ apolloClient, children }) => { +export const ProcessListContextProvider: FC = ({ + apolloClient, + children, + options, +}) => { const gatewayApiImpl = useMemo(() => { - return new ProcessListGatewayApiImpl(new GraphQLProcessListQueries(apolloClient)); + return new ProcessListGatewayApiImpl(new GraphQLProcessListQueries(apolloClient, options)); }, []); return {children}; }; diff --git a/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListQueries.ts b/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListQueries.ts index 83f3bdc818a..926a8e4e500 100644 --- a/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListQueries.ts +++ b/packages/runtime-tools-process-webapp-components/src/ProcessList/ProcessListQueries.ts @@ -53,11 +53,10 @@ export interface ProcessListQueries { } export class GraphQLProcessListQueries implements ProcessListQueries { - private readonly client: ApolloClient; - - constructor(client: ApolloClient) { - this.client = client; - } + constructor( + private readonly client: ApolloClient, + private readonly options?: { transformUrls?: (url?: string) => string } + ) {} getProcessInstances( offset: number, @@ -65,7 +64,13 @@ export class GraphQLProcessListQueries implements ProcessListQueries { filters: ProcessInstanceFilter, sortBy: ProcessListSortBy ): Promise { - return getProcessInstances(offset, limit, filters, sortBy, this.client); + return getProcessInstances(offset, limit, filters, sortBy, this.client).then((processInstances) => { + return processInstances.map((process) => ({ + ...process, + endpoint: this.options?.transformUrls?.(process.endpoint) ?? process.endpoint, + serviceUrl: this.options?.transformUrls?.(process.serviceUrl) ?? process.serviceUrl, + })); + }); } getChildProcessInstances(rootProcessInstanceId: string): Promise { From 002d90d1ace8c2bb1ef224e0a628b41d96fccb67 Mon Sep 17 00:00:00 2001 From: Rodrigo Antunes Date: Wed, 21 Aug 2024 13:08:04 -0300 Subject: [PATCH 19/22] kie-issues#1417: Helm Charts for Task and Management Consoles (#2526) --- .ci/jenkins/Jenkinsfile.daily-dev-publish | 21 ++ .ci/jenkins/Jenkinsfile.release-build | 45 +++- .ci/jenkins/Jenkinsfile.release-dry-run | 2 +- .ci/jenkins/Jenkinsfile.release-publish | 2 +- ...kinsfile.runtime-tools-consoles-helm-chart | 205 +++++++++++++++ packages/kogito-management-console/README.md | 34 +-- .../runtime-tools-consoles-helm-chart/LICENSE | 201 ++++++++++++++ .../README.md | 247 ++++++++++++++++++ .../env/index.js | 53 ++++ .../install.js | 52 ++++ .../package.json | 44 ++++ .../scripts/README.md.gotmpl | 37 +++ .../scripts/update-readmes.js | 30 +++ .../src/.helmignore | 0 .../src/Chart.lock | 9 + .../src/Chart.yaml | 13 + .../src/README.md | 81 ++++++ .../src/charts/management-console/Chart.yaml | 6 + .../src/charts/management-console/README.md | 45 ++++ .../management-console/templates/_helpers.tpl | 40 +++ .../templates/deployment.yaml.helm | 100 +++++++ .../templates/hpa.yaml.helm | 28 ++ .../templates/ingress.yaml.helm | 61 +++++ .../templates/route.yaml.helm | 25 ++ .../templates/service.yaml.helm | 18 ++ .../templates/serviceaccount.yaml.helm | 12 + .../src/charts/management-console/values.yaml | 113 ++++++++ .../src/charts/task-console/Chart.yaml | 6 + .../src/charts/task-console/README.md | 46 ++++ .../task-console/templates/_helpers.tpl | 40 +++ .../templates/deployment.yaml.helm | 112 ++++++++ .../task-console/templates/hpa.yaml.helm | 28 ++ .../task-console/templates/ingress.yaml.helm | 61 +++++ .../task-console/templates/route.yaml.helm | 25 ++ .../task-console/templates/service.yaml.helm | 18 ++ .../templates/serviceaccount.yaml.helm | 12 + .../tests/test-connection.yaml.helm | 15 ++ .../src/charts/task-console/values.yaml | 118 +++++++++ .../src/templates/NOTES.txt | 110 ++++++++ .../src/templates/_helpers.tpl | 50 ++++ .../src/values-kubernetes.yaml | 58 ++++ .../src/values-minikube-nginx.yaml | 58 ++++ .../src/values-openshift.yaml | 65 +++++ .../src/values.yaml | 60 +++++ pnpm-lock.yaml | 25 ++ repo/graph.dot | 3 + repo/graph.json | 12 + 47 files changed, 2416 insertions(+), 30 deletions(-) create mode 100644 .ci/jenkins/release-jobs/Jenkinsfile.runtime-tools-consoles-helm-chart create mode 100644 packages/runtime-tools-consoles-helm-chart/LICENSE create mode 100644 packages/runtime-tools-consoles-helm-chart/README.md create mode 100644 packages/runtime-tools-consoles-helm-chart/env/index.js create mode 100644 packages/runtime-tools-consoles-helm-chart/install.js create mode 100644 packages/runtime-tools-consoles-helm-chart/package.json create mode 100644 packages/runtime-tools-consoles-helm-chart/scripts/README.md.gotmpl create mode 100644 packages/runtime-tools-consoles-helm-chart/scripts/update-readmes.js create mode 100644 packages/runtime-tools-consoles-helm-chart/src/.helmignore create mode 100644 packages/runtime-tools-consoles-helm-chart/src/Chart.lock create mode 100644 packages/runtime-tools-consoles-helm-chart/src/Chart.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/README.md create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/Chart.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/README.md create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/_helpers.tpl create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/deployment.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/hpa.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/ingress.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/route.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/service.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/serviceaccount.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/management-console/values.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/Chart.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/README.md create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/_helpers.tpl create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/deployment.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/hpa.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/ingress.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/route.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/service.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/serviceaccount.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/tests/test-connection.yaml.helm create mode 100644 packages/runtime-tools-consoles-helm-chart/src/charts/task-console/values.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/templates/NOTES.txt create mode 100644 packages/runtime-tools-consoles-helm-chart/src/templates/_helpers.tpl create mode 100644 packages/runtime-tools-consoles-helm-chart/src/values-kubernetes.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/values-minikube-nginx.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/values-openshift.yaml create mode 100644 packages/runtime-tools-consoles-helm-chart/src/values.yaml diff --git a/.ci/jenkins/Jenkinsfile.daily-dev-publish b/.ci/jenkins/Jenkinsfile.daily-dev-publish index 1dc81ba53c4..3c5711976dd 100644 --- a/.ci/jenkins/Jenkinsfile.daily-dev-publish +++ b/.ci/jenkins/Jenkinsfile.daily-dev-publish @@ -93,6 +93,11 @@ pipeline { KIE_SANDBOX_HELM_CHART__name = 'incubator-kie-sandbox-helm-chart' KIE_SANDBOX_HELM_CHART__tag = "0.0.0-${params.BRANCH_NAME}" + RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry = 'docker.io' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__account = 'apache' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__name = 'incubator-kie-runtime-tools-consoles-helm-chart' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag = "0.0.0-${params.BRANCH_NAME}" + OPENSHIFT_NAMESPACE = 'kie-sandbox' OPENSHIFT_PART_OF = 'daily-dev-kie-sandbox-app' DEPLOY_TAG = "${params.BRANCH_NAME}" @@ -541,6 +546,22 @@ pipeline { } } + stage('Push runtime-tools-consoles-helm-chart to Docker Hub') { + steps { + dir('kie-tools') { + script { + helmUtils.pushChartToRegistry( + "${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry}", + "${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__account}", + "packages/runtime-tools-consoles-helm-chart/dist/${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__name}-${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag}.tgz", + "${pipelineVars.dockerHubUserCredentialsId}", + "${pipelineVars.dockerHubTokenCredentialsId}" + ) + } + } + } + } + stage('Update kogito-online resources') { steps { dir('kogito-online') { diff --git a/.ci/jenkins/Jenkinsfile.release-build b/.ci/jenkins/Jenkinsfile.release-build index 15cfa071494..a498a382d52 100644 --- a/.ci/jenkins/Jenkinsfile.release-build +++ b/.ci/jenkins/Jenkinsfile.release-build @@ -35,7 +35,7 @@ pipeline { string(description: 'Base Ref', name: 'BASE_REF') string(description: 'Release Version', name: 'RELEASE_VERSION', defaultValue: '0.0.0') string(description: 'Upload asset url', name: 'UPLOAD_ASSET_URL', defaultValue: '') - string(description: 'Runners', name: 'RUNNERS', defaultValue: '{"dev_deployment_base_image":"false","dev_deployment_kogito_quakus_blank_app_image":"false","dev_deployment_dmn_form_webapp_image":"false","dev_deployment_upload_service":"false","kie_sandbox_image":"false","kie_sandbox_extended_services_image":"false","cors_proxy_image":"false","online_editor":"false", "chrome_extensions":"false","vscode_extensions_dev":"false","vscode_extensions_prod":"false","npm_packages":"false","standalone_editors_cdn":"false","extended_services":"false","serverless_logic_web_tools":"false","serverless_logic_web_tools_swf_builder_image":"false","serverless_logic_web_tools_base_builder_image":"false","serverless_logic_web_tools_swf_dev_mode_image":"false","dashbuilder_viewer_image":"false","kn_plugin_workflow":"false","kie_sandbox_helm_chart":"false","kogito_task_console":"false","kogito_management_console":"false","kogito_swf_builder":"false","kogito_swf_devmode":"false","kogito_serverless_operator":"false","jbpm_quarkus_devui":"false","sonataflow_quarkus_devui":"false"}') + string(description: 'Runners', name: 'RUNNERS', defaultValue: '{"dev_deployment_base_image":"false","dev_deployment_kogito_quakus_blank_app_image":"false","dev_deployment_dmn_form_webapp_image":"false","dev_deployment_upload_service":"false","kie_sandbox_image":"false","kie_sandbox_extended_services_image":"false","cors_proxy_image":"false","online_editor":"false", "chrome_extensions":"false","vscode_extensions_dev":"false","vscode_extensions_prod":"false","npm_packages":"false","standalone_editors_cdn":"false","extended_services":"false","serverless_logic_web_tools":"false","serverless_logic_web_tools_swf_builder_image":"false","serverless_logic_web_tools_base_builder_image":"false","serverless_logic_web_tools_swf_dev_mode_image":"false","dashbuilder_viewer_image":"false","kn_plugin_workflow":"false","kie_sandbox_helm_chart":"false","kogito_task_console":"false","kogito_management_console":"false","kogito_swf_builder":"false","kogito_swf_devmode":"false","kogito_serverless_operator":"false","jbpm_quarkus_devui":"false","sonataflow_quarkus_devui":"false","runtime_tools_consoles_helm_chart":"false"}') booleanParam(description: 'Release Candidate', name: 'RELEASE_CANDIDATE', defaultValue: false) string(description: 'Release Candidate Version', name: 'RELEASE_CANDIDATE_VERSION', defaultValue: '') } @@ -103,6 +103,7 @@ pipeline { env.KOGITO_SERVERLESS_OPERATOR = runners.kogito_serverless_operator env.JBPM_QUARKUS_DEVUI = runners.jbpm_quarkus_devui env.SONATAFLOW_QUARKUS_DEVUI = runners.sonataflow_quarkus_devui + env.RUNTIME_TOOLS_CONSOLES_HELM_CHART = runners.runtime_tools_consoles_helm_chart } } } @@ -138,6 +139,7 @@ pipeline { echo "kogito_serverless_operator: ${env.KOGITO_SERVERLESS_OPERATOR}" echo "jbpm_quarkus_devui: ${env.JBPM_QUARKUS_DEVUI}" echo "sonataflow_quarkus_devui: ${env.SONATAFLOW_QUARKUS_DEVUI}" + echo "runtime_tools_consoles_helm_chart: ${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART}" """.trim() } } @@ -574,7 +576,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -595,7 +597,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -617,7 +619,7 @@ pipeline { string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), string(name: 'UPLOAD_ASSET_URL', value: "${params.UPLOAD_ASSET_URL}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -638,7 +640,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -660,7 +662,7 @@ pipeline { string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), string(name: 'UPLOAD_ASSET_URL', value: "${params.UPLOAD_ASSET_URL}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -681,7 +683,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } @@ -706,7 +708,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result @@ -729,7 +731,7 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result @@ -754,7 +756,7 @@ pipeline { string(name: 'KIE_SANDBOX_EXTENDED_SERVICES_URL', value: "${env.KIE_SANDBOX_EXTENDED_SERVICES_URL}"), string(name: 'KIE_SANDBOX_CORS_PROXY_URL', value: "${env.KIE_SANDBOX_CORS_PROXY_URL}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result @@ -777,7 +779,28 @@ pipeline { string(name: 'BASE_REF', value: "${params.BASE_REF}"), string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), - string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") + ] + ).result + } + } + } + + stage('Runtime Tools Consoles Helm Chart') { + when { + expression { env.RUNTIME_TOOLS_CONSOLES_HELM_CHART == 'true' } + } + steps { + script { + env.RUNTIME_TOOLS_CONSOLES_HELM_CHART_JOB_RESULT = build( + wait: true, + job: 'KIE/kie-tools/kie-tools-release-jobs/runtime-tools-consoles-helm-chart', + parameters: [ + booleanParam(name: 'DRY_RUN', value: "${params.DRY_RUN}"), + string(name: 'BASE_REF', value: "${params.BASE_REF}"), + string(name: 'RELEASE_VERSION', value: "${params.RELEASE_VERSION}"), + booleanParam(name: 'RELEASE_CANDIDATE', value: "${params.RELEASE_CANDIDATE}"), + string(name: 'RELEASE_CANDIDATE_VERSION', value: "${params.RELEASE_CANDIDATE_VERSION}") ] ).result } diff --git a/.ci/jenkins/Jenkinsfile.release-dry-run b/.ci/jenkins/Jenkinsfile.release-dry-run index 81252dbc6e3..207cfd8bd64 100644 --- a/.ci/jenkins/Jenkinsfile.release-dry-run +++ b/.ci/jenkins/Jenkinsfile.release-dry-run @@ -35,7 +35,7 @@ pipeline { build job: 'KIE/kie-tools/kie-tools-release-build', parameters: [ booleanParam(name: 'DRY_RUN', value: true), string(name: 'BASE_REF', value: 'main'), - string(name: 'RUNNERS', value: '{"dev_deployment_base_image":"true","dev_deployment_kogito_quakus_blank_app_image":"true","dev_deployment_dmn_form_webapp_image":"true","dev_deployment_upload_service":"true","kie_sandbox_image":"true","kie_sandbox_extended_services_image":"true","cors_proxy_image":"true","online_editor":"true","chrome_extensions":"true","vscode_extensions_dev":"true","vscode_extensions_prod":"true","npm_packages":"true","standalone_editors_cdn":"true","extended_services":"true","serverless_logic_web_tools":"true","serverless_logic_web_tools_swf_builder_image":"true","serverless_logic_web_tools_base_builder_image":"true","serverless_logic_web_tools_swf_dev_mode_image":"true","dashbuilder_viewer_image":"true","kn_plugin_workflow":"true","kie_sandbox_helm_chart":"true","kogito_task_console":"true","kogito_management_console":"true","kogito_swf_builder":"true","kogito_swf_devmode":"true","kogito_serverless_operator":"true","jbpm_quarkus_devui":"false","sonataflow_quarkus_devui":"false"}') + string(name: 'RUNNERS', value: '{"dev_deployment_base_image":"true","dev_deployment_kogito_quakus_blank_app_image":"true","dev_deployment_dmn_form_webapp_image":"true","dev_deployment_upload_service":"true","kie_sandbox_image":"true","kie_sandbox_extended_services_image":"true","cors_proxy_image":"true","online_editor":"true","chrome_extensions":"true","vscode_extensions_dev":"true","vscode_extensions_prod":"true","npm_packages":"true","standalone_editors_cdn":"true","extended_services":"true","serverless_logic_web_tools":"true","serverless_logic_web_tools_swf_builder_image":"true","serverless_logic_web_tools_base_builder_image":"true","serverless_logic_web_tools_swf_dev_mode_image":"true","dashbuilder_viewer_image":"true","kn_plugin_workflow":"true","kie_sandbox_helm_chart":"true","kogito_task_console":"true","kogito_management_console":"true","kogito_swf_builder":"true","kogito_swf_devmode":"true","kogito_serverless_operator":"true","jbpm_quarkus_devui":"false","sonataflow_quarkus_devui":"false","runtime_tools_consoles_helm_chart":"false"}') ] } } diff --git a/.ci/jenkins/Jenkinsfile.release-publish b/.ci/jenkins/Jenkinsfile.release-publish index 8e920d7cb20..9d5cae693ed 100644 --- a/.ci/jenkins/Jenkinsfile.release-publish +++ b/.ci/jenkins/Jenkinsfile.release-publish @@ -31,7 +31,7 @@ pipeline { parameters { string(description: 'Release Version', name: 'RELEASE_VERSION', defaultValue: '0.0.0') - string(description: 'Runners', name: 'RUNNERS', defaultValue: '{"dev_deployment_base_image":"true","dev_deployment_kogito_quakus_blank_app_image":"true","dev_deployment_dmn_form_webapp_image":"true","dev_deployment_upload_service":"true","kie_sandbox_image":"true","kie_sandbox_extended_services_image":"true","cors_proxy_image":"true","online_editor":"true","chrome_extensions":"true","vscode_extensions_dev":"true","vscode_extensions_prod":"true","npm_packages":"true","standalone_editors_cdn":"true","extended_services":"true","serverless_logic_web_tools":"true","serverless_logic_web_tools_swf_builder_image":"true","serverless_logic_web_tools_base_builder_image":"true","serverless_logic_web_tools_swf_dev_mode_image":"true","dashbuilder_viewer_image":"true","kn_plugin_workflow":"true","kie_sandbox_helm_chart":"true","kogito_task_console":"true","kogito_management_console":"true","kogito_swf_builder":"true","kogito_serverless_operator":"true","jbpm_quarkus_devui":"true","sonataflow_quarkus_devui":"true"}') + string(description: 'Runners', name: 'RUNNERS', defaultValue: '{"dev_deployment_base_image":"true","dev_deployment_kogito_quakus_blank_app_image":"true","dev_deployment_dmn_form_webapp_image":"true","dev_deployment_upload_service":"true","kie_sandbox_image":"true","kie_sandbox_extended_services_image":"true","cors_proxy_image":"true","online_editor":"true","chrome_extensions":"true","vscode_extensions_dev":"true","vscode_extensions_prod":"true","npm_packages":"true","standalone_editors_cdn":"true","extended_services":"true","serverless_logic_web_tools":"true","serverless_logic_web_tools_swf_builder_image":"true","serverless_logic_web_tools_base_builder_image":"true","serverless_logic_web_tools_swf_dev_mode_image":"true","dashbuilder_viewer_image":"true","kn_plugin_workflow":"true","kie_sandbox_helm_chart":"true","kogito_task_console":"true","kogito_management_console":"true","kogito_swf_builder":"true","kogito_serverless_operator":"true","jbpm_quarkus_devui":"true","sonataflow_quarkus_devui":"true","runtime_tools_consoles_helm_chart":"true"}') } stages { diff --git a/.ci/jenkins/release-jobs/Jenkinsfile.runtime-tools-consoles-helm-chart b/.ci/jenkins/release-jobs/Jenkinsfile.runtime-tools-consoles-helm-chart new file mode 100644 index 00000000000..d438a9b4d06 --- /dev/null +++ b/.ci/jenkins/release-jobs/Jenkinsfile.runtime-tools-consoles-helm-chart @@ -0,0 +1,205 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +pipeline { + agent { + docker { + image 'docker.io/apache/incubator-kie-tools-ci-build:main' + args '--shm-size=2g --privileged --group-add docker' + } + } + + options { + timeout(time: 60, unit: 'MINUTES') + } + + parameters { + booleanParam(description: 'Dry run', name: 'DRY_RUN', defaultValue: true) + string(description: 'Release Version', name: 'RELEASE_VERSION', defaultValue: '0.0.0') + string(description: 'Base Ref', name: 'BASE_REF') + booleanParam(description: 'Release Candidate', name: 'RELEASE_CANDIDATE', defaultValue: false) + string(description: 'Release Candidate Version', name: 'RELEASE_CANDIDATE_VERSION', defaultValue: '') + } + + environment { + KIE_TOOLS_BUILD__runLinters = 'false' + KIE_TOOLS_BUILD__runTests = 'false' + KIE_TOOLS_BUILD__runEndToEndTests = 'false' + KIE_TOOLS_BUILD__buildContainerImages = 'true' + + RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry = 'docker.io' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__account = 'apache' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__name = 'incubator-kie-runtime-tools-consoles-helm-chart' + RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag = "${params.RELEASE_VERSION}" + + RELEASE_ARTIFACTS_DIR = "${WORKSPACE}/release-artifacts" + + DOCKER_CONFIG = "${WORKSPACE}/.docker" + + PNPM_FILTER_STRING = '-F @kie-tools/runtime-tools-consoles-helm-chart...' + } + + stages { + stage('Load local shared scripts') { + steps { + script { + pipelineVars = load '.ci/jenkins/shared-scripts/pipelineVars.groovy' + buildUtils = load '.ci/jenkins/shared-scripts/buildUtils.groovy' + githubUtils = load '.ci/jenkins/shared-scripts/githubUtils.groovy' + helmUtils = load '.ci/jenkins/shared-scripts/helmUtils.groovy' + releaseUtils = load '.ci/jenkins/shared-scripts/releaseUtils.groovy' + } + } + } + + stage('Start required services for build and tests (DinD, Xvfb, Fluxbox)') { + steps { + script { + buildUtils.startRequiredServices() + } + } + } + + stage('Clean workspace before build') { + steps { + cleanWs(deleteDirs: true, disableDeferredWipeout: true) + } + } + + stage('Load upstream images') { + steps { + script { + upstreamReleaseArtifactsDir = "${WORKSPACE}/upstream-release-artifacts" + releaseUtils.downloadReleaseArtifacts("${upstreamReleaseArtifactsDir}", "${params.RELEASE_CANDIDATE_VERSION}") + dockerUtils.loadImages(releaseUtils.getUpstreamImagesArtifactsList("${upstreamReleaseArtifactsDir}", "${params.RELEASE_CANDIDATE_VERSION}")) + } + } + } + + stage('Checkout kie-tools') { + steps { + dir('kie-tools') { + script { + githubUtils.checkoutRepo( + "http://github.com/${pipelineVars.githubRepositorySlug}.git", + "${params.BASE_REF}", + "${pipelineVars.kieToolsBotGithubCredentialsId}" + ) + } + } + } + } + + stage('Setup PNPM') { + steps { + dir('kie-tools') { + script { + buildUtils.setupPnpm() + } + } + } + } + + stage('PNPM Bootstrap') { + steps { + dir('kie-tools') { + script { + buildUtils.pnpmBootstrap("${env.PNPM_FILTER_STRING}") + } + } + } + } + + stage('Build') { + steps { + dir('kie-tools') { + script { + buildUtils.pnpmBuild("${env.PNPM_FILTER_STRING}") + } + } + } + } + + stage('Push runtime-tools-consoles-helm-chart to Docker Hub') { + when { + expression { !params.DRY_RUN && !params.RELEASE_CANDIDATE } + } + steps { + dir('kie-tools') { + script { + helmUtils.pushChartToRegistry( + "${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry}", + "${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__account}", + "packages/kie-runtime-tools-consoles-helm-chart/dist/${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__name}-${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag}.tgz", + "${pipelineVars.dockerHubUserCredentialsId}", + "${pipelineVars.dockerHubTokenCredentialsId}" + ) + } + } + } + } + + stage('Setup release candidate artifacts') { + when { + expression { !params.DRY_RUN && params.RELEASE_CANDIDATE } + } + steps { + script { + env.RELEASE_TAR_FILE = "incubator-kie-${params.RELEASE_CANDIDATE_VERSION}-runtime-tools-console-helm-chart.tar.gz" + + sh """#!/bin/bash -el + mkdir ${env.RELEASE_ARTIFACTS_DIR} + cp "kie-tools/packages/runtime-tools-consoles-helm-chart/dist/${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__name}-${env.RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag}.tgz" "${env.RELEASE_ARTIFACTS_DIR}/${RELEASE_TAR_FILE}" + """.trim() + } + } + } + + stage('Sign artifacts for Apache release') { + when { + expression { !params.DRY_RUN && params.RELEASE_CANDIDATE } + } + steps { + script { + releaseUtils.setupSigningKey("${pipelineVars.asfReleaseGPGKeyCredentialsId}") + releaseUtils.signArtifact("${env.RELEASE_ARTIFACTS_DIR}/${RELEASE_TAR_FILE}") + } + } + } + + stage('Publish Release Candidate artifacts') { + when { + expression { !params.DRY_RUN && params.RELEASE_CANDIDATE } + } + steps { + script { + releaseUtils.publishArtifacts( + "${env.RELEASE_ARTIFACTS_DIR}", + "${pipelineVars.asfReleaseStagingRepository}", + "${params.RELEASE_CANDIDATE_VERSION}", + "${pipelineVars.asfReleaseSVNStagingCredentialsId}" + ) + } + } + } + } + + post { + always { + cleanWs(deleteDirs: true) + } + } +} diff --git a/packages/kogito-management-console/README.md b/packages/kogito-management-console/README.md index 4991e925b5e..3d15fc82877 100644 --- a/packages/kogito-management-console/README.md +++ b/packages/kogito-management-console/README.md @@ -15,7 +15,7 @@ under the License. --> -# kogito-managment-console +# kogito-management-console This package contains the `Containerfile/Dockerfile` and scripts to build a container image for Management Console. It also generated a JSON Schema for the `env.json` file, enabling it to be validated. @@ -45,7 +45,7 @@ This package contains the `Containerfile/Dockerfile` and scripts to build a cont - After optionally setting up the environment variables, run the following in the root folder of the repository to build the package: ```bash - pnpm -F @kie-tools/runtime-tools-managment-console-webapp-image... build:prod + pnpm -F @kie-tools/runtime-tools-management-console-webapp-image... build:prod ``` - Then check if the image is correctly stored: @@ -59,7 +59,7 @@ This package contains the `Containerfile/Dockerfile` and scripts to build a cont - Start up a clean container with: ```bash - docker run -t -p 8080:8080 -i --rm docker.io/apache/incubator-kie-kogito-managment-console:main + docker run -t -p 8080:8080 -i --rm docker.io/apache/incubator-kie-kogito-management-console:main ``` Management Console will be up at http://localhost:8080 @@ -70,25 +70,25 @@ This package contains the `Containerfile/Dockerfile` and scripts to build a cont [comment]: <> (//TODO: Use EnvJson.schema.json to generate this documentation somehow.. See https://github.com/kiegroup/kie-issues/issues/16) - | Name | Description | Default | - | :----------------------------------------------------: | :-----------------------------------------------------------: | :------------------------------------------------------------------------------------------: | - | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_ENV_MODE` | Env Mode: "PROD" or "DEV". PROD enables Keycloak integration. | "PROD" | - | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_NAME` | Management Console app name. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_VERSION` | Management Console app version. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT` | The URL that points to the Data Index service. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_DISABLE_HEALTH_CHECK` | Disables Keycloak health-check. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_UPDATE_TOKEN_VALIDITY` | Update token validity in minutes. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL` | Keycloak health-check URL. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_REALM` | Keycloak realm name. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_URL` | Keycloak auth URL. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | - | `KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID` | Keycloak Client ID. | See [ defaultEnvJson.ts ](../runtime-tools-managment-console-webapp/build/defaultEnvJson.js) | + | Name | Description | Default | + | :----------------------------------------------------: | :-----------------------------------------------------------: | :-------------------------------------------------------------------------------------------: | + | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_ENV_MODE` | Env Mode: "PROD" or "DEV". PROD enables Keycloak integration. | "PROD" | + | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_NAME` | Management Console app name. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_VERSION` | Management Console app version. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT` | The URL that points to the Data Index service. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_DISABLE_HEALTH_CHECK` | Disables Keycloak health-check. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_UPDATE_TOKEN_VALIDITY` | Update token validity in minutes. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL` | Keycloak health-check URL. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_REALM` | Keycloak realm name. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_URL` | Keycloak auth URL. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | + | `KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID` | Keycloak Client ID. | See [ defaultEnvJson.ts ](../runtime-tools-management-console-webapp/build/defaultEnvJson.js) | ### Examples 1. Using a different Data Index Service. ```bash - docker run -t -p 8080:8080 -e RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT= -i --rm docker.io/apache/incubator-kie-kogito-managment-console:main + docker run -t -p 8080:8080 -e RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT= -i --rm docker.io/apache/incubator-kie-kogito-management-console:main ``` _NOTE: Replace `docker` with `podman` if necessary._ @@ -96,7 +96,7 @@ This package contains the `Containerfile/Dockerfile` and scripts to build a cont 2. Write a custom `Containerfile/Dockerfile` from the image: ```docker - FROM docker.io/apache/incubator-kie-kogito-managment-console:main + FROM docker.io/apache/incubator-kie-kogito-management-console:main ENV RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT= ``` diff --git a/packages/runtime-tools-consoles-helm-chart/LICENSE b/packages/runtime-tools-consoles-helm-chart/LICENSE new file mode 100644 index 00000000000..261eeb9e9f8 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/runtime-tools-consoles-helm-chart/README.md b/packages/runtime-tools-consoles-helm-chart/README.md new file mode 100644 index 00000000000..753c17c4152 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/README.md @@ -0,0 +1,247 @@ + + +# runtime-tools-consoles-helm-chart + +This chart can be used to deploy Task and Management consoles images on a [Kubernetes](https://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. + +## Additional requirements + +- Docker +- Minikube + +## Components + +- Management Console +- Task Console + +## Installing the Chart + +### Default install + +To install the chart with the release name `runtime-tools-consoles`: + +```console +$ helm install runtime-tools-consoles ./src --set global.dataIndexUrl="" +``` + +Following message should be displayed on your console. + +```console +NAME: runtime-tools-consoles +LAST DEPLOYED: Wed Aug 7 17:09:04 2024 +NAMESPACE: default +STATUS: deployed +REVISION: 1 +NOTES: +In order to get runtime-tools-consoles running you need to run these commands: + +1. Run the following commands in a separate terminal to port-forward Management Console application: + export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/component=management-console,app.kubernetes.io/instance=runtime-tools-consoles" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace default $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Management Console URL: http://127.0.0.1:8081" + kubectl --namespace default port-forward $POD_NAME 8081:$CONTAINER_PORT + +2. Run the following commands in a separate terminal to port-forward Task Console application: + export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/component=task-console,app.kubernetes.io/instance=runtime-tools-consoles" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace default $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Task Console URL: http://127.0.0.1:8080" + kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT +``` + +### Minikube install + +To install the chart with the release name `runtime-tools-consoles`: + +```console +$ helm install runtime-tools-consoles ./src --values ./src/values-minikube-nginx.yaml --set global.dataIndexUrl="" +``` + +Following message should be displayed on your console. + +```console +NAME: runtime-tools-consoles +LAST DEPLOYED: Wed Aug 7 17:09:04 2024 +NAMESPACE: default +STATUS: deployed +REVISION: 1 +NOTES: +You may need to add the above hostnames to your /etc/hosts file, mapping them to your minikube ip. + +Run the following commands: + export MINIKUBE_IP=$(minikube ip) + echo "\n# Minikube Runtime Tools Consoles Helm Chart hostnames" | sudo tee -a /etc/hosts + echo "$MINIKUBE_IP management-console.local" | sudo tee -a /etc/hosts + echo "$MINIKUBE_IP task-console.local" | sudo tee -a /etc/hosts +``` + +### Kubernetes install + +To install the chart with the release name `runtime-tools-consoles`: + +```console +$ helm install runtime-tools-consoles ./src --values ./src/values-kubernetes.yaml --set global.dataIndexUrl="" --set global.kubernetesClusterDomain="" --set global.kubernetesIngressClass="" +``` + +Following message should be displayed on your console. + +```console +NAME: runtime-tools-consoles +LAST DEPLOYED: Wed Aug 7 17:09:04 2024 +NAMESPACE: default +STATUS: deployed +REVISION: 1 +NOTES: +1. Management Console available at: + http://management-console. +2. Task Console available at: + http://task-console. +``` + +### OpenShift install + +First, you may need to get the default OpenShift domain for your routes with this command: + +```console +$ oc get ingresses.config cluster --output jsonpath={.spec.domain} +``` + +If you don't have access rigths to this config, try creating a dummy Route resource and checking its domain. + +To install the chart with the release name `runtime-tools-consoles`: + +```console +$ helm install runtime-tools-consoles ./src --values ./src/values-openshift.yaml --set global.dataIndexUrl="" --set global.openshiftRouteDomain="" +``` + +Following message should be displayed on your console. + +```console +NAME: runtime-tools-consoles +LAST DEPLOYED: Wed Aug 7 17:09:04 2024 +NAMESPACE: default +STATUS: deployed +REVISION: 1 +NOTES: +1. Management Console available at: + https://management-console. +2. Task Console available at: + https://task-console. +``` + +## Installing a released version from the OCI registry: + +Very similar to the way you install the chart from source code, you can also install a released version available on docker.io registry: + +### Default install + +```console +$ helm install runtime-tools-consoles oci://docker.io/apache/incubator-kie-runtime-tools-consoles-helm-chart --version=0.0.0-main +``` + +### Minikube install + +```console +$ helm pull oci://docker.io/apache/incubator-kie-runtime-tools-consoles-helm-chart --version=0.0.0-main --untar +$ helm install runtime-tools-consoles ./incubator-kie-runtime-tools-consoles-helm-chart --values ./incubator-kie-runtime-tools-consoles-helm-chart/values-minikube-nginx.yaml --set global.dataIndexUrl="" +``` + +### Kubernetes install + +```console +$ helm pull oci://docker.io/apache/incubator-kie-runtime-tools-consoles-helm-chart --version=0.0.0-main --untar +$ helm install runtime-tools-consoles ./incubator-kie-runtime-tools-consoles-helm-chart --values ./incubator-kie-runtime-tools-consoles-helm-chart/values-kubernetes.yaml --set global.dataIndexUrl="" --set global.kubernetesClusterDomain="" --set global.kubernetesIngressClass="" +``` + +### OpenShift install + +```console +$ helm pull oci://docker.io/apache/incubator-kie--tools-consoles-helm-chart --version=0.0.0-main --untar +$ helm install runtime-tools-consoles ./incubator-kie-runtime-tools-consoles-helm-chart --values ./incubator-kie-runtime-tools-consoles-helm-chart/values-openshift.yaml --set global.dataIndexUrl="" --set global.openshiftRouteDomain="" +``` + +## Uninstalling the Chart + +To uninstall the `runtime-tools-consoles` deployment: + +```console +$ helm uninstall runtime-tools-consoles +``` + +## Passing Environmental variables + +This chart uses default environmental variables from `values.yaml` file. We can override those by passing it from command line. + +```console +$ helm install runtime-tools-consoles ./src --set image.repository=docker.io +``` + +## Configuration + +The following table lists the configurable parameters of the Runtime Tools Consoles helm chart and their default values. + + + +| Key | Type | Default | Description | +| -------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | +| global.dataIndexUrl | string | `""` | Set the URL that points to the Data Index service | +| global.environment | string | `"DEV"` | If want to enable Keycloak integration set it to PROD, otherwise set it to DEV | +| global.ingressSource | string | `""` | Which ingress source is being used (none/"minikube"/"kubernetes"/"openshift") Obs.: For NOTES generation only | +| global.keycloakClientId | string | `""` | If using environment = PROD, set the KeyCloak client id | +| global.keycloakHealthCheck | bool | `false` | If using environment = PROD, enable or disable Keycloak health check | +| global.keycloakHealthCheckUrl | string | `""` | If using environment = PROD, set the KeyCloak health check url | +| global.keycloakRealm | string | `""` | If using environment = PROD, set the KeyCloak realm name | +| global.keycloakTokenValidity | string | `""` | If using environment = PROD, set the KeyCloak token validity | +| global.keycloakUrl | string | `""` | If using environment = PROD, set the KeyCloak auth url | +| global.kubernetesClusterDomain | string | `""` | If using Minikube or Kubernetes, set the cluster domain | +| global.kubernetesIngressClass | string | `""` | If using Minikube or Kubernetes, set the Ingress class (i.e: nginx) | +| global.openshiftRouteDomain | string | `""` | If using OpenShift Routes, set the Route domain | +| fullnameOverride | string | `""` | Overrides charts full name | +| nameOverride | string | `""` | Overrides charts name | +| management-console.appNameOverride | string | `""` | Overrides the deployed application name | +| management-console.appVersionOverride | string | `""` | Overrides the deployed application version | +| management-console.autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Management Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| management-console.enabled | bool | `true` | Enable or disable Management Console installation | +| management-console.fullnameOverride | string | `""` | Overrides charts full name | +| management-console.image | object | `{"account":"apache","name":"incubator-kie-kogito-management-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| management-console.imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| management-console.ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"management-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Management Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| management-console.name | string | `"management-console"` | Component name | +| management-console.nameOverride | string | `""` | Overrides charts name | +| management-console.nodeSelector | object | `{}` | | +| management-console.openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"management-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Management Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| management-console.service | object | `{"nodePort":"","port":8081,"targetPort":8080,"type":"ClusterIP"}` | Management Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| management-console.serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Management Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | +| task-console.appNameOverride | string | `""` | Overrides the deployed application name | +| task-console.appTaskActiveStatesListOverride | string | `""` | Overrides the Task Console active states list | +| task-console.appTaskStatesListOverride | string | `""` | Overrides the Task Console states list | +| task-console.appVersionOverride | string | `""` | Overrides the deployed application version | +| task-console.autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Task Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| task-console.enabled | bool | `true` | Enable or disable Task Console installation | +| task-console.fullnameOverride | string | `""` | Overrides charts full name | +| task-console.image | object | `{"account":"apache","name":"incubator-kie-kogito-task-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| task-console.imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| task-console.ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"task-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Task Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| task-console.name | string | `"task-console"` | Component name | +| task-console.nameOverride | string | `""` | Overrides charts name | +| task-console.openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"task-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Task Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| task-console.service | object | `{"nodePort":"","port":8080,"targetPort":8080,"type":"ClusterIP"}` | Task Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| task-console.serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Task Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | + +--- + +Autogenerated from chart metadata using [helm-docs v1.13.1](https://github.com/norwoodj/helm-docs/releases/v1.13.1) diff --git a/packages/runtime-tools-consoles-helm-chart/env/index.js b/packages/runtime-tools-consoles-helm-chart/env/index.js new file mode 100644 index 00000000000..00e126badb1 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/env/index.js @@ -0,0 +1,53 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +const { varsWithName, getOrDefault, composeEnv } = require("@kie-tools-scripts/build-env"); + +const rootEnv = require("@kie-tools/root-env/env"); + +module.exports = composeEnv([rootEnv], { + vars: varsWithName({ + RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry: { + default: "docker.io", + description: "E.g., `docker.io` or `quay.io`.", + }, + RUNTIME_TOOLS_CONSOLES_HELM_CHART__account: { + default: "apache", + description: "E.g,. `apache` or `kie-tools-bot`", + }, + RUNTIME_TOOLS_CONSOLES_HELM_CHART__name: { + default: "incubator-kie-runtime-tools-consoles-helm-chart", + description: "Name of the chart itself.", + }, + RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag: { + default: require("../package.json").version, // Needs to be SemVer, so we can't use rootEnv.env.root.streamName. + description: "Version of the Helm Chart. Needs to be SemVer-compatible.", + }, + }), + get env() { + return { + runtimeToolsConsolesHelmChart: { + registry: getOrDefault(this.vars.RUNTIME_TOOLS_CONSOLES_HELM_CHART__registry), + account: getOrDefault(this.vars.RUNTIME_TOOLS_CONSOLES_HELM_CHART__account), + name: getOrDefault(this.vars.RUNTIME_TOOLS_CONSOLES_HELM_CHART__name), + tag: getOrDefault(this.vars.RUNTIME_TOOLS_CONSOLES_HELM_CHART__tag), + }, + }; + }, +}); diff --git a/packages/runtime-tools-consoles-helm-chart/install.js b/packages/runtime-tools-consoles-helm-chart/install.js new file mode 100644 index 00000000000..f6772ba9f2b --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/install.js @@ -0,0 +1,52 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +const { env } = require("./env"); +const yaml = require("yaml"); +const fs = require("fs"); + +// Set version for the Chart (and its dependencies) and Subcharts +console.log("[runtime-tools-consoles-helm-chart install.js] Updating Chart.yaml files..."); +const chartFiles = ["src/Chart.yaml", "src/charts/task-console/Chart.yaml", "src/charts/management-console/Chart.yaml"]; +chartFiles.forEach((file) => { + const doc = yaml.parseDocument(fs.readFileSync(file, "utf8")); + if (file == "src/Chart.yaml") { + doc.setIn(["name"], env.runtimeToolsConsolesHelmChart.name); + } + doc.setIn(["version"], env.runtimeToolsConsolesHelmChart.tag); + doc.setIn(["appVersion"], env.runtimeToolsConsolesHelmChart.tag); + if (doc.getIn(["dependencies"])) { + doc.setIn(["dependencies", "0", "version"], env.runtimeToolsConsolesHelmChart.tag); + doc.setIn(["dependencies", "1", "version"], env.runtimeToolsConsolesHelmChart.tag); + } + console.log(yaml.stringify(doc)); + fs.writeFileSync(file, yaml.stringify(doc), "utf8"); +}); + +// Set tags used for images +console.log("[runtime-tools-consoles-helm-chart install.js] Updating values.yaml files..."); +const valuesFiles = ["src/charts/task-console/values.yaml", "src/charts/management-console/values.yaml"]; +valuesFiles.forEach((file) => { + const doc = yaml.parseDocument(fs.readFileSync(file, "utf8")); + doc.setIn(["image", "tag"], env.root.streamName); + console.log(yaml.stringify(doc)); + fs.writeFileSync(file, yaml.stringify(doc)); +}); + +console.log("[runtime-tools-consoles-helm-chart install.js] Done."); diff --git a/packages/runtime-tools-consoles-helm-chart/package.json b/packages/runtime-tools-consoles-helm-chart/package.json new file mode 100644 index 00000000000..6417a365bcb --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/package.json @@ -0,0 +1,44 @@ +{ + "private": true, + "name": "@kie-tools/runtime-tools-consoles-helm-chart", + "version": "0.0.0", + "description": "", + "license": "Apache-2.0", + "homepage": "https://github.com/apache/incubator-kie-tools", + "repository": { + "type": "git", + "url": "https://github.com/apache/incubator-kie-tools.git" + }, + "bugs": { + "url": "https://github.com/apache/incubator-kie-tools/issues" + }, + "scripts": { + "build:dev": "pnpm build:prod", + "build:prod": "pnpm update-readmes && run-script-os", + "build:prod:linux:darwin": "pnpm cleanup && run-script-if --bool $([ $(command -v helm) ] && echo true || echo false) --then \"helm package -u -d ./dist ./src\"", + "build:prod:win32": "pnpm cleanup && run-script-if --bool \"$([bool](Get-Command helm -errorAction SilentlyContinue))\" --then \"helm package -u -d ./dist ./src\"", + "cleanup": "rimraf Chart.lock && rimraf dist", + "format": "prettier --write . --ignore-path=../../.prettierignore --ignore-path=../../.gitignore", + "helm:delete": "helm delete runtime-tools-consoles-helm-chart", + "helm:install": "pnpm cleanup && helm install --dependency-update runtime-tools-consoles-helm-chart./src", + "install": "node install.js && pnpm update-readmes", + "update-readmes": "node scripts/update-readmes.js && pnpm format" + }, + "dependencies": { + "@kie-tools/kogito-management-console": "workspace:*", + "@kie-tools/kogito-task-console": "workspace:*" + }, + "devDependencies": { + "@kie-tools/root-env": "workspace:*", + "prettier": "^3.3.2", + "rimraf": "^3.0.2", + "run-script-os": "^1.1.6", + "yaml": "^2.3.2" + }, + "kieTools": { + "requiredPreinstalledCliCommands": [ + "helm", + "node" + ] + } +} diff --git a/packages/runtime-tools-consoles-helm-chart/scripts/README.md.gotmpl b/packages/runtime-tools-consoles-helm-chart/scripts/README.md.gotmpl new file mode 100644 index 00000000000..140b025e082 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/scripts/README.md.gotmpl @@ -0,0 +1,37 @@ + + +{{ template "chart.header" . }} +{{ template "chart.deprecationWarning" . }} + +{{ template "chart.badgesSection" . }} + +{{ template "chart.description" . }} + +{{ template "chart.homepageLine" . }} + +{{ template "chart.maintainersSection" . }} + +{{ template "chart.sourcesSection" . }} + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesSection" . }} + +--- + +Autogenerated from chart metadata using [helm-docs v1.13.1](https://github.com/norwoodj/helm-docs/releases/v1.13.1) \ No newline at end of file diff --git a/packages/runtime-tools-consoles-helm-chart/scripts/update-readmes.js b/packages/runtime-tools-consoles-helm-chart/scripts/update-readmes.js new file mode 100644 index 00000000000..fb8168670af --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/scripts/update-readmes.js @@ -0,0 +1,30 @@ +const { execSync } = require("child_process"); +const path = require("path"); +const fs = require("fs"); + +// Install helm-docs if not installed +console.log("[runtime-tools-consoles-helm-chart scripts/update-readmes.js] Installing helm-docs..."); +if (process.platform === "win32") { + execSync("where /q helm-docs || go install github.com/norwoodj/helm-docs/cmd/helm-docs@v1.13.1"); +} else { + execSync("which helm-docs || go install github.com/norwoodj/helm-docs/cmd/helm-docs@v1.13.1"); +} + +const packageRootPath = path.join(__dirname, ".."); +const srcPath = path.join(packageRootPath, "./src"); + +console.log(srcPath); + +console.log("[runtime-tools-consoles-helm-chart scripts/update-readmes.js] Updating Charts README.md files..."); +execSync(`cd ${srcPath} && helm-docs --document-dependency-values=true -t ../scripts/README.md.gotmpl`); + +console.log("[runtime-tools-consoles-helm-chart scripts/update-readmes.js] Updating package README.md file"); +const srcReadmePath = path.resolve(path.join(packageRootPath, "./src/README.md")); +const rootReadmePath = path.resolve(path.join(packageRootPath, "./README.md")); +const chartReadmeSections = fs.readFileSync(srcReadmePath).toString().split("## Values"); +const readmeSections = fs.readFileSync(rootReadmePath).toString().split(""); +readmeSections[1] = chartReadmeSections[1]; +const newContent = readmeSections.join(""); +fs.writeFileSync(rootReadmePath, newContent); + +console.log("[runtime-tools-consoles-helm-chart scripts/update-readmes.js] Done!"); diff --git a/packages/runtime-tools-consoles-helm-chart/src/.helmignore b/packages/runtime-tools-consoles-helm-chart/src/.helmignore new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/runtime-tools-consoles-helm-chart/src/Chart.lock b/packages/runtime-tools-consoles-helm-chart/src/Chart.lock new file mode 100644 index 00000000000..c2311558156 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/Chart.lock @@ -0,0 +1,9 @@ +dependencies: +- name: management-console + repository: "" + version: 0.0.0 +- name: task-console + repository: "" + version: 0.0.0 +digest: sha256:bd9701735749abd6ed320a0f90d3b9b6dae4ac27b5c7e3b5d72de1037016a3d3 +generated: "2024-08-09T11:12:50.052943-03:00" diff --git a/packages/runtime-tools-consoles-helm-chart/src/Chart.yaml b/packages/runtime-tools-consoles-helm-chart/src/Chart.yaml new file mode 100644 index 00000000000..2c74756c5f1 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/Chart.yaml @@ -0,0 +1,13 @@ +apiVersion: v2 +name: incubator-kie-runtime-tools-consoles-helm-chart +description: A Helm chart to deploy Runtime Tools Consoles on Kubernetes +type: application +version: 0.0.0 +appVersion: 0.0.0 +dependencies: + - name: management-console + version: 0.0.0 + condition: management-console.enabled + - name: task-console + version: 0.0.0 + condition: task-console.enabled diff --git a/packages/runtime-tools-consoles-helm-chart/src/README.md b/packages/runtime-tools-consoles-helm-chart/src/README.md new file mode 100644 index 00000000000..835c5537dde --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/README.md @@ -0,0 +1,81 @@ + + +# incubator-kie-runtime-tools-consoles-helm-chart + +![Version: 0.0.0](https://img.shields.io/badge/Version-0.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.0.0](https://img.shields.io/badge/AppVersion-0.0.0-informational?style=flat-square) + +A Helm chart to deploy Runtime Tools Consoles on Kubernetes + +## Requirements + +| Repository | Name | Version | +| ---------- | ------------------ | ------- | +| | management-console | 0.0.0 | +| | task-console | 0.0.0 | + +## Values + +| Key | Type | Default | Description | +| -------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | +| global.dataIndexUrl | string | `""` | Set the URL that points to the Data Index service | +| global.environment | string | `"DEV"` | If want to enable Keycloak integration set it to PROD, otherwise set it to DEV | +| global.ingressSource | string | `""` | Which ingress source is being used (none/"minikube"/"kubernetes"/"openshift") Obs.: For NOTES generation only | +| global.keycloakClientId | string | `""` | If using environment = PROD, set the KeyCloak client id | +| global.keycloakHealthCheck | bool | `false` | If using environment = PROD, enable or disable Keycloak health check | +| global.keycloakHealthCheckUrl | string | `""` | If using environment = PROD, set the KeyCloak health check url | +| global.keycloakRealm | string | `""` | If using environment = PROD, set the KeyCloak realm name | +| global.keycloakTokenValidity | string | `""` | If using environment = PROD, set the KeyCloak token validity | +| global.keycloakUrl | string | `""` | If using environment = PROD, set the KeyCloak auth url | +| global.kubernetesClusterDomain | string | `""` | If using Minikube or Kubernetes, set the cluster domain | +| global.kubernetesIngressClass | string | `""` | If using Minikube or Kubernetes, set the Ingress class (i.e: nginx) | +| global.openshiftRouteDomain | string | `""` | If using OpenShift Routes, set the Route domain | +| fullnameOverride | string | `""` | Overrides charts full name | +| nameOverride | string | `""` | Overrides charts name | +| management-console.appNameOverride | string | `""` | Overrides the deployed application name | +| management-console.appVersionOverride | string | `""` | Overrides the deployed application version | +| management-console.autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Management Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| management-console.enabled | bool | `true` | Enable or disable Management Console installation | +| management-console.fullnameOverride | string | `""` | Overrides charts full name | +| management-console.image | object | `{"account":"apache","name":"incubator-kie-kogito-management-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| management-console.imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| management-console.ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"management-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Management Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| management-console.name | string | `"management-console"` | Component name | +| management-console.nameOverride | string | `""` | Overrides charts name | +| management-console.nodeSelector | object | `{}` | | +| management-console.openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"management-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Management Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| management-console.service | object | `{"nodePort":"","port":8081,"targetPort":8080,"type":"ClusterIP"}` | Management Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| management-console.serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Management Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | +| task-console.appNameOverride | string | `""` | Overrides the deployed application name | +| task-console.appTaskActiveStatesListOverride | string | `""` | Overrides the Task Console active states list | +| task-console.appTaskStatesListOverride | string | `""` | Overrides the Task Console states list | +| task-console.appVersionOverride | string | `""` | Overrides the deployed application version | +| task-console.autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Task Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| task-console.enabled | bool | `true` | Enable or disable Task Console installation | +| task-console.fullnameOverride | string | `""` | Overrides charts full name | +| task-console.image | object | `{"account":"apache","name":"incubator-kie-kogito-task-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| task-console.imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| task-console.ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"task-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Task Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| task-console.name | string | `"task-console"` | Component name | +| task-console.nameOverride | string | `""` | Overrides charts name | +| task-console.openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"task-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Task Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| task-console.service | object | `{"nodePort":"","port":8080,"targetPort":8080,"type":"ClusterIP"}` | Task Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| task-console.serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Task Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | + +--- + +Autogenerated from chart metadata using [helm-docs v1.13.1](https://github.com/norwoodj/helm-docs/releases/v1.13.1) diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/Chart.yaml b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/Chart.yaml new file mode 100644 index 00000000000..7f93160100a --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: management-console +description: A Helm chart to deploy Runtime Tools Management Console on Kubernetes +type: application +version: 0.0.0 +appVersion: 0.0.0 diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/README.md b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/README.md new file mode 100644 index 00000000000..52c164175bd --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/README.md @@ -0,0 +1,45 @@ + + +# management-console + +![Version: 0.0.0](https://img.shields.io/badge/Version-0.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.0.0](https://img.shields.io/badge/AppVersion-0.0.0-informational?style=flat-square) + +A Helm chart to deploy Runtime Tools Management Console on Kubernetes + +## Values + +| Key | Type | Default | Description | +| ------------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | +| appNameOverride | string | `""` | Overrides the deployed application name | +| appVersionOverride | string | `""` | Overrides the deployed application version | +| autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Management Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| enabled | bool | `true` | Enable or disable Management Console installation | +| fullnameOverride | string | `""` | Overrides charts full name | +| image | object | `{"account":"apache","name":"incubator-kie-kogito-management-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"management-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Management Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| name | string | `"management-console"` | Component name | +| nameOverride | string | `""` | Overrides charts name | +| nodeSelector | object | `{}` | | +| openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"management-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Management Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| service | object | `{"nodePort":"","port":8081,"targetPort":8080,"type":"ClusterIP"}` | Management Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Management Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | + +--- + +Autogenerated from chart metadata using [helm-docs v1.13.1](https://github.com/norwoodj/helm-docs/releases/v1.13.1) diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/_helpers.tpl b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/_helpers.tpl new file mode 100644 index 00000000000..41138a6198f --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/_helpers.tpl @@ -0,0 +1,40 @@ +{{/* +Create a fully qualified name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +*/}} +{{- define "managementConsole.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name .Values.name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} + +{{/* +These can be overriden by the base chart. +*/}} +{{- define "selectorLabels" -}} +{{- end -}} +{{- define "labels" -}} +{{- end -}} + +{{- define "managementConsole.selectorLabels" -}} +app.kubernetes.io/component: {{ .Values.name | quote }} +{{ include "selectorLabels" . }} +{{- end -}} + +{{- define "managementConsole.labels" -}} +{{ include "managementConsole.selectorLabels" . }} +{{ include "labels" . }} +{{- end -}} + +{{/* +Create the name of the service account to use for the management console component +*/}} +{{- define "managementConsole.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "managementConsole.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/deployment.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/deployment.yaml.helm new file mode 100644 index 00000000000..805b3d16df4 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/deployment.yaml.helm @@ -0,0 +1,100 @@ +{{- $dataIndexUrl := .Values.global.dataIndexUrl | required ".Values.global.dataIndexUrl is required." -}} +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "managementConsole.fullname" . }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ .Values.replicaCount }} + {{- end }} + selector: + matchLabels: + {{- include "managementConsole.selectorLabels" . | nindent 6 }} + template: + metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "managementConsole.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "managementConsole.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Values.name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.registry }}/{{ .Values.image.account }}/{{ .Values.image.name }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_ENV_MODE + value: {{ .Values.global.environment }} + - name: RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT + value: {{ $dataIndexUrl }} + {{- if .Values.appNameOverride }} + - name: RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_NAME + value: {{ .Values.appNameOverride }} + {{- end }} + {{- if .Values.appVersionOverride }} + - name: RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_APP_VERSION + value: {{ .Values.appVersionOverride }} + {{- end }} + {{- if .Values.global.keycloakHealthCheck }} + - name: KOGITO_CONSOLES_KEYCLOAK_DISABLE_HEALTH_CHECK + value: {{ .Values.global.keycloakHealthCheck }} + {{- end }} + {{- if .Values.global.keycloakTokenValidity }} + - name: KOGITO_CONSOLES_KEYCLOAK_UPDATE_TOKEN_VALIDITY + value: {{ .Values.global.keycloakTokenValidity }} + {{- end }} + {{- if .Values.global.keycloakHealthCheckUrl }} + - name: KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL + value: {{ .Values.global.keycloakHealthCheckUrl }} + {{- end }} + {{- if .Values.global.keycloakRealm }} + - name: KOGITO_CONSOLES_KEYCLOAK_REALM + value: {{ .Values.global.keycloakRealm }} + {{- end }} + {{- if .Values.global.keycloakUrl }} + - name: KOGITO_CONSOLES_KEYCLOAK_URL + value: {{ .Values.global.keycloakUrl }} + {{- end }} + {{- if .Values.global.keycloakClientId }} + - name: KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID + value: {{ .Values.global.keycloakClientId }} + {{- end }} + ports: + - name: http + containerPort: {{ .Values.service.targetPort }} + protocol: TCP + livenessProbe: + httpGet: + path: / + port: http + readinessProbe: + httpGet: + path: / + port: http + resources: + {{- toYaml .Values.resources | nindent 12 }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/hpa.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/hpa.yaml.helm new file mode 100644 index 00000000000..a24a0ad2551 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/hpa.yaml.helm @@ -0,0 +1,28 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "managementConsole.fullname" . }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "managementConsole.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: + {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/ingress.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/ingress.yaml.helm new file mode 100644 index 00000000000..df6fdb91adf --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/ingress.yaml.helm @@ -0,0 +1,61 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "managementConsole.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} + {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} + {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} + {{- end }} +{{- end }} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} + ingressClassName: {{ tpl .Values.ingress.className . | quote }} + {{- end }} + {{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ tpl .host $ | quote }} + http: + paths: + {{- range .paths }} + - path: {{ .path }} + {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} + pathType: {{ .pathType }} + {{- end }} + backend: + {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} + service: + name: {{ $fullName }} + port: + number: {{ $svcPort }} + {{- else }} + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/route.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/route.yaml.helm new file mode 100644 index 00000000000..2fa0db43552 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/route.yaml.helm @@ -0,0 +1,25 @@ +{{- if and (.Capabilities.APIVersions.Has "route.openshift.io/v1/Route") (.Values.openshiftRoute.enabled) -}} +{{- $fullName := include "managementConsole.fullname" . -}} +{{- $svcPort := .Values.service.targetPort -}} +kind: Route +apiVersion: route.openshift.io/v1 +metadata: + name: {{ $fullName }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} + {{- with .Values.openshiftRoute.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + host: {{ tpl .Values.openshiftRoute.host . | quote }} + to: + name: {{ $fullName }} + kind: Service + port: + targetPort: {{ $svcPort }} + {{- with .Values.openshiftRoute.tls }} + tls: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} \ No newline at end of file diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/service.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/service.yaml.helm new file mode 100644 index 00000000000..c5ede61ebdb --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/service.yaml.helm @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "managementConsole.fullname" . }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: {{ .Values.service.targetPort }} + protocol: TCP + name: http + {{- if (and (eq .Values.service.type "NodePort")) }} + nodePort: {{ .Values.service.nodePort }} + {{- end }} + selector: + {{- include "managementConsole.selectorLabels" . | nindent 4 }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/serviceaccount.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/serviceaccount.yaml.helm new file mode 100644 index 00000000000..f05cd602d14 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/templates/serviceaccount.yaml.helm @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "managementConsole.serviceAccountName" . }} + labels: + {{- include "managementConsole.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/values.yaml b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/values.yaml new file mode 100644 index 00000000000..73ef4bd84b0 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/management-console/values.yaml @@ -0,0 +1,113 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# Management Console application +# -- Enable or disable Management Console installation +enabled: true + +# -- Component name +name: management-console + +# -- Overrides the deployed application name +appNameOverride: "" + +# -- Overrides the deployed application version +appVersionOverride: "" + +# @ignored +replicaCount: 1 + +# -- Image source configuration for the Management Console image +image: + registry: docker.io + account: apache + name: incubator-kie-kogito-management-console + pullPolicy: IfNotPresent + tag: "main" # AUTO-GENERATED BY install.js. DO NOT CHANGE MANUALLY. + +# -- Pull secrets used when pulling Management Console image +imagePullSecrets: [] + +# -- Overrides charts name +nameOverride: "" +# -- Overrides charts full name +fullnameOverride: "" + +# -- Management Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) +serviceAccount: + create: true + annotations: {} + name: "" + +# @ignored +podAnnotations: {} + +# @ignored +podSecurityContext: {} + +# @ignored +securityContext: {} + +# -- Management Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) +service: + type: ClusterIP + port: 8081 + targetPort: 8080 + nodePort: "" + +# -- Management Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) +ingress: + enabled: false + className: "{{ .Values.global.kubernetesIngressClass }}" + annotations: {} + hosts: + - host: management-console.{{ .Values.global.kubernetesClusterDomain }} + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + +# -- Management Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) +openshiftRoute: + enabled: false + annotations: {} + host: management-console.{{ .Values.global.openshiftRouteDomain }} + tls: + termination: edge + insecureEdgeTerminationPolicy: None + +# @ignored +resources: {} + +# -- Management Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + + # @ignored +nodeSelector: {} + +# @ignored +tolerations: [] + +# @ignored +affinity: {} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/Chart.yaml b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/Chart.yaml new file mode 100644 index 00000000000..ad9821ad989 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: task-console +description: A Helm chart to deploy Runtime Tools Task Console on Kubernetes +type: application +version: 0.0.0 +appVersion: 0.0.0 diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/README.md b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/README.md new file mode 100644 index 00000000000..d83d76cb985 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/README.md @@ -0,0 +1,46 @@ + + +# task-console + +![Version: 0.0.0](https://img.shields.io/badge/Version-0.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.0.0](https://img.shields.io/badge/AppVersion-0.0.0-informational?style=flat-square) + +A Helm chart to deploy Runtime Tools Task Console on Kubernetes + +## Values + +| Key | Type | Default | Description | +| ------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| appNameOverride | string | `""` | Overrides the deployed application name | +| appTaskActiveStatesListOverride | string | `""` | Overrides the Task Console active states list | +| appTaskStatesListOverride | string | `""` | Overrides the Task Console states list | +| appVersionOverride | string | `""` | Overrides the deployed application version | +| autoscaling | object | `{"enabled":false,"maxReplicas":100,"minReplicas":1,"targetCPUUtilizationPercentage":80}` | Task Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) | +| enabled | bool | `true` | Enable or disable Task Console installation | +| fullnameOverride | string | `""` | Overrides charts full name | +| image | object | `{"account":"apache","name":"incubator-kie-kogito-task-console","pullPolicy":"IfNotPresent","registry":"docker.io","tag":"main"}` | Image source configuration for the Management Console image | +| imagePullSecrets | list | `[]` | Pull secrets used when pulling Management Console image | +| ingress | object | `{"annotations":{},"className":"{{ .Values.global.kubernetesIngressClass }}","enabled":false,"hosts":[{"host":"task-console.{{ .Values.global.kubernetesClusterDomain }}","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}],"tls":[]}` | Task Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) | +| name | string | `"task-console"` | Component name | +| nameOverride | string | `""` | Overrides charts name | +| openshiftRoute | object | `{"annotations":{},"enabled":false,"host":"task-console.{{ .Values.global.openshiftRouteDomain }}","tls":{"insecureEdgeTerminationPolicy":"None","termination":"edge"}}` | Task Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) | +| service | object | `{"nodePort":"","port":8080,"targetPort":8080,"type":"ClusterIP"}` | Task Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) | +| serviceAccount | object | `{"annotations":{},"create":true,"name":""}` | Task Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) | + +--- + +Autogenerated from chart metadata using [helm-docs v1.13.1](https://github.com/norwoodj/helm-docs/releases/v1.13.1) diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/_helpers.tpl b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/_helpers.tpl new file mode 100644 index 00000000000..fdede13cbb1 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/_helpers.tpl @@ -0,0 +1,40 @@ +{{/* +Create a fully qualified name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +*/}} +{{- define "taskConsole.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name .Values.name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} + +{{/* +These can be overriden by the base chart. +*/}} +{{- define "selectorLabels" -}} +{{- end -}} +{{- define "labels" -}} +{{- end -}} + +{{- define "taskConsole.selectorLabels" -}} +app.kubernetes.io/component: {{ .Values.name | quote }} +{{ include "selectorLabels" . }} +{{- end -}} + +{{- define "taskConsole.labels" -}} +{{ include "taskConsole.selectorLabels" . }} +{{ include "labels" . }} +{{- end -}} + +{{/* +Create the name of the service account to use for the task console component +*/}} +{{- define "taskConsole.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "taskConsole.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/deployment.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/deployment.yaml.helm new file mode 100644 index 00000000000..e14c0d7f7e0 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/deployment.yaml.helm @@ -0,0 +1,112 @@ +{{- $dataIndexUrl := .Values.global.dataIndexUrl | required ".Values.global.dataIndexUrl is required." -}} +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "taskConsole.fullname" . }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ .Values.replicaCount }} + {{- end }} + selector: + matchLabels: + {{- include "taskConsole.selectorLabels" . | nindent 6 }} + template: + metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "taskConsole.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "taskConsole.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Values.name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.registry }}/{{ .Values.image.account }}/{{ .Values.image.name }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + {{- with .Values.env }} + env: + {{- tpl (toYaml .) $ | nindent 12 }} + {{- end }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + env: + - name: RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_ENV_MODE + value: {{ .Values.global.environment }} + - name: RUNTIME_TOOLS_TASK_CONSOLE_DATA_INDEX_ENDPOINT + value: {{ $dataIndexUrl }} + {{- if .Values.appNameOverride }} + - name: RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_APP_NAME + value: {{ .Values.appNameOverride }} + {{- end }} + {{- if .Values.appVersionOverride }} + - name: RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_APP_VERSION + value: {{ .Values.appVersionOverride }} + {{- end }} + {{- if .Values.appTaskStatesListOverride }} + - name: RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_TASK_STATES_LIST + value: {{ .Values.appTaskStatesListOverride }} + {{- end }} + {{- if .Values.appTaskActiveStatesListOverride }} + - name: RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_TASK_ACTIVE_STATES_LIST + value: {{ .Values.appTaskActiveStatesListOverride }} + {{- end }} + {{- if .Values.global.keycloakHealthCheck }} + - name: KOGITO_CONSOLES_KEYCLOAK_DISABLE_HEALTH_CHECK + value: true + {{- end }} + {{- if .Values.global.keycloakTokenValidity }} + - name: KOGITO_CONSOLES_KEYCLOAK_UPDATE_TOKEN_VALIDITY + value: {{ .Values.global.keycloakTokenValidity }} + {{- end }} + {{- if .Values.global.keycloakHealthCheckUrl }} + - name: KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL + value: {{ .Values.global.keycloakHealthCheckUrl }} + {{- end }} + {{- if .Values.global.keycloakRealm }} + - name: KOGITO_CONSOLES_KEYCLOAK_REALM + value: {{ .Values.global.keycloakRealm }} + {{- end }} + {{- if .Values.global.keycloakUrl }} + - name: KOGITO_CONSOLES_KEYCLOAK_URL + value: {{ .Values.global.keycloakUrl }} + {{- end }} + {{- if .Values.global.keycloakClientId }} + - name: KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID + value: {{ .Values.global.keycloakClientId }} + {{- end }} + ports: + - name: http + containerPort: {{ .Values.service.targetPort }} + protocol: TCP + livenessProbe: + httpGet: + path: / + port: http + readinessProbe: + httpGet: + path: / + port: http + resources: + {{- toYaml .Values.resources | nindent 12 }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/hpa.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/hpa.yaml.helm new file mode 100644 index 00000000000..c20d58f6716 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/hpa.yaml.helm @@ -0,0 +1,28 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "taskConsole.fullname" . }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "taskConsole.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: + {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/ingress.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/ingress.yaml.helm new file mode 100644 index 00000000000..985d68395d1 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/ingress.yaml.helm @@ -0,0 +1,61 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "taskConsole.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} + {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} + {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} + {{- end }} +{{- end }} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} + ingressClassName: {{ tpl .Values.ingress.className . | quote }} + {{- end }} + {{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ tpl .host $ | quote }} + http: + paths: + {{- range .paths }} + - path: {{ .path }} + {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} + pathType: {{ .pathType }} + {{- end }} + backend: + {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} + service: + name: {{ $fullName }} + port: + number: {{ $svcPort }} + {{- else }} + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/route.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/route.yaml.helm new file mode 100644 index 00000000000..359caa20f27 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/route.yaml.helm @@ -0,0 +1,25 @@ +{{- if and (.Capabilities.APIVersions.Has "route.openshift.io/v1/Route") (.Values.openshiftRoute.enabled) -}} +{{- $fullName := include "taskConsole.fullname" . -}} +{{- $svcPort := .Values.service.targetPort -}} +kind: Route +apiVersion: route.openshift.io/v1 +metadata: + name: {{ $fullName }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} + {{- with .Values.openshiftRoute.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + host: {{ tpl .Values.openshiftRoute.host . | quote }} + to: + name: {{ $fullName }} + kind: Service + port: + targetPort: {{ $svcPort }} + {{- with .Values.openshiftRoute.tls }} + tls: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} \ No newline at end of file diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/service.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/service.yaml.helm new file mode 100644 index 00000000000..4ca1e450e18 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/service.yaml.helm @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "taskConsole.fullname" . }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: {{ .Values.service.targetPort }} + protocol: TCP + name: http + {{- if (and (eq .Values.service.type "NodePort")) }} + nodePort: {{ .Values.service.nodePort }} + {{- end }} + selector: + {{- include "taskConsole.selectorLabels" . | nindent 4 }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/serviceaccount.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/serviceaccount.yaml.helm new file mode 100644 index 00000000000..527cc3cb033 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/templates/serviceaccount.yaml.helm @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "taskConsole.serviceAccountName" . }} + labels: + {{- include "taskConsole.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/tests/test-connection.yaml.helm b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/tests/test-connection.yaml.helm new file mode 100644 index 00000000000..9347d65d3f6 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/tests/test-connection.yaml.helm @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "task-console.fullname" . }}-test-connection" + labels: + {{- include "task-console.labels" . | nindent 4 }} + annotations: + "helm.sh/hook": test +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "task-console.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/values.yaml b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/values.yaml new file mode 100644 index 00000000000..431d6bfd3b3 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/charts/task-console/values.yaml @@ -0,0 +1,118 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# Task Console application +# -- Enable or disable Task Console installation +enabled: true + +# -- Component name +name: task-console + +# -- Overrides the deployed application name +appNameOverride: "" + +# -- Overrides the deployed application version +appVersionOverride: "" + +# -- Overrides the Task Console states list +appTaskStatesListOverride: "" + +# -- Overrides the Task Console active states list +appTaskActiveStatesListOverride: "" + +# @ignored +replicaCount: 1 + +# -- Image source configuration for the Management Console image +image: + registry: docker.io + account: apache + name: incubator-kie-kogito-task-console + pullPolicy: IfNotPresent + tag: "main" # AUTO-GENERATED BY install.js. DO NOT CHANGE MANUALLY. + +# -- Pull secrets used when pulling Management Console image +imagePullSecrets: [] + +# -- Overrides charts name +nameOverride: "" +# -- Overrides charts full name +fullnameOverride: "" + +# -- Task Console ServiceAccount configuration (https://kubernetes.io/docs/concepts/security/service-accounts/) +serviceAccount: + create: true + annotations: {} + name: "" + +# @ignored +podAnnotations: {} + +# @ignored +podSecurityContext: {} + +# @ignored +securityContext: {} + +# -- Task Console Service configuration (https://kubernetes.io/docs/concepts/services-networking/service/) +service: + type: ClusterIP + port: 8080 + targetPort: 8080 + nodePort: "" + +# -- Task Console Ingress configuration (https://kubernetes.io/docs/concepts/services-networking/ingress/) +ingress: + enabled: false + className: "{{ .Values.global.kubernetesIngressClass }}" + annotations: {} + hosts: + - host: task-console.{{ .Values.global.kubernetesClusterDomain }} + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + +# -- Task Console OpenShift Route configuration (https://docs.openshift.com/container-platform/4.14/networking/routes/route-configuration.html) +openshiftRoute: + enabled: false + annotations: {} + host: task-console.{{ .Values.global.openshiftRouteDomain }} + tls: + termination: edge + insecureEdgeTerminationPolicy: None + +# @ignored +resources: {} + +# -- Task Console HorizontalPodAutoscaler configuration (https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + +# @ignored +nodeSelector: {} + +# @ignored +tolerations: [] + +# @ignored +affinity: {} diff --git a/packages/runtime-tools-consoles-helm-chart/src/templates/NOTES.txt b/packages/runtime-tools-consoles-helm-chart/src/templates/NOTES.txt new file mode 100644 index 00000000000..c00ab18fc0b --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/templates/NOTES.txt @@ -0,0 +1,110 @@ +{{- if not .Values.global.ingressSource }} + +In order to get {{ .Release.Name }} running you need to run these commands: + +{{- if and (index .Values "management-console" "enabled") (index .Values "management-console" "ingress" "enabled") }} +1. Management Console available at: +{{- range $host := index .Values "management-console" "ingress" "hosts" }} + {{- range .paths }} + http{{ if index .Values "management-console" "ingress" "tls" }}s{{ end }}://{{ tpl $host.host $ }}{{ .path }} + {{- end }} +{{- end }} +{{- else }} + +1. Run the following commands in a separate terminal to port-forward Management Console application: +{{- if contains "NodePort" ( index .Values "management-console" "service" "type" ) }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "managementConsole.fullname" ( index .Subcharts "management-console" ) }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" ( index .Values "management-console" "service" "type" ) }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "managementConsole.fullname" ( index .Subcharts "management-console" ) }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "managementConsole.fullname" ( index .Subcharts "management-console" ) }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ index .Values "management-console" "service" "port" }} +{{- else if contains "ClusterIP" ( index .Values "management-console" "service" "type" ) }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/component={{ index .Values "management-console" "name" }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Management Console URL: http://127.0.0.1:{{ index .Values "management-console" "service" "port" }}" + kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME {{ index .Values "management-console" "service" "port" }}:$CONTAINER_PORT +{{- end }} +{{- end }} + +{{- if and (index .Values "task-console" "enabled") (index .Values "task-console" "ingress" "enabled") }} +2. Task Console available at: +{{- range $host := index .Values "task-console" "ingress" "hosts" }} + {{- range .paths }} + http{{ if index .Values "task-console" "ingress" "tls" }}s{{ end }}://{{ tpl $host.host $ }}{{ .path }} + {{- end }} +{{- end }} +{{- else }} + +2. Run the following commands in a separate terminal to port-forward Task Console application: +{{- if contains "NodePort" ( index .Values "task-console" "service" "type" ) }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "taskConsole.fullname" ( index .Subcharts "task-console" ) }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" ( index .Values "task-console" "service" "type" ) }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "taskConsole.fullname" ( index .Subcharts "task-console" ) }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "taskConsole.fullname" ( index .Subcharts "task-console" ) }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ index .Values "task-console" "service" "port" }} +{{- else if contains "ClusterIP" ( index .Values "task-console" "service" "type" ) }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/component={{ index .Values "task-console" "name" }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Task Console URL: http://127.0.0.1:{{ index .Values "task-console" "service" "port" }}" + kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME {{ index .Values "task-console" "service" "port" }}:$CONTAINER_PORT +{{- end }} +{{- end }} + +{{- else if eq .Values.global.ingressSource "minikube" }} + +You may need to add the above hostnames to your /etc/hosts file, mapping them to your minikube ip. + +Run the following commands: + export MINIKUBE_IP=$(minikube ip) + echo "\n# Minikube Runtime Tools Consoles Helm Chart hostnames" | sudo tee -a /etc/hosts +{{- if index .Values "management-console" "enabled" }} +{{- range $host := index .Values "management-console" "ingress" "hosts" }} + {{- range .paths }} + echo "$MINIKUBE_IP {{ tpl $host.host $ }}" | sudo tee -a /etc/hosts + {{- end }} +{{- end }} +{{- end }} +{{- if .Values "task-console" "enabled" }} +{{- range $host := index .Values "task-console" "ingress" "hosts" }} + {{- range .paths }} + echo "$MINIKUBE_IP {{ tpl $host.host $ }}" | sudo tee -a /etc/hosts + {{- end }} +{{- end }} +{{- end }} + +{{- else if eq .Values.global.ingressSource "openshift" }} + +{{- if index .Values "management-console" "enabled" }} +1. Management Console available at: + http{{ if index .Values "management-console" "openshiftRoute" "tls" }}s{{ end }}://{{ tpl (index .Values "management-console" "openshiftRoute" "host") . }} +{{- end }} +{{- if index .Values "task-console" "enabled" }} +2. Task Console available at: + http{{ if index .Values "task-console" "openshiftRoute" "tls" }}s{{ end }}://{{ tpl (index .Values "task-console" "openshiftRoute" "host") . }} +{{- end }} + +{{- else }} +{{- if and ( index .Values "management-console" "enabled" ) ( index .Values "management-console" "ingress" "enabled" ) }} +1. Management Console available at: +{{- range $host := index .Values "management-console" "ingress" "hosts" }} + {{- range .paths }} + http{{ if index .Values "management-console" "ingress" "tls" }}s{{ end }}://{{ tpl $host.host $ }}{{ .path }} + {{- end }} +{{- end }} +{{- end }} +{{- if and ( index .Values "task-console" "enabled" ) ( index .Values "task-console" "ingress" "enabled" ) }} +2. Task Console available at: +{{- range $host := index .Values "task-console" "ingress" "hosts" }} + {{- range .paths }} + http{{ if index .Values "task-console" "ingress" "tls" }}s{{ end }}://{{ tpl $host.host $ }}{{ .path }} + {{- end }} +{{- end }} +{{- end }} + +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/templates/_helpers.tpl b/packages/runtime-tools-consoles-helm-chart/src/templates/_helpers.tpl new file mode 100644 index 00000000000..eed8b86c38c --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/templates/_helpers.tpl @@ -0,0 +1,50 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +*/}} +{{- define "fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "labels" -}} +helm.sh/chart: {{ include "chart" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +app.kubernetes.io/part-of: {{ include "name" . }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "selectorLabels" -}} +app.kubernetes.io/name: {{ include "name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} diff --git a/packages/runtime-tools-consoles-helm-chart/src/values-kubernetes.yaml b/packages/runtime-tools-consoles-helm-chart/src/values-kubernetes.yaml new file mode 100644 index 00000000000..1ee20785f24 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/values-kubernetes.yaml @@ -0,0 +1,58 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# Task Console application +task-console: + ingress: + enabled: true + +# Management Console application +management-console: + ingress: + enabled: true + +global: + # -- If want to enable Keycloak integration set it to PROD, otherwise set it to DEV + environment: "DEV" + + # -- Set the URL that points to the Data Index service + dataIndexUrl: "" + + # -- If using environment = PROD, enable or disable Keycloak health check + keycloakHealthCheck: false + + # -- If using environment = PROD, set the KeyCloak health check url + keycloakHealthCheckUrl: "" + + # -- If using environment = PROD, set the KeyCloak token validity + keycloakTokenValidity: "" + + # -- If using environment = PROD, set the KeyCloak auth url + keycloakUrl: "" + + # -- If using environment = PROD, set the KeyCloak client id + keycloakClientId: "" + + # -- If using environment = PROD, set the KeyCloak realm name + keycloakRealm: "" + + # -- Kubernetes specific configuration + ingressSource: "kubernetes" + kubernetesIngressClass: nginx + kubernetesClusterDomain: k8s-example.com diff --git a/packages/runtime-tools-consoles-helm-chart/src/values-minikube-nginx.yaml b/packages/runtime-tools-consoles-helm-chart/src/values-minikube-nginx.yaml new file mode 100644 index 00000000000..a040808a5a3 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/values-minikube-nginx.yaml @@ -0,0 +1,58 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# Task Console application +task-console: + ingress: + enabled: true + +# Management Console application +management-console: + ingress: + enabled: true + +global: + # -- If want to enable Keycloak integration set it to PROD, otherwise set it to DEV + environment: "DEV" + + # -- Set the URL that points to the Data Index service + dataIndexUrl: "" + + # -- If using environment = PROD, enable or disable Keycloak health check + keycloakHealthCheck: false + + # -- If using environment = PROD, set the KeyCloak health check url + keycloakHealthCheckUrl: "" + + # -- If using environment = PROD, set the KeyCloak token validity + keycloakTokenValidity: "" + + # -- If using environment = PROD, set the KeyCloak auth url + keycloakUrl: "" + + # -- If using environment = PROD, set the KeyCloak client id + keycloakClientId: "" + + # -- If using environment = PROD, set the KeyCloak realm name + keycloakRealm: "" + + # -- Minikube specific configuration + ingressSource: "minikube" + kubernetesIngressClass: nginx + kubernetesClusterDomain: localhost diff --git a/packages/runtime-tools-consoles-helm-chart/src/values-openshift.yaml b/packages/runtime-tools-consoles-helm-chart/src/values-openshift.yaml new file mode 100644 index 00000000000..7146a9fee1c --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/values-openshift.yaml @@ -0,0 +1,65 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# Task Console application +task-console: + openshiftRoute: + enabled: true + host: task-console.{{ .Values.global.openshiftRouteDomain }} + +# Management Console application +management-console: + openshiftRoute: + enabled: true + host: management-console.{{ .Values.global.openshiftRouteDomain }} + +global: + # -- If want to enable Keycloak integration set it to PROD, otherwise set it to DEV + environment: "DEV" + + # -- Set the URL that points to the Data Index service + dataIndexUrl: "" + + # -- If using environment = PROD, enable or disable Keycloak health check + keycloakHealthCheck: false + + # -- If using environment = PROD, set the KeyCloak health check url + keycloakHealthCheckUrl: "" + + # -- If using environment = PROD, set the KeyCloak token validity + keycloakTokenValidity: "" + + # -- If using environment = PROD, set the KeyCloak auth url + keycloakUrl: "" + + # -- If using environment = PROD, set the KeyCloak client id + keycloakClientId: "" + + # -- If using environment = PROD, set the KeyCloak realm name + keycloakRealm: "" + + # -- If using Minikube or Kubernetes, set the Ingress class (i.e: nginx) + kubernetesIngressClass: "" + + # -- If using Minikube or Kubernetes, set the cluster domain + kubernetesClusterDomain: "" + + # -- OpenShift specific configuration + ingressSource: "openshift" + openshiftRouteDomain: ocp-example.com diff --git a/packages/runtime-tools-consoles-helm-chart/src/values.yaml b/packages/runtime-tools-consoles-helm-chart/src/values.yaml new file mode 100644 index 00000000000..a0a1cdb44b7 --- /dev/null +++ b/packages/runtime-tools-consoles-helm-chart/src/values.yaml @@ -0,0 +1,60 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# -- Overrides charts name +nameOverride: "" +# -- Overrides charts full name +fullnameOverride: "" + +global: + # -- If want to enable Keycloak integration set it to PROD, otherwise set it to DEV + environment: "DEV" + + # -- Set the URL that points to the Data Index service + dataIndexUrl: "" + + # -- If using environment = PROD, enable or disable Keycloak health check + keycloakHealthCheck: false + + # -- If using environment = PROD, set the KeyCloak health check url + keycloakHealthCheckUrl: "" + + # -- If using environment = PROD, set the KeyCloak token validity + keycloakTokenValidity: "" + + # -- If using environment = PROD, set the KeyCloak auth url + keycloakUrl: "" + + # -- If using environment = PROD, set the KeyCloak client id + keycloakClientId: "" + + # -- If using environment = PROD, set the KeyCloak realm name + keycloakRealm: "" + + # -- Which ingress source is being used (none/"minikube"/"kubernetes"/"openshift") Obs.: For NOTES generation only + ingressSource: "" + + # -- If using Minikube or Kubernetes, set the Ingress class (i.e: nginx) + kubernetesIngressClass: "" + + # -- If using Minikube or Kubernetes, set the cluster domain + kubernetesClusterDomain: "" + + # -- If using OpenShift Routes, set the Route domain + openshiftRouteDomain: "" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f9cac243a34..90fba6b53de 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7041,6 +7041,31 @@ importers: specifier: ^5.5.3 version: 5.5.3 + packages/runtime-tools-consoles-helm-chart: + dependencies: + '@kie-tools/kogito-management-console': + specifier: workspace:* + version: link:../kogito-management-console + '@kie-tools/kogito-task-console': + specifier: workspace:* + version: link:../kogito-task-console + devDependencies: + '@kie-tools/root-env': + specifier: workspace:* + version: link:../root-env + prettier: + specifier: ^3.3.2 + version: 3.3.2 + rimraf: + specifier: ^3.0.2 + version: 3.0.2 + run-script-os: + specifier: ^1.1.6 + version: 1.1.6 + yaml: + specifier: ^2.3.2 + version: 2.3.2 + packages/runtime-tools-management-console-webapp: dependencies: '@kie-tools/runtime-tools-components': diff --git a/repo/graph.dot b/repo/graph.dot index e9b96f5e77f..5481ee34a33 100644 --- a/repo/graph.dot +++ b/repo/graph.dot @@ -146,6 +146,7 @@ digraph G { "@kie-tools/python-venv" [ color = "black", fontcolor = "black", style = "dashed, rounded" ]; "@kie-tools/runtime-tools-components" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/runtime-tools-shared-gateway-api" [ color = "blue", fontcolor = "blue", style = "rounded" ]; + "@kie-tools/runtime-tools-consoles-helm-chart" [ color = "black", fontcolor = "black", style = "dashed, rounded" ]; "@kie-tools/runtime-tools-process-webapp-components" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/runtime-tools-shared-webapp-components" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/runtime-tools-process-enveloped-components" [ color = "blue", fontcolor = "blue", style = "rounded" ]; @@ -468,6 +469,8 @@ digraph G { "@kie-tools/runtime-tools-components" -> "@kie-tools/json-yaml-language-service" [ style = "solid", color = "blue" ]; "@kie-tools/runtime-tools-components" -> "@kie-tools/runtime-tools-shared-gateway-api" [ style = "solid", color = "blue" ]; "@kie-tools/runtime-tools-components" -> "@kie-tools/uniforms-patternfly" [ style = "solid", color = "blue" ]; + "@kie-tools/runtime-tools-consoles-helm-chart" -> "@kie-tools/kogito-management-console" [ style = "solid", color = "black" ]; + "@kie-tools/runtime-tools-consoles-helm-chart" -> "@kie-tools/kogito-task-console" [ style = "solid", color = "black" ]; "@kie-tools/runtime-tools-management-console-webapp" -> "@kie-tools/runtime-tools-process-webapp-components" [ style = "solid", color = "blue" ]; "@kie-tools/runtime-tools-management-console-webapp" -> "@kie-tools/runtime-tools-shared-webapp-components" [ style = "solid", color = "blue" ]; "@kie-tools/runtime-tools-process-dev-ui-webapp" -> "@kie-tools/runtime-tools-process-webapp-components" [ style = "solid", color = "blue" ]; diff --git a/repo/graph.json b/repo/graph.json index f3d53686302..8048827caf4 100644 --- a/repo/graph.json +++ b/repo/graph.json @@ -156,6 +156,7 @@ { "id": "@kie-tools/python-venv" }, { "id": "@kie-tools/runtime-tools-components" }, { "id": "@kie-tools/runtime-tools-shared-gateway-api" }, + { "id": "@kie-tools/runtime-tools-consoles-helm-chart" }, { "id": "@kie-tools/runtime-tools-process-enveloped-components" }, { "id": "@kie-tools/runtime-tools-process-gateway-api" }, { "id": "@kie-tools/runtime-tools-shared-enveloped-components" }, @@ -1955,6 +1956,16 @@ "target": "@kie-tools/tsconfig", "weight": 1 }, + { + "source": "@kie-tools/runtime-tools-consoles-helm-chart", + "target": "@kie-tools/kogito-management-console", + "weight": 1 + }, + { + "source": "@kie-tools/runtime-tools-consoles-helm-chart", + "target": "@kie-tools/kogito-task-console", + "weight": 1 + }, { "source": "@kie-tools/runtime-tools-process-enveloped-components", "target": "@kie-tools/runtime-tools-process-gateway-api", @@ -2486,6 +2497,7 @@ ["@kie-tools-core/react-hooks", "packages/react-hooks"], ["@kie-tools/root-env", "packages/root-env"], ["@kie-tools/runtime-tools-components", "packages/runtime-tools-components"], + ["@kie-tools/runtime-tools-consoles-helm-chart", "packages/runtime-tools-consoles-helm-chart"], ["@kie-tools/runtime-tools-management-console-webapp", "packages/runtime-tools-management-console-webapp"], ["@kie-tools/runtime-tools-process-dev-ui-webapp", "packages/runtime-tools-process-dev-ui-webapp"], ["@kie-tools/runtime-tools-process-enveloped-components", "packages/runtime-tools-process-enveloped-components"], From 0460d0aa675178c9de9b53e657a215aff85cd0e9 Mon Sep 17 00:00:00 2001 From: Thiago Lugli Date: Wed, 21 Aug 2024 13:38:24 -0300 Subject: [PATCH 20/22] kie-issues#1445: New DMN Editor: Support read-only mode (#2538) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Daniel José dos Santos Co-authored-by: Daniel José dos Santos --- .../src/BoxedExpressionEditor.tsx | 4 + .../src/BoxedExpressionEditorContext.tsx | 3 + .../contextMenu/PopoverMenu/PopoverMenu.css | 8 +- .../contextMenu/PopoverMenu/PopoverMenu.tsx | 1 + .../ExpressionVariableCell.tsx | 61 +- .../ConditionalExpression.tsx | 4 +- .../ContextExpression/ContextExpression.tsx | 4 +- .../DecisionTableExpression.tsx | 7 +- .../HitPolicySelector.tsx | 21 +- .../ExpressionDefinitionLogicTypeSelector.tsx | 38 +- .../FilterExpressionComponent.tsx | 4 +- .../FeelFunctionExpression.tsx | 8 +- .../FunctionExpression/FunctionExpression.tsx | 74 +- .../FunctionKindSelector.tsx | 16 +- .../JavaFunctionExpression.tsx | 8 +- .../PmmlFunctionExpression.tsx | 8 +- .../InvocationExpression.tsx | 4 +- .../IteratorExpressionComponent.tsx | 4 +- .../IteratorExpressionVariableCell.tsx | 3 +- .../ListExpression/ListExpression.tsx | 4 +- .../LiteralExpression/LiteralExpression.tsx | 4 +- .../RelationExpression/RelationExpression.tsx | 4 +- .../src/table/BeeTable/BeeTable.tsx | 29 +- .../src/table/BeeTable/BeeTableBody.tsx | 7 + .../BeeTable/BeeTableContextMenuHandler.tsx | 44 +- .../BeeTable/BeeTableEditableCellContent.tsx | 4 +- .../src/table/BeeTable/BeeTableHeader.tsx | 13 +- .../src/table/BeeTable/BeeTableTd.tsx | 42 +- .../BeeTable/BeeTableTdForAdditionalRow.tsx | 4 +- .../src/table/BeeTable/BeeTableTh.tsx | 8 +- .../table/BeeTable/BeeTableThResizable.tsx | 11 +- .../BeeTable/InlineEditableTextInput.tsx | 6 +- .../stories/boxedExpressionStoriesWrapper.tsx | 1 + .../Conditional/Conditional.stories.tsx | 35 + .../Context/Context.stories.tsx | 32 + .../DecisionTable/DecisionTable.stories.tsx | 60 ++ .../boxedExpressions/Every/Every.stories.tsx | 31 + .../Filter/Filter.stories.tsx | 30 + .../boxedExpressions/For/For.stories.tsx | 31 + .../Function/Function.stories.tsx | 16 + .../Invocation/Invocation.stories.tsx | 33 + .../boxedExpressions/List/List.stories.tsx | 16 + .../Literal/Literal.stories.tsx | 15 + .../Relation/Relation.stories.tsx | 33 + .../boxedExpressions/Some/Some.stories.tsx | 31 + .../stories/dev/WebApp.stories.tsx | 1 + .../tests-e2e/__fixtures__/monaco.ts | 20 + .../tests-e2e/__fixtures__/stories.ts | 32 +- .../tests-e2e/api/expressionContainer.ts | 4 + .../tests-e2e/api/expressionHeader.ts | 4 + .../expressions/contextExpressionElement.ts | 4 + .../decisionTableExpressionElement.ts | 4 + .../invocationExpressionElement.ts | 4 + .../expressions/literalExpressionElement.ts | 4 + .../expressions/relationExpressionElement.ts | 11 +- .../tests-e2e/api/nameAndDataTypeCell.ts | 4 + .../features/readonly/readonly.spec.ts | 314 +++++++ .../src/DmnEditorFactory.tsx | 4 + .../dmn-editor-envelope/src/DmnEditorRoot.tsx | 10 +- .../src/DmnEditorStandaloneEnvelopeServer.ts | 2 +- .../stories/DevWebApp.stories.tsx | 41 +- .../stories/LoanPreQualification.stories.tsx | 885 ++++++++++++++++++ packages/dmn-editor/src/DmnEditor.css | 27 +- packages/dmn-editor/src/DmnEditor.tsx | 23 +- .../BoxedExpressionScreen.tsx | 3 + .../dmn-editor/src/dataTypes/Constraints.tsx | 32 +- .../src/dataTypes/ConstraintsEnum.tsx | 15 +- .../src/dataTypes/ConstraintsExpression.tsx | 20 +- .../src/dataTypes/ConstraintsRange.tsx | 12 +- .../dmn-editor/src/dataTypes/DataTypeName.tsx | 10 +- .../src/dataTypes/DataTypePanel.tsx | 90 +- .../dmn-editor/src/dataTypes/DataTypes.tsx | 79 +- .../src/dataTypes/DataTypesEmptyState.tsx | 35 +- .../src/dataTypes/ItemComponentsTable.tsx | 117 +-- packages/dmn-editor/src/diagram/Diagram.tsx | 255 ++--- .../src/diagram/DmnVersionLabel.tsx | 1 + .../src/diagram/DrdSelectorPanel.tsx | 46 +- packages/dmn-editor/src/diagram/Palette.tsx | 233 ++--- .../dmn-editor/src/diagram/edges/Edges.tsx | 25 +- .../src/diagram/nodes/DataTypeNodePanel.tsx | 5 +- .../diagram/nodes/EditExpressionNodePanel.tsx | 4 +- .../src/diagram/nodes/EditableNodeLabel.tsx | 18 +- .../dmn-editor/src/diagram/nodes/NodeSvgs.tsx | 24 +- .../dmn-editor/src/diagram/nodes/Nodes.tsx | 97 +- .../diagram/nodes/OutgoingStuffNodePanel.tsx | 8 +- .../src/feel/InlineFeelNameInput.tsx | 6 +- .../src/focus/useFocusableElement.ts | 6 +- packages/dmn-editor/src/icons/Icons.tsx | 2 +- .../src/includedModels/IncludedModels.tsx | 192 ++-- .../src/propertiesPanel/BkmProperties.tsx | 12 +- .../BoxedExpressionPropertiesPanel.tsx | 33 +- .../ContextInformationItemCell.tsx | 2 +- .../DecisionTableInputHeaderCell.tsx | 20 +- .../DecisionTableInputRuleCell.tsx | 10 +- .../DecisionTableOutputHeaderCell.tsx | 26 +- .../DecisionTableOutputRuleCell.tsx | 10 +- .../DecisionTableRootCell.tsx | 10 +- .../ExpressionRootCell.tsx | 4 +- .../Fields.tsx | 20 +- .../FunctionDefinitionParametersCell.tsx | 14 +- .../FunctionDefinitionRootCell.tsx | 6 +- .../InformationItemCell.tsx | 10 +- .../InvocationFunctionCallCell.tsx | 4 +- .../InvocationInformationItemCell.tsx | 2 +- .../IteratorVariableCell.tsx | 4 +- .../LiteralExpressionContentCell.tsx | 6 +- .../RelationInformationItemCell.tsx | 2 +- .../src/propertiesPanel/ColorPicker.tsx | 3 +- .../propertiesPanel/DecisionProperties.tsx | 24 +- .../DecisionServiceProperties.tsx | 16 +- .../DocumentationLinksFormGroup.tsx | 29 +- .../src/propertiesPanel/FontOptions.tsx | 13 +- .../GlobalDiagramProperties.tsx | 14 +- .../src/propertiesPanel/GroupProperties.tsx | 6 +- .../propertiesPanel/InputDataProperties.tsx | 12 +- .../KnowledgeSourceProperties.tsx | 14 +- .../src/propertiesPanel/ShapeOptions.tsx | 13 +- .../TextAnnotationProperties.tsx | 8 +- .../src/settings/DmnEditorSettingsContext.tsx | 44 + packages/dmn-editor/src/svg/DmnDiagramSvg.tsx | 2 +- .../stories/dev/DevWebApp.stories.tsx | 2 + .../stories/dmnEditorStoriesWrapper.tsx | 15 + .../stories/misc/empty/Empty.stories.tsx | 1 + .../LoanPreQualification.stories.tsx | 18 +- .../tests-e2e/__fixtures__/editor.ts | 22 +- .../readOnly-dataTypes-inputs-disabled.png | Bin 0 -> 79163 bytes .../readOnly/readOnly-enabled.png | Bin 0 -> 50301 bytes .../readOnly/readOnly-no-edge-handles.png | Bin 0 -> 57675 bytes .../readOnly/readOnly-node-not-moved.png | Bin 0 -> 50311 bytes .../readOnly-dataTypes-inputs-disabled.png | Bin 0 -> 79163 bytes .../chromium/readOnly/readOnly-enabled.png | Bin 0 -> 50280 bytes .../readOnly/readOnly-no-edge-handles.png | Bin 0 -> 57727 bytes .../readOnly/readOnly-node-not-moved.png | Bin 0 -> 50280 bytes .../readOnly-dataTypes-inputs-disabled.png | Bin 0 -> 117175 bytes .../webkit/readOnly/readOnly-enabled.png | Bin 0 -> 72547 bytes .../readOnly/readOnly-no-edge-handles.png | Bin 0 -> 80306 bytes .../readOnly/readOnly-node-not-moved.png | Bin 0 -> 72547 bytes .../readOnly/readOnlyDataTypes.spec.ts | 86 ++ .../readOnly/readOnlyDiagram.spec.ts | 59 ++ .../resources/dmn/index.html | 11 +- 140 files changed, 3152 insertions(+), 1012 deletions(-) create mode 100644 packages/boxed-expression-component/tests-e2e/features/readonly/readonly.spec.ts create mode 100644 packages/dmn-editor-standalone/stories/LoanPreQualification.stories.tsx create mode 100644 packages/dmn-editor/src/settings/DmnEditorSettingsContext.tsx create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/readOnly/readOnly-dataTypes-inputs-disabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/readOnly/readOnly-enabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/readOnly/readOnly-no-edge-handles.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/readOnly/readOnly-node-not-moved.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/readOnly/readOnly-dataTypes-inputs-disabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/readOnly/readOnly-enabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/readOnly/readOnly-no-edge-handles.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/readOnly/readOnly-node-not-moved.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/readOnly/readOnly-dataTypes-inputs-disabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/readOnly/readOnly-enabled.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/readOnly/readOnly-no-edge-handles.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/readOnly/readOnly-node-not-moved.png create mode 100644 packages/dmn-editor/tests-e2e/readOnly/readOnlyDataTypes.spec.ts create mode 100644 packages/dmn-editor/tests-e2e/readOnly/readOnlyDiagram.spec.ts diff --git a/packages/boxed-expression-component/src/BoxedExpressionEditor.tsx b/packages/boxed-expression-component/src/BoxedExpressionEditor.tsx index 24034cc378b..920e4110257 100644 --- a/packages/boxed-expression-component/src/BoxedExpressionEditor.tsx +++ b/packages/boxed-expression-component/src/BoxedExpressionEditor.tsx @@ -55,6 +55,8 @@ export interface BoxedExpressionEditorProps { isResetSupportedOnRootExpression?: boolean; /** The Data Types available */ dataTypes: DmnDataType[]; + /** ReadOnly mode flag */ + isReadOnly?: boolean; /** PMML models available to use on Boxed PMML Function */ pmmlDocuments?: PmmlDocument[]; /** The containing HTMLElement which is scrollable */ @@ -67,6 +69,7 @@ export interface BoxedExpressionEditorProps { export function BoxedExpressionEditor({ dataTypes, + isReadOnly, expressionHolderId, expressionHolderName, expressionHolderTypeRef, @@ -97,6 +100,7 @@ export function BoxedExpressionEditor({ expression={expression} onExpressionChange={onExpressionChange} onWidthsChange={onWidthsChange} + isReadOnly={isReadOnly} dataTypes={dataTypes} pmmlDocuments={pmmlDocuments} onRequestFeelVariables={onRequestFeelVariables} diff --git a/packages/boxed-expression-component/src/BoxedExpressionEditorContext.tsx b/packages/boxed-expression-component/src/BoxedExpressionEditorContext.tsx index 3260a7ae14c..ce879f8808c 100644 --- a/packages/boxed-expression-component/src/BoxedExpressionEditorContext.tsx +++ b/packages/boxed-expression-component/src/BoxedExpressionEditorContext.tsx @@ -33,6 +33,7 @@ export interface BoxedExpressionEditorContextType { expressionHolderId: string; pmmlDocuments?: PmmlDocument[]; dataTypes: DmnDataType[]; + isReadOnly?: boolean; // State currentlyOpenContextMenu: string | undefined; @@ -68,6 +69,7 @@ export function BoxedExpressionEditorContextProvider({ onExpressionChange, onWidthsChange, dataTypes, + isReadOnly, expressionHolderId, beeGwtService, children, @@ -110,6 +112,7 @@ export function BoxedExpressionEditorContextProvider({ // props expressionHolderId, dataTypes, + isReadOnly, pmmlDocuments, //state // FIXME: Move to a separate context (https://github.com/apache/incubator-kie-issues/issues/168) diff --git a/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.css b/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.css index 8b74a7e7703..f155ce33106 100644 --- a/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.css +++ b/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.css @@ -6,18 +6,18 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations - * under the License. + * under the License. */ -.pf-c-popover__content > .pf-c-button { +.popover-menu-selector .pf-c-popover__content > .pf-c-button { display: none; } diff --git a/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.tsx b/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.tsx index 2be8a510813..fb03105edb8 100644 --- a/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.tsx +++ b/packages/boxed-expression-component/src/contextMenu/PopoverMenu/PopoverMenu.tsx @@ -152,6 +152,7 @@ export const PopoverMenu = React.forwardRef( = ({ data, rowIndex, columnIndex, onExpressionWithVariableUpdated }) => { const ref = React.useRef(null); - + const { isReadOnly } = useBoxedExpressionEditor(); const { expression, variable, index } = data[rowIndex]; const onVariableUpdated = useCallback( @@ -110,33 +110,44 @@ export const ExpressionVariableCell: React.FunctionComponent< } }, [beeGwtService, variable, isActive]); + const cellContent = useMemo( + () => ( +
+

+ {variable["@_name"]} +

+

+ ({variable["@_typeRef"] ?? DmnBuiltInDataType.Undefined}) +

+
+ ), + [variable] + ); + return (
- -
-

- {variable["@_name"]} -

-

- ({variable["@_typeRef"] ?? DmnBuiltInDataType.Undefined}) -

-
-
+ {isReadOnly ? ( + cellContent + ) : ( + + {cellContent} + + )}
); diff --git a/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx b/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx index 948e4d836d1..ab9871d81e8 100644 --- a/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/ConditionalExpression/ConditionalExpression.tsx @@ -62,7 +62,7 @@ export function ConditionalExpression({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression } = useBoxedExpressionEditorDispatch(); const tableRows = useMemo(() => { @@ -230,6 +230,8 @@ export function ConditionalExpression({
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={id} headerLevelCountForAppendingRowIndexColumn={1} diff --git a/packages/boxed-expression-component/src/expressions/ContextExpression/ContextExpression.tsx b/packages/boxed-expression-component/src/expressions/ContextExpression/ContextExpression.tsx index 5fa7a92c96a..ef7ff4641f3 100644 --- a/packages/boxed-expression-component/src/expressions/ContextExpression/ContextExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/ContextExpression/ContextExpression.tsx @@ -68,7 +68,7 @@ export function ContextExpression({ }) { const { i18n } = useBoxedExpressionEditorI18n(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const id = contextExpression["@_id"]!; @@ -460,6 +460,8 @@ export function ContextExpression({
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={id} headerLevelCountForAppendingRowIndexColumn={1} diff --git a/packages/boxed-expression-component/src/expressions/DecisionTableExpression/DecisionTableExpression.tsx b/packages/boxed-expression-component/src/expressions/DecisionTableExpression/DecisionTableExpression.tsx index afcf3bbcf0e..e22e1da0ce0 100644 --- a/packages/boxed-expression-component/src/expressions/DecisionTableExpression/DecisionTableExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/DecisionTableExpression/DecisionTableExpression.tsx @@ -109,7 +109,7 @@ export function DecisionTableExpression({ isNested: boolean; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); const id = decisionTableExpression["@_id"]!; @@ -647,9 +647,10 @@ export function DecisionTableExpression({ selectedBuiltInAggregator={getAggregationKey(decisionTableExpression["@_aggregation"])} onHitPolicySelected={onHitPolicySelect} onBuiltInAggregatorSelected={onBuiltInAggregatorSelect} + isReadOnly={isReadOnly ?? false} /> ), - [decisionTableExpression, getAggregationKey, onBuiltInAggregatorSelect, onHitPolicySelect] + [decisionTableExpression, getAggregationKey, isReadOnly, onBuiltInAggregatorSelect, onHitPolicySelect] ); const onRowAdded = useCallback( @@ -1047,6 +1048,8 @@ export function DecisionTableExpression({ return (
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ isPivoting ? ResizerStopBehavior.SET_WIDTH_ALWAYS : ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER } diff --git a/packages/boxed-expression-component/src/expressions/DecisionTableExpression/HitPolicySelector.tsx b/packages/boxed-expression-component/src/expressions/DecisionTableExpression/HitPolicySelector.tsx index e73376f7c66..53d4d8d97f4 100644 --- a/packages/boxed-expression-component/src/expressions/DecisionTableExpression/HitPolicySelector.tsx +++ b/packages/boxed-expression-component/src/expressions/DecisionTableExpression/HitPolicySelector.tsx @@ -41,6 +41,8 @@ export interface HitPolicySelectorProps { onHitPolicySelected: (hitPolicy: string) => void; /** Callback invoked when built-in aggregator selection changes */ onBuiltInAggregatorSelected: (builtInAggregator: string) => void; + /** If the hit policy is readonly or not*/ + isReadOnly: boolean; } export const HIT_POLICIES_THAT_SUPPORT_AGGREGATION = ["COLLECT"]; @@ -50,6 +52,7 @@ export function HitPolicySelector({ onHitPolicySelected, selectedBuiltInAggregator, selectedHitPolicy, + isReadOnly, }: HitPolicySelectorProps) { const { i18n } = useBoxedExpressionEditorI18n(); const { editorRef } = useBoxedExpressionEditor(); @@ -140,7 +143,18 @@ export function HitPolicySelector({ setVisibleHelpAggregatorFunction((previousHelp) => (previousHelp !== help ? help : "")); }, []); - return ( + const hitPolicyCell = useMemo(() => { + return ( +
+ {!builtInAggregatorEnabled && `${_.first(selectedHitPolicy)}`} + {builtInAggregatorEnabled && `${_.first(selectedHitPolicy)}${selectedBuiltInAggregator}`} +
+ ); + }, [builtInAggregatorEnabled, selectedBuiltInAggregator, selectedHitPolicy]); + + return isReadOnly ? ( + hitPolicyCell + ) : ( { setVisibleHelpAggregatorFunction(""); @@ -211,10 +225,7 @@ export function HitPolicySelector({
} > -
- {!builtInAggregatorEnabled && `${_.first(selectedHitPolicy)}`} - {builtInAggregatorEnabled && `${_.first(selectedHitPolicy)}${selectedBuiltInAggregator}`} -
+ {hitPolicyCell} ); } diff --git a/packages/boxed-expression-component/src/expressions/ExpressionDefinitionRoot/ExpressionDefinitionLogicTypeSelector.tsx b/packages/boxed-expression-component/src/expressions/ExpressionDefinitionRoot/ExpressionDefinitionLogicTypeSelector.tsx index 063106b6281..6a2e1a052ca 100644 --- a/packages/boxed-expression-component/src/expressions/ExpressionDefinitionRoot/ExpressionDefinitionLogicTypeSelector.tsx +++ b/packages/boxed-expression-component/src/expressions/ExpressionDefinitionRoot/ExpressionDefinitionLogicTypeSelector.tsx @@ -93,7 +93,7 @@ export function ExpressionDefinitionLogicTypeSelector({ [isNested] ); const { i18n } = useBoxedExpressionEditorI18n(); - const { setCurrentlyOpenContextMenu, widthsById, scrollableParentRef } = useBoxedExpressionEditor(); + const { setCurrentlyOpenContextMenu, widthsById, scrollableParentRef, isReadOnly } = useBoxedExpressionEditor(); const [isOpen, setOpen] = useState(false); const [position, setPosition] = useState({ x: 0, y: 0 }); @@ -212,8 +212,8 @@ export function ExpressionDefinitionLogicTypeSelector({ const selectExpressionMenuContainerRef = React.useRef(null); const shouldRenderSelectExpressionContextMenu = useMemo(() => { - return isOpen && !expression; - }, [isOpen, expression]); + return !isReadOnly && isOpen && !expression; + }, [isReadOnly, isOpen, expression]); const hide = useCallback((e: MouseEvent) => { if (e.target != selectExpressionMenuContainerRef.current) { @@ -412,7 +412,7 @@ export function ExpressionDefinitionLogicTypeSelector({ const contextMenuItems = useMemo(() => { return ( - {isResetSupported && ( + {!isReadOnly && isResetSupported && ( <> {i18n.terms.copy} - {isResetSupported && ( + {!isReadOnly && isResetSupported && ( )} - - -
- } - > - {i18n.terms.paste} - + + {!isReadOnly && ( + + +
+ } + > + {i18n.terms.paste} + + )} ); }, [ @@ -472,6 +475,7 @@ export function ExpressionDefinitionLogicTypeSelector({ pasteExpression, resetLogicType, isResetSupported, + isReadOnly, ]); const [isDropdownOpen, setDropdownOpen] = useState(false); diff --git a/packages/boxed-expression-component/src/expressions/FilterExpression/FilterExpressionComponent.tsx b/packages/boxed-expression-component/src/expressions/FilterExpression/FilterExpressionComponent.tsx index 0a3d0e908f5..0ab60b7b5e8 100644 --- a/packages/boxed-expression-component/src/expressions/FilterExpression/FilterExpressionComponent.tsx +++ b/packages/boxed-expression-component/src/expressions/FilterExpression/FilterExpressionComponent.tsx @@ -58,7 +58,7 @@ export function FilterExpressionComponent({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression } = useBoxedExpressionEditorDispatch(); const beeTableColumns = useMemo[]>(() => { @@ -167,6 +167,8 @@ export function FilterExpressionComponent({ return ( + isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} onColumnResizingWidthChange={onColumnResizingWidthChange} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={filterExpression["@_id"]} diff --git a/packages/boxed-expression-component/src/expressions/FunctionExpression/FeelFunctionExpression.tsx b/packages/boxed-expression-component/src/expressions/FunctionExpression/FeelFunctionExpression.tsx index 53cab86a1b6..2fa6dfb2bbe 100644 --- a/packages/boxed-expression-component/src/expressions/FunctionExpression/FeelFunctionExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/FunctionExpression/FeelFunctionExpression.tsx @@ -71,10 +71,13 @@ export function FeelFunctionExpression({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); - const parametersColumnHeader = useFunctionExpressionParametersColumnHeader(functionExpression.formalParameter); + const parametersColumnHeader = useFunctionExpressionParametersColumnHeader( + functionExpression.formalParameter, + isReadOnly ?? false + ); const parametersId = useMemo( () => (functionExpression["@_id"] ? `${functionExpression["@_id"]}-parameters` : "parameters"), [functionExpression] @@ -204,6 +207,7 @@ export function FeelFunctionExpression({
+ isReadOnly={isReadOnly} onColumnResizingWidthChange={onColumnResizingWidthChange} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} operationConfig={beeTableOperationConfig} diff --git a/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionExpression.tsx b/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionExpression.tsx index 41d8fae4a23..a7d5fa29bf2 100644 --- a/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionExpression.tsx @@ -73,6 +73,7 @@ export function FunctionExpression({ export function useFunctionExpressionControllerCell(functionKind: Normalized) { const { setExpression } = useBoxedExpressionEditorDispatch(); + const { isReadOnly } = useBoxedExpressionEditor(); const onFunctionKindSelect = useCallback( (kind: Normalized) => { @@ -134,50 +135,65 @@ export function useFunctionExpressionControllerCell(functionKind: Normalized , - [functionKind, onFunctionKindSelect] + () => ( + + ), + [functionKind, isReadOnly, onFunctionKindSelect] ); } export function useFunctionExpressionParametersColumnHeader( - formalParameters: Normalized + formalParameters: Normalized, + isReadOnly: boolean ) { const { i18n } = useBoxedExpressionEditorI18n(); const { editorRef } = useBoxedExpressionEditor(); - return useMemo( + const expressionParametersContent = useMemo( () => ( +
+

+ {_.isEmpty(formalParameters) ? ( + i18n.editParameters + ) : ( + <> + {"("} + {(formalParameters ?? []).map((parameter, i) => ( + + {parameter["@_name"]} + {": "} + + ({parameter["@_typeRef"] ?? DmnBuiltInDataType.Undefined}) + + {i < (formalParameters ?? []).length - 1 && {", "}} + + ))} + {")"} + + )} +

+
+ ), + [formalParameters, i18n.editParameters] + ); + + return useMemo(() => { + return isReadOnly ? ( + expressionParametersContent + ) : ( editorRef.current!} className="parameters-editor-popover" minWidth="400px" body={} > -
-

- {_.isEmpty(formalParameters) ? ( - i18n.editParameters - ) : ( - <> - {"("} - {(formalParameters ?? []).map((parameter, i) => ( - - {parameter["@_name"]} - {": "} - - ({parameter["@_typeRef"] ?? DmnBuiltInDataType.Undefined}) - - {i < (formalParameters ?? []).length - 1 && {", "}} - - ))} - {")"} - - )} -

-
+ {expressionParametersContent}
- ), - [formalParameters, i18n.editParameters, editorRef] - ); + ); + }, [isReadOnly, expressionParametersContent, formalParameters, editorRef]); } diff --git a/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionKindSelector.tsx b/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionKindSelector.tsx index 585020e7b5e..9d60253a627 100644 --- a/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionKindSelector.tsx +++ b/packages/boxed-expression-component/src/expressions/FunctionExpression/FunctionKindSelector.tsx @@ -21,7 +21,7 @@ import { PopoverMenu } from "../../contextMenu/PopoverMenu"; import { PopoverPosition } from "@patternfly/react-core/dist/js/components/Popover"; import _ from "lodash"; import * as React from "react"; -import { useCallback } from "react"; +import { useCallback, useMemo } from "react"; import { useBoxedExpressionEditor } from "../../BoxedExpressionEditorContext"; import { MenuItemWithHelp } from "../../contextMenu/MenuWithHelp"; import { Menu } from "@patternfly/react-core/dist/js/components/Menu/Menu"; @@ -35,11 +35,14 @@ export interface FunctionKindSelectorProps { selectedFunctionKind: DMN15__tFunctionKind; /** Callback invoked when function kind selection changes */ onFunctionKindSelect: (functionKind: DMN15__tFunctionKind) => void; + /** If should only display function kind */ + isReadOnly?: boolean; } export const FunctionKindSelector: React.FunctionComponent = ({ selectedFunctionKind, onFunctionKindSelect, + isReadOnly, }) => { const { editorRef } = useBoxedExpressionEditor(); @@ -70,6 +73,15 @@ export const FunctionKindSelector: React.FunctionComponent (previousHelp !== help ? help : "")); }, []); + const displaySelectedFunctionKind = useMemo( + () =>
{_.first(selectedFunctionKind)}
, + [selectedFunctionKind] + ); + + if (isReadOnly) { + return displaySelectedFunctionKind; + } + return ( setVisibleHelp("")} @@ -95,7 +107,7 @@ export const FunctionKindSelector: React.FunctionComponent )} > -
{_.first(selectedFunctionKind)}
+ {displaySelectedFunctionKind}
); }; diff --git a/packages/boxed-expression-component/src/expressions/FunctionExpression/JavaFunctionExpression.tsx b/packages/boxed-expression-component/src/expressions/FunctionExpression/JavaFunctionExpression.tsx index a06db0ec962..5f2b882f6a8 100644 --- a/packages/boxed-expression-component/src/expressions/FunctionExpression/JavaFunctionExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/FunctionExpression/JavaFunctionExpression.tsx @@ -75,7 +75,7 @@ export function JavaFunctionExpression({ isNested: boolean; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); const getClassContextEntry = useCallback((c: Normalized) => { @@ -120,7 +120,10 @@ export function JavaFunctionExpression({ [getClassAndMethodNamesWidth, id, setWidthsById] ); - const parametersColumnHeader = useFunctionExpressionParametersColumnHeader(functionExpression.formalParameter); + const parametersColumnHeader = useFunctionExpressionParametersColumnHeader( + functionExpression.formalParameter, + isReadOnly ?? false + ); const parametersId = useMemo( () => (functionExpression["@_id"] ? `${functionExpression["@_id"]}-parameters` : "parameters"), [functionExpression] @@ -387,6 +390,7 @@ export function JavaFunctionExpression({
forwardRef={beeTableRef} + isReadOnly={isReadOnly} onColumnResizingWidthChange={onColumnResizingWidthChange} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} operationConfig={beeTableOperationConfig} diff --git a/packages/boxed-expression-component/src/expressions/FunctionExpression/PmmlFunctionExpression.tsx b/packages/boxed-expression-component/src/expressions/FunctionExpression/PmmlFunctionExpression.tsx index 1d5c9770eb5..4534c9e258d 100644 --- a/packages/boxed-expression-component/src/expressions/FunctionExpression/PmmlFunctionExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/FunctionExpression/PmmlFunctionExpression.tsx @@ -75,10 +75,13 @@ export function PmmlFunctionExpression({ isNested: boolean; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId } = useBoxedExpressionEditor(); + const { expressionHolderId, isReadOnly } = useBoxedExpressionEditor(); const { setExpression } = useBoxedExpressionEditorDispatch(); - const parametersColumnHeader = useFunctionExpressionParametersColumnHeader(functionExpression.formalParameter); + const parametersColumnHeader = useFunctionExpressionParametersColumnHeader( + functionExpression.formalParameter, + isReadOnly ?? false + ); const parametersId = useMemo( () => (functionExpression["@_id"] ? `${functionExpression["@_id"]}-parameters` : "parameters"), [functionExpression] @@ -264,6 +267,7 @@ export function PmmlFunctionExpression({
forwardRef={beeTableRef} + isReadOnly={isReadOnly} onColumnResizingWidthChange={onColumnResizingWidthChange} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} operationConfig={beeTableOperationConfig} diff --git a/packages/boxed-expression-component/src/expressions/InvocationExpression/InvocationExpression.tsx b/packages/boxed-expression-component/src/expressions/InvocationExpression/InvocationExpression.tsx index eee61d6a6f2..f66e3d61a97 100644 --- a/packages/boxed-expression-component/src/expressions/InvocationExpression/InvocationExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/InvocationExpression/InvocationExpression.tsx @@ -69,7 +69,7 @@ export function InvocationExpression({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); const id = invocationExpression["@_id"]!; @@ -455,6 +455,8 @@ export function InvocationExpression({
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={id} headerLevelCountForAppendingRowIndexColumn={2} diff --git a/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionComponent.tsx b/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionComponent.tsx index be7e22911a1..9791885ccf6 100644 --- a/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionComponent.tsx +++ b/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionComponent.tsx @@ -68,7 +68,7 @@ export function IteratorExpressionComponent({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const { setExpression } = useBoxedExpressionEditorDispatch(); const id = expression["@_id"]!; @@ -310,6 +310,8 @@ export function IteratorExpressionComponent({
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} forwardRef={beeTableRef} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={id} diff --git a/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionVariableCell.tsx b/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionVariableCell.tsx index 6caa6dcd680..8bf8add74bb 100644 --- a/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionVariableCell.tsx +++ b/packages/boxed-expression-component/src/expressions/IteratorExpression/IteratorExpressionVariableCell.tsx @@ -43,7 +43,7 @@ export function IteratorExpressionVariableCell({ }: IteratorExpressionVariableCellProps) { const { setExpression } = useBoxedExpressionEditorDispatch(); const { isActive } = useBeeTableSelectableCellRef(rowIndex ?? 0, columnIndex ?? 0, undefined); - const { beeGwtService } = useBoxedExpressionEditor(); + const { beeGwtService, isReadOnly } = useBoxedExpressionEditor(); // Selecting the context result cell should be the parent data type useEffect(() => { @@ -78,6 +78,7 @@ export function IteratorExpressionVariableCell({ setActiveCellEditing={(value) => { beeTableRef.current?.setActiveCellEditing(value); }} + isReadOnly={isReadOnly ?? false} />
); diff --git a/packages/boxed-expression-component/src/expressions/ListExpression/ListExpression.tsx b/packages/boxed-expression-component/src/expressions/ListExpression/ListExpression.tsx index 8806d19e2b8..f352159ba26 100644 --- a/packages/boxed-expression-component/src/expressions/ListExpression/ListExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/ListExpression/ListExpression.tsx @@ -59,7 +59,7 @@ export function ListExpression({ }) { const { i18n } = useBoxedExpressionEditorI18n(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); /// ////////////////////////////////////////////////////// /// ///////////// RESIZING WIDTHS //////////////////////// @@ -278,6 +278,8 @@ export function ListExpression({
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} onColumnResizingWidthChange={onColumnResizingWidthChange} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} tableId={listExpression["@_id"]} diff --git a/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx b/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx index 06114f95e7e..10458c7e1be 100644 --- a/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/LiteralExpression/LiteralExpression.tsx @@ -53,7 +53,7 @@ export function LiteralExpression({ isNested: boolean; }) { const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); - const { expressionHolderId, widthsById } = useBoxedExpressionEditor(); + const { expressionHolderId, widthsById, isReadOnly } = useBoxedExpressionEditor(); const id = literalExpression["@_id"]!; @@ -214,6 +214,8 @@ export function LiteralExpression({
{`=`}
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER} forwardRef={beeTableRef} getRowKey={getRowKey} diff --git a/packages/boxed-expression-component/src/expressions/RelationExpression/RelationExpression.tsx b/packages/boxed-expression-component/src/expressions/RelationExpression/RelationExpression.tsx index 7f3271f5319..68d81dcbaed 100644 --- a/packages/boxed-expression-component/src/expressions/RelationExpression/RelationExpression.tsx +++ b/packages/boxed-expression-component/src/expressions/RelationExpression/RelationExpression.tsx @@ -60,7 +60,7 @@ export function RelationExpression({ parentElementId: string; }) { const { i18n } = useBoxedExpressionEditorI18n(); - const { widthsById, expressionHolderId } = useBoxedExpressionEditor(); + const { widthsById, expressionHolderId, isReadOnly } = useBoxedExpressionEditor(); const { setExpression, setWidthsById } = useBoxedExpressionEditorDispatch(); const id = relationExpression["@_id"]!; @@ -495,6 +495,8 @@ export function RelationExpression({ return (
+ isReadOnly={isReadOnly} + isEditableHeader={!isReadOnly} resizerStopBehavior={ isPivoting ? ResizerStopBehavior.SET_WIDTH_ALWAYS : ResizerStopBehavior.SET_WIDTH_WHEN_SMALLER } diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTable.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTable.tsx index f20cf71d4f4..6bd456c9f80 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTable.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTable.tsx @@ -445,7 +445,7 @@ export function BeeTableInternal({ // DELETE - if (NavigationKeysUtils.isDelete(e.key) || NavigationKeysUtils.isBackspace(e.key)) { + if (!isReadOnly && (NavigationKeysUtils.isDelete(e.key) || NavigationKeysUtils.isBackspace(e.key))) { e.stopPropagation(); e.preventDefault(); erase(); @@ -466,17 +466,18 @@ export function BeeTableInternal({ e.preventDefault(); copy(); } - if (!e.shiftKey && complementaryKey && e.key.toLowerCase() === "x") { - e.stopPropagation(); - e.preventDefault(); - cut(); - } - if (!e.shiftKey && complementaryKey && e.key.toLowerCase() === "v") { - e.stopPropagation(); - e.preventDefault(); - paste(); + if (!isReadOnly) { + if (!e.shiftKey && complementaryKey && e.key.toLowerCase() === "x") { + e.stopPropagation(); + e.preventDefault(); + cut(); + } + if (!e.shiftKey && complementaryKey && e.key.toLowerCase() === "v") { + e.stopPropagation(); + e.preventDefault(); + paste(); + } } - // SELECT ALL if (!e.shiftKey && complementaryKey && e.key.toLowerCase() === "a") { e.stopPropagation(); @@ -516,6 +517,7 @@ export function BeeTableInternal({ copy, cut, paste, + isReadOnly, ] ); @@ -638,12 +640,13 @@ export function BeeTableInternal({ onHeaderKeyUp={onHeaderKeyUp} lastColumnMinWidth={lastColumnMinWidth} setActiveCellEditing={setActiveCellEditing} + isReadOnly={isReadOnly} /> rowWrapper={rowWrapper} resizerStopBehavior={resizerStopBehavior} shouldRenderRowIndexColumn={shouldRenderRowIndexColumn} - shouldShowRowsInlineControls={shouldShowRowsInlineControls} + shouldShowRowsInlineControls={!isReadOnly && shouldShowRowsInlineControls} getColumnKey={onGetColumnKey} getRowKey={onGetRowKey} headerVisibility={headerVisibility} @@ -653,6 +656,7 @@ export function BeeTableInternal({ onDataCellClick={onDataCellClick} onDataCellKeyUp={onDataCellKeyUp} lastColumnMinWidth={lastColumnMinWidth} + isReadOnly={isReadOnly} /> ({ onColumnAdded={onColumnAdded2} onColumnDeleted={onColumnDeleted2} onRowReset={onRowReset} + isReadOnly={isReadOnly} />
); diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableBody.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableBody.tsx index 8a70da00d6d..a704f2c7c32 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableBody.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableBody.tsx @@ -53,6 +53,8 @@ export interface BeeTableBodyProps { lastColumnMinWidth?: number; rowWrapper?: React.FunctionComponent>; + + isReadOnly: boolean; } export function BeeTableBody({ @@ -69,6 +71,7 @@ export function BeeTableBody({ resizerStopBehavior, lastColumnMinWidth, rowWrapper, + isReadOnly, }: BeeTableBodyProps) { const renderRow = useCallback( (row: ReactTable.Row, rowIndex: number) => { @@ -100,6 +103,7 @@ export function BeeTableBody({ lastColumnMinWidth={ cellIndex === reactTableInstance.allColumns.length - 1 ? lastColumnMinWidth : undefined } + isReadOnly={isReadOnly} /> )} @@ -136,6 +140,7 @@ export function BeeTableBody({ onDataCellKeyUp, onRowAdded, lastColumnMinWidth, + isReadOnly, ] ); @@ -168,6 +173,7 @@ export function BeeTableBody({ isLastColumn={false} isEmptyCell={true} resizerStopBehavior={resizerStopBehavior} + isReadOnly={isReadOnly} /> )} @@ -188,6 +194,7 @@ export function BeeTableBody({ isEmptyCell={false} resizerStopBehavior={resizerStopBehavior} lastColumnMinWidth={columnIndex === additionalRow.length - 1 ? lastColumnMinWidth : undefined} + isReadOnly={isReadOnly} > {elem} diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableContextMenuHandler.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableContextMenuHandler.tsx index 0e9909320f5..ed742cf2927 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableContextMenuHandler.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableContextMenuHandler.tsx @@ -36,6 +36,7 @@ import { BeeTableContextMenuAllowedOperationsConditions, BeeTableOperation, BeeTableOperationConfig, + BeeTableOperationGroup, InsertRowColumnsDirection, } from "../../api"; import { useCustomContextMenuHandler } from "../../contextMenu"; @@ -75,6 +76,7 @@ export interface BeeTableContextMenuHandlerProps { insertDirection: InsertRowColumnsDirection; }) => void; onColumnDeleted?: (args: { columnIndex: number; groupType: string | undefined }) => void; + isReadOnly: boolean; } /** The maximum numbers of rows or columns that can be inserted from the Insert menu. */ @@ -94,6 +96,7 @@ export function BeeTableContextMenuHandler({ onRowReset, onColumnAdded, onColumnDeleted, + isReadOnly, }: BeeTableContextMenuHandlerProps) { const { i18n } = useBoxedExpressionEditorI18n(); const { setCurrentlyOpenContextMenu } = useBoxedExpressionEditor(); @@ -209,20 +212,6 @@ export function BeeTableContextMenuHandler({ } }, [activeCell, columns]); - const operationGroups = useMemo(() => { - if (!activeCell) { - return []; - } - if (_.isArray(operationConfig)) { - return operationConfig; - } - return (operationConfig ?? {})[column?.groupType || ""]; - }, [activeCell, column?.groupType, operationConfig]); - - const allOperations = useMemo(() => { - return operationGroups.flatMap(({ items }) => items); - }, [operationGroups]); - const operationLabel = useCallback( (operation: BeeTableOperation) => { switch (operation) { @@ -261,6 +250,33 @@ export function BeeTableContextMenuHandler({ [i18n] ); + const operationGroups = useMemo(() => { + if (!activeCell) { + return []; + } + if (isReadOnly) { + const operationGroup: BeeTableOperationGroup = { + group: "", + items: [ + { + name: operationLabel(BeeTableOperation.SelectionCopy), + type: BeeTableOperation.SelectionCopy, + }, + ], + }; + + return [operationGroup]; + } + if (_.isArray(operationConfig)) { + return operationConfig; + } + return (operationConfig ?? {})[column?.groupType || ""]; + }, [activeCell, column?.groupType, isReadOnly, operationConfig, operationLabel]); + + const allOperations = useMemo(() => { + return operationGroups.flatMap(({ items }) => items); + }, [operationGroups]); + const operationIcon = useCallback((operation: BeeTableOperation) => { switch (operation) { case BeeTableOperation.ColumnInsertLeft: diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableEditableCellContent.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableEditableCellContent.tsx index a5114819883..372f2578249 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableEditableCellContent.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableEditableCellContent.tsx @@ -188,12 +188,12 @@ export function BeeTableEditableCellContent({ } // This is used to start editing a cell without being in edit mode. - if (isActive && !isEditing && isEditModeTriggeringKey(e)) { + if (!isReadOnly && isActive && !isEditing && isEditModeTriggeringKey(e)) { setEditingValue(""); setEditing(true); } }, - [isActive, isEditing, setEditing] + [isActive, isEditing, isReadOnly, setEditing] ); return ( diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableHeader.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableHeader.tsx index 9a9856aa01a..6b8da177426 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableHeader.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableHeader.tsx @@ -82,6 +82,8 @@ export interface BeeTableHeaderProps { resizerStopBehavior: ResizerStopBehavior; lastColumnMinWidth?: number; setActiveCellEditing: (isEditing: boolean) => void; + + isReadOnly: boolean; } export function BeeTableHeader({ @@ -100,6 +102,7 @@ export function BeeTableHeader({ resizerStopBehavior, lastColumnMinWidth, setActiveCellEditing, + isReadOnly, }: BeeTableHeaderProps) { const getColumnLabel: (groupType: string) => string | undefined = useCallback( (groupType) => { @@ -154,7 +157,8 @@ export function BeeTableHeader({ className={classNames} groupType={column.groupType} isLastLevelColumn={(column.columns?.length ?? 0) <= 0} - shouldShowColumnsInlineControls={shouldShowRowsInlineControls} + shouldShowColumnsInlineControls={!isReadOnly && shouldShowRowsInlineControls} + isReadOnly={isReadOnly} >
{column.label} @@ -162,7 +166,7 @@ export function BeeTableHeader({ ); }, - [getColumnKey, shouldShowRowsInlineControls] + [getColumnKey, isReadOnly, shouldShowRowsInlineControls] ); const renderColumn = useCallback< @@ -192,6 +196,7 @@ export function BeeTableHeader({ rowSpan={rowSpan} shouldRenderRowIndexColumn={shouldRenderRowIndexColumn} isEditableHeader={isEditableHeader} + isReadOnly={isReadOnly} shouldShowColumnsInlineControls={shouldShowRowsInlineControls} getColumnKey={getColumnKey} getColumnLabel={getColumnLabel} @@ -230,7 +235,7 @@ export function BeeTableHeader({ > {column.headerCellElement ? ( column.headerCellElement - ) : column.isInlineEditable ? ( + ) : column.isInlineEditable && !isReadOnly ? ( ({ columnIndex )({ "@_label": value, "@_typeRef": column.dataType }); }} + isReadOnly={isReadOnly} /> ) : (

({ lastColumnMinWidth, setActiveCellEditing, onExpressionHeaderUpdated, + isReadOnly, ] ); diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableTd.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableTd.tsx index 30b6248c46d..b9a0a71da04 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableTd.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableTd.tsx @@ -48,6 +48,7 @@ export interface BeeTableTdProps { lastColumnMinWidth?: number; onDataCellClick?: (columnID: string) => void; onDataCellKeyUp?: (columnID: string) => void; + isReadOnly: boolean; } export type HoverInfo = @@ -71,6 +72,7 @@ export function BeeTableTd({ lastColumnMinWidth, onDataCellClick, onDataCellKeyUp, + isReadOnly, }: BeeTableTdProps) { const [isResizing, setResizing] = useState(false); const [hoverInfo, setHoverInfo] = useState({ isHovered: false }); @@ -227,9 +229,9 @@ export function BeeTableTd({ ({ <> {tdContent} - {shouldRenderResizer && ( + {!isReadOnly && shouldRenderResizer && ( ({ )} - {hoverInfo.isHovered && shouldRenderInlineButtons && onRowAdded && shouldShowRowsInlineControls && ( -

+ {!isReadOnly && + hoverInfo.isHovered && + shouldRenderInlineButtons && + onRowAdded && + shouldShowRowsInlineControls && (
e.stopPropagation()} - onDoubleClick={(e) => e.stopPropagation()} - onClick={onAddRowButtonClick} - className={"add-row-button"} - style={addRowButtonStyle} + style={{ + display: "flex", + justifyContent: "center", + }} > - +
e.stopPropagation()} + onDoubleClick={(e) => e.stopPropagation()} + onClick={onAddRowButtonClick} + className={"add-row-button"} + style={addRowButtonStyle} + > + +
-
- )} + )} ); diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableTdForAdditionalRow.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableTdForAdditionalRow.tsx index 1e772f28e36..db862f1644b 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableTdForAdditionalRow.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableTdForAdditionalRow.tsx @@ -35,6 +35,7 @@ export interface BeeTableTdForAdditionalRowProps { resizerStopBehavior: ResizerStopBehavior; column: ReactTable.ColumnInstance; lastColumnMinWidth?: number; + isReadOnly: boolean; } export function BeeTableTdForAdditionalRow({ @@ -46,6 +47,7 @@ export function BeeTableTdForAdditionalRow({ isLastColumn, resizerStopBehavior, lastColumnMinWidth, + isReadOnly, }: BeeTableTdForAdditionalRowProps) { const tdRef = useRef(null); @@ -81,7 +83,7 @@ export function BeeTableTdForAdditionalRow({ > {children} - {!column.isWidthConstant && ( + {!column.isWidthConstant && !isReadOnly && ( { column: ReactTable.ColumnInstance; shouldShowColumnsInlineControls: boolean; forwardRef?: React.RefObject; + isReadOnly: boolean; } export type HoverInfo = @@ -78,6 +79,7 @@ export function BeeTableTh({ column, isLastLevelColumn, shouldShowColumnsInlineControls: shouldShowRowsInlineControls, + isReadOnly, }: React.PropsWithChildren>) { const [hoverInfo, setHoverInfo] = useState({ isHovered: false }); @@ -193,15 +195,15 @@ export function BeeTableTh({ style={{ ...thProps.style, display: "table-cell" }} ref={thRef} onMouseDown={onMouseDown} - onDoubleClick={onDoubleClick} + onDoubleClick={isReadOnly ? undefined : onDoubleClick} onClick={onClick} - onKeyUp={onHeaderKeyUp} + onKeyUp={isReadOnly ? undefined : onHeaderKeyUp} className={`${className} ${cssClasses}`} tabIndex={-1} data-testid={`kie-tools--bee--table-header-${column.groupType ?? "undefined"}`} > {children} - {hoverInfo.isHovered && onColumnAdded && isLastLevelColumn && shouldShowRowsInlineControls && ( + {!isReadOnly && hoverInfo.isHovered && onColumnAdded && isLastLevelColumn && shouldShowRowsInlineControls && (
e.stopPropagation()} onDoubleClick={(e) => e.stopPropagation()} diff --git a/packages/boxed-expression-component/src/table/BeeTable/BeeTableThResizable.tsx b/packages/boxed-expression-component/src/table/BeeTable/BeeTableThResizable.tsx index c7cbeff5fb1..b74592eddb2 100644 --- a/packages/boxed-expression-component/src/table/BeeTable/BeeTableThResizable.tsx +++ b/packages/boxed-expression-component/src/table/BeeTable/BeeTableThResizable.tsx @@ -55,6 +55,7 @@ export interface BeeTableThResizableProps { onGetWidthToFitData: () => number; forwardRef?: React.RefObject; shouldRenderRowIndexColumn: boolean; + isReadOnly: boolean; } export function BeeTableThResizable({ @@ -76,6 +77,7 @@ export function BeeTableThResizable({ lastColumnMinWidth, onGetWidthToFitData, forwardRef, + isReadOnly, }: BeeTableThResizableProps) { const columnKey = useMemo(() => getColumnKey(column), [column, getColumnKey]); @@ -178,6 +180,7 @@ export function BeeTableThResizable({ forwardRef={forwardRef} className={cssClasses} + isReadOnly={isReadOnly} thProps={{ ...column.getHeaderProps(), style: { @@ -204,7 +207,7 @@ export function BeeTableThResizable({ column={column} >
- {column.dataType && isEditableHeader ? ( + {!isReadOnly && column.dataType && isEditableHeader ? ( ({ )}
{/* resizingWidth. I.e., Exact-sized columns. */} - {!column.isWidthConstant && + {!isReadOnly && + !column.isWidthConstant && column.width && resizingWidth && (hoverInfo.isHovered || (resizingWidth?.isPivoting && isResizing)) && ( @@ -236,7 +240,8 @@ export function BeeTableThResizable({ {/* fillingResizingWidth. I.e., Flexible or parent columns. */} {getFlatListOfSubColumns(column).some((c) => !(c.isWidthConstant ?? false)) && (isFlexbileColumn(column) || isParentColumn(column)) && - (hoverInfo.isHovered || (fillingResizingWidth?.isPivoting && isResizing)) && ( + (hoverInfo.isHovered || (fillingResizingWidth?.isPivoting && isResizing)) && + !isReadOnly && ( void; rowIndex: number; columnIndex: number; + isReadOnly: boolean; } export const InlineEditableTextInput: React.FunctionComponent = ({ @@ -38,6 +39,7 @@ export const InlineEditableTextInput: React.FunctionComponent { const { i18n } = useBoxedExpressionEditorI18n(); const inputRef = useRef(null); @@ -91,11 +93,11 @@ export const InlineEditableTextInput: React.FunctionComponent {value || i18n.enterText}

diff --git a/packages/boxed-expression-component/stories/boxedExpressionStoriesWrapper.tsx b/packages/boxed-expression-component/stories/boxedExpressionStoriesWrapper.tsx index 191d112f5cb..92276209843 100644 --- a/packages/boxed-expression-component/stories/boxedExpressionStoriesWrapper.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressionStoriesWrapper.tsx @@ -181,6 +181,7 @@ export function BoxedExpressionEditorStory(props?: Partial BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "conditional", + "@_id": generateUuid(), + "@_label": "Expression Name", + if: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + then: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + else: { + "@_id": generateUuid(), + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + }, + }, + }, + isReadOnly: true, + }, +}; + export const MonthlyFee: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Context/Context.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Context/Context.stories.tsx index ce061fe14e8..286796a7523 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Context/Context.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Context/Context.stories.tsx @@ -61,6 +61,38 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "context", + "@_id": "_35255561-88FA-4A78-9C3F-61855213EE0F", + "@_label": "Expression Name", + "@_typeRef": undefined, + contextEntry: [ + { + "@_id": generateUuid(), + variable: { + "@_id": generateUuid(), + "@_name": "ContextEntry-1", + "@_typeRef": undefined, + }, + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "readonly text" }, + }, + }, + ], + }, + isResetSupportedOnRootExpression: true, + widthsById: { "_35255561-88FA-4A78-9C3F-61855213EE0F": [CONTEXT_ENTRY_VARIABLE_MIN_WIDTH] }, + isReadOnly: true, + }, +}; + export const InstallmentCalculation: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/DecisionTable/DecisionTable.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/DecisionTable/DecisionTable.stories.tsx index cb1d5ed7715..0a8d78dfc98 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/DecisionTable/DecisionTable.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/DecisionTable/DecisionTable.stories.tsx @@ -103,6 +103,66 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "decisionTable", + "@_id": "_92929AE6-3BB5-4217-B66E-07614680971D", + "@_label": "Expression Name", + "@_hitPolicy": "UNIQUE", + input: [ + { + "@_id": generateUuid(), + inputExpression: { + "@_id": generateUuid(), + text: { __$$text: "input-1" }, + "@_typeRef": undefined, + }, + }, + ], + output: [ + { + "@_id": generateUuid(), + "@_label": "output-1", + "@_typeRef": undefined, + }, + ], + annotation: [ + { + "@_name": "Annotations", + }, + ], + rule: [ + { + "@_id": generateUuid(), + inputEntry: [{ "@_id": generateUuid(), text: { __$$text: DECISION_TABLE_INPUT_DEFAULT_VALUE } }], + outputEntry: [ + { + "@_id": generateUuid(), + text: { __$$text: DECISION_TABLE_OUTPUT_DEFAULT_VALUE }, + }, + ], + annotationEntry: [{ text: { __$$text: "// Your annotations here" } }], + }, + ], + }, + widthsById: { + "_92929AE6-3BB5-4217-B66E-07614680971D": [ + BEE_TABLE_ROW_INDEX_COLUMN_WIDTH, + DECISION_TABLE_INPUT_DEFAULT_WIDTH, + DECISION_TABLE_OUTPUT_DEFAULT_WIDTH, + DECISION_TABLE_ANNOTATION_DEFAULT_WIDTH, + ], + }, + + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const Discount: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Every/Every.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Every/Every.stories.tsx index aacf921ce5c..4af9b469900 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Every/Every.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Every/Every.stories.tsx @@ -54,3 +54,34 @@ export const Base: Story = { }, }, }; + +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "every", + "@_id": generateUuid(), + "@_label": "Expression Name", + in: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "['read', 'only']" }, + }, + }, + satisfies: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "readOnlyTest(itemReadOnly)" }, + }, + }, + "@_iteratorVariable": "itemReadOnly", + }, + isReadOnly: true, + }, +}; diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Filter/Filter.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Filter/Filter.stories.tsx index 7174f71cbf0..655600513c9 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Filter/Filter.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Filter/Filter.stories.tsx @@ -55,6 +55,36 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "filter", + "@_id": generateUuid(), + "@_label": "Expression Name", + in: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "['read', 'only']" }, + }, + }, + match: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "readOnlyTest(itemReadOnly)" }, + }, + }, + }, + isReadOnly: true, + }, +}; + export const RebookedFlights: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/For/For.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/For/For.stories.tsx index 9a6f56b1839..898f34f8d3d 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/For/For.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/For/For.stories.tsx @@ -54,3 +54,34 @@ export const Base: Story = { }, }, }; + +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "for", + "@_id": generateUuid(), + "@_label": "Expression Name", + in: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "['read', 'only']" }, + }, + }, + return: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "readOnlyTest(itemReadOnly)" }, + }, + }, + "@_iteratorVariable": "itemReadOnly", + }, + isReadOnly: true, + }, +}; diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Function/Function.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Function/Function.stories.tsx index b7cf246f555..466041e2409 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Function/Function.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Function/Function.stories.tsx @@ -48,6 +48,22 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "functionDefinition", + "@_id": generateUuid(), + "@_label": "Expression Name", + "@_kind": BoxedFunctionKind.Feel, + }, + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const InstallmentCalculation: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Invocation/Invocation.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Invocation/Invocation.stories.tsx index 612d913559f..7a83ffae49b 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Invocation/Invocation.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Invocation/Invocation.stories.tsx @@ -62,6 +62,39 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "invocation", + "@_id": generateUuid(), + "@_label": "Expression Name", + binding: [ + { + parameter: { + "@_id": generateUuid(), + "@_name": INVOCATION_EXPRESSION_DEFAULT_PARAMETER_NAME, + }, + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "read only" }, + }, + }, + ], + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "FUNCTION NAME" }, + }, + }, + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const MonthlyInstallment: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/List/List.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/List/List.stories.tsx index 2e86ea6cadc..c19f64c69c2 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/List/List.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/List/List.stories.tsx @@ -48,6 +48,22 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "list", + "@_id": generateUuid(), + "@_label": "Expression Name", + expression: [{ __$$element: "literalExpression", "@_id": generateUuid(), text: { __$$text: "read only" } }], + }, + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const AgeGroups: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Literal/Literal.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Literal/Literal.stories.tsx index 54fb6249b35..1e30af74482 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Literal/Literal.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Literal/Literal.stories.tsx @@ -47,6 +47,21 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "literalExpression", + "@_id": generateUuid(), + "@_label": "Expression Name", + }, + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const CanDrive: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Relation/Relation.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Relation/Relation.stories.tsx index 540bf330536..c1b2627cba6 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Relation/Relation.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Relation/Relation.stories.tsx @@ -66,6 +66,39 @@ export const Base: Story = { }, }; +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "relation", + "@_id": generateUuid(), + "@_label": "Expression Name", + column: [ + { + "@_id": generateUuid(), + "@_name": "column-1", + }, + ], + row: [ + { + "@_id": generateUuid(), + expression: [ + { + __$$element: "literalExpression", + "@_id": generateUuid(), + text: { __$$text: RELATION_EXPRESSION_DEFAULT_VALUE }, + }, + ], + }, + ], + }, + isResetSupportedOnRootExpression: true, + isReadOnly: true, + }, +}; + export const People: Story = { render: (args) => BoxedExpressionEditorStory(), parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, diff --git a/packages/boxed-expression-component/stories/boxedExpressions/Some/Some.stories.tsx b/packages/boxed-expression-component/stories/boxedExpressions/Some/Some.stories.tsx index 7c78217b389..914a196958d 100644 --- a/packages/boxed-expression-component/stories/boxedExpressions/Some/Some.stories.tsx +++ b/packages/boxed-expression-component/stories/boxedExpressions/Some/Some.stories.tsx @@ -54,3 +54,34 @@ export const Base: Story = { }, }, }; + +export const Readonly: Story = { + render: (args) => BoxedExpressionEditorStory(), + parameters: { exclude: ["dataTypes", "beeGwtService", "pmmlDocuments"] }, + args: { + ...EmptyExpression.args, + expression: { + __$$element: "some", + "@_id": generateUuid(), + "@_label": "Expression Name", + in: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "['read', 'only']" }, + }, + }, + satisfies: { + "@_id": generateUuid(), + expression: { + "@_id": generateUuid(), + __$$element: "literalExpression", + text: { __$$text: "readOnlyTest(itemReadOnly)" }, + }, + }, + "@_iteratorVariable": "itemReadOnly", + }, + isReadOnly: true, + }, +}; diff --git a/packages/boxed-expression-component/stories/dev/WebApp.stories.tsx b/packages/boxed-expression-component/stories/dev/WebApp.stories.tsx index fa98da41221..575019f1b54 100644 --- a/packages/boxed-expression-component/stories/dev/WebApp.stories.tsx +++ b/packages/boxed-expression-component/stories/dev/WebApp.stories.tsx @@ -197,6 +197,7 @@ export const WebApp: Story = { widthsById: { control: "object" }, }, args: { + isReadOnly: false, expressionHolderId: undefined, // Needs to be here to be displayed. expression: undefined, // Needs to be here to be displayed. widthsById: {}, // Needs to be here to be displayed. diff --git a/packages/boxed-expression-component/tests-e2e/__fixtures__/monaco.ts b/packages/boxed-expression-component/tests-e2e/__fixtures__/monaco.ts index 8ccabcba9f5..10b149aedba 100644 --- a/packages/boxed-expression-component/tests-e2e/__fixtures__/monaco.ts +++ b/packages/boxed-expression-component/tests-e2e/__fixtures__/monaco.ts @@ -44,4 +44,24 @@ export class Monaco { await this.page.keyboard.press("Home"); await this.page.keyboard.press("Enter"); } + + public async canFill(args: { monacoParentLocator: Locator | Page; nth?: number }) { + if (args.nth !== undefined) { + await args.monacoParentLocator.getByTestId("monaco-container").nth(args.nth).dblclick(); + } else { + await args.monacoParentLocator.getByTestId("monaco-container").dblclick(); + } + + if (await this.page.getByLabel("Editor content;Press Alt+F1 for Accessibility Options.").isVisible()) { + return true; + } + + // Try to fill by typing instead of double-click + if (args.nth !== undefined) { + await args.monacoParentLocator.getByTestId("monaco-container").nth(args.nth).press("KeyA"); + } else { + await args.monacoParentLocator.getByTestId("monaco-container").press("KeyA"); + } + return await this.page.getByLabel("Editor content;Press Alt+F1 for Accessibility Options.").isVisible(); + } } diff --git a/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts b/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts index ffc94be0906..d5286b9de27 100644 --- a/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts +++ b/packages/boxed-expression-component/tests-e2e/__fixtures__/stories.ts @@ -34,51 +34,53 @@ export class Stories { return `iframe.html?id=${iframeId}&viewMode=story`; } - public async openBoxedContext(type: BoxedExpressionTypes | "installment-calculation" | "customer" = "base") { + public async openBoxedContext( + type: BoxedExpressionTypes | "readonly" | "installment-calculation" | "customer" = "base" + ) { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-context--${type}`)}` ?? ""); } - public async openDecisionTable(type: BoxedExpressionTypes | "discount" | "undefined-widths" = "base") { + public async openDecisionTable(type: BoxedExpressionTypes | "readonly" | "discount" | "undefined-widths" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-decision-table--${type}`)}` ?? ""); } - public async openBoxedFunction(type: BoxedExpressionTypes | "installment-calculation" = "base") { + public async openBoxedFunction(type: BoxedExpressionTypes | "readonly" | "installment-calculation" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-function--${type}`)}` ?? ""); } - public async openBoxedInvocation(type: BoxedExpressionTypes | "monthly-installment" = "base") { + public async openBoxedInvocation(type: BoxedExpressionTypes | "readonly" | "monthly-installment" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-invocation--${type}`)}` ?? ""); } - public async openBoxedList(type: BoxedExpressionTypes | "age-groups" = "base") { + public async openBoxedList(type: BoxedExpressionTypes | "readonly" | "age-groups" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-list--${type}`)}` ?? ""); } - public async openBoxedLiteral(type: BoxedExpressionTypes | "can-drive" = "base") { + public async openBoxedLiteral(type: BoxedExpressionTypes | "readonly" | "can-drive" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-literal--${type}`)}` ?? ""); } - public async openRelation(type: BoxedExpressionTypes | "bigger" | "people" = "base") { + public async openRelation(type: BoxedExpressionTypes | "readonly" | "bigger" | "people" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-relation--${type}`)}` ?? ""); } - public async openBoxedFilter(type: BoxedExpressionTypes | "rebooked-flights" = "base") { + public async openBoxedFilter(type: BoxedExpressionTypes | "readonly" | "rebooked-flights" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-filter--${type}`)}` ?? ""); } - public async openBoxedConditional(type: BoxedExpressionTypes = "base") { - await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-conditional--${type}`)}` ?? ""); - } - - public async openBoxedEvery(type: BoxedExpressionTypes = "base") { + public async openBoxedEvery(type: BoxedExpressionTypes | "readonly" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-every--${type}`)}` ?? ""); } - public async openBoxedSome(type: BoxedExpressionTypes = "base") { + public async openBoxedSome(type: BoxedExpressionTypes | "readonly" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-some--${type}`)}` ?? ""); } - public async openBoxedFor(type: BoxedExpressionTypes = "base") { + public async openBoxedFor(type: BoxedExpressionTypes | "readonly" = "base") { await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-for--${type}`)}` ?? ""); } + + public async openBoxedConditional(type: BoxedExpressionTypes | "readonly" = "base") { + await this.page.goto(`${this.baseURL}/${this.getIframeURL(`boxed-expressions-conditional--${type}`)}` ?? ""); + } } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts b/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts index 32fca2cfdcc..22121236cea 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressionContainer.ts @@ -132,6 +132,10 @@ export class ContextMenu { await this.locator.nth(0).click({ button: "right" }); } + public async availableOptions() { + return this.locator.page().getByTestId("kie-tools--bee--context-menu-container").getByRole("menuitem"); + } + public heading(sectionName: string) { return this.locator.page().getByRole("heading", { name: sectionName }); } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressionHeader.ts b/packages/boxed-expression-component/tests-e2e/api/expressionHeader.ts index 1d3334cd311..4f0758d4719 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressionHeader.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressionHeader.ts @@ -45,4 +45,8 @@ export class ExpressionHeader { await this.get().click(); await this.page.getByRole("menuitem", { name: "Reset" }).click(); } + + public async availableOptions() { + return this.page.getByRole("menuitem"); + } } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts index 8a08fb58e81..b6539eab88b 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/contextExpressionElement.ts @@ -105,6 +105,10 @@ export class ContextExpressionEntry { return new NameAndDataTypeCell(this.locator.getByRole("cell").nth(0)); } + public async getPopoverMenu() { + return this.locator.page().getByTestId("kie-tools--bee--expression-popover-menu"); + } + get elementCell() { return this.childExpression.elementCell; } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/decisionTableExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/decisionTableExpressionElement.ts index d8872f4723a..2ce6a761d49 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/decisionTableExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/decisionTableExpressionElement.ts @@ -311,6 +311,10 @@ export class HitTableSelector { export class HitTableMenu { constructor(private locator: Locator) {} + public async availableOptions() { + return this.locator.page().getByTestId("kie-tools--bee--hit-policy-header").getByRole("menuitem"); + } + public option(optionName: string) { return this.locator.page().getByTestId("kie-tools--bee--hit-policy-header").getByRole("menuitem", { name: optionName, diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts index 5409013e281..4e52faeca56 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/invocationExpressionElement.ts @@ -32,6 +32,10 @@ export class InvocationExpressionElement { return new InvocationParameter(this.locator.getByTestId(`kie-tools--bee--expression-row-${index}`), this.monaco); } + get invokedFunctionNameCell() { + return this.locator.getByTestId(`kie-tools--bee--table-header-invokedFunctionName`); + } + get expressionHeaderCell() { return new NameAndDataTypeCell(this.locator.getByRole("columnheader")); } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts index 58be5f3ae21..7dee6f7783f 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/literalExpressionElement.ts @@ -32,6 +32,10 @@ export class LiteralExpressionElement { await this.monaco.fill({ monacoParentLocator: this.locator, nth: 0, content: expression }); } + public async canFill() { + return await this.monaco.canFill({ monacoParentLocator: this.locator, nth: 0 }); + } + get content() { return this.locator.getByRole("cell").nth(0); } diff --git a/packages/boxed-expression-component/tests-e2e/api/expressions/relationExpressionElement.ts b/packages/boxed-expression-component/tests-e2e/api/expressions/relationExpressionElement.ts index 297d9092f30..655858941f4 100644 --- a/packages/boxed-expression-component/tests-e2e/api/expressions/relationExpressionElement.ts +++ b/packages/boxed-expression-component/tests-e2e/api/expressions/relationExpressionElement.ts @@ -28,11 +28,11 @@ export class RelationExpressionElement { private monaco: Monaco ) {} - public cellAt(param: { column: number; row: number }) { + public cellAt(coordinate: { column: number; row: number }) { return new ExpressionCell( this.locator - .getByTestId(`kie-tools--bee--expression-row-${param.row - 1}`) - .getByTestId(`kie-tools--bee--expression-column-${param.column}`), + .getByTestId(`kie-tools--bee--expression-row-${coordinate.row - 1}`) + .getByTestId(`kie-tools--bee--expression-column-${coordinate.column}`), this.monaco ); } @@ -119,4 +119,9 @@ export class RelationExpressionElement { .locator("svg") .click(); } + + public getColumnHeaderAtIndex(index: number) { + // index+1 because we're ignoring the expression header cell + return this.locator.getByRole("columnheader").nth(index + 1); + } } diff --git a/packages/boxed-expression-component/tests-e2e/api/nameAndDataTypeCell.ts b/packages/boxed-expression-component/tests-e2e/api/nameAndDataTypeCell.ts index fbae08acd35..b693bdfe7c6 100644 --- a/packages/boxed-expression-component/tests-e2e/api/nameAndDataTypeCell.ts +++ b/packages/boxed-expression-component/tests-e2e/api/nameAndDataTypeCell.ts @@ -27,6 +27,10 @@ export class NameAndDataTypeCell { await this.locator.nth(0).click(); } + public async getPopoverMenu() { + return this.locator.page().getByTestId("kie-tools--bee--expression-popover-menu"); + } + public async setName(params: { name: string; close: boolean }) { await this.locator.getByRole("textbox").fill(params.name); if (params.close) { diff --git a/packages/boxed-expression-component/tests-e2e/features/readonly/readonly.spec.ts b/packages/boxed-expression-component/tests-e2e/features/readonly/readonly.spec.ts new file mode 100644 index 00000000000..16d607f59c2 --- /dev/null +++ b/packages/boxed-expression-component/tests-e2e/features/readonly/readonly.spec.ts @@ -0,0 +1,314 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import { test, expect } from "../../__fixtures__/base"; + +test.describe("Read Only Mode", () => { + test("Literal expression", async ({ stories, bee, page }) => { + await stories.openBoxedLiteral("readonly"); + const literalExpression = bee.expression.asLiteral(); + + expect(await literalExpression.canFill()).toBeFalsy(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + // Can change name/data type? + await literalExpression.expressionHeaderCell.open(); + await expect(await literalExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + }); + + test("Relation expression", async ({ stories, bee, page }) => { + await stories.openRelation("readonly"); + const relationExpression = bee.expression.asRelation(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + // Can change name/data type? + await relationExpression.expressionHeaderCell.open(); + await expect(await relationExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + // Can add rows? + await relationExpression.cellAt({ column: 0, row: 1 }).content.hover(); + await expect(relationExpression.cellAt({ column: 0, row: 1 }).content.locator("svg")).not.toBeAttached(); + + // Can add columns? + await relationExpression.getColumnHeaderAtIndex(0).hover(); + await expect(relationExpression.getColumnHeaderAtIndex(0).locator("svg")).not.toBeAttached(); + }); + + test("Context expression", async ({ stories, bee, page }) => { + await stories.openBoxedContext("readonly"); + const contextExpression = bee.expression.asContext(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + // Can change name/data type? + await contextExpression.expressionHeaderCell.open(); + await expect(await contextExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + // Can add entry? + await contextExpression.entry(0).variable.content.hover(); + await expect(contextExpression.entry(0).variable.content.locator("svg")).not.toBeAttached(); + + // Can change entry name/datatype? + await contextExpression.entry(0).variable.open(); + await expect(await contextExpression.entry(0).getPopoverMenu()).not.toBeAttached(); + + // Can change entry expression? + expect(await contextExpression.entry(0).expression.asLiteral().canFill()).toBeFalsy(); + + // Can reset, cut, paste in entry expression? + await contextExpression.entry(0).expression.contextMenu.open(); + await expect(await contextExpression.entry(0).expression.contextMenu.availableOptions()).toHaveCount(1); + await expect(await contextExpression.entry(0).expression.contextMenu.availableOptions()).toContainText("Copy"); + await expect(await contextExpression.entry(0).expression.contextMenu.availableOptions()).not.toContainText("Reset"); + await expect(await contextExpression.entry(0).expression.contextMenu.availableOptions()).not.toContainText("Cut"); + await expect(await contextExpression.entry(0).expression.contextMenu.availableOptions()).not.toContainText("Paste"); + }); + + test("Decision Table expression", async ({ stories, bee, page }) => { + await stories.openDecisionTable("readonly"); + const decisionTableExpression = bee.expression.asDecisionTable(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + // Hit table menu + await decisionTableExpression.hitTableSelector.cell.click(); + await expect(await decisionTableExpression.hitTableSelector.menu.availableOptions()).not.toBeAttached(); + + // Can add input? + await decisionTableExpression.inputHeaderAt(0).content.hover(); + await expect(decisionTableExpression.inputHeaderAt(0).content.locator("svg")).not.toBeAttached(); + + // Can add output? + await decisionTableExpression.outputHeaderAt(0).content.hover(); + await expect(decisionTableExpression.outputHeaderAt(0).content.locator("svg")).not.toBeAttached(); + + // Can add annotation? + await decisionTableExpression.annotationHeaderAt(0).content.hover(); + await expect(decisionTableExpression.annotationHeaderAt(0).content.locator("svg")).not.toBeAttached(); + + // Can change input? + await decisionTableExpression.inputHeaderAt(0).open(); + await expect(await decisionTableExpression.inputHeaderAt(0).getPopoverMenu()).not.toBeAttached(); + + // Can change output? + await decisionTableExpression.outputHeaderAt(0).open(); + await expect(await decisionTableExpression.outputHeaderAt(0).getPopoverMenu()).not.toBeAttached(); + + // Can change name/data type? + await decisionTableExpression.expressionHeaderCell.open(); + await expect(await decisionTableExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + // Can add rows? + await decisionTableExpression.cellAt({ row: 1, column: 1 }).content.hover(); + await expect(decisionTableExpression.cellAt({ row: 1, column: 1 }).content.locator("svg")).not.toBeAttached(); + }); + + test("List expression", async ({ stories, bee, page }) => { + await stories.openBoxedList("readonly"); + const listExpression = bee.expression.asList(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await listExpression.expressionHeaderCell.open(); + await expect(await listExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + // Can add rows? + await listExpression.row(0).cell.content.hover(); + await expect(listExpression.row(0).cell.content.locator("svg")).not.toBeAttached(); + + // Can change list expression? + expect(await listExpression.row(0).expression.asLiteral().canFill()).toBeFalsy(); + }); + + test("Invocation expression", async ({ stories, bee, page }) => { + await stories.openBoxedInvocation("readonly"); + const invocationExpression = bee.expression.asInvocation(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await invocationExpression.expressionHeaderCell.open(); + await expect(await invocationExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + // Can add rows? + await invocationExpression.parameter(0).descriptionCell.content.hover(); + await expect(invocationExpression.parameter(0).descriptionCell.content.locator("svg")).not.toBeAttached(); + + // Can change invocation name? + await invocationExpression.invokedFunctionNameCell.click(); + await expect(invocationExpression.invokedFunctionNameCell.getByRole("textbox")).not.toBeAttached(); + + // Can change list expression? + expect(await invocationExpression.parameter(0).expression.asLiteral().canFill()).toBeFalsy(); + + // Can reset, cut, paste in entry expression? + await invocationExpression.parameter(0).expression.contextMenu.open(); + await expect(await invocationExpression.parameter(0).expression.contextMenu.availableOptions()).toHaveCount(1); + await expect(await invocationExpression.parameter(0).expression.contextMenu.availableOptions()).toContainText( + "Copy" + ); + await expect(await invocationExpression.parameter(0).expression.contextMenu.availableOptions()).not.toContainText( + "Reset" + ); + await expect(await invocationExpression.parameter(0).expression.contextMenu.availableOptions()).not.toContainText( + "Cut" + ); + await expect(await invocationExpression.parameter(0).expression.contextMenu.availableOptions()).not.toContainText( + "Paste" + ); + }); + + test("Conditional expression", async ({ stories, bee, page }) => { + await stories.openBoxedConditional("readonly"); + const conditionalExpression = bee.expression.asConditional(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await conditionalExpression.expressionHeaderCell.open(); + await expect(await conditionalExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + expect(await conditionalExpression.if.expression.asLiteral().canFill()).toBeFalsy(); + expect(await conditionalExpression.then.expression.asLiteral().canFill()).toBeFalsy(); + expect(await conditionalExpression.else.expression.asLiteral().canFill()).toBeFalsy(); + }); + + test("For expression", async ({ stories, bee, page }) => { + await stories.openBoxedFor("readonly"); + const forExpression = bee.expression.asFor(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await forExpression.expressionHeaderCell.open(); + await expect(await forExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + await forExpression.variable.content.click(); + await expect(forExpression.variable.content.getByRole("textbox")).not.toBeAttached(); + expect(await forExpression.in.expression.asLiteral().canFill()).toBeFalsy(); + expect(await forExpression.return.expression.asLiteral().canFill()).toBeFalsy(); + }); + + test("Every expression", async ({ stories, bee, page }) => { + await stories.openBoxedEvery("readonly"); + const everyExpression = bee.expression.asEvery(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await everyExpression.expressionHeaderCell.open(); + await expect(await everyExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + await everyExpression.variable.content.click(); + await expect(everyExpression.variable.content.getByRole("textbox")).not.toBeAttached(); + expect(await everyExpression.in.expression.asLiteral().canFill()).toBeFalsy(); + expect(await everyExpression.satisfies.expression.asLiteral().canFill()).toBeFalsy(); + }); + + test("Some expression", async ({ stories, bee, page }) => { + await stories.openBoxedSome("readonly"); + const someExpression = bee.expression.asSome(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await someExpression.expressionHeaderCell.open(); + await expect(await someExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + await someExpression.variable.content.click(); + await expect(someExpression.variable.content.getByRole("textbox")).not.toBeAttached(); + expect(await someExpression.in.expression.asLiteral().canFill()).toBeFalsy(); + expect(await someExpression.satisfies.expression.asLiteral().canFill()).toBeFalsy(); + }); + + test("Filter expression", async ({ stories, bee, page }) => { + await stories.openBoxedFilter("readonly"); + const filterExpression = bee.expression.asFilter(); + + await bee.expression.header.get().click(); + await expect(await bee.expression.header.availableOptions()).toHaveCount(1); + await expect(await bee.expression.header.availableOptions()).toContainText("Copy"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Reset"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Cut"); + await expect(await bee.expression.header.availableOptions()).not.toContainText("Paste"); + await page.keyboard.press("Escape"); + + await filterExpression.expressionHeaderCell.open(); + await expect(await filterExpression.expressionHeaderCell.getPopoverMenu()).not.toBeAttached(); + + expect(await filterExpression.in.expression.asLiteral().canFill()).toBeFalsy(); + expect(await filterExpression.match.expression.asLiteral().canFill()).toBeFalsy(); + }); +}); diff --git a/packages/dmn-editor-envelope/src/DmnEditorFactory.tsx b/packages/dmn-editor-envelope/src/DmnEditorFactory.tsx index 411287583be..0af0ec31460 100644 --- a/packages/dmn-editor-envelope/src/DmnEditorFactory.tsx +++ b/packages/dmn-editor-envelope/src/DmnEditorFactory.tsx @@ -93,6 +93,7 @@ export class DmnEditorInterface implements Editor { workspaceRootAbsolutePosixPath={ this.initArgs.workspaceRootAbsolutePosixPath ?? DEFAULT_WORKSPACE_ROOT_ABSOLUTE_POSIX_PATH } + isReadOnly={this.initArgs.isReadOnly} /> ); } @@ -103,10 +104,12 @@ function DmnEditorRootWrapper({ envelopeContext, exposing, workspaceRootAbsolutePosixPath, + isReadOnly, }: { envelopeContext?: KogitoEditorEnvelopeContextType; exposing: (s: DmnEditorRoot) => void; workspaceRootAbsolutePosixPath: string; + isReadOnly: boolean; }) { const onNewEdit = useCallback( (workspaceEdit: WorkspaceEdit) => { @@ -151,6 +154,7 @@ function DmnEditorRootWrapper({ } workspaceRootAbsolutePosixPath={workspaceRootAbsolutePosixPath} keyboardShortcutsService={envelopeContext?.services.keyboardShortcuts} + isReadOnly={isReadOnly} /> ); } diff --git a/packages/dmn-editor-envelope/src/DmnEditorRoot.tsx b/packages/dmn-editor-envelope/src/DmnEditorRoot.tsx index 2cb5e5dafd7..c6741d3cc3c 100644 --- a/packages/dmn-editor-envelope/src/DmnEditorRoot.tsx +++ b/packages/dmn-editor-envelope/src/DmnEditorRoot.tsx @@ -65,6 +65,7 @@ export type DmnEditorRootProps = { onOpenFileFromNormalizedPosixPathRelativeToTheWorkspaceRoot: WorkspaceChannelApi["kogitoWorkspace_openFile"]; workspaceRootAbsolutePosixPath: string; keyboardShortcutsService: KeyboardShortcutsService | undefined; + isReadOnly: boolean; }; export type DmnEditorRootState = { @@ -73,7 +74,7 @@ export type DmnEditorRootState = { pointer: number; openFilenormalizedPosixPathRelativeToTheWorkspaceRoot: string | undefined; externalModelsByNamespace: DmnEditor.ExternalModelsIndex; - readonly: boolean; + isReadOnly: boolean; externalModelsManagerDoneBootstraping: boolean; keyboardShortcutsRegisterIds: number[]; keyboardShortcutsRegistred: boolean; @@ -95,7 +96,7 @@ export class DmnEditorRoot extends React.Component) { const [editCount, setEditCount] = useState(0); + const [args, updateArgs] = useArgs(); const editorRef = useRef(null); const editorContainerRef = useRef(null); const downloadRef = useRef(null); const [isDroppingFile, setIsDroppingFile] = useState(false); + const resources = useMemo(() => { + const inputResources = props?.resources ?? args.resources; + + return inputResources + ? new Map( + inputResources.map(([key, value]) => [ + key, + { contentType: value.contentType, content: Promise.resolve(value.content) }, + ]) + ) + : undefined; + }, [args.resources, props?.resources]); + useEffect(() => { const editor = DmnEditor.open({ container: editorContainerRef.current!, initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot: - props.initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot, - initialContent: Promise.resolve(props.initialContent), - readOnly: props.readOnly, - resources: props.resources - ? new Map( - props.resources.map(([key, value]) => [ - key, - { contentType: value.contentType, content: Promise.resolve(value.content) }, - ]) - ) - : undefined, - origin: props.origin ?? "*", + props?.initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot ?? + args.initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot, + initialContent: Promise.resolve(props?.initialContent ?? args.initialContent), + readOnly: props?.readOnly ?? args.readOnly, + resources: resources, + origin: props?.origin ?? args.origin ?? "*", }); editor.subscribeToContentChanges(() => setEditCount((currentCount) => currentCount + 1)); @@ -97,7 +106,7 @@ function DevWebApp(props: DevWebAppProps) { editor.close(); setEditCount(0); }; - }, [props]); + }, [args, props, resources]); const onUndo = useCallback(() => { setEditCount((currentCount) => { @@ -249,7 +258,7 @@ type Story = StoryObj; // More on writing stories with args: https://storybook.js.org/docs/writing-stories/args export const WebApp: Story = { - render: (args) => DevWebApp(args), + render: (args) => DevWebApp(), args: { initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot: "path1/subpath/newModel1.dmn", initialContent: "", diff --git a/packages/dmn-editor-standalone/stories/LoanPreQualification.stories.tsx b/packages/dmn-editor-standalone/stories/LoanPreQualification.stories.tsx new file mode 100644 index 00000000000..b35ee368976 --- /dev/null +++ b/packages/dmn-editor-standalone/stories/LoanPreQualification.stories.tsx @@ -0,0 +1,885 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import * as React from "react"; +import type { Meta, StoryObj } from "@storybook/react"; +import "@patternfly/react-core/dist/styles/base.css"; +import { WebApp, DevWebAppProps } from "./DevWebApp.stories"; + +const loanPreQualificationDmn = ` + + + + + Product_Type + + + number + + + number + + + number + + + + string + + "M","D","S" + + + + + number + + + Marital_Status + + + string + + "Unemployed","Employed","Self-employed","Student" + + + + boolean + + + + number + + + number + + + number + + + number + + + number + + + + + + Risk_Category + + + number + + + + + string + + + number + + + + string + + "Ineligible","Eligible" + + + + string + + "Decline","Bureau","Through" + + + + string + + "Full","Mini","None" + + + + string + + "Standard Loan","Special Loan" + + + + string + + "High","Medium","Low","Very Low","Decline" + + + + string + + "Poor","Bad","Fair","Good","Excellent" + + + + string + + "Insufficient","Sufficient" + + + + string + + "Sufficient","Insufficient" + + + + string + + "Not Qualified","Qualified" + + + + + number + + [300..850] + + + + + + string + + "Qualified","Not Qualified" + + + + string + + + + + + + + + + + + 0.36 + + + + + + + + + + + + + + + + + + + + + + + + PITI + + + + + (Requested Product.Amount * ((Requested Product.Rate/100)/12)) / (1-(1/(1+(Requested Product.Rate/100)/12) * -Requested Product.Term)) + + + + + + Applicant Data.Monthly.Tax + + + + + + Applicant Data.Monthly.Insurance + + + + + + Applicant Data.Monthly.Income + + + + + + + if Client PITI <= Lender Acceptable PITI() + then "Sufficient" + else "Insufficient" + + + + + + + + + + + + + + (pmt+tax+insurance) / income + + + + + + + + + + + + + + + + + + + + + + + + + DTI + + + + + Applicant Data.Monthly.Repayments + Applicant Data.Monthly.Expenses + + + + + + Applicant Data.Monthly.Income + + + + + + + if Client DTI <= Lender Acceptable DTI() + then "Sufficient" + else "Insufficient" + + + + + + + + + + + + + + Credit Score.FICO + + + + + + + >= 750 + + + "Excellent" + + + + + + + + [700..750) + + + "Good" + + + + + + + + [650..700) + + + "Fair" + + + + + + + + [600..650) + + + "Poor" + + + + + + + + < 600 + + + "Bad" + + + + + + + + + + + + + + + + + + + + + + + Credit Score Rating + + + + + Back End Ratio + + + + + Front End Ratio + + + + + + + + "Poor", "Bad" + + + - + + + - + + + "Not Qualified" + + + "Credit Score too low." + + + + + + + + - + + + "Insufficient" + + + "Sufficient" + + + "Not Qualified" + + + "Debt to income ratio is too high." + + + + + + + + - + + + "Sufficient" + + + "Insufficient" + + + "Not Qualified" + + + "Mortgage payment to income ratio is too high." + + + + + + + + - + + + "Insufficient" + + + "Insufficient" + + + "Not Qualified" + + + "Debt to income ratio is too high AND mortgage payment to income ratio is too high." + + + + + + + + "Fair", "Good", "Excellent" + + + "Sufficient" + + + "Sufficient" + + + "Qualified" + + + "The borrower has been successfully prequalified for the requested loan." + + + + + + + + + + + + + + + + + + + d/i + + + + + + + + + 0.28 + + + + + + + + + 209 + + + 50 + 209 + + + 50 + 100 + 1280 + + + 50 + 100 + 1110 + + + + 1110 + + + 1110 + + + 1110 + + + 1110 + + + 1280 + + + 300 + + + 50 + 300 + + + 50 + 100 + 802 + + + 50 + 100 + 632 + + + + 632 + + + 632 + + + 802 + + + 50 + 224 + 226 + 335 + + + 50 + 233 + 130 + 136 + 135 + 681 + 100 + + + 150 + + + 50 + 150 + + + 228 + + + 50 + 228 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +`; + +// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export +const meta: Meta = { + title: "Dev/Loan Pre Qualification", +}; + +export default meta; +type Story = StoryObj; + +// More on writing stories with args: https://storybook.js.org/docs/writing-stories/args +export const LoanPreQualification: Story = { + render: WebApp.render, + args: { + initialFileNormalizedPosixPathRelativeToTheWorkspaceRoot: "path1/subpath/newModel1.dmn", + initialContent: loanPreQualificationDmn, + readOnly: false, + resources: [], + origin: "*", + }, +}; diff --git a/packages/dmn-editor/src/DmnEditor.css b/packages/dmn-editor/src/DmnEditor.css index 6982b7488a1..4e5107f818d 100644 --- a/packages/dmn-editor/src/DmnEditor.css +++ b/packages/dmn-editor/src/DmnEditor.css @@ -274,9 +274,6 @@ color: #0067cc; filter: brightness(95%); } -.kie-dmn-editor--drd-list button:hover { - filter: brightness(95%); -} .kie-dmn-editor--drd-list button:active { filter: brightness(90%); } @@ -606,9 +603,17 @@ the cursor is inside it. By making it adimensional, that never happens. */ transform: scale(0.8); } .kie-dmn-editor--data-type-node-panel .kie-dmn-editor--data-type-jump-to-definition { - padding-left: 4px; - padding-right: 4px; + padding-right: 0px; + background: none; + border: none; + height: auto; + padding-top: 0; + padding-bottom: 0; } +.kie-dmn-editor--data-type-node-panel-readonly .kie-dmn-editor--data-type-jump-to-definition { + padding-right: 6px; +} + /* Customizing some patternfly components is hard... */ .kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type > div:first-of-type > button, .kie-dmn-editor--data-type-node-panel > div > div:first-of-type > div:first-of-type > div:first-of-type input, @@ -620,8 +625,13 @@ the cursor is inside it. By making it adimensional, that never happens. */ border-radius: 99999px; outline: none; } +.kie-dmn-editor--data-type-node-panel .pf-c-select__toggle.pf-m-typeahead { + padding-left: 10px; +} +.kie-dmn-editor--data-type-node-panel .pf-c-select__toggle-wrapper { + padding-left: 10px; +} .kie-dmn-editor--data-type-node-panel > div { - padding-left: 12px; border: 1.25px solid black; background: white; box-shadow: 5px 5px 2px 0px rgb(127 127 127); @@ -908,6 +918,11 @@ th { text-decoration: red dotted underline; text-underline-position: under; } + +.kie-dmn-editor--data-types-container .pf-c-switch__input:disabled:checked ~ .pf-c-switch__toggle { + background-color: var(--pf-global--primary-color--100); + opacity: 50%; +} /* (end) data types */ /* ******************************* */ diff --git a/packages/dmn-editor/src/DmnEditor.tsx b/packages/dmn-editor/src/DmnEditor.tsx index 39871faa1af..7739a0cbf7c 100644 --- a/packages/dmn-editor/src/DmnEditor.tsx +++ b/packages/dmn-editor/src/DmnEditor.tsx @@ -58,6 +58,7 @@ import { INITIAL_COMPUTED_CACHE } from "./store/computed/initial"; import "@kie-tools/dmn-marshaller/dist/kie-extensions"; // This is here because of the KIE Extension for DMN. import "./DmnEditor.css"; // Leave it for last, as this overrides some of the PF and RF styles. import { Commands, CommandsContextProvider, useCommands } from "./commands/CommandsContextProvider"; +import { DmnEditorSettingsContextProvider } from "./settings/DmnEditorSettingsContext"; const ON_MODEL_CHANGE_DEBOUNCE_TIME_IN_MS = 500; @@ -148,6 +149,12 @@ export type DmnEditorProps = { * This is shown on the ErrorBoundary fallback component, when an uncaught error happens. */ issueTrackerHref?: string; + /** + * A flag to enable read-only mode on the DMN Editor. + * When enabled navigation is still possible (e.g. entering the Boxed Expression Editor, Data Types and Included Models), + * but no changes can be made and the model itself is unaltered. + */ + isReadOnly?: boolean; /** * When users want to jump to another file, this method is called, allowing the controller of this component decide what to do. * Links are only rendered if this is provided. Otherwise, paths will be rendered as text. @@ -418,13 +425,15 @@ export const DmnEditor = React.forwardRef((props: DmnEditorProps, ref: React.Ref return ( - - - - - - - + + + + + + + + + ); diff --git a/packages/dmn-editor/src/boxedExpressions/BoxedExpressionScreen.tsx b/packages/dmn-editor/src/boxedExpressions/BoxedExpressionScreen.tsx index 19ca9ee664c..18c7be1da75 100644 --- a/packages/dmn-editor/src/boxedExpressions/BoxedExpressionScreen.tsx +++ b/packages/dmn-editor/src/boxedExpressions/BoxedExpressionScreen.tsx @@ -80,10 +80,12 @@ import { useDmnEditorStore, useDmnEditorStoreApi } from "../store/StoreContext"; import { getDefaultColumnWidth } from "./getDefaultColumnWidth"; import { getDefaultBoxedExpression } from "./getDefaultBoxedExpression"; import { Normalized } from "../normalization/normalize"; +import { useSettings } from "../settings/DmnEditorSettingsContext"; export function BoxedExpressionScreen({ container }: { container: React.RefObject }) { const { externalModelsByNamespace } = useExternalModels(); + const settings = useSettings(); const dmnEditorStoreApi = useDmnEditorStoreApi(); const thisDmn = useDmnEditorStore((s) => s.dmn); @@ -393,6 +395,7 @@ export function BoxedExpressionScreen({ container }: { container: React.RefObjec onRequestFeelVariables={onRequestFeelVariables} widthsById={widthsById} onWidthsChange={onWidthsChange} + isReadOnly={settings.isReadOnly} />
diff --git a/packages/dmn-editor/src/dataTypes/Constraints.tsx b/packages/dmn-editor/src/dataTypes/Constraints.tsx index fe64fc9f95d..9c2bd764d1b 100644 --- a/packages/dmn-editor/src/dataTypes/Constraints.tsx +++ b/packages/dmn-editor/src/dataTypes/Constraints.tsx @@ -62,7 +62,7 @@ export type TypeHelper = { export interface ConstraintComponentProps { id: string; - isReadonly: boolean; + isReadOnly: boolean; value?: string; expressionValue?: string; type: DmnBuiltInDataType; @@ -406,12 +406,12 @@ export function useConstraint({ } export function ConstraintsFromAllowedValuesAttribute({ - isReadonly, + isReadOnly, itemDefinition, editItemDefinition, renderOnPropertiesPanel, }: { - isReadonly: boolean; + isReadOnly: boolean; itemDefinition: Normalized; editItemDefinition: EditItemDefinition; renderOnPropertiesPanel?: boolean; @@ -530,7 +530,7 @@ export function ConstraintsFromAllowedValuesAttribute({ return ( ; editItemDefinition: EditItemDefinition; renderOnPropertiesPanel?: boolean; @@ -674,7 +674,7 @@ export function ConstraintsFromTypeConstraintAttribute({ return (
@@ -814,7 +814,7 @@ export function Constraints({ {internalSelectedConstraint.selectedConstraint === ConstraintsType.ENUMERATION && (
  • onChangeItem(newValue, index)} onRemove={() => onRemove(index)} @@ -140,7 +140,7 @@ export function ConstraintsEnum({ ); }, - [focusOwner, isDisabled, isItemValid, isReadonly, onAdd, onChangeItem, onRemove, typeHelper, valuesUuid] + [focusOwner, isDisabled, isItemValid, isReadOnly, onAdd, onChangeItem, onRemove, typeHelper, valuesUuid] ); return ( @@ -161,12 +161,12 @@ export function ConstraintsEnum({ onDragEnd={onDragEnd} values={enumValues} draggableItem={draggableItem} - isDisabled={isDisabled || isReadonly} + isDisabled={isDisabled || isReadOnly} />
  • - {!(isDisabled || isReadonly) && ( + {!(isDisabled || isReadOnly) && ( <>
    @@ -240,6 +240,7 @@ function EnumElement({ title={"Remove enum value"} ref={removeButtonRef} style={{ opacity: hovered ? "100%" : "0" }} + isDisabled={isDisabled} className={"kie-dmn-editor--documentation-link--row-remove"} variant={"plain"} icon={} diff --git a/packages/dmn-editor/src/dataTypes/ConstraintsExpression.tsx b/packages/dmn-editor/src/dataTypes/ConstraintsExpression.tsx index 1a87017d20a..791facf420c 100644 --- a/packages/dmn-editor/src/dataTypes/ConstraintsExpression.tsx +++ b/packages/dmn-editor/src/dataTypes/ConstraintsExpression.tsx @@ -29,12 +29,12 @@ import { TypeHelper } from "./Constraints"; export function ConstraintsExpression({ id, - isReadonly, + isReadOnly, value, onSave, }: { id: string; - isReadonly: boolean; + isReadOnly: boolean; value?: string; savedValue?: string; type: DmnBuiltInDataType; @@ -68,16 +68,16 @@ export function ConstraintsExpression({ (e) => { // When inside FEEL Input, all keyboard events should be kept inside it. // Exceptions to this strategy are handled on `onFeelKeyDown`. - if (!isReadonly && isEditing) { + if (!isReadOnly && isEditing) { e.stopPropagation(); } // This is used to start editing a cell without being in edit mode. - if (!isReadonly && !isEditing) { + if (!isReadOnly && !isEditing) { setEditing(true); } }, - [isEditing, isReadonly] + [isEditing, isReadOnly] ); const monacoOptions = useMemo( @@ -97,7 +97,7 @@ export function ConstraintsExpression({ // FeelInput doens't react to `onFeelChange` updates // making it necessary to add a key to force a re-render;
    - {isReadonly && ( + {isReadOnly && ( Equivalent FEEL expression: @@ -105,12 +105,12 @@ export function ConstraintsExpression({
    - {isReadonly && + {isReadOnly && (value ? (
    - {!isReadonly && ( + {!isReadOnly && ( }> Check the{" "}
    diff --git a/packages/dmn-editor/src/dataTypes/ConstraintsRange.tsx b/packages/dmn-editor/src/dataTypes/ConstraintsRange.tsx index 3b7ea1e2b29..e730b7e0d95 100644 --- a/packages/dmn-editor/src/dataTypes/ConstraintsRange.tsx +++ b/packages/dmn-editor/src/dataTypes/ConstraintsRange.tsx @@ -32,7 +32,7 @@ const CONSTRAINT_END_ID = "end"; export function ConstraintsRange({ id, - isReadonly, + isReadOnly, value, expressionValue, type, @@ -210,7 +210,7 @@ export function ConstraintsRange({ >
    diff --git a/packages/dmn-editor/src/dataTypes/DataTypeName.tsx b/packages/dmn-editor/src/dataTypes/DataTypeName.tsx index 965d211f2dc..f10279dd739 100644 --- a/packages/dmn-editor/src/dataTypes/DataTypeName.tsx +++ b/packages/dmn-editor/src/dataTypes/DataTypeName.tsx @@ -34,7 +34,7 @@ import { DmnBuiltInDataType } from "@kie-tools/boxed-expression-component/dist/a import { Normalized } from "../normalization/normalize"; export function DataTypeName({ - isReadonly, + isReadOnly, itemDefinition, isActive, editMode, @@ -43,7 +43,7 @@ export function DataTypeName({ onGetAllUniqueNames, enableAutoFocusing, }: { - isReadonly: boolean; + isReadOnly: boolean; editMode: "hover" | "double-click"; itemDefinition: Normalized; isActive: boolean; @@ -72,7 +72,7 @@ export function DataTypeName({ const onRenamed = useCallback( (newName) => { - if (isReadonly) { + if (isReadOnly) { return; } @@ -85,7 +85,7 @@ export function DataTypeName({ }); }); }, - [dmnEditorStoreApi, externalModelsByNamespace, isReadonly, itemDefinition] + [dmnEditorStoreApi, externalModelsByNamespace, isReadOnly, itemDefinition] ); const _shouldCommitOnBlur = shouldCommitOnBlur ?? true; // Defaults to true @@ -95,7 +95,7 @@ export function DataTypeName({ {editMode === "hover" && ( { - if (isReadonly) { + if (isReadOnly) { return; } @@ -86,12 +86,12 @@ export function DataTypePanel({ } }); }, - [dataType.itemDefinition, editItemDefinition, isReadonly] + [dataType.itemDefinition, editItemDefinition, isReadOnly] ); const toggleCollection = useCallback( (isChecked: boolean) => { - if (isReadonly) { + if (isReadOnly) { return; } @@ -115,12 +115,12 @@ export function DataTypePanel({ } }); }, - [dataType.itemDefinition, editItemDefinition, isReadonly] + [dataType.itemDefinition, editItemDefinition, isReadOnly] ); const changeTypeRef = useCallback( (typeRef: DmnBuiltInDataType) => { - if (isReadonly) { + if (isReadOnly) { return; } @@ -133,12 +133,12 @@ export function DataTypePanel({ } }); }, - [dataType.itemDefinition, editItemDefinition, isReadonly] + [dataType.itemDefinition, editItemDefinition, isReadOnly] ); const changeDescription = useCallback( (newDescription: string) => { - if (isReadonly) { + if (isReadOnly) { return; } @@ -146,7 +146,7 @@ export function DataTypePanel({ itemDefinition.description = { __$$text: newDescription }; }); }, - [dataType.itemDefinition, editItemDefinition, isReadonly] + [dataType.itemDefinition, editItemDefinition, isReadOnly] ); const parents = useMemo(() => { @@ -164,7 +164,7 @@ export function DataTypePanel({ const addItemComponent = useCallback( (id, how, partial) => { - if (isReadonly) { + if (isReadOnly) { return; } @@ -175,7 +175,7 @@ export function DataTypePanel({ state.focus.consumableId = newItemDefinition["@_id"]; }); }, - [editItemDefinition, isReadonly] + [editItemDefinition, isReadOnly] ); const dmnEditorStoreApi = useDmnEditorStoreApi(); @@ -259,7 +259,7 @@ export function DataTypePanel({ itemDefinition={dataType.itemDefinition} isActive={false} editMode={"hover"} - isReadonly={dataType.namespace !== thisDmnsNamespace} + isReadOnly={isReadOnly || dataType.namespace !== thisDmnsNamespace} onGetAllUniqueNames={() => allUniqueNames} />
    @@ -296,28 +296,30 @@ export function DataTypePanel({ > Copy , - , - {!isReadonly && ( - } - onClick={() => { - if (isReadonly) { - return; - } + {!isReadOnly && ( + <> + + } + onClick={() => { + if (isReadOnly) { + return; + } - editItemDefinition(dataType.itemDefinition["@_id"]!, (_, items) => { - items?.splice(dataType.index, 1); - }); - dmnEditorStoreApi.setState((state) => { - state.dataTypesEditor.activeItemDefinitionId = - dataType.parentId ?? state.dmn.model.definitions.itemDefinition?.[0]?.["@_id"]; - }); - }} - > - Remove - + editItemDefinition(dataType.itemDefinition["@_id"]!, (_, items) => { + items?.splice(dataType.index, 1); + }); + dmnEditorStoreApi.setState((state) => { + state.dataTypesEditor.activeItemDefinitionId = + dataType.parentId ?? state.dmn.model.definitions.itemDefinition?.[0]?.["@_id"]; + }); + }} + > + Remove + + )} , ]} @@ -327,7 +329,7 @@ export function DataTypePanel({ {/* This padding was necessary because PF4 has a @media query that doesn't run inside iframes, for some reason. */}

    {`${decisionService["@_name"]}(${buildFunctionArgList( decisionService.inputDecision, decisionService.inputData diff --git a/packages/dmn-editor/tests-e2e/__fixtures__/propertiesPanel/decisionServicePropertiesPanel.ts b/packages/dmn-editor/tests-e2e/__fixtures__/propertiesPanel/decisionServicePropertiesPanel.ts index 084ce1fb23f..1c6467efc6d 100644 --- a/packages/dmn-editor/tests-e2e/__fixtures__/propertiesPanel/decisionServicePropertiesPanel.ts +++ b/packages/dmn-editor/tests-e2e/__fixtures__/propertiesPanel/decisionServicePropertiesPanel.ts @@ -120,4 +120,76 @@ export class DecisionServicePropertiesPanel extends PropertiesPanelBase { public async setStrokeColor(args: { color: string }) { await this.shapeProperties.setStrokeColor({ ...args }); } + + public async getOutputDecisions() { + return ( + await this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-output-decisions") + .getByRole("listitem") + .allTextContents() + ).map((content) => content.trim()); + } + + public async getEncapsulatedDecisions() { + return ( + await this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-encapsulated-decisions") + .getByRole("listitem") + .allTextContents() + ).map((content) => content.trim()); + } + + public async getInputDecisions() { + return ( + await this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-decisions") + .getByTestId("kie-tools--dmn-editor--draggable-children") + .allTextContents() + ).map((content) => content.trim()); + } + + public async moveInputDecision(args: { fromIndex: number; toIndex: number }) { + const target = this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-decisions") + .getByTestId("kie-tools--dmn-editor--draggable-icon") + .nth(args.toIndex); + + const source = this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-decisions") + .getByTestId("kie-tools--dmn-editor--draggable-icon") + .nth(args.fromIndex); + + await source.hover(); + await source.dispatchEvent("dragstart"); + await source.dragTo(target); + } + + public async getInputData() { + return ( + await this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-data") + .getByTestId("kie-tools--dmn-editor--draggable-children") + .allTextContents() + ).map((content) => content.trim()); + } + + public async moveInputData(args: { fromIndex: number; toIndex: number }) { + const target = this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-data") + .getByTestId("kie-tools--dmn-editor--draggable-icon") + .nth(args.toIndex); + + const source = this.panel() + .getByTestId("kie-tools--dmn-editor--decision-service-input-data") + .getByTestId("kie-tools--dmn-editor--draggable-icon") + .nth(args.fromIndex); + + await source.hover(); + await source.dispatchEvent("dragstart"); + await source.dragTo(target); + } + + public async getInvokingThisDecisionServiceInFeel() { + return await this.panel().getByTestId("kie-tools--dmn-editor--decision-service-feel").textContent(); + } } diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drgElements/resize-non-empty-decision-service.png b/packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drgElements/resize-non-empty-decision-service.png new file mode 100644 index 0000000000000000000000000000000000000000..387a00867a851219883fdf248b10814823cba8fa GIT binary patch literal 48791 zcmce81zS~H)Gh|1gect@gftQ&tw>0BH;9CEHwx0FbR!@o-3=0gbazQNNH^TE&pF?X zKXA|EbCeCNz1Ex~-WYTH%See}pc0`XAt7Oiz7>>1Lb`>Hgmg3O?j3k#!rPGp{<>i! zCnA89-$Sy7g!BkWRPeQeW5VXNlS;(W+0WgbP17ee-=0<8rq%I_$*ziUDyG-yNPb@) zqlPj%q`|^q)5$P6L_e4oY0z1OEG`{eWsyGbNyS+8_1niM@yyJu4g5ZYLN~k#-|b#$ z;444h@41}m9YWu^cXe~yJv>Yo4X66-?fnoJSLoHNS3;RoaLWoG ztgNhBT3QM{uH856^yK8QP`#VZD#k}gqwyHj9>9+dW=PU;EwN6yX@4p zbwtv&cXd(F(gui-yWu!EIBdkv&Cgp`$UU4dXJKW{BcCcQWplqgRMykev$V5I_qe_a zBH=7fmB&FWU-0M8xAB;?x<<7b76h=`+>=5zGlB9jjW>SiY5)ga&L0)Sdo4#hXolaw>j`r_hsFD@nCD$dyzz6*zRI>@@Xmsf@ZYaWtA(+$5BQx?3{NR2TAce`Gp%iG z`~w5^|NQ(^YB8G>%W62kx~gK%87-t}Zdlc$`_gvx0fTz^;^uhCI|GB~wyQEUc!H7m zczCUay3Li&hqReeiK&V?N+i6_rKy8hh(}C7M#HnbzC30%>U(swH7T;c+%4|*5aZk6 zno)l$a#2xH?ZJTf=g*%DE$5o7+pFk*ICJAhGp5JX*70s((Q|U*B3W2SE9I&EO5n5^ ztF(HmrKM%>&m?FNk&qzK7D5`!W{l-_c0e;%xsi-{o}m1{!!@URH#IHIX(>|KXr{JG zbFXr|-tAna+>}s0LxN7;{TGdy%Z?IvG`*@^#)UaGCuf-}6)%%U78W5SoJ}RYe4UYW%6=gs`Ku8SEPi4PJUj{4SH}%(CPP_MJ^iUdXd0TDPMbwN z7kiyP*4)yf+wZxbK7Be~<6u#h(7bI!fXAru`|DGYlhw4)O+qC<+PO$&t;cYYMlTd) zTUx}9qz~n(b0`&P1&4jG&Inylw?V5m40X}G#RFKKV8D-yS}h- z@y1E*a5@?{TpP(#_iqkI+?I>1qvK0%hwa)A`2BdXv9Y$BV?|TjKWB5R%LdKElQ2oS zT3{8wt2{Wa9nMi^wOdz+y~_Z zBG_11a{bvzmVbWUP|DY6zc}6B`sV`6oaj4s$7B$C;d-zA;wvjF|Mqb2DEtW4N32>6 z&EvQ0Q8B;$D|1cO$XliaAFEz%7C$$eW4z-_%Pfzss_kYn=T&1H@WlahBRm%Bw z&-U!VILUGT-o@o*ET3ET^n6b;e{y#`$0S2imOGd2>d(w%ceQ@wf9_9jcm7wdN>Qpp z0j!N~)8~65vymMe(K*;u5{2S7c9){Hi;eo9#4o5slqb3zZ&N;f>UDDB$f!~I(;E%n zFEo@IUf{pJ2%nnLxKGX}Atr{JDV@w{qowVBN*RdH#JIn~U`k8Slfe1r{d+3dix<>4 zncXiOU0q#s`Rz7F(lu-ByAn9VbCe6BIJbicS?}Jx`-qXTCx2t%`e0DHLcz@CX!G&o z$0;qNk>!aT!+tCx2%a(H-odY&xDTbPFE%TCz4AM}f8R9b$Di6J=J zp6-M)2CE7+4b2t4@$TKbzrXOcACQyxW=O_&Bt+Lu7|S;zin)S9M7QYFGpMjOD?L`* zQ=Ev5?22U_uXSRDtyo-a4>t&KS|6ezb3f6Ynwqk7aH#lD&k-0BQlGZOCO+9i9Ln#o zO%ngY>PRp|I$;qVw?Z zyp@zRfHDj99xfciX+w1j<$ftAN3iglG~wWv_M0)?MI8e@zkk2=^ztHPeUC0HD=R1@ z^!$An0lc7E@5%|)3Kkw)T3Y(%ty`T5@pTi~>Hhuu zrDl^+$sSj+9@poywSSw?OsA`H%c^aS<0YtYP`x$xOBIbLofdYH?AC|ox;bXwt@I>9 zzhX8WD`feFyHo&+b8)s&fSc%p*d66O&6*KsH#s%9;YCPip6iSKQj_5T_75Y>hCL)T zTD=(Ld%U(@+9gLPEabaENIny=%;HRPC_TyIUzYR%9P|qhfb)Ae zn+lfx>~Ld$NM5=K(P2NRSD3qXj!ejBN--RH_(9W~gP0Q#xCu3{xvkANTRw9lFY%X^ zrR5`T?#XSdoML!ohUN3dGPz5SK@}-1=y;3d-N!AwhO_l<=}EUYS5`!}CdzKSblRhU zh+l#g`YxL$97N1C0dPotXf1_!hM=GjL7}Fqykn{IURoMhys@B*uKyR&C+8rnq z;Wn!tPKb#3Tu@LTd2fma6BComVY_R&JAQ4vgc_;gVh_!t{*=mQxeHObp^81XUVMvw z=hk$!o&Lag(c0ZsV%xO=Z)I(_NHSh$m7V;JL+5I{jn;#;LD`&Pdd=#Hm1K{kI+tTa zQ(eCh4kBp$)97V9UCj>nmIg~s{1u456{g)C$G)|9Tt&ZiaoljNxq2K8H6%oMD~Oak3Y%IgVqN3N$S{(I z;91r)3lcAOt9e1dClWbIdEaz|;xPG6J_3Xoghn-F!fsMV1ktOO$H?|Q6AFyCo^%ZJ zr*!dX>-m;@aqJ(I)~6I`acLt_;fI9NXlxnPC+`)SPjf+L=Agc8RJSE@@lf&%pi7OSnIudbg{#td;&vlz_1JKd6ahH;kvZo^uo9wx9>yG8$Kd|X$?=AX#p1n)&N#C{Gh~&)kONt;y&%a*tXC^-z4=ifY;) zMn+?Wj{#9EXfoja)1Va*&mgQ0Nt~&!B>SNl z_XdsF{(TIxCJtR0}q$yUW|F7K@&Zx?It100+d0Giz>;{vc1g%( z`>ZpXiJFeCGox}i_Md(DrrYdu0bK%Dj-G;wYJO$KVYHVH9!BANv6M^_v+hkOG4J*k z+hv#qQUTq1`)tx{*C+U6Q%^7`t4E|K!nY|P7&&d0RrH~3`$A*8gHG@Yde}l+s3AbO zixvKB8sA*;whXd6;*EV-vQN(q6mEMp{sedm#XJ)lq6~9a8pQnOL|M+zLVqvxIcI0C za4N}SK0G3#4!}qjm($bJi2(m`oHgCu>$}ZpL}j<=rH;3!5zQ&t?TE0yzu!Jkefs3& z1QCQdsK`l4Nw{In&|f!MIK`m@WQhSgXz%Q#J1qVY&8SIxP-C!A4gsXY5}O-e&7fJ0 zlP=dDK_lN0p{=Erq-nkynVtx{bxQ}ZH98U7-SGC7nCJT6z7gC+G>TVW-$aTv!#-u} z7)_MY7#kZSsy&31l+=A32?;*H<&f}{&!2yVl5!_c=>xC*NUkaZ3ug_RRNHTLEOkb! z0$PPlr`wfse)S3of|?%iDWKS}q@*5*9(5y|lAc8FeF$jmhYw!^^g~1k`~uI(A1}(~ zo#o|La*vDG8zXt`?d^?|latH#ctUwf*rcT0&~yozbv_l8Ib) zG0eIGDc60#lpeFQM*?~dhhiDXRR23%nom?rOw7LsBB~Q2N2U1PJqR!+d%}@{(vp|G zyvHQaB9|sD8kVY7l1kJybhU|Jn0`|&c~3!|c{Ad4-=6jV@LZO*{lh~_Uf$_t&$;)P z=f@%iqv|37P{DD&4GA>^cJ8!&>}KP#)i2fAceW=pVy^}lNv*V{`K2&&tqUbY-1k1I zIbrqF&y_v1v&p zAqBlz0f&m%@aV;dkszk}6VJjzX7#4KvJAgkTUm5|BGs6pKSd-irAR250rY$C7sF*0 znEV%gT%26cRG|9qhiIRlEQFTmG~V>|^fc{g)Y?j5HM~DrVS%Cp8zxhDnnT$DZKWSD znp|5MG)zW<8INnXArrgUiWa<7u6V%usNS9rp9(Ad!)jVIMXsq)4>rfc|0OWq2gCxF;uS!Zr95084ulRIUFq}<0rLv_jM!Ffxx&K3 z=`MuTBqY#*oPUSAvJcfvoHUMpEQ$vhKE>_)sCKV|?g*VuF!H(OpH~2C=!HrUzwZUL zeRo({TXFSmL}lg6`txmWAkCdyB*SHi_QYYfX%HP>%qGi=oDWT0eDP8d%n(13+abzR z6)NU4VPI6_gGgaL zy(f*0jj(^}0mz7Txc#37uzGk_W8VV|M++!!jS{^K#-u7ETmym?p_=gg{do%{3}O+H zwmq)M2M(G*8TH#jmVSP^gnrl$1pbtXs+h?vlCyHE2^%a$9fabVi1 z-M~Vbk%fM=#KFPOJIP zn?7{3iCtY1QVA~`qZrgr=6uNscpRCpuCCAtn322%UcY~zu~~x9&?5SODCPj!%Y>TL z^6S?)gE{C}K;{zo+~T0cPcWFPD*D<-ZG8DYPeDNe)TkLEfz$cm8PF)`%wqkIXmLT~ z0#ul#S@S|Njx7Z)1aw3eM41370L!1VUVy$s$YD+bd$Ker%}>e3hT|Z_c=S5ZIB%n%V3UwY02dDBzj_JD zSE6Nm<5{E_8xaOk@SR98Z@Fy2>JNcS5!l2Zl+$VX&#T5q#m<8y;KPufC zLN0v~&WWC?0t}CH*6o-SdQmzgA8umE14UsiEi&;a`o_-AKv)nZTQ0xUVFuGJ1~Np^3S!k zU|X7fF%4V%9JV?$yxX z@wNAGdpbUtm?Mg7nW^ETX&_yEXH^B@maQ!tq!7JI;m3#w9Or}8Pg(^`hfZ6O;SZ4D zt=|LngH%JP3dJQQ=?MK=HoLvm?6?xRkmc3{J76H_I%C5{`fYx}!ApH9Z${eFXQAT> zWm4W2OAiYn<+eUpm9^y}1qKfS9zG!H*j~g+$c2&lxM)B$Lb0CKduBQ zGnuFJ5?~`jm7$FNZ-4yqWehxS7!<9CWMonj5wXKS)R*JN-FbNd{4l7rJi{bY+!Z#kl<$l4E;LZy%q53JY!ftqFtX znrGX{aQi?=ii?ZizJ2?MhQ=QXG+`XYKM&|RM`l<+=7T^QpaK+GFNuNdW!YBH+11t3 z-5m^dw$OB(ML3v9NLcs|lGh!KClnN)pNfS11wmj&ju{a`K*Qa@W7F(^m~1mJ{=$4U^O-x(Mj$mQt|hfszrLp5LpH$UQ4x< zzv?ul5IXL`#%L(8s($E~EK5&lF%1n3A>7}nsKgu=`T5<2e|wdblt>ocx_Pq_unIJZ z52N{3r+Wqm&UHBd-lr<%8rkyJRyW`zxFA%p&I}b0!4Pd00WCV{3i{GSFrgNFwqjW_b zg$h-(1w?RiWo2bVcm@eSb#ijb)oz$sei4BKi9$(5wFl5iv`7Y{s=B%uqUweDlu@)^ z<2x4IGjzBFR1_$b1I_=`#jg;8_&7N4MiT=P6BC_wf8pPN4ulIEYB-c73;Vo3rXSj$ zEl&;jYv6I_bR^|tRC_NcCnw7qz%;@1@63vQTe*Pmz=IlV@Zg7?8X*T&2K0l&OeoAF zbBs+_aPz-?Fo=P>z8A`T(!#3`?a%dWEfZ1Hkb;H1l9S0bt8E+G+EB{WgaZLhJv(u=nR&aC}^rXGj%{JzlcXO_JczL zJxFfzv#R=j4gLZ$GI9|};WY`;cdZOZ3beJeIK)z9zR6{yZXIZl)@%Q3L`u&qhB`Vd zy-)%WxX>D`58MPHsW{9ywW*Qd0CPwgT>E=)K=JIEAA&E($BP4$0%a*3pfEy@1rS;D z)xAs!;2N|SPRGBG0I_)pWj+-w%N*SR2P_S-ENu~Dlw671QHZwlISakR?d^akGMY-I zAGr zEAtyXOArxz!0+F`t-0Iko`CEPo@BZCv>Na!Sq9BI=STpGbL;DBt5)f9{*Yr(RDo6e zgVx}3a?G|HBf)_B2eM?-_U>x`2I|%ZP&PN7*1uTx84ki&Y!9ankBCs{2cI<$LO;oA znQ$GFXVnVAOe(W^a*`OV(IJzv|H?)UKKk6;T&`9f5j8cni!WmoyeSm@sspyMw|PqY zkXE}*XiSC9hwA}SB7P=w;5YIdjp-veKm|{xTsFcqb6(X0G~o~mV({j;Wfa4?*R-J}q1 z_;(IlI^z}s%OEMG z5QrgL-WNzZ_%x6oa?FS@i`XpAHTgew*in0j@IQ8#fbbEXIB{z3kztQ58w+bJC zrUwO~GiufThH`rX&Krb%GsrPxkHeyz(CX{!A&3UQy}kv>`<(zEu?*wsIs_mPf|3Rd zX^fhV7|_H=U?wacR~G=@#8{yF1`8v)uhsl*V7+rt#TJ*B!$7hCTs%HL4&Ma=LdT`~ zm^KJp4^;1)u>C-BcmMu>xK+{T7_|C$0PTqj*lG?<9Ja;N^hZ_O6m=Lm4cQsuJ$?(KnIrDPi?pg<^= zjs<`n0u3IG&3NE51Q#gg82_+51?LyX%n1GdU}rY@+qZAr?!oE5{Q?7Pwn$A9r9_O3 zo}v0D;OO z!#Zs9q46W?A)qk`7;EJy7F=9&{-GJ$XMSwEE2*1R{{Dvk7l8PML zUD?~6_j|zYY3c371P~43Z)s)qI%l{e0g*3?K9X<3{x!Vn()4tPe<&h>^+kgSBQ5 z`NTkPG_h-^SzK8G+)s#@U#P!4QU_vyNTM~+gZv9Xod);Y4>8hJ+4z{YLO6 z&?0<+@8)Y%HNoAaXM*9X;*1AC+8?SECZ*^FdjdyauKvmhoOhO!#_(?oWUkC}E)5dEBl%hnH&dDNQgyb@LT zz3}$WjXIB*n502i2+*Y=0+#lV{qWe^6G3^}Gst|P{_oBQGR+)S0_gn$xub4Tr?{+l zL+9_GMua!HHkeuBxT^>H`!rUl1qio*rs?-jTk`1fc_Dzx)EItwKA`;a1ab3rI&kxE zFnL>`%w$6-`L_Yi4g2y1;n|v!Rm3MJheFfDAb#-4?_ah-eWsw) zfg%6ce8;CZ$d(0BGdfHe3CuZ+IhmL+!`t7Dnmd)L1@{}Z=rBh(CID*lOo@=7vU#mT zdx9^H65${39(_~5uPNZ!gRWT@DjX`IxmjFPX3@uRQ>i908r2bcdq+p~lYzJa+(gY< zHTGtuY7B-w2{eOF=F3nP1ycS%l&5z*=j6owSX_SmewZ?;ohx=+gCIsihyEEs5OR2e zB=W8V6(nEf?u1|QeG_rfD)g9zaW9x5!X;#4KXm31C)G)6*2&MtMMduL^n7jXR{NLV zLP7KY>hG71FLn-Gslkg^ZE)v>Wm$s0T1+znSn>p%A-{ltVs-c9RN}zf`mbN>u*JRY zZ8z+VeaEO#*ZM1ngz>$`f}AsBdn_k~RyP$pUG&gqZGe=vpIF|VKxP^zHxxfs| zIAADn2%Z2N0xu>&3IplC(W2em$4^p`w{d#YVOlvfyB0Z6J$gml-rtEEF|{*Da~=PnhtaJavGJ7F&G1?EPm zhR*2PyS<=2_j|e)CdfQ0v++HW7ml^YW;b~?WoTaI$)(EC%Fy5<|N2~|BST9!T9^)M zV4>bGR0On(x2P9|o6676hy0teH(H;LN=}xBw*|a-0huO|$Q8+`Sq(hgW1{SXaz98G zf{`}LsCPbsqqn!7Q*aYODxHtFB|)|{cNtxQpE8{+4+i(b2ds))g|4U8Alw<$tf**C zt2`r+q}oHLDo?C#seXE0$hduzTAqcLOX%@7CkC&kW2ry+HR@5i-7O1SB3zU7n`LsU zGCVqrk0Nj<7akB3cYeNyefR$TW$?6Gr>E;~meAB7NUhV}JK#R;P0SM|vwRo(5(!LQnyI z66tbZs0f{%<(TScri;{bgK6EXD(Aeh(V=78$3Lg<6%gHb)zgLQPme!xG=aia`hr!)MUANQz1Q)0YRC`sR2mn@5 zQ9wX$)MO&qF5m0gJsj0uY4OKK%pjHPJ03dof_OjyGXtP2L{5@t5-W4D#7JzOamViR zlj$7CMhLVGXRp1Tyu(*&w)$qjdfO;sbe6hvyEMvbXjIv0&S&Wnnv&gf(YZ&rqXbgE zCDmW;P<_}nXVFaNj|jK;)5}V;$raudA|G8D^Hu$slAtE$j5ANrZ|5YVVN~07&p9z# zN?M^^I=b;rX!?i=2XLNfld%=Bpd$YP>rEdf8(wm9s-nR|Jn$B6lo2jyxZ(mm2*_&m zx*aG>!r2Ne1|2y6w4e@i{HZ83Y_I;`MS;pr3vIV9To(mW^w+C7pYMI8DsAXR@oH2k zbX`A;R8{z~;qV+yx`|DdT35|Scq*m>2V-8#e!(GV%}23K=41b7J9ZZF(B!h?UY)Ds z*-+{tBXJ&lb0XR?&avp-Q18Adlz^rn5gIhoD)h z!VnXX>*ncc(nKlhIt(xZuxSW79#K&tQh6T`?#$j47`Uqg>1c>q3WO0qK7Jad55A;W zgZt&lXu}l(NU7zGI4d{g(&JOyN%J2*?_pjIoc31Y{*f}sTqya*x#F&%?zn!3Lg9D) zMpOn`Z>&fx1rGZ2EIC@)XA;k3revPQ?3k-@e8Unz;xKjmeVBx7Q{Z_oT=Y|;5&g+? z-P`EG%rRXJD~p6DCbOzan_NOse6vLIc{0p7E;dQ#T9_!os3>Kq-QCR*n+MOKc|V5r zfBeR0j9LeG_v(Dd21Gpsw}-ickdP4jx>)eO6hU${0Q3QJhT7NWF9=>wB^h`7Cn%tP zK|!@kF$oDIQ`6JqMfxb97dtvS{((u2(?hWW3qMFl8sL886GXQY?(N;&%{2jr(P!CSTlHVoFy>J6wp+YqHh0| zBQB_-i>~-$kvNzj=!+q<9y6h6_rU&K)WU`1Do-nM4{N37gETJoM%lEc*Li}Ovav42 zn{1D{Uc88c-6;VuNc>c@0z51C>r00h7Bdoc&W9&}X*TgDXSAHxD4#rix;B)J?e6Xl zEa+`Ns1L~Bb)KaID6s}8Hv>bfPm=jPu6Q6wp}HmlIZWv{3gFo;8`VPCt@lZ}`U-X5 zfQw)W0{h{KYUhLRADo{uc@za+wEk`xtb zlUDZNb)JBCJ6AzUX}RgR0E|X$$|hU$ikw&&UV7oV52q_xIJ1bY(D|Bdps{O1sHIYSh@K7?|RVY;cR!^QhdFg)f638%uK7e@w zI_>G{sl(7yJsLbIjgD`JQ`fk(cw`^u+xFbeEFFeC1wLW*;Rd&0GCE8pK_r zKQt%!U@GrFnH;b(4DH53zJh?Wh1F0hL4}QQ>8PcXYPX6I)1D}pWE4OeVJ5_KsRMU! zZ;#eZx*A+I4jKZncHp@!p1R;7IN)Rg9;mFTNgLg$vR*<3mQGDciCm}UG086#r8oD^ z`p(v}*`KZ@`VAX>E_Pk9(Q{cmjlrBqRFcwVvC1J%K+WhS&C1Zaa_Wr-09L@83m&=+2u=S^M)>SEYnq)3FUnv+>p49I@D!> z*G}RokKh>{W`kXla2QDv&`8~YU7g5XdCV9c1FIOyfSW`?N_rCgO8$g_4Zt5l(WF@TDSst1k9q4xF>=;l3; zs+F#%Ecfo+`<|XI%H;K6K8YIn4GlYhH^jK^!scv4GDwy;b=ZhtLt$K_u7zJBDmZyB zSoq3fTuCbZoxtm&zo&s_cMolvjaZJcjE2SbA5a9NiUbphW~ zAYt2_Dr(+#nxbcA4JRDT=$pS{HgT$+n_HI%Ja3LU+(tiecB@Kmm@TPu+S_gGxa7gz zT5fus#^Pa5$|m-~;?05@`{|!+HMNFXhXg6z2w`+s&2Xi9$&ZaObVDIl%0TX#&BO(MrNFgL7)Tnj*3dR}w9j^nRyxXe9VsbPX zq+B?OQf+{yp=?+1%oZDn=WErWQld+D^z6TDo- z6%c5qGygbD*+C3Y$A6#>&En2?%AgN$Yt@3WVNzQ`+P!HLu@P}XOXtE z;r!+c@4!4>#ieYE9j%r&a{Y_X9QQEHgyE6YD@@-n2N}b}I}P8}JEy9o>!nX#zq`8` zMr{nz8DR?)G+nPoq8dafa%*v65{g3y$NDwPK66AACxZ z;(72#QAUM8=9vO=LE2c@V;UN0u6MvTX}g8V^D#O)TGER4R+(D&Qs=Vb3QP}xGO1DL zj9aG_>gDCNiO5Up_AlRARwv5nfK&yM@m3ENkaAj6z_1Qesd#C+ilx21aGnx=byh`} z`pd|K*P)>mUkur_Peeuzby}K(+c^kik%-DtzZt&vmddL&)+aB_a%>y~V$ zUh#JUb2i%16pDe@orBC>H;ljb4oh=KX5-~{Xh?0LZ42|?blZ-$Mi#EmyGJWu8lAjb zYa3~sUkHVy)t#NGOYbO=O*@Y{8F}YE`Ik;4v;~(-&W)=eV%BOI-K^1# z*ozTCPog`BmwQ5Ob&m5lg#L8D2~)~fk?Qobtew`pm$lGo<8~G5fra%g=CNpU{srdO zx$eJ~b{Se*YPA;wXd2ay{b#P1&UPxrjt{Y0Ln*U#ACAtr`w6G3HfEc{M$f9BpP6?SvO zbm!WTME(+C7ajEy@pA%62cF~ZZeoJfxeL; zAtjZ!O0pdXBXXO=GeGH5lycT!gF)-B;N|1yjtB7raV81OxRjL$F@wfLI(9-rRd2LA zKXq98ulF^-FU2rr-JD8{J(fU27Y?_3^P-b$n=2T)NS1;|m8&;hbitTeebZ8>GW4u~ zZY!|>LuLX$7?fE#tNR(h(1v?HgRp4qUBdY7ca|5Vqe{$1$pi$NR>=-2UGICKEH8g~ywR%jCq+F1J&*grIpF==&X>oSo7Q%b3cRHVA!AU^e zImnxuy9M)Rwfq*0l5sDVj4nj4raZokja_ynJkJ}uu9uAS0VDT!)~HX(Jb&j~Nro%d zgJt4{82%kzEpqMBtc29Gdtq0}2#A$HH zTkrDkB~dlc)ooC#WMpou?78Sq#bC|05$}(cFh!+2)vBQkt=YXU;ho3jEO?y`6lp$J zv7}O3{3cHqvid|B&y1>rpXue{CE)=e4=U{FfYU3)JSR9We(2^FFnj?AqrQTWHwhD! zAbKOt*#I6k3rQc{u!7Sgt?UHoFf;unEUY74oW}n5NLP|a=zk|5YZpW@-w@J7iUGBh zD$uHf0p%57PWq>NOWsN{0l~or@UPmVi4QQN1TFo?*2>C6UBMdd+p^T50qUiIkhKDL-*^r`}?+I`WDM zvo>32OsdV7oMuoezuw&)d`Lzuw%NpF4u=<86BR3PW#h5Jhu6-zX!03SD;vYwd(r|o zVQ?Z>>k`>QBIa$cp>sb^Dl!^A(_DYg_56-}rn$ez!RkYJtkvU-KsKYkFTbN0PEChR z-gn0;zvDyWS9vu`ojiY7v;bzzqlq$$-l^ji>>3Y`l$xE!#$cx_?`WBv;i28*747Tw zCK#CuFaxoB$v4@3x>DAB+&HzS+>IhjT%0Za64<$LgWt($Xv8q5Sh@vT19RJ5Dz@ zMl)y8nEH>aR$@5}Lk?ep!I&2QR6esoJO_n*@#?(Uc&hT=2MZO|m5VBy&B>Z*t-AB6 zFlk^m$@wSJMLP@KPA~}N_sL7EiZb-aa%*a1?OgonollwJA)M0%OzPF=60|i^)bTEa zd%>$1!h0CPK^dvhYKQy#bc46yevb!XLJD+zQ`6WjINyMwTeSCrAb1$0RR-Z96;R33dhWY>&4 z>+j3CBb?@>QPNs0o-6DvoL;Hha}&;x{+XLIk3PET=vX;h=2+(H=H#~NI1|qr*n);{ z?sV15fAtFbt4z&?!;89F9^=vaTfX;WkK0#I{x)xp*P+4e)Ly!H0+(Ib4KJ<7?3CUm zhP_CIHf{D~+e6u77h<%P^bX{TwCqrHFTqrKo7v+Xg187(xIbXmua0x%);89DMh}hM zv~q@vO%6weLi%_5ik^b)*hc0SgL|#o3OV;TTQLv<=th?6;IOkP%)wdtV)pNSYU)&e z5o&bf=iHmoYjRW!I-c06?&;uCI%CSKV?I$&47 zJ7=DR%ke>-mW3N8{VpQ2xirZ}A!?{ZSshH|V}T{Z~K@oX<&_Z|fp(h$+t2!2pN1*v-Oij0S7^8>GWV}}0X zB4MRcp^035|7YJ!l%yoG3Uo;mnCPIPNpG+rgL!-vl_ixJq@MsT828a&;$`>f$j7s{ zvfoIsU{t>3Jx0yt<|0IE+aubzh%hS?R{pHvYS4on2ZDg3Vk&)g+V{cbqKp!m@J(0$KFq!7 zwWg9x_*s07Q*RUV^{W&_r@2v#{lF!2&IYf!y&U=T3J89tNJOsw&vOCY9BA&b7iA`{y?L1yN~f3k)mO zgWQ==8SdRT@9LX-3dK_A;P*rNGo2f~2kVl;K2Cl^*rB{?S$)MgH}ILL=H~UtLX=@x zNWdz2dpHnCN#TbTsR_P=2mG!LK3V3x0UCAG4BZz_&$iv@CCL;c4V3MJ#SH4JzCC|l zZ*#Yyjav8iRdr0yGB&*n#;9Ck~$Q@{$5_1iQ_MO^vA)e0{O>0j~D(;bB~u zjf5eHP?!Qx%R6%3@oX2Y?{87(CofMba0q+_{!@%ZRLWagTN8HBYs=*P*M0O-eqadE z!Z?!tS(hr$=*qR@(y);NhXjs;U7kNU=G;dYPMsU{vQ&(%|1%39q|BhLO~hf`k*~?k z>AL#BY=ZChtBn_C<7GA|kc)RPh_DD$8YE8hPLI@Ko&_3&C(P^;1^YC<@!f3_zqH^S zY0HeV8YioJJu&}e$3$#+&K7cnn8J_uf=|?Z8?J81Zqa>0_`TXFMXrII50`*N!PcLF@ zxOCZb{yvx~INF@)Cbp2G-BV#=+VL#Mz2vK|9-+4(Q~Y$w-NdsflP>d3iMId8w@=C# zXM%V3mbCV-iOJ3QrOt)<7Jme-?nxRcQVogi2jA@+$U%a6Gw{0Rnn}f!s zIn$lX3|}G+zFRgsl*1{t!9pRhN*Nc4`-J};JOCU3vu*@1V+ETj2V?(W5Fz~Q{{Dv| zA|jB7h?8Ex%zA}0Oijei*ezy%_&~g|;)r zo9j-FFyv|olEFq)cMvIWfc@4aHjMJe&bWNkeX8{)ZFtY9 z?TG&T9Sz*2LFck$S3I}x71Kf5_~qQiMiC>TPkQ`(l_Bls%RcMg9Lt)CAgZ#OtBs`D3@KUbV|P^Ib|5E%aL)^G(EwD9RdPm3CZc{?UBXNoTfGLbktKzOd}y zdrD=!kFiKBL4dX_GMxoyI}o3UF=nF)ipuJ$5yCdKHXGckg}(&_1uytr9LUHNosK;& zY(1YK;&&G(>xf40_IGG}PsWnbCPX5B=?Pgi|8VOQ!4Z5oG%=rl_!SR7 zOZ)@FH#~JzKY`a%eRn9BRUgx)(BZ;>|16$wEco|5BMY4a8-t7}^$jles&z8wIn;k@Lf=^=+M~zDvxK zoWW4~(+YPMn0;2T!M)q3LwB@?x{o|g+E&Ktcu!XsEy4%fF> zB<1CIDkT-U?N^7Ac+37A3UTeWT<(mxcA8b>l$Q(3Thu73m%HM(tN(3ndVgKOMCg`n zzcrICLhi2OFzw_!aPtNRu~L@HPO|$L|Gpck$HhHoi}v%l%fIy9PK&x`<9mrsbA=(i zM=yh`&Q_|8JMzAA|B>>r%((gK<932`O+baIti4o7PlHa(_G$9vsGaMqKefG5GWo?T z@&dK=aT_x3KlLc*oaNs`%D?X}o8NEt)3~j>87e){Nmt)r{=>wr!mWbuj4P|8=6$EU z;g43rutDA5x?Jy!cV0Ee8YX1}%GOpdH#N4uy5he+mA+hJ^6)?3Kd%pDtbSWoR@Twc zQOsMDmGu@el<0#=PBuRBvKsgxRxArD($-hqvOio_!8XR~C4xgns!EINM8O^wx#?Dd zPbTUfHbp5AqpqDPD;dp*Xp4olCOd_-Cd{Zt8MJS)L@ru)tXThEVOg@`da5im{|nv7 zBiE-h-G?E&n(_N|*<;D;&W6Ky%!V%%!JCN%>OE^II0fR_TG1C|nYHCAdt zL$pFn!XL(Hx?;!tDtyvTlgglE%FDIc_$QOSFYD9jbKFx>2TfxNHrbZghzkM)OOQ&H zU6{($_&fgC$8ptsuwOjCz9?6)(-mj8(;fC%XDT8xsodYMPfkai=Yo?7{V+$E977%U z>Uhc~l!DzDk7(yB_TAeNadAY1LbpC1`T3-<8>?*A);q!;kIv4${A0Jan0uB}|B}Q< zMTUi?ZfhgQY0umS&e7$v&|=MN9oZ$6yAsnXDpzPkw%l4L+eb}X^6|NY+e`*`-+I%mBp z%H+*q8hVQ5C0oXh^eCI8JdD{7!>RE@_#6?6Kd~*NsX~DVa7g+?-?t3qMMxj50uC0T z_LY4rRYjyNBEz3bEye3?XjirF7R`UtTG!rY$a+xXWTssup#?D_jfGMUej)Ku=rhxjO7W{h?=9Mwg7VSFSu zBOd%1j1~XJ=_9Qzqa_cqvdkCXs|$zw*oLIVi%UHQb>cE$a1)M)(BtCbuB8St4tQMc zCp+>d#+<@I1Vt5I$`WnhR5szcxcKx}zfuZ4t#ou4ST^O0F zvMF=gf3K*hD74Kw7&kOLoc-g67<|+c;ydu!O6hPWSp}K{e2&Ae`>~agX&9VsiHMHQ zgfm)nbadimp}zgdNPk+*@^N-7aa8AJH@OV6{u^}gS`zVBV@-#(jddj|J#UFUV4$FLv! zu^+0eBAQO$kG7pzyFm1!yw^EB)@$(S(WChvwG7iK3X2*lDk|xzsXD&CB|aeA2dGp2 zI=3Iop_aU94J8FyR>Vd)mS5a0z<&%54P{_A6ORsnbQ2{>>VdU`P-gJlv*-I}o(?B3 zywy{x{UD*mrn;C>R_!H7T5BcscCq3_!+ts?gU2G8*raN`Wx)w^*Asr8m&7f<BAnxQAT* zPB2Ux>1?Y+A!Yb6^?VV>(d!lZY-WmzoJ)HEu6&Bv#-spnE*-%%fe6{ek?olw5O zZ{!QU)+VJBQ7ykXIq5^>xFfJ6aC684ZpOuBO-*?TZQa`V)k~6Y9VvEzmP+&1ogO~B zwYegiNA}MpgodU|9tv2I1RO(wIWYki5Yb(uWAzXr5;zi=Lf{abn<|8Nxi*Arx} zli}i-)#LAxXy7=1-gcu`bcFp{*{w##>%TB+xIZ}9jwNv^ad;fC}fJJ#R? zxQz<1vgbcsVwnE77V4 zCXXDn9!sO!KK*4ba%{Qy>sCoxCGHrddbbd=ytZ!~{T?l)EtAd^QngOE-HvW9Dohbe z(mq|zKKFj1QclexMrpf6OxroJxp&&W=Jb2Gz9_1Rqt=^_9vD^d5$-2z$EDZQ9DJ0V z+%P)b@YTl0`4r;CLi=WJ*Z!yGC(C~Zqvb65RI~gs2*^BsEjRf}Ic6;>MC6P8+zVj` z;L)iM9#loYfWxcH zN4@%9H$|b}Igt()BbZd#DwTE$E1t+xFP8cpi;erLn*~4%Z$&XNCC0)}17*g%Z3XYp zUDb_74FeOCbZ8+BgP>COB7&#+)*VuzlNo*DW7*5y>nskFIP-(g7JYkCG7#oscw!gR zV4>$b?{0X?ui$K@7>8Z}0m%WzeBz8;DPVMgV|Vt(s=lV+lqU?tc%`;-@+Q`^Dg3Qc zBw6OB-8B9C>Xpx)-0Rva1^)k`ZnINbnGH&pKnfpe(-iM~ce+0dwA+m2LXzv@7iu0f8xgz%H-5&5vyk4-`JA8R{r#IjBDq1B~+DQ*OAKb^n z6W8~s4!9eEg#&6vbnSq;mm{fnCp#6%VJI4#2}bim2H#@>q95rgNZJ4E!>SUq?7Hxu zFtvxHG$=?L1l;W7!Dvy*o@sB(0aJ8`h3%>;-SHm#`>kNk#x7cbz~{2>bo}}GuSK1| zA(MoDXg80XPY}g$CU>G6tM9)4L-fL^$Dfa$Ax0|PTy}cAi?~Vqc>kiF@f`CqL(r+(js(oNvv3W8-HD>Wxwgb> zs{Q8|vLOHR0E~~(U=BAOUdB*UF4#8nsCYGP?bl59D(!hE)UqrpOrRZL2#Zd*&6_s` zQ`+l01WD_dCWEWTXPu#xk++|g^nv=fV=F&oL8b#2hyWBp=aH+|3($&(M`bVCa3hIW z^9K(O;1)YUTKBFOig{K+zwbQv+EZwu9tA}pvU{`>=dJ_9?74IMzf;rk^4(@!M;d$6 zuxYssf@JrGCF$$&0&BVG)zTPL^D)js))JY7?%rZ+$_l~{EQzHI~fS}~nj=;;< zK7l@&XBt_2E8Z)|c<7)Z-@wr^jUeo?ybCJLIy?llQBOrB2$@rQMuvf|ZUSlssYOM* zTOUz4ggCI09&ibZiMeg0ajaaLcV7Hvuh1TGe(Ire%!bX{Df+gyw&WzZVRXTz<>%{3 zOG_Wtq+~oTMN10Yoq)?}6%xE`Yn+~zrfXoZDdyOk8;o`mMzO=}AGffI+=^@N{$5Td zOZMdpre$WD+1d`m(sTQglfuFp7K;Wye=fZ1C?;%}*#g>5Hg0HZ>CH>TNBQ}ccC<)b zKFBu)0j&}C;I5^4RVWNR9+Ue%b?)Zf*}neafeEj9`A}!S1qku?Cim~1A}A7GP1L;Gf|N| zhF-n;b_3V`;`@-(X^WTF*^0i{+9Zu8urWAb?-qTbTw4Hv2YIPa6z@Fy#)@q1Y?At- zJGmzXw==$}+&;gXhMO&wCZ z)~vFn*RsD(Afmh|?j?KhL(V434MF`CMG2P6OR>uh!dJuu?0SzE@M@q>IuX8Vqd65x z{bzCeE|UoN+tx16?mHHRHyS3s&!rJRdOpRBu-Ce?#ua|vSI1p`*Kdt49R8`MrzXqU z1>4$*ZCbIsv`{2Xv(Ob874^{L)3Pv7=s% zPLF^+X^80DCUWelw*2(bEVGifXqn%rWhs1o$?eERNLInPIGGmwKtuXSdPa6w2bzM# z`#6G;@`Ck{qj3u9z+1N`hud9t&5}v(Q!AVGdwNDrSGdgkR2+Jr%JD3tJbpfDe@o}I z6F^1ec%zSg;$*GFXRp13(|&_qdmULx&$v$9CAGYc^Zjy%I6t5_l85zr zD-sj={ZS8V0Ho*Q%xMnjFS2he*_yPnPf4)m{%g%%2L8G&=R0x!bb*g7Cyb;aObE7e z;F*t^t4KNsc017|{Vrg6k+9WHX6kW>`g-hQlM#6#?9$WMAM`BQaEv$5hwufwwGuGZ z%Kk_qT|d6CQ@bnEe@;JOp|8IK^w=$ZaoQLQ4^!$p@ zqZ6S=78F*ulqNlV56>&@Kkqe-XI$@trSd7e6&aZTfE@vPiJ2G@wiVmLTO*|Y!0L^7Wpfdt3UQUEbn`L43S<_ijc~k|6OR zwDvrt1InN7cB1tU3LzS3%5Q_rjdzc23~{BcgO7a?-?2l!l?ayb{nO}(s-NW;F9BIF z9sdm|=jWj#N9?^Q4jgQiAdzAn$|a9L!i0)}I}?purYLu@gUp6vsPyUYX0GqcjS;ND zTxoihWEq;9$EByI7b0(JiraS#!G9@;%Y(BE-e`xGDPbqiIClN3ENR{Ixcd~Og`HaZ zXo&}Eum3sR1$Kc5G@wtT10NHA^ypF8qV))5oDpnZ5i2qHId=}%8F5&6{c1{d&zW_| zEQQP1)2yb%<~jx=a0`oqhZ?(vv`(#-gcRJG6>0nbDSf#&tk)-n=en|u1!(RaksVkK ztE$o^DzRzZfy9;7=zJrE#>DM1GRFW9f>(>Dq$k1J0hx%S=H^-MvYGC(B8~Yr#)gTF zZk@EXp});IQqDh0O4^2;Fu!V#yu7?5-4#2E1I`C*G^|p3GbK?uo#ON(qv(!gjHW7}(i`D0ee$uC_`O?3p=xY-p*(f zQ+8Wu&QS8c)HO@n~=21`;HZcB zlo^~lf;WVT>CcUk*p_}T9d${gA^tr1u}cE@0RSdNlM27bu6O=QtXvyc;m<8c&DaTJ zO~)-~gwQSx;pD@N?9y}<-(7aETF~V92oAE(X*FJ&TX|as3umx*G_#-(0%MD_0n1O$ z&zAK+{bZ_p)YgD3?dS|~CGVi^G)-MMIbnGO;k}5hDQ4-YF0t?Wa)|5n+dMd? zwutjysx}R6h%(cX1mm5YocI?acoej;D4_C3x>n9Lon)p?;+nBNt#*wyK~tk!6PEJ;Z3~Ivf-*S(VetCbnvkLuH`E|3i zapa?>rWxDy-MSDx2*)>PoQP=Z){@b>E|)TXL<1+XOZ3U%*1VTr8b5iAqT8=M?zFb+ z#9L3#{AmbMBX+oZD?UEu0IyaMR;jr7SMGfUY`Ig%-%Ch6O?xuhw1~EOBAGY@HB6Y4 zJfV$wo7M-Ri&_ww0pZN9lv*M}0e>ZhKm{RJmI-Ee8t5{k=ofAW-B}v_y9ff+P*D$) zvx8I`%y2i9C>eWZs@IN>;(NeSVOeI%qAoenXHy|ZuQ9Z))47*qiB+7FL>s;s}My>hui z8;c#~2Ql!eQOo{z7kSA0v=IImACK>vE**cm+zDyy*x#JyVlj5F&gi7vYg6KoIsfpn z^Kuqi+?{$0m-l=dVjz)z`0qT)%06_dZ>RWg+;6wRG4n?q9Y-s$iyJ^RNjUf{*4Egw z#4L8tBwq#8z~>kGm*0Ook0!iqXi}&3FU_1Lkj&E4e z2!}>4^d2?zpBs!RMG0(rAY@@TEssOpjZ@cCiA`O8({o zgk|GUd4FwF!5XwfU_5Ot_iZta-n@bo2;ur*Ws34k0QsB(gum3y#2K=f_S4^w}gm zf zW$W$@w9yT(hn!DaXlUGVH6|Z5G<0*ekmbB?wq;hGmSgwfq5EgE-HNUC3XF+pXYl74 zFJzx8MR$_Zb~VfC6ROsNgyCz9?v&xgHZX|a?~jws=nsXc^&z$M6OH1J(JzG*KT?`D zT;Ct{Je2hx0bIiWYT2@I&)e|A)87-CFp7@Q5biCoKN8ii_M|ThhAd*ClaW5eyLwIS z6wK6Ddxf&20lz=-0AbFClyn-Jf)_d`5T&Q$%-Y}cP>mYH^0p%ddW`P>`LdD-aj|(tT3yd-12(atfDq z?NVsp7lEu*U$oq_ekFz`y&Q{_uP9!%LItGz^VxkqF2}sRAHzUs6?Fr#OOD4HD9gN+ z&>&AOEoe$Z=x=(wpQv(yAQ4F*1zcyp#2G4<;>Y3?@OZc34#) zKId!m;kPMpF>jv1tn($W1ri@V>OI5o>>skQzF7O0HMp%ZXXv1pPQFe9?BXy{(a|9V zI5o>;`sewGQ?i`oB*-MBB_$~n*BUKioVf6P!4fZ+9_u>>)zx-%g1J9?NJEwiSP~w2 zTT-AcJ8-#=MJ(w{(rCpYn} z@l$?!Xc+=sHE(Zkc%eI5Maw@z6i_5R3z2SUik#nK+TK8AtS!JH)qr@63onegb8fuB7__z_#t$rH>LaFq3=~VG5xt zt*$N0X{cCj?1%JdcHaw*ljR8nFyq8}i&fg`Cghznuv@-8ISEQC@~m0Y$)6Dc=aSF~ z5a-pVp*AIllSsez$xW5FL@JB^O&%aq;&)x3s}KsX?V)gXu^CKH==FWyW&KfHEM1zv zQo1;^&kHb#Cfz72_gR;0!er5Njg$@ZET0M7qBS2xphHk#dKr>JF`g}`;lMR_i0m=JQc;!(n6N~746mqg@Wb|gJ zwN*AWHnwk1xt9n#sey#@AZ-2A`Im9>3rskfnhg78l>m(qA0Q3U5xbNzTN|5U=m(c1 zAE~s2K9MetejyY_<)Ib>&AP3_ulEH!!qV={@BdJ(GzG-e8I8V?t_n*(BMgvXK(amqdKYWum&{Ku z?wB}T*^lM+`wCT;c0$t3rlN*8ro4=((!Wnc^ZmB1Th*}j2=5a9ZSupVT{f}FDshSRW2DEhc-7ZE^<^J;X!<>kf9nktkWXcnh zlhWQJaiwELef0C3c&gv5j6{vt91-$b8uhR^6$*9+*Yuii)U#^%T{mMJ71CfGJ5drh zarWLJ&wZc0_u8c)09=1c1kN4#yCA}&V(LkQ@L|UAaUYL_UO6@&g z!GCE>BY*?pN0%+y)>!SgRjm#UH}_`O1XWEv*KL{ar1{n)zlw0N-0ho+a&LU!_R5!O zf=`qzQk0VU?gV?N_nglWo|ttn_Fm?6_mXI;sJv@%)@h@O=Gjd}B0-{#N6gjtJP{9d zvGlBE^fl9-dq=;9{Pxh#;?Jk{efGS)w{X{b(gXS9i2sSW{vYq_|HqR2(_06xO;d<8 zu7sD+h%-HfA8%~&p4fHx+6QTf@`2nC5dR6XJe+~|_c-&%M-Aq{LtSm|7$Ng$#(*^~DXHx|l;G*Zip z&ST^M=Do9Ng3TSAx45HPzod_1XkYX(Lqlx~8l0it=+55eloj;wb5G3XNhT`6u8o!c zhlniGM*68QUqpFrJvNQ&-Ces1loFjoIm+TQ-uZIvvwIV3-_4-_JDf8%q@l-q!_L&u zSs|Vb81i$Zy(RbTKkm5WPlKzanzjURrz7dc@<16CRRC4M6MMhhJ^_41V1bn?W*w1_ z9pCO2W8nIG@&Gc{755Od*`ft{8EGibEY9rtbZysEM8I!>EsrVjVuu}H=q|Mz2ZTbZ z!x2&cd~3w{BqE4|Swff_gNE!(NWKgMSnq&XSRr6W4Ly{BI)JBvyNgnx27%n5#M7B% zY_+mOLbLFw0LvOEDqbKw9X^@M-4YfGD#{M9KYLMRk9}v4I(O{8)7eCz;*HjJRRiK^ z>BzBD#WX&G;HEQj3cv3qL$Pt%xI5|N&!~ywI2+sAr-j3aPcosu{w()6-a-oh=<}(F z@V_wpKlgGH|BJ&NGzI+pb4vPu+`5~dEJ%D%XU!MUjLw`_5Y@D9Bs<<-Z)%u$bybTK z+j>)Lpg%HlDqZ^mR>KW{;S|ggoegZ0U@Fql1De^A05g)s=qnfrk-iH4QCC_ zd0*ck!R_+$R+@k6o^=HxntY9VTITK76Ee@0c}ljsrse#nFe`#7*wCdze|&4{YLZ%{ z&Ko`1x3bT7wsvCr*81As0P<*p!W)U$I|6;Bg+c718jllleY!6*-o=97Rdni+AgO8~(c0lTtwyqOKj&>S zXEI-k;~~ReH(2CXImC-#g<}`Ow{*lyuizxy?7@bwq-ghO0oI9V-~OcbMx$fHjZ4kc z_*7}LgPq3RUS+jXbGg7F-rx!B3~{Wx$rt0;FzQqHNn%hke12?8;}MdSIA?YxgVNaS z>y7m7sqt;<%_Nd6El3l$9}YZ!KPENk4G(h9b06KFYf5DdAo0}azp@*z)mgSyTAaJ2 zPfhxugF^c8WWM_R&t9ya?7?rf^|?dX=58{QVmB6L)|n5?+OmuIQjs|KqXO_M-SVZ? zZZocW>u&`=?gU*WB}&lg>ls~7Uc5*veNEfb(STHC4F*D|2wO0lZ=}q%7m;hO!j|g> ziDp=5)yy_;lv+;;tbN&F{NLWNf4d)h38VB^ujoDY7y*zZboE3n%8g(vW4uF8b4b%F zK^nXp6HKJe{c_*Kd0k-dc?qK(8b$J!Ws`>vHMrC}B0mvB#b13ZBEnwZ`+_iQJIZd| zUtS3j>zpfmJ<8fAk)A%pvkZ6&g#U z**-M0CUQ*Ejg>#5aeHN7!U3}BcJ4o0SO1e;X8?2@1LpZ+PiWGn_^U&A=}l>aQ??77HOJrA_<)yZdJnnQ@C6~yrfY1 z6-O`;u0rGJ81PxwM&R5jAlU&m+0rLTyyTns7dj>2h=QmD_e7(wpK$dBv*`zkryTnc z#XkJ}b67zbGSt9^83KM?5;Z1BzBYu74vj08riBJ-99jcyo$bKO$nquL9vfy_3(c=I zfbP9y#E<7hEuWg<{e?ov>;E8Z7(+CSd(Rgl%&E!Kb0t7dT?v0gYLUYc#6SN7uKUY2 zhWXZh_<2T91NlIaZC6*@3!XzIMxl?WRl}X{v_-sac`pAO?q6h+3 z3H$zY#TMw-5OCrQ3kxfR*!|*Eih{v5<~9O}XnA?mzyLt2+7cISbh=RU?7}wyyxR*z zHOW|Y&_uKeuenv@f6G8~RA#N~fEi=WFqOcwYVo!FtXTz8`%(zV!>NQubLxTl;fL8z zKy+?g`d((+$TIllOVRKd;$qL*8AaQ2eZ2$#=rB=&VTWiG-+{c&G&ewk9aILyS6Uij!-w9alnMntvimpj;rlUQTXv!De^BHPM#J+R5 z!;;1Rz3)j5z!^tN>D{Jz$Ach|6EiG{KL+m3P@z+@wobtGHV5L5#qJ5~X=sQF9yWyC z<5X+e!JGO7vXA*Z4Nt>d@~vyB*n$&49NtpOjMqG9a{3ugD^@Y3SF!NDZ06_*v^n}8 zgP8CkFE;%7z}>Dym1eRO2Gmb{htzE}zCi-g|kZ5{&t zb~t&wO(NAgX#iEO>t7EJ13A=z#G{=JanYfXx20*FjM_h-x;X78eRjsB&(ppsRtN|V zM8D-1z7-S=6078}Bbn}!pgB$r_)Z<@86avvD1MrOqxal;2$QrF0dU+#?TVoGjlC_2 z%HShDf2ZB30XgyK896`1tzN{cLO7)K!$q3U?y^z{v~X{l0P7>gH9!Z^{OtTZY!he# z3AD8>APGFSYhwTYfiPdsuKcOHtTnBCE~@*-aA0$YNl4H#R?n%JF^Qs5 z)JyUmezQ}b;81{B+JXG~c6ZD$QGz%1WJg4;NtTps18h|8bAPMGrcJjR+#U@Pu`xW7 z$w><{Rn}NyNE4v@vA~5liz_>wle;!wM7UL@@bv!+pK-2r7j7}Ih$yOJWB)%(dj9s| z|CoI?fH&t#Lqnyh@;>t4vUC4AJG>&6SW)nQPn#WC*JZIC82xt=z>n7`Nuj}iC7^#* zc^dAdt|DkLkbpzCQpQmT63>BOhRiB52O7mh={Dt_=b^+y#F6ODD&9>CpU?)pH~E-_ zuL`R7v9cbCs@FNw01p8?Z5;E_Bm;kgoqq%(EK2%%AU}lzK}v>1rZXm_5QS2?M#56z z)1+uoU+DlWkxtBJVETkvG6fEB~SvU5yxO()PEmNMJMJow1rbGE6;oE+d_OD_nTe`GrzBoOmeLh z&F%)Nq6Q3M_k1zTdn@MQz$;`;db%W_a%>9h#{dTP;dg>PVjL}`QTip;`KXT0gNqj_ z{V~}i(jNmMuhh-J*{K$tMD3fH<;P%DtFbjM37EH(FOh5o3fODb=AIhTZo(&mlnU?|Ax$Z(DpDNCTl1j2Z=9AzZg?HW z9J#8~zWan}ZprTPyp=@AnqFlQ4Vzz_nD7K6LA}~a2R?;>jtRXZ6c`VYy++bfRA=H~ zXT{2Y9MsSQxy9xz04=XpmCav4s_%p-$m4T!6R9uH!rgn1W<41J=_l{g*Oiquyvh-b zF!d`4Z-yw6C4MI+K5S#99YIfXmw3ROrbbxl0W8GpCT-`v7Orwju*4F6pw)ckml&ye@G+t$t&s;YYtnWh!n=x6Y( z@&^xRB87{H!;$&({Mh0_z8M{zj6m{@j~THt6^^a823N0M9h{t_FK#AEI(S_MrXq>% zIl7TRm9_WJeZKTP2J$+!cs;4`z*P>al*uY45G)8dzTW!!?Z&}BAfCwsmC4J{DRs0I z3b96AnP5rcsra|}bBu4H!<#?+=y{UM8wLeL6C?-##Y0>g-{x9h0;MQ6H<&ol4&o+K zLSJ=|(I_Fn>%?)eIa_3FTx7oz2@3;Jv1Zj;DkLH;g02!5=W0qkzre-k<<@l|+Y>ZS z*vQ^!W3(NBL)$ljzanoHqpL-zuyJ(d9zrkN7WXT6sMRY1!Nb2iMp>ZqwYt)AKNP89;u?H&Mp#L2WPM zWrhvj^xz#Xj#mQ@W-pK^{^jqOG6j^V?b}mOhE+L*iP)~?-tN=41c|TsskE{dygUAD zY%V|Fb0tvF0GIHQt8v!ixkE%UpmyKi_u3yqLPM@d1l6HEE+7DB1v_UMe+LeCKP8HGIB2BP1wAg?l2mmQtntPz47X~f22br9oRz)x z*{5#Qt4>O=U1EdDuD~wge}hi)oNWz>kxt-WX1n)(%GQDXoj_2oQ5-`3;;bA!f%R5V zA=!Ki&ZjxzSnR8C6jZ>m!}{(P{Gw0B*-b-n2%{*i{ZP(1;ZHbE(rzTKe`C9_$pR~x02gc*v;(6q&zH;377nu368$8Qk5h7pQmMl%2TAV7C<^`hFYKulGSj^IJ zOGIQHGW`qbbvlTx1c^^Ki1;e@$6<}>!3X)!cA|}Ry92m$A?k;VBgZP+kYS|5cM*62 zMj*9@G6@tSV5Z}g)j^VT$cwn zvN9#i56BuFNU8~zWUQR8XW~i(bluM*p4@SdSOxG=z#NGYB&ek5h{G(9E~11FJcGYg zh`6&cy$n|C;r5gWD7>WOEc&CjVEz-&GKOmT5FGXHO~=eyZKSFP+*3hU^qdwVZZWTY z2YWCAFM?drP4wUqC3M2!A_((F$!?UW+Y)?v6etzRgokzf^E!vS;e7bhz=sw! z$%2dh%Zrwu$AhgMAk;$yPd28gXYmItBR7JLz-OWM(;;h!k`}4Z(u2eLw#>=(pi1! z5!t5iuS!ewJylS_$Vu0(c@c_2(ZfMB}oxw&Pd87FdBkG_tKo=E4@TIv_JPYU$KXmRgAhux4*!??$e`mr0` zUvD_7CtC{^+L5x3y~$@TN|N{H8+`keH{ZXWPU*A9p25@mnAJUnpMN4ZkKJgr4nui` zH7vP=uJR7zX3>vrtTT7MQJ@9O>_23_FG$)<|V1QryX>lgg zh@q`#)AL$U9nOFpywIO((K=NmWra#Nm=2XlIqi?A>?Vf#g25T}7sinFT!0q(!fgn* z2sTcyek2`49v?M|SDJw$31T$9#i4yAdq>aTu@HJLf_Ssfzguf*Na(vL4hC=Vl)Z-g%tP}Ng>(3YWe#hV)!mhpS3ym+4?LB2Lu<4 zXxXur#`lrbHku|2O8bGBN%RB|#}jjli+0UFh!(fZMlHbsNv?;y7+&cvRp5F#p%q@x z8`i}c$*_-_8sbKxt;1Z3NZtdRTu!nIenrLsO4>+z@!=yxp@Kj?h=_Nm0t;T#^8Q(p zwN9;iEy(g*?LjS=;`jgo;;TC1NHPlSbY|_yO|C}c%;>Ze+LVe0U&l%l?W|xQ_<`&H zSLSdNMZ;be7TV~M1z*G{6$C30-2ecnM!;m~hV}G#(*q6X79y|0s5*k5io{6nTLz!> zF-y%i|6bsCKkJxA7}A|#IEGf&C-0I8aO)zC*p1qO78o$1)PrwSeJbb(rb1*65zu4I zIYLgbX9)fJ;!8xX%(yk!*4U7r{x^a^i2bXWlz7?_nST^jB61VZ6^;^nOxMoL=>N`Q z{O`KojWJBYUoh203qZ1F#{dz~b6&hH=0}9pEk*ytOZ?Y9^nXy&{VzN>LY2p&BCH~t zeATl5qsR+(@Sc^ZL@+Hev8^bx>->J971PuFR8E!fZ6sw|V2whhp);@lJ>&9a8OnKT zY6kshKLw2U9o}-shVsGb9+U2CYZ6JTrQkN3Wy)C$n zOl_eX8k)NGn>8;qdHEB$cS>MT7!#9j1S@MO@sp}XOA9dsW#tZmJtkWL{3$y+Zr{KB z`&36)*9e0m;|+xW3IKw2^z<%b9-o8st(AB6hdEe*ne+k*y16*s7#U=Z?5G&0E|N^9 z%;;PnRll0#USj6p>Z+oov8U*F~^bFTRZL|mV#;S zvb4mjyD|*$*e{Uu%f~+==AuLfy_4ud#N?wLW+?}B zb(z4V(J?c-271utF}an+Tr@E9V}(S_1!9U*rZt}xhAM)yvK9$7+svtzZ=IG2UK@<` zKGVF6<>$|zsxjYnF&=UWSbGBKQpbk`SH6#dmX7xHJMYc!{YJAwgM&yJone6NKB_6q z>ppANBEHM3L{db87$A&{_&F?n_zt#0#0#I$c2^Ar--lgP#0ModUg5itkd;M;H0e3q zefYM`WK*}2HBifyyQghm2w_G1bPTa=U#Q2+`SGKu* z9E>B)9IySRr^ACgDFa`;*dn!icOLgBekn+?cTH(CHjQ@ccb$+Yes^VC)Nwok?TMZs zW$L{AJUEyD{&(sLgrK^{#=iCA&97g-Kr#IaDqyRBqQIV#w{58id zNH8q-wvADf_dM2i6!6fcrEa9hw5bpK!#Tav&kib`*O-8%fgXT$)e;$H9^<~v6 zVjt*cuHP;J>hi!#g(Z)cmntJv`?qdgivaIRUCGLVimCBs5hUEJXtelbazf&66U&su zmOr=4tjD0_>MHv2)2B=O#WqCUr@*M6`xh<{@7uPTZ&sqt^T!>5H*+)<@~XPbRDU)C zQ8-YL&V_tmxhRz4=NG9yu}+>ge!{UE+sp*x~a1KER8`!S-X!GPze{5e;aNOsLZ zMPA-1<_)VATX?9gTN89}#b|TZK||Tpvmy1vem*5;vY1y3fW7v-7_l~qSHH5;<2%yR z-*MZAP$@F5#e3(6~B zHm$obP`#Gt87SKq5Z|-4^I!VCP`SJhI4aAS9btoY6_Ooexi`phGhF9UxDIZHHIjEo z($;|8;f|S)0#FM#%-DqSLq8&-9sidd1-h_-u%nm-|K)YuRnX<@@-st1+-G)Q=42(t zprY*vRnV<=TUY^5azHCm32^RTCwx)Is!o@8TVY}02XHr(jg8qrSPfc%N&jneOB7Vh z&W=4sBN7uv>P~-PWX-oJys>H(Ne(3tR*VP%!37p2AL^&i51SH8m>RI|@|q`obWi%i z5v5omb|VDH!7)2)-tDscVQMNh=$CuI$=ivD^EbG+FUx%=A8cFCtg=qiLBggb>iO~N zjYs4z5QFzZJ^9cVPH2-~eD5DieEPPd7x>i0VrcMNIp3M%-YELy14erC1qBssVqy7+ za$t>?%)86Tu9X$yyGNzZ85{Pvoviv$T`g|xSA-r^YK33bBD6gFIq}efrNoSY$03Pb zh1mJj`|dHHe!Xnf-{k|T$1M9D)Z++CMXJK=6QhV}qn!BeRe@i=u+Uy<9pxcRSKj+U zog8N)_p*1z1Hl}~K&c=))OO=k{1Fe2oi4jM+yJIvo(-MP*;ULcis&rjlgGbb+9^*< zvAozH@C+qprNW{jcH(t)sfoCAkSv&%4L+m;JtGw)D?rZ zJT)1A@=n+L4TTaeLZ^q~PJcwVT=55GdVxK0+QirwgrcE!bJvn7+|L>mmX)iY|E9G# zcO<}DSWx%!bHQ4tXr_~7#;ux+YYtqiN#;`SkV%cDGFY`&&LU~?i|FFqSY+rxeS2H75sr(=Rms^|7>MCT^h4L$NMcGQ zTmCmEBNjJvJn`(Z?|U&!Ya8ca88HkIFKe@}r6f-Ev}<~L&8MGLV?M+^gM-Au&&@)r za(es`7%vTWHVw8<#LE-v;!1CP{N7+(I->S#a0tPp%y05-X~0;xbGvWVMPfh9hhz)$ zBm1I6aBrm?%r|WVe|zS`g|$CGF{mE%;gDRnH`BDX0^{O|F}0{RM!-eXj$q0oKSo=j zpfGrE4PiFI*tOcH{8@;3L+8+|cikt7*jrXeNf4i0U92LJFu%D96enVCxfz=KQd3ih z4IUa8fWCI_0%8V2pmm$LII){++U)*VqIFYZXXLm=ObV$%d~S6kyWyM@J$-x|AJFv_ zj~#zyx61+`JOZxcka+#IG+P;wn8=UG!X(TCSHz%SOdzo7=|(|iRZQcWklG8lc1$Lx zgnSASOfA9Fd91Zxx%|=t<264&z05S%u9dH(!4G5jYoE{>}{86yIin9Ow`^aC3;0Qf%K z=hW+;pvJNhB8HHvIZ+uha1KP_t7wi_9i1XvhH?c9>-D7c9U$^v#%>ks)!M6uVRpoS z0wms$o<36=!}smfpAb|`=0X*t(KR()W~C99&6`gkrw#7VV_t)#Min+%eUkOBSoI<^ z>vb^D#|gh0=5xxANH!@UD`26XA@o;VJAE? zwn)*ze5zxlF+RekpvN7;mlYKi)l~Ww=GGF>-t|d9Rx$Q(RjO7tySfz+*eq-@B8qXq`o%-;enZJVk z=GCG%RgCKy*-1~1sgyNd{rvKMNBr{Cu_p&Ns2ClV%(P?sxn-S4{%T#)Ggj?F0xr3a;IE zMU%8zYqS_wQ(p{>j%G0uVX4c1WovMSIG1&@|B+n$9eq6i_{{!c@3TLP{U7%$c|c@Z zlC_8B&#U+^Jv-)OG68bz70+T6NawinJn^AQzFEfQbV+k+7|{UY|Q$zv8PRnFDfPZ?c`@?1xYmz zL(MV~a{?Z@tq`#Pd-v;^koOaA`6RYB3*oXf8HemIC% z0{9^}tprr-@90+ZwbjP)Z(!~1?ag%`I7paEfFdslT_<<<{dNUx_yxd#62uE|8a{aK zMM!(4&#jD($Uy)&(p-JM;mVhd#C@?PkJ2qa3J!75PNH8(8bVmaub{w#U|$8!8=Mhw zRu;eGyYK2AJ$e~&`CF9zA@=_~-?s5@`=efblb3OCe164nvF}JR{StirX z+M4e==bnqB*=6)7-R{a1TUp6s$Jnkh>#2osmLfh4m=MBsgYmQ}TmJzZH;AU&#Kc~p z1);`gCG1YrVe>BFN!^%sKO}cb0v+0`hzgid?ZGOr6krqRF&KB(w;{qn@vk>5_M_tO z{KVTkMi;!PppQcWDj|QRK*60Aw=u){_tzr<2R%G~s`S}UH9Ol>%+IUVI#C=rabhD5 z0O5iorb#5sGYIYsn;zZ1;({$iI<9um`O7w+cp}5vSNo$Nevz5*fDT5~xh7ed{wxZ) z0v?s$Z&yySxyp%bMQj`gDg%pBuk9!dNqCPO6=<05g_6Gq=DET2@}`eb2UAsz8MJ<% z;GfHrnI2MD?995M%)}B!n_;Y4u5s|5h$1s-XG6i@m2Ez0|DN+4ZgY&KigZ{2I@;P#sp{h0J7 zm1+zFCL(*iKEi~A&KKOEti{It*`mb2*3C{rnEtivgs!P+->3<0MFJuYbWUuQ=O-~5c+PX2KCF9{6O*7cGf=590ALe@M~2(+%R|UQ^UIQB1y@~$DtCRAf-9vQxh=S$QA8y;9=3?Fq516YhojO`Qv5>ila@I1#iA({2RZh zQ17}rD1Q8)>)m(n8GCOCl8Rwsv8lc5W#;$!d}|2^nE4?f5F!AAuN9Jx;7*!-%l2mu zm0zR^&~flAmUzS7J;$O&Gq&-5=sbgBRa!g!VnjVl&uoInjIE&0EIalwE1v_O+p^EZ zXN|XL&3%Io0go)n0}$aRGR)}u4%K#2vHT81^yg+Djr|(V6_>5}wa9O_&xKLMj%{7o z<<$k01tJGo)`Zg1D|f6iX#b!q?b37X5>NIVE6Kg-*7jeEuQIHoRRmvb&wajK{hB_q z1sxlv@_Xmr3^_D0WAt%C z_G9zq#i}z=O9_0d_a8XO8IAqDs8pv!CVc>+{T$8EFFF*gocW#wg;B(;+l_NyX7{8);?j8U+ovEa<2j$@!R0Zu!@90MegUb zjl`zC1~3d%C&HSgzDqfw_~CA4^}4tV33;85PRl!(FMZm&kIDQtiH?2bwU@RZH|xo+ zoLz~$2blf4BaQB-swsEGJo`A^k-8h;*@ynL??nDG^ZlLk(fS7<#2!a#gKC;ZM{mnn z_SF>XTKU7xQhUvy+MVvS^gig#LZiBJp8A1zcV6>ptlDr+IQPnh_iOxRHVF0g)zb=H^h>_H}XparO-%XA6j2%}hAH9*Z$~)yk)yopz z1Jg%RTOaJ)&8Qn8^(%YRrmc6Uht8d1J=e{l%RJ?)Pr3T_30{85P+sbtyP7-dxEX5w zSSgW>dmx&w8T4c`FICe{*+`78kEf+EUw1L^_caPXR@vT`u+lF2)b#Z^>5A>EQ)APQ zT-?IH_wJYYO83mXO==vyq=1tLeVh`P&g%Y{m6F)b$iybblAWdcr1}R^Clpj)qH+@g zB5BaWb21pC_Uz_%ePqnRx$(mHC_ja*-TGo+Bw-bN?OwAX4sw#?Q*J71S{h|9MfO0^ z1*a*6h~~qp7d3*nQQ!F8D7lt9??<(&vT~lN$OQ@#N;j84MLB_ytpj`4pj>zn@@QMW z%mfZ|_1B~&@_y*@_&Q$@&z+~#Ny|U=q@JnrE}e@Dbmvi#tq^w49rI= zP2Gwt4W@bxznMN3;+RO#o#o!FS-m<#A^^O!9Z|kIHaAKZc<-` zW2mbN@4c?lnb8t3v)IH=nZTFJv8r;DVB#sqmJjY{e|}{uTYCFh_o=+2pl+bZ`WwHy z+4)pUUtb9oQ)?}L8a#T>nvRx~3pUd?z&1p)a`{i_Ko>Xr2 zd{ecWRzqr3o+e-LV6?J&;_#^ThoH-$+gvVF(=F1@`qpr>lB!&Ge?ltz3{hkVIG)z< zinn*!(}UBqv7@`YcEG&~#i{YxGjh;eOwGx`D51Wemw0}YKsJ0+>>)s;q5}k=5#MJ& zaGX*&T0L=GX>s44JM+%*+>ezEC?bwsdYN%>y4jHwBE%GF`N8CY6Z_KXWsSwTli{4S z!xc1%l_3;M+*H{&5HhSAC{2hk;%!azdI_zUAb87%K=h$6HNT1k_WZOO02U&cN0u6H zr+PEp5m<+;{Ej6H@Adtb6{|>A()DkCwQpy==@6_EeZwl+TGwV9nG~tCKD3U9^(cwX zRqV5T1si?LW>W6)uGODy1qHMt@t#~`W*EIteZjh=5|l=mIscQjW0~4qobdkq+Oy+Z zsVULkYn5lj+vwTylB1MCN#cK{z&p1~L?~`pW2WHAsG4Ntk(970ON?Qu-(Ky<53Lg) zm{iUfRAr>!Sj}{C8!7fh%Ylvv$0fcnY{9w8@%Gx9I>jq>T2B<2&sETDF$V5pzD0hr zR8g6k&OE0whMhanx9NJ_4Z%`n_R{cOOJkLTBjQ;Lzgb7L_YLSu7t3*t|7OGL*@UII zw}-DagGuP_D_x#HDp8JLb$xL~`hE(NPi9n!=Y?C!J{TCtmFu5+OCoV^(oj}BTJdOu zcFuZIT{CCkx?{-)m{)Hjrz+TJbi^FBUAu}&*URCrMB+si;|a=IvW@O#{&l~avf?Ue z?>_xSW!e3tCMz9Jts>@v?uFEVb`qznOKq?G%c&uj!#|rqO6-69OysJB2ER=!59^zK z8p_Nbs_%ZN?Ultvvr@!m2;C7}Cv)xa^XVl6?V}`d|8vyb2ABFWzE;qtQ_V;+PAkp7 zT|;+fB2IjxjFHj9|A%FGnrqJ>**8Uy|*&jSyn-j zx!F%%cgi(gP?Pd-e&}-Xqk@=$fDEVH%H%a-IqPH8f=mqtex|qZ-rLCjCndKrS|IWg zai5VjH5aKUU~F?sCN3}a9?6+)GQT0jw8dEY9{+&Xsa>(`9R8D=X{l-a2mKmW^7ze7 zevzdK3`4#vS^G0Vy10y3b^i7FR8}V1!AlbXPbY=6PZtkNV3kM_3R0`L94JV+Fg(#U zchaotEB$8fGyW+{y`m@DBwVa6?mt~EqAAh1;V`+wRu-sDkg3%7mo?t6Q^#r#Z2ofh zS!(s5?tr^5VXBvlek;KVkpi7V7-|BVpHi_HE0-Iq-V>=7)V#5}y1$!ok!@Ppro2kX zbkzq#>9;>8=)cLDttGMEw0a?Y+Vbk>GaC=*UtS$``I+n*!>DU#qG+Q;e27DR=fhUhFhpiP^R{xH_b4*~*`_J*K2Ja5L%rIz@m2*!MzB}jwpX!=uxv8x9 z?;M8iW1)(_#tJj0X3L*0Ya1qv=a#&5KjnQ! zl|qCJDy%{6Sv7;xH4mMJ;#O-Z`ycDpc+JC=T`O?%*4LbO_hYW~O`PjqqcUSIjDnHJ zp&=a=UB;fW1Io;Ht-V|M-i}#Wg?dny&Po~`-f;h}Zs4~LWm2G8`;WSLNzS4tBMH@G zJoh`KrJmJTTJW#G|5P_ZLF8zhQ+34h&_@4togR)FXMRVUImA*KGh0O~8!@kAQ5kt( z#yG}v8R?M-RWR#T>cDM2uWdu4galvS{n2K=F_L-fDiSu%&xg`Hp9)U+AS7Zq;(6A< z|ICIreFr**yy8A&I#pd)N^u{}XJ}~~pdtxAuRk+i7Nlc9N8VPGsZJEY4nIX8(!YjY z4QYFsQF*gux)v?1f8a?6a=@xBJ+os2b=6mlb~{rlFKbn?rL0w$o3uAN=0iK?#<2IT zMRECiv4jhn*&C*X;;a>0hD2VS^9|uj-5@t`(qe)pM4 zzkyEKoC~Qr!+TfP4;uWeGqpW)W|7;URqvk2$4Wb9esOuW#DMEj&v}^7DMeCN(C|}U ziUhHi`5jN#pOxEx@JE2=wy$@0UI~?{|E29lwdB=2&FUgOI&NMz#LE3^QmiA+QLU`; zlch?1cVCq+opRpjx4HG<^ji;E^j`1w@qbiluXB-2yy;FTVgE=|7HU^NmTeiHWcjU` zy8fcLh=@hGY`Ovm6I0wMGCoB^Ll$M-X8`D%eHYL6FK{dCDyyneVUl)dY9Z6x;;iwX zuEWVSpE^HGogC@<^8b}}Cg4!+?H?Zu%91rE`%b44PK7qx5GO(iEw&16mP3d%_L+t< zXc3a=v``V1eP7C}LYoTNP7*nm?1}&PQSW=b*ZaRNsms-jd7kID+`s$&e82a2caV)_ ze{TD^Y@1t?(<>~_KN&1lbq)H1{Tb7{&C@thZh4pzb3p2LoyA8+=AEJaocdw*cD_Xw zD+~6}qO#7NnERe@BQn+zXZUWd3L~OBwIG9$m$Fi6CWP`Vf0?83d^vAtE&KXuDz!nU ztKmd>af6Doat|CJsK}Cm$BjghET?@4^nN|e7!bzGz$PjSXXOFEWf6ko4JR-fSlP2v zdzbcIr-!BGK1F4op2Jl&g_TuPMz64tw>6nB&GmAGr86;2{?DMV$5pV9webfuA{(Izr zAZJ(NGmq)Dqkmdb55*O5ptx6_t;kf^lk0R2w)=|_BO&nN(FpvfgY`n>4;NO*$vw>M zDvOG>JYj3u7IatSrHs*NR&nCnJK{H%o`-s&^S3>;V9LN=3MfxjiA zI%h5*FyNFeYRW!ETXFZ^oqB!VW8ty*4#~Zx(w7rm8k+CRo|CnttcYz4Op;$-(Zd@q z$?qH_SaN#glseb)%=D`x`5$KEa5UNQylvmR9_t5#Nk%i3?Kv$i{euC|ZX4{GA8+qt zCAmk+k@D37czMTERw3V8pkO$)C@CiAGS>Tz>~eSw@_zt$@*us1LPORV{Q*!^mtl znOtw<8&zd7RUI+>&bEDj(WLZkLZ-dfCOzZ187C95@5x`TgYW#6QVyGDc6SNAT@>U< zQsJn*#7--ov5y((o!`02=vy>-@sPXSo0h>p`)Jc`z2)Vqqt)ROY5$D+Z_!fz7znkM#^iXn0DPFkzuCD)pO~=k(ph)#JKi7Uzp|Z43Q!m3~04g%PN)3 zPrBxEOz!AZzaF7S@$}&4b<RE^S|uB4Uc{uzdhg+5?WpT zDf(4TuW9I-OI|rOdKKBFF8A2PM6?punOZ)S^V8p|bzJO_$`i#`i^ocy_ohx)vGmEL z(QJvMmVp^1#r&%KHd}SRj!9a#!d82WPkyoV##>uj27H|I8vag*)bt*w+)!yiL|9tN zeaULm&P?xV_xFX71$UZW-U&~y+Igj*s%e{0f@T~KAHW$CGqdGHVtA$k31Q&-y{Pnl zeRGOJF%_qX+&fxvia*@$LYmA?4$9 zEkUnbp2FhU~<_R%}uwDgR3N6{SW&-Mq{YU}!B;;C2`_PzcR;Q9H$ z`m>A@VKzQ9rjh%fE;`N;Bli2YY9;l_@4Q+&OZLRai#1=ca+zwj^gMAST;Z&#rNtP( zo^a`U6B1cg40aC($Ajya0=~Ak!6PX#Y#hhsy*sAh;3We*luRPBk5CzZotlGvcpfx@ zq$=3_GvGy}GvF6h;)^s=l}t?2#jqF4n<~zwk)NjYFLK#Lx93!Uy4cMV#bp<5oWK%Y zI(t{>re$X@oK4fWvEe1j>FPGJE+(aTRKF7)E?|xlsWhaFu6C*8-I&N@@i1BYWB=9AAhiAq~2EY!n(RaJ)TSl!6HH41<5mA zSv#8}D9Q2NyvxErPlQ@gxlrI`O7rpkV64|6u~Qj|Toxj7+*7_fYoyXd#B95=$FB}G ziL^$Oy{0(*r_}xV`4231gl17S)C7gB&0Spv=gibn7k#-w zep=Xo3}2L2rJzvjC;3aktK#;vV#34KnO$MR(P4{c5YJq6SjKOX>$F;8?>QoE%1~eP ztANJE>|e0$(b4{yh)t-@6q2Ypxr@kf5EU5?1804eGCzqL>0Q6-tTk%;tL1l>Q+~Z% z$i>!&G2x^7tAw{~Fu0a>r$;_Ts zt6=Md4di!!7JcYBzhNoe9eUyBkivcmB;$-gu4G>+tgn-310)Gc%pNey$DTfl z^OXFR@sBI+Wv;Puc9tD>C;htbtpyNu0e@swj72 z!_%**^B);!Z!a&TAhsxcxLNS;YIx$Cqx@fja@&qQ4N+Hmy-Dk5U6|8Ako-dvDtq23 zLGr<;EcqE^7$4wmj0V}lfPNvdQMida_9sYoTbyj5fAr{YfWPD?ZIOm?H*#~!l%Is3 zh>r_iTh7D7)TQ_8y6C?1@)87n>VAPD{m(Jp}jq;^P$&TG2Sw#^`Ja@ zdwT_CWd%^%_3Ns@`P>iy+J1GZEdhKGYOg0KpJA1gNvWx^P~b=sS<=Qs5o%NSbHj3! zz{?;<3GuB6K$J)&v$=Cc&)p;6A3q=P?FFoFYw(3y1`ZaZ!R4l=ruy#g?zwso84S0x za?4ms%Tdo(Q&X!#%@&}l)G!=Z7iODjy%5=KLMBb#Y`1Asc0L}WTEkUcKQ6TC$a{a> z6df=E{0v`qbi|>q55jj<$qOAJ>xbmvRVk^d)>c+wDJdzQ+RI5AQ1uW6!aX?~Z+zq= zv2enA__XCMCYk&Oi`ugys-PAaXh))?q(m(>lZSfH2&5~RG~A_xsw>(Qmq8Y)%O)XwfSv;c^?hmJ+9#GW)WF1 zkpV}%8*1^bUb`Gn`Oz0OhE+%2t#HQN!>Sgg%T3XeUPWxsf+yF!reuA|@A(Msdys%~fw2SFLes{Lp;!;=F*lO44;#Hex+^@ChRX&+hV@wCGrCQO-@Nh+)#>2sYPH zIC)-*vVzb@&3~pXsG_5c1ZvRl^EnYRHejg=#8RWi6du>g_BaT_f+>WlaN@)X@%@`m zBDqcsAH26OR8Vf?e>V~+;Maifx+6`^%{x$w)!mr3OI5`@ISd8E@^<1hw(u>zATMt; zZSLN^dkz(+b;17mLYd@uz8G!|zRx$dxnMNU^?B%hcZ}DwM}r_JlQ;_7JNrVgl||gY zUX4^Vj?C4UozI-bf&gnAiGXy(dHbOOe^*J z3!Pep&Kc3fI>5{%N{g@@Jy|%tni)Y9q|^G~JskA0N3S$sxCZ*&=2Hu&Ww*+n9%Tau z9iQ6psIU-fZ0Q*o$4)#!``Yz0evSE3ep~j42u+&EZBS#fCpAU^_~?Uef0gXw%ns3& zE3bnREq4qgMkjPFMQ}BFfTbI%R1Uqx+2%=C)1GC#1cAhqUO`tJIFKqLB7)MBWjA!l zRfJsLE0^#z3Bu_WP7{-#F>4^?hnt8%n#~Xa#$wb2?i$tUqBkQv9EFsp#_d5`;elPZ z3ZAqDyJ=nN_R)#h9K%q%#MzI=M(!{Q@0qS#+yjaHvRJdA!A|V>Wl);Gv&f9FHd*?_VZSf2&h&kaKtw5B(QAY=>z`npK zk7=O+&tIVD-FgdsdK&J}D2&Y8-omO(H-|_=682N;IG@c|F$>B!zjb>cr>!jximWq$ zauq}m;d8W2qYU=B4yd%8I_8-Y1Eql5_o?BaFMnMgMZbfo>~$$OuY+tNRtqBOfhF2J zS%VF6I&w88@lUQicgF;s7)---Q}^*(Zzhag@#YZ#HBX@T0w9sEuP*|gP8s|SI=r)A zjT|hdQ2bsw_Ze19>@hl5UpPs(!rfLy-InC5l#KVneCQir>yd0z{%8{{)EXKlS?5A0`=ext1ZhCapt`Z;cGv z^a6(+8C;FvPub7JYPk#> zslSVkUq9a^Z1K>5x?%8cs~7=x9rfx8byb1;*27mHepT`RRk=0ch4H^&{>@q7{`ttjd*kP zFb>X41LD#&l@t{@5FmqAZuR=34nrIGS${;x2E2aa=N4owngA!Ok%{-RXwlAtc0e7G zhzm@{2Jz+xab*cCR#*&I-=+FkyUEE(;8pl)_2Ln-zV`Q@#Vs#i3cvLuB7JMV-F7R{ z>on}<5y}QntB0u~V)*ZZT6YW!t8-($V>acZ^7kI=G0(QGrAu-KjVAI-Q6(p zhDA*YV?Icap9-l71zqFDQezT~JZ|0?oDk*Kt>b5AQcE3Uu&e5zy)P~u z2z=&aztuw4x3zx%T@z$iRi*AH07U%D`M6g|=@Y?imCw{H`z{EG#%I-Wh{EM@R)p$d zAOQh%EqKquKpb|Dz5)Kn<3$>gw57}A-165@e==Ojb$oltBo}y8W1|mmA8tSmw8wvQ z&tx$1yRc@WV?;L|6SM%}e2r{uL=fqWf?8E1I#NqIrQa(nlfpj4zrn)j%$e=ro@3(m z7AO!ZVGsm=NiRl$%622@haVj3v#(|GMCJDP={Pz!E&YCbw)i?H=9{dplPA z@a$}Y$i~9V!t3FH4q#FN>IIZ)5v>}zyZ0+ErV+z0G)#?20S%5%fY`XlN2dj=5`s(9 z#HgvMDNpSOlCkydxoy1I8K8mUqiB%CVn5}t+G9+OQa6fXuT4O5C(pZUyRE(bkoJ_c zw6vAoN_?NejtC%yg^@Wk6ZCF4;Kxm8K{9s1121P^+`4|1##p>LZS9OLEcgK> zb0;<47#TiT@P2|M@=W~SjI2EPi&|{i=zJFe2XQ3s3`|jZp5rl^5Ev5mxD9oK+I9eDZeGiQ7jM-;_*T1b>_vW)kU41e;%IVb%x@ILp&q+f1%v}5(`pG%d7L;a2)^1U;gL2dRy>`6DuA* h(w(!|hRW%p-c27H>NG8N05VFFnei^_eM6Us{{uQI8^-_u literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drgElements/resize-non-empty-decision-service.png b/packages/dmn-editor/tests-e2e/__screenshots__/chromium/drgElements/resize-non-empty-decision-service.png new file mode 100644 index 0000000000000000000000000000000000000000..f5734fb28f43bb663030e0377f8590147ad07ec2 GIT binary patch literal 48841 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drgElements/resize-non-empty-decision-service.png b/packages/dmn-editor/tests-e2e/__screenshots__/webkit/drgElements/resize-non-empty-decision-service.png new file mode 100644 index 0000000000000000000000000000000000000000..db6fa34f1f4b65c4449220a3857cd955b718193e GIT binary patch literal 43423 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 literal 0 HcmV?d00001 diff --git a/packages/dmn-editor/tests-e2e/drgElements/modelDecisionService.spec.ts b/packages/dmn-editor/tests-e2e/drgElements/modelDecisionService.spec.ts new file mode 100644 index 00000000000..e5eeb707fb2 --- /dev/null +++ b/packages/dmn-editor/tests-e2e/drgElements/modelDecisionService.spec.ts @@ -0,0 +1,365 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { TestAnnotations } from "@kie-tools/playwright-base/annotations"; +import { test, expect } from "../__fixtures__/base"; +import { EdgeType } from "../__fixtures__/edges"; +import { DefaultNodeName, NodePosition, NodeType } from "../__fixtures__/nodes"; + +test.beforeEach(async ({ editor }) => { + await editor.open(); +}); + +test.describe("Model Decision Service", () => { + test.describe("Model Decision Service - Signature", () => { + test.beforeEach(async ({ diagram, palette }) => { + await palette.dragNewNode({ type: NodeType.DECISION_SERVICE, targetPosition: { x: 300, y: 100 } }); + await diagram.resetFocus(); + }); + + test("Decision Service Output Decisions Signature should be not empty", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/663", + }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 } }); + await diagram.resetFocus(); + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 400, y: 180 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service()" + ); + expect(await decisionServicePropertiesPanel.getOutputDecisions()).toEqual(["New Decision"]); + }); + + test("Decision Service Encapsulated Decisions Signature should be not empty", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/663", + }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 } }); + await diagram.resetFocus(); + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 400, y: 350 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service()" + ); + expect(await decisionServicePropertiesPanel.getEncapsulatedDecisions()).toEqual(["New Decision"]); + }); + + test("Decision Service Input Data Signature should be not empty", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/663", + }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 } }); + await diagram.resetFocus(); + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 400, y: 350 } }); + + await palette.dragNewNode({ type: NodeType.INPUT_DATA, targetPosition: { x: 100, y: 100 } }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: DefaultNodeName.INPUT_DATA, + to: DefaultNodeName.DECISION, + }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service(New Input Data)" + ); + expect(await decisionServicePropertiesPanel.getInputData()).toEqual(["New Input Data"]); + }); + + test("Decision Service Input Decisions Signature should be not empty", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/663", + }); + + await palette.dragNewNode({ + type: NodeType.DECISION, + targetPosition: { x: 100, y: 100 }, + thenRenameTo: "Decision One", + }); + await diagram.resetFocus(); + await nodes.move({ name: "Decision One", targetPosition: { x: 400, y: 350 } }); + + await palette.dragNewNode({ + type: NodeType.DECISION, + targetPosition: { x: 100, y: 100 }, + thenRenameTo: "Decision Two", + }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: "Decision Two", + to: "Decision One", + }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service(Decision Two)" + ); + expect(await decisionServicePropertiesPanel.getInputDecisions()).toEqual(["Decision Two"]); + }); + + test.describe("Model Decision Service - Signature - Inputs Order", () => { + test.beforeEach("Initialize nodes and connections", async ({ diagram, nodes, palette }) => { + await palette.dragNewNode({ + type: NodeType.DECISION, + targetPosition: { x: 100, y: 100 }, + }); + await diagram.resetFocus(); + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 400, y: 350 } }); + + await palette.dragNewNode({ + type: NodeType.DECISION, + targetPosition: { x: 100, y: 100 }, + thenRenameTo: "B", + }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: "B", + to: DefaultNodeName.DECISION, + }); + + await palette.dragNewNode({ + type: NodeType.DECISION, + targetPosition: { x: 100, y: 200 }, + thenRenameTo: "A", + }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: "A", + to: DefaultNodeName.DECISION, + }); + + await palette.dragNewNode({ + type: NodeType.INPUT_DATA, + targetPosition: { x: 100, y: 300 }, + thenRenameTo: "BB", + }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: "BB", + to: DefaultNodeName.DECISION, + }); + + await palette.dragNewNode({ + type: NodeType.INPUT_DATA, + targetPosition: { x: 100, y: 400 }, + thenRenameTo: "AA", + }); + await nodes.dragNewConnectedEdge({ + type: EdgeType.INFORMATION_REQUIREMENT, + from: "AA", + to: DefaultNodeName.DECISION, + }); + }); + + test("Decision Service Inputs Signature should have a default order", async ({ + decisionServicePropertiesPanel, + nodes, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/664", + }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service(B, A, BB, AA)" + ); + expect(await decisionServicePropertiesPanel.getInputDecisions()).toEqual(["B", "A"]); + expect(await decisionServicePropertiesPanel.getInputData()).toEqual(["BB", "AA"]); + }); + + test("Decision Service Inputs Signature should be reordered", async ({ + decisionServicePropertiesPanel, + nodes, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/664", + }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + await decisionServicePropertiesPanel.moveInputData({ fromIndex: 0, toIndex: 1 }); + await decisionServicePropertiesPanel.moveInputDecision({ fromIndex: 0, toIndex: 1 }); + expect(await decisionServicePropertiesPanel.getInvokingThisDecisionServiceInFeel()).toEqual( + "New Decision Service(A, B, AA, BB)" + ); + expect(await decisionServicePropertiesPanel.getInputDecisions()).toEqual(["A", "B"]); + expect(await decisionServicePropertiesPanel.getInputData()).toEqual(["AA", "BB"]); + }); + }); + + test.describe("Model Decision Service - Signature - Decisions", () => { + test.beforeEach(async ({ decisionServicePropertiesPanel, diagram, nodes, palette }) => { + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 }, thenRenameTo: "A" }); + await diagram.resetFocus(); + await nodes.move({ name: "A", targetPosition: { x: 400, y: 180 } }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 }, thenRenameTo: "B" }); + await diagram.resetFocus(); + await nodes.move({ name: "B", targetPosition: { x: 400, y: 350 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getOutputDecisions()).toEqual(["A"]); + expect(await decisionServicePropertiesPanel.getEncapsulatedDecisions()).toEqual(["B"]); + }); + + test("Decision Service Decision Signature should not contain deleted Output Decision", async ({ + decisionServicePropertiesPanel, + nodes, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/879", + }); + await nodes.delete({ name: "A" }); + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + expect(await decisionServicePropertiesPanel.getOutputDecisions()).toEqual(["(Empty)"]); + }); + + test("Decision Service Decision Signature should not contain deleted Encapsulated Decision", async ({ + decisionServicePropertiesPanel, + nodes, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/879", + }); + await nodes.delete({ name: "B" }); + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + expect(await decisionServicePropertiesPanel.getEncapsulatedDecisions()).toEqual(["(Empty)"]); + }); + }); + + test.describe("Model Decision Service - Add Content", () => { + test("Decision Service should allow to drag Decision into it from palette", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/896"); + test.info().annotations.push({ + type: TestAnnotations.AFFECTED_BY, + description: "https://github.com/apache/incubator-kie-issues/issues/896", + }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 400, y: 300 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getEncapsulatedDecisions()).toEqual([DefaultNodeName.DECISION]); + }); + + test("Decision Service should allow to add connected Decision from a contained Decision", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/897"); + test.info().annotations.push({ + type: TestAnnotations.AFFECTED_BY, + description: "https://github.com/apache/incubator-kie-issues/issues/897", + }); + + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 }, thenRenameTo: "A" }); + await diagram.resetFocus(); + await nodes.move({ name: "A", targetPosition: { x: 400, y: 180 } }); + + await nodes.resize({ + nodeName: DefaultNodeName.DECISION_SERVICE, + position: NodePosition.TOP, + xOffset: 350, + yOffset: 0, + }); + + await nodes.dragNewConnectedNode({ type: NodeType.DECISION, from: "A", targetPosition: { x: 500, y: 160 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + + expect(await decisionServicePropertiesPanel.getOutputDecisions()).toEqual(["A, New Decision"]); + }); + + test("Decision Service should allow to move contained Decision by a keyboard without crossing sections", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + page, + palette, + }) => { + test.skip(true, "https://github.com/apache/incubator-kie-issues/issues/876"); + test.info().annotations.push({ + type: TestAnnotations.AFFECTED_BY, + description: "https://github.com/apache/incubator-kie-issues/issues/876", + }); + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 100, y: 100 } }); + await diagram.resetFocus(); + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 400, y: 180 } }); + + for (let index = 0; index < 10; index++) { + await page.keyboard.press("ArrowDown"); + } + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + expect(await decisionServicePropertiesPanel.getOutputDecisions()).toEqual(["New Decision"]); + + await expect(diagram.get()).toHaveScreenshot("move-decision-in-decision-service-by-keyboard.png"); + }); + }); + }); +}); diff --git a/packages/dmn-editor/tests-e2e/drgElements/resizeDecisionService.spec.ts b/packages/dmn-editor/tests-e2e/drgElements/resizeDecisionService.spec.ts index c1e3dd2e4bf..eca69bae427 100644 --- a/packages/dmn-editor/tests-e2e/drgElements/resizeDecisionService.spec.ts +++ b/packages/dmn-editor/tests-e2e/drgElements/resizeDecisionService.spec.ts @@ -304,5 +304,27 @@ test.describe("Resize node - Decision Service", () => { expect(height).toEqual("280"); expect(width).toEqual("280"); }); + + test("should resize non empty Decision Service", async ({ + decisionServicePropertiesPanel, + diagram, + nodes, + palette, + }) => { + test.info().annotations.push({ + type: TestAnnotations.REGRESSION, + description: "https://github.com/apache/incubator-kie-issues/issues/881", + }); + await palette.dragNewNode({ type: NodeType.DECISION, targetPosition: { x: 400, y: 100 } }); + await diagram.resetFocus(); + // move into Decision Service + await nodes.move({ name: DefaultNodeName.DECISION, targetPosition: { x: 200, y: 200 } }); + + await nodes.select({ name: DefaultNodeName.DECISION_SERVICE, position: NodePosition.TOP }); + await decisionServicePropertiesPanel.open(); + await decisionServicePropertiesPanel.setShape({ width: "250", height: "500" }); + + await expect(diagram.get()).toHaveScreenshot("resize-non-empty-decision-service.png"); + }); }); }); From 6f5c8e82d1cdb8ee73e6e14dc66f63dffd4cba30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jos=C3=A9=20dos=20Santos?= Date: Fri, 9 Aug 2024 11:51:21 -0300 Subject: [PATCH 06/22] kie-issues#1416: On the DMN Editor's Boxed Expression Editor, FEEL autocompletion does not suggest the type properties - Part 1 of 2 (#2509) --- packages/dmn-feel-antlr4-parser/src/index.ts | 2 + .../src/parser/BuiltInTypes.ts | 100 +++++++ .../src/parser/VariablesRepository.ts | 13 +- .../feel-input-component/src/FeelInput.tsx | 2 +- packages/feel-input-component/src/index.tsx | 1 + .../tests/semanticTokensProvider.test.ts | 246 +++++++++++++++--- 6 files changed, 325 insertions(+), 39 deletions(-) create mode 100644 packages/dmn-feel-antlr4-parser/src/parser/BuiltInTypes.ts diff --git a/packages/dmn-feel-antlr4-parser/src/index.ts b/packages/dmn-feel-antlr4-parser/src/index.ts index 8adbba95dd1..cb8a12276bc 100644 --- a/packages/dmn-feel-antlr4-parser/src/index.ts +++ b/packages/dmn-feel-antlr4-parser/src/index.ts @@ -25,3 +25,5 @@ export * from "./parser/FeelVariablesParser"; export * from "./parser/VariablesRepository"; export * from "./parser/ParsedExpression"; export * from "./parser/FeelSymbol"; +export * from "./parser/BuiltInTypes"; +export * from "./parser/DataType"; diff --git a/packages/dmn-feel-antlr4-parser/src/parser/BuiltInTypes.ts b/packages/dmn-feel-antlr4-parser/src/parser/BuiltInTypes.ts new file mode 100644 index 00000000000..d399bb38e52 --- /dev/null +++ b/packages/dmn-feel-antlr4-parser/src/parser/BuiltInTypes.ts @@ -0,0 +1,100 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { DataType } from "./DataType"; + +export class BuiltInTypes { + public static readonly Number: DataType = { + name: "number", + typeRef: "number", + properties: new Map([]), + }; + + public static readonly Boolean: DataType = { + name: "boolean", + typeRef: "boolean", + properties: new Map([]), + }; + + public static readonly String: DataType = { + name: "string", + typeRef: "string", + properties: new Map([]), + }; + + public static readonly DaysAndTimeDuration: DataType = { + name: "days and time duration", + typeRef: "days and time duration", + properties: new Map([ + ["days", BuiltInTypes.Number], + ["hours", BuiltInTypes.Number], + ["minutes", BuiltInTypes.Number], + ["seconds", BuiltInTypes.Number], + ["timezone", BuiltInTypes.String], + ]), + }; + + public static readonly DateAndTime: DataType = { + name: "date and time", + typeRef: "date and time", + properties: new Map([ + ["year", BuiltInTypes.Number], + ["month", BuiltInTypes.Number], + ["day", BuiltInTypes.Number], + ["weekday", BuiltInTypes.Number], + ["hour", BuiltInTypes.Number], + ["minute", BuiltInTypes.Number], + ["second", BuiltInTypes.Number], + ["time offset", BuiltInTypes.DaysAndTimeDuration], + ["timezone", BuiltInTypes.String], + ]), + }; + + public static readonly YearsAndMonthsDuration: DataType = { + name: "years and months duration", + typeRef: "years and months duration", + properties: new Map([ + ["years", BuiltInTypes.Number], + ["months", BuiltInTypes.Number], + ]), + }; + + public static readonly Time: DataType = { + name: "time", + typeRef: "time", + properties: new Map([ + ["hour", BuiltInTypes.Number], + ["minute", BuiltInTypes.Number], + ["second", BuiltInTypes.Number], + ["time offset", BuiltInTypes.DaysAndTimeDuration], + ["timezone", BuiltInTypes.String], + ]), + }; + + public static readonly Date: DataType = { + name: "date", + typeRef: "date", + properties: new Map([ + ["year", BuiltInTypes.Number], + ["month", BuiltInTypes.Number], + ["day", BuiltInTypes.Number], + ["weekday", BuiltInTypes.Number], + ]), + }; +} diff --git a/packages/dmn-feel-antlr4-parser/src/parser/VariablesRepository.ts b/packages/dmn-feel-antlr4-parser/src/parser/VariablesRepository.ts index 421834fa89a..5f137916a3f 100644 --- a/packages/dmn-feel-antlr4-parser/src/parser/VariablesRepository.ts +++ b/packages/dmn-feel-antlr4-parser/src/parser/VariablesRepository.ts @@ -44,6 +44,7 @@ import { } from "@kie-tools/dmn-marshaller/dist/schemas/dmn-1_5/ts-gen/types"; import { Expression } from "./VariableOccurrence"; import { DmnLatestModel } from "@kie-tools/dmn-marshaller"; +import { BuiltInTypes } from "./BuiltInTypes"; type DmnLiteralExpression = { __$$element: "literalExpression" } & DMN15__tLiteralExpression; type DmnInvocation = { __$$element: "invocation" } & DMN15__tInvocation; @@ -75,7 +76,17 @@ export class VariablesRepository { private currentUuidPrefix: string; constructor(dmnDefinitions: DmnDefinitions, externalDefinitions: Map) { - this.dataTypes = new Map(); + this.dataTypes = new Map([ + [BuiltInTypes.Number.name, BuiltInTypes.Number], + [BuiltInTypes.Boolean.name, BuiltInTypes.Boolean], + [BuiltInTypes.String.name, BuiltInTypes.String], + [BuiltInTypes.DaysAndTimeDuration.name, BuiltInTypes.DaysAndTimeDuration], + [BuiltInTypes.DateAndTime.name, BuiltInTypes.DateAndTime], + [BuiltInTypes.YearsAndMonthsDuration.name, BuiltInTypes.YearsAndMonthsDuration], + [BuiltInTypes.Time.name, BuiltInTypes.Time], + [BuiltInTypes.Date.name, BuiltInTypes.Date], + ]); + this.variablesIndexedByUuid = new Map(); this.expressionsIndexedByUuid = new Map(); this.loadImportedVariables(dmnDefinitions, externalDefinitions); diff --git a/packages/feel-input-component/src/FeelInput.tsx b/packages/feel-input-component/src/FeelInput.tsx index 650d7c26d09..dd5c790812f 100644 --- a/packages/feel-input-component/src/FeelInput.tsx +++ b/packages/feel-input-component/src/FeelInput.tsx @@ -285,7 +285,7 @@ export const FeelInput = React.forwardRef( return () => { disposable.dispose(); }; - }, [enabled, expressionId, feelVariables]); + }, [enabled, expressionId, feelVariables, semanticTokensProvider]); const config = useMemo(() => { return feelDefaultConfig(options); diff --git a/packages/feel-input-component/src/index.tsx b/packages/feel-input-component/src/index.tsx index a583cf91e61..4cade5d58a3 100644 --- a/packages/feel-input-component/src/index.tsx +++ b/packages/feel-input-component/src/index.tsx @@ -19,3 +19,4 @@ export * from "./FeelInput"; export * from "./FeelConfigs"; +export * from "./themes/Element"; diff --git a/packages/feel-input-component/tests/semanticTokensProvider.test.ts b/packages/feel-input-component/tests/semanticTokensProvider.test.ts index 3f3c4e8ec8e..644547c8dac 100644 --- a/packages/feel-input-component/tests/semanticTokensProvider.test.ts +++ b/packages/feel-input-component/tests/semanticTokensProvider.test.ts @@ -18,9 +18,10 @@ */ import { SemanticTokensProvider } from "@kie-tools/feel-input-component/dist/semanticTokensProvider"; -import { DmnDefinitions, FeelVariables } from "@kie-tools/dmn-feel-antlr4-parser"; +import { BuiltInTypes, DmnDefinitions, FeelVariables } from "@kie-tools/dmn-feel-antlr4-parser"; import * as Monaco from "@kie-tools-core/monaco-editor"; +import { Element } from "@kie-tools/feel-input-component/dist/themes/Element"; describe("Semantic Tokens Provider", () => { const cancellationTokenMock = { @@ -34,28 +35,39 @@ describe("Semantic Tokens Provider", () => { /** * The 'parsedTokens' are the tokens that parser should found in the provided 'expression'. * The 'expected' are the Monaco Semantic Tokens that we are expecting to pass to Monaco to paint it on the screen. - * - * Each Monaco Semantic Tokens is an array of 5 positions - * 0 = The start line of the token RELATIVE TO THE PREVIOUS LINE - * 1 = The start index of the token relative to the START of the previous token - * 2 = The length of the token - * 3 = The type of the token (GlobalVariable, Unknown, Function Parameter, etc.). It determines the color of the token - * 4 = Token modifier. It's always zero since we don't have this feature. */ test.each([ { expression: 'This is a variable with a very long name to reproduce the issue thousand one hundred and seventy-eight + "bar"', - expected: [[0, 0, 102, 5, 0]], + expected: [ + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 102, + }), + ], }, { expression: `This is a variable with a very long name to reproduce the issue thousand one hundred and seventy-eight + "bar"`, expected: [ - [0, 0, 36, 5, 0], - [1, 0, 37, 5, 0], - [1, 0, 29, 5, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 36, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 37, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 29, + }), ], }, { @@ -65,11 +77,31 @@ long name to reproduce the issue thousand one hundred and seventy-eight + "bar" + "NICE" + This is a variable with a very long name to reproduce the issue thousand one hundred and seventy-eight`, expected: [ - [1, 0, 31, 5, 0], - [1, 0, 12, 5, 0], - [1, 0, 30, 5, 0], - [1, 0, 30, 5, 0], - [0, 50, 102, 5, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 31, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 12, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 30, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 30, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 50, + tokenLength: 102, + }), ], }, { @@ -81,44 +113,95 @@ one hundred and seventy-eight + "bar`, expected: [ - [0, 0, 44, 5, 0], - [1, 0, 10, 5, 0], - [1, 0, 10, 5, 0], - [1, 0, 9, 5, 0], - [1, 0, 12, 5, 0], - [1, 0, 4, 5, 0], - [1, 0, 13, 5, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 44, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 10, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 10, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 9, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 12, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 4, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 13, + }), ], }, { expression: `"My " + This is a variable with a very long name to reproduce the issue thousand one hundred and seventy-eight + "bar"`, expected: [ - [0, 8, 89, 5, 0], - [1, 0, 104, 5, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 8, + tokenLength: 89, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 104, + }), ], }, { expression: `This is a variable with a very long name to reproduce the issue thousand one hundred and seventy-eight + "bar"`, expected: [ - [0, 0, 43, 5, 0], - [1, 0, 58, 5, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 43, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 58, + }), ], }, { expression: `VeryLongVariableWithoutSpaces ThatShouldFailWhenBreakLine`, expected: [ - [0, 0, 29, 7, 0], - [1, 0, 27, 7, 0], + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 29, + tokenType: Element.UnknownVariable, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 1, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: 27, + tokenType: Element.UnknownVariable, + }), ], }, ])("multiline variables", async ({ expression, expected }) => { - const modelMock = { - getValue: jest.fn().mockReturnValue(expression), - getLinesContent: jest.fn().mockReturnValue(expression.split("\n")), - }; + const modelMock = createModelMockForExpression(expression); const id = "expressionId"; const dmnDefinitions = getDmnModelWithContextEntry({ @@ -140,10 +223,66 @@ ThatShouldFailWhenBreakLine`, cancellationTokenMock ); - const expectedSemanticMonacoTokens = expected.flat(); + for (let i = 0; i < expected.length; i++) { + expect(semanticMonacoTokens?.data[i]).toEqual(expected[i]); + } + }); + }); - for (let i = 0; i < expectedSemanticMonacoTokens.length; i++) { - expect(semanticMonacoTokens?.data[i]).toEqual(expectedSemanticMonacoTokens[i]); + describe("built-in types", () => { + test.each([ + { type: BuiltInTypes.Number }, + { type: BuiltInTypes.Boolean }, + { type: BuiltInTypes.String }, + { type: BuiltInTypes.DaysAndTimeDuration }, + { type: BuiltInTypes.DateAndTime }, + { type: BuiltInTypes.YearsAndMonthsDuration }, + { type: BuiltInTypes.Time }, + { type: BuiltInTypes.Date }, + ])("should recognize built-in type '$type.name' properties as valid", async ({ type }) => { + const myVariable = "myVar"; + const id = "someId"; + + for (const dataType of type.properties.keys()) { + const expression = `${myVariable}.${dataType}`; + const modelMock = createModelMockForExpression(expression); + + const expected = [ + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: 0, + tokenLength: myVariable.length, + }), + ...getMonacoSemanticToken({ + startLineRelativeToPreviousLine: 0, + startIndexRelativeToPreviousStartIndex: myVariable.length + 1, // +1 because of the dot after "myVar" + tokenLength: dataType.length, + }), + ]; + + const model = getDmnModelWithContextEntry({ + entry: { + variable: myVariable, + type: type.name, + expression: { + value: expression, + id: id, + }, + }, + }); + + const feelVariables = new FeelVariables(model, new Map()); + const semanticTokensProvider = new SemanticTokensProvider(feelVariables, id, () => {}); + + const semanticMonacoTokens = await semanticTokensProvider.provideDocumentSemanticTokens( + modelMock as unknown as Monaco.editor.ITextModel, + null, + cancellationTokenMock + ); + + for (let i = 0; i < expected.length; i++) { + expect(semanticMonacoTokens?.data[i]).toEqual(expected[i]); + } } }); }); @@ -154,6 +293,7 @@ function getDmnModelWithContextEntry({ }: { entry: { variable: string; + type?: string; expression: { value: string; id: string; @@ -178,6 +318,7 @@ function getDmnModelWithContextEntry({ variable: { "@_id": "_401F4E2D-442A-4A29-B6B9-906A121C6FC0", "@_name": entry.variable, + "@_typeRef": entry.type, }, expression: { __$$element: "literalExpression", @@ -205,3 +346,34 @@ function getDmnModelWithContextEntry({ return dmnDefinitions; } + +/** + * Create a Monaco Semantic Token, which is an array with 5 positions. + * 0 = The start line of the token RELATIVE TO THE PREVIOUS LINE + * 1 = The start index of the token relative to the START of the previous token + * 2 = The length of the token + * 3 = The type of the token (GlobalVariable, Unknown, Function Parameter, etc.). It determines the color of the token + * 4 = Token modifier. It's always zero since we don't have this feature. + * @param args The token values. + */ +function getMonacoSemanticToken(args: { + startLineRelativeToPreviousLine: number; + startIndexRelativeToPreviousStartIndex: number; + tokenLength: number; + tokenType?: Element; +}) { + return [ + args.startLineRelativeToPreviousLine, + args.startIndexRelativeToPreviousStartIndex, + args.tokenLength, + args.tokenType ?? Element.Variable, + 0, + ]; +} + +function createModelMockForExpression(expression: string) { + return { + getValue: jest.fn().mockReturnValue(expression), + getLinesContent: jest.fn().mockReturnValue(expression.split("\n")), + }; +} From 6f9dca53e4ab8e4cfe5c51c3442cf7bb71decc95 Mon Sep 17 00:00:00 2001 From: Jozef Marko Date: Fri, 9 Aug 2024 17:06:20 +0200 Subject: [PATCH 07/22] kie-issues#982: On the DMN Editor it should be possible Associate a Text Annotation node to a Group node (#2528) --- .../src/diagram/connections/graphStructure.ts | 1 + packages/dmn-editor/src/diagram/nodes/Nodes.tsx | 2 +- ...-from-text-annotation-node-to-group-node.png | Bin 0 -> 39549 bytes ...-from-text-annotation-node-to-group-node.png | Bin 0 -> 35998 bytes ...-from-text-annotation-node-to-group-node.png | Bin 0 -> 36343 bytes .../drdArtifacts/addAssociation.spec.ts | 4 ++-- 6 files changed, 4 insertions(+), 3 deletions(-) create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/Google-Chrome/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/chromium/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png create mode 100644 packages/dmn-editor/tests-e2e/__screenshots__/webkit/drdArtifacts/add-association-edge-from-text-annotation-node-to-group-node.png diff --git a/packages/dmn-editor/src/diagram/connections/graphStructure.ts b/packages/dmn-editor/src/diagram/connections/graphStructure.ts index b4e155ece35..a77b1961d97 100644 --- a/packages/dmn-editor/src/diagram/connections/graphStructure.ts +++ b/packages/dmn-editor/src/diagram/connections/graphStructure.ts @@ -72,6 +72,7 @@ export const graphStructure: Map>> = new M NODE_TYPES.decision, NODE_TYPES.bkm, NODE_TYPES.decisionService, + NODE_TYPES.group, NODE_TYPES.knowledgeSource, ]), ], diff --git a/packages/dmn-editor/src/diagram/nodes/Nodes.tsx b/packages/dmn-editor/src/diagram/nodes/Nodes.tsx index 724e8a7a4a0..043ff69f967 100644 --- a/packages/dmn-editor/src/diagram/nodes/Nodes.tsx +++ b/packages/dmn-editor/src/diagram/nodes/Nodes.tsx @@ -1151,7 +1151,7 @@ export const GroupNode = React.memo( strokeColor={shapeStyle.strokeColor} /> - +