@bleedingdev/modern-js-create 3.2.0-ultramodern.99 → 3.4.0-ultramodern.0

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.
Files changed (179) hide show
  1. package/README.md +281 -106
  2. package/bin/run.js +1 -0
  3. package/dist/cjs/create-package-root.cjs +63 -0
  4. package/dist/cjs/index.cjs +658 -0
  5. package/dist/cjs/locale/en.cjs +101 -0
  6. package/dist/cjs/locale/index.cjs +50 -0
  7. package/dist/cjs/locale/zh.cjs +101 -0
  8. package/dist/cjs/ultramodern-package-source.cjs +135 -0
  9. package/dist/cjs/ultramodern-workspace/add-vertical.cjs +603 -0
  10. package/dist/cjs/ultramodern-workspace/app-files.cjs +223 -0
  11. package/dist/cjs/ultramodern-workspace/codesmith.cjs +134 -0
  12. package/dist/cjs/ultramodern-workspace/contracts.cjs +837 -0
  13. package/dist/cjs/ultramodern-workspace/demo-components.cjs +422 -0
  14. package/dist/cjs/ultramodern-workspace/descriptors.cjs +222 -0
  15. package/dist/cjs/ultramodern-workspace/effect-api.cjs +952 -0
  16. package/dist/cjs/ultramodern-workspace/fs-io.cjs +191 -0
  17. package/dist/cjs/ultramodern-workspace/generation-result.cjs +158 -0
  18. package/dist/cjs/ultramodern-workspace/index.cjs +51 -0
  19. package/dist/cjs/ultramodern-workspace/locales.cjs +173 -0
  20. package/dist/cjs/ultramodern-workspace/module-federation.cjs +487 -0
  21. package/dist/cjs/ultramodern-workspace/naming.cjs +161 -0
  22. package/dist/cjs/ultramodern-workspace/overlays.cjs +120 -0
  23. package/dist/cjs/ultramodern-workspace/package-json.cjs +406 -0
  24. package/dist/cjs/ultramodern-workspace/package-source.cjs +59 -0
  25. package/dist/cjs/ultramodern-workspace/policy.cjs +248 -0
  26. package/dist/cjs/ultramodern-workspace/public-api.cjs +47 -0
  27. package/dist/cjs/ultramodern-workspace/public-surface.cjs +268 -0
  28. package/dist/cjs/ultramodern-workspace/routes.cjs +375 -0
  29. package/dist/cjs/ultramodern-workspace/types.cjs +61 -0
  30. package/dist/cjs/ultramodern-workspace/versions.cjs +161 -0
  31. package/dist/cjs/ultramodern-workspace/workspace-scripts.cjs +154 -0
  32. package/dist/cjs/ultramodern-workspace/write-workspace.cjs +197 -0
  33. package/dist/esm/create-package-root.js +14 -0
  34. package/dist/esm/index.js +621 -0
  35. package/dist/esm/locale/en.js +63 -0
  36. package/dist/esm/locale/index.js +9 -0
  37. package/dist/esm/locale/zh.js +63 -0
  38. package/dist/esm/ultramodern-package-source.js +63 -0
  39. package/dist/esm/ultramodern-workspace/add-vertical.js +511 -0
  40. package/dist/esm/ultramodern-workspace/app-files.js +149 -0
  41. package/dist/esm/ultramodern-workspace/codesmith.js +86 -0
  42. package/dist/esm/ultramodern-workspace/contracts.js +742 -0
  43. package/dist/esm/ultramodern-workspace/demo-components.js +363 -0
  44. package/dist/esm/ultramodern-workspace/descriptors.js +133 -0
  45. package/dist/esm/ultramodern-workspace/effect-api.js +854 -0
  46. package/dist/esm/ultramodern-workspace/fs-io.js +90 -0
  47. package/dist/esm/ultramodern-workspace/generation-result.js +102 -0
  48. package/dist/esm/ultramodern-workspace/index.js +3 -0
  49. package/dist/esm/ultramodern-workspace/locales.js +122 -0
  50. package/dist/esm/ultramodern-workspace/module-federation.js +415 -0
  51. package/dist/esm/ultramodern-workspace/naming.js +71 -0
  52. package/dist/esm/ultramodern-workspace/overlays.js +79 -0
  53. package/dist/esm/ultramodern-workspace/package-json.js +338 -0
  54. package/dist/esm/ultramodern-workspace/package-source.js +21 -0
  55. package/dist/esm/ultramodern-workspace/policy.js +183 -0
  56. package/dist/esm/ultramodern-workspace/public-api.js +2 -0
  57. package/dist/esm/ultramodern-workspace/public-surface.js +183 -0
  58. package/dist/esm/ultramodern-workspace/routes.js +280 -0
  59. package/dist/esm/ultramodern-workspace/types.js +16 -0
  60. package/dist/esm/ultramodern-workspace/versions.js +36 -0
  61. package/dist/esm/ultramodern-workspace/workspace-scripts.js +92 -0
  62. package/dist/esm/ultramodern-workspace/write-workspace.js +143 -0
  63. package/dist/esm-node/create-package-root.js +15 -0
  64. package/dist/esm-node/index.js +622 -0
  65. package/dist/esm-node/locale/en.js +64 -0
  66. package/dist/esm-node/locale/index.js +10 -0
  67. package/dist/esm-node/locale/zh.js +64 -0
  68. package/dist/esm-node/ultramodern-package-source.js +64 -0
  69. package/dist/esm-node/ultramodern-workspace/add-vertical.js +512 -0
  70. package/dist/esm-node/ultramodern-workspace/app-files.js +150 -0
  71. package/dist/esm-node/ultramodern-workspace/codesmith.js +87 -0
  72. package/dist/esm-node/ultramodern-workspace/contracts.js +743 -0
  73. package/dist/esm-node/ultramodern-workspace/demo-components.js +364 -0
  74. package/dist/esm-node/ultramodern-workspace/descriptors.js +134 -0
  75. package/dist/esm-node/ultramodern-workspace/effect-api.js +855 -0
  76. package/dist/esm-node/ultramodern-workspace/fs-io.js +91 -0
  77. package/dist/esm-node/ultramodern-workspace/generation-result.js +103 -0
  78. package/dist/esm-node/ultramodern-workspace/index.js +4 -0
  79. package/dist/esm-node/ultramodern-workspace/locales.js +123 -0
  80. package/dist/esm-node/ultramodern-workspace/module-federation.js +416 -0
  81. package/dist/esm-node/ultramodern-workspace/naming.js +72 -0
  82. package/dist/esm-node/ultramodern-workspace/overlays.js +80 -0
  83. package/dist/esm-node/ultramodern-workspace/package-json.js +339 -0
  84. package/dist/esm-node/ultramodern-workspace/package-source.js +22 -0
  85. package/dist/esm-node/ultramodern-workspace/policy.js +184 -0
  86. package/dist/esm-node/ultramodern-workspace/public-api.js +3 -0
  87. package/dist/esm-node/ultramodern-workspace/public-surface.js +184 -0
  88. package/dist/esm-node/ultramodern-workspace/routes.js +281 -0
  89. package/dist/esm-node/ultramodern-workspace/types.js +17 -0
  90. package/dist/esm-node/ultramodern-workspace/versions.js +37 -0
  91. package/dist/esm-node/ultramodern-workspace/workspace-scripts.js +93 -0
  92. package/dist/esm-node/ultramodern-workspace/write-workspace.js +144 -0
  93. package/dist/types/create-package-root.d.ts +1 -0
  94. package/dist/types/locale/en.d.ts +12 -8
  95. package/dist/types/locale/index.d.ts +125 -2
  96. package/dist/types/locale/zh.d.ts +12 -8
  97. package/dist/types/ultramodern-package-source.d.ts +28 -0
  98. package/dist/types/ultramodern-workspace/add-vertical.d.ts +36 -0
  99. package/dist/types/ultramodern-workspace/app-files.d.ts +14 -0
  100. package/dist/types/ultramodern-workspace/codesmith.d.ts +53 -0
  101. package/dist/types/ultramodern-workspace/contracts.d.ts +21 -0
  102. package/dist/types/ultramodern-workspace/demo-components.d.ts +9 -0
  103. package/dist/types/ultramodern-workspace/descriptors.d.ts +39 -0
  104. package/dist/types/ultramodern-workspace/effect-api.d.ts +73 -0
  105. package/dist/types/ultramodern-workspace/fs-io.d.ts +18 -0
  106. package/dist/types/ultramodern-workspace/generation-result.d.ts +14 -0
  107. package/dist/types/ultramodern-workspace/index.d.ts +4 -0
  108. package/dist/types/ultramodern-workspace/locales.d.ts +183 -0
  109. package/dist/types/ultramodern-workspace/module-federation.d.ts +16 -0
  110. package/dist/types/ultramodern-workspace/naming.d.ts +16 -0
  111. package/dist/types/ultramodern-workspace/overlays.d.ts +6 -0
  112. package/dist/types/ultramodern-workspace/package-json.d.ts +12 -0
  113. package/dist/types/ultramodern-workspace/package-source.d.ts +2 -0
  114. package/dist/types/ultramodern-workspace/policy.d.ts +60 -0
  115. package/dist/types/ultramodern-workspace/public-api.d.ts +3 -0
  116. package/dist/types/ultramodern-workspace/public-surface.d.ts +37 -0
  117. package/dist/types/ultramodern-workspace/routes.d.ts +25 -0
  118. package/dist/types/ultramodern-workspace/types.d.ts +197 -0
  119. package/dist/types/ultramodern-workspace/versions.d.ts +40 -0
  120. package/dist/types/ultramodern-workspace/workspace-scripts.d.ts +10 -0
  121. package/dist/types/ultramodern-workspace/write-workspace.d.ts +4 -0
  122. package/package.json +58 -15
  123. package/template-workspace/.github/workflows/ultramodern-workspace-gates.yml.handlebars +23 -10
  124. package/template-workspace/.mise.toml.handlebars +1 -0
  125. package/template-workspace/{AGENTS.md → AGENTS.md.handlebars} +20 -9
  126. package/template-workspace/README.md.handlebars +85 -14
  127. package/template-workspace/lefthook.yml +18 -4
  128. package/template-workspace/pnpm-workspace.yaml.handlebars +45 -0
  129. package/template-workspace/scripts/bootstrap-agent-skills.mjs +69 -75
  130. package/template-workspace/scripts/setup-agent-reference-repos.mjs +8 -6
  131. package/templates/app/shell-frame.tsx +49 -0
  132. package/templates/app/ultramodern-route-head.tsx.handlebars +142 -0
  133. package/templates/packages/shared-contracts-index.ts +466 -0
  134. package/templates/workspace-scripts/assert-mf-types.mjs.handlebars +69 -0
  135. package/templates/workspace-scripts/check-ultramodern-i18n-boundaries.mjs +9 -0
  136. package/templates/workspace-scripts/generate-public-surface-assets.mjs +529 -0
  137. package/templates/workspace-scripts/proof-cloudflare-version.mjs +125 -0
  138. package/templates/workspace-scripts/ultramodern-cloudflare-proof.mjs +851 -0
  139. package/templates/workspace-scripts/ultramodern-performance-readiness.config.mjs +7 -0
  140. package/templates/workspace-scripts/ultramodern-performance-readiness.mjs +223 -0
  141. package/templates/workspace-scripts/validate-ultramodern-workspace.mjs.handlebars +986 -0
  142. package/dist/index.js +0 -6625
  143. package/dist/types/ultramodern-workspace.d.ts +0 -31
  144. package/template/.agents/skills-lock.json +0 -34
  145. package/template/.browserslistrc +0 -4
  146. package/template/.codex/hooks.json +0 -16
  147. package/template/.github/renovate.json +0 -53
  148. package/template/.github/workflows/ultramodern-gates.yml.handlebars +0 -54
  149. package/template/.gitignore.handlebars +0 -30
  150. package/template/.mise.toml.handlebars +0 -2
  151. package/template/.nvmrc +0 -2
  152. package/template/AGENTS.md +0 -23
  153. package/template/README.md +0 -105
  154. package/template/api/effect/index.ts.handlebars +0 -34
  155. package/template/api/lambda/hello.ts.handlebars +0 -6
  156. package/template/config/public/locales/cs/translation.json +0 -39
  157. package/template/config/public/locales/en/translation.json +0 -39
  158. package/template/lefthook.yml +0 -10
  159. package/template/modern.config.ts.handlebars +0 -71
  160. package/template/oxfmt.config.ts +0 -15
  161. package/template/oxlint.config.ts +0 -19
  162. package/template/package.json.handlebars +0 -66
  163. package/template/pnpm-workspace.yaml +0 -29
  164. package/template/postcss.config.mjs.handlebars +0 -6
  165. package/template/rstest.config.mts +0 -5
  166. package/template/scripts/bootstrap-agent-skills.mjs +0 -228
  167. package/template/scripts/check-i18n-strings.mjs +0 -94
  168. package/template/scripts/validate-ultramodern.mjs.handlebars +0 -538
  169. package/template/shared/effect/api.ts.handlebars +0 -17
  170. package/template/src/modern-app-env.d.ts +0 -3
  171. package/template/src/modern.runtime.ts.handlebars +0 -23
  172. package/template/src/routes/[lang]/page.tsx.handlebars +0 -211
  173. package/template/src/routes/index.css.handlebars +0 -129
  174. package/template/src/routes/layout.tsx.handlebars +0 -10
  175. package/template/tailwind.config.ts.handlebars +0 -10
  176. package/template/tests/tsconfig.json +0 -7
  177. package/template/tests/ultramodern.contract.test.ts.handlebars +0 -78
  178. package/template/tsconfig.json +0 -120
  179. package/template-workspace/pnpm-workspace.yaml +0 -35
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ createAppEnvDts: ()=>createAppEnvDts,
32
+ createAppRuntimeConfig: ()=>createAppRuntimeConfig,
33
+ createAppStyles: ()=>createAppStyles,
34
+ createBoundaryDebugMetadata: ()=>createBoundaryDebugMetadata,
35
+ createCssTokenImport: ()=>createCssTokenImport,
36
+ createPostcssConfig: ()=>createPostcssConfig,
37
+ createRemoteStyles: ()=>createRemoteStyles,
38
+ createRouteHeadModule: ()=>createRouteHeadModule,
39
+ createSharedDesignTokensCss: ()=>createSharedDesignTokensCss,
40
+ createShellFrameComponent: ()=>createShellFrameComponent,
41
+ createShellStyles: ()=>createShellStyles,
42
+ createTailwindConfig: ()=>createTailwindConfig,
43
+ createTailwindImport: ()=>createTailwindImport
44
+ });
45
+ const external_descriptors_cjs_namespaceObject = require("./descriptors.cjs");
46
+ const external_fs_io_cjs_namespaceObject = require("./fs-io.cjs");
47
+ const external_naming_cjs_namespaceObject = require("./naming.cjs");
48
+ function createBoundaryDebugMetadata(scope, remotes = []) {
49
+ return {
50
+ appId: external_descriptors_cjs_namespaceObject.shellApp.id,
51
+ boundaries: [
52
+ external_descriptors_cjs_namespaceObject.shellApp,
53
+ ...remotes
54
+ ].map((app)=>({
55
+ appId: app.id,
56
+ label: app.displayName,
57
+ mfName: app.mfName,
58
+ ownerTeam: app.ownership.team,
59
+ packageName: (0, external_naming_cjs_namespaceObject.packageName)(scope, app.packageSuffix),
60
+ role: 'shell' === app.kind ? 'host' : 'vertical'
61
+ })),
62
+ schemaVersion: 1
63
+ };
64
+ }
65
+ function createAppEnvDts(app, remotes = []) {
66
+ const remoteModuleDeclarations = (0, external_descriptors_cjs_namespaceObject.resolveRemoteRefs)(app, remotes).flatMap((remote)=>Object.keys(remote.exposes ?? {}).filter((expose)=>'./Route' !== expose).map((expose)=>{
67
+ const moduleName = `${(0, external_descriptors_cjs_namespaceObject.remoteDependencyAlias)(remote)}/${expose.replace(/^\.\//u, '')}`;
68
+ return `declare module '${moduleName}' {
69
+ const Component: React.ComponentType<Record<string, never>>;
70
+ export default Component;
71
+ }
72
+ `;
73
+ })).join('\n');
74
+ const reactTypeReference = remoteModuleDeclarations ? "/// <reference types='react' />\n" : '';
75
+ const siteUrlDeclaration = 'declare const ULTRAMODERN_SITE_URL: string;';
76
+ return `${reactTypeReference}/// <reference types='@modern-js/app-tools/types' />
77
+
78
+ ${siteUrlDeclaration}
79
+ declare module '*.svg' {
80
+ const url: string;
81
+ export default url;
82
+ }
83
+ declare module '*.css';
84
+ ${remoteModuleDeclarations ? `\n${remoteModuleDeclarations}` : ''}`;
85
+ }
86
+ function createAppRuntimeConfig(app, scope, remotes = []) {
87
+ const pluginsConfig = 'shell' === app.kind ? ` plugins: [
88
+ ultramodernBoundaryDebuggerPlugin({
89
+ metadata: ${JSON.stringify(createBoundaryDebugMetadata(scope, remotes), null, 6).split('\n').join('\n ')},
90
+ }),
91
+ ],
92
+ ` : '';
93
+ return `import { defineRuntimeConfig } from '@modern-js/runtime';
94
+ ${'shell' === app.kind ? "import { ultramodernBoundaryDebuggerPlugin } from '@modern-js/runtime/boundary-debugger';\n" : ''}import { createInstance } from 'i18next';
95
+ import csResource from '../locales/cs/${(0, external_descriptors_cjs_namespaceObject.appI18nNamespace)(app)}.json';
96
+ import enResource from '../locales/en/${(0, external_descriptors_cjs_namespaceObject.appI18nNamespace)(app)}.json';
97
+ import { ultramodernRouteNamespace } from './routes/ultramodern-route-metadata';
98
+
99
+ type LocaleResource = string | { readonly [key: string]: LocaleResource };
100
+
101
+ const flattenLocaleResource = (
102
+ resource: LocaleResource,
103
+ prefix = '',
104
+ ): Record<string, string> => {
105
+ if (typeof resource === 'string') {
106
+ return prefix.length > 0 ? { [prefix]: resource } : {};
107
+ }
108
+
109
+ return Object.fromEntries(
110
+ Object.entries(resource).flatMap(([key, value]) => {
111
+ const nextKey = prefix.length > 0 ? \`\${prefix}.\${key}\` : key;
112
+ return typeof value === 'string'
113
+ ? [[nextKey, value]]
114
+ : Object.entries(flattenLocaleResource(value, nextKey));
115
+ }),
116
+ );
117
+ };
118
+
119
+ const i18nInstance = createInstance();
120
+ const resources = {
121
+ cs: { [ultramodernRouteNamespace]: flattenLocaleResource(csResource) },
122
+ en: { [ultramodernRouteNamespace]: flattenLocaleResource(enResource) },
123
+ } as const;
124
+
125
+ export default defineRuntimeConfig({
126
+ i18n: {
127
+ i18nInstance,
128
+ initOptions: {
129
+ defaultNS: ultramodernRouteNamespace,
130
+ fallbackLng: 'en',
131
+ interpolation: {
132
+ escapeValue: false,
133
+ },
134
+ ns: [ultramodernRouteNamespace, 'translation'],
135
+ resources,
136
+ supportedLngs: ['en', 'cs'],
137
+ },
138
+ },
139
+ ${pluginsConfig}
140
+ router: {
141
+ framework: 'tanstack',
142
+ },
143
+ });
144
+ `;
145
+ }
146
+ function createCssTokenImport(scope) {
147
+ return `@import '${(0, external_naming_cjs_namespaceObject.packageName)(scope, 'shared-design-tokens')}/tokens.css';\n`;
148
+ }
149
+ function createTailwindImport(prefix) {
150
+ return `@import 'tailwindcss' prefix(${prefix}) source(none);\n@source '..';\n`;
151
+ }
152
+ function createShellStyles(enableTailwind, scope) {
153
+ return `${enableTailwind ? createTailwindImport((0, external_naming_cjs_namespaceObject.tailwindPrefixForApp)(external_descriptors_cjs_namespaceObject.shellApp)) : ''}${createCssTokenImport(scope)}`;
154
+ }
155
+ function createRemoteStyles(enableTailwind, scope, app) {
156
+ return `${enableTailwind ? createTailwindImport((0, external_naming_cjs_namespaceObject.tailwindPrefixForApp)(app)) : ''}${createCssTokenImport(scope)}`;
157
+ }
158
+ function createAppStyles(enableTailwind, scope, app) {
159
+ return 'shell' === app.kind ? createShellStyles(enableTailwind, scope) : createRemoteStyles(enableTailwind, scope, app);
160
+ }
161
+ function createPostcssConfig() {
162
+ return `export default {
163
+ plugins: {
164
+ '@tailwindcss/postcss': {},
165
+ },
166
+ };
167
+ `;
168
+ }
169
+ function createTailwindConfig() {
170
+ return `import type { Config } from 'tailwindcss';
171
+
172
+ export default {} satisfies Config;
173
+ `;
174
+ }
175
+ function createSharedDesignTokensCss() {
176
+ return `@theme {
177
+ --color-um-accent: #2f8f68;
178
+ --color-um-canvas: #f1eadc;
179
+ --color-um-foreground: #133225;
180
+ --color-um-link: #166b4b;
181
+ --color-um-surface: #f6fbf7;
182
+ }
183
+ `;
184
+ }
185
+ function createRouteHeadModule(app) {
186
+ return (0, external_fs_io_cjs_namespaceObject.renderFileTemplate)('app/ultramodern-route-head.tsx', {
187
+ appDisplayNameJson: JSON.stringify(app.displayName)
188
+ });
189
+ }
190
+ function createShellFrameComponent() {
191
+ return (0, external_fs_io_cjs_namespaceObject.readFileTemplate)('app/shell-frame.tsx');
192
+ }
193
+ exports.createAppEnvDts = __webpack_exports__.createAppEnvDts;
194
+ exports.createAppRuntimeConfig = __webpack_exports__.createAppRuntimeConfig;
195
+ exports.createAppStyles = __webpack_exports__.createAppStyles;
196
+ exports.createBoundaryDebugMetadata = __webpack_exports__.createBoundaryDebugMetadata;
197
+ exports.createCssTokenImport = __webpack_exports__.createCssTokenImport;
198
+ exports.createPostcssConfig = __webpack_exports__.createPostcssConfig;
199
+ exports.createRemoteStyles = __webpack_exports__.createRemoteStyles;
200
+ exports.createRouteHeadModule = __webpack_exports__.createRouteHeadModule;
201
+ exports.createSharedDesignTokensCss = __webpack_exports__.createSharedDesignTokensCss;
202
+ exports.createShellFrameComponent = __webpack_exports__.createShellFrameComponent;
203
+ exports.createShellStyles = __webpack_exports__.createShellStyles;
204
+ exports.createTailwindConfig = __webpack_exports__.createTailwindConfig;
205
+ exports.createTailwindImport = __webpack_exports__.createTailwindImport;
206
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
207
+ "createAppEnvDts",
208
+ "createAppRuntimeConfig",
209
+ "createAppStyles",
210
+ "createBoundaryDebugMetadata",
211
+ "createCssTokenImport",
212
+ "createPostcssConfig",
213
+ "createRemoteStyles",
214
+ "createRouteHeadModule",
215
+ "createSharedDesignTokensCss",
216
+ "createShellFrameComponent",
217
+ "createShellStyles",
218
+ "createTailwindConfig",
219
+ "createTailwindImport"
220
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
221
+ Object.defineProperty(exports, '__esModule', {
222
+ value: true
223
+ });
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.n = (module)=>{
5
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
+ __webpack_require__.d(getter, {
7
+ a: getter
8
+ });
9
+ return getter;
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.d = (exports1, getters, values)=>{
14
+ var define = (defs, kind)=>{
15
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
16
+ enumerable: true,
17
+ [kind]: defs[key]
18
+ });
19
+ };
20
+ define(getters, "get");
21
+ define(values, "value");
22
+ };
23
+ })();
24
+ (()=>{
25
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
26
+ })();
27
+ (()=>{
28
+ __webpack_require__.r = (exports1)=>{
29
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
30
+ value: 'Module'
31
+ });
32
+ Object.defineProperty(exports1, '__esModule', {
33
+ value: true
34
+ });
35
+ };
36
+ })();
37
+ var __webpack_exports__ = {};
38
+ __webpack_require__.r(__webpack_exports__);
39
+ __webpack_require__.d(__webpack_exports__, {
40
+ default: ()=>ultramodernCodeSmithAdapter
41
+ });
42
+ const external_node_path_namespaceObject = require("node:path");
43
+ var external_node_path_default = /*#__PURE__*/ __webpack_require__.n(external_node_path_namespaceObject);
44
+ const external_public_api_cjs_namespaceObject = require("./public-api.cjs");
45
+ async function ultramodernCodeSmithAdapter(context, runtime) {
46
+ const config = context.config ?? {};
47
+ const mode = resolveMode(config);
48
+ const basePath = external_node_path_default().resolve(runtime?.outputPath ?? context.materials?.default?.basePath ?? process.cwd());
49
+ const modernVersion = config.modernVersion ?? 'latest';
50
+ const packageSource = resolvePackageSource(config);
51
+ const enableTailwind = config.enableTailwind ?? config.tailwind;
52
+ if (config.dryRun && 'vertical' !== mode) throw new Error('UltraModern CodeSmith dry-run is supported only in vertical mode.');
53
+ const name = await resolveName(context, config, mode);
54
+ const result = 'workspace' === mode ? (0, external_public_api_cjs_namespaceObject.generateUltramodernWorkspace)({
55
+ targetDir: resolveTargetDir(basePath, config.targetDir, name),
56
+ packageName: name,
57
+ modernVersion,
58
+ enableTailwind,
59
+ overlays: config.overlays,
60
+ packageSource
61
+ }) : runVerticalMode({
62
+ workspaceRoot: resolveWorkspaceRoot(basePath, config.workspaceRoot),
63
+ name,
64
+ modernVersion,
65
+ enableTailwind,
66
+ overlays: config.overlays,
67
+ packageSource
68
+ }, Boolean(config.dryRun));
69
+ context.data ??= {};
70
+ context.data.ultramodernResult = result;
71
+ if (config.logResult) {
72
+ const logger = context.logger ?? runtime?.logger;
73
+ logger?.info?.(JSON.stringify(result, null, 2));
74
+ }
75
+ return result;
76
+ }
77
+ function resolveMode(config) {
78
+ if (void 0 === config.mode) return 'workspace';
79
+ if ('workspace' !== config.mode && 'vertical' !== config.mode) throw new Error(`Unsupported UltraModern CodeSmith mode "${String(config.mode)}". Use "workspace" or "vertical".`);
80
+ return config.mode;
81
+ }
82
+ async function resolveName(context, config, label) {
83
+ const configuredName = config.name ?? config.targetName ?? config.packageName;
84
+ if (configuredName) return configuredName;
85
+ const prompt = context.prompt ?? context.inquirer?.prompt;
86
+ if (!prompt) throw new Error(`Missing UltraModern ${label} name. Pass config.name for non-interactive CodeSmith usage.`);
87
+ const answer = await prompt([
88
+ {
89
+ type: 'input',
90
+ name: 'name',
91
+ message: `UltraModern ${label} name`
92
+ }
93
+ ]);
94
+ const promptedName = answer.name;
95
+ if ('string' != typeof promptedName || 0 === promptedName.length) throw new Error(`Missing UltraModern ${label} name.`);
96
+ return promptedName;
97
+ }
98
+ function resolveTargetDir(basePath, targetDir, name) {
99
+ return external_node_path_default().resolve(basePath, targetDir ?? name);
100
+ }
101
+ function resolveWorkspaceRoot(basePath, workspaceRoot) {
102
+ return external_node_path_default().resolve(basePath, workspaceRoot ?? '.');
103
+ }
104
+ function resolvePackageSource(config) {
105
+ const packageSource = {
106
+ ...config.packageSource ?? {},
107
+ ...config.packageSourceStrategy ? {
108
+ strategy: config.packageSourceStrategy
109
+ } : {},
110
+ ...config.modernPackageVersion ? {
111
+ modernPackageVersion: config.modernPackageVersion
112
+ } : {},
113
+ ...config.registry ? {
114
+ registry: config.registry
115
+ } : {},
116
+ ...config.aliasScope ? {
117
+ aliasScope: config.aliasScope
118
+ } : {},
119
+ ...config.aliasPackageNamePrefix ? {
120
+ aliasPackageNamePrefix: config.aliasPackageNamePrefix
121
+ } : {}
122
+ };
123
+ return Object.keys(packageSource).length > 0 ? packageSource : void 0;
124
+ }
125
+ function runVerticalMode(options, dryRun) {
126
+ return dryRun ? (0, external_public_api_cjs_namespaceObject.planUltramodernVertical)(options) : (0, external_public_api_cjs_namespaceObject.addUltramodernVertical)(options);
127
+ }
128
+ exports["default"] = __webpack_exports__["default"];
129
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
130
+ "default"
131
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
132
+ Object.defineProperty(exports, '__esModule', {
133
+ value: true
134
+ });