@bleedingdev/modern-js-create 3.5.0-ultramodern.3 → 3.5.0-ultramodern.30
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 +21 -17
- package/dist/cjs/ultramodern-tooling/commands.cjs +772 -75
- package/dist/cjs/ultramodern-tooling/config.cjs +149 -8
- package/dist/cjs/ultramodern-workspace/add-vertical.cjs +25 -0
- package/dist/cjs/ultramodern-workspace/api.cjs +44 -0
- package/dist/cjs/ultramodern-workspace/app-files.cjs +8 -11
- package/dist/cjs/ultramodern-workspace/backend-federation.cjs +282 -0
- package/dist/cjs/ultramodern-workspace/contracts.cjs +24 -8
- package/dist/cjs/ultramodern-workspace/delivery-unit-sync.cjs +157 -0
- package/dist/cjs/ultramodern-workspace/delivery-unit.cjs +88 -0
- package/dist/cjs/ultramodern-workspace/descriptors.cjs +24 -0
- package/dist/cjs/ultramodern-workspace/module-federation.cjs +161 -50
- package/dist/cjs/ultramodern-workspace/package-json.cjs +26 -43
- package/dist/cjs/ultramodern-workspace/pnpm-workspace-policy-plan.cjs +166 -0
- package/dist/cjs/ultramodern-workspace/tooling-command-catalog.cjs +153 -0
- package/dist/cjs/ultramodern-workspace/versions.cjs +8 -3
- package/dist/cjs/ultramodern-workspace/workspace-script-plan.cjs +175 -0
- package/dist/cjs/ultramodern-workspace/workspace-scripts.cjs +104 -63
- package/dist/cjs/ultramodern-workspace/workspace-validation-contract.cjs +97 -0
- package/dist/cjs/ultramodern-workspace/write-workspace.cjs +11 -3
- package/dist/cjs/ultramodern-workspace/zerops.cjs +100 -0
- package/dist/esm/ultramodern-tooling/commands.js +775 -78
- package/dist/esm/ultramodern-tooling/config.js +144 -9
- package/dist/esm/ultramodern-workspace/add-vertical.js +26 -1
- package/dist/esm/ultramodern-workspace/api.js +43 -2
- package/dist/esm/ultramodern-workspace/app-files.js +8 -11
- package/dist/esm/ultramodern-workspace/backend-federation.js +217 -0
- package/dist/esm/ultramodern-workspace/contracts.js +24 -8
- package/dist/esm/ultramodern-workspace/delivery-unit-sync.js +108 -0
- package/dist/esm/ultramodern-workspace/delivery-unit.js +31 -0
- package/dist/esm/ultramodern-workspace/descriptors.js +13 -1
- package/dist/esm/ultramodern-workspace/module-federation.js +160 -42
- package/dist/esm/ultramodern-workspace/package-json.js +16 -40
- package/dist/esm/ultramodern-workspace/pnpm-workspace-policy-plan.js +113 -0
- package/dist/esm/ultramodern-workspace/tooling-command-catalog.js +100 -0
- package/dist/esm/ultramodern-workspace/versions.js +6 -4
- package/dist/esm/ultramodern-workspace/workspace-script-plan.js +110 -0
- package/dist/esm/ultramodern-workspace/workspace-scripts.js +88 -65
- package/dist/esm/ultramodern-workspace/workspace-validation-contract.js +59 -0
- package/dist/esm/ultramodern-workspace/write-workspace.js +14 -6
- package/dist/esm/ultramodern-workspace/zerops.js +62 -0
- package/dist/esm-node/ultramodern-tooling/commands.js +775 -78
- package/dist/esm-node/ultramodern-tooling/config.js +144 -9
- package/dist/esm-node/ultramodern-workspace/add-vertical.js +26 -1
- package/dist/esm-node/ultramodern-workspace/api.js +43 -2
- package/dist/esm-node/ultramodern-workspace/app-files.js +8 -11
- package/dist/esm-node/ultramodern-workspace/backend-federation.js +218 -0
- package/dist/esm-node/ultramodern-workspace/contracts.js +24 -8
- package/dist/esm-node/ultramodern-workspace/delivery-unit-sync.js +109 -0
- package/dist/esm-node/ultramodern-workspace/delivery-unit.js +32 -0
- package/dist/esm-node/ultramodern-workspace/descriptors.js +13 -1
- package/dist/esm-node/ultramodern-workspace/module-federation.js +160 -42
- package/dist/esm-node/ultramodern-workspace/package-json.js +16 -40
- package/dist/esm-node/ultramodern-workspace/pnpm-workspace-policy-plan.js +114 -0
- package/dist/esm-node/ultramodern-workspace/tooling-command-catalog.js +101 -0
- package/dist/esm-node/ultramodern-workspace/versions.js +6 -4
- package/dist/esm-node/ultramodern-workspace/workspace-script-plan.js +111 -0
- package/dist/esm-node/ultramodern-workspace/workspace-scripts.js +88 -65
- package/dist/esm-node/ultramodern-workspace/workspace-validation-contract.js +60 -0
- package/dist/esm-node/ultramodern-workspace/write-workspace.js +14 -6
- package/dist/esm-node/ultramodern-workspace/zerops.js +63 -0
- package/dist/types/ultramodern-tooling/config.d.ts +6 -0
- package/dist/types/ultramodern-workspace/api.d.ts +1 -0
- package/dist/types/ultramodern-workspace/backend-federation.d.ts +11 -0
- package/dist/types/ultramodern-workspace/contracts.d.ts +1 -1
- package/dist/types/ultramodern-workspace/delivery-unit-sync.d.ts +6 -0
- package/dist/types/ultramodern-workspace/delivery-unit.d.ts +27 -0
- package/dist/types/ultramodern-workspace/descriptors.d.ts +4 -0
- package/dist/types/ultramodern-workspace/module-federation.d.ts +4 -9
- package/dist/types/ultramodern-workspace/package-json.d.ts +0 -1
- package/dist/types/ultramodern-workspace/pnpm-workspace-policy-plan.d.ts +39 -0
- package/dist/types/ultramodern-workspace/tooling-command-catalog.d.ts +18 -0
- package/dist/types/ultramodern-workspace/versions.d.ts +5 -3
- package/dist/types/ultramodern-workspace/workspace-script-plan.d.ts +72 -0
- package/dist/types/ultramodern-workspace/workspace-scripts.d.ts +13 -0
- package/dist/types/ultramodern-workspace/workspace-validation-contract.d.ts +42 -0
- package/dist/types/ultramodern-workspace/zerops.d.ts +2 -0
- package/package.json +3 -3
- package/template-workspace/.gitignore.handlebars +4 -0
- package/template-workspace/README.md.handlebars +18 -15
- package/template-workspace/patches/@module-federation__bridge-react@2.6.0.patch +140 -0
- package/template-workspace/patches/@module-federation__modern-js-v3@2.6.0.patch +57 -0
- package/template-workspace/patches/drizzle-orm-ts7-strict-declarations.patch +452 -0
- package/template-workspace/patches/effect-schema-error-type-id.patch +18 -0
- package/template-workspace/pnpm-workspace.yaml.handlebars +8 -0
- package/template-workspace/scripts/bootstrap-agent-skills.mjs +11 -3
- package/templates/workspace-scripts/check-ultramodern-api-boundaries.mts +40 -2
- package/templates/workspace-scripts/generate-node-backend-federation.mjs +270 -0
- package/templates/workspace-scripts/materialize-zerops-runtime.mjs +448 -0
- package/templates/workspace-scripts/proof-cloudflare-version.mjs +237 -9
- package/templates/workspace-scripts/proof-node-backend-federation.mjs +729 -0
- package/templates/workspace-scripts/ultramodern-cloudflare-proof.mjs +188 -2
- package/templates/workspace-scripts/validate-ultramodern-workspace.mjs.handlebars +434 -18
|
@@ -0,0 +1,166 @@
|
|
|
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
|
+
createPnpmWorkspacePolicyPlan: ()=>createPnpmWorkspacePolicyPlan,
|
|
32
|
+
drizzleOrmDeclarationPatchPath: ()=>drizzleOrmDeclarationPatchPath,
|
|
33
|
+
effectDeclarationPatchPath: ()=>effectDeclarationPatchPath,
|
|
34
|
+
moduleFederationBridgeReactPatchPath: ()=>moduleFederationBridgeReactPatchPath,
|
|
35
|
+
moduleFederationModernJsPatchPath: ()=>moduleFederationModernJsPatchPath,
|
|
36
|
+
strictEffectPackageVersionPolicyExclusions: ()=>strictEffectPackageVersionPolicyExclusions
|
|
37
|
+
});
|
|
38
|
+
const external_versions_cjs_namespaceObject = require("./versions.cjs");
|
|
39
|
+
const strictEffectPackageVersionPolicyExclusions = [
|
|
40
|
+
`effect@${external_versions_cjs_namespaceObject.EFFECT_VERSION}`,
|
|
41
|
+
`@effect/opentelemetry@${external_versions_cjs_namespaceObject.EFFECT_VERSION}`
|
|
42
|
+
];
|
|
43
|
+
const moduleFederationModernJsPatchPath = `patches/@module-federation__modern-js-v3@${external_versions_cjs_namespaceObject.MODULE_FEDERATION_VERSION}.patch`;
|
|
44
|
+
const moduleFederationBridgeReactPatchPath = `patches/@module-federation__bridge-react@${external_versions_cjs_namespaceObject.MODULE_FEDERATION_VERSION}.patch`;
|
|
45
|
+
const effectDeclarationPatchPath = 'patches/effect-schema-error-type-id.patch';
|
|
46
|
+
const drizzleOrmDeclarationPatchPath = 'patches/drizzle-orm-ts7-strict-declarations.patch';
|
|
47
|
+
function createPnpmWorkspacePolicyPlan(options) {
|
|
48
|
+
return {
|
|
49
|
+
yamlActions: [
|
|
50
|
+
{
|
|
51
|
+
kind: 'replace-line',
|
|
52
|
+
pattern: /^ {4}'@effect\/vitest>effect': .+$/mu,
|
|
53
|
+
replacement: ` '@effect/vitest>effect': '${external_versions_cjs_namespaceObject.EFFECT_VERSION}'`
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
kind: 'ensure-scalar-map-entry',
|
|
57
|
+
key: 'overrides',
|
|
58
|
+
entryKey: "'@effect/opentelemetry'",
|
|
59
|
+
value: external_versions_cjs_namespaceObject.EFFECT_VERSION
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
kind: 'ensure-scalar-map-entry',
|
|
63
|
+
key: 'overrides',
|
|
64
|
+
entryKey: "'@effect/vitest'",
|
|
65
|
+
value: external_versions_cjs_namespaceObject.EFFECT_VITEST_VERSION
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
kind: 'ensure-scalar-map-entry',
|
|
69
|
+
key: 'overrides',
|
|
70
|
+
entryKey: 'effect',
|
|
71
|
+
value: external_versions_cjs_namespaceObject.EFFECT_VERSION
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
kind: 'ensure-scalar-map-entry',
|
|
75
|
+
key: 'allowBuilds',
|
|
76
|
+
entryKey: "'@parcel/watcher'",
|
|
77
|
+
value: 'true'
|
|
78
|
+
},
|
|
79
|
+
...strictEffectPackageVersionPolicyExclusions.flatMap((item)=>createStrictEffectPackageVersionPolicyActions(item)),
|
|
80
|
+
{
|
|
81
|
+
kind: 'ensure-map-entry',
|
|
82
|
+
key: 'patchedDependencies',
|
|
83
|
+
entryKey: `effect@${external_versions_cjs_namespaceObject.EFFECT_VERSION}`,
|
|
84
|
+
value: effectDeclarationPatchPath
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
kind: 'ensure-map-entry',
|
|
88
|
+
key: 'patchedDependencies',
|
|
89
|
+
entryKey: `@module-federation/modern-js-v3@${external_versions_cjs_namespaceObject.MODULE_FEDERATION_VERSION}`,
|
|
90
|
+
value: moduleFederationModernJsPatchPath
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
kind: 'ensure-map-entry',
|
|
94
|
+
key: 'patchedDependencies',
|
|
95
|
+
entryKey: `@module-federation/bridge-react@${external_versions_cjs_namespaceObject.MODULE_FEDERATION_VERSION}`,
|
|
96
|
+
value: moduleFederationBridgeReactPatchPath
|
|
97
|
+
},
|
|
98
|
+
options.usesDrizzleOrm ? {
|
|
99
|
+
kind: 'ensure-map-entry',
|
|
100
|
+
key: 'patchedDependencies',
|
|
101
|
+
entryKey: `drizzle-orm@${external_versions_cjs_namespaceObject.DRIZZLE_ORM_VERSION}`,
|
|
102
|
+
value: drizzleOrmDeclarationPatchPath
|
|
103
|
+
} : {
|
|
104
|
+
kind: 'remove-map-entry',
|
|
105
|
+
entryKey: `drizzle-orm@${external_versions_cjs_namespaceObject.DRIZZLE_ORM_VERSION}`
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
declarationPatchActions: [
|
|
109
|
+
{
|
|
110
|
+
kind: 'ensure',
|
|
111
|
+
relativePatchPath: moduleFederationModernJsPatchPath
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
kind: 'ensure',
|
|
115
|
+
relativePatchPath: moduleFederationBridgeReactPatchPath
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
kind: 'ensure',
|
|
119
|
+
relativePatchPath: effectDeclarationPatchPath
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
kind: options.usesDrizzleOrm ? 'ensure' : 'remove-if-unchanged',
|
|
123
|
+
relativePatchPath: drizzleOrmDeclarationPatchPath
|
|
124
|
+
}
|
|
125
|
+
],
|
|
126
|
+
requiresInstallOnChange: true
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
function createStrictEffectPackageVersionPolicyActions(item) {
|
|
130
|
+
const packageName = item.slice(0, item.lastIndexOf('@'));
|
|
131
|
+
const escapedPackageName = packageName.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&');
|
|
132
|
+
return [
|
|
133
|
+
{
|
|
134
|
+
kind: 'replace-line',
|
|
135
|
+
pattern: new RegExp(`^ {2}- '${escapedPackageName}@[^']+'$`, 'gmu'),
|
|
136
|
+
replacement: ` - '${item}'`
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
kind: 'ensure-list-item',
|
|
140
|
+
key: 'minimumReleaseAgeExclude',
|
|
141
|
+
item
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
kind: 'ensure-list-item',
|
|
145
|
+
key: 'trustPolicyExclude',
|
|
146
|
+
item
|
|
147
|
+
}
|
|
148
|
+
];
|
|
149
|
+
}
|
|
150
|
+
exports.createPnpmWorkspacePolicyPlan = __webpack_exports__.createPnpmWorkspacePolicyPlan;
|
|
151
|
+
exports.drizzleOrmDeclarationPatchPath = __webpack_exports__.drizzleOrmDeclarationPatchPath;
|
|
152
|
+
exports.effectDeclarationPatchPath = __webpack_exports__.effectDeclarationPatchPath;
|
|
153
|
+
exports.moduleFederationBridgeReactPatchPath = __webpack_exports__.moduleFederationBridgeReactPatchPath;
|
|
154
|
+
exports.moduleFederationModernJsPatchPath = __webpack_exports__.moduleFederationModernJsPatchPath;
|
|
155
|
+
exports.strictEffectPackageVersionPolicyExclusions = __webpack_exports__.strictEffectPackageVersionPolicyExclusions;
|
|
156
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
157
|
+
"createPnpmWorkspacePolicyPlan",
|
|
158
|
+
"drizzleOrmDeclarationPatchPath",
|
|
159
|
+
"effectDeclarationPatchPath",
|
|
160
|
+
"moduleFederationBridgeReactPatchPath",
|
|
161
|
+
"moduleFederationModernJsPatchPath",
|
|
162
|
+
"strictEffectPackageVersionPolicyExclusions"
|
|
163
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
164
|
+
Object.defineProperty(exports, '__esModule', {
|
|
165
|
+
value: true
|
|
166
|
+
});
|
|
@@ -0,0 +1,153 @@
|
|
|
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
|
+
const defineToolingCommand = (command)=>({
|
|
31
|
+
...command,
|
|
32
|
+
wrapperPath: `scripts/${command.wrapperName}.mts`
|
|
33
|
+
});
|
|
34
|
+
const generatedToolingCommands = [
|
|
35
|
+
defineToolingCommand({
|
|
36
|
+
id: 'validate',
|
|
37
|
+
command: 'validate',
|
|
38
|
+
wrapperName: 'validate-ultramodern-workspace',
|
|
39
|
+
contractKey: 'validate',
|
|
40
|
+
rootScript: 'contract:check'
|
|
41
|
+
}),
|
|
42
|
+
defineToolingCommand({
|
|
43
|
+
id: 'typecheck',
|
|
44
|
+
command: 'typecheck',
|
|
45
|
+
wrapperName: 'ultramodern-typecheck',
|
|
46
|
+
contractKey: 'typecheck',
|
|
47
|
+
rootScript: 'typecheck',
|
|
48
|
+
templatePath: "templates/workspace-scripts/ultramodern-typecheck.mjs",
|
|
49
|
+
cwd: 'invocation'
|
|
50
|
+
}),
|
|
51
|
+
defineToolingCommand({
|
|
52
|
+
id: 'mfTypes',
|
|
53
|
+
command: 'mf-types',
|
|
54
|
+
wrapperName: 'assert-mf-types',
|
|
55
|
+
contractKey: 'mfTypes',
|
|
56
|
+
rootScript: 'mf:types'
|
|
57
|
+
}),
|
|
58
|
+
defineToolingCommand({
|
|
59
|
+
id: 'publicSurface',
|
|
60
|
+
command: 'public-surface',
|
|
61
|
+
wrapperName: 'generate-public-surface-assets',
|
|
62
|
+
contractKey: 'publicSurface',
|
|
63
|
+
templatePath: "templates/workspace-scripts/generate-public-surface-assets.mjs"
|
|
64
|
+
}),
|
|
65
|
+
defineToolingCommand({
|
|
66
|
+
id: 'backendFederationGenerate',
|
|
67
|
+
command: 'backend-federation-generate',
|
|
68
|
+
wrapperName: 'generate-node-backend-federation',
|
|
69
|
+
contractKey: 'backendFederationGenerate',
|
|
70
|
+
rootScript: 'node:backend-federation:generate',
|
|
71
|
+
templatePath: "templates/workspace-scripts/generate-node-backend-federation.mjs"
|
|
72
|
+
}),
|
|
73
|
+
defineToolingCommand({
|
|
74
|
+
id: 'backendFederationProof',
|
|
75
|
+
command: 'backend-federation-proof',
|
|
76
|
+
wrapperName: 'proof-node-backend-federation',
|
|
77
|
+
contractKey: 'backendFederationProof',
|
|
78
|
+
rootScript: 'node:proof',
|
|
79
|
+
templatePath: "templates/workspace-scripts/proof-node-backend-federation.mjs"
|
|
80
|
+
}),
|
|
81
|
+
defineToolingCommand({
|
|
82
|
+
id: 'cloudflareProof',
|
|
83
|
+
command: 'cloudflare-proof',
|
|
84
|
+
wrapperName: 'proof-cloudflare-version',
|
|
85
|
+
contractKey: 'cloudflareProof',
|
|
86
|
+
rootScript: 'cloudflare:proof',
|
|
87
|
+
templatePath: "templates/workspace-scripts/proof-cloudflare-version.mjs"
|
|
88
|
+
}),
|
|
89
|
+
defineToolingCommand({
|
|
90
|
+
id: 'cloudflareOutputVerify',
|
|
91
|
+
command: 'cloudflare-output-verify',
|
|
92
|
+
wrapperName: 'verify-cloudflare-output',
|
|
93
|
+
contractKey: 'cloudflareOutputVerify',
|
|
94
|
+
rootScript: 'cloudflare-output:verify'
|
|
95
|
+
}),
|
|
96
|
+
defineToolingCommand({
|
|
97
|
+
id: 'performanceReadiness',
|
|
98
|
+
command: 'performance-readiness',
|
|
99
|
+
wrapperName: 'ultramodern-performance-readiness',
|
|
100
|
+
contractKey: 'performanceReadiness',
|
|
101
|
+
rootScript: 'performance:readiness',
|
|
102
|
+
templatePath: "templates/workspace-scripts/ultramodern-performance-readiness.mjs"
|
|
103
|
+
}),
|
|
104
|
+
defineToolingCommand({
|
|
105
|
+
id: 'migrateStrictEffect',
|
|
106
|
+
command: 'migrate-strict-effect',
|
|
107
|
+
wrapperName: 'migrate-strict-effect',
|
|
108
|
+
contractKey: 'migrateStrictEffect',
|
|
109
|
+
rootScript: 'migrate:strict-effect'
|
|
110
|
+
}),
|
|
111
|
+
defineToolingCommand({
|
|
112
|
+
id: 'routesGenerate',
|
|
113
|
+
command: 'routes-generate',
|
|
114
|
+
wrapperName: 'generate-tanstack-routes',
|
|
115
|
+
contractKey: 'routesGenerate'
|
|
116
|
+
})
|
|
117
|
+
];
|
|
118
|
+
const toolingCommandById = Object.fromEntries(generatedToolingCommands.map((command)=>[
|
|
119
|
+
command.id,
|
|
120
|
+
command
|
|
121
|
+
]));
|
|
122
|
+
const GENERATED_TOOLING_COMMANDS = toolingCommandById;
|
|
123
|
+
const generatedToolingCommandList = ()=>generatedToolingCommands.map((command)=>command.command);
|
|
124
|
+
const createToolingWrapperContract = ()=>Object.fromEntries(generatedToolingCommands.map((command)=>[
|
|
125
|
+
command.contractKey,
|
|
126
|
+
command.wrapperPath
|
|
127
|
+
]));
|
|
128
|
+
const createGeneratedToolingWrapperMap = createToolingWrapperContract;
|
|
129
|
+
__webpack_require__.d(__webpack_exports__, {}, {
|
|
130
|
+
GENERATED_TOOLING_COMMANDS: GENERATED_TOOLING_COMMANDS,
|
|
131
|
+
createGeneratedToolingWrapperMap: createGeneratedToolingWrapperMap,
|
|
132
|
+
createToolingWrapperContract: createToolingWrapperContract,
|
|
133
|
+
generatedToolingCommandList: generatedToolingCommandList,
|
|
134
|
+
generatedToolingCommands: generatedToolingCommands,
|
|
135
|
+
toolingCommandById: toolingCommandById
|
|
136
|
+
});
|
|
137
|
+
exports.GENERATED_TOOLING_COMMANDS = __webpack_exports__.GENERATED_TOOLING_COMMANDS;
|
|
138
|
+
exports.createGeneratedToolingWrapperMap = __webpack_exports__.createGeneratedToolingWrapperMap;
|
|
139
|
+
exports.createToolingWrapperContract = __webpack_exports__.createToolingWrapperContract;
|
|
140
|
+
exports.generatedToolingCommandList = __webpack_exports__.generatedToolingCommandList;
|
|
141
|
+
exports.generatedToolingCommands = __webpack_exports__.generatedToolingCommands;
|
|
142
|
+
exports.toolingCommandById = __webpack_exports__.toolingCommandById;
|
|
143
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
144
|
+
"GENERATED_TOOLING_COMMANDS",
|
|
145
|
+
"createGeneratedToolingWrapperMap",
|
|
146
|
+
"createToolingWrapperContract",
|
|
147
|
+
"generatedToolingCommandList",
|
|
148
|
+
"generatedToolingCommands",
|
|
149
|
+
"toolingCommandById"
|
|
150
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
151
|
+
Object.defineProperty(exports, '__esModule', {
|
|
152
|
+
value: true
|
|
153
|
+
});
|
|
@@ -37,9 +37,10 @@ const CLOUDFLARE_COMPATIBILITY_DATE = '2026-06-02';
|
|
|
37
37
|
const TAILWIND_VERSION = '4.3.1';
|
|
38
38
|
const TAILWIND_POSTCSS_VERSION = '4.3.1';
|
|
39
39
|
const POSTCSS_VERSION = '8.5.15';
|
|
40
|
-
const EFFECT_VERSION = '4.0.0-beta.
|
|
41
|
-
const EFFECT_VITEST_VERSION = '4.0.0-beta.
|
|
40
|
+
const EFFECT_VERSION = '4.0.0-beta.92';
|
|
41
|
+
const EFFECT_VITEST_VERSION = '4.0.0-beta.92';
|
|
42
42
|
const EFFECT_TSGO_VERSION = '0.14.6';
|
|
43
|
+
const DRIZZLE_ORM_VERSION = '1.0.0-rc.4';
|
|
43
44
|
const TYPESCRIPT_STABLE_VERSION = '6.0.3';
|
|
44
45
|
const TYPESCRIPT_NATIVE_PREVIEW_VERSION = '7.0.0-dev.20260628.1';
|
|
45
46
|
const TYPESCRIPT_VERSION = TYPESCRIPT_STABLE_VERSION;
|
|
@@ -51,7 +52,7 @@ const I18NEXT_VERSION = '26.3.1';
|
|
|
51
52
|
const NODE_FETCH_VERSION = '^3.3.2';
|
|
52
53
|
const REACT_VERSION = '^19.2.7';
|
|
53
54
|
const REACT_DOM_VERSION = '^19.2.7';
|
|
54
|
-
const REACT_ROUTER_VERSION = '7.18.
|
|
55
|
+
const REACT_ROUTER_VERSION = '7.18.1';
|
|
55
56
|
const TYPES_REACT_VERSION = '^19.2.17';
|
|
56
57
|
const TYPES_REACT_DOM_VERSION = '^19.2.3';
|
|
57
58
|
const NODE_VERSION = '26.3.0';
|
|
@@ -64,11 +65,13 @@ const ultramodernWorkspaceVersions = {
|
|
|
64
65
|
moduleFederation: MODULE_FEDERATION_VERSION,
|
|
65
66
|
effect: EFFECT_VERSION,
|
|
66
67
|
effectVitest: EFFECT_VITEST_VERSION,
|
|
68
|
+
drizzleOrm: DRIZZLE_ORM_VERSION,
|
|
67
69
|
tailwind: TAILWIND_VERSION,
|
|
68
70
|
tailwindPostcss: TAILWIND_POSTCSS_VERSION
|
|
69
71
|
};
|
|
70
72
|
__webpack_require__.d(__webpack_exports__, {}, {
|
|
71
73
|
CLOUDFLARE_COMPATIBILITY_DATE: CLOUDFLARE_COMPATIBILITY_DATE,
|
|
74
|
+
DRIZZLE_ORM_VERSION: DRIZZLE_ORM_VERSION,
|
|
72
75
|
EFFECT_TSGO_VERSION: EFFECT_TSGO_VERSION,
|
|
73
76
|
EFFECT_VERSION: EFFECT_VERSION,
|
|
74
77
|
EFFECT_VITEST_VERSION: EFFECT_VITEST_VERSION,
|
|
@@ -102,6 +105,7 @@ __webpack_require__.d(__webpack_exports__, {}, {
|
|
|
102
105
|
ultramodernWorkspaceVersions: ultramodernWorkspaceVersions
|
|
103
106
|
});
|
|
104
107
|
exports.CLOUDFLARE_COMPATIBILITY_DATE = __webpack_exports__.CLOUDFLARE_COMPATIBILITY_DATE;
|
|
108
|
+
exports.DRIZZLE_ORM_VERSION = __webpack_exports__.DRIZZLE_ORM_VERSION;
|
|
105
109
|
exports.EFFECT_TSGO_VERSION = __webpack_exports__.EFFECT_TSGO_VERSION;
|
|
106
110
|
exports.EFFECT_VERSION = __webpack_exports__.EFFECT_VERSION;
|
|
107
111
|
exports.EFFECT_VITEST_VERSION = __webpack_exports__.EFFECT_VITEST_VERSION;
|
|
@@ -135,6 +139,7 @@ exports.ZEPHYR_RSPACK_PLUGIN_VERSION = __webpack_exports__.ZEPHYR_RSPACK_PLUGIN_
|
|
|
135
139
|
exports.ultramodernWorkspaceVersions = __webpack_exports__.ultramodernWorkspaceVersions;
|
|
136
140
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
137
141
|
"CLOUDFLARE_COMPATIBILITY_DATE",
|
|
142
|
+
"DRIZZLE_ORM_VERSION",
|
|
138
143
|
"EFFECT_TSGO_VERSION",
|
|
139
144
|
"EFFECT_VERSION",
|
|
140
145
|
"EFFECT_VITEST_VERSION",
|
|
@@ -0,0 +1,175 @@
|
|
|
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
|
+
createStrictTsgoTypecheckCommand: ()=>createStrictTsgoTypecheckCommand,
|
|
32
|
+
createWorkspaceAppPackageScripts: ()=>createWorkspaceAppPackageScripts,
|
|
33
|
+
createWorkspaceAppScriptPlan: ()=>createWorkspaceAppScriptPlan,
|
|
34
|
+
createWorkspaceRootPackageScripts: ()=>createWorkspaceRootPackageScripts,
|
|
35
|
+
createWorkspaceRootScriptPlan: ()=>createWorkspaceRootScriptPlan,
|
|
36
|
+
packageToolingWrapperCommand: ()=>packageToolingWrapperCommand,
|
|
37
|
+
rootToolingScriptName: ()=>rootToolingScriptName,
|
|
38
|
+
rootToolingWrapperCommand: ()=>rootToolingWrapperCommand,
|
|
39
|
+
workspaceAppPackageScriptNames: ()=>workspaceAppPackageScriptNames,
|
|
40
|
+
workspaceRootPackageScriptNames: ()=>workspaceRootPackageScriptNames
|
|
41
|
+
});
|
|
42
|
+
const external_descriptors_cjs_namespaceObject = require("./descriptors.cjs");
|
|
43
|
+
const external_naming_cjs_namespaceObject = require("./naming.cjs");
|
|
44
|
+
const external_public_surface_cjs_namespaceObject = require("./public-surface.cjs");
|
|
45
|
+
const external_tooling_command_catalog_cjs_namespaceObject = require("./tooling-command-catalog.cjs");
|
|
46
|
+
const toolingWrapperPath = (key)=>external_tooling_command_catalog_cjs_namespaceObject.GENERATED_TOOLING_COMMANDS[key].wrapperPath;
|
|
47
|
+
const rootToolingScriptName = (key)=>{
|
|
48
|
+
const rootScript = external_tooling_command_catalog_cjs_namespaceObject.GENERATED_TOOLING_COMMANDS[key].rootScript;
|
|
49
|
+
if (!rootScript) throw new Error(`Generated tooling command ${key} does not define a root package script.`);
|
|
50
|
+
return rootScript;
|
|
51
|
+
};
|
|
52
|
+
const rootToolingWrapperCommand = (key)=>`node ./${toolingWrapperPath(key)}`;
|
|
53
|
+
const relativeToolingWrapperPath = (packageDir, key)=>`${(0, external_naming_cjs_namespaceObject.relativeRootFor)(packageDir)}/${toolingWrapperPath(key)}`;
|
|
54
|
+
const packageToolingWrapperCommand = (packageDir, key)=>`node ${relativeToolingWrapperPath(packageDir, key)}`;
|
|
55
|
+
const workspaceRootPackageScriptNames = {
|
|
56
|
+
build: 'build',
|
|
57
|
+
cloudflareBuild: 'cloudflare:build',
|
|
58
|
+
cloudflareDeploy: 'cloudflare:deploy',
|
|
59
|
+
cloudflareProof: rootToolingScriptName('cloudflareProof'),
|
|
60
|
+
cloudflareOutputVerify: rootToolingScriptName('cloudflareOutputVerify'),
|
|
61
|
+
backendFederationGenerate: rootToolingScriptName('backendFederationGenerate'),
|
|
62
|
+
nodeProof: rootToolingScriptName('backendFederationProof'),
|
|
63
|
+
mfTypes: rootToolingScriptName('mfTypes'),
|
|
64
|
+
performanceReadiness: rootToolingScriptName('performanceReadiness'),
|
|
65
|
+
migrateStrictEffect: rootToolingScriptName('migrateStrictEffect'),
|
|
66
|
+
zeropsMaterialize: 'zerops:materialize',
|
|
67
|
+
contractCheck: rootToolingScriptName('validate'),
|
|
68
|
+
typecheck: 'typecheck',
|
|
69
|
+
check: 'check'
|
|
70
|
+
};
|
|
71
|
+
const workspaceAppPackageScriptNames = {
|
|
72
|
+
dev: 'dev',
|
|
73
|
+
build: 'build',
|
|
74
|
+
cloudflareBuild: 'cloudflare:build',
|
|
75
|
+
cloudflareDeploy: 'cloudflare:deploy',
|
|
76
|
+
cloudflarePreview: 'cloudflare:preview',
|
|
77
|
+
cloudflareProof: 'cloudflare:proof',
|
|
78
|
+
serve: 'serve',
|
|
79
|
+
typecheck: 'typecheck'
|
|
80
|
+
};
|
|
81
|
+
const createStrictTsgoTypecheckCommand = (packageDir)=>`${packageToolingWrapperCommand(packageDir, 'typecheck')} --project tsconfig.json`;
|
|
82
|
+
function createWorkspaceAppScriptPlan(app) {
|
|
83
|
+
const backendFederationBuildCommand = (0, external_descriptors_cjs_namespaceObject.appHasApi)(app) ? `${packageToolingWrapperCommand(app.directory, 'backendFederationGenerate')} --app ${app.id}` : void 0;
|
|
84
|
+
const backendFederationCloudflareBuildCommand = backendFederationBuildCommand ? `${backendFederationBuildCommand} --target dist-cloudflare` : void 0;
|
|
85
|
+
const buildSteps = [
|
|
86
|
+
'ULTRAMODERN_ZEPHYR=false modern build',
|
|
87
|
+
backendFederationBuildCommand,
|
|
88
|
+
(0, external_public_surface_cjs_namespaceObject.createPublicSurfaceGenerationCommand)(app, 'dist'),
|
|
89
|
+
app.exposes ? packageToolingWrapperCommand(app.directory, 'mfTypes') : void 0
|
|
90
|
+
].filter((step)=>Boolean(step));
|
|
91
|
+
const cloudflareBuildSteps = [
|
|
92
|
+
'ULTRAMODERN_ZEPHYR=false MODERNJS_DEPLOY=cloudflare modern build',
|
|
93
|
+
backendFederationCloudflareBuildCommand,
|
|
94
|
+
'ULTRAMODERN_ZEPHYR=false MODERNJS_DEPLOY=cloudflare modern deploy --skip-build',
|
|
95
|
+
(0, external_public_surface_cjs_namespaceObject.createPublicSurfaceGenerationCommand)(app, 'cloudflare'),
|
|
96
|
+
`${packageToolingWrapperCommand(app.directory, 'cloudflareOutputVerify')} --app ${app.id}`
|
|
97
|
+
].filter((step)=>Boolean(step));
|
|
98
|
+
return {
|
|
99
|
+
dev: 'modern dev',
|
|
100
|
+
build: buildSteps.join(' && '),
|
|
101
|
+
cloudflareBuild: cloudflareBuildSteps.join(' && '),
|
|
102
|
+
cloudflareDeploy: 'ULTRAMODERN_CLOUDFLARE_REQUIRE_PUBLIC_URLS=true pnpm run cloudflare:build && wrangler deploy --config .output/wrangler.json',
|
|
103
|
+
cloudflarePreview: 'pnpm run cloudflare:build && wrangler dev --config .output/wrangler.json',
|
|
104
|
+
cloudflareProof: `${packageToolingWrapperCommand(app.directory, 'cloudflareProof')} --app ${app.id}`,
|
|
105
|
+
serve: 'modern serve',
|
|
106
|
+
typecheck: createStrictTsgoTypecheckCommand(app.directory)
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
function createWorkspaceAppPackageScripts(app) {
|
|
110
|
+
const plan = createWorkspaceAppScriptPlan(app);
|
|
111
|
+
return Object.fromEntries(Object.entries(workspaceAppPackageScriptNames).map(([planKey, packageScriptName])=>[
|
|
112
|
+
packageScriptName,
|
|
113
|
+
plan[planKey]
|
|
114
|
+
]));
|
|
115
|
+
}
|
|
116
|
+
function createWorkspaceRootScriptPlan(remotes = [], options = {}) {
|
|
117
|
+
const hasRemotes = remotes.length > 0;
|
|
118
|
+
const mfTypesScript = rootToolingScriptName('mfTypes');
|
|
119
|
+
const performanceReadinessScript = rootToolingScriptName('performanceReadiness');
|
|
120
|
+
const cloudflareOutputVerifyScript = rootToolingScriptName('cloudflareOutputVerify');
|
|
121
|
+
const backendFederationGenerateScript = rootToolingScriptName('backendFederationGenerate');
|
|
122
|
+
const nodeProofScript = rootToolingScriptName('backendFederationProof');
|
|
123
|
+
const bridgeCheck = options.bridgeCheck ?? '';
|
|
124
|
+
const remoteBuildPrefix = hasRemotes ? 'ULTRAMODERN_ZEPHYR=false pnpm -r --filter "./verticals/*" run build && ' : '';
|
|
125
|
+
const remoteCloudflareBuildPrefix = hasRemotes ? 'pnpm -r --filter "./verticals/*" run cloudflare:build && ' : '';
|
|
126
|
+
const remoteCloudflareDeployPrefix = hasRemotes ? 'pnpm -r --filter "./verticals/*" run cloudflare:deploy && ' : '';
|
|
127
|
+
return {
|
|
128
|
+
build: `${remoteBuildPrefix}ULTRAMODERN_ZEPHYR=false pnpm --filter "./apps/shell-super-app" run build && pnpm ${mfTypesScript} && pnpm ${performanceReadinessScript}`,
|
|
129
|
+
cloudflareBuild: `${remoteCloudflareBuildPrefix}pnpm --filter "./apps/shell-super-app" run cloudflare:build && pnpm ${mfTypesScript} && pnpm ${cloudflareOutputVerifyScript}`,
|
|
130
|
+
cloudflareDeploy: `${remoteCloudflareDeployPrefix}pnpm --filter "./apps/shell-super-app" run cloudflare:deploy`,
|
|
131
|
+
cloudflareProof: `${rootToolingWrapperCommand('cloudflareProof')} --out .codex/reports/cloudflare-version-proof/public-url-proof.json`,
|
|
132
|
+
cloudflareOutputVerify: rootToolingWrapperCommand('cloudflareOutputVerify'),
|
|
133
|
+
backendFederationGenerate: rootToolingWrapperCommand('backendFederationGenerate'),
|
|
134
|
+
nodeProof: rootToolingWrapperCommand('backendFederationProof'),
|
|
135
|
+
mfTypes: rootToolingWrapperCommand('mfTypes'),
|
|
136
|
+
performanceReadiness: rootToolingWrapperCommand('performanceReadiness'),
|
|
137
|
+
migrateStrictEffect: rootToolingWrapperCommand('migrateStrictEffect'),
|
|
138
|
+
zeropsMaterialize: "node ./scripts/materialize-zerops-runtime.mjs",
|
|
139
|
+
contractCheck: rootToolingWrapperCommand('validate'),
|
|
140
|
+
typecheck: options.typecheck ?? `${rootToolingWrapperCommand('typecheck')} --project tsconfig.json`,
|
|
141
|
+
check: `pnpm format:check && pnpm lint && pnpm typecheck && pnpm skills:check && pnpm i18n:boundaries && pnpm api:check && pnpm contract:check${hasRemotes ? ` && pnpm ${backendFederationGenerateScript} && pnpm ${nodeProofScript}` : ''} && pnpm performance:readiness${bridgeCheck}`
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
function createWorkspaceRootPackageScripts(remotes = [], options = {}) {
|
|
145
|
+
const plan = createWorkspaceRootScriptPlan(remotes, options);
|
|
146
|
+
return Object.fromEntries(Object.entries(workspaceRootPackageScriptNames).map(([planKey, packageScriptName])=>[
|
|
147
|
+
packageScriptName,
|
|
148
|
+
plan[planKey]
|
|
149
|
+
]));
|
|
150
|
+
}
|
|
151
|
+
exports.createStrictTsgoTypecheckCommand = __webpack_exports__.createStrictTsgoTypecheckCommand;
|
|
152
|
+
exports.createWorkspaceAppPackageScripts = __webpack_exports__.createWorkspaceAppPackageScripts;
|
|
153
|
+
exports.createWorkspaceAppScriptPlan = __webpack_exports__.createWorkspaceAppScriptPlan;
|
|
154
|
+
exports.createWorkspaceRootPackageScripts = __webpack_exports__.createWorkspaceRootPackageScripts;
|
|
155
|
+
exports.createWorkspaceRootScriptPlan = __webpack_exports__.createWorkspaceRootScriptPlan;
|
|
156
|
+
exports.packageToolingWrapperCommand = __webpack_exports__.packageToolingWrapperCommand;
|
|
157
|
+
exports.rootToolingScriptName = __webpack_exports__.rootToolingScriptName;
|
|
158
|
+
exports.rootToolingWrapperCommand = __webpack_exports__.rootToolingWrapperCommand;
|
|
159
|
+
exports.workspaceAppPackageScriptNames = __webpack_exports__.workspaceAppPackageScriptNames;
|
|
160
|
+
exports.workspaceRootPackageScriptNames = __webpack_exports__.workspaceRootPackageScriptNames;
|
|
161
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
162
|
+
"createStrictTsgoTypecheckCommand",
|
|
163
|
+
"createWorkspaceAppPackageScripts",
|
|
164
|
+
"createWorkspaceAppScriptPlan",
|
|
165
|
+
"createWorkspaceRootPackageScripts",
|
|
166
|
+
"createWorkspaceRootScriptPlan",
|
|
167
|
+
"packageToolingWrapperCommand",
|
|
168
|
+
"rootToolingScriptName",
|
|
169
|
+
"rootToolingWrapperCommand",
|
|
170
|
+
"workspaceAppPackageScriptNames",
|
|
171
|
+
"workspaceRootPackageScriptNames"
|
|
172
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
173
|
+
Object.defineProperty(exports, '__esModule', {
|
|
174
|
+
value: true
|
|
175
|
+
});
|