@bleedingdev/modern-js-create 3.2.0-ultramodern.12 → 3.2.0-ultramodern.121
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 +167 -72
- package/bin/run.js +0 -0
- package/dist/cjs/create-package-root.cjs +63 -0
- package/dist/cjs/index.cjs +528 -0
- package/dist/cjs/locale/en.cjs +93 -0
- package/dist/cjs/locale/index.cjs +50 -0
- package/dist/cjs/locale/zh.cjs +93 -0
- package/dist/cjs/ultramodern-package-source.cjs +135 -0
- package/dist/cjs/ultramodern-workspace/add-vertical.cjs +337 -0
- package/dist/cjs/ultramodern-workspace/app-files.cjs +223 -0
- package/dist/cjs/ultramodern-workspace/contracts.cjs +836 -0
- package/dist/cjs/ultramodern-workspace/demo-components.cjs +422 -0
- package/dist/cjs/ultramodern-workspace/descriptors.cjs +222 -0
- package/dist/cjs/ultramodern-workspace/effect-api.cjs +952 -0
- package/dist/cjs/ultramodern-workspace/fs-io.cjs +191 -0
- package/dist/cjs/ultramodern-workspace/index.cjs +48 -0
- package/dist/cjs/ultramodern-workspace/locales.cjs +173 -0
- package/dist/cjs/ultramodern-workspace/module-federation.cjs +487 -0
- package/dist/cjs/ultramodern-workspace/naming.cjs +161 -0
- package/dist/cjs/ultramodern-workspace/package-json.cjs +406 -0
- package/dist/cjs/ultramodern-workspace/package-source.cjs +59 -0
- package/dist/cjs/ultramodern-workspace/policy.cjs +248 -0
- package/dist/cjs/ultramodern-workspace/public-surface.cjs +268 -0
- package/dist/cjs/ultramodern-workspace/routes.cjs +375 -0
- package/dist/cjs/ultramodern-workspace/types.cjs +61 -0
- package/dist/cjs/ultramodern-workspace/versions.cjs +153 -0
- package/dist/cjs/ultramodern-workspace/workspace-scripts.cjs +153 -0
- package/dist/cjs/ultramodern-workspace/write-workspace.cjs +175 -0
- package/dist/esm/create-package-root.js +14 -0
- package/dist/esm/index.js +491 -0
- package/dist/esm/locale/en.js +55 -0
- package/dist/esm/locale/index.js +9 -0
- package/dist/esm/locale/zh.js +55 -0
- package/dist/esm/ultramodern-package-source.js +63 -0
- package/dist/esm/ultramodern-workspace/add-vertical.js +252 -0
- package/dist/esm/ultramodern-workspace/app-files.js +149 -0
- package/dist/esm/ultramodern-workspace/contracts.js +741 -0
- package/dist/esm/ultramodern-workspace/demo-components.js +363 -0
- package/dist/esm/ultramodern-workspace/descriptors.js +133 -0
- package/dist/esm/ultramodern-workspace/effect-api.js +854 -0
- package/dist/esm/ultramodern-workspace/fs-io.js +90 -0
- package/dist/esm/ultramodern-workspace/index.js +3 -0
- package/dist/esm/ultramodern-workspace/locales.js +122 -0
- package/dist/esm/ultramodern-workspace/module-federation.js +415 -0
- package/dist/esm/ultramodern-workspace/naming.js +71 -0
- package/dist/esm/ultramodern-workspace/package-json.js +338 -0
- package/dist/esm/ultramodern-workspace/package-source.js +21 -0
- package/dist/esm/ultramodern-workspace/policy.js +183 -0
- package/dist/esm/ultramodern-workspace/public-surface.js +183 -0
- package/dist/esm/ultramodern-workspace/routes.js +280 -0
- package/dist/esm/ultramodern-workspace/types.js +16 -0
- package/dist/esm/ultramodern-workspace/versions.js +34 -0
- package/dist/esm/ultramodern-workspace/workspace-scripts.js +91 -0
- package/dist/esm/ultramodern-workspace/write-workspace.js +121 -0
- package/dist/esm-node/create-package-root.js +15 -0
- package/dist/esm-node/index.js +492 -0
- package/dist/esm-node/locale/en.js +56 -0
- package/dist/esm-node/locale/index.js +10 -0
- package/dist/esm-node/locale/zh.js +56 -0
- package/dist/esm-node/ultramodern-package-source.js +64 -0
- package/dist/esm-node/ultramodern-workspace/add-vertical.js +253 -0
- package/dist/esm-node/ultramodern-workspace/app-files.js +150 -0
- package/dist/esm-node/ultramodern-workspace/contracts.js +742 -0
- package/dist/esm-node/ultramodern-workspace/demo-components.js +364 -0
- package/dist/esm-node/ultramodern-workspace/descriptors.js +134 -0
- package/dist/esm-node/ultramodern-workspace/effect-api.js +855 -0
- package/dist/esm-node/ultramodern-workspace/fs-io.js +91 -0
- package/dist/esm-node/ultramodern-workspace/index.js +4 -0
- package/dist/esm-node/ultramodern-workspace/locales.js +123 -0
- package/dist/esm-node/ultramodern-workspace/module-federation.js +416 -0
- package/dist/esm-node/ultramodern-workspace/naming.js +72 -0
- package/dist/esm-node/ultramodern-workspace/package-json.js +339 -0
- package/dist/esm-node/ultramodern-workspace/package-source.js +22 -0
- package/dist/esm-node/ultramodern-workspace/policy.js +184 -0
- package/dist/esm-node/ultramodern-workspace/public-surface.js +184 -0
- package/dist/esm-node/ultramodern-workspace/routes.js +281 -0
- package/dist/esm-node/ultramodern-workspace/types.js +17 -0
- package/dist/esm-node/ultramodern-workspace/versions.js +35 -0
- package/dist/esm-node/ultramodern-workspace/workspace-scripts.js +92 -0
- package/dist/esm-node/ultramodern-workspace/write-workspace.js +122 -0
- package/dist/types/create-package-root.d.ts +1 -0
- package/dist/types/locale/en.d.ts +8 -9
- package/dist/types/locale/index.d.ts +109 -2
- package/dist/types/locale/zh.d.ts +8 -9
- package/dist/types/ultramodern-package-source.d.ts +28 -0
- package/dist/types/ultramodern-workspace/add-vertical.d.ts +19 -0
- package/dist/types/ultramodern-workspace/app-files.d.ts +14 -0
- package/dist/types/ultramodern-workspace/contracts.d.ts +21 -0
- package/dist/types/ultramodern-workspace/demo-components.d.ts +9 -0
- package/dist/types/ultramodern-workspace/descriptors.d.ts +39 -0
- package/dist/types/ultramodern-workspace/effect-api.d.ts +73 -0
- package/dist/types/ultramodern-workspace/fs-io.d.ts +18 -0
- package/dist/types/ultramodern-workspace/index.d.ts +4 -0
- package/dist/types/ultramodern-workspace/locales.d.ts +183 -0
- package/dist/types/ultramodern-workspace/module-federation.d.ts +16 -0
- package/dist/types/ultramodern-workspace/naming.d.ts +16 -0
- package/dist/types/ultramodern-workspace/package-json.d.ts +12 -0
- package/dist/types/ultramodern-workspace/package-source.d.ts +2 -0
- package/dist/types/ultramodern-workspace/policy.d.ts +60 -0
- package/dist/types/ultramodern-workspace/public-surface.d.ts +37 -0
- package/dist/types/ultramodern-workspace/routes.d.ts +25 -0
- package/dist/types/ultramodern-workspace/types.d.ts +95 -0
- package/dist/types/ultramodern-workspace/versions.d.ts +38 -0
- package/dist/types/ultramodern-workspace/workspace-scripts.d.ts +10 -0
- package/dist/types/ultramodern-workspace/write-workspace.d.ts +4 -0
- package/package.json +34 -15
- package/template-workspace/.agents/agent-reference-repos.json +24 -0
- package/template-workspace/.agents/skills-lock.json +19 -0
- package/template-workspace/.codex/hooks.json +16 -0
- package/template-workspace/.github/renovate.json +29 -0
- package/template-workspace/.github/workflows/ultramodern-workspace-gates.yml.handlebars +67 -0
- package/template-workspace/.gitignore.handlebars +5 -0
- package/template-workspace/.mise.toml.handlebars +3 -0
- package/template-workspace/AGENTS.md.handlebars +87 -0
- package/template-workspace/README.md.handlebars +132 -11
- package/template-workspace/lefthook.yml +24 -0
- package/template-workspace/oxfmt.config.ts +1 -0
- package/template-workspace/oxlint.config.ts +1 -0
- package/template-workspace/pnpm-workspace.yaml.handlebars +40 -0
- package/template-workspace/scripts/bootstrap-agent-skills.mjs +184 -21
- package/template-workspace/scripts/setup-agent-reference-repos.mjs +370 -0
- package/templates/app/shell-frame.tsx +49 -0
- package/templates/app/ultramodern-route-head.tsx.handlebars +142 -0
- package/templates/packages/shared-contracts-index.ts +466 -0
- package/templates/workspace-scripts/assert-mf-types.mjs.handlebars +69 -0
- package/templates/workspace-scripts/check-ultramodern-i18n-boundaries.mjs +9 -0
- package/templates/workspace-scripts/generate-public-surface-assets.mjs +529 -0
- package/templates/workspace-scripts/proof-cloudflare-version.mjs +125 -0
- package/templates/workspace-scripts/ultramodern-cloudflare-proof.mjs +851 -0
- package/templates/workspace-scripts/ultramodern-performance-readiness.config.mjs +7 -0
- package/templates/workspace-scripts/ultramodern-performance-readiness.mjs +223 -0
- package/templates/workspace-scripts/validate-ultramodern-workspace.mjs.handlebars +593 -0
- package/dist/index.js +0 -2626
- package/dist/types/ultramodern-workspace.d.ts +0 -20
- package/template/.agents/skills-lock.json +0 -34
- package/template/.browserslistrc +0 -4
- package/template/.github/workflows/ultramodern-gates.yml.handlebars +0 -30
- package/template/.gitignore.handlebars +0 -30
- package/template/.nvmrc +0 -2
- package/template/AGENTS.md +0 -25
- package/template/README.md +0 -79
- package/template/api/effect/index.ts.handlebars +0 -23
- package/template/api/lambda/hello.ts.handlebars +0 -6
- package/template/config/public/locales/cs/translation.json +0 -39
- package/template/config/public/locales/en/translation.json +0 -39
- package/template/modern.config.ts.handlebars +0 -53
- package/template/oxfmt.config.ts +0 -8
- package/template/oxlint.config.ts +0 -12
- package/template/package.json.handlebars +0 -67
- package/template/postcss.config.mjs.handlebars +0 -6
- package/template/scripts/bootstrap-agent-skills.mjs +0 -95
- package/template/scripts/check-i18n-strings.mjs +0 -83
- package/template/scripts/validate-ultramodern.mjs.handlebars +0 -178
- package/template/shared/effect/api.ts.handlebars +0 -17
- package/template/src/modern-app-env.d.ts +0 -1
- package/template/src/modern.runtime.ts.handlebars +0 -23
- package/template/src/routes/index.css.handlebars +0 -129
- package/template/src/routes/layout.tsx.handlebars +0 -9
- package/template/src/routes/page.tsx.handlebars +0 -155
- package/template/tailwind.config.ts.handlebars +0 -10
- package/template/tsconfig.json +0 -120
- package/template-workspace/AGENTS.md +0 -50
- package/template-workspace/pnpm-workspace.yaml +0 -17
- package/template-workspace/scripts/check-i18n-strings.mjs +0 -83
- package/template-workspace/scripts/validate-ultramodern-workspace.mjs.handlebars +0 -433
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import "node:module";
|
|
2
|
+
import node_fs from "node:fs";
|
|
3
|
+
import { createAppEnvDts, createAppRuntimeConfig, createAppStyles, createPostcssConfig, createSharedDesignTokensCss, createShellFrameComponent, createTailwindConfig } from "./app-files.js";
|
|
4
|
+
import { createDevelopmentOverlay, createGeneratedContract, createOwnership, createPackageSourceMetadata, createTemplateManifest, createTopology } from "./contracts.js";
|
|
5
|
+
import { createLayout, createRemoteEntry, createRemoteExposeComponent, createRemotePage, createShellPage, createShellRemoteComponents, remoteComponentOutputPath } from "./demo-components.js";
|
|
6
|
+
import { GENERATED_CONTRACT_PATH, appHasEffectApi, appI18nNamespace, createShellHost, sharedPackages, shellApp } from "./descriptors.js";
|
|
7
|
+
import { createEffectClient, createEffectServiceEntry, createEffectSharedApi, createShellEffectClient } from "./effect-api.js";
|
|
8
|
+
import { copyRootTemplate, writeFile, writeJson } from "./fs-io.js";
|
|
9
|
+
import { createAppPublicLocaleMessages } from "./locales.js";
|
|
10
|
+
import { createAppModernConfig, createRemoteModuleFederationConfig, createShellModuleFederationConfig, createUltramodernBuildModule } from "./module-federation.js";
|
|
11
|
+
import { assertUniqueTailwindPrefixes, relativeRootFor, toPackageScope } from "./naming.js";
|
|
12
|
+
import { createAppPackage, createPackageTsConfig, createRootPackageJson, createSharedContractsIndex, createSharedPackage, createTsConfigBase } from "./package-json.js";
|
|
13
|
+
import { resolvePackageSource } from "./package-source.js";
|
|
14
|
+
import { createPublicWebAppArtifacts } from "./public-surface.js";
|
|
15
|
+
import { NODE_FETCH_VERSION, NODE_VERSION, PNPM_VERSION, TANSTACK_ROUTER_VERSION } from "./versions.js";
|
|
16
|
+
import { writeGeneratedWorkspaceScripts } from "./workspace-scripts.js";
|
|
17
|
+
function writeApp(targetDir, scope, app, packageSource, enableTailwind, remotes = []) {
|
|
18
|
+
const resolvedApp = 'shell' === app.kind ? createShellHost(remotes) : app;
|
|
19
|
+
const publicWeb = createPublicWebAppArtifacts(resolvedApp);
|
|
20
|
+
const writeAppFile = (relativePath, content)=>{
|
|
21
|
+
writeFile(targetDir, `${resolvedApp.directory}/${relativePath}`, content);
|
|
22
|
+
};
|
|
23
|
+
writeJson(targetDir, `${resolvedApp.directory}/package.json`, createAppPackage(scope, resolvedApp, packageSource, enableTailwind, remotes));
|
|
24
|
+
writeJson(targetDir, `${resolvedApp.directory}/tsconfig.json`, createPackageTsConfig(resolvedApp.directory, appHasEffectApi(resolvedApp)));
|
|
25
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/modern-app-env.d.ts`, createAppEnvDts(resolvedApp, remotes));
|
|
26
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/ultramodern-build.ts`, createUltramodernBuildModule(scope, resolvedApp));
|
|
27
|
+
writeFile(targetDir, publicWeb.jsonLdHelperFile.path, publicWeb.jsonLdHelperFile.content);
|
|
28
|
+
writeFile(targetDir, publicWeb.routeMetadataFile.path, publicWeb.routeMetadataFile.content);
|
|
29
|
+
writeFile(targetDir, publicWeb.routeHeadFile.path, publicWeb.routeHeadFile.content);
|
|
30
|
+
writeFile(targetDir, `${resolvedApp.directory}/modern.config.ts`, createAppModernConfig(scope, resolvedApp));
|
|
31
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/modern.runtime.ts`, createAppRuntimeConfig(resolvedApp, scope, remotes));
|
|
32
|
+
writeJson(targetDir, `${resolvedApp.directory}/locales/en/translation.json`, createAppPublicLocaleMessages(resolvedApp, 'en', remotes));
|
|
33
|
+
writeJson(targetDir, `${resolvedApp.directory}/locales/en/${appI18nNamespace(resolvedApp)}.json`, createAppPublicLocaleMessages(resolvedApp, 'en', remotes));
|
|
34
|
+
writeJson(targetDir, `${resolvedApp.directory}/locales/cs/translation.json`, createAppPublicLocaleMessages(resolvedApp, 'cs', remotes));
|
|
35
|
+
writeJson(targetDir, `${resolvedApp.directory}/locales/cs/${appI18nNamespace(resolvedApp)}.json`, createAppPublicLocaleMessages(resolvedApp, 'cs', remotes));
|
|
36
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/routes/index.css`, createAppStyles(enableTailwind, scope, resolvedApp));
|
|
37
|
+
if (enableTailwind) {
|
|
38
|
+
writeFile(targetDir, `${resolvedApp.directory}/postcss.config.mjs`, createPostcssConfig());
|
|
39
|
+
writeFile(targetDir, `${resolvedApp.directory}/tailwind.config.ts`, createTailwindConfig());
|
|
40
|
+
}
|
|
41
|
+
writeFile(targetDir, `${resolvedApp.directory}/module-federation.config.ts`, 'shell' === resolvedApp.kind ? createShellModuleFederationConfig(scope, remotes) : createRemoteModuleFederationConfig(scope, resolvedApp, remotes));
|
|
42
|
+
writeAppFile('src/routes/layout.tsx', createLayout(resolvedApp.id));
|
|
43
|
+
writeAppFile('src/routes/[lang]/page.tsx', 'shell' === resolvedApp.kind ? createShellPage(remotes) : createRemotePage(resolvedApp));
|
|
44
|
+
for (const generatedFile of publicWeb.routeMetaFiles)writeFile(targetDir, generatedFile.path, generatedFile.content);
|
|
45
|
+
for (const generatedFile of publicWeb.routeAliasFiles)writeFile(targetDir, generatedFile.path, generatedFile.content);
|
|
46
|
+
if ('shell' === resolvedApp.kind) {
|
|
47
|
+
writeAppFile('src/routes/vertical-components.tsx', createShellRemoteComponents(scope, remotes));
|
|
48
|
+
writeAppFile('src/routes/shell-frame.tsx', createShellFrameComponent());
|
|
49
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/effect/vertical-clients.ts`, createShellEffectClient(scope, remotes));
|
|
50
|
+
}
|
|
51
|
+
if (appHasEffectApi(resolvedApp)) {
|
|
52
|
+
writeFile(targetDir, `${resolvedApp.directory}/shared/effect/api.ts`, createEffectSharedApi(resolvedApp));
|
|
53
|
+
writeFile(targetDir, `${resolvedApp.directory}/api/effect/index.ts`, createEffectServiceEntry(resolvedApp, '../../shared/effect/api.ts'));
|
|
54
|
+
writeFile(targetDir, `${resolvedApp.directory}/src/effect/${resolvedApp.effectApi.stem}-client.ts`, createEffectClient(resolvedApp, '../../shared/effect/api'));
|
|
55
|
+
}
|
|
56
|
+
if ('vertical' === resolvedApp.kind) {
|
|
57
|
+
writeAppFile('src/federation-entry.tsx', createRemoteEntry(resolvedApp));
|
|
58
|
+
for (const expose of Object.keys(resolvedApp.exposes ?? {})){
|
|
59
|
+
const outputPath = remoteComponentOutputPath(resolvedApp, expose);
|
|
60
|
+
if (outputPath) writeAppFile(outputPath.slice(resolvedApp.directory.length + 1), createRemoteExposeComponent(resolvedApp, expose));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function writeSharedPackages(targetDir, scope) {
|
|
65
|
+
for (const sharedPackage of sharedPackages){
|
|
66
|
+
writeJson(targetDir, `${sharedPackage.directory}/package.json`, createSharedPackage(scope, sharedPackage.id, sharedPackage.description));
|
|
67
|
+
writeJson(targetDir, `${sharedPackage.directory}/tsconfig.json`, {
|
|
68
|
+
extends: `${relativeRootFor(sharedPackage.directory)}/tsconfig.base.json`,
|
|
69
|
+
include: [
|
|
70
|
+
'src'
|
|
71
|
+
]
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
writeFile(targetDir, 'packages/shared-contracts/src/index.ts', createSharedContractsIndex());
|
|
75
|
+
writeFile(targetDir, 'packages/shared-design-tokens/src/index.ts', `export const sharedDesignTokens = {
|
|
76
|
+
color: {
|
|
77
|
+
accent: '#2f8f68',
|
|
78
|
+
foreground: '#133225',
|
|
79
|
+
surface: '#f6fbf7',
|
|
80
|
+
},
|
|
81
|
+
} as const;
|
|
82
|
+
`);
|
|
83
|
+
writeFile(targetDir, 'packages/shared-design-tokens/src/tokens.css', createSharedDesignTokensCss());
|
|
84
|
+
}
|
|
85
|
+
function generateUltramodernWorkspace(options) {
|
|
86
|
+
const scope = toPackageScope(options.packageName);
|
|
87
|
+
const packageSource = resolvePackageSource(options);
|
|
88
|
+
const enableTailwind = false !== options.enableTailwind;
|
|
89
|
+
const initialVerticals = [];
|
|
90
|
+
assertUniqueTailwindPrefixes([
|
|
91
|
+
shellApp,
|
|
92
|
+
...initialVerticals
|
|
93
|
+
]);
|
|
94
|
+
node_fs.mkdirSync(options.targetDir, {
|
|
95
|
+
recursive: true
|
|
96
|
+
});
|
|
97
|
+
copyRootTemplate(options.targetDir, {
|
|
98
|
+
packageName: options.packageName,
|
|
99
|
+
packageScope: scope,
|
|
100
|
+
nodeVersion: NODE_VERSION,
|
|
101
|
+
pnpmVersion: PNPM_VERSION,
|
|
102
|
+
nodeFetchVersion: NODE_FETCH_VERSION,
|
|
103
|
+
tanstackRouterVersion: TANSTACK_ROUTER_VERSION,
|
|
104
|
+
tailwindEnabled: String(enableTailwind)
|
|
105
|
+
});
|
|
106
|
+
writeJson(options.targetDir, 'package.json', createRootPackageJson(scope, packageSource, initialVerticals));
|
|
107
|
+
writeJson(options.targetDir, 'tsconfig.base.json', createTsConfigBase());
|
|
108
|
+
writeJson(options.targetDir, 'topology/reference-topology.json', createTopology(scope, initialVerticals));
|
|
109
|
+
writeJson(options.targetDir, 'topology/ownership.json', createOwnership(scope, initialVerticals));
|
|
110
|
+
writeJson(options.targetDir, 'topology/local-overlays/development.json', createDevelopmentOverlay(initialVerticals));
|
|
111
|
+
writeJson(options.targetDir, '.modernjs/ultramodern-workspace-template-manifest.json', createTemplateManifest(options.modernVersion, packageSource));
|
|
112
|
+
writeJson(options.targetDir, '.modernjs/ultramodern-package-source.json', createPackageSourceMetadata(scope, packageSource));
|
|
113
|
+
writeJson(options.targetDir, GENERATED_CONTRACT_PATH, createGeneratedContract(scope, [
|
|
114
|
+
createShellHost(initialVerticals),
|
|
115
|
+
...initialVerticals
|
|
116
|
+
], enableTailwind));
|
|
117
|
+
writeApp(options.targetDir, scope, shellApp, packageSource, enableTailwind, initialVerticals);
|
|
118
|
+
for (const remote of initialVerticals)writeApp(options.targetDir, scope, remote, packageSource, enableTailwind, initialVerticals);
|
|
119
|
+
writeSharedPackages(options.targetDir, scope);
|
|
120
|
+
writeGeneratedWorkspaceScripts(options.targetDir, scope, enableTailwind, initialVerticals);
|
|
121
|
+
}
|
|
122
|
+
export { generateUltramodernWorkspace, writeApp, writeSharedPackages };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function resolveCreatePackageRoot(fromDir: string): string;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
export declare const EN_LOCALE: {
|
|
2
2
|
prompt: {
|
|
3
3
|
projectName: string;
|
|
4
|
+
legacyModernJsConfirmation: string;
|
|
4
5
|
};
|
|
5
6
|
error: {
|
|
6
7
|
projectNameEmpty: string;
|
|
7
8
|
directoryExists: string;
|
|
8
|
-
|
|
9
|
-
invalidBffRuntime: string;
|
|
9
|
+
legacyModernJsNotConfirmed: string;
|
|
10
10
|
createFailed: string;
|
|
11
11
|
};
|
|
12
12
|
message: {
|
|
@@ -16,6 +16,7 @@ export declare const EN_LOCALE: {
|
|
|
16
16
|
step1: string;
|
|
17
17
|
step2: string;
|
|
18
18
|
step3: string;
|
|
19
|
+
legacyModernJsWarning: string;
|
|
19
20
|
};
|
|
20
21
|
help: {
|
|
21
22
|
title: string;
|
|
@@ -26,16 +27,17 @@ export declare const EN_LOCALE: {
|
|
|
26
27
|
optionHelp: string;
|
|
27
28
|
optionVersion: string;
|
|
28
29
|
optionLang: string;
|
|
29
|
-
|
|
30
|
+
optionTailwind: string;
|
|
30
31
|
optionBff: string;
|
|
31
32
|
optionBffRuntime: string;
|
|
32
|
-
optionTailwind: string;
|
|
33
33
|
optionWorkspace: string;
|
|
34
|
-
optionUltramodernWorkspace: string;
|
|
35
34
|
optionUltramodernPackageSource: string;
|
|
35
|
+
optionUltramodernPackageVersion: string;
|
|
36
|
+
optionUltramodernPackageRegistry: string;
|
|
36
37
|
optionUltramodernPackageScope: string;
|
|
37
38
|
optionUltramodernPackageNamePrefix: string;
|
|
38
|
-
|
|
39
|
+
optionVertical: string;
|
|
40
|
+
optionLegacyModernJs: string;
|
|
39
41
|
examples: string;
|
|
40
42
|
example1: string;
|
|
41
43
|
example2: string;
|
|
@@ -44,9 +46,6 @@ export declare const EN_LOCALE: {
|
|
|
44
46
|
example5: string;
|
|
45
47
|
example6: string;
|
|
46
48
|
example7: string;
|
|
47
|
-
example8: string;
|
|
48
|
-
example9: string;
|
|
49
|
-
example10: string;
|
|
50
49
|
moreInfo: string;
|
|
51
50
|
};
|
|
52
51
|
version: {
|
|
@@ -1,3 +1,110 @@
|
|
|
1
|
-
|
|
2
|
-
declare const
|
|
1
|
+
import { I18n } from '@modern-js/i18n-utils';
|
|
2
|
+
declare const i18n: I18n;
|
|
3
|
+
declare const localeKeys: {
|
|
4
|
+
prompt: {
|
|
5
|
+
projectName: string;
|
|
6
|
+
legacyModernJsConfirmation: string;
|
|
7
|
+
};
|
|
8
|
+
error: {
|
|
9
|
+
projectNameEmpty: string;
|
|
10
|
+
directoryExists: string;
|
|
11
|
+
legacyModernJsNotConfirmed: string;
|
|
12
|
+
createFailed: string;
|
|
13
|
+
};
|
|
14
|
+
message: {
|
|
15
|
+
welcome: string;
|
|
16
|
+
success: string;
|
|
17
|
+
nextSteps: string;
|
|
18
|
+
step1: string;
|
|
19
|
+
step2: string;
|
|
20
|
+
step3: string;
|
|
21
|
+
legacyModernJsWarning: string;
|
|
22
|
+
};
|
|
23
|
+
help: {
|
|
24
|
+
title: string;
|
|
25
|
+
description: string;
|
|
26
|
+
usage: string;
|
|
27
|
+
usageExample: string;
|
|
28
|
+
options: string;
|
|
29
|
+
optionHelp: string;
|
|
30
|
+
optionVersion: string;
|
|
31
|
+
optionLang: string;
|
|
32
|
+
optionTailwind: string;
|
|
33
|
+
optionBff: string;
|
|
34
|
+
optionBffRuntime: string;
|
|
35
|
+
optionWorkspace: string;
|
|
36
|
+
optionUltramodernPackageSource: string;
|
|
37
|
+
optionUltramodernPackageVersion: string;
|
|
38
|
+
optionUltramodernPackageRegistry: string;
|
|
39
|
+
optionUltramodernPackageScope: string;
|
|
40
|
+
optionUltramodernPackageNamePrefix: string;
|
|
41
|
+
optionVertical: string;
|
|
42
|
+
optionLegacyModernJs: string;
|
|
43
|
+
examples: string;
|
|
44
|
+
example1: string;
|
|
45
|
+
example2: string;
|
|
46
|
+
example3: string;
|
|
47
|
+
example4: string;
|
|
48
|
+
example5: string;
|
|
49
|
+
example6: string;
|
|
50
|
+
example7: string;
|
|
51
|
+
moreInfo: string;
|
|
52
|
+
};
|
|
53
|
+
version: {
|
|
54
|
+
message: string;
|
|
55
|
+
};
|
|
56
|
+
} | {
|
|
57
|
+
prompt: {
|
|
58
|
+
projectName: string;
|
|
59
|
+
legacyModernJsConfirmation: string;
|
|
60
|
+
};
|
|
61
|
+
error: {
|
|
62
|
+
projectNameEmpty: string;
|
|
63
|
+
directoryExists: string;
|
|
64
|
+
legacyModernJsNotConfirmed: string;
|
|
65
|
+
createFailed: string;
|
|
66
|
+
};
|
|
67
|
+
message: {
|
|
68
|
+
welcome: string;
|
|
69
|
+
success: string;
|
|
70
|
+
nextSteps: string;
|
|
71
|
+
step1: string;
|
|
72
|
+
step2: string;
|
|
73
|
+
step3: string;
|
|
74
|
+
legacyModernJsWarning: string;
|
|
75
|
+
};
|
|
76
|
+
help: {
|
|
77
|
+
title: string;
|
|
78
|
+
description: string;
|
|
79
|
+
usage: string;
|
|
80
|
+
usageExample: string;
|
|
81
|
+
options: string;
|
|
82
|
+
optionHelp: string;
|
|
83
|
+
optionVersion: string;
|
|
84
|
+
optionLang: string;
|
|
85
|
+
optionTailwind: string;
|
|
86
|
+
optionBff: string;
|
|
87
|
+
optionBffRuntime: string;
|
|
88
|
+
optionWorkspace: string;
|
|
89
|
+
optionUltramodernPackageSource: string;
|
|
90
|
+
optionUltramodernPackageVersion: string;
|
|
91
|
+
optionUltramodernPackageRegistry: string;
|
|
92
|
+
optionUltramodernPackageScope: string;
|
|
93
|
+
optionUltramodernPackageNamePrefix: string;
|
|
94
|
+
optionVertical: string;
|
|
95
|
+
optionLegacyModernJs: string;
|
|
96
|
+
examples: string;
|
|
97
|
+
example1: string;
|
|
98
|
+
example2: string;
|
|
99
|
+
example3: string;
|
|
100
|
+
example4: string;
|
|
101
|
+
example5: string;
|
|
102
|
+
example6: string;
|
|
103
|
+
example7: string;
|
|
104
|
+
moreInfo: string;
|
|
105
|
+
};
|
|
106
|
+
version: {
|
|
107
|
+
message: string;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
3
110
|
export { i18n, localeKeys };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
export declare const ZH_LOCALE: {
|
|
2
2
|
prompt: {
|
|
3
3
|
projectName: string;
|
|
4
|
+
legacyModernJsConfirmation: string;
|
|
4
5
|
};
|
|
5
6
|
error: {
|
|
6
7
|
projectNameEmpty: string;
|
|
7
8
|
directoryExists: string;
|
|
8
|
-
|
|
9
|
-
invalidBffRuntime: string;
|
|
9
|
+
legacyModernJsNotConfirmed: string;
|
|
10
10
|
createFailed: string;
|
|
11
11
|
};
|
|
12
12
|
message: {
|
|
@@ -16,6 +16,7 @@ export declare const ZH_LOCALE: {
|
|
|
16
16
|
step1: string;
|
|
17
17
|
step2: string;
|
|
18
18
|
step3: string;
|
|
19
|
+
legacyModernJsWarning: string;
|
|
19
20
|
};
|
|
20
21
|
help: {
|
|
21
22
|
title: string;
|
|
@@ -26,16 +27,17 @@ export declare const ZH_LOCALE: {
|
|
|
26
27
|
optionHelp: string;
|
|
27
28
|
optionVersion: string;
|
|
28
29
|
optionLang: string;
|
|
29
|
-
|
|
30
|
+
optionTailwind: string;
|
|
30
31
|
optionBff: string;
|
|
31
32
|
optionBffRuntime: string;
|
|
32
|
-
optionTailwind: string;
|
|
33
33
|
optionWorkspace: string;
|
|
34
|
-
optionUltramodernWorkspace: string;
|
|
35
34
|
optionUltramodernPackageSource: string;
|
|
35
|
+
optionUltramodernPackageVersion: string;
|
|
36
|
+
optionUltramodernPackageRegistry: string;
|
|
36
37
|
optionUltramodernPackageScope: string;
|
|
37
38
|
optionUltramodernPackageNamePrefix: string;
|
|
38
|
-
|
|
39
|
+
optionVertical: string;
|
|
40
|
+
optionLegacyModernJs: string;
|
|
39
41
|
examples: string;
|
|
40
42
|
example1: string;
|
|
41
43
|
example2: string;
|
|
@@ -44,9 +46,6 @@ export declare const ZH_LOCALE: {
|
|
|
44
46
|
example5: string;
|
|
45
47
|
example6: string;
|
|
46
48
|
example7: string;
|
|
47
|
-
example8: string;
|
|
48
|
-
example9: string;
|
|
49
|
-
example10: string;
|
|
50
49
|
moreInfo: string;
|
|
51
50
|
};
|
|
52
51
|
version: {
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare const WORKSPACE_PACKAGE_VERSION = "workspace:*";
|
|
2
|
+
export declare const BLEEDINGDEV_CREATE_PACKAGE = "@bleedingdev/modern-js-create";
|
|
3
|
+
export declare const BLEEDINGDEV_PACKAGE_SCOPE = "bleedingdev";
|
|
4
|
+
export declare const BLEEDINGDEV_PACKAGE_NAME_PREFIX = "modern-js-";
|
|
5
|
+
export declare const BLEEDINGDEV_FRAMEWORK_VERSION_ENV = "MODERN_CREATE_ULTRAMODERN_FRAMEWORK_VERSION";
|
|
6
|
+
export declare const ULTRAMODERN_SINGLE_APP_MODERN_PACKAGES: readonly ['@modern-js/create', '@modern-js/code-tools', '@modern-js/runtime', '@modern-js/app-tools', '@modern-js/tsconfig', '@modern-js/plugin-i18n', '@modern-js/plugin-tanstack', '@modern-js/plugin-bff', '@modern-js/adapter-rstest'];
|
|
7
|
+
export declare const ULTRAMODERN_WORKSPACE_MODERN_PACKAGES: readonly ['@modern-js/create', '@modern-js/code-tools', '@modern-js/app-tools', '@modern-js/plugin-bff', '@modern-js/plugin-i18n', '@modern-js/plugin-tanstack', '@modern-js/runtime'];
|
|
8
|
+
export type UltramodernPackageSourceStrategy = 'workspace' | 'install';
|
|
9
|
+
export type ResolvedUltramodernPackageSource = {
|
|
10
|
+
strategy: UltramodernPackageSourceStrategy;
|
|
11
|
+
modernPackageVersion: string;
|
|
12
|
+
registry?: string;
|
|
13
|
+
aliasScope?: string;
|
|
14
|
+
aliasPackageNamePrefix?: string;
|
|
15
|
+
};
|
|
16
|
+
export type UltramodernModernPackagesMetadata = {
|
|
17
|
+
packages: string[];
|
|
18
|
+
specifier: string;
|
|
19
|
+
registry?: string;
|
|
20
|
+
aliases?: Record<string, string>;
|
|
21
|
+
};
|
|
22
|
+
export declare function modernPackageVersion(packageSource: ResolvedUltramodernPackageSource): string;
|
|
23
|
+
export declare function modernAliasPackageName(packageName: string, packageSource: ResolvedUltramodernPackageSource): string;
|
|
24
|
+
export declare function modernPackageSpecifier(packageName: string, packageSource: ResolvedUltramodernPackageSource): string;
|
|
25
|
+
export declare function modernPackageAliases(packageNames: readonly string[], packageSource: ResolvedUltramodernPackageSource): Record<string, string> | undefined;
|
|
26
|
+
export declare function createModernPackagesMetadata(packageNames: readonly string[], packageSource: ResolvedUltramodernPackageSource, options?: {
|
|
27
|
+
includeAliases?: boolean;
|
|
28
|
+
}): UltramodernModernPackagesMetadata;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { AddUltramodernVerticalOptions, JsonValue, Ownership, ResolvedPackageSource, UltramodernWorkspaceOptions, WorkspaceApp } from './types';
|
|
2
|
+
export declare function existingPackageSource(workspaceRoot: string, modernVersion: string, packageSource?: UltramodernWorkspaceOptions['packageSource']): ResolvedPackageSource;
|
|
3
|
+
export declare function existingTailwindEnabled(workspaceRoot: string): boolean;
|
|
4
|
+
export declare function assertValidVerticalName(name: string): string;
|
|
5
|
+
export declare function nextAvailablePort(ports: Record<string, unknown>): number;
|
|
6
|
+
export declare function assertCanCreate(workspaceRoot: string, relativePath: string): void;
|
|
7
|
+
export declare function updateRootWorkspaceScripts(workspaceRoot: string, scope: string, packageSource: ResolvedPackageSource, remotes: WorkspaceApp[]): void;
|
|
8
|
+
export declare function rewriteShellAppFiles(workspaceRoot: string, scope: string, packageSource: ResolvedPackageSource, enableTailwind: boolean, remotes: WorkspaceApp[]): void;
|
|
9
|
+
export declare function addShellZephyrDependency(workspaceRoot: string, scope: string, remote: WorkspaceApp): void;
|
|
10
|
+
export declare function addShellWorkspaceDependency(workspaceRoot: string, scope: string, remote: WorkspaceApp): void;
|
|
11
|
+
export declare function verticalTopologyEntry(scope: string, vertical: WorkspaceApp, remotes?: WorkspaceApp[]): JsonValue;
|
|
12
|
+
export declare function ownershipEntry(scope: string, owner: {
|
|
13
|
+
id: string;
|
|
14
|
+
packageSuffix: string;
|
|
15
|
+
directory: string;
|
|
16
|
+
ownership: Ownership;
|
|
17
|
+
}): JsonValue;
|
|
18
|
+
export declare function verticalsFromTopology(topology: Record<string, any>, ports: Record<string, unknown>): WorkspaceApp[];
|
|
19
|
+
export declare function addUltramodernVertical(options: AddUltramodernVerticalOptions): void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { JsonValue, WorkspaceApp } from './types';
|
|
2
|
+
export declare function createBoundaryDebugMetadata(scope: string, remotes?: WorkspaceApp[]): JsonValue;
|
|
3
|
+
export declare function createAppEnvDts(app: WorkspaceApp, remotes?: WorkspaceApp[]): string;
|
|
4
|
+
export declare function createAppRuntimeConfig(app: WorkspaceApp, scope: string, remotes?: WorkspaceApp[]): string;
|
|
5
|
+
export declare function createCssTokenImport(scope: string): string;
|
|
6
|
+
export declare function createTailwindImport(prefix: string): string;
|
|
7
|
+
export declare function createShellStyles(enableTailwind: boolean, scope: string): string;
|
|
8
|
+
export declare function createRemoteStyles(enableTailwind: boolean, scope: string, app: WorkspaceApp): string;
|
|
9
|
+
export declare function createAppStyles(enableTailwind: boolean, scope: string, app: WorkspaceApp): string;
|
|
10
|
+
export declare function createPostcssConfig(): string;
|
|
11
|
+
export declare function createTailwindConfig(): string;
|
|
12
|
+
export declare function createSharedDesignTokensCss(): string;
|
|
13
|
+
export declare function createRouteHeadModule(app: WorkspaceApp): string;
|
|
14
|
+
export declare function createShellFrameComponent(): string;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { JsonValue, ResolvedPackageSource, WorkspaceApp } from './types';
|
|
2
|
+
export declare const baselineAgentSkills: string[];
|
|
3
|
+
export declare const moduleFederationAgentSkills: string[];
|
|
4
|
+
export declare const privateAgentSkills: string[];
|
|
5
|
+
export declare function createTopology(scope: string, remotes?: WorkspaceApp[]): JsonValue;
|
|
6
|
+
export declare function createOwnership(scope: string, remotes?: WorkspaceApp[]): JsonValue;
|
|
7
|
+
export declare function createDevelopmentOverlay(remotes?: WorkspaceApp[]): JsonValue;
|
|
8
|
+
export declare function createPackageSourceMetadata(scope: string, packageSource: ResolvedPackageSource): JsonValue;
|
|
9
|
+
export declare function createAppConfigContract(app: WorkspaceApp): JsonValue;
|
|
10
|
+
export declare function createPerformanceReadinessContract(): JsonValue;
|
|
11
|
+
export declare function cssLayerName(app: WorkspaceApp): string;
|
|
12
|
+
export declare function cssRole(app: WorkspaceApp): string;
|
|
13
|
+
export declare function cssClassPrefix(app: WorkspaceApp): string;
|
|
14
|
+
export declare function createCssDedupeContract(scope: string): JsonValue;
|
|
15
|
+
export declare function createCssSsrContract(app: WorkspaceApp): JsonValue;
|
|
16
|
+
export declare function createAppCssFederationContract(scope: string, app: WorkspaceApp): JsonValue;
|
|
17
|
+
export declare function createCssFederationContract(scope: string): JsonValue;
|
|
18
|
+
export declare function createStylingContract(scope: string, app: WorkspaceApp, enableTailwind: boolean): JsonValue;
|
|
19
|
+
export declare function createAppGeneratedContract(scope: string, app: WorkspaceApp, apps: WorkspaceApp[], enableTailwind: boolean): JsonValue;
|
|
20
|
+
export declare function createGeneratedContract(scope: string, apps?: WorkspaceApp[], enableTailwind?: boolean): JsonValue;
|
|
21
|
+
export declare function createTemplateManifest(modernVersion: string, packageSource: ResolvedPackageSource): JsonValue;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { WorkspaceApp } from './types';
|
|
2
|
+
export declare function createShellPage(remotes?: WorkspaceApp[]): string;
|
|
3
|
+
export declare function createShellRemoteComponents(scope: string, remotes?: WorkspaceApp[]): string;
|
|
4
|
+
export declare function createRemotePage(app: WorkspaceApp): string;
|
|
5
|
+
export declare function createLayout(appId: string): string;
|
|
6
|
+
export declare function createRemoteEntry(app: WorkspaceApp): string;
|
|
7
|
+
export declare function createRemoteWidget(app: WorkspaceApp): string;
|
|
8
|
+
export declare function createRemoteExposeComponent(app: WorkspaceApp, expose: string): string;
|
|
9
|
+
export declare function remoteComponentOutputPath(app: WorkspaceApp, expose: string): string | undefined;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Ownership, WorkspaceApp, WorkspaceEffectApi } from './types';
|
|
2
|
+
export declare const GENERATED_CONTRACT_PATH = ".modernjs/ultramodern-generated-contract.json";
|
|
3
|
+
export declare const shellApp: WorkspaceApp;
|
|
4
|
+
export declare function createShellHost(remotes?: WorkspaceApp[]): WorkspaceApp;
|
|
5
|
+
export declare const sharedPackages: {
|
|
6
|
+
id: string;
|
|
7
|
+
directory: string;
|
|
8
|
+
description: string;
|
|
9
|
+
}[];
|
|
10
|
+
export declare function createNeutralOwnership(id: string, tier?: string): Ownership;
|
|
11
|
+
export declare function createVerticalDescriptor(name: string, port: number): WorkspaceApp;
|
|
12
|
+
export declare function appHasEffectApi(app: WorkspaceApp): app is WorkspaceApp & {
|
|
13
|
+
effectApi: WorkspaceEffectApi;
|
|
14
|
+
};
|
|
15
|
+
export declare function effectApiPrefix(target: {
|
|
16
|
+
id: string;
|
|
17
|
+
effectApi?: WorkspaceEffectApi;
|
|
18
|
+
}): string;
|
|
19
|
+
export declare function effectApiStem(target: {
|
|
20
|
+
id: string;
|
|
21
|
+
effectApi?: WorkspaceEffectApi;
|
|
22
|
+
}): string;
|
|
23
|
+
export declare function verticalEffectApps(remotes?: WorkspaceApp[]): (WorkspaceApp & {
|
|
24
|
+
effectApi: WorkspaceEffectApi;
|
|
25
|
+
})[];
|
|
26
|
+
export declare function remoteDependencyAlias(remote: WorkspaceApp): string;
|
|
27
|
+
export declare function zephyrRemoteDependency(scope: string, remote: WorkspaceApp): string;
|
|
28
|
+
export declare function resolveRemoteRefs(app: WorkspaceApp, remotes?: WorkspaceApp[]): WorkspaceApp[];
|
|
29
|
+
export declare function createRemoteManifestEnv(remote: WorkspaceApp): string;
|
|
30
|
+
export declare function createModuleFederationRemoteContracts(app: WorkspaceApp, remotes?: WorkspaceApp[]): {
|
|
31
|
+
id: string;
|
|
32
|
+
alias: string;
|
|
33
|
+
name: string;
|
|
34
|
+
manifestEnv: string;
|
|
35
|
+
manifestUrl: string;
|
|
36
|
+
}[];
|
|
37
|
+
export declare function createCloudflareWorkerName(scope: string, app: WorkspaceApp): string;
|
|
38
|
+
export declare function createCloudflarePublicUrlEnv(app: WorkspaceApp): string;
|
|
39
|
+
export declare function appI18nNamespace(app: WorkspaceApp): string;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { JsonValue, WorkspaceApp, WorkspaceEffectApi } from './types';
|
|
2
|
+
export declare function verticalEffectApiExport(service: {
|
|
3
|
+
id: string;
|
|
4
|
+
effectApi?: WorkspaceEffectApi;
|
|
5
|
+
}): string;
|
|
6
|
+
export declare function verticalEffectGroupName(service: {
|
|
7
|
+
id: string;
|
|
8
|
+
effectApi?: WorkspaceEffectApi;
|
|
9
|
+
}): string;
|
|
10
|
+
export declare function verticalEffectApiName(service: {
|
|
11
|
+
id: string;
|
|
12
|
+
effectApi?: WorkspaceEffectApi;
|
|
13
|
+
}): string;
|
|
14
|
+
export declare function verticalEffectSchemaExport(service: {
|
|
15
|
+
id: string;
|
|
16
|
+
effectApi?: WorkspaceEffectApi;
|
|
17
|
+
}): string;
|
|
18
|
+
export declare function verticalEffectMarkerSchemaExport(service: {
|
|
19
|
+
id: string;
|
|
20
|
+
effectApi?: WorkspaceEffectApi;
|
|
21
|
+
}): string;
|
|
22
|
+
export declare function verticalEffectReadinessSchemaExport(service: {
|
|
23
|
+
id: string;
|
|
24
|
+
effectApi?: WorkspaceEffectApi;
|
|
25
|
+
}): string;
|
|
26
|
+
export declare function verticalEffectErrorStem(service: {
|
|
27
|
+
id: string;
|
|
28
|
+
effectApi?: WorkspaceEffectApi;
|
|
29
|
+
}): string;
|
|
30
|
+
export declare function verticalEffectCreatePayloadSchemaExport(service: {
|
|
31
|
+
id: string;
|
|
32
|
+
effectApi?: WorkspaceEffectApi;
|
|
33
|
+
}): string;
|
|
34
|
+
export declare function verticalEffectNotFoundErrorExport(service: {
|
|
35
|
+
id: string;
|
|
36
|
+
effectApi?: WorkspaceEffectApi;
|
|
37
|
+
}): string;
|
|
38
|
+
export declare function verticalEffectNotFoundSchemaExport(service: {
|
|
39
|
+
id: string;
|
|
40
|
+
effectApi?: WorkspaceEffectApi;
|
|
41
|
+
}): string;
|
|
42
|
+
export declare function createEffectSharedApiImports(): string;
|
|
43
|
+
export declare function createEffectSharedApiContract(service: {
|
|
44
|
+
id: string;
|
|
45
|
+
effectApi?: WorkspaceEffectApi;
|
|
46
|
+
}): string;
|
|
47
|
+
export declare function createEffectSharedApi(service: {
|
|
48
|
+
id: string;
|
|
49
|
+
effectApi?: WorkspaceEffectApi;
|
|
50
|
+
}): string;
|
|
51
|
+
export declare function createEffectServiceEntry(service: {
|
|
52
|
+
id: string;
|
|
53
|
+
effectApi?: WorkspaceEffectApi;
|
|
54
|
+
}, contractImportPath: string): string;
|
|
55
|
+
export declare function createEffectClient(service: {
|
|
56
|
+
id: string;
|
|
57
|
+
effectApi?: WorkspaceEffectApi;
|
|
58
|
+
}, contractImportPath: string): string;
|
|
59
|
+
export declare function createShellEffectClient(scope: string, remotes?: WorkspaceApp[]): string;
|
|
60
|
+
export declare function createEffectReadinessContract(app: {
|
|
61
|
+
id: string;
|
|
62
|
+
effectApi?: WorkspaceEffectApi;
|
|
63
|
+
}): JsonValue;
|
|
64
|
+
export declare function createEffectRequestContextContract(): JsonValue;
|
|
65
|
+
export declare function createEffectDomainOperations(app: {
|
|
66
|
+
id: string;
|
|
67
|
+
effectApi?: WorkspaceEffectApi;
|
|
68
|
+
}): JsonValue;
|
|
69
|
+
export declare function effectApiTopologyMetadata(app: WorkspaceApp): JsonValue | undefined;
|
|
70
|
+
export declare function createEffectOperationContract(target: {
|
|
71
|
+
id: string;
|
|
72
|
+
effectApi?: WorkspaceEffectApi;
|
|
73
|
+
}): JsonValue;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { JsonValue } from './types';
|
|
2
|
+
export declare const createPackageRoot: string;
|
|
3
|
+
export declare const workspaceTemplateDir: any;
|
|
4
|
+
export declare const fileTemplatesDir: any;
|
|
5
|
+
export declare function readFileTemplate(relativePath: string): string;
|
|
6
|
+
export declare function renderFileTemplate(relativePath: string, data: Record<string, string>): string;
|
|
7
|
+
export declare function assertSafeRelativePath(relativePath: string): void;
|
|
8
|
+
export declare function ensureInsideRoot(root: string, targetPath: string): void;
|
|
9
|
+
export declare function writeFile(targetDir: string, relativePath: string, content: string): void;
|
|
10
|
+
export declare function writeFileReplacing(targetDir: string, relativePath: string, content: string): void;
|
|
11
|
+
export declare function writeJson(targetDir: string, relativePath: string, value: JsonValue): void;
|
|
12
|
+
export declare function renderTemplate(template: string, data: Record<string, string>): string;
|
|
13
|
+
export declare function collectTemplateFiles(dir: string): string[];
|
|
14
|
+
export declare function hashFile(filePath: string): string;
|
|
15
|
+
export declare function hashTemplateTree(dir: string): string;
|
|
16
|
+
export declare function copyRootTemplate(targetDir: string, data: Record<string, string>): void;
|
|
17
|
+
export declare function readJsonFile(filePath: string): Record<string, any>;
|
|
18
|
+
export declare function writeJsonFile(filePath: string, value: JsonValue): void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { addUltramodernVertical } from './add-vertical';
|
|
2
|
+
export type { AddUltramodernVerticalOptions, UltramodernWorkspaceOptions, } from './types';
|
|
3
|
+
export { ultramodernWorkspaceVersions } from './versions';
|
|
4
|
+
export { generateUltramodernWorkspace } from './write-workspace';
|