@kosdev-code/kos-nx-plugin 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -0
- package/generators.json +70 -0
- package/migrations.json +81 -0
- package/package.json +25 -0
- package/src/generators/kos-companion-model/files/types/index.d.ts.template +11 -0
- package/src/generators/kos-companion-model/generator.d.ts +5 -0
- package/src/generators/kos-companion-model/generator.d.ts.map +1 -0
- package/src/generators/kos-companion-model/generator.js +45 -0
- package/src/generators/kos-companion-model/generator.js.map +1 -0
- package/src/generators/kos-companion-model/schema.d.ts +6 -0
- package/src/generators/kos-companion-model/schema.json +36 -0
- package/src/generators/kos-component/cui/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/cui/__nameDashCase__.tsx__template__ +35 -0
- package/src/generators/kos-component/cui/index.ts__template__ +1 -0
- package/src/generators/kos-component/files/__nameDashCase__.css__template__ +2 -0
- package/src/generators/kos-component/files/__nameDashCase__.tsx__template__ +20 -0
- package/src/generators/kos-component/files/index.ts__template__ +1 -0
- package/src/generators/kos-component/generator.d.ts +5 -0
- package/src/generators/kos-component/generator.d.ts.map +1 -0
- package/src/generators/kos-component/generator.js +270 -0
- package/src/generators/kos-component/generator.js.map +1 -0
- package/src/generators/kos-component/nav/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/nav/__nameDashCase__.tsx__template__ +25 -0
- package/src/generators/kos-component/nav/index.ts__template__ +1 -0
- package/src/generators/kos-component/schema.d.ts +18 -0
- package/src/generators/kos-component/schema.json +88 -0
- package/src/generators/kos-component/setting/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/setting/__nameDashCase__.tsx__template__ +25 -0
- package/src/generators/kos-component/setting/index.ts__template__ +1 -0
- package/src/generators/kos-component/setup/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/setup/__nameDashCase__.tsx__template__ +32 -0
- package/src/generators/kos-component/setup/index.ts__template__ +1 -0
- package/src/generators/kos-component/trouble-action/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/trouble-action/__nameDashCase__.tsx__template__ +58 -0
- package/src/generators/kos-component/trouble-action/index.ts__template__ +1 -0
- package/src/generators/kos-component/utility/__nameDashCase__.stories.tsx__template__ +30 -0
- package/src/generators/kos-component/utility/__nameDashCase__.tsx__template__ +45 -0
- package/src/generators/kos-component/utility/index.ts__template__ +1 -0
- package/src/generators/kos-container-model/files/model/__nameDashCase__-model.ts.template +80 -0
- package/src/generators/kos-container-model/files/model/__nameDashCase__-registration.ts.template +113 -0
- package/src/generators/kos-container-model/files/model/index.ts.template +6 -0
- package/src/generators/kos-container-model/files/model/types/index.d.ts.template +24 -0
- package/src/generators/kos-container-model/files/services/__modelNameDashCase__-services.ts.template +28 -0
- package/src/generators/kos-container-model/files/services/index.ts.template +1 -0
- package/src/generators/kos-container-model/generator.d.ts +5 -0
- package/src/generators/kos-container-model/generator.d.ts.map +1 -0
- package/src/generators/kos-container-model/generator.js +74 -0
- package/src/generators/kos-container-model/generator.js.map +1 -0
- package/src/generators/kos-container-model/lib/normalize-options.d.ts +4 -0
- package/src/generators/kos-container-model/lib/normalize-options.d.ts.map +1 -0
- package/src/generators/kos-container-model/lib/normalize-options.js +32 -0
- package/src/generators/kos-container-model/lib/normalize-options.js.map +1 -0
- package/src/generators/kos-container-model/lib/normalize-value.d.ts +7 -0
- package/src/generators/kos-container-model/lib/normalize-value.d.ts.map +1 -0
- package/src/generators/kos-container-model/lib/normalize-value.js +28 -0
- package/src/generators/kos-container-model/lib/normalize-value.js.map +1 -0
- package/src/generators/kos-container-model/lib/utils/name-utils.d.ts +6 -0
- package/src/generators/kos-container-model/lib/utils/name-utils.d.ts.map +1 -0
- package/src/generators/kos-container-model/lib/utils/name-utils.js +53 -0
- package/src/generators/kos-container-model/lib/utils/name-utils.js.map +1 -0
- package/src/generators/kos-container-model/lib/utils/ts-visitor.d.ts +8 -0
- package/src/generators/kos-container-model/lib/utils/ts-visitor.d.ts.map +1 -0
- package/src/generators/kos-container-model/lib/utils/ts-visitor.js +122 -0
- package/src/generators/kos-container-model/lib/utils/ts-visitor.js.map +1 -0
- package/src/generators/kos-container-model/schema.d.ts +35 -0
- package/src/generators/kos-container-model/schema.json +50 -0
- package/src/generators/kos-context/files/__nameDashCase__-provider.tsx.template +40 -0
- package/src/generators/kos-context/files/index.ts.template +1 -0
- package/src/generators/kos-context/generator.d.ts +5 -0
- package/src/generators/kos-context/generator.d.ts.map +1 -0
- package/src/generators/kos-context/generator.js +56 -0
- package/src/generators/kos-context/generator.js.map +1 -0
- package/src/generators/kos-context/schema.d.ts +14 -0
- package/src/generators/kos-context/schema.json +36 -0
- package/src/generators/kos-hook/files/index.ts.template +2 -0
- package/src/generators/kos-hook/files/use-__nameDashCase__.ts.template +13 -0
- package/src/generators/kos-hook/files/with-__nameDashCase__.tsx.template +28 -0
- package/src/generators/kos-hook/generator.d.ts +5 -0
- package/src/generators/kos-hook/generator.d.ts.map +1 -0
- package/src/generators/kos-hook/generator.js +56 -0
- package/src/generators/kos-hook/generator.js.map +1 -0
- package/src/generators/kos-hook/schema.d.ts +21 -0
- package/src/generators/kos-hook/schema.json +36 -0
- package/src/generators/kos-i18n-project/files/.kos.json.template +5 -0
- package/src/generators/kos-i18n-project/files/src/assets/locales/en/__nameDashCase__.json.template +3 -0
- package/src/generators/kos-i18n-project/generator.d.ts +5 -0
- package/src/generators/kos-i18n-project/generator.d.ts.map +1 -0
- package/src/generators/kos-i18n-project/generator.js +82 -0
- package/src/generators/kos-i18n-project/generator.js.map +1 -0
- package/src/generators/kos-i18n-project/schema.d.ts +3 -0
- package/src/generators/kos-i18n-project/schema.json +18 -0
- package/src/generators/kos-init/generator.d.ts +5 -0
- package/src/generators/kos-init/generator.d.ts.map +1 -0
- package/src/generators/kos-init/generator.js +43 -0
- package/src/generators/kos-init/generator.js.map +1 -0
- package/src/generators/kos-init/schema.d.ts +5 -0
- package/src/generators/kos-init/schema.json +29 -0
- package/src/generators/kos-model/files/model/__nameDashCase__-model.ts.template +57 -0
- package/src/generators/kos-model/files/model/__nameDashCase__-registration.ts.template +110 -0
- package/src/generators/kos-model/files/model/index.ts__template__ +4 -0
- package/src/generators/kos-model/files/model/types/index.d.ts.template +7 -0
- package/src/generators/kos-model/files/services/__nameDashCase__-services.ts.template +28 -0
- package/src/generators/kos-model/files/services/index.ts.template +1 -0
- package/src/generators/kos-model/generator.d.ts +5 -0
- package/src/generators/kos-model/generator.d.ts.map +1 -0
- package/src/generators/kos-model/generator.js +115 -0
- package/src/generators/kos-model/generator.js.map +1 -0
- package/src/generators/kos-model/lib/normalize-options.d.ts +4 -0
- package/src/generators/kos-model/lib/normalize-options.d.ts.map +1 -0
- package/src/generators/kos-model/lib/normalize-options.js +35 -0
- package/src/generators/kos-model/lib/normalize-options.js.map +1 -0
- package/src/generators/kos-model/lib/normalize-value.d.ts +7 -0
- package/src/generators/kos-model/lib/normalize-value.d.ts.map +1 -0
- package/src/generators/kos-model/lib/normalize-value.js +28 -0
- package/src/generators/kos-model/lib/normalize-value.js.map +1 -0
- package/src/generators/kos-model/lib/utils/name-utils.d.ts +6 -0
- package/src/generators/kos-model/lib/utils/name-utils.d.ts.map +1 -0
- package/src/generators/kos-model/lib/utils/name-utils.js +42 -0
- package/src/generators/kos-model/lib/utils/name-utils.js.map +1 -0
- package/src/generators/kos-model/lib/utils/ts-visitor.d.ts +8 -0
- package/src/generators/kos-model/lib/utils/ts-visitor.d.ts.map +1 -0
- package/src/generators/kos-model/lib/utils/ts-visitor.js +126 -0
- package/src/generators/kos-model/lib/utils/ts-visitor.js.map +1 -0
- package/src/generators/kos-model/schema.d.ts +41 -0
- package/src/generators/kos-model/schema.json +91 -0
- package/src/generators/kos-plugin-project/files/.env.template +7 -0
- package/src/generators/kos-plugin-project/files/.kos.json.template +40 -0
- package/src/generators/kos-plugin-project/files/.storybook/main.ts.template +45 -0
- package/src/generators/kos-plugin-project/files/.storybook/preview.tsx.template +82 -0
- package/src/generators/kos-plugin-project/files/.storybook/registration.ts.template +40 -0
- package/src/generators/kos-plugin-project/files/index.html.template +15 -0
- package/src/generators/kos-plugin-project/files/module-federation.config.ts.template +1 -0
- package/src/generators/kos-plugin-project/files/src/app/app.css.template +2 -0
- package/src/generators/kos-plugin-project/files/src/app/app.tsx.template +54 -0
- package/src/generators/kos-plugin-project/files/src/app/components/main-view/index.ts.template +1 -0
- package/src/generators/kos-plugin-project/files/src/app/components/main-view/main-view.tsx.template +14 -0
- package/src/generators/kos-plugin-project/files/src/app/tools/experience-resolver.ts.template +10 -0
- package/src/generators/kos-plugin-project/files/src/app/tools/index.ts.template +2 -0
- package/src/generators/kos-plugin-project/files/src/app/tools/kOSJSON.ts.template +1 -0
- package/src/generators/kos-plugin-project/files/src/assets/kos-logo.svg.template +4 -0
- package/src/generators/kos-plugin-project/files/src/assets/locales/en/__nameDashCase__.json.template +3 -0
- package/src/generators/kos-plugin-project/files/src/registration.ts.template +13 -0
- package/src/generators/kos-plugin-project/files/webpack.config.prod.ts.template +24 -0
- package/src/generators/kos-plugin-project/files/webpack.config.ts.template +7 -0
- package/src/generators/kos-plugin-project/generator.d.ts +5 -0
- package/src/generators/kos-plugin-project/generator.d.ts.map +1 -0
- package/src/generators/kos-plugin-project/generator.js +108 -0
- package/src/generators/kos-plugin-project/generator.js.map +1 -0
- package/src/generators/kos-plugin-project/schema.d.ts +5 -0
- package/src/generators/kos-plugin-project/schema.json +33 -0
- package/src/generators/kos-splash-project/files/project/project.json.template +17 -0
- package/src/generators/kos-splash-project/files/project/src/start.html.template +13 -0
- package/src/generators/kos-splash-project/files/tools/splashtool.mjs.template +247 -0
- package/src/generators/kos-splash-project/generator.d.ts +5 -0
- package/src/generators/kos-splash-project/generator.d.ts.map +1 -0
- package/src/generators/kos-splash-project/generator.js +17 -0
- package/src/generators/kos-splash-project/generator.js.map +1 -0
- package/src/generators/kos-splash-project/schema.d.ts +3 -0
- package/src/generators/kos-splash-project/schema.json +18 -0
- package/src/generators/kos-theme-project/files/.kos.json.template +5 -0
- package/src/generators/kos-theme-project/files/theme/component.css.template +2 -0
- package/src/generators/kos-theme-project/files/theme/generic.css.template +2 -0
- package/src/generators/kos-theme-project/files/theme/semantic.css.template +2 -0
- package/src/generators/kos-theme-project/files/theme/theme-overlay.css.template +7 -0
- package/src/generators/kos-theme-project/files/vite.config.ts.template +48 -0
- package/src/generators/kos-theme-project/generator.d.ts +5 -0
- package/src/generators/kos-theme-project/generator.d.ts.map +1 -0
- package/src/generators/kos-theme-project/generator.js +54 -0
- package/src/generators/kos-theme-project/generator.js.map +1 -0
- package/src/generators/kos-theme-project/schema.d.ts +3 -0
- package/src/generators/kos-theme-project/schema.json +18 -0
- package/src/generators/kos-ui-project/files/.env.template +7 -0
- package/src/generators/kos-ui-project/files/.kos.json.template +5 -0
- package/src/generators/kos-ui-project/files/bootstrap.tsx.template +13 -0
- package/src/generators/kos-ui-project/files/main.ts.template +18 -0
- package/src/generators/kos-ui-project/files/src/app/app.css.template +38 -0
- package/src/generators/kos-ui-project/files/src/app/app.tsx.template +45 -0
- package/src/generators/kos-ui-project/files/src/app/components/main-view/index.ts.template +1 -0
- package/src/generators/kos-ui-project/files/src/app/components/main-view/main-view.tsx.template +31 -0
- package/src/generators/kos-ui-project/files/src/app/registration.ts.template +13 -0
- package/src/generators/kos-ui-project/files/src/assets/kos-logo.svg.template +4 -0
- package/src/generators/kos-ui-project/files/src/assets/locales/en/__nameDashCase__.json.template +4 -0
- package/src/generators/kos-ui-project/files/src/bootstrap.tsx.template +13 -0
- package/src/generators/kos-ui-project/files/src/index.html.template +14 -0
- package/src/generators/kos-ui-project/files/webpack.config.ts.template +45 -0
- package/src/generators/kos-ui-project/generator.d.ts +5 -0
- package/src/generators/kos-ui-project/generator.d.ts.map +1 -0
- package/src/generators/kos-ui-project/generator.js +135 -0
- package/src/generators/kos-ui-project/generator.js.map +1 -0
- package/src/generators/kos-ui-project/internal/vite.config.ts.template +49 -0
- package/src/generators/kos-ui-project/schema.d.ts +7 -0
- package/src/generators/kos-ui-project/schema.json +34 -0
- package/src/generators/preset/api/utils/service.ts.template +15 -0
- package/src/generators/preset/files/.env.template +7 -0
- package/src/generators/preset/files/.kos.json.template +5 -0
- package/src/generators/preset/files/src/app/app.css.template +38 -0
- package/src/generators/preset/files/src/app/app.tsx.template +38 -0
- package/src/generators/preset/files/src/app/components/main-view/index.ts.template +1 -0
- package/src/generators/preset/files/src/app/components/main-view/main-view.tsx.template +32 -0
- package/src/generators/preset/files/src/app/registration.ts.template +20 -0
- package/src/generators/preset/files/src/assets/kos-logo.svg.template +4 -0
- package/src/generators/preset/files/src/assets/locales/en/__nameDashCase__.json.template +4 -0
- package/src/generators/preset/files/src/bootstrap.tsx.template +13 -0
- package/src/generators/preset/files/src/index.html.template +15 -0
- package/src/generators/preset/files/src/main.ts.template +6 -0
- package/src/generators/preset/files/webpack.config.ts.template +45 -0
- package/src/generators/preset/generator.d.ts +5 -0
- package/src/generators/preset/generator.d.ts.map +1 -0
- package/src/generators/preset/generator.js +252 -0
- package/src/generators/preset/generator.js.map +1 -0
- package/src/generators/preset/local/.env.local.template +5 -0
- package/src/generators/preset/schema.d.ts +8 -0
- package/src/generators/preset/schema.json +14 -0
- package/src/generators/preset/tools/tools/scripts/archiver.js.template +79 -0
- package/src/generators/preset/tools/tools/scripts/descriptor.mjs.template +114 -0
- package/src/generators/preset/tools/tools/scripts/generate-api-types.mjs.template +25 -0
- package/src/generators/preset/tools/tools/scripts/kabtool.mjs.template +87 -0
- package/src/generators/preset/tools/tools/scripts/update.mjs.template +67 -0
- package/src/generators/preset/tools/tools/tsconfig.tools.json.template +12 -0
- package/src/index.d.ts +1 -0
- package/src/index.d.ts.map +1 -0
- package/src/index.js +2 -0
- package/src/index.js.map +1 -0
- package/src/migrations/add-overrides/add-overrides.d.ts +3 -0
- package/src/migrations/add-overrides/add-overrides.d.ts.map +1 -0
- package/src/migrations/add-overrides/add-overrides.js +85 -0
- package/src/migrations/add-overrides/add-overrides.js.map +1 -0
- package/src/migrations/add-overrides/files/.env.local__template__ +5 -0
- package/src/migrations/add-overrides/files/tools/scripts/archiver.js__template__ +79 -0
- package/src/migrations/add-overrides/files/tools/scripts/kabtool.mjs__template__ +85 -0
- package/src/migrations/add-overrides/projectFiles/.kos.json__template__ +5 -0
- package/src/migrations/add-update-tool/files/tools/scripts/update.mjs.template +67 -0
- package/src/migrations/add-update-tool/migrate.d.ts +3 -0
- package/src/migrations/add-update-tool/migrate.d.ts.map +1 -0
- package/src/migrations/add-update-tool/migrate.js +24 -0
- package/src/migrations/add-update-tool/migrate.js.map +1 -0
- package/src/migrations/cms-sdk/cms-sdk.d.ts +3 -0
- package/src/migrations/cms-sdk/cms-sdk.d.ts.map +1 -0
- package/src/migrations/cms-sdk/cms-sdk.js +22 -0
- package/src/migrations/cms-sdk/cms-sdk.js.map +1 -0
- package/src/migrations/consolidate-sdk/api/utils/service.ts.template +15 -0
- package/src/migrations/consolidate-sdk/consolidate-sdk.d.ts +3 -0
- package/src/migrations/consolidate-sdk/consolidate-sdk.d.ts.map +1 -0
- package/src/migrations/consolidate-sdk/consolidate-sdk.js +100 -0
- package/src/migrations/consolidate-sdk/consolidate-sdk.js.map +1 -0
- package/src/migrations/consolidate-sdk/files/tools/scripts/generate-api-types.mjs.template +25 -0
- package/src/migrations/default-projects/default-projects.d.ts +3 -0
- package/src/migrations/default-projects/default-projects.d.ts.map +1 -0
- package/src/migrations/default-projects/default-projects.js +45 -0
- package/src/migrations/default-projects/default-projects.js.map +1 -0
- package/src/migrations/default-projects/files/index.ts__template__ +2 -0
- package/src/migrations/freestyle-sdk/freestyle-sdk.d.ts +3 -0
- package/src/migrations/freestyle-sdk/freestyle-sdk.d.ts.map +1 -0
- package/src/migrations/freestyle-sdk/freestyle-sdk.js +18 -0
- package/src/migrations/freestyle-sdk/freestyle-sdk.js.map +1 -0
- package/src/migrations/kabtool-env/migrate.d.ts +3 -0
- package/src/migrations/kabtool-env/migrate.d.ts.map +1 -0
- package/src/migrations/kabtool-env/migrate.js +11 -0
- package/src/migrations/kabtool-env/migrate.js.map +1 -0
- package/src/migrations/migrate-extensions/migrate-extensions.d.ts +3 -0
- package/src/migrations/migrate-extensions/migrate-extensions.d.ts.map +1 -0
- package/src/migrations/migrate-extensions/migrate-extensions.js +77 -0
- package/src/migrations/migrate-extensions/migrate-extensions.js.map +1 -0
- package/src/migrations/translation-format/translation-format.d.ts +3 -0
- package/src/migrations/translation-format/translation-format.d.ts.map +1 -0
- package/src/migrations/translation-format/translation-format.js +56 -0
- package/src/migrations/translation-format/translation-format.js.map +1 -0
- package/src/migrations/translations/add-descriptor.d.ts +3 -0
- package/src/migrations/translations/add-descriptor.d.ts.map +1 -0
- package/src/migrations/translations/add-descriptor.js +48 -0
- package/src/migrations/translations/add-descriptor.js.map +1 -0
- package/src/migrations/translations/files/tools/scripts/descriptor.mjs.template +114 -0
- package/src/migrations/update-kabtool/files/tools/scripts/kabtool.mjs.template +87 -0
- package/src/migrations/update-kabtool/update-kabtool.d.ts +3 -0
- package/src/migrations/update-kabtool/update-kabtool.d.ts.map +1 -0
- package/src/migrations/update-kabtool/update-kabtool.js +11 -0
- package/src/migrations/update-kabtool/update-kabtool.js.map +1 -0
- package/src/migrations/update-sdk/update-sdk.d.ts +3 -0
- package/src/migrations/update-sdk/update-sdk.d.ts.map +1 -0
- package/src/migrations/update-sdk/update-sdk.js +17 -0
- package/src/migrations/update-sdk/update-sdk.js.map +1 -0
- package/src/utils/java-home.d.ts +2 -0
- package/src/utils/java-home.d.ts.map +1 -0
- package/src/utils/java-home.js +44 -0
- package/src/utils/java-home.js.map +1 -0
- package/src/utils/logger.d.ts +9 -0
- package/src/utils/logger.d.ts.map +1 -0
- package/src/utils/logger.js +46 -0
- package/src/utils/logger.js.map +1 -0
- package/src/utils/name-utils.d.ts +6 -0
- package/src/utils/name-utils.d.ts.map +1 -0
- package/src/utils/name-utils.js +60 -0
- package/src/utils/name-utils.js.map +1 -0
- package/src/utils/normalize-value.d.ts +7 -0
- package/src/utils/normalize-value.d.ts.map +1 -0
- package/src/utils/normalize-value.js +33 -0
- package/src/utils/normalize-value.js.map +1 -0
- package/src/utils/project-utils.d.ts +36 -0
- package/src/utils/project-utils.d.ts.map +1 -0
- package/src/utils/project-utils.js +102 -0
- package/src/utils/project-utils.js.map +1 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/// <reference types='vitest' />
|
|
2
|
+
import { defineConfig } from "vite";
|
|
3
|
+
import react from "@vitejs/plugin-react";
|
|
4
|
+
import dts from "vite-plugin-dts";
|
|
5
|
+
import * as path from "path";
|
|
6
|
+
import { nxViteTsPaths } from "@nx/vite/plugins/nx-tsconfig-paths.plugin";
|
|
7
|
+
|
|
8
|
+
export default defineConfig({
|
|
9
|
+
root: __dirname,
|
|
10
|
+
cacheDir: "../../node_modules/.vite/themes/<%= name %>",
|
|
11
|
+
publicDir: "theme",
|
|
12
|
+
plugins: [
|
|
13
|
+
react(),
|
|
14
|
+
nxViteTsPaths(),
|
|
15
|
+
dts({
|
|
16
|
+
entryRoot: "src",
|
|
17
|
+
tsconfigPath: path.join(__dirname, "tsconfig.lib.json"),
|
|
18
|
+
}),
|
|
19
|
+
],
|
|
20
|
+
|
|
21
|
+
// Uncomment this if you are using workers.
|
|
22
|
+
// worker: {
|
|
23
|
+
// plugins: [ nxViteTsPaths() ],
|
|
24
|
+
// },
|
|
25
|
+
|
|
26
|
+
// Configuration for building your library.
|
|
27
|
+
// See: https://vitejs.dev/guide/build.html#library-mode
|
|
28
|
+
build: {
|
|
29
|
+
outDir: "../../dist/themes/<%= name %>",
|
|
30
|
+
reportCompressedSize: true,
|
|
31
|
+
commonjsOptions: {
|
|
32
|
+
transformMixedEsModules: true,
|
|
33
|
+
},
|
|
34
|
+
lib: {
|
|
35
|
+
// Could also be a dictionary or array of multiple entry points.
|
|
36
|
+
entry: "src/index.ts",
|
|
37
|
+
name: "<%= name %>",
|
|
38
|
+
fileName: "<%= name %>",
|
|
39
|
+
// Change this to the formats you want to support.
|
|
40
|
+
// Don't forget to update your package.json as well.
|
|
41
|
+
formats: ["es", "cjs"],
|
|
42
|
+
},
|
|
43
|
+
rollupOptions: {
|
|
44
|
+
// External packages that should not be bundled into your library.
|
|
45
|
+
external: ["react", "react-dom", "react/jsx-runtime"],
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
});
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Tree } from "@nx/devkit";
|
|
2
|
+
import { KosThemeProjectGeneratorSchema } from "./schema";
|
|
3
|
+
export declare function kosThemeProjectGenerator(tree: Tree, options: KosThemeProjectGeneratorSchema): Promise<void>;
|
|
4
|
+
export default kosThemeProjectGenerator;
|
|
5
|
+
//# sourceMappingURL=generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-theme-project/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,IAAI,EAGL,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAC;AAG1D,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,8BAA8B,iBAgDxC;AAED,eAAe,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.kosThemeProjectGenerator = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const react_1 = require("@nx/react");
|
|
6
|
+
const path = require("path");
|
|
7
|
+
const eslint_1 = require("@nx/eslint");
|
|
8
|
+
async function kosThemeProjectGenerator(tree, options) {
|
|
9
|
+
const config = (0, devkit_1.readNxJson)(tree);
|
|
10
|
+
const root = config?.workspaceLayout?.libsDir || "";
|
|
11
|
+
const projectRootDir = path.join(root, "themes", options.name);
|
|
12
|
+
await (0, react_1.libraryGenerator)(tree, {
|
|
13
|
+
name: options.name,
|
|
14
|
+
bundler: "vite",
|
|
15
|
+
directory: projectRootDir,
|
|
16
|
+
component: false,
|
|
17
|
+
minimal: true,
|
|
18
|
+
projectNameAndRootFormat: "as-provided",
|
|
19
|
+
style: "css",
|
|
20
|
+
linter: eslint_1.Linter.EsLint,
|
|
21
|
+
});
|
|
22
|
+
const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, options.name);
|
|
23
|
+
const externalJson = {
|
|
24
|
+
kab: {
|
|
25
|
+
command: `node tools/scripts/kabtool.mjs build ${options.name} && node tools/scripts/kabtool.mjs list ${options.name} `,
|
|
26
|
+
options: {
|
|
27
|
+
outputPath: `dist/archives/packages/${options.name}/`,
|
|
28
|
+
zipName: "ui.zip",
|
|
29
|
+
kabName: `${options.name}.kab`,
|
|
30
|
+
},
|
|
31
|
+
dependsOn: ["zip"],
|
|
32
|
+
},
|
|
33
|
+
zip: {
|
|
34
|
+
command: `node tools/scripts/archiver.js ${options.name}`,
|
|
35
|
+
options: {
|
|
36
|
+
outputPath: `dist/archives/packages/${options.name}/`,
|
|
37
|
+
zipName: "ui.zip",
|
|
38
|
+
},
|
|
39
|
+
dependsOn: ["build"],
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
(0, devkit_1.updateProjectConfiguration)(tree, options.name, {
|
|
43
|
+
...projectConfiguration,
|
|
44
|
+
targets: {
|
|
45
|
+
...projectConfiguration.targets,
|
|
46
|
+
...externalJson,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
(0, devkit_1.generateFiles)(tree, path.join(__dirname, "files"), projectRootDir, options);
|
|
50
|
+
await (0, devkit_1.formatFiles)(tree);
|
|
51
|
+
}
|
|
52
|
+
exports.kosThemeProjectGenerator = kosThemeProjectGenerator;
|
|
53
|
+
exports.default = kosThemeProjectGenerator;
|
|
54
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-theme-project/generator.ts"],"names":[],"mappings":";;;AAAA,uCAOoB;AACpB,qCAA6C;AAC7C,6BAA6B;AAE7B,uCAAoC;AAE7B,KAAK,UAAU,wBAAwB,CAC5C,IAAU,EACV,OAAuC;IAEvC,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,IAAI,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,EAAE,eAAe,EAAE,OAAO,IAAI,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,IAAA,wBAAgB,EAAC,IAAI,EAAE;QAC3B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,IAAI;QACb,wBAAwB,EAAE,aAAa;QACvC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,eAAM,CAAC,MAAM;KACtB,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,YAAY,GAAG;QACnB,GAAG,EAAE;YACH,OAAO,EAAE,wCAAwC,OAAO,CAAC,IAAI,2CAA2C,OAAO,CAAC,IAAI,GAAG;YACvH,OAAO,EAAE;gBACP,UAAU,EAAE,0BAA0B,OAAO,CAAC,IAAI,GAAG;gBACrD,OAAO,EAAE,QAAQ;gBACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,MAAM;aAC/B;YACD,SAAS,EAAE,CAAC,KAAK,CAAC;SACnB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,kCAAkC,OAAO,CAAC,IAAI,EAAE;YACzD,OAAO,EAAE;gBACP,UAAU,EAAE,0BAA0B,OAAO,CAAC,IAAI,GAAG;gBACrD,OAAO,EAAE,QAAQ;aAClB;YACD,SAAS,EAAE,CAAC,OAAO,CAAC;SACrB;KACF,CAAC;IAEF,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE;QAC7C,GAAG,oBAAoB;QACvB,OAAO,EAAE;YACP,GAAG,oBAAoB,CAAC,OAAO;YAC/B,GAAG,YAAY;SAChB;KACF,CAAC,CAAC;IAEH,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAE5E,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAlDD,4DAkDC;AAED,kBAAe,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "KosThemeProject",
|
|
4
|
+
"title": "",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"name": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "argv",
|
|
12
|
+
"index": 0
|
|
13
|
+
},
|
|
14
|
+
"x-prompt": "What name would you like to use?"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"required": ["name"]
|
|
18
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StrictMode } from "react";
|
|
2
|
+
import * as ReactDOM from "react-dom/client";
|
|
3
|
+
import "reflect-metadata";
|
|
4
|
+
import App from "./app/app";
|
|
5
|
+
|
|
6
|
+
const root = ReactDOM.createRoot(
|
|
7
|
+
document.getElementById("root") as HTMLElement
|
|
8
|
+
);
|
|
9
|
+
root.render(
|
|
10
|
+
<StrictMode>
|
|
11
|
+
<App />
|
|
12
|
+
</StrictMode>
|
|
13
|
+
);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<% if (ddk) { %>
|
|
2
|
+
import { initializeKosPlugins } from '@kosdev-code/kos-ui-plugin';
|
|
3
|
+
import { setRemoteDefinitions } from '@nx/react/mf';
|
|
4
|
+
|
|
5
|
+
initializeKosPlugins()
|
|
6
|
+
.then((definitions) => {
|
|
7
|
+
setRemoteDefinitions(definitions);
|
|
8
|
+
})
|
|
9
|
+
.then(() => import('./bootstrap').catch((err) => console.error(err)));
|
|
10
|
+
<% } else { %>
|
|
11
|
+
import { setRemoteDefinitions } from "@nx/react/mf";
|
|
12
|
+
|
|
13
|
+
fetch("./assets/module-federation.manifest.json")
|
|
14
|
+
.then((res) => res.json())
|
|
15
|
+
.then((definitions) => setRemoteDefinitions(definitions))
|
|
16
|
+
.then(() => import("./bootstrap").catch((err) => console.error(err)));
|
|
17
|
+
<% } %>
|
|
18
|
+
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
.App {
|
|
2
|
+
text-align: center;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.App-logo {
|
|
6
|
+
height: 40vmin;
|
|
7
|
+
pointer-events: none;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
11
|
+
.App-logo {
|
|
12
|
+
animation: App-logo-spin infinite 20s linear;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.App-header {
|
|
17
|
+
background-color: #282c34;
|
|
18
|
+
min-height: 100vh;
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
align-items: center;
|
|
22
|
+
justify-content: center;
|
|
23
|
+
font-size: calc(10px + 2vmin);
|
|
24
|
+
color: white;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.App-link {
|
|
28
|
+
color: #61dafb;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@keyframes App-logo-spin {
|
|
32
|
+
from {
|
|
33
|
+
transform: rotate(0deg);
|
|
34
|
+
}
|
|
35
|
+
to {
|
|
36
|
+
transform: rotate(360deg);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<% if (ddk) { %>import {
|
|
2
|
+
ApplicationComponentConfigurationProvider,
|
|
3
|
+
ApplicationProvider,
|
|
4
|
+
} from '@kosdev-code/kos-ddk-model-components';<% } %>
|
|
5
|
+
import {
|
|
6
|
+
ErrorBoundaryWithFallback,
|
|
7
|
+
LoadingMessage,
|
|
8
|
+
getLogLevel,
|
|
9
|
+
KosTranslationProvider,
|
|
10
|
+
} from "@kosdev-code/kos-ui-sdk";
|
|
11
|
+
import log from "loglevel";
|
|
12
|
+
import { Suspense } from "react";
|
|
13
|
+
import { KosCoreContextProvider } from "./registration";
|
|
14
|
+
import "./app.css";
|
|
15
|
+
import { HashRouter as Router, Routes, Route } from "react-router-dom";
|
|
16
|
+
import { MainView } from "./components/main-view";
|
|
17
|
+
|
|
18
|
+
const level = getLogLevel();
|
|
19
|
+
|
|
20
|
+
log.setLevel(level);
|
|
21
|
+
|
|
22
|
+
const App = () => (
|
|
23
|
+
<ErrorBoundaryWithFallback>
|
|
24
|
+
<Suspense fallback={<LoadingMessage></LoadingMessage>}>
|
|
25
|
+
<KosCoreContextProvider>
|
|
26
|
+
<KosTranslationProvider>
|
|
27
|
+
<% if (ddk) { %><ApplicationProvider><% } %>
|
|
28
|
+
<% if (ddk) { %><ApplicationComponentConfigurationProvider><% } %>
|
|
29
|
+
<div className="App">
|
|
30
|
+
<Router window={window}>
|
|
31
|
+
<Routes>
|
|
32
|
+
<Route index element={<MainView />} />
|
|
33
|
+
<Route path="/main" element={<MainView />} />
|
|
34
|
+
</Routes>
|
|
35
|
+
</Router>
|
|
36
|
+
</div>
|
|
37
|
+
<% if (ddk) { %></ApplicationComponentConfigurationProvider><% } %>
|
|
38
|
+
<% if (ddk) { %></ApplicationProvider><% } %>
|
|
39
|
+
</KosTranslationProvider>
|
|
40
|
+
</KosCoreContextProvider>
|
|
41
|
+
</Suspense>
|
|
42
|
+
</ErrorBoundaryWithFallback>
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
export default App;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./main-view";
|
package/src/generators/kos-ui-project/files/src/app/components/main-view/main-view.tsx.template
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import styled from "@emotion/styled";
|
|
2
|
+
import { kosComponent, KosLog } from '@kosdev-code/kos-ui-sdk';
|
|
3
|
+
|
|
4
|
+
const log = KosLog.createLogger({name: "main-view"})
|
|
5
|
+
log.debug('main-view component loaded');
|
|
6
|
+
|
|
7
|
+
const Main = styled.div`
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
align-items: center;
|
|
11
|
+
padding: 50px;
|
|
12
|
+
.logo {
|
|
13
|
+
width: 300px;
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
|
|
17
|
+
export const MainView: React.FunctionComponent = kosComponent(
|
|
18
|
+
() => {
|
|
19
|
+
return (
|
|
20
|
+
<Main>
|
|
21
|
+
<div className="logo">
|
|
22
|
+
<img src="./assets/kos-logo.svg"></img>
|
|
23
|
+
</div>
|
|
24
|
+
<h1>Welcome to kOS</h1>
|
|
25
|
+
<h2>Main View</h2>
|
|
26
|
+
|
|
27
|
+
</Main>
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Application, DDKModels } from '@kosdev-code/kos-ddk-models';
|
|
2
|
+
import { KosModelRegistry } from '@kosdev-code/kos-dispense-sdk';
|
|
3
|
+
|
|
4
|
+
import { initKosProvider, registerLegacyModel } from '@kosdev-code/kos-ui-sdk';
|
|
5
|
+
|
|
6
|
+
KosModelRegistry.dispense.models().model(Application);
|
|
7
|
+
Object.keys(DDKModels).forEach((key) => {
|
|
8
|
+
const model = DDKModels[key];
|
|
9
|
+
registerLegacyModel(KosModelRegistry)(key, model);
|
|
10
|
+
});
|
|
11
|
+
const { KosCoreContextProvider } = initKosProvider();
|
|
12
|
+
|
|
13
|
+
export { KosCoreContextProvider };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg id="kos_logo_full" data-name="kos_logo_full" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41.58 16.95">
|
|
3
|
+
<path d="m21.49,12.39c-.7-.38-1.25-.91-1.64-1.59-.4-.68-.59-1.45-.59-2.32s.2-1.64.59-2.32c.4-.68.94-1.21,1.64-1.59.7-.38,1.49-.57,2.38-.57s1.68.19,2.38.57c.7.38,1.25.91,1.64,1.59.4.68.59,1.45.59,2.32s-.2,1.64-.59,2.32c-.4.68-.94,1.21-1.64,1.59-.7.38-1.49.57-2.38.57s-1.68-.19-2.38-.57Zm3.76-1.49c.4-.24.72-.56.95-.98.23-.42.34-.9.34-1.43s-.11-1.01-.34-1.43c-.23-.42-.54-.75-.95-.98-.4-.24-.86-.35-1.37-.35s-.97.12-1.37.35c-.4.24-.72.56-.95.98-.23.42-.34.9-.34,1.43s.11,1.01.34,1.43c.23.42.54.75.95.98.4.24.86.35,1.37.35s.97-.12,1.37-.35Zm6.34,1.67c-.73-.24-1.32-.56-1.76-.98l1.16-1.42c.81.72,1.77,1.08,2.89,1.08.51,0,.92-.1,1.24-.29.31-.19.47-.43.47-.71,0-.21-.09-.38-.28-.53-.18-.14-.5-.26-.94-.35l-1.84-.35c-.8-.15-1.4-.43-1.79-.83-.4-.4-.59-.91-.59-1.51,0-.54.16-1.02.47-1.42.32-.4.76-.71,1.32-.93s1.2-.32,1.91-.32c.67,0,1.32.1,1.93.29s1.15.49,1.6.9l-1.08,1.38c-.76-.62-1.6-.92-2.51-.92-.49,0-.89.08-1.22.25-.32.17-.49.38-.49.64,0,.17.08.32.25.44.16.13.48.24.94.32l1.7.31c.85.16,1.49.46,1.91.91.43.44.64.97.64,1.59,0,.55-.15,1.04-.44,1.46s-.71.75-1.25.98-1.17.35-1.88.35c-.86,0-1.65-.12-2.38-.35ZM41.5,1c0-.55-.46-1-1.01-1H1C.45,0,0,.45,0,1v14.95c0,.55.45,1,1,1h15.2v-.02s.06.02.1.02h24.29c.55,0,1-.45.99-1l-.08-14.95Zm-25.21,14.95l-.09-14.95h24.3s.09,14.95.09,14.95h-24.3Zm-8.34-7.1l-1.66,1.64v2.32h-1.88V4.16h1.88v4.09l4.1-4.09h2.27l-3.42,3.4,3.62,5.24h-2.23l-2.69-3.96Z"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StrictMode } from "react";
|
|
2
|
+
import * as ReactDOM from "react-dom/client";
|
|
3
|
+
|
|
4
|
+
import App from "./app/app";
|
|
5
|
+
|
|
6
|
+
const root = ReactDOM.createRoot(
|
|
7
|
+
document.getElementById("root") as HTMLElement
|
|
8
|
+
);
|
|
9
|
+
root.render(
|
|
10
|
+
<StrictMode>
|
|
11
|
+
<App />
|
|
12
|
+
</StrictMode>
|
|
13
|
+
);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<title><%= name %></title>
|
|
6
|
+
<base href="./" />
|
|
7
|
+
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
9
|
+
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { composePlugins, withNx } from '@nx/webpack';
|
|
2
|
+
import { withReact } from '@nx/react';
|
|
3
|
+
import * as webpack from 'webpack';
|
|
4
|
+
import { withModuleFederation } from '@nx/react/module-federation';
|
|
5
|
+
|
|
6
|
+
import baseConfig from './module-federation.config';
|
|
7
|
+
|
|
8
|
+
import * as dotenv from 'dotenv';
|
|
9
|
+
|
|
10
|
+
dotenv.config({
|
|
11
|
+
path: '.env',
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
const config = {
|
|
15
|
+
...baseConfig,
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
function getKosEnv() {
|
|
19
|
+
const kosKeys = Object.keys(process.env).filter((key) =>
|
|
20
|
+
key.startsWith('KOS_')
|
|
21
|
+
);
|
|
22
|
+
return kosKeys;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// Nx plugins for webpack to build config object from Nx options and context.
|
|
26
|
+
export default composePlugins(
|
|
27
|
+
withNx({}),
|
|
28
|
+
withReact(),
|
|
29
|
+
withModuleFederation(config),
|
|
30
|
+
(config, { options, context }) => {
|
|
31
|
+
if (config) {
|
|
32
|
+
config.resolve = config.resolve || {};
|
|
33
|
+
config.resolve.fallback = {
|
|
34
|
+
...config.resolve.fallback,
|
|
35
|
+
path: false,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
config.mode = (process.env.NODE_ENV || config.mode) as any;
|
|
39
|
+
// customize webpack config here
|
|
40
|
+
config?.plugins?.push(
|
|
41
|
+
new webpack.EnvironmentPlugin(['NODE_ENV', ...getKosEnv()])
|
|
42
|
+
);
|
|
43
|
+
return config;
|
|
44
|
+
}
|
|
45
|
+
);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Tree } from "@nx/devkit";
|
|
2
|
+
import { KosUiProjectGeneratorSchema } from "./schema";
|
|
3
|
+
export declare function kosUiProjectGenerator(tree: Tree, options: KosUiProjectGeneratorSchema): Promise<void>;
|
|
4
|
+
export default kosUiProjectGenerator;
|
|
5
|
+
//# sourceMappingURL=generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-ui-project/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,IAAI,EAEL,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAIvD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,2BAA2B,iBAqJrC;AAED,eAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.kosUiProjectGenerator = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const eslint_1 = require("@nx/eslint");
|
|
6
|
+
const react_1 = require("@nx/react");
|
|
7
|
+
const path = require("path");
|
|
8
|
+
const normalize_value_1 = require("../kos-model/lib/normalize-value");
|
|
9
|
+
async function kosUiProjectGenerator(tree, options) {
|
|
10
|
+
const normalizedOptions = (0, normalize_value_1.normalizeAllValues)({
|
|
11
|
+
name: options.name,
|
|
12
|
+
});
|
|
13
|
+
const normalized = {
|
|
14
|
+
...normalizedOptions,
|
|
15
|
+
template: "",
|
|
16
|
+
directory: options.directory,
|
|
17
|
+
projectName: options.name,
|
|
18
|
+
ddk: options.ddk,
|
|
19
|
+
uiType: options.uiType ?? "kos.ui",
|
|
20
|
+
};
|
|
21
|
+
const appUiName = `${normalized.nameDashCase}`;
|
|
22
|
+
const appDir = path.join(options.directory || "apps", `${appUiName}`);
|
|
23
|
+
if (options.internal) {
|
|
24
|
+
await (0, react_1.applicationGenerator)(tree, {
|
|
25
|
+
strict: true,
|
|
26
|
+
e2eTestRunner: "none",
|
|
27
|
+
directory: appDir,
|
|
28
|
+
linter: eslint_1.Linter.EsLint,
|
|
29
|
+
bundler: "vite",
|
|
30
|
+
unitTestRunner: "none",
|
|
31
|
+
name: `${appUiName}`,
|
|
32
|
+
style: "@emotion/styled",
|
|
33
|
+
projectNameAndRootFormat: "as-provided",
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
await (0, react_1.hostGenerator)(tree, {
|
|
38
|
+
strict: true,
|
|
39
|
+
e2eTestRunner: "none",
|
|
40
|
+
directory: appDir,
|
|
41
|
+
linter: eslint_1.Linter.EsLint,
|
|
42
|
+
unitTestRunner: "none",
|
|
43
|
+
name: `${appUiName}`,
|
|
44
|
+
style: "@emotion/styled",
|
|
45
|
+
dynamic: true,
|
|
46
|
+
projectNameAndRootFormat: "as-provided",
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, normalized.projectName);
|
|
50
|
+
const archivePath = normalized.directory || "packages";
|
|
51
|
+
const externalJson = {
|
|
52
|
+
kab: {
|
|
53
|
+
command: `node tools/scripts/kabtool.mjs build ${normalized.nameDashCase} && node tools/scripts/kabtool.mjs list ${normalized.nameDashCase} `,
|
|
54
|
+
options: {
|
|
55
|
+
outputPath: `dist/archives/${archivePath}/${normalized.nameDashCase}/`,
|
|
56
|
+
zipName: "ui.zip",
|
|
57
|
+
kabName: `${normalized.nameDashCase}.kab`,
|
|
58
|
+
},
|
|
59
|
+
dependsOn: ["zip"],
|
|
60
|
+
},
|
|
61
|
+
zip: {
|
|
62
|
+
command: `node tools/scripts/archiver.js ${normalized.nameDashCase}`,
|
|
63
|
+
options: {
|
|
64
|
+
outputPath: `dist/archives/${archivePath}/${normalized.nameDashCase}/`,
|
|
65
|
+
zipName: "ui.zip",
|
|
66
|
+
},
|
|
67
|
+
dependsOn: ["build"],
|
|
68
|
+
},
|
|
69
|
+
descriptor: {
|
|
70
|
+
command: `node tools/scripts/descriptor.mjs ${appUiName}`,
|
|
71
|
+
options: {
|
|
72
|
+
outputPath: `dist/apps/${appUiName}`,
|
|
73
|
+
fileName: "descriptor.json",
|
|
74
|
+
},
|
|
75
|
+
dependsOn: ["build"],
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
if (options.internal) {
|
|
79
|
+
externalJson.copyKab = {
|
|
80
|
+
command: `node tools/scripts/copykab.js ${normalized.nameDashCase}`,
|
|
81
|
+
options: {
|
|
82
|
+
outputPath: "$STUDIO_ROOT/tools_dir/kab",
|
|
83
|
+
kabPath: `dist/archives/${archivePath}/${normalized.nameDashCase}`,
|
|
84
|
+
kabName: `${normalized.nameDashCase}.kab`,
|
|
85
|
+
},
|
|
86
|
+
dependsOn: ["kab"],
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
(0, devkit_1.updateJson)(tree, `${projectConfiguration.root}/project.json`, (json) => {
|
|
90
|
+
json.targets = {
|
|
91
|
+
...json.targets,
|
|
92
|
+
...externalJson,
|
|
93
|
+
build: {
|
|
94
|
+
...json.targets.build,
|
|
95
|
+
options: {
|
|
96
|
+
...json.targets.build.options,
|
|
97
|
+
baseHref: "./",
|
|
98
|
+
},
|
|
99
|
+
configurations: {
|
|
100
|
+
...json.targets.build.configurations,
|
|
101
|
+
development: {
|
|
102
|
+
...json.targets.build.configurations.development,
|
|
103
|
+
baseHref: "/",
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
return json;
|
|
109
|
+
});
|
|
110
|
+
(0, devkit_1.generateFiles)(tree, path.join(__dirname, "files"), projectConfiguration.root, normalized);
|
|
111
|
+
if (options.internal) {
|
|
112
|
+
(0, devkit_1.generateFiles)(tree, path.join(__dirname, "internal"), projectConfiguration.root, normalized);
|
|
113
|
+
tree.delete(`${projectConfiguration.root}/webpack.config.ts`);
|
|
114
|
+
}
|
|
115
|
+
if (options.ddk) {
|
|
116
|
+
(0, devkit_1.addDependenciesToPackageJson)(tree, {
|
|
117
|
+
"@kosdev-code/kos-ddk": "latest",
|
|
118
|
+
"@kosdev-code/kos-ddk-components": "latest",
|
|
119
|
+
"@kosdev-code/kos-ddk-model-components": "latest",
|
|
120
|
+
"@kosdev-code/kos-ddk-models": "latest",
|
|
121
|
+
"@kosdev-code/kos-ddk-styles": "latest",
|
|
122
|
+
"@kosdev-code/kos-ui-plugin": "latest",
|
|
123
|
+
"@kosdev-code/kos-cms-sdk": "latest",
|
|
124
|
+
"@kosdev-code/kos-cms-ui": "latest",
|
|
125
|
+
"@kosdev-code/kos-cms-model": "latest",
|
|
126
|
+
}, {});
|
|
127
|
+
}
|
|
128
|
+
tree.delete(`${projectConfiguration.root}/src/app/nx-welcome.tsx`);
|
|
129
|
+
tree.delete(`${projectConfiguration.root}/src/index.ts`);
|
|
130
|
+
tree.delete(`${projectConfiguration.root}/src/app/app.spec.tsx`);
|
|
131
|
+
await (0, devkit_1.formatFiles)(tree);
|
|
132
|
+
}
|
|
133
|
+
exports.kosUiProjectGenerator = kosUiProjectGenerator;
|
|
134
|
+
exports.default = kosUiProjectGenerator;
|
|
135
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-ui-project/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/// <reference types="vitest" />
|
|
2
|
+
import { defineConfig } from "vite";
|
|
3
|
+
import react from "@vitejs/plugin-react";
|
|
4
|
+
import viteTsConfigPaths from "vite-tsconfig-paths";
|
|
5
|
+
import EnvironmentPlugin from "vite-plugin-environment";
|
|
6
|
+
|
|
7
|
+
export default defineConfig({
|
|
8
|
+
cacheDir: "../../node_modules/.vite/<%= name %>",
|
|
9
|
+
base: "./",
|
|
10
|
+
server: {
|
|
11
|
+
port: 4200,
|
|
12
|
+
host: "localhost",
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
preview: {
|
|
16
|
+
port: 4300,
|
|
17
|
+
host: "localhost",
|
|
18
|
+
},
|
|
19
|
+
build: {
|
|
20
|
+
target: 'esnext',
|
|
21
|
+
},
|
|
22
|
+
|
|
23
|
+
plugins: [
|
|
24
|
+
EnvironmentPlugin("all", { prefix: "KOS_" }),
|
|
25
|
+
EnvironmentPlugin(["NODE_ENV"]),
|
|
26
|
+
react(),
|
|
27
|
+
viteTsConfigPaths({
|
|
28
|
+
root: "../../",
|
|
29
|
+
}),
|
|
30
|
+
],
|
|
31
|
+
|
|
32
|
+
// Uncomment this if you are using workers.
|
|
33
|
+
// worker: {
|
|
34
|
+
// plugins: [
|
|
35
|
+
// viteTsConfigPaths({
|
|
36
|
+
// root: '../../',
|
|
37
|
+
// }),
|
|
38
|
+
// ],
|
|
39
|
+
// },
|
|
40
|
+
|
|
41
|
+
test: {
|
|
42
|
+
globals: true,
|
|
43
|
+
cache: {
|
|
44
|
+
dir: "../../node_modules/.vitest",
|
|
45
|
+
},
|
|
46
|
+
environment: "jsdom",
|
|
47
|
+
include: ["src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
48
|
+
},
|
|
49
|
+
});
|