@tamagui/static 2.7.7 → 3.0.0-beta.643.1
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/dist/cjs/check-dep-versions.cjs +355 -0
- package/dist/cjs/checkDeps.cjs +302 -0
- package/dist/cjs/compiler.cjs +286 -0
- package/dist/cjs/compilerHost.cjs +1695 -0
- package/dist/cjs/constants.cjs +33 -0
- package/dist/cjs/domStructuralPass.cjs +112 -0
- package/dist/cjs/exports.cjs +42 -0
- package/dist/cjs/extractor/addLocalExports.cjs +64 -0
- package/dist/cjs/extractor/bundle.cjs +203 -0
- package/dist/cjs/extractor/bundleConfig.cjs +747 -0
- package/dist/cjs/extractor/concatClassName.cjs +117 -0
- package/dist/cjs/extractor/detectModuleFormat.cjs +54 -0
- package/dist/cjs/extractor/esbuildAliasPlugin.cjs +47 -0
- package/dist/cjs/extractor/esbuildTsconfigPaths.cjs +92 -0
- package/dist/cjs/extractor/getTamaguiConfigPathFromOptionsConfig.cjs +38 -0
- package/dist/cjs/extractor/loadTamagui.cjs +344 -0
- package/dist/cjs/extractor/regenerateConfig.cjs +161 -0
- package/dist/cjs/extractor/watchTamaguiConfig.cjs +64 -0
- package/dist/cjs/getPragmaOptions.cjs +67 -0
- package/dist/cjs/helpers/memoize.cjs +42 -0
- package/dist/cjs/helpers/requireTamaguiCore.cjs +40 -0
- package/dist/cjs/index.cjs +34 -0
- package/dist/cjs/registerRequire.cjs +220 -0
- package/dist/cjs/server.cjs +66 -0
- package/dist/cjs/staticEvaluationIgnoredModules.cjs +86 -0
- package/dist/cjs/types.cjs +17 -0
- package/dist/cjs/zero/artifact.cjs +145 -0
- package/dist/cjs/zero/graph.cjs +209 -0
- package/dist/cjs/zero/identity.cjs +61 -0
- package/dist/cjs/zero/index.cjs +26 -0
- package/dist/cjs/zero/islands.cjs +232 -0
- package/dist/cjs/zero/options.cjs +163 -0
- package/dist/cjs/zero/ownership.cjs +79 -0
- package/dist/cjs/zero/theme.cjs +328 -0
- package/dist/cjs/zero/transform.cjs +203 -0
- package/dist/esm/check-dep-versions.mjs +329 -0
- package/dist/esm/check-dep-versions.mjs.map +1 -0
- package/dist/esm/checkDeps.mjs +279 -0
- package/dist/esm/checkDeps.mjs.map +1 -0
- package/dist/esm/compiler.mjs +255 -0
- package/dist/esm/compiler.mjs.map +1 -0
- package/dist/esm/compilerHost.mjs +1675 -0
- package/dist/esm/compilerHost.mjs.map +1 -0
- package/dist/esm/constants.mjs +7 -0
- package/dist/esm/constants.mjs.map +1 -0
- package/dist/esm/domStructuralPass.mjs +92 -0
- package/dist/esm/domStructuralPass.mjs.map +1 -0
- package/dist/esm/exports.mjs +26 -0
- package/dist/esm/extractor/addLocalExports.mjs +44 -0
- package/dist/esm/extractor/addLocalExports.mjs.map +1 -0
- package/dist/esm/extractor/bundle.mjs +173 -0
- package/dist/esm/extractor/bundle.mjs.map +1 -0
- package/dist/esm/extractor/bundleConfig.mjs +706 -0
- package/dist/esm/extractor/bundleConfig.mjs.map +1 -0
- package/dist/esm/extractor/concatClassName.mjs +96 -0
- package/dist/esm/extractor/concatClassName.mjs.map +1 -0
- package/dist/esm/extractor/detectModuleFormat.mjs +31 -0
- package/dist/esm/extractor/detectModuleFormat.mjs.map +1 -0
- package/dist/esm/extractor/esbuildAliasPlugin.mjs +26 -0
- package/dist/esm/extractor/esbuildAliasPlugin.mjs.map +1 -0
- package/dist/esm/extractor/esbuildTsconfigPaths.mjs +63 -0
- package/dist/esm/extractor/esbuildTsconfigPaths.mjs.map +1 -0
- package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.mjs +18 -0
- package/dist/esm/extractor/getTamaguiConfigPathFromOptionsConfig.mjs.map +1 -0
- package/dist/esm/extractor/loadTamagui.mjs +306 -0
- package/dist/esm/extractor/loadTamagui.mjs.map +1 -0
- package/dist/esm/extractor/regenerateConfig.mjs +131 -0
- package/dist/esm/extractor/regenerateConfig.mjs.map +1 -0
- package/dist/esm/extractor/watchTamaguiConfig.mjs +43 -0
- package/dist/esm/extractor/watchTamaguiConfig.mjs.map +1 -0
- package/dist/esm/getPragmaOptions.mjs +46 -0
- package/dist/esm/getPragmaOptions.mjs.map +1 -0
- package/dist/esm/helpers/memoize.mjs +21 -0
- package/dist/esm/helpers/memoize.mjs.map +1 -0
- package/dist/esm/helpers/requireTamaguiCore.mjs +19 -0
- package/dist/esm/helpers/requireTamaguiCore.mjs.map +1 -0
- package/dist/esm/index.mjs +8 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/registerRequire.mjs +195 -0
- package/dist/esm/registerRequire.mjs.map +1 -0
- package/dist/esm/server.mjs +40 -0
- package/dist/esm/server.mjs.map +1 -0
- package/dist/esm/setup.mjs +0 -0
- package/dist/esm/staticEvaluationIgnoredModules.mjs +61 -0
- package/dist/esm/staticEvaluationIgnoredModules.mjs.map +1 -0
- package/dist/esm/types.mjs +0 -0
- package/dist/esm/zero/artifact.mjs +119 -0
- package/dist/esm/zero/artifact.mjs.map +1 -0
- package/dist/esm/zero/graph.mjs +170 -0
- package/dist/esm/zero/graph.mjs.map +1 -0
- package/dist/esm/zero/identity.mjs +36 -0
- package/dist/esm/zero/identity.mjs.map +1 -0
- package/dist/esm/zero/index.mjs +15 -0
- package/dist/esm/zero/islands.mjs +197 -0
- package/dist/esm/zero/islands.mjs.map +1 -0
- package/dist/esm/zero/options.mjs +129 -0
- package/dist/esm/zero/options.mjs.map +1 -0
- package/dist/esm/zero/ownership.mjs +48 -0
- package/dist/esm/zero/ownership.mjs.map +1 -0
- package/dist/esm/zero/theme.mjs +303 -0
- package/dist/esm/zero/theme.mjs.map +1 -0
- package/dist/esm/zero/transform.mjs +177 -0
- package/dist/esm/zero/transform.mjs.map +1 -0
- package/package.json +33 -43
- package/src/check-dep-versions.ts +2 -2
- package/src/checkDeps.ts +3 -2
- package/src/compiler.ts +425 -0
- package/src/compilerHost.ts +3125 -0
- package/src/constants.ts +0 -5
- package/src/domStructuralPass.ts +170 -0
- package/src/exports.ts +3 -6
- package/src/extractor/addLocalExports.ts +49 -0
- package/src/extractor/bundle.ts +20 -35
- package/src/extractor/bundleConfig.ts +334 -187
- package/src/extractor/concatClassName.ts +13 -20
- package/src/extractor/getTamaguiConfigPathFromOptionsConfig.ts +5 -4
- package/src/extractor/loadTamagui.ts +196 -143
- package/src/extractor/regenerateConfig.ts +65 -13
- package/src/extractor/watchTamaguiConfig.ts +6 -1
- package/src/helpers/requireTamaguiCore.ts +6 -1
- package/src/registerRequire.ts +94 -132
- package/src/staticEvaluationIgnoredModules.ts +74 -0
- package/src/types.ts +2 -107
- package/src/zero/artifact.ts +142 -0
- package/src/zero/graph.ts +359 -0
- package/src/zero/identity.ts +73 -0
- package/src/zero/index.ts +8 -0
- package/src/zero/islands.ts +262 -0
- package/src/zero/options.ts +239 -0
- package/src/zero/ownership.ts +113 -0
- package/src/zero/theme.ts +478 -0
- package/src/zero/transform.ts +320 -0
- package/types/check-dep-versions.d.ts.map +1 -1
- package/types/checkDeps.d.ts.map +1 -1
- package/types/compiler.d.ts +117 -0
- package/types/compiler.d.ts.map +1 -0
- package/types/compilerHost.d.ts +25 -0
- package/types/compilerHost.d.ts.map +1 -0
- package/types/constants.d.ts +0 -1
- package/types/constants.d.ts.map +1 -1
- package/types/domStructuralPass.d.ts +3 -0
- package/types/domStructuralPass.d.ts.map +1 -0
- package/types/exports.d.ts +3 -6
- package/types/exports.d.ts.map +1 -1
- package/types/extractor/addLocalExports.d.ts +3 -0
- package/types/extractor/addLocalExports.d.ts.map +1 -0
- package/types/extractor/bundle.d.ts +66 -65
- package/types/extractor/bundle.d.ts.map +1 -1
- package/types/extractor/bundleConfig.d.ts +19 -4
- package/types/extractor/bundleConfig.d.ts.map +1 -1
- package/types/extractor/esbuildAliasPlugin.d.ts.map +1 -1
- package/types/extractor/getTamaguiConfigPathFromOptionsConfig.d.ts +1 -1
- package/types/extractor/getTamaguiConfigPathFromOptionsConfig.d.ts.map +1 -1
- package/types/extractor/loadTamagui.d.ts +26 -3
- package/types/extractor/loadTamagui.d.ts.map +1 -1
- package/types/extractor/regenerateConfig.d.ts +1 -1
- package/types/extractor/regenerateConfig.d.ts.map +1 -1
- package/types/extractor/watchTamaguiConfig.d.ts.map +1 -1
- package/types/getPragmaOptions.d.ts +1 -1
- package/types/helpers/memoize.d.ts +1 -1
- package/types/helpers/memoize.d.ts.map +1 -1
- package/types/helpers/requireTamaguiCore.d.ts.map +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/registerRequire.d.ts +2 -2
- package/types/registerRequire.d.ts.map +1 -1
- package/types/staticEvaluationIgnoredModules.d.ts +9 -0
- package/types/staticEvaluationIgnoredModules.d.ts.map +1 -0
- package/types/types.d.ts +2 -90
- package/types/types.d.ts.map +1 -1
- package/types/zero/artifact.d.ts +44 -0
- package/types/zero/artifact.d.ts.map +1 -0
- package/types/zero/graph.d.ts +139 -0
- package/types/zero/graph.d.ts.map +1 -0
- package/types/zero/identity.d.ts +33 -0
- package/types/zero/identity.d.ts.map +1 -0
- package/types/zero/index.d.ts +9 -0
- package/types/zero/index.d.ts.map +1 -0
- package/types/zero/islands.d.ts +56 -0
- package/types/zero/islands.d.ts.map +1 -0
- package/types/zero/options.d.ts +58 -0
- package/types/zero/options.d.ts.map +1 -0
- package/types/zero/ownership.d.ts +51 -0
- package/types/zero/ownership.d.ts.map +1 -0
- package/types/zero/theme.d.ts +83 -0
- package/types/zero/theme.d.ts.map +1 -0
- package/types/zero/transform.d.ts +53 -0
- package/types/zero/transform.d.ts.map +1 -0
- package/dist/check-dep-versions.cjs +0 -372
- package/dist/checkDeps.cjs +0 -271
- package/dist/constants.cjs +0 -51
- package/dist/exports.cjs +0 -48
- package/dist/extractor/accessSafe.cjs +0 -48
- package/dist/extractor/babelParse.cjs +0 -56
- package/dist/extractor/buildClassName.cjs +0 -86
- package/dist/extractor/bundle.cjs +0 -234
- package/dist/extractor/bundleConfig.cjs +0 -729
- package/dist/extractor/concatClassName.cjs +0 -129
- package/dist/extractor/createEvaluator.cjs +0 -88
- package/dist/extractor/createExtractor.cjs +0 -1968
- package/dist/extractor/createLogger.cjs +0 -50
- package/dist/extractor/detectModuleFormat.cjs +0 -55
- package/dist/extractor/ensureImportingConcat.cjs +0 -54
- package/dist/extractor/errors.cjs +0 -28
- package/dist/extractor/esbuildAliasPlugin.cjs +0 -56
- package/dist/extractor/esbuildTsconfigPaths.cjs +0 -108
- package/dist/extractor/evaluateAstNode.cjs +0 -128
- package/dist/extractor/extractHelpers.cjs +0 -182
- package/dist/extractor/extractMediaStyle.cjs +0 -169
- package/dist/extractor/extractToClassNames.cjs +0 -475
- package/dist/extractor/extractToNative.cjs +0 -369
- package/dist/extractor/findTopmostFunction.cjs +0 -43
- package/dist/extractor/generatedUid.cjs +0 -58
- package/dist/extractor/getPrefixLogs.cjs +0 -31
- package/dist/extractor/getPropValueFromAttributes.cjs +0 -85
- package/dist/extractor/getSourceModule.cjs +0 -100
- package/dist/extractor/getStaticBindingsForScope.cjs +0 -213
- package/dist/extractor/getTamaguiConfigPathFromOptionsConfig.cjs +0 -41
- package/dist/extractor/hasTopLevelAwait.cjs +0 -62
- package/dist/extractor/hoistClassNames.cjs +0 -76
- package/dist/extractor/literalToAst.cjs +0 -109
- package/dist/extractor/loadFile.cjs +0 -17
- package/dist/extractor/loadTamagui.cjs +0 -373
- package/dist/extractor/logLines.cjs +0 -43
- package/dist/extractor/normalizeTernaries.cjs +0 -100
- package/dist/extractor/propsToFontFamilyCache.cjs +0 -42
- package/dist/extractor/regenerateConfig.cjs +0 -178
- package/dist/extractor/removeUnusedHooks.cjs +0 -108
- package/dist/extractor/timer.cjs +0 -52
- package/dist/extractor/validHTMLAttributes.cjs +0 -79
- package/dist/extractor/watchTamaguiConfig.cjs +0 -70
- package/dist/getPragmaOptions.cjs +0 -73
- package/dist/helpers/memoize.cjs +0 -45
- package/dist/helpers/requireTamaguiCore.cjs +0 -40
- package/dist/index.cjs +0 -42
- package/dist/registerRequire.cjs +0 -209
- package/dist/server.cjs +0 -82
- package/dist/types.cjs +0 -18
- package/dist/worker.cjs +0 -111
- package/src/extractor/accessSafe.ts +0 -22
- package/src/extractor/babelParse.ts +0 -38
- package/src/extractor/buildClassName.ts +0 -76
- package/src/extractor/createEvaluator.ts +0 -82
- package/src/extractor/createExtractor.ts +0 -2970
- package/src/extractor/createLogger.ts +0 -41
- package/src/extractor/ensureImportingConcat.ts +0 -36
- package/src/extractor/errors.ts +0 -1
- package/src/extractor/evaluateAstNode.ts +0 -136
- package/src/extractor/extractHelpers.ts +0 -211
- package/src/extractor/extractMediaStyle.ts +0 -194
- package/src/extractor/extractToClassNames.ts +0 -733
- package/src/extractor/extractToNative.ts +0 -506
- package/src/extractor/findTopmostFunction.ts +0 -24
- package/src/extractor/generatedUid.ts +0 -41
- package/src/extractor/getPrefixLogs.ts +0 -9
- package/src/extractor/getPropValueFromAttributes.ts +0 -95
- package/src/extractor/getSourceModule.ts +0 -96
- package/src/extractor/getStaticBindingsForScope.ts +0 -237
- package/src/extractor/hasTopLevelAwait.ts +0 -28
- package/src/extractor/hoistClassNames.ts +0 -52
- package/src/extractor/literalToAst.ts +0 -85
- package/src/extractor/loadFile.ts +0 -17
- package/src/extractor/logLines.ts +0 -16
- package/src/extractor/normalizeTernaries.ts +0 -89
- package/src/extractor/propsToFontFamilyCache.ts +0 -18
- package/src/extractor/removeUnusedHooks.ts +0 -83
- package/src/extractor/timer.ts +0 -25
- package/src/extractor/validHTMLAttributes.ts +0 -52
- package/src/worker.ts +0 -142
- package/types/extractor/accessSafe.d.ts +0 -3
- package/types/extractor/accessSafe.d.ts.map +0 -1
- package/types/extractor/babelParse.d.ts +0 -5
- package/types/extractor/babelParse.d.ts.map +0 -1
- package/types/extractor/buildClassName.d.ts +0 -7
- package/types/extractor/buildClassName.d.ts.map +0 -1
- package/types/extractor/createEvaluator.d.ts +0 -12
- package/types/extractor/createEvaluator.d.ts.map +0 -1
- package/types/extractor/createExtractor.d.ts +0 -32
- package/types/extractor/createExtractor.d.ts.map +0 -1
- package/types/extractor/createLogger.d.ts +0 -3
- package/types/extractor/createLogger.d.ts.map +0 -1
- package/types/extractor/ensureImportingConcat.d.ts +0 -4
- package/types/extractor/ensureImportingConcat.d.ts.map +0 -1
- package/types/extractor/errors.d.ts +0 -3
- package/types/extractor/errors.d.ts.map +0 -1
- package/types/extractor/evaluateAstNode.d.ts +0 -3
- package/types/extractor/evaluateAstNode.d.ts.map +0 -1
- package/types/extractor/extractHelpers.d.ts +0 -28
- package/types/extractor/extractHelpers.d.ts.map +0 -1
- package/types/extractor/extractMediaStyle.d.ts +0 -11
- package/types/extractor/extractMediaStyle.d.ts.map +0 -1
- package/types/extractor/extractToClassNames.d.ts +0 -25
- package/types/extractor/extractToClassNames.d.ts.map +0 -1
- package/types/extractor/extractToNative.d.ts +0 -13
- package/types/extractor/extractToNative.d.ts.map +0 -1
- package/types/extractor/findTopmostFunction.d.ts +0 -4
- package/types/extractor/findTopmostFunction.d.ts.map +0 -1
- package/types/extractor/generatedUid.d.ts +0 -5
- package/types/extractor/generatedUid.d.ts.map +0 -1
- package/types/extractor/getPrefixLogs.d.ts +0 -3
- package/types/extractor/getPrefixLogs.d.ts.map +0 -1
- package/types/extractor/getPropValueFromAttributes.d.ts +0 -19
- package/types/extractor/getPropValueFromAttributes.d.ts.map +0 -1
- package/types/extractor/getSourceModule.d.ts +0 -16
- package/types/extractor/getSourceModule.d.ts.map +0 -1
- package/types/extractor/getStaticBindingsForScope.d.ts +0 -5
- package/types/extractor/getStaticBindingsForScope.d.ts.map +0 -1
- package/types/extractor/hasTopLevelAwait.d.ts +0 -2
- package/types/extractor/hasTopLevelAwait.d.ts.map +0 -1
- package/types/extractor/hoistClassNames.d.ts +0 -6
- package/types/extractor/hoistClassNames.d.ts.map +0 -1
- package/types/extractor/literalToAst.d.ts +0 -4
- package/types/extractor/literalToAst.d.ts.map +0 -1
- package/types/extractor/loadFile.d.ts +0 -1
- package/types/extractor/loadFile.d.ts.map +0 -1
- package/types/extractor/logLines.d.ts +0 -2
- package/types/extractor/logLines.d.ts.map +0 -1
- package/types/extractor/normalizeTernaries.d.ts +0 -5
- package/types/extractor/normalizeTernaries.d.ts.map +0 -1
- package/types/extractor/propsToFontFamilyCache.d.ts +0 -4
- package/types/extractor/propsToFontFamilyCache.d.ts.map +0 -1
- package/types/extractor/removeUnusedHooks.d.ts +0 -3
- package/types/extractor/removeUnusedHooks.d.ts.map +0 -1
- package/types/extractor/timer.d.ts +0 -5
- package/types/extractor/timer.d.ts.map +0 -1
- package/types/extractor/validHTMLAttributes.d.ts +0 -52
- package/types/extractor/validHTMLAttributes.d.ts.map +0 -1
- package/types/worker.d.ts +0 -46
- package/types/worker.d.ts.map +0 -1
- /package/dist/{setup.cjs → cjs/setup.cjs} +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all) __defProp(target, name, {
|
|
10
|
+
get: all[name],
|
|
11
|
+
enumerable: true
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
17
|
+
get: () => from[key],
|
|
18
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return to;
|
|
22
|
+
};
|
|
23
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
24
|
+
value: mod,
|
|
25
|
+
enumerable: true
|
|
26
|
+
}) : target, mod));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var server_exports = {};
|
|
29
|
+
__export(server_exports, { startServer: () => startServer });
|
|
30
|
+
module.exports = __toCommonJS(server_exports);
|
|
31
|
+
var import_node_net = __toESM(require("node:net"), 1);
|
|
32
|
+
async function startServer(options) {
|
|
33
|
+
const port = await getAvailablePort();
|
|
34
|
+
const server = import_node_net.default.createServer();
|
|
35
|
+
server.unref();
|
|
36
|
+
await new Promise((resolve, reject) => {
|
|
37
|
+
server.on("error", reject);
|
|
38
|
+
server.on("connection", (conn) => {
|
|
39
|
+
conn.on("data", (data) => {
|
|
40
|
+
console.info("got", data.toString());
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
server.listen({ port }, () => {
|
|
44
|
+
const { port: port2 } = server.address();
|
|
45
|
+
server.close(() => {
|
|
46
|
+
resolve(port2);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
async function getAvailablePort(port = 8089) {
|
|
52
|
+
return checkAvailablePort(port).catch(() => getAvailablePort(port + 1));
|
|
53
|
+
}
|
|
54
|
+
function checkAvailablePort(port) {
|
|
55
|
+
return new Promise((resolve, reject) => {
|
|
56
|
+
const server = import_node_net.default.createServer();
|
|
57
|
+
server.unref();
|
|
58
|
+
server.on("error", reject);
|
|
59
|
+
server.listen({ port }, () => {
|
|
60
|
+
const { port: port2 } = server.address();
|
|
61
|
+
server.close(() => {
|
|
62
|
+
resolve(port2);
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all) __defProp(target, name, {
|
|
8
|
+
get: all[name],
|
|
9
|
+
enumerable: true
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
|
+
var staticEvaluationIgnoredModules_exports = {};
|
|
23
|
+
__export(staticEvaluationIgnoredModules_exports, {
|
|
24
|
+
getStaticEvaluationModuleReplacement: () => getStaticEvaluationModuleReplacement,
|
|
25
|
+
isIgnoredStaticEvaluationModule: () => isIgnoredStaticEvaluationModule,
|
|
26
|
+
staticEvaluationIgnorePlugin: () => staticEvaluationIgnorePlugin,
|
|
27
|
+
tamaguiStaticEvaluationModules: () => tamaguiStaticEvaluationModules
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(staticEvaluationIgnoredModules_exports);
|
|
30
|
+
var import_promises = require("node:fs/promises");
|
|
31
|
+
var import_node_path = require("node:path");
|
|
32
|
+
const tamaguiStaticEvaluationModules = Object.freeze({
|
|
33
|
+
"react-native-safe-area-context": null,
|
|
34
|
+
"react-native-worklets": "react-native-worklets/lib/module/mock.js"
|
|
35
|
+
});
|
|
36
|
+
function getStaticEvaluationModuleReplacement(moduleName) {
|
|
37
|
+
return Object.hasOwn(tamaguiStaticEvaluationModules, moduleName) ? tamaguiStaticEvaluationModules[moduleName] : void 0;
|
|
38
|
+
}
|
|
39
|
+
function isIgnoredStaticEvaluationModule(moduleName, userIgnoredModules = []) {
|
|
40
|
+
return getStaticEvaluationModuleReplacement(moduleName) !== void 0 || userIgnoredModules.includes(moduleName);
|
|
41
|
+
}
|
|
42
|
+
function staticEvaluationIgnorePlugin(userIgnoredModules = []) {
|
|
43
|
+
return {
|
|
44
|
+
name: "tamagui-static-evaluation-ignore",
|
|
45
|
+
setup(build) {
|
|
46
|
+
build.onResolve({ filter: /.*/ }, (args) => {
|
|
47
|
+
if (isIgnoredStaticEvaluationModule(args.path, userIgnoredModules)) {
|
|
48
|
+
return {
|
|
49
|
+
path: args.path,
|
|
50
|
+
namespace: "tamagui-static-evaluation-ignore"
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
return null;
|
|
54
|
+
});
|
|
55
|
+
build.onLoad({
|
|
56
|
+
filter: /.*/,
|
|
57
|
+
namespace: "tamagui-static-evaluation-ignore"
|
|
58
|
+
}, async (args) => {
|
|
59
|
+
const replacement = getStaticEvaluationModuleReplacement(args.path);
|
|
60
|
+
if (replacement) {
|
|
61
|
+
const resolved = await build.resolve(replacement, {
|
|
62
|
+
kind: "require-call",
|
|
63
|
+
resolveDir: build.initialOptions.absWorkingDir || process.cwd()
|
|
64
|
+
});
|
|
65
|
+
if (resolved.errors.length) {
|
|
66
|
+
return {
|
|
67
|
+
errors: resolved.errors,
|
|
68
|
+
warnings: resolved.warnings
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
contents: await (0, import_promises.readFile)(resolved.path, "utf8"),
|
|
73
|
+
loader: "js",
|
|
74
|
+
resolveDir: (0, import_node_path.dirname)(resolved.path),
|
|
75
|
+
warnings: resolved.warnings
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
return {
|
|
79
|
+
contents: "module.exports = {}",
|
|
80
|
+
loader: "js",
|
|
81
|
+
resolveDir: build.initialOptions.absWorkingDir || process.cwd()
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
9
|
+
get: () => from[key],
|
|
10
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
return to;
|
|
14
|
+
};
|
|
15
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
|
+
var types_exports = {};
|
|
17
|
+
module.exports = __toCommonJS(types_exports);
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all) __defProp(target, name, {
|
|
10
|
+
get: all[name],
|
|
11
|
+
enumerable: true
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
17
|
+
get: () => from[key],
|
|
18
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return to;
|
|
22
|
+
};
|
|
23
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
24
|
+
value: mod,
|
|
25
|
+
enumerable: true
|
|
26
|
+
}) : target, mod));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var artifact_exports = {};
|
|
29
|
+
__export(artifact_exports, { ZeroCSSArtifact: () => ZeroCSSArtifact });
|
|
30
|
+
module.exports = __toCommonJS(artifact_exports);
|
|
31
|
+
var import_node_crypto = require("node:crypto");
|
|
32
|
+
var import_node_fs = require("node:fs");
|
|
33
|
+
var import_node_path = __toESM(require("node:path"), 1);
|
|
34
|
+
var ZeroCSSArtifact = class {
|
|
35
|
+
#config = null;
|
|
36
|
+
#zero = /* @__PURE__ */ new Map();
|
|
37
|
+
#islands = /* @__PURE__ */ new Map();
|
|
38
|
+
#bridges = /* @__PURE__ */ new Map();
|
|
39
|
+
#expectedIslands = [];
|
|
40
|
+
#cssPath;
|
|
41
|
+
constructor(cssPath) {
|
|
42
|
+
this.#cssPath = cssPath;
|
|
43
|
+
}
|
|
44
|
+
get cssPath() {
|
|
45
|
+
return this.#cssPath;
|
|
46
|
+
}
|
|
47
|
+
expectIslands(ids) {
|
|
48
|
+
this.#expectedIslands = [...ids].sort();
|
|
49
|
+
}
|
|
50
|
+
setConfigCSS(css) {
|
|
51
|
+
this.#config = css;
|
|
52
|
+
}
|
|
53
|
+
setZeroModuleCSS(moduleId, css) {
|
|
54
|
+
if (css) this.#zero.set(moduleId, css);
|
|
55
|
+
else this.#zero.delete(moduleId);
|
|
56
|
+
}
|
|
57
|
+
setIslandModuleCSS(islandId, moduleId, css) {
|
|
58
|
+
let bucket = this.#islands.get(islandId);
|
|
59
|
+
if (!bucket) {
|
|
60
|
+
bucket = /* @__PURE__ */ new Map();
|
|
61
|
+
this.#islands.set(islandId, bucket);
|
|
62
|
+
}
|
|
63
|
+
if (css) bucket.set(moduleId, css);
|
|
64
|
+
else bucket.delete(moduleId);
|
|
65
|
+
}
|
|
66
|
+
/** This island's collected rules, in deterministic module order. */
|
|
67
|
+
islandCSS(islandId) {
|
|
68
|
+
const bucket = this.#islands.get(islandId);
|
|
69
|
+
if (!bucket) return [];
|
|
70
|
+
return [...bucket.keys()].sort().map((moduleId) => bucket.get(moduleId));
|
|
71
|
+
}
|
|
72
|
+
/** Marks an island as compiled even when it contributed no atomic rules. */
|
|
73
|
+
markIslandComplete(islandId) {
|
|
74
|
+
if (!this.#islands.has(islandId)) this.#islands.set(islandId, /* @__PURE__ */ new Map());
|
|
75
|
+
}
|
|
76
|
+
/** Collected zero-graph module CSS, for an integration that persists it. */
|
|
77
|
+
zeroModuleEntries() {
|
|
78
|
+
return [...this.#zero.entries()].sort(([left], [right]) => left < right ? -1 : 1);
|
|
79
|
+
}
|
|
80
|
+
bridgeEntries() {
|
|
81
|
+
return [...this.#bridges.entries()].sort(([left], [right]) => left < right ? -1 : 1);
|
|
82
|
+
}
|
|
83
|
+
setBridgeRules(bridgeId, css) {
|
|
84
|
+
if (css) this.#bridges.set(bridgeId, css);
|
|
85
|
+
else this.#bridges.delete(bridgeId);
|
|
86
|
+
}
|
|
87
|
+
clearGraphs() {
|
|
88
|
+
this.#zero.clear();
|
|
89
|
+
this.#islands.clear();
|
|
90
|
+
this.#bridges.clear();
|
|
91
|
+
}
|
|
92
|
+
/** The missing pieces that block deriving TAMAGUI_DID_OUTPUT_CSS. */
|
|
93
|
+
missing() {
|
|
94
|
+
const missing = [];
|
|
95
|
+
if (this.#config === null) missing.push("config CSS");
|
|
96
|
+
for (const id of this.#expectedIslands) {
|
|
97
|
+
if (!this.#islands.has(id)) missing.push(`island ${id}`);
|
|
98
|
+
}
|
|
99
|
+
return missing;
|
|
100
|
+
}
|
|
101
|
+
isComplete() {
|
|
102
|
+
return this.missing().length === 0;
|
|
103
|
+
}
|
|
104
|
+
/** Deterministic order: config, zero atomic, island atomic, bridge classes. */
|
|
105
|
+
css() {
|
|
106
|
+
const parts = [];
|
|
107
|
+
if (this.#config) parts.push(this.#config);
|
|
108
|
+
for (const moduleId of [...this.#zero.keys()].sort()) {
|
|
109
|
+
parts.push(this.#zero.get(moduleId));
|
|
110
|
+
}
|
|
111
|
+
for (const islandId of [...this.#islands.keys()].sort()) {
|
|
112
|
+
const bucket = this.#islands.get(islandId);
|
|
113
|
+
for (const moduleId of [...bucket.keys()].sort()) parts.push(bucket.get(moduleId));
|
|
114
|
+
}
|
|
115
|
+
for (const bridgeId of [...this.#bridges.keys()].sort()) {
|
|
116
|
+
parts.push(this.#bridges.get(bridgeId));
|
|
117
|
+
}
|
|
118
|
+
return parts.join("\n");
|
|
119
|
+
}
|
|
120
|
+
hash() {
|
|
121
|
+
return (0, import_node_crypto.createHash)("sha256").update(this.css()).digest("hex").slice(0, 16);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Writes the artifact and returns whether the derived
|
|
125
|
+
* `TAMAGUI_DID_OUTPUT_CSS='1'` claim is now legal.
|
|
126
|
+
*/
|
|
127
|
+
write() {
|
|
128
|
+
const missing = this.missing();
|
|
129
|
+
const css = this.css();
|
|
130
|
+
(0, import_node_fs.mkdirSync)(import_node_path.default.dirname(this.#cssPath), { recursive: true });
|
|
131
|
+
let existing = null;
|
|
132
|
+
try {
|
|
133
|
+
existing = (0, import_node_fs.readFileSync)(this.#cssPath, "utf8");
|
|
134
|
+
} catch {
|
|
135
|
+
existing = null;
|
|
136
|
+
}
|
|
137
|
+
if (existing !== css) (0, import_node_fs.writeFileSync)(this.#cssPath, css);
|
|
138
|
+
return {
|
|
139
|
+
path: this.#cssPath,
|
|
140
|
+
hash: this.hash(),
|
|
141
|
+
complete: missing.length === 0,
|
|
142
|
+
missing
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
};
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all) __defProp(target, name, {
|
|
10
|
+
get: all[name],
|
|
11
|
+
enumerable: true
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
17
|
+
get: () => from[key],
|
|
18
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return to;
|
|
22
|
+
};
|
|
23
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
24
|
+
value: mod,
|
|
25
|
+
enumerable: true
|
|
26
|
+
}) : target, mod));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var graph_exports = {};
|
|
29
|
+
__export(graph_exports, {
|
|
30
|
+
checkZeroGraph: () => checkZeroGraph,
|
|
31
|
+
erasedExportEscape: () => erasedExportEscape,
|
|
32
|
+
formatZeroGraphFailure: () => formatZeroGraphFailure,
|
|
33
|
+
formatZeroViolations: () => formatZeroViolations,
|
|
34
|
+
isForbiddenZeroModuleId: () => isForbiddenZeroModuleId,
|
|
35
|
+
isTamaguiModuleId: () => isTamaguiModuleId,
|
|
36
|
+
offsetToLineColumn: () => offsetToLineColumn,
|
|
37
|
+
owningPackageOf: () => owningPackageOf,
|
|
38
|
+
owningPackageOfDir: () => owningPackageOfDir,
|
|
39
|
+
sortZeroViolations: () => sortZeroViolations,
|
|
40
|
+
writeZeroGraphReceipt: () => writeZeroGraphReceipt,
|
|
41
|
+
writeZeroViolationReport: () => writeZeroViolationReport
|
|
42
|
+
});
|
|
43
|
+
module.exports = __toCommonJS(graph_exports);
|
|
44
|
+
var import_compiler_core = require("@tamagui/compiler-core");
|
|
45
|
+
var import_node_fs = require("node:fs");
|
|
46
|
+
var import_node_path = __toESM(require("node:path"), 1);
|
|
47
|
+
const ALLOWED_ZERO_MODULE = /animated-number/;
|
|
48
|
+
const owningPackageCache = /* @__PURE__ */ new Map();
|
|
49
|
+
function owningPackageOf(id) {
|
|
50
|
+
const clean = id.split(/[?#]/, 1)[0];
|
|
51
|
+
if (!clean || clean.startsWith("\0") || !import_node_path.default.isAbsolute(clean)) return null;
|
|
52
|
+
return owningPackageOfDir(import_node_path.default.dirname(clean));
|
|
53
|
+
}
|
|
54
|
+
function owningPackageOfDir(from) {
|
|
55
|
+
if (!from || !import_node_path.default.isAbsolute(from)) return null;
|
|
56
|
+
let dir = from;
|
|
57
|
+
const visited = [];
|
|
58
|
+
while (true) {
|
|
59
|
+
const cached = owningPackageCache.get(dir);
|
|
60
|
+
if (cached !== void 0) {
|
|
61
|
+
for (const seen of visited) owningPackageCache.set(seen, cached);
|
|
62
|
+
return cached;
|
|
63
|
+
}
|
|
64
|
+
visited.push(dir);
|
|
65
|
+
const manifest = import_node_path.default.join(dir, "package.json");
|
|
66
|
+
if ((0, import_node_fs.existsSync)(manifest)) {
|
|
67
|
+
let owner = null;
|
|
68
|
+
try {
|
|
69
|
+
owner = {
|
|
70
|
+
name: JSON.parse((0, import_node_fs.readFileSync)(manifest, "utf8")).name ?? null,
|
|
71
|
+
manifest
|
|
72
|
+
};
|
|
73
|
+
} catch {
|
|
74
|
+
owner = {
|
|
75
|
+
name: null,
|
|
76
|
+
manifest
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
for (const seen of visited) owningPackageCache.set(seen, owner);
|
|
80
|
+
return owner;
|
|
81
|
+
}
|
|
82
|
+
const parent = import_node_path.default.dirname(dir);
|
|
83
|
+
if (parent === dir) {
|
|
84
|
+
for (const seen of visited) owningPackageCache.set(seen, null);
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
dir = parent;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
function isTamaguiModuleId(id, ownManifest) {
|
|
91
|
+
const owner = owningPackageOf(id);
|
|
92
|
+
if (!owner?.name) return false;
|
|
93
|
+
if (ownManifest && owner.manifest === ownManifest) return false;
|
|
94
|
+
return owner.name === "tamagui" || owner.name.startsWith("@tamagui/");
|
|
95
|
+
}
|
|
96
|
+
function isForbiddenZeroModuleId(id, ownManifest) {
|
|
97
|
+
if (!isTamaguiModuleId(id, ownManifest)) return false;
|
|
98
|
+
return !ALLOWED_ZERO_MODULE.test(id);
|
|
99
|
+
}
|
|
100
|
+
function shortestChain(target, entries, importersOf) {
|
|
101
|
+
const entrySet = new Set(entries);
|
|
102
|
+
const seen = /* @__PURE__ */ new Set([target]);
|
|
103
|
+
const queue = [[target]];
|
|
104
|
+
let longest = [target];
|
|
105
|
+
while (queue.length) {
|
|
106
|
+
const chain = queue.shift();
|
|
107
|
+
const head = chain[0];
|
|
108
|
+
if (entrySet.has(head)) return chain;
|
|
109
|
+
if (chain.length > longest.length) longest = chain;
|
|
110
|
+
for (const importer of importersOf.get(head) ?? []) {
|
|
111
|
+
if (seen.has(importer)) continue;
|
|
112
|
+
seen.add(importer);
|
|
113
|
+
queue.push([importer, ...chain]);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return longest;
|
|
117
|
+
}
|
|
118
|
+
function checkZeroGraph(input) {
|
|
119
|
+
const importersOf = new Map(input.importerEdges);
|
|
120
|
+
for (const module2 of input.modules) {
|
|
121
|
+
if (!importersOf.has(module2.id)) importersOf.set(module2.id, module2.importers ?? []);
|
|
122
|
+
}
|
|
123
|
+
const ownManifest = input.root ? owningPackageOfDir(input.root)?.manifest ?? null : null;
|
|
124
|
+
const tamaguiModules = input.modules.map((module2) => module2.id).filter((id) => isTamaguiModuleId(id, ownManifest)).sort();
|
|
125
|
+
const forbidden = tamaguiModules.filter((id) => isForbiddenZeroModuleId(id, ownManifest)).map((id) => ({
|
|
126
|
+
id,
|
|
127
|
+
chain: shortestChain(id, input.entries, importersOf),
|
|
128
|
+
owner: owningPackageOf(id)?.name ?? ""
|
|
129
|
+
}));
|
|
130
|
+
return {
|
|
131
|
+
tamaguiModules,
|
|
132
|
+
forbidden
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
function formatZeroGraphFailure(receipt) {
|
|
136
|
+
const lines = [`[tamagui zero-runtime] ${receipt.integration} zero entry graph contains ${receipt.forbidden.length} forbidden Tamagui module(s)`, ""];
|
|
137
|
+
for (const entry of receipt.forbidden) {
|
|
138
|
+
lines.push(entry.owner ? `${entry.id} (package ${entry.owner})` : entry.id);
|
|
139
|
+
lines.push(entry.chain.length > 1 ? ` ${entry.chain.join("\n -> ")}` : ` (this bundler exposed no importer edges for that module)`);
|
|
140
|
+
}
|
|
141
|
+
lines.push("");
|
|
142
|
+
lines.push(import_compiler_core.ZERO_FAILURE_FOOTER);
|
|
143
|
+
return lines.join("\n");
|
|
144
|
+
}
|
|
145
|
+
function writeZeroGraphReceipt(outDir, name, receipt) {
|
|
146
|
+
(0, import_node_fs.mkdirSync)(outDir, { recursive: true });
|
|
147
|
+
const file = import_node_path.default.join(outDir, `${name}.graph.json`);
|
|
148
|
+
(0, import_node_fs.writeFileSync)(file, `${JSON.stringify(receipt, null, 2)}
|
|
149
|
+
`);
|
|
150
|
+
return file;
|
|
151
|
+
}
|
|
152
|
+
function sortZeroViolations(sites) {
|
|
153
|
+
return [...sites].sort((left, right) => (left.file < right.file ? -1 : left.file > right.file ? 1 : 0) || left.line - right.line || left.column - right.column || left.rule - right.rule || (left.message < right.message ? -1 : left.message > right.message ? 1 : 0));
|
|
154
|
+
}
|
|
155
|
+
function formatZeroViolations(sites) {
|
|
156
|
+
const sorted = sortZeroViolations(sites);
|
|
157
|
+
const lines = [`[tamagui zero-runtime] build failed with ${sorted.length} violations`, ""];
|
|
158
|
+
for (const site of sorted) {
|
|
159
|
+
lines.push(`Rule ${site.rule} ${site.code}`);
|
|
160
|
+
lines.push(`${site.file}:${site.line}:${site.column}${site.component ? ` ${site.component}` : ""}`);
|
|
161
|
+
lines.push(` ${site.message}`);
|
|
162
|
+
lines.push("");
|
|
163
|
+
}
|
|
164
|
+
lines.push(import_compiler_core.ZERO_FAILURE_FOOTER);
|
|
165
|
+
return lines.join("\n");
|
|
166
|
+
}
|
|
167
|
+
function writeZeroViolationReport(outDir, name, report) {
|
|
168
|
+
(0, import_node_fs.mkdirSync)(outDir, { recursive: true });
|
|
169
|
+
const file = import_node_path.default.join(outDir, `${name}.violations.json`);
|
|
170
|
+
(0, import_node_fs.writeFileSync)(file, `${JSON.stringify({
|
|
171
|
+
integration: report.integration,
|
|
172
|
+
mode: report.mode,
|
|
173
|
+
count: report.violations.length,
|
|
174
|
+
violations: sortZeroViolations(report.violations)
|
|
175
|
+
}, null, 2)}
|
|
176
|
+
`);
|
|
177
|
+
return file;
|
|
178
|
+
}
|
|
179
|
+
function erasedExportEscape(input) {
|
|
180
|
+
for (const [moduleId, names] of input.erasedExports) {
|
|
181
|
+
if (names.length === 0) continue;
|
|
182
|
+
if (!input.importersOf.has(moduleId)) {
|
|
183
|
+
return `[tamagui zero-runtime] ${input.integration} erased the exported definition(s) ${names.join(", ")} from ${moduleId}, and then could not find that module in its own graph, so nothing proved the erasure was safe.
|
|
184
|
+
|
|
185
|
+
${import_compiler_core.ZERO_FAILURE_FOOTER}`;
|
|
186
|
+
}
|
|
187
|
+
const untransformed = (input.importersOf.get(moduleId) ?? []).filter((importer) => !input.transformed.has(importer));
|
|
188
|
+
if (untransformed.length === 0) continue;
|
|
189
|
+
return `[tamagui zero-runtime] ${input.integration} erased the exported definition(s) ${names.join(", ")} from ${moduleId}, but ${untransformed.length} importer(s) in this entry graph were never zero-transformed and may still reference them:
|
|
190
|
+
${untransformed.join("\n ")}
|
|
191
|
+
|
|
192
|
+
${import_compiler_core.ZERO_FAILURE_FOOTER}`;
|
|
193
|
+
}
|
|
194
|
+
return null;
|
|
195
|
+
}
|
|
196
|
+
function offsetToLineColumn(source, offset) {
|
|
197
|
+
let line = 1;
|
|
198
|
+
let lineStart = 0;
|
|
199
|
+
for (let index = 0; index < offset && index < source.length; index++) {
|
|
200
|
+
if (source.charCodeAt(index) === 10) {
|
|
201
|
+
line++;
|
|
202
|
+
lineStart = index + 1;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return {
|
|
206
|
+
line,
|
|
207
|
+
column: offset - lineStart + 1
|
|
208
|
+
};
|
|
209
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all) __defProp(target, name, {
|
|
8
|
+
get: all[name],
|
|
9
|
+
enumerable: true
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
|
+
var identity_exports = {};
|
|
23
|
+
__export(identity_exports, {
|
|
24
|
+
ZERO_COMPILER_VERSION: () => ZERO_COMPILER_VERSION,
|
|
25
|
+
canonicalizeBridgeManifest: () => canonicalizeBridgeManifest,
|
|
26
|
+
hashBridgeManifest: () => hashBridgeManifest,
|
|
27
|
+
hashZeroIdentity: () => hashZeroIdentity
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(identity_exports);
|
|
30
|
+
var import_compiler_core = require("@tamagui/compiler-core");
|
|
31
|
+
var import_node_crypto = require("node:crypto");
|
|
32
|
+
const ZERO_COMPILER_VERSION = `zero-1/plan-${import_compiler_core.LOWERED_MODULE_PLAN_VERSION}`;
|
|
33
|
+
function hashZeroIdentity(identity) {
|
|
34
|
+
const canonical = {
|
|
35
|
+
runtimeLiteral: identity.runtimeLiteral,
|
|
36
|
+
target: identity.target,
|
|
37
|
+
configGeneration: identity.configGeneration,
|
|
38
|
+
cssHash: identity.cssHash,
|
|
39
|
+
compilerVersion: identity.compilerVersion,
|
|
40
|
+
islandEntries: [...identity.islandEntries].sort(),
|
|
41
|
+
bridgeManifestHash: identity.bridgeManifestHash,
|
|
42
|
+
islandOutputHashes: Object.fromEntries(Object.entries(identity.islandOutputHashes).sort(([left], [right]) => left < right ? -1 : left > right ? 1 : 0))
|
|
43
|
+
};
|
|
44
|
+
return (0, import_node_crypto.createHash)("sha256").update(JSON.stringify(canonical)).digest("hex").slice(0, 24);
|
|
45
|
+
}
|
|
46
|
+
function canonicalizeBridgeManifest(manifest) {
|
|
47
|
+
if (Array.isArray(manifest)) {
|
|
48
|
+
return manifest.map((entry) => canonicalizeBridgeManifest(entry));
|
|
49
|
+
}
|
|
50
|
+
if (manifest && typeof manifest === "object") {
|
|
51
|
+
const sorted = {};
|
|
52
|
+
for (const key of Object.keys(manifest).sort()) {
|
|
53
|
+
sorted[key] = canonicalizeBridgeManifest(manifest[key]);
|
|
54
|
+
}
|
|
55
|
+
return sorted;
|
|
56
|
+
}
|
|
57
|
+
return manifest;
|
|
58
|
+
}
|
|
59
|
+
function hashBridgeManifest(manifest) {
|
|
60
|
+
return (0, import_node_crypto.createHash)("sha256").update(JSON.stringify(canonicalizeBridgeManifest(manifest))).digest("hex").slice(0, 16);
|
|
61
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
9
|
+
get: () => from[key],
|
|
10
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
return to;
|
|
14
|
+
};
|
|
15
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
16
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
17
|
+
var zero_exports = {};
|
|
18
|
+
module.exports = __toCommonJS(zero_exports);
|
|
19
|
+
__reExport(zero_exports, require("./artifact.cjs"), module.exports);
|
|
20
|
+
__reExport(zero_exports, require("./graph.cjs"), module.exports);
|
|
21
|
+
__reExport(zero_exports, require("./identity.cjs"), module.exports);
|
|
22
|
+
__reExport(zero_exports, require("./islands.cjs"), module.exports);
|
|
23
|
+
__reExport(zero_exports, require("./options.cjs"), module.exports);
|
|
24
|
+
__reExport(zero_exports, require("./ownership.cjs"), module.exports);
|
|
25
|
+
__reExport(zero_exports, require("./theme.cjs"), module.exports);
|
|
26
|
+
__reExport(zero_exports, require("./transform.cjs"), module.exports);
|