diff --git a/.syncpackrc.json b/.syncpackrc.json index 7abf816f386..28fc3e2026b 100644 --- a/.syncpackrc.json +++ b/.syncpackrc.json @@ -3,8 +3,8 @@ { "dependencies": ["prettier"], "packages": [ - "@kie-tools/uniforms-bootstrap4-codegen", - "@kie-tools/uniforms-patternfly-codegen", + "@kie-tools/form-code-generator-bootstrap4-theme", + "@kie-tools/form-code-generator-patternfly-theme", "@kie-tools/yaml-language-server" ] }, diff --git a/packages/uniforms-bootstrap4-codegen/LICENSE b/packages/form-code-generator-bootstrap4-theme/LICENSE similarity index 100% rename from packages/uniforms-bootstrap4-codegen/LICENSE rename to packages/form-code-generator-bootstrap4-theme/LICENSE diff --git a/packages/uniforms-bootstrap4-codegen/README.md b/packages/form-code-generator-bootstrap4-theme/README.md similarity index 55% rename from packages/uniforms-bootstrap4-codegen/README.md rename to packages/form-code-generator-bootstrap4-theme/README.md index 8e8ff6ded24..46e7ba68974 100644 --- a/packages/uniforms-bootstrap4-codegen/README.md +++ b/packages/form-code-generator-bootstrap4-theme/README.md @@ -15,9 +15,39 @@ under the License. --> -## Uniforms Bootstrap 4 Codegen +## Form Code Generator Bootstrap4 Theme -This module contains the [Uniforms](https://uniforms.tools) theme contain to generate Bootstrap 4 forms for the `@kie-tools/form-generation-tool`. +This package is the Bootstrap4 theme for the [form-code-generator](../form-code-generator/README.md) package. + +## How it works? + +This package generates the form code of a [Uniforms](https://uniforms.tools/) form using the Bootstrap4 style. [Uniforms](https://uniforms.tools/) is a library that autogenerates forms based on schemas and supports multiple themes. This package makes its own theme, describing the code that each field should have. After it, the form is rendered using `ReactDOMServer.renderToString` getting the form code. + +## Usage + +You can consume this package in two ways: + +1. The `dist/theme.ts` file exports the `bootstrap4FormCodeGeneratorTheme` which is a theme for the `form-code-generator` package. This theme implements the `FormCodeGeneratorTheme` interface, and its `generate` function uses JSON Schemas to generate the form code. + +2. You can create your own theme, and implement the `FormCodeGeneratorTheme` interface, and make the `generate` fucntion use another type of schema that is supported by [Uniforms](https://uniforms.tools/). To do so, you must use the `dist/uniforms/renderForm` function, which will receive a [Uniforms Bridge](https://uniforms.tools/docs/api-bridges/) and some parameters: + +```ts +{ + id: string; // The form id + sanitizedId: string; // The form id, any # is replaced by _ + disabled?: boolean; // Enable/disable form (read only) + placeholder?: boolean; // Enable/disable placeholders + schema: Bridge; // A Uniforms Bridge instance +} +``` + +## Build + +In order to build the library you must run the following command in the root folder of the repository: + +```shell script +pnpm -F @kie-tools/form-code-generator-bootstrap4-theme... build:prod +``` --- diff --git a/packages/form-generation-tool/env/index.js b/packages/form-code-generator-bootstrap4-theme/env/index.js similarity index 100% rename from packages/form-generation-tool/env/index.js rename to packages/form-code-generator-bootstrap4-theme/env/index.js diff --git a/packages/uniforms-bootstrap4-codegen/jest.config.js b/packages/form-code-generator-bootstrap4-theme/jest.config.js similarity index 100% rename from packages/uniforms-bootstrap4-codegen/jest.config.js rename to packages/form-code-generator-bootstrap4-theme/jest.config.js diff --git a/packages/uniforms-bootstrap4-codegen/package.json b/packages/form-code-generator-bootstrap4-theme/package.json similarity index 91% rename from packages/uniforms-bootstrap4-codegen/package.json rename to packages/form-code-generator-bootstrap4-theme/package.json index c01019caf36..9004cc19e6b 100644 --- a/packages/uniforms-bootstrap4-codegen/package.json +++ b/packages/form-code-generator-bootstrap4-theme/package.json @@ -1,5 +1,5 @@ { - "name": "@kie-tools/uniforms-bootstrap4-codegen", + "name": "@kie-tools/form-code-generator-bootstrap4-theme", "version": "0.0.0", "description": "", "license": "Apache-2.0", @@ -22,11 +22,12 @@ "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --silent --verbose --passWithNoTests\"" }, "dependencies": { + "@kie-tools/form-code-generator": "workspace:*", "lodash": "^4.17.21", "prettier": "^2.8.8", "underscore": "^1.13.1", "uniforms": "^3.10.2", - "uniforms-bridge-simple-schema-2": "^3.10.2" + "uniforms-bridge-json-schema": "^3.10.2" }, "devDependencies": { "@babel/core": "^7.16.0", @@ -57,6 +58,7 @@ "simpl-schema": "^1.12.0", "ts-jest": "^29.1.5", "typescript": "^5.5.3", + "uniforms-bridge-simple-schema-2": "^3.10.2", "webpack": "^5.94.0", "webpack-dev-server": "^4.15.1", "webpack-merge": "^5.9.0", diff --git a/packages/uniforms-bootstrap4-codegen/src/api/index.ts b/packages/form-code-generator-bootstrap4-theme/src/api/index.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/api/index.ts rename to packages/form-code-generator-bootstrap4-theme/src/api/index.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/api/types.ts b/packages/form-code-generator-bootstrap4-theme/src/api/types.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/api/types.ts rename to packages/form-code-generator-bootstrap4-theme/src/api/types.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/index.ts b/packages/form-code-generator-bootstrap4-theme/src/index.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/index.ts rename to packages/form-code-generator-bootstrap4-theme/src/index.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/raw-content.d.ts b/packages/form-code-generator-bootstrap4-theme/src/raw-content.d.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/raw-content.d.ts rename to packages/form-code-generator-bootstrap4-theme/src/raw-content.d.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getCheckboxGroupValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getCheckboxGroupValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getCheckboxGroupValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getCheckboxGroupValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getMultipleSelectValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getMultipleSelectValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getMultipleSelectValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getMultipleSelectValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getRadioGroupValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getRadioGroupValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/getRadioGroupValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/getRadioGroupValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/resources.d.ts b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/resources.d.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/resources.d.ts rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/resources.d.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setCheckboxGroupValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setCheckboxGroupValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setCheckboxGroupValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setCheckboxGroupValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setRadioGroupValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setRadioGroupValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setRadioGroupValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setRadioGroupValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setSelecMultipletValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setSelecMultipletValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setSelecMultipletValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setSelecMultipletValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setSelectValue.txt b/packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setSelectValue.txt similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/staticCode/setSelectValue.txt rename to packages/form-code-generator-bootstrap4-theme/src/resources/staticCode/setSelectValue.txt diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkbox.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkbox.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/checkboxGroup.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/checkboxGroup.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/date.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/date.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/date.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/date.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/date.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/date.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/date.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/date.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/form.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/form.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/form.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/form.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/formGroup.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/formGroup.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/formGroup.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/formGroup.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/input.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/input.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/input.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/input.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/input.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/input.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/input.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/nestField.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/nestField.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/number.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/number.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/number.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/number.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/number.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/number.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/number.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/number.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/radioGroup.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/radioGroup.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/resources.d.ts b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/resources.d.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/resources.d.ts rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/resources.d.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/select.setModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.setModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/select.setModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.setModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/select.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/select.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/select.writeModelData.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.writeModelData.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/select.writeModelData.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/select.writeModelData.template diff --git a/packages/uniforms-bootstrap4-codegen/src/resources/templates/unsupported.template b/packages/form-code-generator-bootstrap4-theme/src/resources/templates/unsupported.template similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/resources/templates/unsupported.template rename to packages/form-code-generator-bootstrap4-theme/src/resources/templates/unsupported.template diff --git a/packages/form-generation-tool/src/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.ts b/packages/form-code-generator-bootstrap4-theme/src/theme.ts similarity index 50% rename from packages/form-generation-tool/src/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.ts rename to packages/form-code-generator-bootstrap4-theme/src/theme.ts index 4fb02eb3389..6db8be721cc 100644 --- a/packages/form-generation-tool/src/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.ts +++ b/packages/form-code-generator-bootstrap4-theme/src/theme.ts @@ -17,58 +17,46 @@ * under the License. */ -import unescape from "lodash/unescape"; -import { FormAssetType, FormAsset, FormStyle, FormConfig, FormGenerationTool, FormSchema } from "../../../types"; - -import { renderForm } from "@kie-tools/uniforms-bootstrap4-codegen/dist"; +import { FormCodeGeneratorTheme, FormAsset } from "@kie-tools/form-code-generator/dist/types"; import JSONSchemaBridge from "uniforms-bridge-json-schema"; -import { getUniformsSchema } from "../utils/UniformsSchemaUtils"; -import { inputSanitizationUtil } from "../utils/InputSanitizationUtil"; +import unescape from "lodash/unescape"; +import { renderForm } from "."; export const BOOTSTRAP4_CSS_URL = "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"; export const BOOTSTRAP4_JS_URL = "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.bundle.min.js"; - export const JQUERY_URL = "https://code.jquery.com/jquery-3.2.1.slim.min.js"; -export class Bootstrap4FormConfig implements FormConfig { - public readonly schema: string; - - constructor(formSchema: any) { - this.schema = JSON.stringify(formSchema); - } - - public resources = { - styles: { - "bootstrap.min.css": BOOTSTRAP4_CSS_URL, - }, - scripts: { - "jquery.js": JQUERY_URL, - "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, - }, - }; -} - -export class Bootstrap4FormGenerationTool implements FormGenerationTool { - type: string = FormStyle.BOOTSTRAP; +export const BOOTSTRAP4_FILE_EXT = "html"; - generate(inputSchema: FormSchema): FormAsset { - const uniformsSchema = getUniformsSchema(inputSchema.schema); +export type Bootstrap4FileExt = typeof BOOTSTRAP4_FILE_EXT; +export interface Bootstrap4FormAsset extends FormAsset {} +export const bootstrap4FormCodeGeneratorTheme: FormCodeGeneratorTheme = { + generate: (formSchema) => { const form = renderForm({ - id: inputSchema.name, - sanitizedId: inputSanitizationUtil(inputSchema.name), - schema: new JSONSchemaBridge(uniformsSchema, () => true), + id: formSchema.name, + sanitizedId: formSchema.name, + schema: new JSONSchemaBridge(formSchema.schema, () => true), disabled: false, placeholder: true, }); return { - id: inputSchema.name, - sanitizedId: inputSanitizationUtil(inputSchema.name), - assetName: `${inputSchema.name}.${FormAssetType.HTML}`, - sanitizedAssetName: `${inputSanitizationUtil(inputSchema.name)}.${FormAssetType.HTML}`, - type: FormAssetType.HTML, + id: formSchema.name, + assetName: `${formSchema.name}.${BOOTSTRAP4_FILE_EXT}`, + type: BOOTSTRAP4_FILE_EXT, content: unescape(form), - config: new Bootstrap4FormConfig(inputSchema.schema), + config: { + schema: JSON.stringify(formSchema.schema), + resources: { + styles: { + "bootstrap.min.css": BOOTSTRAP4_CSS_URL, + }, + scripts: { + "jquery.js": JQUERY_URL, + "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, + }, + }, + }, }; - } -} + }, +}; diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/AutoField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/AutoField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/AutoFields.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoFields.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/AutoFields.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoFields.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/AutoForm.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoForm.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/AutoForm.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/AutoForm.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/BoolField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/BoolField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/BoolField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/BoolField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/BootstrapCodeGenContext.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/BootstrapCodeGenContext.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/BootstrapCodeGenContext.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/BootstrapCodeGenContext.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/CheckBoxGroupField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/CheckBoxGroupField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/CheckBoxGroupField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/CheckBoxGroupField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/DateField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/DateField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/DateField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/DateField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/NestField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/NestField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/NestField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/NestField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/NumField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/NumField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/NumField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/NumField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/RadioField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/RadioField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/RadioField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/RadioField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/SelectField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/SelectField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/SelectField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/SelectField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/TextField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/TextField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/TextField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/TextField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/UnsupportedField.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/UnsupportedField.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/UnsupportedField.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/UnsupportedField.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/index.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/index.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/index.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/index.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/renderForm.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/renderForm.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/renderForm.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/renderForm.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/FormInputs.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/FormInputs.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/FormInputs.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/FormInputs.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/NestedFieldInput.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/NestedFieldInput.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/NestedFieldInput.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/NestedFieldInput.tsx diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/RenderingUtils.tsx b/packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/RenderingUtils.tsx similarity index 95% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/RenderingUtils.tsx rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/RenderingUtils.tsx index 1773e130aea..a4218892f76 100644 --- a/packages/uniforms-bootstrap4-codegen/src/uniforms/rendering/RenderingUtils.tsx +++ b/packages/form-code-generator-bootstrap4-theme/src/uniforms/rendering/RenderingUtils.tsx @@ -60,5 +60,5 @@ export const renderNestedInputFragmentWithContext = ( }) ); - return codegenCtx.rendered.length == 1 ? codegenCtx.rendered[0] : undefined; + return codegenCtx.rendered.length === 1 ? codegenCtx.rendered[0] : undefined; }; diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/AutoFormTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/AutoFormTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/AutoFormTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/AutoFormTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/BoolFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/BoolFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/BoolFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/BoolFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/CheckboxGroupFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/CheckboxGroupFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/CheckboxGroupFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/CheckboxGroupFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/DateFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/DateFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/DateFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/DateFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/NestFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/NestFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/NestFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/NestFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/NumFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/NumFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/NumFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/NumFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/RadioGroupFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/RadioGroupFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/RadioGroupFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/RadioGroupFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/SelectFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/SelectFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/SelectFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/SelectFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/TextFieldTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/TextFieldTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/TextFieldTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/TextFieldTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/UnsupportedTemplate.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/UnsupportedTemplate.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/UnsupportedTemplate.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/UnsupportedTemplate.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/templates.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/templates.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/templates.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/templates.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/types.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/types.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/types.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/types.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/templates/utils.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/utils.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/templates/utils.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/templates/utils.ts diff --git a/packages/uniforms-bootstrap4-codegen/src/uniforms/utils/Utils.ts b/packages/form-code-generator-bootstrap4-theme/src/uniforms/utils/Utils.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/src/uniforms/utils/Utils.ts rename to packages/form-code-generator-bootstrap4-theme/src/uniforms/utils/Utils.ts diff --git a/packages/uniforms-bootstrap4-codegen/tests/AutoField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/AutoField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/AutoField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/AutoField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/AutoFields.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/AutoFields.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/AutoFields.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/AutoFields.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/AutoForm.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/AutoForm.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/AutoForm.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/AutoForm.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/BoolField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/BoolField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/BoolField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/BoolField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/CheckboxGroupField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/CheckboxGroupField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/CheckboxGroupField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/CheckboxGroupField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/DateField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/DateField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/DateField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/DateField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/NestField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/NestField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/NestField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/NestField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/NumField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/NumField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/NumField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/NumField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/RadioField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/RadioField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/RadioField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/RadioField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/SelectField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/SelectField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/SelectField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/SelectField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/TextField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/TextField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/TextField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/TextField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/UnsupportedField.test.tsx b/packages/form-code-generator-bootstrap4-theme/tests/UnsupportedField.test.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/UnsupportedField.test.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/UnsupportedField.test.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/__mocks__/styleMock.js b/packages/form-code-generator-bootstrap4-theme/tests/__mocks__/styleMock.js similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__mocks__/styleMock.js rename to packages/form-code-generator-bootstrap4-theme/tests/__mocks__/styleMock.js diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/AutoForm.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/AutoForm.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/AutoForm.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/AutoForm.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/BoolField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/BoolField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/BoolField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/BoolField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/CheckboxGroupField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/CheckboxGroupField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/CheckboxGroupField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/CheckboxGroupField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/DateField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/DateField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/DateField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/DateField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/NestField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/NestField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/NestField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/NestField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/NumField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/NumField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/NumField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/NumField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/RadioField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/RadioField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/RadioField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/RadioField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/SelectField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/SelectField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/SelectField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/SelectField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/TextField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/TextField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/TextField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/TextField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/__snapshots__/UnsupportedField.test.tsx.snap b/packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/UnsupportedField.test.tsx.snap similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/__snapshots__/UnsupportedField.test.tsx.snap rename to packages/form-code-generator-bootstrap4-theme/tests/__snapshots__/UnsupportedField.test.tsx.snap diff --git a/packages/uniforms-bootstrap4-codegen/tests/_createContext.ts b/packages/form-code-generator-bootstrap4-theme/tests/_createContext.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/_createContext.ts rename to packages/form-code-generator-bootstrap4-theme/tests/_createContext.ts diff --git a/packages/uniforms-bootstrap4-codegen/tests/_createSchema.ts b/packages/form-code-generator-bootstrap4-theme/tests/_createSchema.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/_createSchema.ts rename to packages/form-code-generator-bootstrap4-theme/tests/_createSchema.ts diff --git a/packages/uniforms-bootstrap4-codegen/tests/_render.tsx b/packages/form-code-generator-bootstrap4-theme/tests/_render.tsx similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/_render.tsx rename to packages/form-code-generator-bootstrap4-theme/tests/_render.tsx diff --git a/packages/form-generation-tool/tests/jest.setup.ts b/packages/form-code-generator-bootstrap4-theme/tests/jest.setup.ts similarity index 100% rename from packages/form-generation-tool/tests/jest.setup.ts rename to packages/form-code-generator-bootstrap4-theme/tests/jest.setup.ts diff --git a/packages/uniforms-bootstrap4-codegen/tests/rawJestTransformer.js b/packages/form-code-generator-bootstrap4-theme/tests/rawJestTransformer.js similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/rawJestTransformer.js rename to packages/form-code-generator-bootstrap4-theme/tests/rawJestTransformer.js diff --git a/packages/uniforms-bootstrap4-codegen/tsconfig.json b/packages/form-code-generator-bootstrap4-theme/tsconfig.json similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tsconfig.json rename to packages/form-code-generator-bootstrap4-theme/tsconfig.json diff --git a/packages/form-generation-tool/tsconfig.tests.json b/packages/form-code-generator-bootstrap4-theme/tsconfig.tests.json similarity index 100% rename from packages/form-generation-tool/tsconfig.tests.json rename to packages/form-code-generator-bootstrap4-theme/tsconfig.tests.json diff --git a/packages/uniforms-bootstrap4-codegen/webpack.config.js b/packages/form-code-generator-bootstrap4-theme/webpack.config.js similarity index 98% rename from packages/uniforms-bootstrap4-codegen/webpack.config.js rename to packages/form-code-generator-bootstrap4-theme/webpack.config.js index 5064b497e5b..8214929bab0 100644 --- a/packages/uniforms-bootstrap4-codegen/webpack.config.js +++ b/packages/form-code-generator-bootstrap4-theme/webpack.config.js @@ -27,6 +27,7 @@ module.exports = (env, args) => [ merge(common(env, args), { entry: { index: "./src/index.ts", + theme: "./src/theme.ts", }, plugins: [new CopyPlugin({ patterns: [{ from: "./src/resources", to: "./resources" }] })], module: { diff --git a/packages/uniforms-patternfly-codegen/LICENSE b/packages/form-code-generator-patternfly-theme/LICENSE similarity index 100% rename from packages/uniforms-patternfly-codegen/LICENSE rename to packages/form-code-generator-patternfly-theme/LICENSE diff --git a/packages/uniforms-patternfly-codegen/README.md b/packages/form-code-generator-patternfly-theme/README.md similarity index 55% rename from packages/uniforms-patternfly-codegen/README.md rename to packages/form-code-generator-patternfly-theme/README.md index 81da116376f..068c7f80731 100644 --- a/packages/uniforms-patternfly-codegen/README.md +++ b/packages/form-code-generator-patternfly-theme/README.md @@ -15,9 +15,39 @@ under the License. --> -## Uniforms Patternfly Codegen +## Form Code Generator PatternFly Theme -This module contains the [Uniforms](https://uniforms.tools) theme contain to generate Patternfly forms for the `@kie-tools/form-generation-tool`. +This package is the PatternFly theme for the [form-code-generator](../form-code-generator/README.md) package. + +## How it works? + +This package generates the form code of a [Uniforms](https://uniforms.tools/) form using PatternFly components. [Uniforms](https://uniforms.tools/) is a library that autogenerates forms based on schemas and supports multiple themes. This package makes its own theme, describing the code that each field should have. After it, the form is rendered using `ReactDOMServer.renderToString` getting the form code. + +## Usage + +You can consume this package in two ways: + +1. The `dist/theme.ts` file exports the `patternflyFormCodeGeneratorTheme` which is a theme for the `form-code-generator` package. This theme implements the `FormCodeGeneratorTheme` interface, and its `generate` function uses JSON Schemas to generate the form code. + +2. You can create your own theme, and implement the `FormCodeGeneratorTheme` interface, and make the `generate` function use another type of schema that is supported by [Uniforms](https://uniforms.tools/). To do so, you must use the `dist/uniforms/renderForm` function, which will receive a [Uniforms Bridge](https://uniforms.tools/docs/api-bridges/) and some parameters: + +```ts +{ + id: string; // The form id + sanitizedId: string; // The form id, any # is replaced by _ + disabled?: boolean; // Enable/disable form (read only) + placeholder?: boolean; // Enable/disable placeholders + schema: Bridge; // A Uniforms Bridge instance +} +``` + +## Build + +In order to build the library you must run the following command in the root folder of the repository: + +```shell script +pnpm -F @kie-tools/form-code-generator-patternfly-theme... build:prod +``` --- diff --git a/packages/uniforms-bootstrap4-codegen/env/index.js b/packages/form-code-generator-patternfly-theme/env/index.js similarity index 100% rename from packages/uniforms-bootstrap4-codegen/env/index.js rename to packages/form-code-generator-patternfly-theme/env/index.js diff --git a/packages/uniforms-patternfly-codegen/jest.config.js b/packages/form-code-generator-patternfly-theme/jest.config.js similarity index 100% rename from packages/uniforms-patternfly-codegen/jest.config.js rename to packages/form-code-generator-patternfly-theme/jest.config.js diff --git a/packages/uniforms-patternfly-codegen/package.json b/packages/form-code-generator-patternfly-theme/package.json similarity index 90% rename from packages/uniforms-patternfly-codegen/package.json rename to packages/form-code-generator-patternfly-theme/package.json index bf18199749a..b7bc46a6a04 100644 --- a/packages/uniforms-patternfly-codegen/package.json +++ b/packages/form-code-generator-patternfly-theme/package.json @@ -1,5 +1,5 @@ { - "name": "@kie-tools/uniforms-patternfly-codegen", + "name": "@kie-tools/form-code-generator-patternfly-theme", "version": "0.0.0", "description": "", "license": "Apache-2.0", @@ -22,10 +22,11 @@ "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --verbose --passWithNoTests\"" }, "dependencies": { + "@kie-tools/form-code-generator": "workspace:*", "lodash": "^4.17.21", "prettier": "^2.8.8", "uniforms": "^3.10.2", - "uniforms-bridge-simple-schema-2": "^3.10.2" + "uniforms-bridge-json-schema": "^3.10.2" }, "devDependencies": { "@babel/core": "^7.16.0", @@ -55,6 +56,7 @@ "simpl-schema": "^1.12.0", "ts-jest": "^29.1.5", "typescript": "^5.5.3", + "uniforms-bridge-simple-schema-2": "^3.10.2", "webpack": "^5.94.0", "webpack-cli": "^4.10.0", "webpack-dev-server": "^4.15.1", diff --git a/packages/uniforms-patternfly-codegen/src/api/index.ts b/packages/form-code-generator-patternfly-theme/src/api/index.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/api/index.ts rename to packages/form-code-generator-patternfly-theme/src/api/index.ts diff --git a/packages/uniforms-patternfly-codegen/src/api/types.ts b/packages/form-code-generator-patternfly-theme/src/api/types.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/api/types.ts rename to packages/form-code-generator-patternfly-theme/src/api/types.ts diff --git a/packages/uniforms-patternfly-codegen/src/index.ts b/packages/form-code-generator-patternfly-theme/src/index.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/index.ts rename to packages/form-code-generator-patternfly-theme/src/index.ts diff --git a/packages/uniforms-patternfly-codegen/src/resources/checkboxGroupFunctions.txt b/packages/form-code-generator-patternfly-theme/src/resources/checkboxGroupFunctions.txt similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/checkboxGroupFunctions.txt rename to packages/form-code-generator-patternfly-theme/src/resources/checkboxGroupFunctions.txt diff --git a/packages/uniforms-patternfly-codegen/src/resources/dateFunctions.txt b/packages/form-code-generator-patternfly-theme/src/resources/dateFunctions.txt similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/dateFunctions.txt rename to packages/form-code-generator-patternfly-theme/src/resources/dateFunctions.txt diff --git a/packages/uniforms-patternfly-codegen/src/resources/multipleSelectFunctions.txt b/packages/form-code-generator-patternfly-theme/src/resources/multipleSelectFunctions.txt similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/multipleSelectFunctions.txt rename to packages/form-code-generator-patternfly-theme/src/resources/multipleSelectFunctions.txt diff --git a/packages/uniforms-patternfly-codegen/src/resources/resources.d.ts b/packages/form-code-generator-patternfly-theme/src/resources/resources.d.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/resources.d.ts rename to packages/form-code-generator-patternfly-theme/src/resources/resources.d.ts diff --git a/packages/uniforms-patternfly-codegen/src/resources/selectFunctions.txt b/packages/form-code-generator-patternfly-theme/src/resources/selectFunctions.txt similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/selectFunctions.txt rename to packages/form-code-generator-patternfly-theme/src/resources/selectFunctions.txt diff --git a/packages/uniforms-patternfly-codegen/src/resources/timeFunctions.txt b/packages/form-code-generator-patternfly-theme/src/resources/timeFunctions.txt similarity index 100% rename from packages/uniforms-patternfly-codegen/src/resources/timeFunctions.txt rename to packages/form-code-generator-patternfly-theme/src/resources/timeFunctions.txt diff --git a/packages/form-code-generator-patternfly-theme/src/theme.ts b/packages/form-code-generator-patternfly-theme/src/theme.ts new file mode 100644 index 00000000000..470794ef479 --- /dev/null +++ b/packages/form-code-generator-patternfly-theme/src/theme.ts @@ -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. + */ + +import { FormAsset, FormCodeGeneratorTheme } from "@kie-tools/form-code-generator/dist/types"; +import JSONSchemaBridge from "uniforms-bridge-json-schema"; +import unescape from "lodash/unescape"; +import { renderForm } from "."; + +export const PATTERNFLY_FILE_EXT = "tsx"; + +export type PatternflyFileExt = typeof PATTERNFLY_FILE_EXT; +export interface PatternflyFormAsset extends FormAsset {} + +export const patternflyFormCodeGeneratorTheme: FormCodeGeneratorTheme = { + generate: (formSchema) => { + const form = renderForm({ + id: formSchema.name, + sanitizedId: formSchema.name, + schema: new JSONSchemaBridge(formSchema.schema, () => true), + disabled: false, + placeholder: true, + }); + return { + id: formSchema.name, + assetName: `${formSchema.name}.${PATTERNFLY_FILE_EXT}`, + type: PATTERNFLY_FILE_EXT, + content: unescape(form), + config: { + schema: JSON.stringify(formSchema.schema), + resources: { + styles: {}, + scripts: {}, + }, + }, + }; + }, +}; diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/AutoField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/AutoField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/AutoField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/AutoField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/AutoFields.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/AutoFields.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/AutoFields.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/AutoFields.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/AutoForm.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/AutoForm.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/AutoForm.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/AutoForm.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/BoolField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/BoolField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/BoolField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/BoolField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/CheckBoxGroupField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/CheckBoxGroupField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/CheckBoxGroupField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/CheckBoxGroupField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/CodeGenContext.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/CodeGenContext.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/CodeGenContext.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/CodeGenContext.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/DateField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/DateField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/DateField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/DateField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/NestField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/NestField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/NestField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/NestField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/NumField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/NumField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/NumField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/NumField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/RadioField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/RadioField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/RadioField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/RadioField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/SelectField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/SelectField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/SelectField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/SelectField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/TextField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/TextField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/TextField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/TextField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/UnsupportedField.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/UnsupportedField.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/UnsupportedField.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/UnsupportedField.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/index.ts b/packages/form-code-generator-patternfly-theme/src/uniforms/index.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/index.ts rename to packages/form-code-generator-patternfly-theme/src/uniforms/index.ts diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/renderForm.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/renderForm.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/renderForm.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/renderForm.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/rendering/FormInputs.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/rendering/FormInputs.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/rendering/FormInputs.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/rendering/FormInputs.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/rendering/NestedFieldInput.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/rendering/NestedFieldInput.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/rendering/NestedFieldInput.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/rendering/NestedFieldInput.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/rendering/RenderingUtils.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/rendering/RenderingUtils.tsx similarity index 95% rename from packages/uniforms-patternfly-codegen/src/uniforms/rendering/RenderingUtils.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/rendering/RenderingUtils.tsx index 7a17772f594..dd2d4d0318d 100644 --- a/packages/uniforms-patternfly-codegen/src/uniforms/rendering/RenderingUtils.tsx +++ b/packages/form-code-generator-patternfly-theme/src/uniforms/rendering/RenderingUtils.tsx @@ -60,5 +60,5 @@ export const renderNestedInputFragmentWithContext = ( }) ); - return codegenCtx.rendered.length == 1 ? codegenCtx.rendered[0] : undefined; + return codegenCtx.rendered.length === 1 ? codegenCtx.rendered[0] : undefined; }; diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/staticCode/staticCodeBlocks.ts b/packages/form-code-generator-patternfly-theme/src/uniforms/staticCode/staticCodeBlocks.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/staticCode/staticCodeBlocks.ts rename to packages/form-code-generator-patternfly-theme/src/uniforms/staticCode/staticCodeBlocks.ts diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/utils/Utils.tsx b/packages/form-code-generator-patternfly-theme/src/uniforms/utils/Utils.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/utils/Utils.tsx rename to packages/form-code-generator-patternfly-theme/src/uniforms/utils/Utils.tsx diff --git a/packages/uniforms-patternfly-codegen/src/uniforms/utils/dataTypes.ts b/packages/form-code-generator-patternfly-theme/src/uniforms/utils/dataTypes.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/src/uniforms/utils/dataTypes.ts rename to packages/form-code-generator-patternfly-theme/src/uniforms/utils/dataTypes.ts diff --git a/packages/uniforms-patternfly-codegen/tests/AutoField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/AutoField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/AutoField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/AutoField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/AutoFields.test.tsx b/packages/form-code-generator-patternfly-theme/tests/AutoFields.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/AutoFields.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/AutoFields.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/AutoForm.test.tsx b/packages/form-code-generator-patternfly-theme/tests/AutoForm.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/AutoForm.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/AutoForm.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/BoolField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/BoolField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/BoolField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/BoolField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/CheckBoxGroupField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/CheckBoxGroupField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/CheckBoxGroupField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/CheckBoxGroupField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/DateField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/DateField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/DateField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/DateField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/NestField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/NestField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/NestField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/NestField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/NumField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/NumField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/NumField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/NumField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/RadioField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/RadioField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/RadioField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/RadioField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/SelectField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/SelectField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/SelectField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/SelectField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/TestCodegenContextProvider.tsx b/packages/form-code-generator-patternfly-theme/tests/TestCodegenContextProvider.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/TestCodegenContextProvider.tsx rename to packages/form-code-generator-patternfly-theme/tests/TestCodegenContextProvider.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/TextField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/TextField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/TextField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/TextField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/UnsupportedField.test.tsx b/packages/form-code-generator-patternfly-theme/tests/UnsupportedField.test.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/UnsupportedField.test.tsx rename to packages/form-code-generator-patternfly-theme/tests/UnsupportedField.test.tsx diff --git a/packages/uniforms-patternfly-codegen/tests/__mocks__/styleMock.js b/packages/form-code-generator-patternfly-theme/tests/__mocks__/styleMock.js similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__mocks__/styleMock.js rename to packages/form-code-generator-patternfly-theme/tests/__mocks__/styleMock.js diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/AutoForm.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/AutoForm.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/AutoForm.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/AutoForm.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/BoolField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/BoolField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/BoolField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/BoolField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/CheckBoxGroupField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/CheckBoxGroupField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/CheckBoxGroupField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/CheckBoxGroupField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/DateField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/DateField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/DateField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/DateField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/NestField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/NestField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/NestField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/NestField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/NumField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/NumField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/NumField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/NumField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/RadioField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/RadioField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/RadioField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/RadioField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/SelectField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/SelectField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/SelectField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/SelectField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/TextField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/TextField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/TextField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/TextField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/__snapshots__/UnsupportedField.test.tsx.snap b/packages/form-code-generator-patternfly-theme/tests/__snapshots__/UnsupportedField.test.tsx.snap similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/__snapshots__/UnsupportedField.test.tsx.snap rename to packages/form-code-generator-patternfly-theme/tests/__snapshots__/UnsupportedField.test.tsx.snap diff --git a/packages/uniforms-patternfly-codegen/tests/_createContext.ts b/packages/form-code-generator-patternfly-theme/tests/_createContext.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/_createContext.ts rename to packages/form-code-generator-patternfly-theme/tests/_createContext.ts diff --git a/packages/uniforms-patternfly-codegen/tests/_createSchema.ts b/packages/form-code-generator-patternfly-theme/tests/_createSchema.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/_createSchema.ts rename to packages/form-code-generator-patternfly-theme/tests/_createSchema.ts diff --git a/packages/uniforms-patternfly-codegen/tests/_render.tsx b/packages/form-code-generator-patternfly-theme/tests/_render.tsx similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/_render.tsx rename to packages/form-code-generator-patternfly-theme/tests/_render.tsx diff --git a/packages/uniforms-bootstrap4-codegen/tests/jest.setup.ts b/packages/form-code-generator-patternfly-theme/tests/jest.setup.ts similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tests/jest.setup.ts rename to packages/form-code-generator-patternfly-theme/tests/jest.setup.ts diff --git a/packages/uniforms-patternfly-codegen/tests/rawJestTransformer.js b/packages/form-code-generator-patternfly-theme/tests/rawJestTransformer.js similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/rawJestTransformer.js rename to packages/form-code-generator-patternfly-theme/tests/rawJestTransformer.js diff --git a/packages/uniforms-patternfly-codegen/tsconfig.json b/packages/form-code-generator-patternfly-theme/tsconfig.json similarity index 100% rename from packages/uniforms-patternfly-codegen/tsconfig.json rename to packages/form-code-generator-patternfly-theme/tsconfig.json diff --git a/packages/uniforms-patternfly-codegen/tsconfig.tests.json b/packages/form-code-generator-patternfly-theme/tsconfig.tests.json similarity index 100% rename from packages/uniforms-patternfly-codegen/tsconfig.tests.json rename to packages/form-code-generator-patternfly-theme/tsconfig.tests.json diff --git a/packages/uniforms-patternfly-codegen/webpack.config.js b/packages/form-code-generator-patternfly-theme/webpack.config.js similarity index 97% rename from packages/uniforms-patternfly-codegen/webpack.config.js rename to packages/form-code-generator-patternfly-theme/webpack.config.js index e443c933a6d..0f2dc3f807c 100644 --- a/packages/uniforms-patternfly-codegen/webpack.config.js +++ b/packages/form-code-generator-patternfly-theme/webpack.config.js @@ -26,6 +26,7 @@ module.exports = (env) => [ merge(common(env), { entry: { index: "./src/index.ts", + theme: "./src/theme.ts", }, plugins: [new CopyPlugin({ patterns: [{ from: "./src/resources", to: "./resources" }] })], output: { diff --git a/packages/form-code-generator/README.md b/packages/form-code-generator/README.md new file mode 100644 index 00000000000..f1d5c2fcc9c --- /dev/null +++ b/packages/form-code-generator/README.md @@ -0,0 +1,104 @@ + + +## Form Code Generator + +This library is used to generate the form code based on a schema. It uses different themes, such as the [Bootstrap4](../form-code-generator-bootstrap4-theme/README.md) and [PatternFly](../form-code-generator-patternfly-theme/README.md) or any theme that implements the [FormCodeGeneratorTheme](./src/types.ts) interface. + +## How it works? + +This library provides types and interfaces to be used by themes. The `generateFormCode` function receives a list of schemas where the theme will be applied. The generated code or error are returned to the caller. + +## Usage + +To use it, call the `generateFormCode` function passing your theme to its arguments: + +```ts +import { generateFormCode } from "@kie-tools/form-code-generator/dist/generateFormCode" +import { FormCodeGeneratorTheme } from "@kie-tools/form-code-generator/dist/types" + +const formCode = generateFormCode({ + formSchemas: [ + { + formSchema: { + name: "my form name", // Form name + schema: {}, // My form schema. The theme determines which kind of schema will be supported. + }, + }, + ], + formCodeGeneratorTheme: { + generate: ({ name, schema }) => { ... }; + }, +}); + +formsCode[0]; // FormAsset | FormGenerationError +``` + +Example using the [PatternFly](../form-code-generator-patternfly-theme/README.md) theme: + +```ts +import { generateFormCode } from "@kie-tools/form-code-generator/dist/generateFormCode"; +import { patternflyFormCodeGeneratorTheme } from "@kie-tools/form-code-generator-patternfly-theme/dist/theme"; + +const formsCode = generateFormCode({ + formSchemas: [ + { + formSchema: { + name: "my patternfly form", // Form name + schema: {}, // My form JSON Schema. + }, + }, + ], + formCodeGeneratorTheme: patternflyFormCodeGeneratorTheme, +}); + +formsCode[0]; // FormAsset | FormGenerationError +``` + +## Build + +In order to build the library you must run the following command in the root folder of the repository: + +```shell script +pnpm -F @kie-tools/form-code-generator... build:prod +``` + +--- + +Apache KIE (incubating) is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the name of Apache Incubator. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +Some of the incubating project’s releases may not be fully compliant with ASF +policy. For example, releases may have incomplete or un-reviewed licensing +conditions. What follows is a list of known issues the project is currently +aware of (note that this list, by definition, is likely to be incomplete): + +- Hibernate, an LGPL project, is being used. Hibernate is in the process of + relicensing to ASL v2 +- Some files, particularly test files, and those not supporting comments, may + be missing the ASF Licensing Header + +If you are planning to incorporate this work into your product/project, please +be aware that you will need to conduct a thorough licensing review to determine +the overall implications of including this work. For the current status of this +project through the Apache Incubator visit: +https://incubator.apache.org/projects/kie.html diff --git a/packages/uniforms-patternfly-codegen/env/index.js b/packages/form-code-generator/env/index.js similarity index 100% rename from packages/uniforms-patternfly-codegen/env/index.js rename to packages/form-code-generator/env/index.js diff --git a/packages/form-generation-tool/jest.config.js b/packages/form-code-generator/jest.config.js similarity index 100% rename from packages/form-generation-tool/jest.config.js rename to packages/form-code-generator/jest.config.js diff --git a/packages/form-code-generator/package.json b/packages/form-code-generator/package.json new file mode 100644 index 00000000000..321abcc7865 --- /dev/null +++ b/packages/form-code-generator/package.json @@ -0,0 +1,44 @@ +{ + "name": "@kie-tools/form-code-generator", + "version": "0.0.0", + "description": "", + "license": "Apache-2.0", + "keywords": [], + "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" + }, + "types": "./dist/index.d.ts", + "main": "dist/index.js", + "files": [ + "dist" + ], + "scripts": { + "build:dev": "rimraf dist && tsc -p tsconfig.json", + "build:prod": "rimraf dist && tsc -p tsconfig.json && pnpm lint && pnpm test", + "lint": "run-script-if --bool \"$(build-env linters.run)\" --then \"kie-tools--eslint ./src\"", + "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --silent --verbose --passWithNoTests\"" + }, + "devDependencies": { + "@kie-tools/eslint": "workspace:*", + "@kie-tools/jest-base": "workspace:*", + "@kie-tools/root-env": "workspace:*", + "@kie-tools/tsconfig": "workspace:*", + "@testing-library/jest-dom": "^6.4.6", + "@types/jest": "^29.5.12", + "@types/jest-when": "^3.5.5", + "@types/lodash": "^4.14.168", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", + "jest-junit": "^16.0.0", + "jest-when": "^3.6.0", + "rimraf": "^3.0.2", + "run-script-os": "^1.1.6", + "ts-jest": "^29.1.5", + "typescript": "^5.5.3" + } +} diff --git a/packages/form-code-generator/src/generateFormCode.ts b/packages/form-code-generator/src/generateFormCode.ts new file mode 100644 index 00000000000..9db2d57ea5f --- /dev/null +++ b/packages/form-code-generator/src/generateFormCode.ts @@ -0,0 +1,46 @@ +/* + * 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 { FormCodeGeneratorTheme, FormSchema, FormAsset, FormCodeGeneration } from "./types"; + +export interface FormCodeGenerator< + FormThemeFileExt extends string, + CustomFormAsset extends FormAsset, +> { + formCodeGeneratorTheme: FormCodeGeneratorTheme; + formSchemas: FormSchema[]; +} + +/** + * This function receives a theme to be interated over a list of schemas, generating the form code. + */ +export function generateFormCode>({ + formCodeGeneratorTheme: formGeneratorTheme, + formSchemas, +}: FormCodeGenerator) { + return formSchemas.reduce((generatedForms, formSchema) => { + try { + generatedForms.push({ formAsset: formGeneratorTheme.generate(formSchema), formError: undefined }); + } catch (error) { + console.error(`Error generating form: ${error}`); + generatedForms.push({ formAsset: undefined, formError: error }); + } + return generatedForms; + }, [] as FormCodeGeneration[]); +} diff --git a/packages/form-generation-tool/src/generation/types.ts b/packages/form-code-generator/src/types.ts similarity index 65% rename from packages/form-generation-tool/src/generation/types.ts rename to packages/form-code-generator/src/types.ts index 523e30b3892..9943e2cde55 100644 --- a/packages/form-generation-tool/src/generation/types.ts +++ b/packages/form-code-generator/src/types.ts @@ -22,37 +22,36 @@ export interface FormSchema { schema: any; } -export enum FormStyle { - PATTERNFLY = "patternfly", - BOOTSTRAP = "bootstrap", -} - -export enum FormAssetType { - HTML = "html", - TSX = "tsx", -} - export interface FormResources { styles: Record; scripts: Record; } -export interface FormConfig { +export interface FormConfiguration { schema: string; resources: FormResources; } -export interface FormAsset { +export interface FormAsset { id: string; - sanitizedId: string; assetName: string; - sanitizedAssetName: string; content: string; - type: FormAssetType | string; - config: FormConfig; + type: FormThemeFileExt; + config: FormConfiguration; +} + +export interface FormCodeGenerationError { + error: Error; +} + +export interface FormCodeGeneratorTheme< + FormThemeFileExt extends string, + CustomFormAsset = FormAsset, +> { + generate: (formSchema: FormSchema) => CustomFormAsset; } -export interface FormGenerationTool { - type: string; - generate: (schema: FormSchema) => FormAsset; +export interface FormCodeGeneration { + formAsset: FormAsset | undefined; + formError: FormCodeGenerationError | undefined; } diff --git a/packages/form-code-generator/tests/__mocks__/partternfly.ts b/packages/form-code-generator/tests/__mocks__/partternfly.ts new file mode 100644 index 00000000000..d54abc89d91 --- /dev/null +++ b/packages/form-code-generator/tests/__mocks__/partternfly.ts @@ -0,0 +1,151 @@ +/* + * 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 { FormCodeGeneratorTheme, FormSchema } from "../../dist/types"; + +export const dummyPatternflyTheme: FormCodeGeneratorTheme<"tsx"> = { + generate({ schema, name }: FormSchema) { + return { + id: name, + content: name, + type: "tsx", + assetName: `${name}.tsx`, + config: { + schema: JSON.stringify(schema), + resources: { styles: {}, scripts: {} }, + }, + }; + }, +}; + +export const ApplyForVisaSchema = { + $schema: "http://json-schema.org/draft-07/schema#", + type: "object", + properties: { + traveller: { + type: "object", + properties: { + address: { + type: "object", + properties: { + city: { type: "string" }, + country: { type: "string" }, + street: { type: "string" }, + zipCode: { type: "string" }, + }, + }, + email: { type: "string" }, + firstName: { type: "string" }, + lastName: { type: "string" }, + nationality: { type: "string" }, + }, + input: true, + }, + trip: { + type: "object", + properties: { + begin: { type: "string", format: "date-time" }, + city: { type: "string" }, + country: { type: "string" }, + end: { type: "string", format: "date-time" }, + visaRequired: { type: "boolean" }, + }, + input: true, + }, + visaApplication: { + type: "object", + properties: { + approved: { type: "boolean" }, + city: { type: "string" }, + country: { type: "string" }, + duration: { type: "integer" }, + firstName: { type: "string" }, + lastName: { type: "string" }, + nationality: { type: "string" }, + passportNumber: { type: "string" }, + }, + output: true, + }, + }, +}; + +export const ConfirmTravelSchema = { + $schema: "http://json-schema.org/draft-07/schema#", + type: "object", + properties: { + flight: { + type: "object", + properties: { + arrival: { + type: "string", + format: "date-time", + }, + departure: { + type: "string", + format: "date-time", + }, + flightNumber: { + type: "string", + }, + gate: { + type: "string", + }, + seat: { + type: "string", + }, + }, + input: true, + }, + hotel: { + type: "object", + properties: { + address: { + type: "object", + properties: { + city: { + type: "string", + }, + country: { + type: "string", + }, + street: { + type: "string", + }, + zipCode: { + type: "string", + }, + }, + }, + bookingNumber: { + type: "string", + }, + name: { + type: "string", + }, + phone: { + type: "string", + }, + room: { + type: "string", + }, + }, + input: true, + }, + }, +}; diff --git a/packages/form-code-generator/tests/generateFormCode.test.ts b/packages/form-code-generator/tests/generateFormCode.test.ts new file mode 100644 index 00000000000..ca849e5b749 --- /dev/null +++ b/packages/form-code-generator/tests/generateFormCode.test.ts @@ -0,0 +1,152 @@ +/* + * 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 { generateFormCode } from "../dist/generateFormCode"; +import { FormAsset, FormSchema } from "../dist/types"; +import { ApplyForVisaSchema, ConfirmTravelSchema, dummyPatternflyTheme } from "./__mocks__/partternfly"; + +describe("FormCodeGenerator tests", () => { + describe("generateFormCode tests", () => { + it("Generate forms with empty theme", () => { + const formCode = generateFormCode({ + formSchemas: [{ name: "", schema: {} }], + formCodeGeneratorTheme: { + generate: ({ name, schema }) => ({ + assetName: "", + config: { schema: "", resources: { scripts: {}, styles: {} } }, + content: "", + id: "", + type: "", + }), + }, + }); + + expect(formCode).toHaveLength(1); + expect(formCode[0]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "", + assetName: "", + config: { resources: { scripts: {}, styles: {} }, schema: "" }, + type: "", + }), + formError: undefined, + }) + ); + }); + + it("Generate forms for empty schema", () => { + const formCode = generateFormCode({ + formSchemas: [{ name: "test", schema: {} }], + formCodeGeneratorTheme: dummyPatternflyTheme, + }); + + expect(formCode).toHaveLength(1); + expect(formCode[0]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "test", + assetName: "test.tsx", + config: { resources: { scripts: {}, styles: {} }, schema: "{}" }, + type: "tsx", + }), + formError: undefined, + }) + ); + }); + + it("Generate forms project with schemas", () => { + const formCode = generateFormCode({ + formSchemas: [ + { name: "Apply#For#Visa", schema: ApplyForVisaSchema }, + { name: "ConfirmTravel", schema: ConfirmTravelSchema }, + ], + formCodeGeneratorTheme: dummyPatternflyTheme, + }); + + expect(formCode).toHaveLength(2); + expect(formCode[0]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "Apply#For#Visa", + assetName: "Apply#For#Visa.tsx", + config: { resources: { scripts: {}, styles: {} }, schema: JSON.stringify(ApplyForVisaSchema) }, + type: "tsx", + }), + formError: undefined, + }) + ); + expect(formCode[1]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "ConfirmTravel", + assetName: "ConfirmTravel.tsx", + config: { resources: { scripts: {}, styles: {} }, schema: JSON.stringify(ConfirmTravelSchema) }, + type: "tsx", + }), + formError: undefined, + }) + ); + }); + + it("Generate forms project with schemas and one failure", () => { + const formCode = generateFormCode({ + formSchemas: [ + { name: "ApplyForVisa", schema: ApplyForVisaSchema }, + { name: "ConfirmTravel", schema: ConfirmTravelSchema }, + ], + formCodeGeneratorTheme: { + generate(schema: FormSchema): FormAsset<"txt"> { + if (schema.name === "ApplyForVisa") { + throw new Error("Unexpected Error!"); + } + + return { + id: schema.name, + content: schema.name, + type: "txt", + assetName: `${schema.name}.txt`, + config: { + schema: "", + resources: { styles: {}, scripts: {} }, + }, + }; + }, + }, + }); + + expect(formCode).toHaveLength(2); + expect(formCode[0]).toEqual({ + formAsset: undefined, + formError: new Error("Unexpected Error!"), + }); + expect(formCode[1]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "ConfirmTravel", + assetName: "ConfirmTravel.txt", + config: { resources: { scripts: {}, styles: {} }, schema: "" }, + type: "txt", + }), + formError: undefined, + }) + ); + }); + }); +}); diff --git a/packages/uniforms-patternfly-codegen/tests/jest.setup.ts b/packages/form-code-generator/tests/jest.setup.ts similarity index 100% rename from packages/uniforms-patternfly-codegen/tests/jest.setup.ts rename to packages/form-code-generator/tests/jest.setup.ts diff --git a/packages/form-generation-tool/tsconfig.json b/packages/form-code-generator/tsconfig.json similarity index 100% rename from packages/form-generation-tool/tsconfig.json rename to packages/form-code-generator/tsconfig.json diff --git a/packages/uniforms-bootstrap4-codegen/tsconfig.tests.json b/packages/form-code-generator/tsconfig.tests.json similarity index 100% rename from packages/uniforms-bootstrap4-codegen/tsconfig.tests.json rename to packages/form-code-generator/tsconfig.tests.json diff --git a/packages/form-generation-tool/README.md b/packages/form-generation-tool/README.md deleted file mode 100644 index d3b749d0676..00000000000 --- a/packages/form-generation-tool/README.md +++ /dev/null @@ -1,139 +0,0 @@ - - -## Form Generation Tool - -This is a utility CLI to help generating forms in differents formats for BPMN processes and User Tasks in your Kogito projects. - -### How does it work? - -When building a Kogito project, Kogito generates JSON schemas to represent the data models for both Processes and User Tasks. - -This tool locates those JSON Schemas in the project and taking advantage of the [Uniforms](https://uniforms.tools) APIs, processes them and generate static forms as a resources in the project `src/main/resoures/form` folder. - -### Form Types - -There are two types of form supported with differnt styling and output format: - -- **Patternfly**: generates a React (`.tsx`) forms using Patternfly 4 components. Implementation can be found in `@kie-tools/uniforms-patternfly-codegen` - -- **Bootstrap 4**: generates a HTML (`.html`) forms using Bootstrap 4 styling. - -Each generated form consist in two files, the source code (`.tsx` or `.html`) and a companion `.config` file that defines the external resources (`css` / `js`) the form may need. - -## Build - -In order to build the CLI you must run the following command in the root folder of the repository: - -```shell script -pnpm -F @kie-tools/form-generation-tool... build:prod -``` - -After the command has finished, go to `packages/form-generation-tool/dist` folder and you'll find the CLI binary (`form-generation-cli-macos`, `form-generation-cli-linux` or `form-generation-cli-win.exe` depending on your OS). - -## Running the CLI - -If you built the `form-generation-tool` package as described above locally, then in the command line just execute the CLI binary: - -```shell script -./form-generation-cli-linux -``` - -For those, who do not want to build `form-generation-tool` package locally, they can install last published version and then run it: - -```shell script -npm i -g @kie-tools/form-generation-tool -form-generation-tool -``` - -For those, who want to try `form-generation-tool` without instalation they can start it as: - -```shell script -npx @kie-tools/form-generation-tool -``` - -All commands will start a wizard to help you generate the forms: - -1. First set the path to your Kogito Project. - -![Step 1: Set the Kogito Project path](./docs/form-generation-1.png) - -> **ℹ️ NOTE:** Make sure your Kogito project has been compiled, otherwhise the CLI won't be able to find all the form schemas. - -2. Select one of the availables the Form types (Patternfly or Bootstrap 4). - -![Step 2: Select the Form type](./docs/form-generation-2.png) - -3. Confirm Selection to start the Form Generation process. - -![Step 3: Select the Form type](./docs/form-generation-3.png) - -4. If the Form generation process is succesful, you'll get a confirmation message. - -![Form generation succesfully finished](./docs/form-generation-4.png) - -The generated forms will be stored in the `src/main/resources/forms` folder of the Kogito project. - -![List of generated forms in project](./docs/form-generation-5.png) - -## Using the Custom Forms with Runtime Tools Quarkus Extension - -If your project is a Quarkus based Kogito project, you can use and test them by using the **Runtime Tools Quarkus Extension**. - -To do so, just add the following dependency in your project `pom.xml`: - -```xml - - org.kie.kogito - runtime-tools-quarkus-extension - ${version} - -``` - -And start the project in Dev mode with the command: - -```shell script -mvn clean quarkus:dev -``` - -For more information on how to setup the **Runtime Tools Quarkus Extension** in your project look at the oficial Kogito [documentation](https://docs.kogito.kie.org/latest/html_single/#con-runtime-tools-dev-ui_kogito-developing-process-services). - ---- - -Apache KIE (incubating) is an effort undergoing incubation at The Apache Software -Foundation (ASF), sponsored by the name of Apache Incubator. Incubation is -required of all newly accepted projects until a further review indicates that -the infrastructure, communications, and decision making process have stabilized -in a manner consistent with other successful ASF projects. While incubation -status is not necessarily a reflection of the completeness or stability of the -code, it does indicate that the project has yet to be fully endorsed by the ASF. - -Some of the incubating project’s releases may not be fully compliant with ASF -policy. For example, releases may have incomplete or un-reviewed licensing -conditions. What follows is a list of known issues the project is currently -aware of (note that this list, by definition, is likely to be incomplete): - -- Hibernate, an LGPL project, is being used. Hibernate is in the process of - relicensing to ASL v2 -- Some files, particularly test files, and those not supporting comments, may - be missing the ASF Licensing Header - -If you are planning to incorporate this work into your product/project, please -be aware that you will need to conduct a thorough licensing review to determine -the overall implications of including this work. For the current status of this -project through the Apache Incubator visit: -https://incubator.apache.org/projects/kie.html diff --git a/packages/form-generation-tool/docs/form-generation-1.png b/packages/form-generation-tool/docs/form-generation-1.png deleted file mode 100644 index 100536c370c..00000000000 Binary files a/packages/form-generation-tool/docs/form-generation-1.png and /dev/null differ diff --git a/packages/form-generation-tool/docs/form-generation-2.png b/packages/form-generation-tool/docs/form-generation-2.png deleted file mode 100644 index 6df8123505c..00000000000 Binary files a/packages/form-generation-tool/docs/form-generation-2.png and /dev/null differ diff --git a/packages/form-generation-tool/docs/form-generation-3.png b/packages/form-generation-tool/docs/form-generation-3.png deleted file mode 100644 index 7af9e153d32..00000000000 Binary files a/packages/form-generation-tool/docs/form-generation-3.png and /dev/null differ diff --git a/packages/form-generation-tool/docs/form-generation-4.png b/packages/form-generation-tool/docs/form-generation-4.png deleted file mode 100644 index 5e2534b7198..00000000000 Binary files a/packages/form-generation-tool/docs/form-generation-4.png and /dev/null differ diff --git a/packages/form-generation-tool/docs/form-generation-5.png b/packages/form-generation-tool/docs/form-generation-5.png deleted file mode 100644 index 86d9de0393b..00000000000 Binary files a/packages/form-generation-tool/docs/form-generation-5.png and /dev/null differ diff --git a/packages/form-generation-tool/package.json b/packages/form-generation-tool/package.json deleted file mode 100644 index 061d8edc1df..00000000000 --- a/packages/form-generation-tool/package.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "name": "@kie-tools/form-generation-tool", - "version": "0.0.0", - "description": "", - "license": "Apache-2.0", - "keywords": [], - "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" - }, - "bin": { - "form-generation-tool": "bin.js" - }, - "types": "./dist/index.d.ts", - "main": "dist/index.js", - "files": [ - "dist" - ], - "scripts": { - "build:dev": "rimraf dist && webpack --env dev && pnpm build-binaries", - "build:prod": "pnpm lint && pnpm test && rimraf dist && webpack && pnpm build-binaries:darwin && pnpm build-binaries:linux && pnpm build-binaries:win32", - "build:prod:all": "pnpm lint && pnpm test && rimraf dist && webpack && pnpm && pnpm package:prod:linux && pnpm package:prod:darwin && pnpm package:prod:win32", - "build-binaries": "run-script-os", - "build-binaries:darwin": "pkg dist/index.js --output dist/form-generation-cli-macos --target node18-macos-x64", - "build-binaries:linux": "pkg dist/index.js --output dist/form-generation-cli-linux --target node18-linux-x64", - "build-binaries:win32": "pkg dist/index.js --output dist/form-generation-cli-win.exe --target node18-win-x64", - "lint": "run-script-if --bool \"$(build-env linters.run)\" --then \"kie-tools--eslint ./src\"", - "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --silent --verbose --passWithNoTests\"" - }, - "dependencies": { - "@kie-tools/uniforms-bootstrap4-codegen": "workspace:*", - "@kie-tools/uniforms-patternfly-codegen": "workspace:*", - "inquirer": "^8.1.1", - "lodash": "^4.17.21", - "uniforms": "^3.10.2", - "uniforms-bridge-json-schema": "^3.10.2" - }, - "devDependencies": { - "@babel/core": "^7.16.0", - "@babel/preset-env": "^7.16.0", - "@babel/preset-react": "^7.16.0", - "@kie-tools-core/webpack-base": "workspace:*", - "@kie-tools/eslint": "workspace:*", - "@kie-tools/jest-base": "workspace:*", - "@kie-tools/root-env": "workspace:*", - "@kie-tools/tsconfig": "workspace:*", - "@testing-library/jest-dom": "^6.4.6", - "@types/inquirer": "^7.3.2", - "@types/jest": "^29.5.12", - "@types/jest-when": "^3.5.5", - "@types/lodash": "^4.14.168", - "jest": "^29.7.0", - "jest-environment-jsdom": "^29.7.0", - "jest-junit": "^16.0.0", - "jest-when": "^3.6.0", - "pkg": "^5.8.1", - "rimraf": "^3.0.2", - "run-script-os": "^1.1.6", - "ts-jest": "^29.1.5", - "typescript": "^5.5.3", - "webpack": "^5.94.0", - "webpack-cli": "^4.10.0", - "webpack-dev-server": "^4.15.1", - "webpack-merge": "^5.9.0", - "webpack-node-externals": "^3.0.0" - } -} diff --git a/packages/form-generation-tool/src/cli/cli.ts b/packages/form-generation-tool/src/cli/cli.ts deleted file mode 100644 index 760ab89424f..00000000000 --- a/packages/form-generation-tool/src/cli/cli.ts +++ /dev/null @@ -1,107 +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 inquirer, { Answers } from "inquirer"; - -import { Args, generateForms } from "../generation"; -import { checkKogitoProjectHasForms, checkKogitoProjectStructure } from "../generation/fs"; - -export function run() { - const validateProjectPath = (path: string): string | boolean => { - if (!path || path === "") { - return "Please type a Kogito Project path"; - } - try { - checkKogitoProjectStructure(path); - } catch (err) { - return err.message; - } - - return true; - }; - - const isOverwriteVisible = (answers: Answers): boolean => { - return checkKogitoProjectHasForms(answers.path); - }; - - const execute = (answers: Answers): void => { - const args: Args = { - path: answers.path, - type: answers.type, - overwrite: answers.overwrite, - }; - - const message = - "\nCurrent selection:" + - `\nProject path: ${args.path}` + - `\nForm type: ${args.type}` + - `${args.overwrite !== undefined ? `\nOverwrite existing forms: ${args.overwrite}` : ""}\n`; - - console.log(message); - - inquirer - .prompt({ - name: "confirm", - type: "confirm", - message: "Do you want to continue?", - default: true, - }) - .then((answers) => { - if (answers.confirm) { - generateForms(args); - } - console.log("\nGood bye!"); - }); - }; - - const questions = [ - { - name: "path", - type: "string", - message: "Type your Kogito Project path:", - validate: validateProjectPath, - }, - { - name: "overwrite", - type: "confirm", - message: "The project already contains forms, do you want to overwrite the existing ones?", - default: false, - when: isOverwriteVisible, - }, - { - name: "type", - type: "list", - message: "Select the Form type:", - choices: ["patternfly", "bootstrap"], - default: "patternfly", - }, - ]; - - console.log("Kogito Form Generation CLI"); - console.log("==========================="); - console.log(); - console.log("This tool will help you generate forms for the Processes and User Tasks in your Kogito Projects."); - console.log( - "The tool will search for the User Tasks JSON schemas generated in your project, so make sure the project is build." - ); - console.log("The generated forms will be stored as resources in your project (in src/main/resources/forms folder)."); - console.log(); - - inquirer.prompt(questions).then(execute); -} diff --git a/packages/form-generation-tool/src/generation/formGenerationCommand.ts b/packages/form-generation-tool/src/generation/formGenerationCommand.ts deleted file mode 100644 index 5a914b1cebb..00000000000 --- a/packages/form-generation-tool/src/generation/formGenerationCommand.ts +++ /dev/null @@ -1,59 +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 { lookupFormGenerationTool } from "./tools"; -import { FormGenerationTool, FormSchema, FormAsset } from "./types"; -import { loadProjectSchemas, storeFormAsset } from "./fs"; - -export interface Args { - path: string; - type: string; - overwrite: boolean; -} - -export function generateForms({ path, type, overwrite }: Args) { - console.log("\nStarting Form generation:"); - - try { - const tool: FormGenerationTool = lookupFormGenerationTool(type); - - const forms: FormSchema[] = loadProjectSchemas(path); - - if (forms.length === 0) { - console.log(`\nCouldn't find any form schema in "${path}", check if your project is already built.`); - return; - } - - console.log(`\nFound ${forms.length} schemas`); - - forms.forEach((form) => { - try { - console.log(`\nGenerating form "${form.name}"`); - const output: FormAsset = tool.generate(form); - storeFormAsset(output, path, overwrite); - console.log(`Successfully generated form "${output.sanitizedAssetName}"`); - } catch (err) { - console.log(`Cannot generate form "${form.name}": `, err.message); - } - }); - } catch (err) { - console.log("Error during form generation:"); - console.log(err.message); - } -} diff --git a/packages/form-generation-tool/src/generation/fs/checks.ts b/packages/form-generation-tool/src/generation/fs/checks.ts deleted file mode 100644 index 5c369d36723..00000000000 --- a/packages/form-generation-tool/src/generation/fs/checks.ts +++ /dev/null @@ -1,45 +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 fs from "fs"; -import path from "path"; -import { ERROR_INVALID_FOLDER, ERROR_NOT_DIRECTORY, ERROR_NOT_MVN_PROJECT } from "./loadProjectSchemas"; -import { FORM_STORAGE_FOLDER } from "./storeFormAsset"; - -export function checkKogitoProjectStructure(projectPath: string) { - if (!fs.existsSync(projectPath)) { - throw new Error(ERROR_INVALID_FOLDER); - } - - const sourceStat = fs.statSync(projectPath); - - if (!sourceStat.isDirectory()) { - throw new Error(ERROR_NOT_DIRECTORY); - } - - if (!fs.existsSync(`${projectPath}/pom.xml`)) { - throw new Error(ERROR_NOT_MVN_PROJECT); - } -} - -export function checkKogitoProjectHasForms(projectPath: string) { - const formsPath = path.join(projectPath, FORM_STORAGE_FOLDER); - - return fs.existsSync(formsPath); -} diff --git a/packages/form-generation-tool/src/generation/fs/loadProjectSchemas.ts b/packages/form-generation-tool/src/generation/fs/loadProjectSchemas.ts deleted file mode 100644 index 0b6b12b3941..00000000000 --- a/packages/form-generation-tool/src/generation/fs/loadProjectSchemas.ts +++ /dev/null @@ -1,64 +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 fs from "fs"; -import { FormSchema } from "../types"; -import path from "path"; -import { checkKogitoProjectStructure } from "./checks"; - -const JSON_SCHEMA_PATH = "target/classes/META-INF/jsonSchema"; -const JSON_SCHEMA_EXTENSION = ".json"; - -export const ERROR_INVALID_FOLDER = "Path doesn't exist"; -export const ERROR_NOT_DIRECTORY = "Path isn't a directory"; -export const ERROR_NOT_MVN_PROJECT = "Cannot find 'pom.xml' in source folder, are you sure it is a Kogito Project?"; - -function isValidFile(schemasPath: string, file: string): boolean { - if (!file.endsWith(JSON_SCHEMA_EXTENSION)) { - return false; - } - const stat = fs.statSync(`${schemasPath}/${file}`); - return stat.isFile(); -} - -export function loadProjectSchemas(projectPath: string, jsonSchemaPath?: string): FormSchema[] { - checkKogitoProjectStructure(projectPath); - - const schemasPath = `${projectPath}/${jsonSchemaPath || JSON_SCHEMA_PATH}`; - - if (!fs.existsSync(schemasPath)) { - return []; - } - - const files = fs.readdirSync(schemasPath); - - return files - .filter((file) => isValidFile(schemasPath, file)) - .map((file) => { - try { - return { - name: path.parse(file).name, - schema: JSON.parse(fs.readFileSync(`${schemasPath}/${file}`, "utf8")), - }; - } catch (err) { - console.log(`Cannot load form content for "${file}":`, err.message); - } - }) - .filter((formSchema) => formSchema !== undefined) as FormSchema[]; -} diff --git a/packages/form-generation-tool/src/generation/fs/storeFormAsset.ts b/packages/form-generation-tool/src/generation/fs/storeFormAsset.ts deleted file mode 100644 index 70b2c587d06..00000000000 --- a/packages/form-generation-tool/src/generation/fs/storeFormAsset.ts +++ /dev/null @@ -1,64 +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 { FormAsset } from "../types"; -import fs from "fs"; -import path from "path"; - -export const FORM_STORAGE_FOLDER = "src/main/resources/forms"; -export const FORM_CONFIG_EXT = ".config"; - -function getFormsFolder(sourcePath: string): string { - return `${sourcePath}/${FORM_STORAGE_FOLDER}`; -} - -export function getFormAssetPath(sourcePath: string, formAsset: string): string { - return `${getFormsFolder(sourcePath)}/${formAsset}`; -} - -export function getFormConfigAssetPath(source: string, formAsset: FormAsset): string { - return getFormAssetPath(source, `${formAsset.sanitizedId}${FORM_CONFIG_EXT}`); -} - -export function storeFormAsset(formAsset: FormAsset, source: string, overwriteExisting: boolean) { - const storagePath = getFormsFolder(source); - - if (!fs.existsSync(storagePath)) { - fs.mkdirSync(storagePath); - } - - const existingFormAssets = fs.readdirSync(storagePath).filter((file) => { - const extension = path.extname(file); - return path.basename(file, extension) === formAsset.sanitizedId; - }); - - if (existingFormAssets.length > 0) { - if (!overwriteExisting) { - throw new Error(`Form already exists.`); - } - - console.log(`Form "${formAsset.sanitizedId}" already exists. Proceeding to overwrite it.`); - - existingFormAssets.forEach((file) => { - fs.rmSync(getFormAssetPath(source, file)); - }); - } - fs.writeFileSync(getFormAssetPath(source, formAsset.sanitizedAssetName), formAsset.content); - fs.writeFileSync(getFormConfigAssetPath(source, formAsset), JSON.stringify(formAsset.config, null, 4)); -} diff --git a/packages/form-generation-tool/src/generation/index.ts b/packages/form-generation-tool/src/generation/index.ts deleted file mode 100644 index 8ff98501e40..00000000000 --- a/packages/form-generation-tool/src/generation/index.ts +++ /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. - */ - -export * from "./formGenerationCommand"; diff --git a/packages/form-generation-tool/src/generation/tools/formGenerationToolRegistry.ts b/packages/form-generation-tool/src/generation/tools/formGenerationToolRegistry.ts deleted file mode 100644 index ef4b51eb3bf..00000000000 --- a/packages/form-generation-tool/src/generation/tools/formGenerationToolRegistry.ts +++ /dev/null @@ -1,39 +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 { PatternflyFormGenerationTool } from "./uniforms/patternfly/PatternflyFormGenerationTool"; -import { FormGenerationTool } from "../types"; -import { Bootstrap4FormGenerationTool } from "./uniforms/bootstrap4/Bootstrap4FormGenerationTool"; - -const toolsRegistry: Map = new Map(); - -export function registerFormGenerationTool(formGenerationTool: FormGenerationTool) { - toolsRegistry.set(formGenerationTool.type, formGenerationTool); -} - -registerFormGenerationTool(new PatternflyFormGenerationTool()); -registerFormGenerationTool(new Bootstrap4FormGenerationTool()); - -export function lookupFormGenerationTool(type: string): FormGenerationTool { - const tool = toolsRegistry.get(type); - if (tool) { - return tool; - } - throw new Error(`Unsupported form type "${type}"`); -} diff --git a/packages/form-generation-tool/src/generation/tools/index.ts b/packages/form-generation-tool/src/generation/tools/index.ts deleted file mode 100644 index 1cef086b8a3..00000000000 --- a/packages/form-generation-tool/src/generation/tools/index.ts +++ /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. - */ - -export { registerFormGenerationTool, lookupFormGenerationTool } from "./formGenerationToolRegistry"; diff --git a/packages/form-generation-tool/src/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.ts b/packages/form-generation-tool/src/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.ts deleted file mode 100644 index cb8c77ffd01..00000000000 --- a/packages/form-generation-tool/src/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.ts +++ /dev/null @@ -1,63 +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 unescape from "lodash/unescape"; -import { FormAssetType, FormAsset, FormStyle, FormConfig, FormGenerationTool, FormSchema } from "../../../types"; - -import { renderForm } from "@kie-tools/uniforms-patternfly-codegen/dist"; -import JSONSchemaBridge from "uniforms-bridge-json-schema"; -import { getUniformsSchema } from "../utils/UniformsSchemaUtils"; -import { inputSanitizationUtil } from "../utils/InputSanitizationUtil"; - -export class PatternflyFormConfig implements FormConfig { - public readonly schema: string; - - constructor(formSchema: any) { - this.schema = JSON.stringify(formSchema); - } - - public resources = { - styles: {}, - scripts: {}, - }; -} - -export class PatternflyFormGenerationTool implements FormGenerationTool { - type: string = FormStyle.PATTERNFLY; - - generate(inputSchema: FormSchema): FormAsset { - const uniformsSchema = getUniformsSchema(inputSchema.schema); - const form = renderForm({ - id: inputSchema.name, - sanitizedId: inputSanitizationUtil(inputSchema.name), - schema: new JSONSchemaBridge(uniformsSchema, () => true), - disabled: false, - placeholder: true, - }); - return { - id: inputSchema.name, - sanitizedId: inputSanitizationUtil(inputSchema.name), - assetName: `${inputSchema.name}.${FormAssetType.TSX}`, - sanitizedAssetName: `${inputSanitizationUtil(inputSchema.name)}.${FormAssetType.TSX}`, - type: FormAssetType.TSX, - content: unescape(form), - config: new PatternflyFormConfig(inputSchema.schema), - }; - } -} diff --git a/packages/form-generation-tool/tests/generation/formGenerationCommand.test.ts b/packages/form-generation-tool/tests/generation/formGenerationCommand.test.ts deleted file mode 100644 index 3a5b2e19c0c..00000000000 --- a/packages/form-generation-tool/tests/generation/formGenerationCommand.test.ts +++ /dev/null @@ -1,155 +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 { generateForms } from "../../src/generation"; -import * as fs from "../../src/generation/fs"; -import { FormAsset, FormGenerationTool, FormSchema } from "../../src/generation/types"; -import { ApplyForVisaSchema, ConfirmTravelSchema } from "./tools/uniforms/patternfly/mock"; -import { registerFormGenerationTool } from "../../src/generation/tools"; -import { inputSanitizationUtil } from "../../src/generation/tools/uniforms/utils/InputSanitizationUtil"; - -jest.mock("../../src/generation/fs"); - -describe("formGenerationCommand tests", () => { - const loadProjectSchemasMock = jest.spyOn(fs, "loadProjectSchemas"); - const storeFormAssetsMock = jest.spyOn(fs, "storeFormAsset"); - - const sourcePath = "/a/test/path"; - - beforeEach(() => { - jest.clearAllMocks(); - }); - - it("Generate forms with wrong tool type", () => { - generateForms({ - path: sourcePath, - type: "wrong type", - overwrite: true, - }); - - expect(loadProjectSchemasMock).not.toHaveBeenCalled(); - expect(storeFormAssetsMock).not.toHaveBeenCalled(); - }); - - it("Generate forms for empty project", () => { - loadProjectSchemasMock.mockReturnValueOnce([]); - - generateForms({ - path: sourcePath, - type: "patternfly", - overwrite: true, - }); - - expect(loadProjectSchemasMock).toHaveBeenCalledTimes(1); - expect(storeFormAssetsMock).not.toHaveBeenCalled(); - }); - - it("Generate forms project with schemas", () => { - const schemas: FormSchema[] = [ - { - name: "Apply#For#Visa", - schema: ApplyForVisaSchema, - }, - { - name: "ConfirmTravel", - schema: ConfirmTravelSchema, - }, - ]; - - loadProjectSchemasMock.mockReturnValueOnce(schemas); - - generateForms({ - path: sourcePath, - type: "patternfly", - overwrite: true, - }); - - expect(loadProjectSchemasMock).toHaveBeenCalledTimes(1); - expect(storeFormAssetsMock).toHaveBeenCalledTimes(2); - - const applyForVisaAsset: FormAsset = storeFormAssetsMock.mock.calls[0][0]; - expect(applyForVisaAsset.id).toEqual("Apply#For#Visa"); - expect(applyForVisaAsset.sanitizedId).toEqual("Apply_For_Visa"); - expect(applyForVisaAsset.assetName).toEqual("Apply#For#Visa.tsx"); - expect(applyForVisaAsset.sanitizedAssetName).toEqual("Apply_For_Visa.tsx"); - expect(applyForVisaAsset.content).toContain("const Form__Apply_For_Visa"); - expect(storeFormAssetsMock.mock.calls[0][1]).toEqual(sourcePath); - expect(storeFormAssetsMock.mock.calls[0][2]).toBeTruthy(); - - const confirmTravelAsset: FormAsset = storeFormAssetsMock.mock.calls[1][0]; - expect(confirmTravelAsset.id).toEqual("ConfirmTravel"); - expect(confirmTravelAsset.sanitizedId).toEqual("ConfirmTravel"); - expect(confirmTravelAsset.assetName).toEqual("ConfirmTravel.tsx"); - expect(confirmTravelAsset.sanitizedAssetName).toEqual("ConfirmTravel.tsx"); - expect(confirmTravelAsset.content).toContain("const Form__ConfirmTravel"); - expect(storeFormAssetsMock.mock.calls[1][1]).toEqual(sourcePath); - expect(storeFormAssetsMock.mock.calls[1][2]).toBeTruthy(); - }); - - it("Generate forms project with schemas and one failure", () => { - const ERROR_MESSAGE = "Unexpected Error!"; - - const tool: FormGenerationTool = { - type: "cool tool", - - generate(schema: FormSchema): FormAsset { - if (schema.name === "ApplyForVisa") { - throw new Error(ERROR_MESSAGE); - } - - return { - id: schema.name, - sanitizedId: inputSanitizationUtil(schema.name), - content: schema.name, - type: "txt", - assetName: `${schema.name}.txt`, - sanitizedAssetName: `${inputSanitizationUtil(schema.name)}.txt`, - config: { - schema: "", - resources: { styles: {}, scripts: {} }, - }, - }; - }, - }; - - registerFormGenerationTool(tool); - - const schemas: FormSchema[] = [ - { - name: "ApplyForVisa", - schema: ApplyForVisaSchema, - }, - { - name: "ConfirmTravel", - schema: ConfirmTravelSchema, - }, - ]; - - loadProjectSchemasMock.mockReturnValueOnce(schemas); - - generateForms({ - path: sourcePath, - type: tool.type, - overwrite: true, - }); - - expect(loadProjectSchemasMock).toHaveBeenCalledTimes(1); - expect(storeFormAssetsMock).toHaveBeenCalledTimes(1); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/fs/checks.test.ts b/packages/form-generation-tool/tests/generation/fs/checks.test.ts deleted file mode 100644 index d58988a3046..00000000000 --- a/packages/form-generation-tool/tests/generation/fs/checks.test.ts +++ /dev/null @@ -1,79 +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 * as fs from "fs"; -import { checkKogitoProjectHasForms, checkKogitoProjectStructure } from "../../../src/generation/fs"; -import { - ERROR_INVALID_FOLDER, - ERROR_NOT_DIRECTORY, - ERROR_NOT_MVN_PROJECT, -} from "../../../src/generation/fs/loadProjectSchemas"; - -jest.mock("fs"); - -describe("checks tests", function () { - const mockFs = fs as jest.Mocked; - - const fsExistsSyncMock = jest.fn(); - const fsStatSyncMock = jest.fn(); - - mockFs.existsSync.mockImplementation(fsExistsSyncMock); - mockFs.statSync.mockImplementation(fsStatSyncMock); - - const sourcePath = "/a/test/path"; - - beforeEach(() => { - jest.clearAllMocks(); - }); - - it("Check Project structure with invalid path", () => { - fsExistsSyncMock.mockReturnValueOnce(false); - - expect(() => checkKogitoProjectStructure(sourcePath)).toThrow(ERROR_INVALID_FOLDER); - }); - - it("Check Project structure not a directory", () => { - fsExistsSyncMock.mockReturnValueOnce(true); - fsStatSyncMock.mockReturnValueOnce({ - isDirectory: () => false, - }); - expect(() => checkKogitoProjectStructure(sourcePath)).toThrow(ERROR_NOT_DIRECTORY); - }); - - it("Check Project structure not a mvn project", () => { - fsExistsSyncMock.mockReturnValueOnce(true).mockReturnValueOnce(false); - - fsStatSyncMock.mockReturnValueOnce({ - isDirectory: () => true, - }); - expect(() => checkKogitoProjectStructure(sourcePath)).toThrow(ERROR_NOT_MVN_PROJECT); - }); - - it("Check Project contains forms", () => { - fsExistsSyncMock.mockReturnValueOnce(true); - - expect(checkKogitoProjectHasForms(sourcePath)).toBeTruthy(); - }); - - it("Check Project does not contain forms", () => { - fsExistsSyncMock.mockReturnValueOnce(false); - - expect(checkKogitoProjectHasForms(sourcePath)).toBeFalsy(); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/fs/loadProjectSchemas.test.ts b/packages/form-generation-tool/tests/generation/fs/loadProjectSchemas.test.ts deleted file mode 100644 index 4d9933b5fab..00000000000 --- a/packages/form-generation-tool/tests/generation/fs/loadProjectSchemas.test.ts +++ /dev/null @@ -1,36 +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 { loadProjectSchemas } from "../../../src/generation/fs"; -import { FormSchema } from "../../../src/generation/types"; - -describe("loadProjectSchemas tests", () => { - it("Load project without schemas", () => { - expect(loadProjectSchemas(`${__dirname}/resources/empty`)).toHaveLength(0); - }); - - it("Load project with schemas", () => { - const schemas: FormSchema[] = loadProjectSchemas(`${__dirname}/resources/full`, "schemas"); - - expect(schemas).toHaveLength(2); - - expect(schemas[0].name).toBe("travels_ApplyForVisa"); - expect(schemas[1].name).toBe("travels_ConfirmTravel"); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/fs/resources/empty/pom.xml b/packages/form-generation-tool/tests/generation/fs/resources/empty/pom.xml deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/form-generation-tool/tests/generation/fs/resources/full/pom.xml b/packages/form-generation-tool/tests/generation/fs/resources/full/pom.xml deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/empty.json b/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/empty.json deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ApplyForVisa.json b/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ApplyForVisa.json deleted file mode 100644 index e7d7bc0b500..00000000000 --- a/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ApplyForVisa.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "traveller": { - "type": "object", - "properties": { - "address": { - "type": "object", - "properties": { - "city": { "type": "string" }, - "country": { "type": "string" }, - "street": { "type": "string" }, - "zipCode": { "type": "string" } - } - }, - "email": { "type": "string" }, - "firstName": { "type": "string" }, - "lastName": { "type": "string" }, - "nationality": { "type": "string" } - }, - "input": true - }, - "trip": { - "type": "object", - "properties": { - "begin": { "type": "string", "format": "date-time" }, - "city": { "type": "string" }, - "country": { "type": "string" }, - "end": { "type": "string", "format": "date-time" }, - "visaRequired": { "type": "boolean" } - }, - "input": true - }, - "visaApplication": { - "type": "object", - "properties": { - "approved": { "type": "boolean" }, - "city": { "type": "string" }, - "country": { "type": "string" }, - "duration": { "type": "integer" }, - "firstName": { "type": "string" }, - "lastName": { "type": "string" }, - "nationality": { "type": "string" }, - "passportNumber": { "type": "string" } - }, - "output": true - } - } -} diff --git a/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ConfirmTravel.json b/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ConfirmTravel.json deleted file mode 100644 index 093260b40eb..00000000000 --- a/packages/form-generation-tool/tests/generation/fs/resources/full/schemas/travels_ConfirmTravel.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "flight": { - "type": "object", - "properties": { - "arrival": { - "type": "string", - "format": "date-time" - }, - "departure": { - "type": "string", - "format": "date-time" - }, - "flightNumber": { - "type": "string" - }, - "gate": { - "type": "string" - }, - "seat": { - "type": "string" - } - }, - "input": true - }, - "hotel": { - "type": "object", - "properties": { - "address": { - "type": "object", - "properties": { - "city": { - "type": "string" - }, - "country": { - "type": "string" - }, - "street": { - "type": "string" - }, - "zipCode": { - "type": "string" - } - } - }, - "bookingNumber": { - "type": "string" - }, - "name": { - "type": "string" - }, - "phone": { - "type": "string" - }, - "room": { - "type": "string" - } - }, - "input": true - } - } -} diff --git a/packages/form-generation-tool/tests/generation/fs/storeFormAsset.test.ts b/packages/form-generation-tool/tests/generation/fs/storeFormAsset.test.ts deleted file mode 100644 index 66df95e5127..00000000000 --- a/packages/form-generation-tool/tests/generation/fs/storeFormAsset.test.ts +++ /dev/null @@ -1,95 +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 * as fs from "fs"; -import { FormAsset, FormAssetType } from "../../../src/generation/types"; -import { storeFormAsset } from "../../../src/generation/fs"; -import { getFormAssetPath, getFormConfigAssetPath } from "../../../src/generation/fs/storeFormAsset"; -import { PatternflyFormConfig } from "../../../src/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool"; - -jest.mock("fs"); - -describe("storeFormAssets tests", () => { - const mockFs = fs as jest.Mocked; - - const fsRmSyncMock = jest.fn(); - const fsMkDirSyncMock = jest.fn(); - const fsWriteFileSyncMock = jest.fn(); - const fsReaddirSyncMock = jest.fn(); - - mockFs.readdirSync.mockImplementation(fsReaddirSyncMock); - mockFs.rmSync.mockImplementation(fsRmSyncMock); - mockFs.mkdirSync.mockImplementation(fsMkDirSyncMock); - mockFs.writeFileSync.mockImplementation(fsWriteFileSyncMock); - - const sourcePath = "/a/test/path"; - const formAsset: FormAsset = { - id: "test", - sanitizedId: "test", - assetName: "test.tsx", - sanitizedAssetName: "test.tsx", - type: FormAssetType.TSX, - content: "content", - config: new PatternflyFormConfig({}), - }; - - beforeEach(() => { - jest.clearAllMocks(); - }); - - it("Store existing asset without overwrite", () => { - mockFs.existsSync.mockReturnValue(true); - fsReaddirSyncMock.mockReturnValue(["test.tsx", "test.config"]); - - expect(() => storeFormAsset(formAsset, sourcePath, false)).toThrow(`Form already exists.`); - }); - - it("Store existing asset with overwrite", () => { - mockFs.existsSync.mockReturnValue(true); - fsReaddirSyncMock.mockReturnValue(["test.tsx", "test.config"]); - - expect(() => storeFormAsset(formAsset, sourcePath, true)).not.toThrow(); - expect(fsRmSyncMock).toHaveBeenCalledTimes(2); - expect(fsMkDirSyncMock).not.toHaveBeenCalled(); - expect(fsWriteFileSyncMock).toHaveBeenCalledTimes(2); - - expect(fsWriteFileSyncMock.mock.calls[0][0]).toStrictEqual(getFormAssetPath(sourcePath, formAsset.assetName)); - expect(fsWriteFileSyncMock.mock.calls[0][1]).toStrictEqual(formAsset.content); - - expect(fsWriteFileSyncMock.mock.calls[1][0]).toStrictEqual(getFormConfigAssetPath(sourcePath, formAsset)); - expect(fsWriteFileSyncMock.mock.calls[1][1]).toStrictEqual(JSON.stringify(new PatternflyFormConfig({}), null, 4)); - }); - - it("Store asset", () => { - mockFs.existsSync.mockImplementation(() => false); - fsReaddirSyncMock.mockReturnValue([]); - - expect(() => storeFormAsset(formAsset, sourcePath, true)).not.toThrow(); - expect(fsMkDirSyncMock).toHaveBeenCalled(); - expect(fsRmSyncMock).not.toHaveBeenCalled(); - - expect(fsWriteFileSyncMock).toHaveBeenCalledTimes(2); - - expect(fsWriteFileSyncMock.mock.calls[0][0]).toStrictEqual(getFormAssetPath(sourcePath, formAsset.assetName)); - expect(fsWriteFileSyncMock.mock.calls[0][1]).toStrictEqual(formAsset.content); - - expect(fsWriteFileSyncMock.mock.calls[1][0]).toStrictEqual(getFormConfigAssetPath(sourcePath, formAsset)); - expect(fsWriteFileSyncMock.mock.calls[1][1]).toStrictEqual(JSON.stringify(new PatternflyFormConfig({}), null, 4)); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/tools/formGenerationToolsRegistry.test.ts b/packages/form-generation-tool/tests/generation/tools/formGenerationToolsRegistry.test.ts deleted file mode 100644 index 0b1ee6f6d2b..00000000000 --- a/packages/form-generation-tool/tests/generation/tools/formGenerationToolsRegistry.test.ts +++ /dev/null @@ -1,52 +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 { lookupFormGenerationTool, registerFormGenerationTool } from "../../../src/generation/tools"; -import { FormGenerationTool, FormStyle } from "../../../src/generation/types"; - -describe("formGenerationToolsRegistry tests", () => { - it("Lookup existing tool - patternfly", () => { - const tool = lookupFormGenerationTool(FormStyle.PATTERNFLY); - - expect(tool).not.toBeUndefined(); - - expect(tool.type).toStrictEqual(FormStyle.PATTERNFLY); - }); - - it("Lookup wrong tool", () => { - const toolType = "wrong tool type"; - expect(() => lookupFormGenerationTool(toolType)).toThrow(`Unsupported form type "${toolType}"`); - }); - - it("Register tool & lookup", () => { - const tool: FormGenerationTool = { - type: "cool new tool", - generate: jest.fn(), - }; - - registerFormGenerationTool(tool); - - const coolTool = lookupFormGenerationTool(tool.type); - expect(coolTool).not.toBeUndefined(); - expect(coolTool).toStrictEqual(tool); - - const patternfly = lookupFormGenerationTool(FormStyle.PATTERNFLY); - expect(patternfly).not.toBeUndefined(); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.test.ts b/packages/form-generation-tool/tests/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.test.ts deleted file mode 100644 index 9ce6ab75427..00000000000 --- a/packages/form-generation-tool/tests/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool.test.ts +++ /dev/null @@ -1,45 +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 { FormAsset } from "../../../../../src/generation/types"; -import { ApplyForVisaSchema } from "./mock"; -import { - Bootstrap4FormConfig, - Bootstrap4FormGenerationTool, -} from "../../../../../src/generation/tools/uniforms/bootstrap4/Bootstrap4FormGenerationTool"; - -describe("Bootstrap4FormGenerationTool tests", () => { - it("Generate", () => { - const tool = new Bootstrap4FormGenerationTool(); - - const formAsset: FormAsset = tool.generate({ - name: "ApplyFor#Visa", - schema: ApplyForVisaSchema, - }); - - expect(formAsset).not.toBeUndefined(); - expect(formAsset.id).toStrictEqual("ApplyFor#Visa"); - expect(formAsset.sanitizedId).toStrictEqual("ApplyFor_Visa"); - expect(formAsset.assetName).toStrictEqual("ApplyFor#Visa.html"); - expect(formAsset.sanitizedAssetName).toStrictEqual("ApplyFor_Visa.html"); - expect(formAsset.content).not.toBeUndefined(); - expect(formAsset.config).not.toBeUndefined(); - expect(formAsset.config).toMatchObject(new Bootstrap4FormConfig(ApplyForVisaSchema)); - }); -}); diff --git a/packages/form-generation-tool/tests/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.test.ts b/packages/form-generation-tool/tests/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.test.ts deleted file mode 100644 index e8f59869c25..00000000000 --- a/packages/form-generation-tool/tests/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool.test.ts +++ /dev/null @@ -1,47 +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 { - PatternflyFormConfig, - PatternflyFormGenerationTool, -} from "../../../../../src/generation/tools/uniforms/patternfly/PatternflyFormGenerationTool"; -import { FormAsset } from "../../../../../src/generation/types"; -import { ApplyForVisaSchema } from "./mock"; - -describe("PatternflyFormGenerationTool tests", () => { - it("Generate", () => { - const tool = new PatternflyFormGenerationTool(); - - const formAsset: FormAsset = tool.generate({ - name: "ApplyFor#Visa", - schema: ApplyForVisaSchema, - }); - - expect(formAsset).not.toBeUndefined(); - expect(formAsset.id).toStrictEqual("ApplyFor#Visa"); - expect(formAsset.sanitizedId).toStrictEqual("ApplyFor_Visa"); - expect(formAsset.assetName).toStrictEqual("ApplyFor#Visa.tsx"); - expect(formAsset.sanitizedAssetName).toStrictEqual("ApplyFor_Visa.tsx"); - expect(formAsset.content).not.toBeUndefined(); - expect(formAsset.content).toContain("const Form__ApplyFor_Visa"); - expect(formAsset.content).toContain("export default Form__ApplyFor_Visa;"); - expect(formAsset.config).not.toBeUndefined(); - expect(formAsset.config).toMatchObject(new PatternflyFormConfig(ApplyForVisaSchema)); - }); -}); diff --git a/packages/form-generation-tool/webpack.config.js b/packages/form-generation-tool/webpack.config.js deleted file mode 100644 index 6063e28adf9..00000000000 --- a/packages/form-generation-tool/webpack.config.js +++ /dev/null @@ -1,35 +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 nodeExternals = require("webpack-node-externals"); -const { merge } = require("webpack-merge"); -const common = require("@kie-tools-core/webpack-base/webpack.common.config"); - -module.exports = (env, argv) => [ - merge(common(env, argv), { - entry: { - index: "./src/index.ts", - }, - target: "node", - output: { - libraryTarget: "commonjs2", - }, - externals: [nodeExternals({ modulesDir: "../../node_modules" })], - }), -]; diff --git a/packages/jbpm-form-code-generator-themes/README.md b/packages/jbpm-form-code-generator-themes/README.md new file mode 100644 index 00000000000..625f509bb69 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/README.md @@ -0,0 +1,110 @@ + + +## jBPM Form Code Generator + +This package has two jBPM themes for the [form-code-generator](../form-code-generator/README.md) library. Both themes are extensions of the [Bootstrap4 theme](../form-code-generator-bootstrap4-theme/README.md) and [PatternFly theme](../form-code-generator-patternfly-theme/README.md), resulting in the jBPM Bootstrap4 theme and jBPM PatternFly theme respectively. + +## Usage + +To use it, pass the jBPM theme to the `generateFormCode` function: + +```ts +import { generateFormCode } from "@kie-tools/form-code-generator/dist/generateFormCode"; +import { jbpmPatternflyFormCodeGeneratorTheme } from "@kie-tools/jbpm-form-code-generator-themes/dist/jbpmPatternflyFormCodeGeneratorTheme"; + +const jbpmFormsCode = generateFormCode({ + formCodeGeneratorTheme: jbpmPatternflyFormCodeGeneratorTheme, + formSchemas: [ + { + name: "", + schema: {}, // Your JSON Schema + }, + ], +}); +``` + +The `jbpmFormsCode` will give you the following object: + +```ts +[{ + formAsset: JbpmFormAssets | undefined + formError: FormCodeGenerationError | undefined +}] +``` + +`JbpmFormAssets` is a object with the following properties: + +```ts +{ + id: string, // The form id + sanitizedId: string, // The same value as "id" but any "#" occorrence is replaced by "_" + assetName: string, // The form name + sanitizedAssetName: string, // The same value as "assetName" but any "#" occorrence is replaced by "_" + type: string, // The file extension of the code + content: string, // The unescaped form code + config: { + schema: string, // The stringifyied JSON Schema + resources: { + styles: {}, // Any style that need to be loaded + scripts: {}, // Any script that need to be loaded + }, + }, +} +``` + +`FormCodeGenerationError` is a object with the following properties: + +```ts +{ + error: Error; // The error object that was thrown during the form generation +} +``` + +## Build + +In order to build the library you must run the following command in the root folder of the repository: + +```shell script +pnpm -F @kie-tools/jbpm-form-code-generator-themes... build:prod +``` + +--- + +Apache KIE (incubating) is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the name of Apache Incubator. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +Some of the incubating project’s releases may not be fully compliant with ASF +policy. For example, releases may have incomplete or un-reviewed licensing +conditions. What follows is a list of known issues the project is currently +aware of (note that this list, by definition, is likely to be incomplete): + +- Hibernate, an LGPL project, is being used. Hibernate is in the process of + relicensing to ASL v2 +- Some files, particularly test files, and those not supporting comments, may + be missing the ASF Licensing Header + +If you are planning to incorporate this work into your product/project, please +be aware that you will need to conduct a thorough licensing review to determine +the overall implications of including this work. For the current status of this +project through the Apache Incubator visit: +https://incubator.apache.org/projects/kie.html diff --git a/packages/form-generation-tool/bin.js b/packages/jbpm-form-code-generator-themes/env/index.js old mode 100755 new mode 100644 similarity index 79% rename from packages/form-generation-tool/bin.js rename to packages/jbpm-form-code-generator-themes/env/index.js index 1428f160016..61bc742bd66 --- a/packages/form-generation-tool/bin.js +++ b/packages/jbpm-form-code-generator-themes/env/index.js @@ -1,4 +1,3 @@ -#! /usr/bin/env node /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -18,7 +17,11 @@ * under the License. */ -/** - * This file is used as entry point of the form-generation-tool cli command - */ -require("./dist/index"); +const { varsWithName, composeEnv } = require("@kie-tools-scripts/build-env"); + +module.exports = composeEnv([require("@kie-tools/root-env/env")], { + vars: varsWithName({}), + get env() { + return {}; + }, +}); diff --git a/packages/form-generation-tool/src/generation/fs/index.ts b/packages/jbpm-form-code-generator-themes/jest.config.js similarity index 72% rename from packages/form-generation-tool/src/generation/fs/index.ts rename to packages/jbpm-form-code-generator-themes/jest.config.js index cf27275ea6e..e8dc87a086b 100644 --- a/packages/form-generation-tool/src/generation/fs/index.ts +++ b/packages/jbpm-form-code-generator-themes/jest.config.js @@ -17,6 +17,14 @@ * under the License. */ -export { checkKogitoProjectStructure, checkKogitoProjectHasForms } from "./checks"; -export { loadProjectSchemas } from "./loadProjectSchemas"; -export { storeFormAsset } from "./storeFormAsset"; +const { config, jestSetupPath, typescriptTransform } = require("@kie-tools/jest-base/jest.config"); + +/** @type {import('ts-jest').JestConfigWithTsJest} */ +module.exports = { + ...config, + testEnvironment: "jsdom", + setupFilesAfterEnv: [jestSetupPath], + transform: { + ...typescriptTransform, + }, +}; diff --git a/packages/jbpm-form-code-generator-themes/package.json b/packages/jbpm-form-code-generator-themes/package.json new file mode 100644 index 00000000000..e68c35313c7 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/package.json @@ -0,0 +1,52 @@ +{ + "name": "@kie-tools/jbpm-form-code-generator-themes", + "version": "0.0.0", + "description": "", + "license": "Apache-2.0", + "keywords": [], + "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" + }, + "types": "./dist/index.d.ts", + "main": "dist/index.js", + "files": [ + "dist" + ], + "scripts": { + "build:dev": "rimraf dist && tsc -p tsconfig.json", + "build:prod": "rimraf dist && tsc -p tsconfig.json && pnpm lint && pnpm test", + "lint": "run-script-if --bool \"$(build-env linters.run)\" --then \"kie-tools--eslint ./src\"", + "test": "run-script-if --ignore-errors \"$(build-env tests.ignoreFailures)\" --bool \"$(build-env tests.run)\" --then \"jest --silent --verbose --passWithNoTests\"" + }, + "dependencies": { + "@kie-tools/form-code-generator": "workspace:*", + "@kie-tools/form-code-generator-bootstrap4-theme": "workspace:*", + "@kie-tools/form-code-generator-patternfly-theme": "workspace:*", + "lodash": "^4.17.21", + "uniforms": "^3.10.2", + "uniforms-bridge-json-schema": "^3.10.2" + }, + "devDependencies": { + "@kie-tools/eslint": "workspace:*", + "@kie-tools/jest-base": "workspace:*", + "@kie-tools/root-env": "workspace:*", + "@kie-tools/tsconfig": "workspace:*", + "@testing-library/jest-dom": "^6.4.6", + "@types/jest": "^29.5.12", + "@types/jest-when": "^3.5.5", + "@types/lodash": "^4.14.168", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", + "jest-junit": "^16.0.0", + "jest-when": "^3.6.0", + "rimraf": "^3.0.2", + "run-script-os": "^1.1.6", + "ts-jest": "^29.1.5", + "typescript": "^5.5.3" + } +} diff --git a/packages/form-generation-tool/src/generation/tools/uniforms/utils/UniformsSchemaUtils.ts b/packages/jbpm-form-code-generator-themes/src/getUniformsSchema.ts similarity index 88% rename from packages/form-generation-tool/src/generation/tools/uniforms/utils/UniformsSchemaUtils.ts rename to packages/jbpm-form-code-generator-themes/src/getUniformsSchema.ts index e52f0ab188b..7f42bd32bcb 100644 --- a/packages/form-generation-tool/src/generation/tools/uniforms/utils/UniformsSchemaUtils.ts +++ b/packages/jbpm-form-code-generator-themes/src/getUniformsSchema.ts @@ -22,7 +22,12 @@ import get from "lodash/get"; import set from "lodash/set"; import unset from "lodash/unset"; -export const getUniformsSchema = (schema: any): any => { +type Schema = { [x: string]: any }; + +/** + * Removes the `input` and `output` properties and determines if the form field should be disabled + */ +export function getUniformsSchema(schema: Schema) { const schemaClone = cloneDeep(schema); if (schemaClone.properties) { @@ -43,4 +48,4 @@ export const getUniformsSchema = (schema: any): any => { } return schemaClone; -}; +} diff --git a/packages/form-generation-tool/src/generation/tools/uniforms/utils/InputSanitizationUtil.ts b/packages/jbpm-form-code-generator-themes/src/inputSanitizationUtil.ts similarity index 100% rename from packages/form-generation-tool/src/generation/tools/uniforms/utils/InputSanitizationUtil.ts rename to packages/jbpm-form-code-generator-themes/src/inputSanitizationUtil.ts diff --git a/packages/jbpm-form-code-generator-themes/src/jbpmBootstrap4FormCodeGeneratorTheme.ts b/packages/jbpm-form-code-generator-themes/src/jbpmBootstrap4FormCodeGeneratorTheme.ts new file mode 100644 index 00000000000..ad2f0cdbba6 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/src/jbpmBootstrap4FormCodeGeneratorTheme.ts @@ -0,0 +1,68 @@ +/* + * 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 { FormCodeGeneratorTheme, FormAsset } from "@kie-tools/form-code-generator/dist/types"; +import { renderForm } from "@kie-tools/form-code-generator-bootstrap4-theme/dist"; +import { + BOOTSTRAP4_CSS_URL, + BOOTSTRAP4_FILE_EXT, + BOOTSTRAP4_JS_URL, + Bootstrap4FileExt, + JQUERY_URL, +} from "@kie-tools/form-code-generator-bootstrap4-theme/dist/theme"; +import unescape from "lodash/unescape"; +import JSONSchemaBridge from "uniforms-bridge-json-schema"; +import { getUniformsSchema } from "./getUniformsSchema"; +import { inputSanitizationUtil } from "./inputSanitizationUtil"; +import { JbpmFormAssetBase } from "./types"; + +export interface Bootstrap4FormAsset extends FormAsset, JbpmFormAssetBase {} + +export const jbpmBootstrap4FormCodeGeneratorTheme: FormCodeGeneratorTheme = { + generate: (formSchema) => { + const uniformsSchema = getUniformsSchema(formSchema.schema); + const form = renderForm({ + id: formSchema.name, + sanitizedId: inputSanitizationUtil(formSchema.name), + schema: new JSONSchemaBridge(uniformsSchema, () => true), + disabled: false, + placeholder: true, + }); + return { + id: formSchema.name, + sanitizedId: inputSanitizationUtil(formSchema.name), + assetName: `${formSchema.name}.${BOOTSTRAP4_FILE_EXT}`, + sanitizedAssetName: `${inputSanitizationUtil(formSchema.name)}.${BOOTSTRAP4_FILE_EXT}`, + type: BOOTSTRAP4_FILE_EXT, + content: unescape(form), + config: { + schema: JSON.stringify(formSchema.schema), + resources: { + styles: { + "bootstrap.min.css": BOOTSTRAP4_CSS_URL, + }, + scripts: { + "jquery.js": JQUERY_URL, + "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, + }, + }, + }, + }; + }, +}; diff --git a/packages/jbpm-form-code-generator-themes/src/jbpmPatternflyFormCodeGeneratorTheme.ts b/packages/jbpm-form-code-generator-themes/src/jbpmPatternflyFormCodeGeneratorTheme.ts new file mode 100644 index 00000000000..e6002898489 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/src/jbpmPatternflyFormCodeGeneratorTheme.ts @@ -0,0 +1,57 @@ +/* + * 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 { FormAsset, FormCodeGeneratorTheme } from "@kie-tools/form-code-generator/dist/types"; +import { renderForm } from "@kie-tools/form-code-generator-patternfly-theme/dist"; +import { PATTERNFLY_FILE_EXT, PatternflyFileExt } from "@kie-tools/form-code-generator-patternfly-theme/dist/theme"; +import unescape from "lodash/unescape"; +import JSONSchemaBridge from "uniforms-bridge-json-schema"; +import { getUniformsSchema } from "./getUniformsSchema"; +import { inputSanitizationUtil } from "./inputSanitizationUtil"; +import { JbpmFormAssetBase } from "./types"; + +export interface PatternflyFormAsset extends FormAsset, JbpmFormAssetBase {} + +export const jbpmPatternflyFormCodeGeneratorTheme: FormCodeGeneratorTheme = { + generate: (formSchema) => { + const uniformsSchema = getUniformsSchema(formSchema.schema); + const form = renderForm({ + id: formSchema.name, + sanitizedId: inputSanitizationUtil(formSchema.name), + schema: new JSONSchemaBridge(uniformsSchema, () => true), + disabled: false, + placeholder: true, + }); + return { + id: formSchema.name, + sanitizedId: inputSanitizationUtil(formSchema.name), + assetName: `${formSchema.name}.${PATTERNFLY_FILE_EXT}`, + sanitizedAssetName: `${inputSanitizationUtil(formSchema.name)}.${PATTERNFLY_FILE_EXT}`, + type: PATTERNFLY_FILE_EXT, + content: unescape(form), + config: { + schema: JSON.stringify(formSchema.schema), + resources: { + styles: {}, + scripts: {}, + }, + }, + }; + }, +}; diff --git a/packages/form-generation-tool/src/index.ts b/packages/jbpm-form-code-generator-themes/src/types.ts similarity index 89% rename from packages/form-generation-tool/src/index.ts rename to packages/jbpm-form-code-generator-themes/src/types.ts index 1fe8e566468..8560d8fb3bf 100644 --- a/packages/form-generation-tool/src/index.ts +++ b/packages/jbpm-form-code-generator-themes/src/types.ts @@ -17,6 +17,7 @@ * under the License. */ -import * as cli from "./cli"; - -cli.run(); +export interface JbpmFormAssetBase { + sanitizedId: string; + sanitizedAssetName: string; +} diff --git a/packages/form-generation-tool/tests/generation/tools/uniforms/bootstrap4/mock.ts b/packages/jbpm-form-code-generator-themes/tests/__mocks__/bootstrap.ts similarity index 100% rename from packages/form-generation-tool/tests/generation/tools/uniforms/bootstrap4/mock.ts rename to packages/jbpm-form-code-generator-themes/tests/__mocks__/bootstrap.ts diff --git a/packages/form-generation-tool/tests/generation/tools/uniforms/patternfly/mock.ts b/packages/jbpm-form-code-generator-themes/tests/__mocks__/partternfly.ts similarity index 100% rename from packages/form-generation-tool/tests/generation/tools/uniforms/patternfly/mock.ts rename to packages/jbpm-form-code-generator-themes/tests/__mocks__/partternfly.ts diff --git a/packages/jbpm-form-code-generator-themes/tests/getUniformsSchema.test.ts b/packages/jbpm-form-code-generator-themes/tests/getUniformsSchema.test.ts new file mode 100644 index 00000000000..dc7b1e3c270 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/tests/getUniformsSchema.test.ts @@ -0,0 +1,48 @@ +/* + * 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 { getUniformsSchema } from "../dist/getUniformsSchema"; + +describe("getUniformsSchema tests", () => { + it("get empty uniforms schema", () => { + expect(getUniformsSchema({})).toEqual({}); + }); + + it("get uniforms schema with empty properties", () => { + expect(getUniformsSchema({ properties: {} })).toEqual({ properties: {} }); + }); + + it("get uniforms schema with properties that are empty", () => { + expect(getUniformsSchema({ properties: { a: {} } })).toEqual({ properties: { a: {} } }); + }); + + it("get uniforms schema with input property", () => { + expect(getUniformsSchema({ properties: { a: { input: true } } })).toEqual({ + properties: { a: { uniforms: { disabled: true } } }, + }); + }); + + it("get uniforms schema with output property", () => { + expect(getUniformsSchema({ properties: { a: { output: true } } })).toEqual({ properties: { a: {} } }); + }); + + it("get uniforms schema with input and output property", () => { + expect(getUniformsSchema({ properties: { a: { input: true, output: true } } })).toEqual({ properties: { a: {} } }); + }); +}); diff --git a/packages/jbpm-form-code-generator-themes/tests/jbpmBootstrap4FormGeneratorTheme.test.ts b/packages/jbpm-form-code-generator-themes/tests/jbpmBootstrap4FormGeneratorTheme.test.ts new file mode 100644 index 00000000000..f5b556f6d2f --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/tests/jbpmBootstrap4FormGeneratorTheme.test.ts @@ -0,0 +1,117 @@ +/* + * 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 { generateFormCode } from "@kie-tools/form-code-generator/dist/generateFormCode"; +import { + BOOTSTRAP4_CSS_URL, + BOOTSTRAP4_JS_URL, + JQUERY_URL, +} from "@kie-tools/form-code-generator-bootstrap4-theme/dist/theme"; +import { jbpmBootstrap4FormCodeGeneratorTheme } from "../dist/jbpmBootstrap4FormCodeGeneratorTheme"; +import { ApplyForVisaSchema, ConfirmTravelSchema } from "./__mocks__/bootstrap"; + +describe("jbpmBootstrap4FormCodeGeneratorTheme tests", () => { + it("Generate", () => { + const formAsset = jbpmBootstrap4FormCodeGeneratorTheme.generate({ + name: "ApplyFor#Visa", + schema: ApplyForVisaSchema, + }); + + expect(formAsset).not.toBeUndefined(); + expect(formAsset.id).toStrictEqual("ApplyFor#Visa"); + expect(formAsset.sanitizedId).toStrictEqual("ApplyFor_Visa"); + expect(formAsset.assetName).toStrictEqual("ApplyFor#Visa.html"); + expect(formAsset.sanitizedAssetName).toStrictEqual("ApplyFor_Visa.html"); + expect(formAsset.content).not.toBeUndefined(); + expect(formAsset.config).not.toBeUndefined(); + expect(formAsset.config).toMatchObject({ + schema: JSON.stringify(ApplyForVisaSchema), + resources: { + styles: { + "bootstrap.min.css": BOOTSTRAP4_CSS_URL, + }, + scripts: { + "jquery.js": JQUERY_URL, + "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, + }, + }, + }); + }); + + it("generateFormCode - form assets", () => { + const formAssets = generateFormCode({ + formSchemas: [ + { name: "Apply#For#Visa", schema: ApplyForVisaSchema }, + { name: "ConfirmTravel", schema: ConfirmTravelSchema }, + ], + formCodeGeneratorTheme: jbpmBootstrap4FormCodeGeneratorTheme, + }); + + expect(formAssets).toHaveLength(2); + expect(formAssets[0]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "Apply#For#Visa", + sanitizedId: "Apply_For_Visa", + assetName: "Apply#For#Visa.html", + sanitizedAssetName: "Apply_For_Visa.html", + config: { + resources: { + styles: { + "bootstrap.min.css": BOOTSTRAP4_CSS_URL, + }, + scripts: { + "jquery.js": JQUERY_URL, + "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, + }, + }, + schema: JSON.stringify(ApplyForVisaSchema), + }, + type: "html", + }), + formError: undefined, + }) + ); + + expect(formAssets[1]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "ConfirmTravel", + sanitizedId: "ConfirmTravel", + assetName: "ConfirmTravel.html", + sanitizedAssetName: "ConfirmTravel.html", + config: { + resources: { + styles: { + "bootstrap.min.css": BOOTSTRAP4_CSS_URL, + }, + scripts: { + "jquery.js": JQUERY_URL, + "bootstrap.bundle.min.js": BOOTSTRAP4_JS_URL, + }, + }, + schema: JSON.stringify(ConfirmTravelSchema), + }, + type: "html", + }), + formError: undefined, + }) + ); + }); +}); diff --git a/packages/jbpm-form-code-generator-themes/tests/jbpmPatternflyFormGeneratorTheme.test.ts b/packages/jbpm-form-code-generator-themes/tests/jbpmPatternflyFormGeneratorTheme.test.ts new file mode 100644 index 00000000000..371e8827e06 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/tests/jbpmPatternflyFormGeneratorTheme.test.ts @@ -0,0 +1,87 @@ +/* + * 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 { generateFormCode } from "@kie-tools/form-code-generator/dist/generateFormCode"; +import { jbpmPatternflyFormCodeGeneratorTheme } from "../dist/jbpmPatternflyFormCodeGeneratorTheme"; +import { ApplyForVisaSchema, ConfirmTravelSchema } from "./__mocks__/partternfly"; + +describe("jbpmPatternflyFormCodeGeneratorTheme tests", () => { + it("Generate", () => { + const formAsset = jbpmPatternflyFormCodeGeneratorTheme.generate({ + name: "ApplyFor#Visa", + schema: ApplyForVisaSchema, + }); + + expect(formAsset).not.toBeUndefined(); + expect(formAsset.id).toStrictEqual("ApplyFor#Visa"); + expect(formAsset.sanitizedId).toStrictEqual("ApplyFor_Visa"); + expect(formAsset.assetName).toStrictEqual("ApplyFor#Visa.tsx"); + expect(formAsset.sanitizedAssetName).toStrictEqual("ApplyFor_Visa.tsx"); + expect(formAsset.content).not.toBeUndefined(); + expect(formAsset.content).toContain("const Form__ApplyFor_Visa"); + expect(formAsset.content).toContain("export default Form__ApplyFor_Visa;"); + expect(formAsset.config).not.toBeUndefined(); + expect(formAsset.config).toMatchObject({ + schema: JSON.stringify(ApplyForVisaSchema), + resources: { + styles: {}, + scripts: {}, + }, + }); + }); + + it("generateFormCode - form assets", () => { + const formAssets = generateFormCode({ + formSchemas: [ + { name: "Apply#For#Visa", schema: ApplyForVisaSchema }, + { name: "ConfirmTravel", schema: ConfirmTravelSchema }, + ], + formCodeGeneratorTheme: jbpmPatternflyFormCodeGeneratorTheme, + }); + + expect(formAssets).toHaveLength(2); + expect(formAssets[0]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "Apply#For#Visa", + sanitizedId: "Apply_For_Visa", + assetName: "Apply#For#Visa.tsx", + sanitizedAssetName: "Apply_For_Visa.tsx", + config: { resources: { scripts: {}, styles: {} }, schema: JSON.stringify(ApplyForVisaSchema) }, + type: "tsx", + }), + formError: undefined, + }) + ); + + expect(formAssets[1]).toEqual( + expect.objectContaining({ + formAsset: expect.objectContaining({ + id: "ConfirmTravel", + sanitizedId: "ConfirmTravel", + assetName: "ConfirmTravel.tsx", + sanitizedAssetName: "ConfirmTravel.tsx", + config: { resources: { scripts: {}, styles: {} }, schema: JSON.stringify(ConfirmTravelSchema) }, + type: "tsx", + }), + formError: undefined, + }) + ); + }); +}); diff --git a/packages/form-generation-tool/src/cli/index.ts b/packages/jbpm-form-code-generator-themes/tests/jest.setup.ts similarity index 95% rename from packages/form-generation-tool/src/cli/index.ts rename to packages/jbpm-form-code-generator-themes/tests/jest.setup.ts index 900d4290b24..1c413b1660e 100644 --- a/packages/form-generation-tool/src/cli/index.ts +++ b/packages/jbpm-form-code-generator-themes/tests/jest.setup.ts @@ -17,4 +17,4 @@ * under the License. */ -export { run } from "./cli"; +import "@testing-library/jest-dom"; diff --git a/packages/jbpm-form-code-generator-themes/tsconfig.json b/packages/jbpm-form-code-generator-themes/tsconfig.json new file mode 100644 index 00000000000..565feb5d585 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "@kie-tools/tsconfig/tsconfig.cjs.json", + "compilerOptions": { + "esModuleInterop": true, + "jsx": "react-jsx" + } +} diff --git a/packages/jbpm-form-code-generator-themes/tsconfig.tests.json b/packages/jbpm-form-code-generator-themes/tsconfig.tests.json new file mode 100644 index 00000000000..1b2aedc6d23 --- /dev/null +++ b/packages/jbpm-form-code-generator-themes/tsconfig.tests.json @@ -0,0 +1,6 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "types": ["@testing-library/jest-dom"] + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ff06cf04da9..f5e8363631b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4725,47 +4725,77 @@ importers: specifier: ^5.5.3 version: 5.5.3 - packages/form-dmn: - dependencies: - '@kie-tools-core/i18n': - specifier: workspace:* - version: link:../i18n - '@kie-tools-core/notifications': - specifier: workspace:* - version: link:../notifications - '@kie-tools/dmn-runner': + packages/form-code-generator: + devDependencies: + '@kie-tools/eslint': specifier: workspace:* - version: link:../dmn-runner - '@kie-tools/extended-services-api': + version: link:../eslint + '@kie-tools/jest-base': specifier: workspace:* - version: link:../extended-services-api - '@kie-tools/form': + version: link:../jest-base + '@kie-tools/root-env': specifier: workspace:* - version: link:../form - '@kie-tools/i18n-common-dictionary': + version: link:../root-env + '@kie-tools/tsconfig': specifier: workspace:* - version: link:../i18n-common-dictionary - '@kie-tools/uniforms-patternfly': + version: link:../tsconfig + '@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.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + '@types/jest': + specifier: ^29.5.12 + version: 29.5.12 + '@types/jest-when': + specifier: ^3.5.5 + version: 3.5.5 + '@types/lodash': + specifier: ^4.14.168 + version: 4.14.202 + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) + jest-environment-jsdom: + specifier: ^29.7.0 + version: 29.7.0 + jest-junit: + specifier: ^16.0.0 + version: 16.0.0 + jest-when: + specifier: ^3.6.0 + version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + rimraf: + specifier: ^3.0.2 + version: 3.0.2 + run-script-os: + specifier: ^1.1.6 + version: 1.1.6 + ts-jest: + specifier: ^29.1.5 + version: 29.1.5(@babel/core@7.24.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.9))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) + typescript: + specifier: ^5.5.3 + version: 5.5.3 + + packages/form-code-generator-bootstrap4-theme: + dependencies: + '@kie-tools/form-code-generator': specifier: workspace:* - version: link:../uniforms-patternfly - '@patternfly/react-core': - specifier: ^4.276.6 - version: 4.276.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) - '@patternfly/react-icons': - specifier: ^4.93.6 - version: 4.93.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) - deep-object-diff: - specifier: ^1.1.9 - version: 1.1.9 + version: link:../form-code-generator lodash: specifier: ^4.17.21 version: 4.17.21 + prettier: + specifier: ^2.8.8 + version: 2.8.8 react: specifier: '>=17.0.2 <19.0.0' version: 17.0.2 react-dom: specifier: '>=17.0.2 <19.0.0' version: 17.0.2(react@17.0.2) + underscore: + specifier: ^1.13.1 + version: 1.13.1 uniforms: specifier: ^3.10.2 version: 3.10.2(react@17.0.2) @@ -4775,13 +4805,13 @@ importers: devDependencies: '@babel/core': specifier: ^7.16.0 - version: 7.16.12 + version: 7.24.9 '@babel/preset-env': specifier: ^7.16.0 - version: 7.16.11(@babel/core@7.16.12) + version: 7.24.7(@babel/core@7.24.9) '@babel/preset-react': specifier: ^7.16.0 - version: 7.16.0(@babel/core@7.16.12) + version: 7.22.15(@babel/core@7.24.9) '@kie-tools-core/webpack-base': specifier: workspace:* version: link:../webpack-base @@ -4809,21 +4839,27 @@ importers: '@types/jest-when': specifier: ^3.5.5 version: 3.5.5 - '@types/json-schema': - specifier: ^7.0.11 - version: 7.0.15 '@types/lodash': specifier: ^4.14.168 - version: 4.14.169 + version: 4.14.202 + '@types/prettier': + specifier: ^2.7.3 + version: 2.7.3 '@types/react': specifier: ^17.0.6 version: 17.0.21 '@types/react-dom': specifier: ^17.0.5 version: 17.0.8 - copyfiles: - specifier: ^2.4.1 - version: 2.4.1 + '@types/simpl-schema': + specifier: ^1.12.0 + version: 1.12.2 + '@types/underscore': + specifier: ^1.11.2 + version: 1.11.2 + copy-webpack-plugin: + specifier: ^11.0.0 + version: 11.0.0(webpack@5.94.0) jest: specifier: ^29.7.0 version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) @@ -4836,30 +4872,54 @@ importers: jest-when: specifier: ^3.6.0 version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + raw-loader: + specifier: ^4.0.2 + version: 4.0.2(webpack@5.94.0) rimraf: specifier: ^3.0.2 version: 3.0.2 + simpl-schema: + specifier: ^1.12.0 + version: 1.12.0 ts-jest: specifier: ^29.1.5 - version: 29.1.5(@babel/core@7.16.12)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.16.12))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) + version: 29.1.5(@babel/core@7.24.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.9))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) typescript: specifier: ^5.5.3 version: 5.5.3 + uniforms-bridge-simple-schema-2: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) + webpack: + specifier: ^5.94.0 + version: 5.94.0 + webpack-dev-server: + specifier: ^4.15.1 + version: 4.15.1(webpack@5.94.0) + webpack-merge: + specifier: ^5.9.0 + version: 5.10.0 + webpack-node-externals: + specifier: ^3.0.0 + version: 3.0.0 - packages/form-generation-tool: + packages/form-code-generator-patternfly-theme: dependencies: - '@kie-tools/uniforms-bootstrap4-codegen': - specifier: workspace:* - version: link:../uniforms-bootstrap4-codegen - '@kie-tools/uniforms-patternfly-codegen': + '@kie-tools/form-code-generator': specifier: workspace:* - version: link:../uniforms-patternfly-codegen - inquirer: - specifier: ^8.1.1 - version: 8.2.0 + version: link:../form-code-generator lodash: specifier: ^4.17.21 version: 4.17.21 + prettier: + specifier: ^2.8.8 + version: 2.8.8 + react: + specifier: '>=17.0.2 <19.0.0' + version: 17.0.2 + react-dom: + specifier: '>=17.0.2 <19.0.0' + version: 17.0.2(react@17.0.2) uniforms: specifier: ^3.10.2 version: 3.10.2(react@17.0.2) @@ -4869,13 +4929,13 @@ importers: devDependencies: '@babel/core': specifier: ^7.16.0 - version: 7.16.12 + version: 7.24.9 '@babel/preset-env': specifier: ^7.16.0 - version: 7.16.11(@babel/core@7.16.12) + version: 7.24.7(@babel/core@7.24.9) '@babel/preset-react': specifier: ^7.16.0 - version: 7.16.0(@babel/core@7.16.12) + version: 7.22.15(@babel/core@7.24.9) '@kie-tools-core/webpack-base': specifier: workspace:* version: link:../webpack-base @@ -4893,10 +4953,10 @@ importers: version: link:../tsconfig '@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.5.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) - '@types/inquirer': - specifier: ^7.3.2 - version: 7.3.3 + version: 6.4.6(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.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/jest': specifier: ^29.5.12 version: 29.5.12 @@ -4905,10 +4965,25 @@ importers: version: 3.5.5 '@types/lodash': specifier: ^4.14.168 - version: 4.14.169 + version: 4.14.202 + '@types/prettier': + specifier: ^2.7.3 + version: 2.7.3 + '@types/react': + specifier: ^17.0.6 + version: 17.0.21 + '@types/react-dom': + specifier: ^17.0.5 + version: 17.0.8 + '@types/simpl-schema': + specifier: ^1.12.0 + version: 1.12.2 + copy-webpack-plugin: + specifier: ^11.0.0 + version: 11.0.0(webpack@5.94.0(webpack-cli@4.10.0)) jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) + version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) jest-environment-jsdom: specifier: ^29.7.0 version: 29.7.0 @@ -4917,22 +4992,25 @@ importers: version: 16.0.0 jest-when: specifier: ^3.6.0 - version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) - pkg: - specifier: ^5.8.1 - version: 5.8.1(encoding@0.1.13) + version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + raw-loader: + specifier: ^4.0.2 + version: 4.0.2(webpack@5.94.0(webpack-cli@4.10.0)) rimraf: specifier: ^3.0.2 version: 3.0.2 - run-script-os: - specifier: ^1.1.6 - version: 1.1.6 + simpl-schema: + specifier: ^1.12.0 + version: 1.12.0 ts-jest: specifier: ^29.1.5 - version: 29.1.5(@babel/core@7.16.12)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.16.12))(jest@29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) + version: 29.1.5(@babel/core@7.24.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.9))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) typescript: specifier: ^5.5.3 version: 5.5.3 + uniforms-bridge-simple-schema-2: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) webpack: specifier: ^5.94.0 version: 5.94.0(webpack-cli@4.10.0) @@ -4944,11 +5022,132 @@ importers: version: 4.15.1(webpack-cli@4.10.0)(webpack@5.94.0) webpack-merge: specifier: ^5.9.0 - version: 5.9.0 + version: 5.10.0 webpack-node-externals: specifier: ^3.0.0 version: 3.0.0 + packages/form-dmn: + dependencies: + '@kie-tools-core/i18n': + specifier: workspace:* + version: link:../i18n + '@kie-tools-core/notifications': + specifier: workspace:* + version: link:../notifications + '@kie-tools/dmn-runner': + specifier: workspace:* + version: link:../dmn-runner + '@kie-tools/extended-services-api': + specifier: workspace:* + version: link:../extended-services-api + '@kie-tools/form': + specifier: workspace:* + version: link:../form + '@kie-tools/i18n-common-dictionary': + specifier: workspace:* + version: link:../i18n-common-dictionary + '@kie-tools/uniforms-patternfly': + specifier: workspace:* + version: link:../uniforms-patternfly + '@patternfly/react-core': + specifier: ^4.276.6 + version: 4.276.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) + '@patternfly/react-icons': + specifier: ^4.93.6 + version: 4.93.6(react-dom@17.0.2(react@17.0.2))(react@17.0.2) + deep-object-diff: + specifier: ^1.1.9 + version: 1.1.9 + lodash: + specifier: ^4.17.21 + version: 4.17.21 + react: + specifier: '>=17.0.2 <19.0.0' + version: 17.0.2 + react-dom: + specifier: '>=17.0.2 <19.0.0' + version: 17.0.2(react@17.0.2) + uniforms: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) + uniforms-bridge-json-schema: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) + devDependencies: + '@babel/core': + specifier: ^7.16.0 + version: 7.16.12 + '@babel/preset-env': + specifier: ^7.16.0 + version: 7.16.11(@babel/core@7.16.12) + '@babel/preset-react': + specifier: ^7.16.0 + version: 7.16.0(@babel/core@7.16.12) + '@kie-tools-core/webpack-base': + specifier: workspace:* + version: link:../webpack-base + '@kie-tools/eslint': + specifier: workspace:* + version: link:../eslint + '@kie-tools/jest-base': + specifier: workspace:* + version: link:../jest-base + '@kie-tools/root-env': + specifier: workspace:* + version: link:../root-env + '@kie-tools/tsconfig': + specifier: workspace:* + version: link:../tsconfig + '@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.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.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/jest': + specifier: ^29.5.12 + version: 29.5.12 + '@types/jest-when': + specifier: ^3.5.5 + version: 3.5.5 + '@types/json-schema': + specifier: ^7.0.11 + version: 7.0.15 + '@types/lodash': + specifier: ^4.14.168 + version: 4.14.169 + '@types/react': + specifier: ^17.0.6 + version: 17.0.21 + '@types/react-dom': + specifier: ^17.0.5 + version: 17.0.8 + copyfiles: + specifier: ^2.4.1 + version: 2.4.1 + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) + jest-environment-jsdom: + specifier: ^29.7.0 + version: 29.7.0 + jest-junit: + specifier: ^16.0.0 + version: 16.0.0 + jest-when: + specifier: ^3.6.0 + version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + rimraf: + specifier: ^3.0.2 + version: 3.0.2 + ts-jest: + specifier: ^29.1.5 + version: 29.1.5(@babel/core@7.16.12)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.16.12))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) + typescript: + specifier: ^5.5.3 + version: 5.5.3 + packages/i18n: dependencies: react: @@ -5245,6 +5444,76 @@ importers: specifier: ^5.9.0 version: 5.9.0 + packages/jbpm-form-code-generator-themes: + dependencies: + '@kie-tools/form-code-generator': + specifier: workspace:* + version: link:../form-code-generator + '@kie-tools/form-code-generator-bootstrap4-theme': + specifier: workspace:* + version: link:../form-code-generator-bootstrap4-theme + '@kie-tools/form-code-generator-patternfly-theme': + specifier: workspace:* + version: link:../form-code-generator-patternfly-theme + lodash: + specifier: ^4.17.21 + version: 4.17.21 + uniforms: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) + uniforms-bridge-json-schema: + specifier: ^3.10.2 + version: 3.10.2(react@17.0.2) + devDependencies: + '@kie-tools/eslint': + specifier: workspace:* + version: link:../eslint + '@kie-tools/jest-base': + specifier: workspace:* + version: link:../jest-base + '@kie-tools/root-env': + specifier: workspace:* + version: link:../root-env + '@kie-tools/tsconfig': + specifier: workspace:* + version: link:../tsconfig + '@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.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + '@types/jest': + specifier: ^29.5.12 + version: 29.5.12 + '@types/jest-when': + specifier: ^3.5.5 + version: 3.5.5 + '@types/lodash': + specifier: ^4.14.168 + version: 4.14.202 + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) + jest-environment-jsdom: + specifier: ^29.7.0 + version: 29.7.0 + jest-junit: + specifier: ^16.0.0 + version: 16.0.0 + jest-when: + specifier: ^3.6.0 + version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) + rimraf: + specifier: ^3.0.2 + version: 3.0.2 + run-script-os: + specifier: ^1.1.6 + version: 1.1.6 + ts-jest: + specifier: ^29.1.5 + version: 29.1.5(@babel/core@7.24.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.9))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) + typescript: + specifier: ^5.5.3 + version: 5.5.3 + packages/jbpm-quarkus-devui: dependencies: '@kie-tools/maven-base': @@ -11817,127 +12086,6 @@ importers: packages/tsconfig: {} - packages/uniforms-bootstrap4-codegen: - dependencies: - lodash: - specifier: ^4.17.21 - version: 4.17.21 - prettier: - specifier: ^2.8.8 - version: 2.8.8 - react: - specifier: '>=17.0.2 <19.0.0' - version: 17.0.2 - react-dom: - specifier: '>=17.0.2 <19.0.0' - version: 17.0.2(react@17.0.2) - underscore: - specifier: ^1.13.1 - version: 1.13.1 - uniforms: - specifier: ^3.10.2 - version: 3.10.2(react@17.0.2) - uniforms-bridge-simple-schema-2: - specifier: ^3.10.2 - version: 3.10.2(react@17.0.2) - devDependencies: - '@babel/core': - specifier: ^7.16.0 - version: 7.16.12 - '@babel/preset-env': - specifier: ^7.16.0 - version: 7.16.11(@babel/core@7.16.12) - '@babel/preset-react': - specifier: ^7.16.0 - version: 7.16.0(@babel/core@7.16.12) - '@kie-tools-core/webpack-base': - specifier: workspace:* - version: link:../webpack-base - '@kie-tools/eslint': - specifier: workspace:* - version: link:../eslint - '@kie-tools/jest-base': - specifier: workspace:* - version: link:../jest-base - '@kie-tools/root-env': - specifier: workspace:* - version: link:../root-env - '@kie-tools/tsconfig': - specifier: workspace:* - version: link:../tsconfig - '@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.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.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/jest': - specifier: ^29.5.12 - version: 29.5.12 - '@types/jest-when': - specifier: ^3.5.5 - version: 3.5.5 - '@types/lodash': - specifier: ^4.14.168 - version: 4.14.169 - '@types/prettier': - specifier: ^2.7.3 - version: 2.7.3 - '@types/react': - specifier: ^17.0.6 - version: 17.0.21 - '@types/react-dom': - specifier: ^17.0.5 - version: 17.0.8 - '@types/simpl-schema': - specifier: ^1.12.0 - version: 1.12.0 - '@types/underscore': - specifier: ^1.11.2 - version: 1.11.2 - copy-webpack-plugin: - specifier: ^11.0.0 - version: 11.0.0(webpack@5.94.0) - jest: - specifier: ^29.7.0 - version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) - jest-environment-jsdom: - specifier: ^29.7.0 - version: 29.7.0 - jest-junit: - specifier: ^16.0.0 - version: 16.0.0 - jest-when: - specifier: ^3.6.0 - version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) - raw-loader: - specifier: ^4.0.2 - version: 4.0.2(webpack@5.94.0) - rimraf: - specifier: ^3.0.2 - version: 3.0.2 - simpl-schema: - specifier: ^1.12.0 - version: 1.12.0 - ts-jest: - specifier: ^29.1.5 - version: 29.1.5(@babel/core@7.16.12)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.16.12))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) - typescript: - specifier: ^5.5.3 - version: 5.5.3 - webpack: - specifier: ^5.94.0 - version: 5.94.0 - webpack-dev-server: - specifier: ^4.15.1 - version: 4.15.1(webpack@5.94.0) - webpack-merge: - specifier: ^5.9.0 - version: 5.9.0 - webpack-node-externals: - specifier: ^3.0.0 - version: 3.0.0 - packages/uniforms-patternfly: dependencies: '@types/invariant': @@ -12047,124 +12195,6 @@ importers: specifier: ^5.9.0 version: 5.9.0 - packages/uniforms-patternfly-codegen: - dependencies: - lodash: - specifier: ^4.17.21 - version: 4.17.21 - prettier: - specifier: ^2.8.8 - version: 2.8.8 - react: - specifier: '>=17.0.2 <19.0.0' - version: 17.0.2 - react-dom: - specifier: '>=17.0.2 <19.0.0' - version: 17.0.2(react@17.0.2) - uniforms: - specifier: ^3.10.2 - version: 3.10.2(react@17.0.2) - uniforms-bridge-simple-schema-2: - specifier: ^3.10.2 - version: 3.10.2(react@17.0.2) - devDependencies: - '@babel/core': - specifier: ^7.16.0 - version: 7.16.12 - '@babel/preset-env': - specifier: ^7.16.0 - version: 7.16.11(@babel/core@7.16.12) - '@babel/preset-react': - specifier: ^7.16.0 - version: 7.16.0(@babel/core@7.16.12) - '@kie-tools-core/webpack-base': - specifier: workspace:* - version: link:../webpack-base - '@kie-tools/eslint': - specifier: workspace:* - version: link:../eslint - '@kie-tools/jest-base': - specifier: workspace:* - version: link:../jest-base - '@kie-tools/root-env': - specifier: workspace:* - version: link:../root-env - '@kie-tools/tsconfig': - specifier: workspace:* - version: link:../tsconfig - '@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.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.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/jest': - specifier: ^29.5.12 - version: 29.5.12 - '@types/jest-when': - specifier: ^3.5.5 - version: 3.5.5 - '@types/lodash': - specifier: ^4.14.168 - version: 4.14.169 - '@types/prettier': - specifier: ^2.7.3 - version: 2.7.3 - '@types/react': - specifier: ^17.0.6 - version: 17.0.21 - '@types/react-dom': - specifier: ^17.0.5 - version: 17.0.8 - '@types/simpl-schema': - specifier: ^1.12.0 - version: 1.12.0 - copy-webpack-plugin: - specifier: ^11.0.0 - version: 11.0.0(webpack@5.94.0(webpack-cli@4.10.0)) - jest: - specifier: ^29.7.0 - version: 29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)) - jest-environment-jsdom: - specifier: ^29.7.0 - version: 29.7.0 - jest-junit: - specifier: ^16.0.0 - version: 16.0.0 - jest-when: - specifier: ^3.6.0 - version: 3.6.0(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3))) - raw-loader: - specifier: ^4.0.2 - version: 4.0.2(webpack@5.94.0(webpack-cli@4.10.0)) - rimraf: - specifier: ^3.0.2 - version: 3.0.2 - simpl-schema: - specifier: ^1.12.0 - version: 1.12.0 - ts-jest: - specifier: ^29.1.5 - version: 29.1.5(@babel/core@7.16.12)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.16.12))(jest@29.7.0(@types/node@22.5.2)(node-notifier@8.0.2)(ts-node@10.9.2(@types/node@22.5.2)(typescript@5.5.3)))(typescript@5.5.3) - typescript: - specifier: ^5.5.3 - version: 5.5.3 - webpack: - specifier: ^5.94.0 - version: 5.94.0(webpack-cli@4.10.0) - webpack-cli: - specifier: ^4.10.0 - version: 4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0) - webpack-dev-server: - specifier: ^4.15.1 - version: 4.15.1(webpack-cli@4.10.0)(webpack@5.94.0) - webpack-merge: - specifier: ^5.9.0 - version: 5.9.0 - webpack-node-externals: - specifier: ^3.0.0 - version: 3.0.0 - packages/unitables: dependencies: '@kie-tools-core/i18n': @@ -30990,13 +31020,13 @@ snapshots: '@ardatan/relay-compiler@12.0.0(encoding@0.1.13)(graphql@14.3.1)': dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/generator': 7.23.6 '@babel/parser': 7.23.9 '@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-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) @@ -31442,19 +31472,6 @@ snapshots: '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.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-class-features-plugin@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -31537,13 +31554,6 @@ snapshots: regexpu-core: 5.3.2 semver: 6.3.1 - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-annotate-as-pure': 7.24.7 - regexpu-core: 5.3.2 - semver: 6.3.1 - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -31627,17 +31637,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - debug: 4.3.6 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -31792,16 +31791,6 @@ snapshots: '@babel/helper-split-export-declaration': 7.22.6 '@babel/helper-validator-identifier': 7.22.20 - '@babel/helper-module-transforms@7.25.2(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -31875,15 +31864,6 @@ snapshots: '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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-remap-async-to-generator@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -31937,15 +31917,6 @@ snapshots: '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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-replace-supers@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32114,14 +32085,6 @@ snapshots: dependencies: '@babel/types': 7.25.2 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32168,11 +32131,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32225,15 +32183,6 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.9) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32264,14 +32213,6 @@ snapshots: '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -32328,12 +32269,6 @@ 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)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 @@ -32502,14 +32437,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: @@ -32905,11 +32840,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-import-attributes@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-attributes@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33326,11 +33256,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33365,16 +33290,6 @@ snapshots: '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.9) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9) - '@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33437,15 +33352,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.9) - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33494,11 +33400,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33539,11 +33440,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33572,14 +33468,6 @@ snapshots: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33617,15 +33505,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33718,18 +33597,6 @@ snapshots: '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 - '@babel/plugin-transform-classes@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - '@babel/traverse': 7.25.3 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-classes@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33788,12 +33655,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/template': 7.23.9 - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.25.0 - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33836,11 +33697,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33905,12 +33761,6 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33953,11 +33803,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -33986,12 +33831,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34040,14 +33879,6 @@ snapshots: '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34082,12 +33913,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34162,14 +33987,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34228,15 +34045,6 @@ snapshots: '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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-function-name@7.25.1(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34273,12 +34081,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34321,11 +34123,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34354,12 +34151,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34402,11 +34193,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34455,14 +34241,6 @@ snapshots: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34544,15 +34322,6 @@ snapshots: '@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.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34621,16 +34390,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 - '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.23.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-systemjs@7.25.0(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34687,14 +34446,6 @@ snapshots: '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34739,12 +34490,6 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34787,11 +34532,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34820,12 +34560,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34856,12 +34590,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34901,14 +34629,6 @@ snapshots: '@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-transform-object-rest-spread@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -34961,14 +34681,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.9) - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35003,12 +34715,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35042,15 +34748,6 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.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.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35114,11 +34811,6 @@ snapshots: '@babel/core': 7.24.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35147,14 +34839,6 @@ snapshots: '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35195,16 +34879,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.25.0(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.9) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35255,11 +34929,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35270,9 +34939,9 @@ snapshots: '@babel/core': 7.24.9 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-constant-elements@7.17.12(@babel/core@7.23.9)': + '@babel/plugin-transform-react-constant-elements@7.17.12(@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-transform-react-display-name@7.16.0(@babel/core@7.16.12)': @@ -35310,6 +34979,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 @@ -35345,6 +35019,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 @@ -35459,6 +35138,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 @@ -35493,12 +35178,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 regenerator-transform: 0.15.2 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - regenerator-transform: 0.15.2 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35541,11 +35220,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35598,11 +35272,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35649,14 +35318,6 @@ snapshots: '@babel/helper-plugin-utils': 7.22.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35703,11 +35364,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35748,11 +35404,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35793,11 +35444,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35878,11 +35524,6 @@ snapshots: '@babel/core': 7.23.9 '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35911,12 +35552,6 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -35965,12 +35600,6 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -36001,12 +35630,6 @@ snapshots: '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.9) '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.23.9) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/core': 7.24.7 @@ -36518,93 +36141,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-env@7.24.7(@babel/core@7.23.9)': - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/core': 7.23.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.23.9) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.9) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.9) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.9) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-async-generator-functions': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.23.9) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.23.9) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.23.9) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.9) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.23.9) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.23.9) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.23.9) - core-js-compat: 3.37.1 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/preset-env@7.24.7(@babel/core@7.24.7)': dependencies: '@babel/compat-data': 7.25.2 @@ -36939,6 +36475,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 @@ -36984,15 +36530,6 @@ snapshots: '@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.23.9)': - dependencies: - '@babel/core': 7.23.9 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.6 - source-map-support: 0.5.21 - '@babel/register@7.22.15(@babel/core@7.24.9)': dependencies: '@babel/core': 7.24.9 @@ -38483,7 +38020,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.25 babel-plugin-istanbul: 6.1.1 @@ -40867,7 +40404,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 @@ -40887,7 +40424,7 @@ 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.94.0(@swc/core@1.3.92)(esbuild@0.18.20)) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@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 @@ -40927,7 +40464,7 @@ snapshots: '@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.94.0))': 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 @@ -40947,7 +40484,7 @@ 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.94.0(@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.94.0(@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 @@ -40987,7 +40524,7 @@ snapshots: '@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.94.0))': 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) @@ -40999,7 +40536,7 @@ 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.94.0(@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.94.0(@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 @@ -41037,7 +40574,7 @@ snapshots: '@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.94.0))': 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) @@ -41049,7 +40586,7 @@ 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.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0))) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0))) browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.2.3 @@ -41087,7 +40624,7 @@ snapshots: '@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.94.0))': 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) @@ -41099,7 +40636,7 @@ 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.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0))) + babel-loader: 9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0))) browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.2.3 @@ -41202,61 +40739,61 @@ snapshots: - supports-color - utf-8-validate - '@storybook/cli@7.4.6(encoding@0.1.13)': + '@storybook/cli@7.4.6(encoding@0.1.13)': + dependencies: + '@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 + '@storybook/core-common': 7.4.6(encoding@0.1.13) + '@storybook/core-events': 7.4.6 + '@storybook/core-server': 7.4.6(encoding@0.1.13) + '@storybook/csf-tools': 7.4.6 + '@storybook/node-logger': 7.4.6 + '@storybook/telemetry': 7.4.6(encoding@0.1.13) + '@storybook/types': 7.4.6 + '@types/semver': 7.5.2 + '@yarnpkg/fslib': 2.10.3 + '@yarnpkg/libzip': 2.3.0 + chalk: 4.1.2 + commander: 6.2.1 + cross-spawn: 7.0.3 + detect-indent: 6.1.0 + envinfo: 7.8.1 + execa: 5.1.1 + express: 4.21.0 + find-up: 5.0.0 + fs-extra: 11.1.1 + get-npm-tarball-url: 2.0.3 + get-port: 5.1.1 + giget: 1.1.3 + globby: 11.1.0 + 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 + prompts: 2.4.2 + puppeteer-core: 2.1.1 + read-pkg-up: 7.0.1 + semver: 7.5.4 + simple-update-notifier: 2.0.0 + strip-json-comments: 3.1.1 + tempy: 1.0.1 + ts-dedent: 2.2.0 + util-deprecate: 1.0.2 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@storybook/cli@7.6.13(encoding@0.1.13)': dependencies: '@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 - '@storybook/core-common': 7.4.6(encoding@0.1.13) - '@storybook/core-events': 7.4.6 - '@storybook/core-server': 7.4.6(encoding@0.1.13) - '@storybook/csf-tools': 7.4.6 - '@storybook/node-logger': 7.4.6 - '@storybook/telemetry': 7.4.6(encoding@0.1.13) - '@storybook/types': 7.4.6 - '@types/semver': 7.5.2 - '@yarnpkg/fslib': 2.10.3 - '@yarnpkg/libzip': 2.3.0 - chalk: 4.1.2 - commander: 6.2.1 - cross-spawn: 7.0.3 - detect-indent: 6.1.0 - envinfo: 7.8.1 - execa: 5.1.1 - express: 4.21.0 - find-up: 5.0.0 - fs-extra: 11.1.1 - get-npm-tarball-url: 2.0.3 - get-port: 5.1.1 - giget: 1.1.3 - globby: 11.1.0 - 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 - prompts: 2.4.2 - puppeteer-core: 2.1.1 - read-pkg-up: 7.0.1 - semver: 7.5.4 - simple-update-notifier: 2.0.0 - strip-json-comments: 3.1.1 - tempy: 1.0.1 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - - '@storybook/cli@7.6.13(encoding@0.1.13)': - dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.24.7(@babel/core@7.23.9) - '@babel/types': 7.23.9 - '@ndelangen/get-tarball': 3.0.9 '@storybook/codemod': 7.6.13 '@storybook/core-common': 7.6.13(encoding@0.1.13) '@storybook/core-events': 7.6.13 @@ -41281,7 +40818,7 @@ snapshots: get-port: 5.1.1 giget: 1.1.3 globby: 11.1.0 - jscodeshift: 0.15.1(@babel/preset-env@7.24.7(@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 @@ -41314,8 +40851,8 @@ snapshots: '@storybook/codemod@7.4.6': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.24.7(@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 '@storybook/csf': 0.1.2 '@storybook/csf-tools': 7.4.6 @@ -41324,7 +40861,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.24.7(@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 @@ -41333,8 +40870,8 @@ snapshots: '@storybook/codemod@7.6.13': dependencies: - '@babel/core': 7.23.9 - '@babel/preset-env': 7.24.7(@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 '@storybook/csf': 0.1.2 '@storybook/csf-tools': 7.6.13 @@ -41343,7 +40880,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.24.7(@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 @@ -42405,49 +41942,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: @@ -42464,8 +42001,8 @@ snapshots: '@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 @@ -42481,11 +42018,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) @@ -44689,10 +44226,6 @@ snapshots: tunnel: 0.0.6 typed-rest-client: 1.8.4 - babel-core@7.0.0-bridge.0(@babel/core@7.23.9): - dependencies: - '@babel/core': 7.23.9 - babel-core@7.0.0-bridge.0(@babel/core@7.24.9): dependencies: '@babel/core': 7.24.9 @@ -44779,6 +44312,7 @@ snapshots: slash: 3.0.0 transitivePeerDependencies: - supports-color + optional: true babel-jest@29.7.0(@babel/core@7.24.9): dependencies: @@ -44792,7 +44326,6 @@ snapshots: slash: 3.0.0 transitivePeerDependencies: - supports-color - optional: true babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(@swc/core@1.3.92)(esbuild@0.18.20)(webpack-cli@4.10.0)): dependencies: @@ -44801,47 +44334,54 @@ snapshots: schema-utils: 4.2.0 webpack: 5.94.0(@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.94.0(@swc/core@1.3.92)(esbuild@0.18.20)): + babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(esbuild@0.18.20)): dependencies: '@babel/core': 7.23.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.3.92)(esbuild@0.18.20) + webpack: 5.94.0(esbuild@0.18.20) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0))): + babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(webpack-cli@4.10.0)): dependencies: '@babel/core': 7.23.9 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0)) + webpack: 5.94.0(webpack-cli@4.10.0) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0))): + 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.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0)) + webpack: 5.92.1(esbuild@0.21.5) - babel-loader@9.1.3(@babel/core@7.23.9)(webpack@5.94.0(esbuild@0.18.20)): + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@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.94.0(esbuild@0.18.20) + webpack: 5.94.0(@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.94.0(webpack-cli@4.10.0)): + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@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.94.0(webpack-cli@4.10.0) + webpack: 5.94.0(@swc/core@1.3.92)(esbuild@0.18.20) - 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.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0))): 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.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2)(webpack-dev-server@4.15.1)(webpack@5.94.0)) + + babel-loader@9.1.3(@babel/core@7.24.9)(webpack@5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0))): + dependencies: + '@babel/core': 7.24.9 + find-cache-dir: 4.0.0 + schema-utils: 4.2.0 + webpack: 5.94.0(@swc/core@1.3.92)(webpack-cli@4.10.0(webpack-dev-server@4.15.1)(webpack@5.94.0)) babel-plugin-add-react-displayname@0.0.5: {} @@ -44920,15 +44460,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.23.9): - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.23.9) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.24.7): dependencies: '@babel/compat-data': 7.25.2 @@ -44974,14 +44505,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.23.9): - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.23.9) - core-js-compat: 3.37.1 - transitivePeerDependencies: - - supports-color - babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.7): dependencies: '@babel/core': 7.24.7 @@ -45088,13 +44611,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.23.9): - dependencies: - '@babel/core': 7.23.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.23.9) - transitivePeerDependencies: - - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.24.7): dependencies: '@babel/core': 7.24.7 @@ -45217,6 +44733,7 @@ snapshots: '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9) '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.9) + optional: true babel-preset-current-node-syntax@1.0.1(@babel/core@7.24.9): dependencies: @@ -45233,37 +44750,36 @@ 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.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.23.9) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-destructuring': 7.24.8(@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.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.23.9) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.23.9) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-property-literals': 7.24.7(@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.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-template-literals': 7.24.7(@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 @@ -45306,13 +44822,13 @@ snapshots: '@babel/core': 7.23.9 babel-plugin-jest-hoist: 29.6.3 babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.9) + optional: true babel-preset-jest@29.6.3(@babel/core@7.24.9): dependencies: '@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: {} @@ -50402,7 +49918,7 @@ snapshots: istanbul-lib-instrument@5.1.0: dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/parser': 7.23.9 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 @@ -50412,7 +49928,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 @@ -50648,10 +50164,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 @@ -50679,10 +50195,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@swc/core@1.3.92)(@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 @@ -50710,10 +50226,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.5.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 @@ -50741,10 +50257,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 @@ -50772,10 +50288,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@types/node@22.5.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 @@ -50803,10 +50319,10 @@ snapshots: jest-config@29.7.0(@types/node@20.14.2)(ts-node@10.9.2(@types/node@22.5.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 @@ -50834,10 +50350,10 @@ snapshots: jest-config@29.7.0(@types/node@22.5.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 @@ -50865,10 +50381,10 @@ snapshots: jest-config@29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@swc/core@1.3.92)(@types/node@22.5.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 @@ -50896,10 +50412,10 @@ snapshots: jest-config@29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@types/node@22.5.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 @@ -50927,10 +50443,10 @@ snapshots: jest-config@29.7.0(@types/node@22.5.2)(ts-node@10.9.2(@types/node@22.5.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 @@ -51166,15 +50682,15 @@ snapshots: jest-snapshot@29.7.0: dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.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/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.23.9 '@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 @@ -51403,7 +50919,7 @@ snapshots: jsbn@1.1.0: {} - jscodeshift@0.14.0(@babel/preset-env@7.24.7(@babel/core@7.23.9)): + jscodeshift@0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)): dependencies: '@babel/core': 7.24.9 '@babel/parser': 7.25.3 @@ -51411,7 +50927,7 @@ snapshots: '@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.23.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) @@ -51428,15 +50944,15 @@ snapshots: transitivePeerDependencies: - supports-color - jscodeshift@0.14.0(@babel/preset-env@7.24.7(@babel/core@7.24.9)): + jscodeshift@0.15.1(@babel/preset-env@7.24.7(@babel/core@7.24.9)): dependencies: '@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/parser': 7.23.9 + '@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/preset-env': 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-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) @@ -51444,31 +50960,6 @@ snapshots: chalk: 4.1.2 flow-parser: 0.218.0 graceful-fs: 4.2.11 - micromatch: 4.0.8 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.21.5 - temp: 0.8.4 - write-file-atomic: 2.4.3 - transitivePeerDependencies: - - supports-color - - jscodeshift@0.15.1(@babel/preset-env@7.24.7(@babel/core@7.23.9)): - dependencies: - '@babel/core': 7.23.9 - '@babel/parser': 7.23.9 - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.23.9) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.23.9) - '@babel/plugin-transform-private-methods': 7.24.7(@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) - chalk: 4.1.2 - flow-parser: 0.218.0 - graceful-fs: 4.2.11 micromatch: 4.0.5 neo-async: 2.6.2 node-dir: 0.1.17 @@ -51476,7 +50967,7 @@ snapshots: temp: 0.8.4 write-file-atomic: 2.4.3 optionalDependencies: - '@babel/preset-env': 7.24.7(@babel/core@7.23.9) + '@babel/preset-env': 7.24.7(@babel/core@7.24.9) transitivePeerDependencies: - supports-color @@ -54442,7 +53933,7 @@ snapshots: react-docgen@5.4.3: dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/generator': 7.23.6 '@babel/runtime': 7.23.6 ast-types: 0.14.2 @@ -54457,7 +53948,7 @@ snapshots: react-docgen@7.0.3: dependencies: - '@babel/core': 7.23.9 + '@babel/core': 7.24.9 '@babel/traverse': 7.23.9 '@babel/types': 7.23.9 '@types/babel__core': 7.20.5 diff --git a/repo/graph.dot b/repo/graph.dot index 9f5337da9e1..b1764e6f947 100644 --- a/repo/graph.dot +++ b/repo/graph.dot @@ -119,12 +119,13 @@ digraph G { "extended-services-vscode-extension" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools-core/monaco-editor" [ color = "purple", fontcolor = "purple", style = "rounded" ]; "@kie-tools/form" [ color = "blue", fontcolor = "blue", style = "rounded" ]; - "@kie-tools/form-generation-tool" [ color = "blue", fontcolor = "blue", style = "rounded" ]; - "@kie-tools/uniforms-bootstrap4-codegen" [ color = "blue", fontcolor = "blue", style = "rounded" ]; - "@kie-tools/uniforms-patternfly-codegen" [ color = "blue", fontcolor = "blue", style = "rounded" ]; + "@kie-tools/form-code-generator" [ color = "blue", fontcolor = "blue", style = "rounded" ]; + "@kie-tools/form-code-generator-bootstrap4-theme" [ color = "blue", fontcolor = "blue", style = "rounded" ]; + "@kie-tools/form-code-generator-patternfly-theme" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools-core/i18n" [ color = "purple", fontcolor = "purple", style = "rounded" ]; "@kie-tools/import-java-classes-component" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools-core/vscode-java-code-completion" [ color = "purple", fontcolor = "purple", style = "rounded" ]; + "@kie-tools/jbpm-form-code-generator-themes" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/runtime-tools-process-dev-ui-webapp" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/jobs-service-webapp" [ color = "blue", fontcolor = "blue", style = "rounded" ]; "@kie-tools/yaml-language-server" [ color = "blue", fontcolor = "blue", style = "rounded" ]; @@ -386,9 +387,14 @@ digraph G { "@kie-tools/form" -> "@kie-tools/dmn-runner" [ style = "solid", color = "blue" ]; "@kie-tools/form" -> "@kie-tools/i18n-common-dictionary" [ style = "solid", color = "blue" ]; "@kie-tools/form" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; + "@kie-tools/form-code-generator" -> "@kie-tools/eslint" [ style = "dashed", color = "blue" ]; + "@kie-tools/form-code-generator" -> "@kie-tools/jest-base" [ style = "dashed", color = "blue" ]; + "@kie-tools/form-code-generator" -> "@kie-tools/tsconfig" [ style = "dashed", color = "blue" ]; + "@kie-tools/form-code-generator-bootstrap4-theme" -> "@kie-tools/form-code-generator" [ style = "solid", color = "blue" ]; + "@kie-tools/form-code-generator-bootstrap4-theme" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; + "@kie-tools/form-code-generator-patternfly-theme" -> "@kie-tools/form-code-generator" [ style = "solid", color = "blue" ]; + "@kie-tools/form-code-generator-patternfly-theme" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; "@kie-tools/form-dmn" -> "@kie-tools/form" [ style = "solid", color = "blue" ]; - "@kie-tools/form-generation-tool" -> "@kie-tools/uniforms-bootstrap4-codegen" [ style = "solid", color = "blue" ]; - "@kie-tools/form-generation-tool" -> "@kie-tools/uniforms-patternfly-codegen" [ style = "solid", color = "blue" ]; "@kie-tools-core/i18n" -> "@kie-tools/eslint" [ style = "dashed", color = "purple" ]; "@kie-tools-core/i18n" -> "@kie-tools/jest-base" [ style = "dashed", color = "purple" ]; "@kie-tools-core/i18n" -> "@kie-tools/tsconfig" [ style = "dashed", color = "purple" ]; @@ -402,6 +408,8 @@ digraph G { "@kie-tools/import-java-classes-component" -> "@kie-tools-core/monaco-editor" [ style = "dashed", color = "blue" ]; "@kie-tools/import-java-classes-component" -> "@kie-tools-core/patternfly-base" [ style = "dashed", color = "blue" ]; "@kie-tools/import-java-classes-component" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; + "@kie-tools/jbpm-form-code-generator-themes" -> "@kie-tools/form-code-generator-bootstrap4-theme" [ style = "solid", color = "blue" ]; + "@kie-tools/jbpm-form-code-generator-themes" -> "@kie-tools/form-code-generator-patternfly-theme" [ style = "solid", color = "blue" ]; "@kie-tools/jbpm-quarkus-devui" -> "@kie-tools/maven-base" [ style = "solid", color = "black" ]; "@kie-tools/jbpm-quarkus-devui" -> "@kie-tools/runtime-tools-process-dev-ui-webapp" [ style = "dashed", color = "black" ]; "@kie-tools/jest-base" -> "@kie-tools/root-env" [ style = "dashed", color = "blue" ]; @@ -616,17 +624,9 @@ digraph G { "@kie-tools-core/switch-expression-ts" -> "@kie-tools/jest-base" [ style = "dashed", color = "purple" ]; "@kie-tools-core/switch-expression-ts" -> "@kie-tools/tsconfig" [ style = "dashed", color = "purple" ]; "@kie-tools/text-editor" -> "@kie-tools-core/editor" [ style = "solid", color = "blue" ]; - "@kie-tools/uniforms-bootstrap4-codegen" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-bootstrap4-codegen" -> "@kie-tools/eslint" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-bootstrap4-codegen" -> "@kie-tools/jest-base" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-bootstrap4-codegen" -> "@kie-tools/tsconfig" [ style = "dashed", color = "blue" ]; "@kie-tools/uniforms-patternfly" -> "@kie-tools/eslint" [ style = "dashed", color = "blue" ]; "@kie-tools/uniforms-patternfly" -> "@kie-tools/jest-base" [ style = "dashed", color = "blue" ]; "@kie-tools/uniforms-patternfly" -> "@kie-tools/tsconfig" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-patternfly-codegen" -> "@kie-tools-core/webpack-base" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-patternfly-codegen" -> "@kie-tools/eslint" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-patternfly-codegen" -> "@kie-tools/jest-base" [ style = "dashed", color = "blue" ]; - "@kie-tools/uniforms-patternfly-codegen" -> "@kie-tools/tsconfig" [ style = "dashed", color = "blue" ]; "@kie-tools/unitables" -> "@kie-tools/boxed-expression-component" [ style = "solid", color = "blue" ]; "@kie-tools/unitables" -> "@kie-tools/dmn-runner" [ style = "solid", color = "blue" ]; "@kie-tools/unitables-dmn" -> "@kie-tools/unitables" [ style = "solid", color = "blue" ]; diff --git a/repo/graph.json b/repo/graph.json index fef9a5e3db9..bbdb8bf6567 100644 --- a/repo/graph.json +++ b/repo/graph.json @@ -132,10 +132,11 @@ { "id": "@kie-tools/extended-services" }, { "id": "@kie-tools/extended-services-java" }, { "id": "extended-services-vscode-extension" }, - { "id": "@kie-tools/form-generation-tool" }, - { "id": "@kie-tools/uniforms-bootstrap4-codegen" }, - { "id": "@kie-tools/uniforms-patternfly-codegen" }, + { "id": "@kie-tools/form-code-generator" }, + { "id": "@kie-tools/form-code-generator-bootstrap4-theme" }, + { "id": "@kie-tools/form-code-generator-patternfly-theme" }, { "id": "@kie-tools/import-java-classes-component" }, + { "id": "@kie-tools/jbpm-form-code-generator-themes" }, { "id": "@kie-tools/runtime-tools-process-webapp-components" }, { "id": "@kie-tools/runtime-tools-shared-webapp-components" }, { "id": "@kie-tools/jobs-service-webapp" }, @@ -1626,53 +1627,38 @@ "weight": 1 }, { - "source": "@kie-tools/form-generation-tool", - "target": "@kie-tools/uniforms-bootstrap4-codegen", - "weight": 1 - }, - { - "source": "@kie-tools/form-generation-tool", - "target": "@kie-tools/uniforms-patternfly-codegen", - "weight": 1 - }, - { - "source": "@kie-tools/uniforms-bootstrap4-codegen", - "target": "@kie-tools-core/webpack-base", - "weight": 1 - }, - { - "source": "@kie-tools/uniforms-bootstrap4-codegen", + "source": "@kie-tools/form-code-generator", "target": "@kie-tools/eslint", "weight": 1 }, { - "source": "@kie-tools/uniforms-bootstrap4-codegen", + "source": "@kie-tools/form-code-generator", "target": "@kie-tools/jest-base", "weight": 1 }, { - "source": "@kie-tools/uniforms-bootstrap4-codegen", + "source": "@kie-tools/form-code-generator", "target": "@kie-tools/tsconfig", "weight": 1 }, { - "source": "@kie-tools/uniforms-patternfly-codegen", - "target": "@kie-tools-core/webpack-base", + "source": "@kie-tools/form-code-generator-bootstrap4-theme", + "target": "@kie-tools/form-code-generator", "weight": 1 }, { - "source": "@kie-tools/uniforms-patternfly-codegen", - "target": "@kie-tools/eslint", + "source": "@kie-tools/form-code-generator-bootstrap4-theme", + "target": "@kie-tools-core/webpack-base", "weight": 1 }, { - "source": "@kie-tools/uniforms-patternfly-codegen", - "target": "@kie-tools/jest-base", + "source": "@kie-tools/form-code-generator-patternfly-theme", + "target": "@kie-tools/form-code-generator", "weight": 1 }, { - "source": "@kie-tools/uniforms-patternfly-codegen", - "target": "@kie-tools/tsconfig", + "source": "@kie-tools/form-code-generator-patternfly-theme", + "target": "@kie-tools-core/webpack-base", "weight": 1 }, { @@ -1700,6 +1686,16 @@ "target": "@kie-tools-core/webpack-base", "weight": 1 }, + { + "source": "@kie-tools/jbpm-form-code-generator-themes", + "target": "@kie-tools/form-code-generator-bootstrap4-theme", + "weight": 1 + }, + { + "source": "@kie-tools/jbpm-form-code-generator-themes", + "target": "@kie-tools/form-code-generator-patternfly-theme", + "weight": 1 + }, { "source": "@kie-tools/runtime-tools-process-webapp-components", "target": "@kie-tools/runtime-tools-process-enveloped-components", @@ -2643,13 +2639,16 @@ ["extended-services-vscode-extension", "packages/extended-services-vscode-extension"], ["@kie-tools/feel-input-component", "packages/feel-input-component"], ["@kie-tools/form", "packages/form"], + ["@kie-tools/form-code-generator", "packages/form-code-generator"], + ["@kie-tools/form-code-generator-bootstrap4-theme", "packages/form-code-generator-bootstrap4-theme"], + ["@kie-tools/form-code-generator-patternfly-theme", "packages/form-code-generator-patternfly-theme"], ["@kie-tools/form-dmn", "packages/form-dmn"], - ["@kie-tools/form-generation-tool", "packages/form-generation-tool"], ["@kie-tools-core/i18n", "packages/i18n"], ["@kie-tools/i18n-common-dictionary", "packages/i18n-common-dictionary"], ["@kie-tools/image-builder", "packages/image-builder"], ["@kie-tools/image-env-to-json", "packages/image-env-to-json"], ["@kie-tools/import-java-classes-component", "packages/import-java-classes-component"], + ["@kie-tools/jbpm-form-code-generator-themes", "packages/jbpm-form-code-generator-themes"], ["@kie-tools/jbpm-quarkus-devui", "packages/jbpm-quarkus-devui"], ["@kie-tools/jest-base", "packages/jest-base"], ["@kie-tools/jobs-service-webapp", "packages/jobs-service-webapp"], @@ -2766,9 +2765,7 @@ ["@kie-tools-core/switch-expression-ts", "packages/switch-expression-ts"], ["@kie-tools/text-editor", "packages/text-editor"], ["@kie-tools/tsconfig", "packages/tsconfig"], - ["@kie-tools/uniforms-bootstrap4-codegen", "packages/uniforms-bootstrap4-codegen"], ["@kie-tools/uniforms-patternfly", "packages/uniforms-patternfly"], - ["@kie-tools/uniforms-patternfly-codegen", "packages/uniforms-patternfly-codegen"], ["@kie-tools/unitables", "packages/unitables"], ["@kie-tools/unitables-dmn", "packages/unitables-dmn"], ["@kie-tools-core/vscode-extension", "packages/vscode-extension"],