@tamagui/vite-plugin 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/compilerStats.cjs +127 -0
- package/dist/cjs/extensions.cjs +26 -18
- package/dist/cjs/index.cjs +10 -11
- package/dist/cjs/internal.cjs +25 -0
- package/dist/cjs/loadTamagui.cjs +194 -85
- package/dist/cjs/plugin.cjs +1076 -440
- package/dist/cjs/zeroRuntime.cjs +154 -0
- package/dist/esm/compilerStats.mjs +98 -0
- package/dist/esm/compilerStats.mjs.map +1 -0
- package/dist/esm/extensions.mjs +13 -1
- package/dist/esm/extensions.mjs.map +1 -1
- package/dist/esm/index.js +1 -2
- package/dist/esm/index.mjs +1 -2
- package/dist/esm/internal.mjs +3 -0
- package/dist/esm/loadTamagui.mjs +178 -59
- package/dist/esm/loadTamagui.mjs.map +1 -1
- package/dist/esm/plugin.mjs +1058 -418
- package/dist/esm/plugin.mjs.map +1 -1
- package/dist/esm/zeroRuntime.mjs +120 -0
- package/dist/esm/zeroRuntime.mjs.map +1 -0
- package/package.json +24 -9
- package/src/compilerStats.ts +168 -0
- package/src/internal.ts +9 -0
- package/src/loadTamagui.ts +251 -74
- package/src/plugin.ts +1362 -246
- package/src/zeroRuntime.ts +205 -0
- package/types/compilerStats.d.ts +44 -0
- package/types/compilerStats.d.ts.map +1 -0
- package/types/internal.d.ts +10 -0
- package/types/internal.d.ts.map +1 -0
- package/types/loadTamagui.d.ts +33 -13
- package/types/loadTamagui.d.ts.map +1 -1
- package/types/plugin.d.ts +32 -4
- package/types/plugin.d.ts.map +1 -1
- package/types/zeroRuntime.d.ts +60 -0
- package/types/zeroRuntime.d.ts.map +1 -0
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
package/dist/esm/plugin.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Static","getPragmaOptions","createHash","readdirSync","createRequire","path","fileURLToPath","loadTamaguiBuildConfig","getLoadPromise","getTamaguiOptions","ensureFullConfigLoaded","_pluginRequire","__filename","import","meta","url","resolve","name","normalizePath","value","replace","CACHE_KEY","CACHE_SIZE_KEY","PENDING_KEY","getSharedCache","globalThis","getSharedCacheSize","setSharedCacheSize","size","clearSharedCache","isInstalled","projectRoot","id","req","join","addIfInstalled","userConf","ids","root","process","cwd","optimizeDeps","include","includes","push","getPendingExtractions","Map","tamaguiAliases","options","aliases","svg","find","replacement","rnwLite","rnwlBase","dirname","rnwl","rnwlFlatModules","filter","file","endsWith","map","slice","length","test","RegExp","tamaguiPlugin","disableResolveConfig","tamaguiOptionsIn","shouldExtract","disableExtraction","watcher","enableNativeEnv","__vxrnEnableNativeEnv","extensions","ensureLoaded","promise","getHash","input","update","digest","memoryCache","cssMap","config","server","virtualExt","getAbsoluteVirtualFileId","filePath","startsWith","isNotClient","environment","isNative","invalidateModule","absoluteId","moduleGraph","modules","getModulesByFile","module","lastHMRTimestamp","lastInvalidationTimestamp","Date","now","basePlugin","enforce","configureServer","_server","buildEnd","then","res","dispose","_","env","Error","useReactNativeWebLite","disableWatchTamaguiConfig","watchTamaguiConfig","components","catch","err","console","error","envPrefix","environments","client","define","JSON","stringify","_frameTimestamp","_WORKLET","__DEV__","mode","NODE_ENV","ENABLE_RSC","ENABLE_STEPS","alias","platform","rnwLitePlugin","dependency","exclude","extractPlugin","dedupe","configResolved","resolvedConfig","resolveId","source","validId","query","split","has","load","disable","get","transform","order","handler","code","shouldDisable","shouldPrintDebug","trace","info","isSSR","cacheKey","pending","formatResult","entry","finalCode","cssImport","js","cached","DEBUG_TAMAGUI_CACHE","pop","pendingExtraction","result","extractionPromise","extracted","extractToClassNames","sourcePath","message","String","rootRelativeId","styles","addWatchFile","set","jsCode","toString","cacheEntry","newSize","Object","keys","delete"],"sources":["../../src/plugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"plugin.js","names":[],"sources":["esm/plugin.js"],"sourcesContent":["import Static from \"@tamagui/static\";\nimport { createHash } from \"node:crypto\";\nimport { existsSync, readFileSync, readdirSync, writeFileSync } from \"node:fs\";\nimport { gzipSync } from \"node:zlib\";\nimport { readFile } from \"node:fs/promises\";\nimport { createRequire } from \"node:module\";\nimport path from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport { createIdResolver, createRunnableDevEnvironment, defaultClientConditions, defaultClientMainFields, isRunnableDevEnvironment, resolveConfig } from \"vite\";\nimport { TAMAGUI_EVALUATION_ENVIRONMENT, createViteTamaguiLoader } from \"./loadTamagui\";\nimport { createCompilerStatsReport, formatCompilerStatsReport } from \"./compilerStats\";\nimport { ZERO_CSS_FILENAME, ZERO_ISLAND_DIRNAME, assertZeroGraph, buildIsland, createZeroRuntimeController, finalizeZeroCSS, zeroModuleKey } from \"./zeroRuntime\";\n\nconst environmentSpecificTransformPluginNames = /* @__PURE__ */ new Set([\"one:compiler\", \"one:compiler-css-to-js\"]);\nconst oneTsconfigPathsPluginName = \"one:tsconfig-paths\";\nconst bareTamaguiPackage = /^@tamagui\\/[^/?#]+(?:[/?#]|$)/;\nconst inlineEvaluationTamaguiPackage = /^@tamagui\\/(?:config|core|slider|web)(?:[/?#]|$)/;\nconst externalizablePackageExtensions = /* @__PURE__ */ new Set([\n\t\"\",\n\t\".js\",\n\t\".mjs\",\n\t\".cjs\"\n]);\nfunction createEvaluationResolveId(plugin, resolveBarePackage) {\n\tconst resolveId = plugin.resolveId;\n\tif (plugin.name !== oneTsconfigPathsPluginName || !resolveId) return resolveId;\n\tconst handler = typeof resolveId === \"object\" ? resolveId.handler : resolveId;\n\tconst evaluationHandler = function(source, ...args) {\n\t\tif (bareTamaguiPackage.test(source)) {\n\t\t\tconst importer = typeof args[0] === \"string\" ? args[0] : void 0;\n\t\t\treturn resolveBarePackage?.(this.environment, source, importer);\n\t\t}\n\t\treturn Reflect.apply(handler, this, [source, ...args]);\n\t};\n\treturn typeof resolveId === \"object\" ? {\n\t\t...resolveId,\n\t\thandler: evaluationHandler\n\t} : evaluationHandler;\n}\nfunction createEvaluationPluginFacade(plugin, resolveBarePackage) {\n\treturn {\n\t\tname: plugin.name,\n\t\tenforce: plugin.enforce,\n\t\tresolveId: createEvaluationResolveId(plugin, resolveBarePackage),\n\t\tload: plugin.load,\n\t\ttransform: environmentSpecificTransformPluginNames.has(plugin.name) ? void 0 : plugin.transform\n\t};\n}\nconst tamaguiEvaluationPluginNames = /* @__PURE__ */ new Set([\n\t\"tamagui\",\n\t\"tamagui-extract\",\n\t\"tamagui-rnw-lite\"\n]);\nfunction isEvaluationUserPlugin(plugin) {\n\treturn !!(plugin.resolveId || plugin.load || plugin.transform) && plugin.name !== \"alias\" && !plugin.name.startsWith(\"native:\") && !plugin.name.startsWith(\"vite:\") && !plugin.name.startsWith(\"builtin:vite-\") && !tamaguiEvaluationPluginNames.has(plugin.name);\n}\nfunction isEvaluationCorePlugin(plugin) {\n\treturn plugin.name === \"alias\" || plugin.name.startsWith(\"vite:\") || plugin.name.startsWith(\"builtin:vite-\");\n}\nfunction isConfiguredEvaluationPackage(source, packages) {\n\tconst cleanSource = source.split(/[?#]/, 1)[0];\n\treturn [...packages].some((packageName) => cleanSource === packageName || cleanSource.startsWith(`${packageName}/`));\n}\nfunction getEvaluationPackageName(source) {\n\tif (!source) return;\n\tconst cleanSource = source.split(/[?#]/, 1)[0];\n\tif (!cleanSource || cleanSource.startsWith(\".\") || cleanSource.startsWith(\"#\") || cleanSource.startsWith(\"\\0\") || path.isAbsolute(cleanSource)) return;\n\tif (cleanSource.startsWith(\"@\")) {\n\t\tconst [scope, name2] = cleanSource.split(\"/\");\n\t\treturn scope && name2 ? `${scope}/${name2}` : void 0;\n\t}\n\tconst [name] = cleanSource.split(\"/\");\n\treturn name && !path.extname(name) ? name : void 0;\n}\nfunction getInstalledTamaguiPackages(root, configuredEvaluationPackages) {\n\tconst packageRequire = createRequire(path.join(root, \"package.json\"));\n\tconst packages = /* @__PURE__ */ new Set();\n\tfor (const modulePath of packageRequire.resolve.paths(\"@tamagui/core\") || []) {\n\t\tconst scopePath = path.join(modulePath, \"@tamagui\");\n\t\tif (!existsSync(scopePath)) continue;\n\t\tfor (const entry of readdirSync(scopePath, { withFileTypes: true })) {\n\t\t\tif (!entry.isDirectory() && !entry.isSymbolicLink()) continue;\n\t\t\tconst packageName = `@tamagui/${entry.name}`;\n\t\t\tif (!inlineEvaluationTamaguiPackage.test(packageName) && !configuredEvaluationPackages.has(packageName)) packages.add(packageName);\n\t\t}\n\t}\n\treturn packages;\n}\nfunction getEvaluationResolve(resolve2, root, disableTsconfigPaths, configuredEvaluationPackages) {\n\treturn {\n\t\t...resolve2,\n\t\texternal: resolve2.external === true ? true : [.../* @__PURE__ */ new Set([...(resolve2.external || []).filter((packageName) => !isConfiguredEvaluationPackage(packageName, configuredEvaluationPackages)), ...getInstalledTamaguiPackages(root, configuredEvaluationPackages)])],\n\t\t...disableTsconfigPaths && { tsconfigPaths: false }\n\t};\n}\nfunction isConfiguredExternalPackage(source, external) {\n\tif (external === true) return true;\n\tconst cleanSource = source.split(/[?#]/, 1)[0];\n\treturn external?.some((packageName) => cleanSource === packageName || cleanSource.startsWith(`${packageName}/`));\n}\nfunction createServeEvaluationConfig(config, configuredEvaluationPackages) {\n\tconst environment = config.environments[TAMAGUI_EVALUATION_ENVIRONMENT];\n\tlet packageResolver;\n\tconst resolveBarePackage = async (evaluationEnvironment, source, importer) => {\n\t\tconst resolved = await packageResolver?.(evaluationEnvironment, source, importer);\n\t\tif (!resolved) return;\n\t\tconst cleanResolved = resolved.split(/[?#]/, 1)[0];\n\t\tif (!inlineEvaluationTamaguiPackage.test(source) && !isConfiguredEvaluationPackage(source, configuredEvaluationPackages) && isConfiguredExternalPackage(source, evaluationEnvironment.config.resolve.external)) return {\n\t\t\tid: source,\n\t\t\texternal: true\n\t\t};\n\t\tif (inlineEvaluationTamaguiPackage.test(source) || isConfiguredEvaluationPackage(source, configuredEvaluationPackages) || !normalizePath(cleanResolved).includes(\"/node_modules/\") || !externalizablePackageExtensions.has(path.extname(cleanResolved))) return resolved;\n\t\treturn {\n\t\t\tid: source,\n\t\t\texternal: true\n\t\t};\n\t};\n\tconst plugins = environment.plugins.flatMap((plugin) => {\n\t\tif (isEvaluationCorePlugin(plugin)) return [plugin];\n\t\tif (isEvaluationUserPlugin(plugin)) return [createEvaluationPluginFacade(plugin, resolveBarePackage)];\n\t\treturn [];\n\t});\n\tconst resolve2 = getEvaluationResolve(environment.resolve, config.root, plugins.some((plugin) => plugin.name === oneTsconfigPathsPluginName), configuredEvaluationPackages);\n\tconst evaluationConfig = {\n\t\t...config,\n\t\tenvironments: {\n\t\t\t...config.environments,\n\t\t\t[TAMAGUI_EVALUATION_ENVIRONMENT]: {\n\t\t\t\t...environment,\n\t\t\t\tplugins,\n\t\t\t\tresolve: resolve2\n\t\t\t}\n\t\t}\n\t};\n\tpackageResolver = createIdResolver(evaluationConfig);\n\treturn evaluationConfig;\n}\nasync function createOwnedEvaluationConfig(config, configuredEvaluationPackages) {\n\tconst environment = config.environments[TAMAGUI_EVALUATION_ENVIRONMENT];\n\tconst plugins = environment.plugins.filter(isEvaluationUserPlugin).map((plugin) => createEvaluationPluginFacade(plugin));\n\tconst resolve2 = getEvaluationResolve(environment.resolve, config.root, plugins.some((plugin) => plugin.name === oneTsconfigPathsPluginName), configuredEvaluationPackages);\n\tconst { createEnvironment: _createEnvironment, ...dev } = environment.dev;\n\treturn resolveConfig({\n\t\tconfigFile: false,\n\t\troot: config.root,\n\t\tmode: config.mode,\n\t\tlogLevel: config.logLevel,\n\t\tplugins,\n\t\tdefine: environment.define,\n\t\tresolve: resolve2,\n\t\tenvironments: { [TAMAGUI_EVALUATION_ENVIRONMENT]: {\n\t\t\tconsumer: environment.consumer,\n\t\t\tkeepProcessEnv: environment.keepProcessEnv,\n\t\t\tdefine: environment.define,\n\t\t\tresolve: resolve2,\n\t\t\toptimizeDeps: environment.optimizeDeps,\n\t\t\tdev: {\n\t\t\t\t...dev,\n\t\t\t\tmoduleRunnerTransform: true\n\t\t\t}\n\t\t} }\n\t}, \"serve\", config.mode);\n}\nconst _pluginRequire = createRequire(typeof __filename === \"string\" ? __filename : fileURLToPath(import.meta.url));\nconst resolve = (name) => _pluginRequire.resolve(name);\nconst normalizePath = (value) => value.replace(/\\\\/g, \"/\");\nconst PLUGIN_INSTANCE_KEY = \"__tamagui_vite_plugin_instance__\";\nfunction reportCompilerStats(root, reports) {\n\tconst report = createCompilerStatsReport(root, reports);\n\tconsole.info(formatCompilerStatsReport(report, process.env.TAMAGUI_COMPILER_STATS === \"verbose\"));\n\tif (process.env.TAMAGUI_COMPILER_STATS_FILE) {\n\t\tconst outputPath = path.resolve(root, process.env.TAMAGUI_COMPILER_STATS_FILE);\n\t\twriteFileSync(outputPath, `${JSON.stringify(report, null, 2)}\n`);\n\t\tconsole.info(`[tamagui] compiler stats JSON: ${path.relative(process.cwd(), outputPath)}`);\n\t}\n}\nfunction getNextPluginInstanceId() {\n\tconst next = (globalThis[PLUGIN_INSTANCE_KEY] || 0) + 1;\n\tglobalThis[PLUGIN_INSTANCE_KEY] = next;\n\treturn next;\n}\nfunction isInstalled(projectRoot, id) {\n\ttry {\n\t\tcreateRequire(path.join(projectRoot, \"package.json\")).resolve(id);\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\nfunction addIfInstalled(userConf, projectRoot, ids) {\n\tconst root = projectRoot || process.cwd();\n\tuserConf.optimizeDeps ||= {};\n\tuserConf.optimizeDeps.include ||= [];\n\tfor (const id of ids) if (!userConf.optimizeDeps.include.includes(id) && isInstalled(root, id)) userConf.optimizeDeps.include.push(id);\n}\nfunction tamaguiAliases(options = {}) {\n\tconst aliases = [];\n\tif (options.svg) aliases.push({\n\t\tfind: \"react-native-svg\",\n\t\treplacement: resolve(\"@tamagui/react-native-svg\")\n\t});\n\tif (options.rnwLite) {\n\t\tconst rnwlBase = path.dirname(resolve(\"@tamagui/react-native-web-lite/package.json\"));\n\t\tconst rnwl = normalizePath(path.join(rnwlBase, options.rnwLite === \"without-animated\" ? \"dist/esm/without-animated.mjs\" : \"dist/esm/index.mjs\"));\n\t\tconst rnwlFlatModules = readdirSync(path.join(rnwlBase, \"dist/esm\")).filter((file) => file.endsWith(\".mjs\")).map((file) => file.slice(0, -4)).filter((name) => /^[A-Za-z0-9_]+$/.test(name));\n\t\taliases.push({\n\t\t\tfind: new RegExp(`^react-native(?:-web)?\\\\/dist\\\\/(?:exports|modules)\\\\/(?:.*\\\\/)?(${rnwlFlatModules.join(\"|\")})$`),\n\t\t\treplacement: `${normalizePath(rnwlBase)}/dist/esm/$1.mjs`\n\t\t}, {\n\t\t\tfind: /^react-native$/,\n\t\t\treplacement: rnwl\n\t\t}, {\n\t\t\tfind: /^react-native\\/(Libraries\\/Utilities\\/codegenNativeComponent|Libraries\\/Utilities\\/codegenNativeCommand)$/,\n\t\t\treplacement: `${rnwlBase}/$1`\n\t\t}, {\n\t\t\tfind: \"react-native/package.json\",\n\t\t\treplacement: resolve(\"@tamagui/react-native-web-lite/package.json\")\n\t\t}, {\n\t\t\tfind: /^react-native-web$/,\n\t\t\treplacement: rnwl\n\t\t});\n\t}\n\treturn aliases;\n}\nfunction createTamaguiNativePlugin(tamaguiOptionsIn, nativeContext) {\n\tlet compilerFrontend = new Static.CompilerFrontend();\n\tconst projectDependencies = /* @__PURE__ */ new Set();\n\tlet root = nativeContext?.root || process.cwd();\n\tlet projectPromise = null;\n\tlet rebuildProject = false;\n\tlet generation = 0;\n\tconst loadProject = async (resolveModule) => {\n\t\tif (projectPromise) return projectPromise;\n\t\tconst shouldRebuild = rebuildProject;\n\t\trebuildProject = false;\n\t\tconst guarded = (async () => {\n\t\t\tprojectDependencies.clear();\n\t\t\tconst loadedOptions = await Static.loadTamaguiBuildConfigAsync({\n\t\t\t\t...tamaguiOptionsIn,\n\t\t\t\troot,\n\t\t\t\tplatform: \"native\",\n\t\t\t\toutputCSS: void 0\n\t\t\t});\n\t\t\tconst options = {\n\t\t\t\t...loadedOptions,\n\t\t\t\troot,\n\t\t\t\toutputCSS: void 0\n\t\t\t};\n\t\t\tfor (const dependency of Static.getTamaguiBuildConfigDependencies(loadedOptions)) projectDependencies.add(normalizePath(dependency));\n\t\t\tif (options.disable || options.disableExtraction) return null;\n\t\t\tconst project = await Static.loadCompilerProject({\n\t\t\t\troot,\n\t\t\t\ttarget: \"native\",\n\t\t\t\toptions,\n\t\t\t\trebuild: shouldRebuild,\n\t\t\t\tgeneration: `vite-native:${generation + 1}`,\n\t\t\t\tmissingProjectMessage: \"Unable to load the Tamagui project for Vite native compilation\",\n\t\t\t\tasync resolveComponents(moduleNames) {\n\t\t\t\t\treturn Promise.all(moduleNames.map(async (moduleName) => {\n\t\t\t\t\t\tconst id = await resolveModule(moduleName);\n\t\t\t\t\t\tprojectDependencies.add(normalizePath(id.split(/[?#]/, 1)[0]));\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tmoduleName,\n\t\t\t\t\t\t\tid\n\t\t\t\t\t\t};\n\t\t\t\t\t}));\n\t\t\t\t}\n\t\t\t});\n\t\t\tfor (const dependency of project.projectInfo.dependencies ?? []) projectDependencies.add(normalizePath(dependency.split(/[?#]/, 1)[0]));\n\t\t\tconst configPath = options.config || \"tamagui.config.ts\";\n\t\t\tprojectDependencies.add(normalizePath(path.isAbsolute(configPath) ? configPath : path.resolve(root, configPath)));\n\t\t\tconst buildFile = options.buildFile || \"tamagui.build.ts\";\n\t\t\tprojectDependencies.add(normalizePath(path.isAbsolute(buildFile) ? buildFile : path.resolve(root, buildFile)));\n\t\t\tif (options.themeBuilder?.input) projectDependencies.add(normalizePath(path.isAbsolute(options.themeBuilder.input) ? options.themeBuilder.input : path.resolve(root, options.themeBuilder.input)));\n\t\t\tgeneration++;\n\t\t\treturn project;\n\t\t})().catch((error) => {\n\t\t\tif (projectPromise === guarded) projectPromise = null;\n\t\t\trebuildProject = true;\n\t\t\tthrow error;\n\t\t});\n\t\tprojectPromise = guarded;\n\t\treturn projectPromise;\n\t};\n\treturn {\n\t\tname: \"tamagui-native-compiler\",\n\t\tenforce: \"post\",\n\t\tconfigResolved(config) {\n\t\t\troot = config.root;\n\t\t},\n\t\twatchChange(id) {\n\t\t\tif (projectDependencies.has(normalizePath(id.split(/[?#]/, 1)[0]))) {\n\t\t\t\trebuildProject = true;\n\t\t\t\tprojectPromise = null;\n\t\t\t\tcompilerFrontend = new Static.CompilerFrontend();\n\t\t\t}\n\t\t},\n\t\ttransform: {\n\t\t\torder: \"pre\",\n\t\t\tasync handler(code, id) {\n\t\t\t\tconst environmentName = nativeContext?.platform || this.environment?.name;\n\t\t\t\tif (environmentName !== \"ios\" && environmentName !== \"android\") return;\n\t\t\t\tconst [validId] = id.split(\"?\");\n\t\t\t\tif (!validId || !/\\.[jt]sx$/.test(validId) || normalizePath(validId).split(\"/\").includes(\"node_modules\")) return;\n\t\t\t\tconst { shouldDisable } = await Static.getPragmaOptions({\n\t\t\t\t\tsource: code,\n\t\t\t\t\tpath: validId\n\t\t\t\t});\n\t\t\t\tif (shouldDisable) return;\n\t\t\t\tconst resolve2 = async (specifier, importer) => {\n\t\t\t\t\tconst resolution = await this.resolve(specifier, importer, { skipSelf: true });\n\t\t\t\t\treturn resolution ? {\n\t\t\t\t\t\tid: resolution.id,\n\t\t\t\t\t\texternal: resolution.external === true\n\t\t\t\t\t} : null;\n\t\t\t\t};\n\t\t\t\tconst project = await loadProject(async (specifier) => {\n\t\t\t\t\tconst resolution = await resolve2(specifier, path.join(root, \"__tamagui_native.tsx\"));\n\t\t\t\t\tif (!resolution) throw new Error(`Unable to resolve native compiler component ${specifier}`);\n\t\t\t\t\treturn resolution.id;\n\t\t\t\t});\n\t\t\t\tif (!project) return;\n\t\t\t\tfor (const dependency of projectDependencies) this.addWatchFile(dependency);\n\t\t\t\tconst result = await compilerFrontend.compile({\n\t\t\t\t\tid: validId,\n\t\t\t\t\tsource: code,\n\t\t\t\t\troot,\n\t\t\t\t\ttarget: \"native\",\n\t\t\t\t\tproject,\n\t\t\t\t\tresolve: resolve2,\n\t\t\t\t\tload: async (dependencyId) => {\n\t\t\t\t\t\tconst cleanDependencyId = dependencyId.split(/[?#]/, 1)[0];\n\t\t\t\t\t\tif (!path.isAbsolute(cleanDependencyId)) return null;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\treturn await readFile(cleanDependencyId, \"utf8\");\n\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tfor (const dependency of result.plan.dependencies) if (path.isAbsolute(dependency)) this.addWatchFile(dependency);\n\t\t\t\tif (result.plan.css) throw new Error(`Native Tamagui compilation produced unexpected CSS for ${validId}`);\n\t\t\t\treturn result.output.changed ? {\n\t\t\t\t\tcode: result.output.code,\n\t\t\t\t\tmap: result.output.map\n\t\t\t\t} : void 0;\n\t\t\t}\n\t\t}\n\t};\n}\nfunction tamaguiNativePlugin(tamaguiOptionsIn = {}) {\n\tconst plugin = createTamaguiNativePlugin(tamaguiOptionsIn);\n\tconst api = plugin.api && typeof plugin.api === \"object\" ? plugin.api : {};\n\treturn {\n\t\t...plugin,\n\t\tapi: {\n\t\t\t...api,\n\t\t\tvxrnNative: (context) => createTamaguiNativePlugin(tamaguiOptionsIn, context)\n\t\t}\n\t};\n}\nfunction createTamaguiPlugins({ disableResolveConfig, wrapExtractedCSS = (css) => css, zeroIslandBuild, ...tamaguiOptionsIn } = {}) {\n\tlet shouldExtract = !tamaguiOptionsIn.disableExtraction;\n\tconst enableNativeEnv = !!globalThis.__vxrnEnableNativeEnv;\n\tconst tamaguiLoader = createViteTamaguiLoader(tamaguiOptionsIn);\n\tconst compilerFrontend = new Static.CompilerFrontend();\n\tconst pluginInstanceId = getNextPluginInstanceId();\n\tconst configuredEvaluationPackages = /* @__PURE__ */ new Set();\n\tlet buildEnvironmentPromise = null;\n\tlet buildCleanupPromise = null;\n\tconst activeBuildEnvironments = /* @__PURE__ */ new Set();\n\tconst compilerReports = process.env.TAMAGUI_COMPILER_STATS || process.env.TAMAGUI_COMPILER_STATS_FILE ? /* @__PURE__ */ new Map() : null;\n\tconst releaseBuildEnvironment = async (environment) => {\n\t\tif (!activeBuildEnvironments.delete(environment) || activeBuildEnvironments.size) return;\n\t\tif (compilerReports?.size) reportCompilerStats(config?.root ?? process.cwd(), compilerReports);\n\t\tconst currentCleanup = Promise.resolve().then(async () => {\n\t\t\ttry {\n\t\t\t\tawait tamaguiLoader.cleanup();\n\t\t\t} finally {\n\t\t\t\tbuildEnvironmentPromise = null;\n\t\t\t}\n\t\t});\n\t\tbuildCleanupPromise = currentCleanup;\n\t\ttry {\n\t\t\tawait currentCleanup;\n\t\t} finally {\n\t\t\tif (buildCleanupPromise === currentCleanup) buildCleanupPromise = null;\n\t\t}\n\t};\n\tconst extensions = [\n\t\t`.web.mjs`,\n\t\t`.web.js`,\n\t\t`.web.jsx`,\n\t\t`.web.ts`,\n\t\t`.web.tsx`,\n\t\t\".mjs\",\n\t\t\".js\",\n\t\t\".mts\",\n\t\t\".ts\",\n\t\t\".jsx\",\n\t\t\".tsx\",\n\t\t\".json\"\n\t];\n\tconst getEvaluationEnvironmentOptions = () => ({\n\t\tconsumer: \"server\",\n\t\tkeepProcessEnv: true,\n\t\tdefine: {\n\t\t\t\"process.env.IS_STATIC\": JSON.stringify(\"is_static\"),\n\t\t\t\"process.env.TAMAGUI_IS_CLIENT\": JSON.stringify(false),\n\t\t\t\"process.env.TAMAGUI_IS_SERVER\": JSON.stringify(true),\n\t\t\t\"process.env.TAMAGUI_TARGET\": JSON.stringify(\"web\"),\n\t\t\t\"process.env.TAMAGUI_ENVIRONMENT\": JSON.stringify(TAMAGUI_EVALUATION_ENVIRONMENT),\n\t\t\t\"process.env.TAMAGUI_RUNTIME\": JSON.stringify(\"full\"),\n\t\t\t\"process.env.TAMAGUI_DID_OUTPUT_CSS\": JSON.stringify(\"\"),\n\t\t\t\"process.env.VITE_ENVIRONMENT\": JSON.stringify(\"ssr\"),\n\t\t\t\"process.env.TAMAGUI_DISABLE_SLIDER_INTERVAL\": JSON.stringify(\"1\")\n\t\t},\n\t\tresolve: {\n\t\t\tconditions: [...defaultClientConditions],\n\t\t\tmainFields: [...defaultClientMainFields],\n\t\t\tnoExternal: [inlineEvaluationTamaguiPackage, ...configuredEvaluationPackages],\n\t\t\textensions\n\t\t},\n\t\tdev: {\n\t\t\tcreateEnvironment(name, resolved) {\n\t\t\t\treturn createRunnableDevEnvironment(name, createServeEvaluationConfig(resolved, configuredEvaluationPackages));\n\t\t\t},\n\t\t\tmoduleRunnerTransform: true\n\t\t}\n\t});\n\ttamaguiLoader.loadTamaguiBuildConfig();\n\tconst ensureLoaded = async () => {\n\t\tconst promise = tamaguiLoader.getLoadPromise();\n\t\tif (promise) await promise;\n\t\tconst options = tamaguiLoader.getTamaguiOptions();\n\t\tif (options) shouldExtract = !options.disableExtraction;\n\t\treturn options;\n\t};\n\tconst getHash = (input) => createHash(\"sha1\").update(input).digest(\"base64\");\n\tconst cssMap = /* @__PURE__ */ new Map();\n\tconst transformedModuleIds = /* @__PURE__ */ new Set();\n\tconst compilerHotUpdateSignatures = /* @__PURE__ */ new Map();\n\tconst compilerHotReloadSignatures = /* @__PURE__ */ new Map();\n\tlet config;\n\tlet server;\n\tlet zero = null;\n\tlet zeroReceipt = null;\n\tlet zeroBuildFailed = false;\n\tlet globalCSS = null;\n\tlet globalCSSExpected = null;\n\tlet zeroHtmlEntries = 0;\n\tlet zeroDevIslands = Promise.resolve();\n\tconst virtualExt = `.tamagui.css`;\n\tconst getAbsoluteVirtualFileId = (filePath) => {\n\t\tif (filePath.startsWith(config.root)) return filePath;\n\t\treturn normalizePath(path.join(config.root, filePath));\n\t};\n\tconst isAppJSXSource = (filePath) => {\n\t\tif (!/\\.[jt]sx$/.test(filePath)) return false;\n\t\tconst relative = path.relative(config.root, filePath);\n\t\treturn relative !== \"\" && relative !== \"..\" && !relative.startsWith(`..${path.sep}`) && !relative.split(path.sep).includes(\"node_modules\");\n\t};\n\tconst isFrameworkAnalysisRequest = (id) => id.includes(\"__react-router-build-client-route\");\n\tfunction isNotClient(environment) {\n\t\treturn environment?.name && environment.name !== \"client\";\n\t}\n\tfunction isNative(environment) {\n\t\treturn environment?.name && (environment.name === \"ios\" || environment.name === \"android\");\n\t}\n\tfunction invalidateCompilerModules() {\n\t\tif (server) {\n\t\t\tconst ids = /* @__PURE__ */ new Set([...transformedModuleIds, ...cssMap.keys()]);\n\t\t\tfor (const environment of Object.values(server.environments)) {\n\t\t\t\tif (environment.name === TAMAGUI_EVALUATION_ENVIRONMENT) continue;\n\t\t\t\tfor (const id of ids) {\n\t\t\t\t\tconst modules = environment.moduleGraph.getModulesByFile(id);\n\t\t\t\t\tif (!modules) continue;\n\t\t\t\t\tfor (const module of modules) environment.moduleGraph.invalidateModule(module);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tcssMap.clear();\n\t}\n\treturn {\n\t\tplugins: [\n\t\t\t{\n\t\t\t\tname: \"tamagui\",\n\t\t\t\tenforce: \"pre\",\n\t\t\t\tconfigureServer(_server) {\n\t\t\t\t\tserver = _server;\n\t\t\t\t\tconst evaluationEnvironment = server.environments[TAMAGUI_EVALUATION_ENVIRONMENT];\n\t\t\t\t\tif (!isRunnableDevEnvironment(evaluationEnvironment)) throw new Error(`The ${TAMAGUI_EVALUATION_ENVIRONMENT} Vite environment must support ModuleRunner evaluation`);\n\t\t\t\t\ttamaguiLoader.setEnvironment(evaluationEnvironment);\n\t\t\t\t},\n\t\t\t\tasync buildEnd() {\n\t\t\t\t\tawait releaseBuildEnvironment(this.environment);\n\t\t\t\t},\n\t\t\t\tasync config(userConfig, env) {\n\t\t\t\t\tconst options = await ensureLoaded();\n\t\t\t\t\tif (!options) throw new Error(`No tamagui options loaded`);\n\t\t\t\t\tconst useReactNativeWebLite = tamaguiOptionsIn.useReactNativeWebLite ?? options.useReactNativeWebLite;\n\t\t\t\t\tfor (const source of [options.config, ...options.components || []]) {\n\t\t\t\t\t\tconst packageName = getEvaluationPackageName(source);\n\t\t\t\t\t\tif (packageName) configuredEvaluationPackages.add(packageName);\n\t\t\t\t\t}\n\t\t\t\t\tconst resolvedRoot = userConfig.root ? path.resolve(userConfig.root) : process.cwd();\n\t\t\t\t\tzero = zeroIslandBuild ? null : await createZeroRuntimeController(options, resolvedRoot, userConfig.base || \"/\");\n\t\t\t\t\tglobalCSS = zeroIslandBuild || env.command !== \"build\" ? null : Static.resolveGlobalCSSOwnership(options, resolvedRoot);\n\t\t\t\t\treturn {\n\t\t\t\t\t\tenvPrefix: [\"TAMAGUI_\"],\n\t\t\t\t\t\tenvironments: {\n\t\t\t\t\t\t\tclient: { define: {\n\t\t\t\t\t\t\t\t\"process.env.TAMAGUI_IS_CLIENT\": JSON.stringify(true),\n\t\t\t\t\t\t\t\t\"process.env.TAMAGUI_ENVIRONMENT\": \"\\\"client\\\"\",\n\t\t\t\t\t\t\t\t...zero?.isEnforcing && { \"process.env.TAMAGUI_RUNTIME\": JSON.stringify(\"zero\") },\n\t\t\t\t\t\t\t\t...globalCSS && { \"process.env.TAMAGUI_DID_OUTPUT_CSS\": JSON.stringify(\"1\") }\n\t\t\t\t\t\t\t} },\n\t\t\t\t\t\t\t[TAMAGUI_EVALUATION_ENVIRONMENT]: getEvaluationEnvironmentOptions()\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdefine: {\n\t\t\t\t\t\t\t\"process.env.TAMAGUI_RUNTIME\": JSON.stringify(\"full\"),\n\t\t\t\t\t\t\t_frameTimestamp: void 0,\n\t\t\t\t\t\t\t_WORKLET: false,\n\t\t\t\t\t\t\t__DEV__: `${env.mode === \"development\"}`,\n\t\t\t\t\t\t\t\"process.env.NODE_ENV\": JSON.stringify(process.env.NODE_ENV || env.mode),\n\t\t\t\t\t\t\t\"process.env.ENABLE_RSC\": JSON.stringify(process.env.ENABLE_RSC || \"\"),\n\t\t\t\t\t\t\t\"process.env.ENABLE_STEPS\": JSON.stringify(process.env.ENABLE_STEPS || \"\"),\n\t\t\t\t\t\t\t\"process.env.IS_STATIC\": JSON.stringify(false),\n\t\t\t\t\t\t\t...env.mode === \"production\" && { \"process.env.TAMAGUI_OPTIMIZE_THEMES\": JSON.stringify(true) }\n\t\t\t\t\t\t},\n\t\t\t\t\t\tresolve: disableResolveConfig || enableNativeEnv ? {} : {\n\t\t\t\t\t\t\textensions,\n\t\t\t\t\t\t\talias: { ...options.platform !== \"native\" && {\n\t\t\t\t\t\t\t\t\"react-native/Libraries/Renderer/shims/ReactFabric\": resolve(\"@tamagui/proxy-worm\"),\n\t\t\t\t\t\t\t\t\"react-native/Libraries/Utilities/codegenNativeComponent\": resolve(\"@tamagui/proxy-worm\"),\n\t\t\t\t\t\t\t\t\"react-native-svg\": resolve(\"@tamagui/react-native-svg\"),\n\t\t\t\t\t\t\t\t...!useReactNativeWebLite && { \"react-native\": resolve(\"react-native-web\") }\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"tamagui-rnw-lite\",\n\t\t\t\tenforce: \"post\",\n\t\t\t\tconfig() {\n\t\t\t\t\tif (enableNativeEnv) return {};\n\t\t\t\t\tconst options = tamaguiLoader.getTamaguiOptions();\n\t\t\t\t\tconst useReactNativeWebLite = tamaguiOptionsIn.useReactNativeWebLite ?? options?.useReactNativeWebLite;\n\t\t\t\t\tif (!useReactNativeWebLite) return {};\n\t\t\t\t\tconst include = [];\n\t\t\t\t\tfor (const dependency of [\"memoize-one\", \"@react-native/normalize-color\"]) if (isInstalled(process.cwd(), dependency)) include.push(dependency);\n\t\t\t\t\treturn {\n\t\t\t\t\t\tresolve: { alias: tamaguiAliases({ rnwLite: useReactNativeWebLite }) },\n\t\t\t\t\t\tssr: { noExternal: [\n\t\t\t\t\t\t\t/^@tamagui\\//,\n\t\t\t\t\t\t\t\"tamagui\",\n\t\t\t\t\t\t\t\"react-native\",\n\t\t\t\t\t\t\t\"react-native-web\"\n\t\t\t\t\t\t] },\n\t\t\t\t\t\toptimizeDeps: {\n\t\t\t\t\t\t\texclude: [\"react-native-web\"],\n\t\t\t\t\t\t\tinclude\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"tamagui-extract\",\n\t\t\t\tenforce: \"pre\",\n\t\t\t\tasync config(userConf) {\n\t\t\t\t\tawait ensureLoaded();\n\t\t\t\t\tuserConf.optimizeDeps ||= {};\n\t\t\t\t\tuserConf.optimizeDeps.include ||= [];\n\t\t\t\t\tuserConf.optimizeDeps.include.push(\"inline-style-prefixer\");\n\t\t\t\t\taddIfInstalled(userConf, userConf.root, [\"@react-native/normalize-color\"]);\n\t\t\t\t\taddIfInstalled(userConf, userConf.root, [\n\t\t\t\t\t\t\"@tamagui/core\",\n\t\t\t\t\t\t\"@tamagui/web\",\n\t\t\t\t\t\t\"@tamagui/toast\",\n\t\t\t\t\t\t\"@tamagui/sheet\",\n\t\t\t\t\t\t\"@tamagui/sheet/controller\"\n\t\t\t\t\t]);\n\t\t\t\t\tuserConf.resolve ||= {};\n\t\t\t\t\tuserConf.resolve.dedupe ||= [];\n\t\t\t\t\tfor (const id of [\n\t\t\t\t\t\t\"tamagui\",\n\t\t\t\t\t\t\"@tamagui/core\",\n\t\t\t\t\t\t\"@tamagui/web\",\n\t\t\t\t\t\t\"@tamagui/toast\",\n\t\t\t\t\t\t\"@tamagui/sheet\"\n\t\t\t\t\t]) if (!userConf.resolve.dedupe.includes(id) && isInstalled(userConf.root || process.cwd(), id)) userConf.resolve.dedupe.push(id);\n\t\t\t\t\tif (!shouldExtract) return;\n\t\t\t\t\tuserConf.optimizeDeps.include.push(\"@tamagui/core/inject-styles\");\n\t\t\t\t},\n\t\t\t\tasync configResolved(resolvedConfig) {\n\t\t\t\t\tconfig = resolvedConfig;\n\t\t\t\t},\n\t\t\t\tasync buildStart() {\n\t\t\t\t\tconst buildConfig = this.environment.getTopLevelConfig();\n\t\t\t\t\tif (buildConfig.command !== \"build\") return;\n\t\t\t\t\tconst pendingCleanup = buildCleanupPromise;\n\t\t\t\t\tif (pendingCleanup) await pendingCleanup;\n\t\t\t\t\tconst buildEnvironment = this.environment;\n\t\t\t\t\tactiveBuildEnvironments.add(buildEnvironment);\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (!tamaguiLoader.getEnvironment()) {\n\t\t\t\t\t\t\tawait tamaguiLoader.loadTamaguiBuildConfig();\n\t\t\t\t\t\t\tbuildEnvironmentPromise ||= (async () => {\n\t\t\t\t\t\t\t\tconst evaluationEnvironment = createRunnableDevEnvironment(TAMAGUI_EVALUATION_ENVIRONMENT, await createOwnedEvaluationConfig(buildConfig, configuredEvaluationPackages), { hot: false });\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tawait evaluationEnvironment.init();\n\t\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\t\tawait evaluationEnvironment.close().catch(() => void 0);\n\t\t\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttamaguiLoader.setEnvironment(evaluationEnvironment, { owned: true });\n\t\t\t\t\t\t\t})();\n\t\t\t\t\t\t\tawait buildEnvironmentPromise;\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tawait releaseBuildEnvironment(buildEnvironment);\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\thotUpdate: {\n\t\t\t\t\torder: \"post\",\n\t\t\t\t\tasync handler(options) {\n\t\t\t\t\t\tif (!tamaguiLoader.isEvaluationDependency(options.file)) {\n\t\t\t\t\t\t\tif (this.environment.name !== \"client\") return;\n\t\t\t\t\t\t\tconst source = options.type === \"delete\" ? null : await options.read();\n\t\t\t\t\t\t\tconst affectedModules = /* @__PURE__ */ new Set();\n\t\t\t\t\t\t\tconst compilerHmrRoots = new Set(compilerFrontend.dependentsOf(options.file));\n\t\t\t\t\t\t\tif (compilerHmrRoots.size || compilerFrontend.has(options.file)) compilerHmrRoots.add(options.file);\n\t\t\t\t\t\t\tif (compilerFrontend.has(options.file) || compilerHmrRoots.size > 0) {\n\t\t\t\t\t\t\t\tif (!(await ensureLoaded())?.disable) {\n\t\t\t\t\t\t\t\t\tconst invalidatedIds = options.type === \"delete\" ? (await compilerFrontend.remove(options.file)).invalidatedIds : await compilerFrontend.update({\n\t\t\t\t\t\t\t\t\t\tid: options.file,\n\t\t\t\t\t\t\t\t\t\tsource,\n\t\t\t\t\t\t\t\t\t\troot: config.root,\n\t\t\t\t\t\t\t\t\t\tproject: {\n\t\t\t\t\t\t\t\t\t\t\t...await tamaguiLoader.getCompilerProject(),\n\t\t\t\t\t\t\t\t\t\t\tgeneration: `${pluginInstanceId}:${tamaguiLoader.getGeneration()}`\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tresolve: async (specifier, importer) => {\n\t\t\t\t\t\t\t\t\t\t\tconst resolution = await this.environment.pluginContainer.resolveId(specifier, importer);\n\t\t\t\t\t\t\t\t\t\t\treturn resolution ? {\n\t\t\t\t\t\t\t\t\t\t\t\tid: resolution.id,\n\t\t\t\t\t\t\t\t\t\t\t\texternal: resolution.external === true\n\t\t\t\t\t\t\t\t\t\t\t} : null;\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tload: async (dependencyId) => {\n\t\t\t\t\t\t\t\t\t\t\tconst cleanDependencyId = dependencyId.split(/[?#]/, 1)[0];\n\t\t\t\t\t\t\t\t\t\t\tif (!path.isAbsolute(cleanDependencyId)) return null;\n\t\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\t\treturn await readFile(cleanDependencyId, \"utf8\");\n\t\t\t\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\tfor (const invalidatedId of invalidatedIds) {\n\t\t\t\t\t\t\t\t\t\tfor (const module of this.environment.moduleGraph.getModulesByFile(invalidatedId) ?? []) {\n\t\t\t\t\t\t\t\t\t\t\tthis.environment.moduleGraph.invalidateModule(module);\n\t\t\t\t\t\t\t\t\t\t\tif (compilerHmrRoots.has(invalidatedId) || module.isSelfAccepting) affectedModules.add(module);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tconst cssId = getAbsoluteVirtualFileId(`${invalidatedId}${virtualExt}`);\n\t\t\t\t\t\t\t\t\t\tconst cssModule = this.environment.moduleGraph.getModuleById(cssId);\n\t\t\t\t\t\t\t\t\t\tif (cssModule) this.environment.moduleGraph.invalidateModule(cssModule);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn affectedModules.size ? [...affectedModules] : void 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst signature = await (async () => {\n\t\t\t\t\t\t\tif (options.type === \"delete\") return getHash(`${options.type}:${options.file}`);\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\treturn getHash(`${options.type}:${options.file}:${await options.read()}`);\n\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\treturn getHash(`${options.type}:${options.file}:${options.timestamp}`);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})();\n\t\t\t\t\t\tif (compilerHotUpdateSignatures.get(options.file) !== signature) {\n\t\t\t\t\t\t\tcompilerHotUpdateSignatures.set(options.file, signature);\n\t\t\t\t\t\t\ttamaguiLoader.invalidate(options.file);\n\t\t\t\t\t\t\tinvalidateCompilerModules();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (this.environment.name === \"client\" && compilerHotReloadSignatures.get(options.file) !== signature) {\n\t\t\t\t\t\t\tcompilerHotReloadSignatures.set(options.file, signature);\n\t\t\t\t\t\t\tthis.environment.hot.send({\n\t\t\t\t\t\t\t\ttype: \"full-reload\",\n\t\t\t\t\t\t\t\tpath: \"*\",\n\t\t\t\t\t\t\t\ttriggeredBy: options.file\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [];\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tasync watchChange(id) {\n\t\t\t\t\tif (config.command !== \"build\") return;\n\t\t\t\t\tif (tamaguiLoader.isEvaluationDependency(id)) {\n\t\t\t\t\t\ttamaguiLoader.invalidate(id);\n\t\t\t\t\t\tinvalidateCompilerModules();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tasync resolveId(source) {\n\t\t\t\t\tif (isNative(this.environment)) return;\n\t\t\t\t\tif (isNotClient(this.environment)) return;\n\t\t\t\t\tif (!shouldExtract) return;\n\t\t\t\t\tconst [validId, query] = source.split(\"?\");\n\t\t\t\t\tif (!validId.endsWith(virtualExt)) return;\n\t\t\t\t\tconst absoluteId = validId.startsWith(config.root) ? validId : getAbsoluteVirtualFileId(validId);\n\t\t\t\t\tif (cssMap.has(absoluteId)) return absoluteId + (query ? `?${query}` : \"\");\n\t\t\t\t},\n\t\t\t\tasync load(id) {\n\t\t\t\t\tif (tamaguiLoader.getTamaguiOptions()?.disable) return;\n\t\t\t\t\tif (isNative(this.environment)) return;\n\t\t\t\t\tif (isNotClient(this.environment)) return;\n\t\t\t\t\tif (!shouldExtract) return;\n\t\t\t\t\tconst [validId] = id.split(\"?\");\n\t\t\t\t\treturn cssMap.get(validId);\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"tamagui-compiler\",\n\t\t\t\tenforce: \"post\",\n\t\t\t\ttransform: {\n\t\t\t\t\torder: \"pre\",\n\t\t\t\t\tasync handler(code, id) {\n\t\t\t\t\t\tif (this.environment?.name === TAMAGUI_EVALUATION_ENVIRONMENT) return;\n\t\t\t\t\t\tif (!tamaguiLoader.getEnvironment()) return;\n\t\t\t\t\t\tif (isNative(this.environment)) return;\n\t\t\t\t\t\tconst [validId] = id.split(\"?\");\n\t\t\t\t\t\tif (isFrameworkAnalysisRequest(id) || !isAppJSXSource(validId) || !/\\.[jt]sx$/.test(validId)) return;\n\t\t\t\t\t\tif ((await ensureLoaded())?.disable || !shouldExtract) return;\n\t\t\t\t\t\tconst { shouldDisable } = await Static.getPragmaOptions({\n\t\t\t\t\t\t\tsource: code,\n\t\t\t\t\t\t\tpath: validId\n\t\t\t\t\t\t});\n\t\t\t\t\t\tif (shouldDisable) return;\n\t\t\t\t\t\tconst evaluationDependencies = await tamaguiLoader.ensureFullConfigLoaded();\n\t\t\t\t\t\tfor (const dependency of evaluationDependencies) this.addWatchFile(dependency);\n\t\t\t\t\t\tconst compilerProject = await tamaguiLoader.getCompilerProject();\n\t\t\t\t\t\tconst result = await compilerFrontend.compile({\n\t\t\t\t\t\t\tid: validId,\n\t\t\t\t\t\t\tsource: code,\n\t\t\t\t\t\t\troot: config.root,\n\t\t\t\t\t\t\ttarget: \"web\",\n\t\t\t\t\t\t\tproject: {\n\t\t\t\t\t\t\t\t...compilerProject,\n\t\t\t\t\t\t\t\tgeneration: `${pluginInstanceId}:${tamaguiLoader.getGeneration()}`,\n\t\t\t\t\t\t\t\tzeroRuntime: zero !== null\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tresolve: async (specifier, importer) => {\n\t\t\t\t\t\t\t\tconst resolution = await this.resolve(specifier, importer, { skipSelf: true });\n\t\t\t\t\t\t\t\treturn resolution ? {\n\t\t\t\t\t\t\t\t\tid: resolution.id,\n\t\t\t\t\t\t\t\t\texternal: resolution.external === true\n\t\t\t\t\t\t\t\t} : null;\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tload: async (dependencyId) => {\n\t\t\t\t\t\t\t\tconst cleanDependencyId = dependencyId.split(/[?#]/, 1)[0];\n\t\t\t\t\t\t\t\tif (!path.isAbsolute(cleanDependencyId)) return null;\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\treturn await readFile(cleanDependencyId, \"utf8\");\n\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\ttransformedModuleIds.add(validId);\n\t\t\t\t\t\tcompilerReports?.set(validId, {\n\t\t\t\t\t\t\tstats: result.plan.stats,\n\t\t\t\t\t\t\tdiagnostics: result.plan.diagnostics\n\t\t\t\t\t\t});\n\t\t\t\t\t\tfor (const dependency of result.plan.dependencies) if (path.isAbsolute(dependency)) this.addWatchFile(dependency);\n\t\t\t\t\t\tif (zeroIslandBuild) {\n\t\t\t\t\t\t\tzeroIslandBuild.artifact.setIslandModuleCSS(zeroIslandBuild.islandId, validId, wrapExtractedCSS(result.plan.css));\n\t\t\t\t\t\t\treturn result.output.changed ? {\n\t\t\t\t\t\t\t\tcode: result.output.code,\n\t\t\t\t\t\t\t\tmap: result.output.map\n\t\t\t\t\t\t\t} : void 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (zero) {\n\t\t\t\t\t\t\tconst zeroResult = Static.transformZeroModule({\n\t\t\t\t\t\t\t\tmode: zero.isEnforcing ? \"enforce\" : \"report\",\n\t\t\t\t\t\t\t\tid: validId,\n\t\t\t\t\t\t\t\troot: config.root,\n\t\t\t\t\t\t\t\tsource: code,\n\t\t\t\t\t\t\t\tplan: result.plan,\n\t\t\t\t\t\t\t\tconfig: await tamaguiLoader.getTamaguiConfig(),\n\t\t\t\t\t\t\t\tisTamaguiSpecifier: (specifier) => specifier === \"tamagui\" || specifier.startsWith(\"@tamagui/\"),\n\t\t\t\t\t\t\t\tresolveIslandLoader: (specifier) => {\n\t\t\t\t\t\t\t\t\tconst islandId = zero.loaderIds.get(zeroModuleKey(path.resolve(path.dirname(validId), specifier)));\n\t\t\t\t\t\t\t\t\treturn islandId ? { islandId } : null;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tresolveIslandModule: (specifier) => zero.islandModuleIds.get(zeroModuleKey(path.resolve(path.dirname(validId), specifier))) ?? null\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tzero.transformed.add(validId);\n\t\t\t\t\t\t\tif (zeroResult.erased.exports.length) zero.erasedExports.set(validId, zeroResult.erased.exports);\n\t\t\t\t\t\t\tfor (const violation of zeroResult.violations) {\n\t\t\t\t\t\t\t\tconst { line, column } = Static.offsetToLineColumn(code, violation.span.start);\n\t\t\t\t\t\t\t\tzero.violations.push({\n\t\t\t\t\t\t\t\t\tfile: path.relative(config.root, validId),\n\t\t\t\t\t\t\t\t\tline,\n\t\t\t\t\t\t\t\t\tcolumn,\n\t\t\t\t\t\t\t\t\trule: violation.rule,\n\t\t\t\t\t\t\t\t\tcode: violation.code,\n\t\t\t\t\t\t\t\t\tcomponent: violation.component,\n\t\t\t\t\t\t\t\t\tmessage: violation.message\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (zero.isEnforcing) {\n\t\t\t\t\t\t\t\tStatic.mergeIslandBridges(zero.bridges, zeroResult.bridges);\n\t\t\t\t\t\t\t\tconst moduleCSS = [wrapExtractedCSS(result.plan.css), ...[...zeroResult.bridgeCSS.values()]].filter(Boolean).join(\"\\n\");\n\t\t\t\t\t\t\t\tif (config.command !== \"build\") {\n\t\t\t\t\t\t\t\t\tlet cssImport2 = \"\";\n\t\t\t\t\t\t\t\t\tif (moduleCSS) {\n\t\t\t\t\t\t\t\t\t\tconst rootRelativeId = `${validId}${virtualExt}`;\n\t\t\t\t\t\t\t\t\t\tcssMap.set(getAbsoluteVirtualFileId(rootRelativeId), moduleCSS);\n\t\t\t\t\t\t\t\t\t\tthis.addWatchFile(rootRelativeId);\n\t\t\t\t\t\t\t\t\t\tcssImport2 = `\nimport \"${rootRelativeId}\";`;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\tcode: `${zeroResult.output.code}${cssImport2}`,\n\t\t\t\t\t\t\t\t\t\tmap: zeroResult.output.map\n\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tfor (const [identifier, rules] of zeroResult.bridgeCSS) zero.artifact.setBridgeRules(identifier, rules);\n\t\t\t\t\t\t\t\tzero.artifact.setZeroModuleCSS(validId, wrapExtractedCSS(result.plan.css));\n\t\t\t\t\t\t\t\treturn zeroResult.output.changed ? {\n\t\t\t\t\t\t\t\t\tcode: zeroResult.output.code,\n\t\t\t\t\t\t\t\t\tmap: zeroResult.output.map\n\t\t\t\t\t\t\t\t} : void 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst isSSR = isNotClient(this.environment);\n\t\t\t\t\t\tlet cssImport = null;\n\t\t\t\t\t\tif (result.plan.css) {\n\t\t\t\t\t\t\tconst rootRelativeId = `${validId}${virtualExt}`;\n\t\t\t\t\t\t\tconst absoluteId = getAbsoluteVirtualFileId(rootRelativeId);\n\t\t\t\t\t\t\tcssMap.set(absoluteId, wrapExtractedCSS(result.plan.css));\n\t\t\t\t\t\t\tthis.addWatchFile(rootRelativeId);\n\t\t\t\t\t\t\tif (!isSSR) cssImport = `import \"${rootRelativeId}\";`;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst finalCode = cssImport ? `${result.output.code}\n${cssImport}` : result.output.code;\n\t\t\t\t\t\treturn result.output.changed || cssImport ? {\n\t\t\t\t\t\t\tcode: finalCode,\n\t\t\t\t\t\t\tmap: result.output.map\n\t\t\t\t\t\t} : void 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"tamagui-zero-runtime\",\n\t\t\t\tenforce: \"post\",\n\t\t\t\tasync buildStart() {\n\t\t\t\t\tif (!zero || this.environment.name !== \"client\") return;\n\t\t\t\t\tawait tamaguiLoader.ensureFullConfigLoaded();\n\t\t\t\t\tconst tamaguiConfig = await tamaguiLoader.getTamaguiConfig();\n\t\t\t\t\tif (!tamaguiConfig) throw new Error(`[tamagui zero-runtime] the Tamagui config did not evaluate, so no CSS artifact can be generated`);\n\t\t\t\t\tzero.violations.length = 0;\n\t\t\t\t\tzero.transformed.clear();\n\t\t\t\t\tzero.erasedExports.clear();\n\t\t\t\t\tif (!zero.isEnforcing) return;\n\t\t\t\t\tStatic.assertZeroConfigDrivers(tamaguiConfig);\n\t\t\t\t\tzero.artifact.clearGraphs();\n\t\t\t\t\tzero.bridges.clear();\n\t\t\t\t\tzeroHtmlEntries = 0;\n\t\t\t\t\tzero.artifact.setConfigCSS(tamaguiConfig.getCSS());\n\t\t\t\t\tif (config.command !== \"build\") {\n\t\t\t\t\t\tconst islands = zero;\n\t\t\t\t\t\tzeroDevIslands = Promise.all(islands.resolved.islands.map((island) => buildIsland({\n\t\t\t\t\t\t\tisland,\n\t\t\t\t\t\t\tcontroller: islands,\n\t\t\t\t\t\t\troot: config.root,\n\t\t\t\t\t\t\toutDir: zeroDevIslandDir(islands),\n\t\t\t\t\t\t\tmode: \"development\"\n\t\t\t\t\t\t})));\n\t\t\t\t\t\tawait zeroDevIslands;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tasync configureServer(devServer) {\n\t\t\t\t\tif (!zero?.isEnforcing) return;\n\t\t\t\t\tconst islandBase = `${zero.cssHref.replace(ZERO_CSS_FILENAME, \"\")}${ZERO_ISLAND_DIRNAME}/`;\n\t\t\t\t\tdevServer.middlewares.use(async (request, response, next) => {\n\t\t\t\t\t\tconst url = (request.url || \"\").split(\"?\")[0];\n\t\t\t\t\t\tif (url !== zero.cssHref && !url.startsWith(islandBase)) return next();\n\t\t\t\t\t\tawait zeroDevIslands;\n\t\t\t\t\t\tif (url === zero.cssHref) {\n\t\t\t\t\t\t\tresponse.setHeader(\"content-type\", \"text/css; charset=utf-8\");\n\t\t\t\t\t\t\tresponse.setHeader(\"cache-control\", \"no-cache\");\n\t\t\t\t\t\t\tresponse.end(zero.artifact.css());\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst islandId = url.slice(islandBase.length).replace(/\\.js$/, \"\");\n\t\t\t\t\t\tconst file = path.join(zeroDevIslandDir(zero), ZERO_ISLAND_DIRNAME, `${islandId}.js`);\n\t\t\t\t\t\tif (!existsSync(file)) return next();\n\t\t\t\t\t\tresponse.setHeader(\"content-type\", \"text/javascript; charset=utf-8\");\n\t\t\t\t\t\tresponse.setHeader(\"cache-control\", \"no-cache\");\n\t\t\t\t\t\tresponse.end(readFileSync(file));\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tbuildEnd(error) {\n\t\t\t\t\tif (!zero || this.environment.name !== \"client\") return;\n\t\t\t\t\tif (error) {\n\t\t\t\t\t\tzeroBuildFailed = true;\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif (!zero.isEnforcing) return;\n\t\t\t\t\tconst importers = /* @__PURE__ */ new Map();\n\t\t\t\t\tfor (const moduleId of this.getModuleIds()) importers.set(moduleId, this.getModuleInfo(moduleId)?.importers ?? []);\n\t\t\t\t\tconst escape = Static.erasedExportEscape({\n\t\t\t\t\t\tintegration: \"vite\",\n\t\t\t\t\t\ttransformed: zero.transformed,\n\t\t\t\t\t\terasedExports: zero.erasedExports,\n\t\t\t\t\t\timportersOf: importers\n\t\t\t\t\t});\n\t\t\t\t\tif (escape) {\n\t\t\t\t\t\tzeroBuildFailed = true;\n\t\t\t\t\t\tthrow new Error(escape);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttransformIndexHtml: {\n\t\t\t\t\torder: \"post\",\n\t\t\t\t\thandler(html) {\n\t\t\t\t\t\tif (!zero?.isEnforcing) return;\n\t\t\t\t\t\tzeroHtmlEntries++;\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\thtml,\n\t\t\t\t\t\t\ttags: [{\n\t\t\t\t\t\t\t\ttag: \"link\",\n\t\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t\trel: \"stylesheet\",\n\t\t\t\t\t\t\t\t\thref: zero.cssHref\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tinjectTo: \"head\"\n\t\t\t\t\t\t\t}]\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tgenerateBundle(_outputOptions, bundle) {\n\t\t\t\t\tif (!zero?.isEnforcing || this.environment.name !== \"client\") return;\n\t\t\t\t\tconst importers = /* @__PURE__ */ new Map();\n\t\t\t\t\tfor (const moduleId of this.getModuleIds()) for (const imported of this.getModuleInfo(moduleId)?.importedIds ?? []) {\n\t\t\t\t\t\tconst list = importers.get(imported);\n\t\t\t\t\t\tif (list) list.push(moduleId);\n\t\t\t\t\t\telse importers.set(imported, [moduleId]);\n\t\t\t\t\t}\n\t\t\t\t\tconst entries = [];\n\t\t\t\t\tconst modules = [];\n\t\t\t\t\tfor (const chunk of Object.values(bundle)) {\n\t\t\t\t\t\tif (chunk.type !== \"chunk\") continue;\n\t\t\t\t\t\tfor (const moduleId of Object.keys(chunk.modules)) {\n\t\t\t\t\t\t\tmodules.push({\n\t\t\t\t\t\t\t\tid: moduleId,\n\t\t\t\t\t\t\t\timporters: importers.get(moduleId) ?? []\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tif (this.getModuleInfo(moduleId)?.isEntry) entries.push(moduleId);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst checked = Static.checkZeroGraph({\n\t\t\t\t\t\tentries,\n\t\t\t\t\t\tmodules,\n\t\t\t\t\t\timporterEdges: importers,\n\t\t\t\t\t\troot: zero.resolved.root\n\t\t\t\t\t});\n\t\t\t\t\tzeroReceipt = {\n\t\t\t\t\t\tintegration: \"vite\",\n\t\t\t\t\t\tgraph: \"zero\",\n\t\t\t\t\t\tentries: entries.sort(),\n\t\t\t\t\t\tmoduleCount: modules.length,\n\t\t\t\t\t\ttamaguiModules: checked.tamaguiModules,\n\t\t\t\t\t\tforbidden: checked.forbidden,\n\t\t\t\t\t\tcssArtifact: null,\n\t\t\t\t\t\tidentity: \"\",\n\t\t\t\t\t\tgzip: Object.fromEntries(Object.values(bundle).filter((chunk) => chunk.type === \"chunk\").map((chunk) => [chunk.fileName, gzipSync(Buffer.from(chunk.code), { level: 9 }).length]))\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\tasync closeBundle() {\n\t\t\t\t\tif (!zero || this.environment.name !== \"client\") return;\n\t\t\t\t\tconst outDir = path.resolve(config.root, this.environment.config.build.outDir);\n\t\t\t\t\tconst receiptName = `vite-${path.basename(outDir)}`;\n\t\t\t\t\tStatic.writeZeroViolationReport(zero.resolved.outDir, receiptName, {\n\t\t\t\t\t\tintegration: \"vite\",\n\t\t\t\t\t\tmode: zero.isEnforcing ? \"enforce\" : \"report\",\n\t\t\t\t\t\tviolations: zero.violations\n\t\t\t\t\t});\n\t\t\t\t\tif (!zero.isEnforcing || zeroBuildFailed) return;\n\t\t\t\t\tif (zero.violations.length) throw new Error(Static.formatZeroViolations(zero.violations));\n\t\t\t\t\tconst islandOutputHashes = {};\n\t\t\t\t\tfor (const island of zero.resolved.islands) {\n\t\t\t\t\t\tconst built = await buildIsland({\n\t\t\t\t\t\t\tisland,\n\t\t\t\t\t\t\tcontroller: zero,\n\t\t\t\t\t\t\troot: config.root,\n\t\t\t\t\t\t\toutDir,\n\t\t\t\t\t\t\tmode: config.mode\n\t\t\t\t\t\t});\n\t\t\t\t\t\tislandOutputHashes[island.id] = built.hash;\n\t\t\t\t\t}\n\t\t\t\t\tif (zeroHtmlEntries === 0) throw new Error(`[tamagui zero-runtime] the zero entry graph has no HTML entry, so the one generated CSS artifact ${zero.cssHref} is never loaded. Build a zero entry through its HTML document.`);\n\t\t\t\t\tconst css = finalizeZeroCSS(zero, outDir);\n\t\t\t\t\tconst bridgeManifest = Static.canonicalizeBridgeManifest(Object.fromEntries([...zero.bridges.entries()].sort(([left], [right]) => left < right ? -1 : 1)));\n\t\t\t\t\tconst identityInputs = {\n\t\t\t\t\t\truntimeLiteral: \"zero\",\n\t\t\t\t\t\ttarget: \"web\",\n\t\t\t\t\t\tconfigGeneration: `${pluginInstanceId}:${tamaguiLoader.getGeneration()}`,\n\t\t\t\t\t\tcssHash: css.hash,\n\t\t\t\t\t\tcompilerVersion: Static.ZERO_COMPILER_VERSION,\n\t\t\t\t\t\tislandEntries: zero.resolved.islands.map((island) => island.module),\n\t\t\t\t\t\tbridgeManifestHash: Static.hashBridgeManifest(bridgeManifest),\n\t\t\t\t\t\tislandOutputHashes\n\t\t\t\t\t};\n\t\t\t\t\tconst identity = Static.hashZeroIdentity(identityInputs);\n\t\t\t\t\tif (!zeroReceipt) throw new Error(`[tamagui zero-runtime] no module graph was recorded for the zero entry`);\n\t\t\t\t\tzeroReceipt.cssArtifact = {\n\t\t\t\t\t\tpath: css.href,\n\t\t\t\t\t\thash: css.hash\n\t\t\t\t\t};\n\t\t\t\t\tzeroReceipt.identity = identity;\n\t\t\t\t\tStatic.writeZeroGraphReceipt(zero.resolved.outDir, receiptName, zeroReceipt);\n\t\t\t\t\twriteFileSync(path.join(zero.resolved.outDir, `${receiptName}.bridges.json`), `${JSON.stringify({\n\t\t\t\t\t\tidentity,\n\t\t\t\t\t\tidentityInputs,\n\t\t\t\t\t\tcssGzip: css.gzip,\n\t\t\t\t\t\tbridges: bridgeManifest\n\t\t\t\t\t}, null, 2)}\n`);\n\t\t\t\t\tassertZeroGraph(zeroReceipt);\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: \"tamagui-global-css\",\n\t\t\t\tenforce: \"post\",\n\t\t\t\tapply: \"build\",\n\t\t\t\tasync buildStart() {\n\t\t\t\t\tif (!globalCSS || this.environment.name !== \"client\") return;\n\t\t\t\t\tawait tamaguiLoader.ensureFullConfigLoaded();\n\t\t\t\t\tconst tamaguiConfig = await tamaguiLoader.getTamaguiConfig();\n\t\t\t\t\tif (!tamaguiConfig) throw new Error(`[tamagui] outputCSS is set but the Tamagui config did not evaluate, so no CSS artifact can be generated`);\n\t\t\t\t\tglobalCSSExpected = tamaguiConfig.getCSS();\n\t\t\t\t},\n\t\t\t\tgenerateBundle() {\n\t\t\t\t\tif (!globalCSS || this.environment.name !== \"client\") return;\n\t\t\t\t\tconst failure = Static.checkGlobalCSSArtifact({\n\t\t\t\t\t\tcssPath: globalCSS.cssPath,\n\t\t\t\t\t\texpectedCSS: globalCSSExpected ?? \"\",\n\t\t\t\t\t\tloadedModuleIds: this.getModuleIds(),\n\t\t\t\t\t\timportHint: `Import it once from your client entry: import ${JSON.stringify(relativeImportSpecifier(config.root, globalCSS.cssPath))}`\n\t\t\t\t\t});\n\t\t\t\t\tif (failure) throw new Error(failure.message);\n\t\t\t\t}\n\t\t\t},\n\t\t\ttamaguiNativePlugin(tamaguiOptionsIn)\n\t\t],\n\t\tloader: tamaguiLoader\n\t};\n}\nfunction zeroDevIslandDir(zero) {\n\treturn path.join(zero.resolved.outDir, \"dev\");\n}\nfunction relativeImportSpecifier(from, to) {\n\tconst relative = normalizePath(path.relative(from, to));\n\treturn relative.startsWith(\".\") ? relative : `./${relative}`;\n}\nfunction tamaguiPlugin(options = {}) {\n\treturn createTamaguiPlugins(options).plugins;\n}\n\nexport { createTamaguiPlugins, tamaguiAliases, tamaguiNativePlugin, tamaguiPlugin };"],"mappings":"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"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import Static from "@tamagui/static";
|
|
2
|
+
import { createHash } from "node:crypto";
|
|
3
|
+
import { gzipSync } from "node:zlib";
|
|
4
|
+
import { readFileSync, writeFileSync } from "node:fs";
|
|
5
|
+
import path from "node:path";
|
|
6
|
+
|
|
7
|
+
const ZERO_CSS_FILENAME = "tamagui-zero.css";
|
|
8
|
+
const ZERO_ISLAND_DIRNAME = "tamagui-islands";
|
|
9
|
+
const normalizePath = (value) => value.replace(/\\/g, "/");
|
|
10
|
+
const zeroModuleKey = (value) => normalizePath(value).replace(/\.(?:js|jsx|ts|tsx|mjs|cjs)$/, "");
|
|
11
|
+
async function createZeroRuntimeController(options, root, base) {
|
|
12
|
+
const resolved = await Static.resolveZeroRuntime(options, root);
|
|
13
|
+
if (resolved.mode === "off") return null;
|
|
14
|
+
Static.assertZeroIntegrationSupport("vite", resolved);
|
|
15
|
+
const cssHref = `${base.endsWith("/") ? base : `${base}/`}${ZERO_CSS_FILENAME}`;
|
|
16
|
+
const artifact = new Static.ZeroCSSArtifact(resolved.cssPath);
|
|
17
|
+
artifact.expectIslands(resolved.islands.map((island) => island.id));
|
|
18
|
+
const configPath = path.isAbsolute(options.config || "") ? options.config : path.resolve(root, options.config || "tamagui.config.ts");
|
|
19
|
+
for (const island of resolved.islands) {
|
|
20
|
+
Static.writeIslandModules({
|
|
21
|
+
island,
|
|
22
|
+
integration: "vite",
|
|
23
|
+
configPath,
|
|
24
|
+
scriptUrl: `${base.endsWith("/") ? base : `${base}/`}${ZERO_ISLAND_DIRNAME}/${island.id}.js`,
|
|
25
|
+
cssHref
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
options,
|
|
30
|
+
resolved,
|
|
31
|
+
artifact,
|
|
32
|
+
cssHref,
|
|
33
|
+
bridges: /* @__PURE__ */ new Map(),
|
|
34
|
+
violations: [],
|
|
35
|
+
transformed: /* @__PURE__ */ new Set(),
|
|
36
|
+
erasedExports: /* @__PURE__ */ new Map(),
|
|
37
|
+
loaderIds: new Map(resolved.islands.map((island) => [zeroModuleKey(island.loader), island.id])),
|
|
38
|
+
islandModuleIds: new Map(resolved.islands.map((island) => [zeroModuleKey(island.module), island.id])),
|
|
39
|
+
isEnforcing: resolved.mode === "enforce"
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
async function buildIsland(input) {
|
|
43
|
+
const { build } = await import("vite");
|
|
44
|
+
const { createTamaguiPlugins } = await import("./plugin.mjs");
|
|
45
|
+
const islandOutDir = path.join(input.outDir, ZERO_ISLAND_DIRNAME);
|
|
46
|
+
await build({
|
|
47
|
+
configFile: false,
|
|
48
|
+
root: input.root,
|
|
49
|
+
mode: "production",
|
|
50
|
+
logLevel: "warn",
|
|
51
|
+
define: {
|
|
52
|
+
"process.env.TAMAGUI_RUNTIME": JSON.stringify("full"),
|
|
53
|
+
"process.env.TAMAGUI_DID_OUTPUT_CSS": JSON.stringify("1"),
|
|
54
|
+
"process.env.NODE_ENV": JSON.stringify("production")
|
|
55
|
+
},
|
|
56
|
+
esbuild: {
|
|
57
|
+
jsx: "automatic",
|
|
58
|
+
jsxDev: false
|
|
59
|
+
},
|
|
60
|
+
plugins: [createTamaguiPlugins({
|
|
61
|
+
...input.controller.options,
|
|
62
|
+
outputCSS: null,
|
|
63
|
+
experimental: {
|
|
64
|
+
...input.controller.options.experimental,
|
|
65
|
+
zeroRuntime: void 0
|
|
66
|
+
},
|
|
67
|
+
zeroIslandBuild: {
|
|
68
|
+
islandId: input.island.id,
|
|
69
|
+
artifact: input.controller.artifact
|
|
70
|
+
}
|
|
71
|
+
}).plugins],
|
|
72
|
+
build: {
|
|
73
|
+
outDir: islandOutDir,
|
|
74
|
+
emptyOutDir: false,
|
|
75
|
+
cssCodeSplit: false,
|
|
76
|
+
minify: input.mode === "production",
|
|
77
|
+
sourcemap: false,
|
|
78
|
+
rollupOptions: {
|
|
79
|
+
input: input.island.entry,
|
|
80
|
+
external: Object.keys(Static.ISLAND_EXTERNAL_GLOBALS),
|
|
81
|
+
output: {
|
|
82
|
+
format: "iife",
|
|
83
|
+
name: `tamaguiIsland_${input.island.id}`,
|
|
84
|
+
entryFileNames: `${input.island.id}.js`,
|
|
85
|
+
globals: Static.ISLAND_EXTERNAL_GLOBALS,
|
|
86
|
+
inlineDynamicImports: true
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
const file = path.join(islandOutDir, `${input.island.id}.js`);
|
|
92
|
+
const contents = readFileSync(file);
|
|
93
|
+
input.controller.artifact.markIslandComplete(input.island.id);
|
|
94
|
+
return {
|
|
95
|
+
file,
|
|
96
|
+
hash: createHash("sha256").update(contents).digest("hex").slice(0, 16)
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
function finalizeZeroCSS(controller, outDir) {
|
|
100
|
+
const written = controller.artifact.write();
|
|
101
|
+
if (!written.complete) {
|
|
102
|
+
throw new Error(`[tamagui zero-runtime] cannot derive TAMAGUI_DID_OUTPUT_CSS: the generated CSS artifact is missing ${written.missing.join(", ")}`);
|
|
103
|
+
}
|
|
104
|
+
const css = controller.artifact.css();
|
|
105
|
+
const target = path.join(outDir, ZERO_CSS_FILENAME);
|
|
106
|
+
writeFileSync(target, css);
|
|
107
|
+
return {
|
|
108
|
+
href: controller.cssHref,
|
|
109
|
+
hash: written.hash,
|
|
110
|
+
bytes: Buffer.byteLength(css),
|
|
111
|
+
gzip: gzipSync(Buffer.from(css), { level: 9 }).length
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
function assertZeroGraph(receipt) {
|
|
115
|
+
if (receipt.forbidden.length === 0) return;
|
|
116
|
+
throw new Error(Static.formatZeroGraphFailure(receipt));
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export { ZERO_CSS_FILENAME, ZERO_ISLAND_DIRNAME, assertZeroGraph, buildIsland, createZeroRuntimeController, finalizeZeroCSS, zeroModuleKey };
|
|
120
|
+
//# sourceMappingURL=zeroRuntime.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zeroRuntime.js","names":[],"sources":["esm/zeroRuntime.js"],"sourcesContent":["import Static from \"@tamagui/static\";\nimport { createHash } from \"node:crypto\";\nimport { gzipSync } from \"node:zlib\";\nimport { readFileSync, writeFileSync } from \"node:fs\";\nimport path from \"node:path\";\nconst ZERO_CSS_FILENAME = \"tamagui-zero.css\";\nconst ZERO_ISLAND_DIRNAME = \"tamagui-islands\";\nconst normalizePath = (value) => value.replace(/\\\\/g, \"/\");\nconst zeroModuleKey = (value) => normalizePath(value).replace(/\\.(?:js|jsx|ts|tsx|mjs|cjs)$/, \"\");\nasync function createZeroRuntimeController(options, root, base) {\n const resolved = await Static.resolveZeroRuntime(options, root);\n if (resolved.mode === \"off\") return null;\n Static.assertZeroIntegrationSupport(\"vite\", resolved);\n const cssHref = `${base.endsWith(\"/\") ? base : `${base}/`}${ZERO_CSS_FILENAME}`;\n const artifact = new Static.ZeroCSSArtifact(resolved.cssPath);\n artifact.expectIslands(resolved.islands.map((island) => island.id));\n const configPath = path.isAbsolute(options.config || \"\") ? options.config : path.resolve(root, options.config || \"tamagui.config.ts\");\n for (const island of resolved.islands) {\n Static.writeIslandModules({\n island,\n integration: \"vite\",\n configPath,\n scriptUrl: `${base.endsWith(\"/\") ? base : `${base}/`}${ZERO_ISLAND_DIRNAME}/${island.id}.js`,\n cssHref\n });\n }\n return {\n options,\n resolved,\n artifact,\n cssHref,\n bridges: /* @__PURE__ */ new Map(),\n violations: [],\n transformed: /* @__PURE__ */ new Set(),\n erasedExports: /* @__PURE__ */ new Map(),\n loaderIds: new Map(\n resolved.islands.map((island) => [zeroModuleKey(island.loader), island.id])\n ),\n islandModuleIds: new Map(\n resolved.islands.map((island) => [zeroModuleKey(island.module), island.id])\n ),\n isEnforcing: resolved.mode === \"enforce\"\n };\n}\nasync function buildIsland(input) {\n const { build } = await import(\"vite\");\n const { createTamaguiPlugins } = await import(\"./plugin\");\n const islandOutDir = path.join(input.outDir, ZERO_ISLAND_DIRNAME);\n await build({\n configFile: false,\n root: input.root,\n mode: \"production\",\n logLevel: \"warn\",\n define: {\n \"process.env.TAMAGUI_RUNTIME\": JSON.stringify(\"full\"),\n \"process.env.TAMAGUI_DID_OUTPUT_CSS\": JSON.stringify(\"1\"),\n // the island is a separately built artifact, never a dev asset, so it is\n // always a production build and always uses react/jsx-runtime\n \"process.env.NODE_ENV\": JSON.stringify(\"production\")\n },\n esbuild: { jsx: \"automatic\", jsxDev: false },\n plugins: [\n createTamaguiPlugins({\n ...input.controller.options,\n outputCSS: null,\n experimental: {\n ...input.controller.options.experimental,\n zeroRuntime: void 0\n },\n zeroIslandBuild: {\n islandId: input.island.id,\n artifact: input.controller.artifact\n }\n }).plugins\n ],\n build: {\n // a normal application build, not library mode: the island must go through\n // the same transform pipeline the zero entry does\n outDir: islandOutDir,\n emptyOutDir: false,\n cssCodeSplit: false,\n minify: input.mode === \"production\",\n sourcemap: false,\n rollupOptions: {\n input: input.island.entry,\n external: Object.keys(Static.ISLAND_EXTERNAL_GLOBALS),\n output: {\n format: \"iife\",\n name: `tamaguiIsland_${input.island.id}`,\n entryFileNames: `${input.island.id}.js`,\n globals: Static.ISLAND_EXTERNAL_GLOBALS,\n inlineDynamicImports: true\n }\n }\n }\n });\n const file = path.join(islandOutDir, `${input.island.id}.js`);\n const contents = readFileSync(file);\n input.controller.artifact.markIslandComplete(input.island.id);\n return {\n file,\n hash: createHash(\"sha256\").update(contents).digest(\"hex\").slice(0, 16)\n };\n}\nfunction finalizeZeroCSS(controller, outDir) {\n const written = controller.artifact.write();\n if (!written.complete) {\n throw new Error(\n `[tamagui zero-runtime] cannot derive TAMAGUI_DID_OUTPUT_CSS: the generated CSS artifact is missing ${written.missing.join(\n \", \"\n )}`\n );\n }\n const css = controller.artifact.css();\n const target = path.join(outDir, ZERO_CSS_FILENAME);\n writeFileSync(target, css);\n return {\n href: controller.cssHref,\n hash: written.hash,\n bytes: Buffer.byteLength(css),\n gzip: gzipSync(Buffer.from(css), { level: 9 }).length\n };\n}\nfunction assertZeroGraph(receipt) {\n if (receipt.forbidden.length === 0) return;\n throw new Error(Static.formatZeroGraphFailure(receipt));\n}\nexport {\n ZERO_CSS_FILENAME,\n ZERO_ISLAND_DIRNAME,\n assertZeroGraph,\n buildIsland,\n createZeroRuntimeController,\n finalizeZeroCSS,\n zeroModuleKey\n};\n//# sourceMappingURL=zeroRuntime.js.map\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/vite-plugin",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0-beta.643.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"src",
|
|
@@ -20,6 +20,14 @@
|
|
|
20
20
|
"import": "./dist/esm/index.mjs",
|
|
21
21
|
"require": "./dist/cjs/index.cjs",
|
|
22
22
|
"default": "./dist/cjs/index.cjs"
|
|
23
|
+
},
|
|
24
|
+
"./internal": {
|
|
25
|
+
"types": "./types/internal.d.ts",
|
|
26
|
+
"browser": "./dist/esm/internal.mjs",
|
|
27
|
+
"module": "./dist/esm/internal.mjs",
|
|
28
|
+
"import": "./dist/esm/internal.mjs",
|
|
29
|
+
"require": "./dist/cjs/internal.cjs",
|
|
30
|
+
"default": "./dist/cjs/internal.cjs"
|
|
23
31
|
}
|
|
24
32
|
},
|
|
25
33
|
"publishConfig": {
|
|
@@ -27,29 +35,36 @@
|
|
|
27
35
|
},
|
|
28
36
|
"scripts": {
|
|
29
37
|
"build": "tamagui-build --skip-native",
|
|
38
|
+
"test:web": "vitest --run --config vite.test.config.ts",
|
|
30
39
|
"watch": "tamagui-build --skip-native --watch",
|
|
31
40
|
"clean": "tamagui-build clean",
|
|
32
41
|
"clean:build": "tamagui-build clean:build"
|
|
33
42
|
},
|
|
34
43
|
"dependencies": {
|
|
35
|
-
"@tamagui/fake-react-native": "
|
|
36
|
-
"@tamagui/proxy-worm": "
|
|
37
|
-
"@tamagui/react-native-svg": "
|
|
38
|
-
"@tamagui/react-native-web-lite": "
|
|
39
|
-
"@tamagui/static
|
|
40
|
-
"@tamagui/types": "
|
|
44
|
+
"@tamagui/fake-react-native": "3.0.0-beta.643.1",
|
|
45
|
+
"@tamagui/proxy-worm": "3.0.0-beta.643.1",
|
|
46
|
+
"@tamagui/react-native-svg": "3.0.0-beta.643.1",
|
|
47
|
+
"@tamagui/react-native-web-lite": "3.0.0-beta.643.1",
|
|
48
|
+
"@tamagui/static": "3.0.0-beta.643.1",
|
|
49
|
+
"@tamagui/types": "3.0.0-beta.643.1",
|
|
41
50
|
"esm-resolve": "^1.0.8",
|
|
42
51
|
"fs-extra": "^11.2.0",
|
|
43
52
|
"outdent": "^0.8.0",
|
|
44
53
|
"react-native-web": "^0.21.0"
|
|
45
54
|
},
|
|
46
55
|
"devDependencies": {
|
|
47
|
-
"@tamagui/build": "
|
|
48
|
-
"vite": "^8.0.3"
|
|
56
|
+
"@tamagui/build": "3.0.0-beta.643.1",
|
|
57
|
+
"vite": "^8.0.3",
|
|
58
|
+
"vitest": "4.0.4"
|
|
49
59
|
},
|
|
50
60
|
"peerDependencies": {
|
|
51
61
|
"vite": "^8.0.3"
|
|
52
62
|
},
|
|
63
|
+
"peerDependenciesMeta": {
|
|
64
|
+
"vite": {
|
|
65
|
+
"optional": true
|
|
66
|
+
}
|
|
67
|
+
},
|
|
53
68
|
"tamagui": {
|
|
54
69
|
"build": {
|
|
55
70
|
"skipEnvToMeta": true
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import path from 'node:path'
|
|
2
|
+
|
|
3
|
+
export interface CompilerModuleReport {
|
|
4
|
+
stats: {
|
|
5
|
+
found: number
|
|
6
|
+
lowered: number
|
|
7
|
+
flattened: number
|
|
8
|
+
styled: number
|
|
9
|
+
bailed: number
|
|
10
|
+
}
|
|
11
|
+
diagnostics: { code: string; message: string; component?: string }[]
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface CompilerStatsReport {
|
|
15
|
+
schemaVersion: 1
|
|
16
|
+
selector: { id: 'all'; include: ['**'] }
|
|
17
|
+
totals: CompilerModuleReport['stats'] & {
|
|
18
|
+
modules: number
|
|
19
|
+
partial: number
|
|
20
|
+
notFlattened: number
|
|
21
|
+
flattenRate: number
|
|
22
|
+
}
|
|
23
|
+
bailoutCodes: Record<string, number>
|
|
24
|
+
bailoutReasons: Array<{
|
|
25
|
+
code: string
|
|
26
|
+
message: string
|
|
27
|
+
component?: string
|
|
28
|
+
count: number
|
|
29
|
+
}>
|
|
30
|
+
modules: Array<
|
|
31
|
+
CompilerModuleReport & {
|
|
32
|
+
id: string
|
|
33
|
+
stats: CompilerModuleReport['stats'] & {
|
|
34
|
+
partial: number
|
|
35
|
+
notFlattened: number
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
>
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
const normalizePath = (value: string) => value.replace(/\\/g, '/')
|
|
42
|
+
|
|
43
|
+
function normalizeDiagnostic(
|
|
44
|
+
diagnostic: CompilerModuleReport['diagnostics'][number]
|
|
45
|
+
): CompilerModuleReport['diagnostics'][number] {
|
|
46
|
+
const unsupportedComponentSuffix =
|
|
47
|
+
diagnostic.component && `#${diagnostic.component} does not accept className`
|
|
48
|
+
const message =
|
|
49
|
+
unsupportedComponentSuffix && diagnostic.message.endsWith(unsupportedComponentSuffix)
|
|
50
|
+
? `${diagnostic.component} does not accept className`
|
|
51
|
+
: diagnostic.message
|
|
52
|
+
return {
|
|
53
|
+
code: diagnostic.code,
|
|
54
|
+
message,
|
|
55
|
+
...(diagnostic.component && { component: diagnostic.component }),
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function createCompilerStatsReport(
|
|
60
|
+
root: string,
|
|
61
|
+
reports: Map<string, CompilerModuleReport>
|
|
62
|
+
): CompilerStatsReport {
|
|
63
|
+
const totals = {
|
|
64
|
+
modules: 0,
|
|
65
|
+
found: 0,
|
|
66
|
+
lowered: 0,
|
|
67
|
+
flattened: 0,
|
|
68
|
+
partial: 0,
|
|
69
|
+
styled: 0,
|
|
70
|
+
bailed: 0,
|
|
71
|
+
notFlattened: 0,
|
|
72
|
+
flattenRate: 0,
|
|
73
|
+
}
|
|
74
|
+
const bailoutCodes = new Map<string, number>()
|
|
75
|
+
const bailoutReasons = new Map<
|
|
76
|
+
string,
|
|
77
|
+
{
|
|
78
|
+
code: string
|
|
79
|
+
message: string
|
|
80
|
+
component?: string
|
|
81
|
+
count: number
|
|
82
|
+
}
|
|
83
|
+
>()
|
|
84
|
+
const modules: CompilerStatsReport['modules'] = []
|
|
85
|
+
|
|
86
|
+
for (const [id, report] of [...reports].sort(([left], [right]) =>
|
|
87
|
+
left.localeCompare(right)
|
|
88
|
+
)) {
|
|
89
|
+
if (report.stats.found === 0) continue
|
|
90
|
+
const partial = report.stats.lowered - report.stats.flattened
|
|
91
|
+
const notFlattened = report.stats.found - report.stats.flattened
|
|
92
|
+
totals.modules++
|
|
93
|
+
totals.found += report.stats.found
|
|
94
|
+
totals.lowered += report.stats.lowered
|
|
95
|
+
totals.flattened += report.stats.flattened
|
|
96
|
+
totals.partial += partial
|
|
97
|
+
totals.styled += report.stats.styled
|
|
98
|
+
totals.bailed += report.stats.bailed
|
|
99
|
+
totals.notFlattened += notFlattened
|
|
100
|
+
|
|
101
|
+
const diagnostics = report.diagnostics.map(normalizeDiagnostic)
|
|
102
|
+
for (const diagnostic of diagnostics) {
|
|
103
|
+
bailoutCodes.set(diagnostic.code, (bailoutCodes.get(diagnostic.code) ?? 0) + 1)
|
|
104
|
+
const key = JSON.stringify([
|
|
105
|
+
diagnostic.code,
|
|
106
|
+
diagnostic.message,
|
|
107
|
+
diagnostic.component,
|
|
108
|
+
])
|
|
109
|
+
const reason = bailoutReasons.get(key)
|
|
110
|
+
if (reason) {
|
|
111
|
+
reason.count++
|
|
112
|
+
} else {
|
|
113
|
+
bailoutReasons.set(key, { ...diagnostic, count: 1 })
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
modules.push({
|
|
118
|
+
id: normalizePath(path.relative(root, id)),
|
|
119
|
+
stats: { ...report.stats, partial, notFlattened },
|
|
120
|
+
diagnostics,
|
|
121
|
+
})
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
totals.flattenRate = totals.found ? totals.flattened / totals.found : 0
|
|
125
|
+
|
|
126
|
+
return {
|
|
127
|
+
schemaVersion: 1,
|
|
128
|
+
selector: { id: 'all', include: ['**'] },
|
|
129
|
+
totals,
|
|
130
|
+
bailoutCodes: Object.fromEntries(
|
|
131
|
+
[...bailoutCodes].sort(
|
|
132
|
+
([leftCode, leftCount], [rightCode, rightCount]) =>
|
|
133
|
+
rightCount - leftCount || leftCode.localeCompare(rightCode)
|
|
134
|
+
)
|
|
135
|
+
),
|
|
136
|
+
bailoutReasons: [...bailoutReasons.values()].sort(
|
|
137
|
+
(left, right) =>
|
|
138
|
+
right.count - left.count ||
|
|
139
|
+
left.code.localeCompare(right.code) ||
|
|
140
|
+
left.message.localeCompare(right.message) ||
|
|
141
|
+
(left.component ?? '').localeCompare(right.component ?? '')
|
|
142
|
+
),
|
|
143
|
+
modules,
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export function formatCompilerStatsReport(report: CompilerStatsReport, verbose: boolean) {
|
|
148
|
+
const moduleLines = report.modules.map(({ id, stats, diagnostics }) => {
|
|
149
|
+
const codes = [...new Set(diagnostics.map(({ code }) => code))]
|
|
150
|
+
return (
|
|
151
|
+
` ${id}: found ${stats.found} lowered ${stats.lowered} ` +
|
|
152
|
+
`flattened ${stats.flattened} bailed ${stats.bailed}` +
|
|
153
|
+
(codes.length ? ` (${codes.join(', ')})` : '')
|
|
154
|
+
)
|
|
155
|
+
})
|
|
156
|
+
const summary =
|
|
157
|
+
`\n[tamagui] compiler stats: ${report.totals.modules} modules with candidates\n` +
|
|
158
|
+
` found ${report.totals.found} · lowered ${report.totals.lowered} ` +
|
|
159
|
+
`(flattened ${report.totals.flattened}, partial ${report.totals.partial}, ` +
|
|
160
|
+
`styled ${report.totals.styled}) · bailed ${report.totals.bailed}`
|
|
161
|
+
const bailouts = Object.entries(report.bailoutCodes)
|
|
162
|
+
.map(([code, count]) => ` bailout ${code}: ${count}`)
|
|
163
|
+
.join('\n')
|
|
164
|
+
|
|
165
|
+
return [summary, bailouts, verbose ? moduleLines.join('\n') : '']
|
|
166
|
+
.filter(Boolean)
|
|
167
|
+
.join('\n')
|
|
168
|
+
}
|
package/src/internal.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Private implementation boundary for building another Tamagui Vite integration on
|
|
3
|
+
* top of the base compiler plugin. Not public API: the only consumer is
|
|
4
|
+
* `@tamagui/tailwind/vite`, which needs the base plugins and the one config loader
|
|
5
|
+
* they evaluate through so the Tamagui config is never evaluated twice.
|
|
6
|
+
*/
|
|
7
|
+
export { createTamaguiPlugins } from './plugin'
|
|
8
|
+
export type { TamaguiInternalPluginOptions, TamaguiVitePluginOptions } from './plugin'
|
|
9
|
+
export type { ViteTamaguiLoader } from './loadTamagui'
|