@tamagui/tailwind 3.0.0-beta.831.1 → 3.0.0-beta.889.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/candidate.cjs +34 -25
- package/dist/cjs/candidate.native.cjs +52 -62
- package/dist/cjs/candidate.native.js +52 -62
- package/dist/cjs/candidate.native.js.map +1 -1
- package/dist/cjs/frontend.cjs +10 -1
- package/dist/cjs/frontend.native.cjs +10 -1
- package/dist/cjs/frontend.native.js +10 -1
- package/dist/cjs/frontend.native.js.map +1 -1
- package/dist/cjs/vite/state.cjs +2 -1
- package/dist/cjs/vite/state.native.cjs +2 -1
- package/dist/cjs/vite/state.native.js +2 -1
- package/dist/cjs/vite/state.native.js.map +1 -1
- package/dist/esm/candidate.mjs +27 -18
- package/dist/esm/candidate.mjs.map +1 -1
- package/dist/esm/candidate.native.js +45 -55
- package/dist/esm/candidate.native.js.map +1 -1
- package/dist/esm/frontend.mjs +10 -1
- package/dist/esm/frontend.mjs.map +1 -1
- package/dist/esm/frontend.native.js +10 -1
- package/dist/esm/frontend.native.js.map +1 -1
- package/dist/esm/vite/state.mjs +2 -1
- package/dist/esm/vite/state.mjs.map +1 -1
- package/dist/esm/vite/state.native.js +2 -1
- package/dist/esm/vite/state.native.js.map +1 -1
- package/package.json +13 -13
- package/src/candidate.ts +35 -29
- package/src/frontend.ts +18 -4
- package/src/vite/state.ts +1 -1
- package/types/candidate.d.ts +1 -1
- package/types/candidate.d.ts.map +1 -1
- package/types/frontend.d.ts +2 -3
- package/types/frontend.d.ts.map +1 -1
- package/types/vite/state.d.ts.map +1 -1
package/dist/cjs/frontend.cjs
CHANGED
|
@@ -46,7 +46,16 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
46
46
|
variants
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
+
function resolveTailwindCandidate(candidate, config, sink) {
|
|
50
|
+
const plan = (0, import_candidate.getTailwindClassPlan)(candidate, config);
|
|
51
|
+
if (plan === "raw") return true;
|
|
52
|
+
if (plan === null) return null;
|
|
53
|
+
const parent = Array.isArray(plan) ? null : plan;
|
|
54
|
+
const entries = parent ? parent.entries : plan;
|
|
55
|
+
for (let index = 0; index < entries.length; index++) sink(entries[index]);
|
|
56
|
+
return parent?.preserveRawClass || false;
|
|
57
|
+
}
|
|
49
58
|
const tailwindStyleFrontend = {
|
|
50
|
-
|
|
59
|
+
resolveClassName: resolveTailwindCandidate,
|
|
51
60
|
normalizeStaticConfig: normalizeTailwindStaticConfig
|
|
52
61
|
};
|
|
@@ -58,7 +58,16 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
58
58
|
variants
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
+
function resolveTailwindCandidate(candidate, config, sink) {
|
|
62
|
+
var plan = (0, import_candidate.getTailwindClassPlan)(candidate, config);
|
|
63
|
+
if (plan === "raw") return true;
|
|
64
|
+
if (plan === null) return null;
|
|
65
|
+
var parent = Array.isArray(plan) ? null : plan;
|
|
66
|
+
var entries = parent ? parent.entries : plan;
|
|
67
|
+
for (var index = 0; index < entries.length; index++) sink(entries[index]);
|
|
68
|
+
return (parent === null || parent === void 0 ? void 0 : parent.preserveRawClass) || false;
|
|
69
|
+
}
|
|
61
70
|
var tailwindStyleFrontend = {
|
|
62
|
-
|
|
71
|
+
resolveClassName: resolveTailwindCandidate,
|
|
63
72
|
normalizeStaticConfig: normalizeTailwindStaticConfig
|
|
64
73
|
};
|
|
@@ -58,8 +58,17 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
58
58
|
variants
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
+
function resolveTailwindCandidate(candidate, config, sink) {
|
|
62
|
+
var plan = (0, import_candidate.getTailwindClassPlan)(candidate, config);
|
|
63
|
+
if (plan === "raw") return true;
|
|
64
|
+
if (plan === null) return null;
|
|
65
|
+
var parent = Array.isArray(plan) ? null : plan;
|
|
66
|
+
var entries = parent ? parent.entries : plan;
|
|
67
|
+
for (var index = 0; index < entries.length; index++) sink(entries[index]);
|
|
68
|
+
return (parent === null || parent === void 0 ? void 0 : parent.preserveRawClass) || false;
|
|
69
|
+
}
|
|
61
70
|
var tailwindStyleFrontend = {
|
|
62
|
-
|
|
71
|
+
resolveClassName: resolveTailwindCandidate,
|
|
63
72
|
normalizeStaticConfig: normalizeTailwindStaticConfig
|
|
64
73
|
};
|
|
65
74
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend.native.js","names":[],"sources":["cjs/frontend.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar frontend_exports = {};\n__export(frontend_exports, {\n parseStaticStyle: () => parseStaticStyle,\n tailwindStyleFrontend: () => tailwindStyleFrontend\n});\nmodule.exports = __toCommonJS(frontend_exports);\nvar import_candidate = require(\"./candidate\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction parseStaticStyle(input, config) {\n return (0, import_candidate.resolveTailwindClassName)(input, config);\n}\nfunction normalizeTailwindStaticConfig(staticConfig, config) {\n var variants = staticConfig.variants;\n if (variants) {\n variants = Object.fromEntries(Object.entries(variants).map(function(param) {\n var [variantName, definition] = param;\n return [\n variantName,\n (typeof definition === \"undefined\" ? \"undefined\" : _type_of(definition)) === \"object\" && definition ? Object.fromEntries(Object.entries(definition).map(function(param2) {\n var [matcher, value] = param2;\n return [\n matcher,\n typeof value === \"string\" ? parseStaticStyle(value, config) : value\n ];\n })) : definition\n ];\n }));\n }\n var baseStyle = staticConfig.baseStyle;\n var passthroughClassName = staticConfig.passthroughClassName;\n if (staticConfig.baseClassName) {\n var { className, ...styles } = parseStaticStyle(staticConfig.baseClassName, config);\n baseStyle = styles;\n passthroughClassName = className;\n }\n return {\n baseStyle,\n passthroughClassName,\n variants\n };\n}\nvar tailwindStyleFrontend = {\n
|
|
1
|
+
{"version":3,"file":"frontend.native.js","names":[],"sources":["cjs/frontend.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar frontend_exports = {};\n__export(frontend_exports, {\n parseStaticStyle: () => parseStaticStyle,\n tailwindStyleFrontend: () => tailwindStyleFrontend\n});\nmodule.exports = __toCommonJS(frontend_exports);\nvar import_candidate = require(\"./candidate\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction parseStaticStyle(input, config) {\n return (0, import_candidate.resolveTailwindClassName)(input, config);\n}\nfunction normalizeTailwindStaticConfig(staticConfig, config) {\n var variants = staticConfig.variants;\n if (variants) {\n variants = Object.fromEntries(Object.entries(variants).map(function(param) {\n var [variantName, definition] = param;\n return [\n variantName,\n (typeof definition === \"undefined\" ? \"undefined\" : _type_of(definition)) === \"object\" && definition ? Object.fromEntries(Object.entries(definition).map(function(param2) {\n var [matcher, value] = param2;\n return [\n matcher,\n typeof value === \"string\" ? parseStaticStyle(value, config) : value\n ];\n })) : definition\n ];\n }));\n }\n var baseStyle = staticConfig.baseStyle;\n var passthroughClassName = staticConfig.passthroughClassName;\n if (staticConfig.baseClassName) {\n var { className, ...styles } = parseStaticStyle(staticConfig.baseClassName, config);\n baseStyle = styles;\n passthroughClassName = className;\n }\n return {\n baseStyle,\n passthroughClassName,\n variants\n };\n}\nfunction resolveTailwindCandidate(candidate, config, sink) {\n var plan = (0, import_candidate.getTailwindClassPlan)(candidate, config);\n if (plan === \"raw\") return true;\n if (plan === null) return null;\n var parent = Array.isArray(plan) ? null : plan;\n var entries = parent ? parent.entries : plan;\n for (var index = 0; index < entries.length; index++) sink(entries[index]);\n return (parent === null || parent === void 0 ? void 0 : parent.preserveRawClass) || false;\n}\nvar tailwindStyleFrontend = {\n resolveClassName: resolveTailwindCandidate,\n normalizeStaticConfig: normalizeTailwindStaticConfig\n};\n//# sourceMappingURL=frontend.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,mBAAmB,CAAC;AACxB,SAAS,kBAAkB;CACzB,wBAAwB;CACxB,6BAA6B;AAC/B,CAAC;AACD,OAAO,UAAU,aAAa,gBAAgB;AAC9C,IAAI,mBAAmB,QAAQ,uBAAa;AAC5C,SAAS,SAAS,KAAK;CACrB;CACA,OAAO,OAAO,OAAO,WAAW,eAAe,IAAI,gBAAgB,SAAS,WAAW,OAAO;AAChG;AACA,SAAS,iBAAiB,OAAO,QAAQ;CACvC,QAAQ,GAAG,iBAAiB,yBAAwB,CAAE,OAAO,MAAM;AACrE;AACA,SAAS,8BAA8B,cAAc,QAAQ;CAC3D,IAAI,WAAW,aAAa;CAC5B,IAAI,UAAU;EACZ,WAAW,OAAO,YAAY,OAAO,QAAQ,QAAQ,CAAC,CAAC,IAAI,SAAS,OAAO;GACzE,IAAI,CAAC,aAAa,cAAc;GAChC,OAAO,CACL,cACC,OAAO,eAAe,cAAc,cAAc,SAAS,UAAU,OAAO,YAAY,aAAa,OAAO,YAAY,OAAO,QAAQ,UAAU,CAAC,CAAC,IAAI,SAAS,QAAQ;IACvK,IAAI,CAAC,SAAS,SAAS;IACvB,OAAO,CACL,SACA,OAAO,UAAU,WAAW,iBAAiB,OAAO,MAAM,IAAI,KAChE;GACF,CAAC,CAAC,IAAI,UACR;EACF,CAAC,CAAC;CACJ;CACA,IAAI,YAAY,aAAa;CAC7B,IAAI,uBAAuB,aAAa;CACxC,IAAI,aAAa,eAAe;EAC9B,IAAI,EAAE,WAAW,GAAG,WAAW,iBAAiB,aAAa,eAAe,MAAM;EAClF,YAAY;EACZ,uBAAuB;CACzB;CACA,OAAO;EACL;EACA;EACA;CACF;AACF;AACA,SAAS,yBAAyB,WAAW,QAAQ,MAAM;CACzD,IAAI,QAAQ,GAAG,iBAAiB,qBAAoB,CAAE,WAAW,MAAM;CACvE,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,MAAM,OAAO;CAC1B,IAAI,SAAS,MAAM,QAAQ,IAAI,IAAI,OAAO;CAC1C,IAAI,UAAU,SAAS,OAAO,UAAU;CACxC,KAAK,IAAI,QAAQ,GAAG,QAAQ,QAAQ,QAAQ,SAAS,KAAK,QAAQ,MAAM;CACxE,QAAQ,WAAW,QAAQ,WAAW,KAAK,IAAI,KAAK,IAAI,OAAO,qBAAqB;AACtF;AACA,IAAI,wBAAwB;CAC1B,kBAAkB;CAClB,uBAAuB;AACzB"}
|
package/dist/cjs/vite/state.cjs
CHANGED
|
@@ -38,6 +38,7 @@ module.exports = __toCommonJS(state_exports);
|
|
|
38
38
|
var import_node = require("@tailwindcss/node");
|
|
39
39
|
var import_oxide = require("@tailwindcss/oxide");
|
|
40
40
|
var import_runtime = require("@tamagui/style-grammar/runtime");
|
|
41
|
+
var import_tooling = require("@tamagui/style-grammar/tooling");
|
|
41
42
|
var import_promises = require("node:fs/promises");
|
|
42
43
|
var import_node_module = require("node:module");
|
|
43
44
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
@@ -172,7 +173,7 @@ function createTailwindScannerState() {
|
|
|
172
173
|
for (const candidates of candidatesByFile.values()) {
|
|
173
174
|
for (const candidate of candidates) allCandidates.add(candidate);
|
|
174
175
|
}
|
|
175
|
-
const passthrough = [...allCandidates].filter((candidate) => (0,
|
|
176
|
+
const passthrough = [...allCandidates].filter((candidate) => (0, import_tooling.classifyCandidate)(candidate, grammarConfig).kind === "passthrough").sort((a, b) => a < b ? -1 : a > b ? 1 : 0);
|
|
176
177
|
const nextCandidates = new Set(passthrough);
|
|
177
178
|
const removedCandidate = [...compiledCandidates].some((candidate) => !nextCandidates.has(candidate));
|
|
178
179
|
if (removedCandidate) {
|
|
@@ -40,6 +40,7 @@ module.exports = __toCommonJS(state_exports);
|
|
|
40
40
|
var import_node = require("@tailwindcss/node");
|
|
41
41
|
var import_oxide = require("@tailwindcss/oxide");
|
|
42
42
|
var import_runtime = require("@tamagui/style-grammar/runtime");
|
|
43
|
+
var import_tooling = require("@tamagui/style-grammar/tooling");
|
|
43
44
|
var import_promises = require("fs/promises");
|
|
44
45
|
var import_module = require("module");
|
|
45
46
|
var import_path = __toESM(require("path"), 1);
|
|
@@ -212,7 +213,7 @@ function createTailwindScannerState() {
|
|
|
212
213
|
}
|
|
213
214
|
}
|
|
214
215
|
var passthrough = [...allCandidates].filter(function(candidate2) {
|
|
215
|
-
return (0,
|
|
216
|
+
return (0, import_tooling.classifyCandidate)(candidate2, grammarConfig).kind === "passthrough";
|
|
216
217
|
}).sort(function(a, b) {
|
|
217
218
|
return a < b ? -1 : a > b ? 1 : 0;
|
|
218
219
|
});
|
|
@@ -40,6 +40,7 @@ module.exports = __toCommonJS(state_exports);
|
|
|
40
40
|
var import_node = require("@tailwindcss/node");
|
|
41
41
|
var import_oxide = require("@tailwindcss/oxide");
|
|
42
42
|
var import_runtime = require("@tamagui/style-grammar/runtime");
|
|
43
|
+
var import_tooling = require("@tamagui/style-grammar/tooling");
|
|
43
44
|
var import_promises = require("fs/promises");
|
|
44
45
|
var import_module = require("module");
|
|
45
46
|
var import_path = __toESM(require("path"), 1);
|
|
@@ -212,7 +213,7 @@ function createTailwindScannerState() {
|
|
|
212
213
|
}
|
|
213
214
|
}
|
|
214
215
|
var passthrough = [...allCandidates].filter(function(candidate2) {
|
|
215
|
-
return (0,
|
|
216
|
+
return (0, import_tooling.classifyCandidate)(candidate2, grammarConfig).kind === "passthrough";
|
|
216
217
|
}).sort(function(a, b) {
|
|
217
218
|
return a < b ? -1 : a > b ? 1 : 0;
|
|
218
219
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.native.js","names":[],"sources":["cjs/vite/state.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar state_exports = {};\n__export(state_exports, {\n TAILWIND_RESOLVED_ID: () => TAILWIND_RESOLVED_ID,\n TAILWIND_VERSION: () => TAILWIND_VERSION,\n TAILWIND_VIRTUAL_ID: () => TAILWIND_VIRTUAL_ID,\n createTailwindScannerState: () => createTailwindScannerState,\n isTamaguiCoreResetCSS: () => isTamaguiCoreResetCSS,\n updateTailwindForWatchChange: () => updateTailwindForWatchChange,\n wrapWithTamaguiLayer: () => wrapWithTamaguiLayer\n});\nmodule.exports = __toCommonJS(state_exports);\nvar import_node = require(\"@tailwindcss/node\");\nvar import_oxide = require(\"@tailwindcss/oxide\");\nvar import_runtime = require(\"@tamagui/style-grammar/runtime\");\nvar import_promises = require(\"fs/promises\");\nvar import_module = require(\"module\");\nvar import_path = __toESM(require(\"path\"), 1);\nvar TAILWIND_VERSION = \"4.3.0\";\nvar TAILWIND_VIRTUAL_ID = \"virtual:tamagui-tailwind.css\";\nvar TAILWIND_RESOLVED_ID = `\\0${TAILWIND_VIRTUAL_ID}`;\nfunction wrapWithTamaguiLayer(css) {\n return `@layer tamagui {\n${css}\n}`;\n}\nfunction isTamaguiCoreResetCSS(id) {\n var normalizedId = id.split(\"?\", 1)[0].replace(/\\\\/g, \"/\");\n return normalizedId.endsWith(\"/@tamagui/core/reset.css\") || normalizedId.endsWith(\"/code/core/core/reset.css\");\n}\nvar TAILWIND_INPUT = `@layer tamagui, theme, utilities;\n@import \"tailwindcss/theme.css\" layer(theme);\n@import \"tailwindcss/utilities.css\" layer(utilities);`;\nfunction extensionForFile(id) {\n return import_path.default.extname(id.split(\"?\", 1)[0]).slice(1) || \"html\";\n}\nasync function assertHostTailwind(root) {\n var requireFromRoot = (0, import_module.createRequire)(import_path.default.join(root, \"package.json\"));\n var packagePath;\n try {\n packagePath = requireFromRoot.resolve(\"tailwindcss/package.json\");\n } catch (e) {\n throw new Error(`[tamagui] @tamagui/tailwind/vite requires tailwindcss@${TAILWIND_VERSION} in the app. Install it with \\`bun add -D tailwindcss@${TAILWIND_VERSION}\\` (resolved from ${root}).`);\n }\n var packageJSON = JSON.parse(await (0, import_promises.readFile)(packagePath, \"utf8\"));\n if (packageJSON.version !== TAILWIND_VERSION) {\n throw new Error(`[tamagui] @tamagui/tailwind/vite requires tailwindcss@${TAILWIND_VERSION}, but ${packageJSON.version || \"an unknown version\"} was resolved from ${packagePath}. Align the app dependency before starting Vite.`);\n }\n}\nfunction createTailwindScannerState() {\n var root = \"\";\n var generation = -1;\n var enabled = false;\n var scanner = null;\n var compiler = null;\n var grammarConfig = (0, import_runtime.createGrammarConfigView)({});\n var candidatesByFile = /* @__PURE__ */ new Map();\n var compiledCandidates = /* @__PURE__ */ new Set();\n var addDependency = function() {\n };\n var css = \"\";\n function clear() {\n root = \"\";\n generation = -1;\n enabled = false;\n scanner = null;\n compiler = null;\n grammarConfig = (0, import_runtime.createGrammarConfigView)({});\n candidatesByFile = /* @__PURE__ */ new Map();\n compiledCandidates = /* @__PURE__ */ new Set();\n addDependency = function() {\n };\n css = \"\";\n }\n async function configure(nextRoot, nextGeneration, config, onDependency) {\n var onSourceGlob = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : function() {\n };\n if (!config) {\n clear();\n generation = nextGeneration;\n return false;\n }\n if (compiler && scanner && enabled && generation === nextGeneration && root === nextRoot) {\n return true;\n }\n await assertHostTailwind(nextRoot);\n root = nextRoot;\n generation = nextGeneration;\n enabled = true;\n grammarConfig = (0, import_runtime.createGrammarConfigView)(config);\n addDependency = onDependency;\n scanner = new import_oxide.Scanner({\n sources: [\n {\n base: root,\n pattern: \"**/*\",\n negated: false\n },\n {\n base: root,\n pattern: \"node_modules/**\",\n negated: true\n },\n {\n base: root,\n pattern: \".git/**\",\n negated: true\n },\n {\n base: root,\n pattern: \".vite/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"dist/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"build/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"coverage/**\",\n negated: true\n }\n ]\n });\n compiler = await createCompiler();\n scanner.scan();\n registerScannerSources(scanner, onDependency, onSourceGlob);\n candidatesByFile = /* @__PURE__ */ new Map();\n await Promise.all(scanner.files.map(async function(file) {\n try {\n var source = await (0, import_promises.readFile)(file, \"utf8\");\n candidatesByFile.set(await normalizeSourcePath(file), candidatesForSource(scanner, file, source));\n } catch (e) {\n }\n }));\n await rebuild();\n return true;\n }\n async function createCompiler() {\n return (0, import_node.compile)(TAILWIND_INPUT, {\n base: root,\n onDependency: addDependency\n });\n }\n async function rebuild() {\n if (!compiler) return false;\n var allCandidates = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = candidatesByFile.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var candidates = _step.value;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = candidates[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var candidate = _step1.value;\n allCandidates.add(candidate);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var passthrough = [\n ...allCandidates\n ].filter(function(candidate2) {\n return (0, import_runtime.classifyCandidate)(candidate2, grammarConfig).kind === \"passthrough\";\n }).sort(function(a, b) {\n return a < b ? -1 : a > b ? 1 : 0;\n });\n var nextCandidates = new Set(passthrough);\n var removedCandidate = [\n ...compiledCandidates\n ].some(function(candidate2) {\n return !nextCandidates.has(candidate2);\n });\n if (removedCandidate) {\n compiler = await createCompiler();\n }\n var nextCSS = compiler.build(passthrough);\n compiledCandidates = nextCandidates;\n if (nextCSS === css) return false;\n css = nextCSS;\n return true;\n }\n async function scanSource(id, source) {\n if (!enabled || !scanner) return false;\n candidatesByFile.set(await normalizeSourcePath(id), candidatesForSource(scanner, id, source));\n return rebuild();\n }\n async function removeSource(id) {\n if (!candidatesByFile.delete(await normalizeSourcePath(id))) return false;\n return rebuild();\n }\n return {\n clear,\n configure,\n removeSource,\n scanSource,\n get enabled() {\n return enabled;\n },\n get css() {\n return css;\n },\n get candidateCount() {\n return compiledCandidates.size;\n }\n };\n}\nasync function updateTailwindForWatchChange(state, id, event, configure) {\n if (!await configure()) return false;\n if (event === \"delete\") {\n return state.removeSource(id);\n }\n try {\n return state.scanSource(id, await (0, import_promises.readFile)(id, \"utf8\"));\n } catch (e) {\n return state.removeSource(id);\n }\n}\nfunction registerScannerSources(scanner, onDependency, onSourceGlob) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = scanner.files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var file = _step.value;\n onDependency(file);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = scanner.globs[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var { base, pattern } = _step1.value;\n onSourceGlob(import_path.default.join(base, pattern));\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n}\nasync function normalizeSourcePath(id) {\n var cleanId = import_path.default.resolve(id.split(\"?\", 1)[0]);\n try {\n return await (0, import_promises.realpath)(cleanId);\n } catch (e) {\n try {\n return import_path.default.join(await (0, import_promises.realpath)(import_path.default.dirname(cleanId)), import_path.default.basename(cleanId));\n } catch (e2) {\n return cleanId;\n }\n }\n}\nfunction candidatesForSource(scanner, id, source) {\n return new Set(scanner.getCandidatesWithPositions({\n content: source,\n extension: extensionForFile(id)\n }).map(function(param) {\n var { candidate } = param;\n return candidate;\n }));\n}\n//# sourceMappingURL=state.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state.native.js","names":[],"sources":["cjs/vite/state.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar state_exports = {};\n__export(state_exports, {\n TAILWIND_RESOLVED_ID: () => TAILWIND_RESOLVED_ID,\n TAILWIND_VERSION: () => TAILWIND_VERSION,\n TAILWIND_VIRTUAL_ID: () => TAILWIND_VIRTUAL_ID,\n createTailwindScannerState: () => createTailwindScannerState,\n isTamaguiCoreResetCSS: () => isTamaguiCoreResetCSS,\n updateTailwindForWatchChange: () => updateTailwindForWatchChange,\n wrapWithTamaguiLayer: () => wrapWithTamaguiLayer\n});\nmodule.exports = __toCommonJS(state_exports);\nvar import_node = require(\"@tailwindcss/node\");\nvar import_oxide = require(\"@tailwindcss/oxide\");\nvar import_runtime = require(\"@tamagui/style-grammar/runtime\");\nvar import_tooling = require(\"@tamagui/style-grammar/tooling\");\nvar import_promises = require(\"fs/promises\");\nvar import_module = require(\"module\");\nvar import_path = __toESM(require(\"path\"), 1);\nvar TAILWIND_VERSION = \"4.3.0\";\nvar TAILWIND_VIRTUAL_ID = \"virtual:tamagui-tailwind.css\";\nvar TAILWIND_RESOLVED_ID = `\\0${TAILWIND_VIRTUAL_ID}`;\nfunction wrapWithTamaguiLayer(css) {\n return `@layer tamagui {\n${css}\n}`;\n}\nfunction isTamaguiCoreResetCSS(id) {\n var normalizedId = id.split(\"?\", 1)[0].replace(/\\\\/g, \"/\");\n return normalizedId.endsWith(\"/@tamagui/core/reset.css\") || normalizedId.endsWith(\"/code/core/core/reset.css\");\n}\nvar TAILWIND_INPUT = `@layer tamagui, theme, utilities;\n@import \"tailwindcss/theme.css\" layer(theme);\n@import \"tailwindcss/utilities.css\" layer(utilities);`;\nfunction extensionForFile(id) {\n return import_path.default.extname(id.split(\"?\", 1)[0]).slice(1) || \"html\";\n}\nasync function assertHostTailwind(root) {\n var requireFromRoot = (0, import_module.createRequire)(import_path.default.join(root, \"package.json\"));\n var packagePath;\n try {\n packagePath = requireFromRoot.resolve(\"tailwindcss/package.json\");\n } catch (e) {\n throw new Error(`[tamagui] @tamagui/tailwind/vite requires tailwindcss@${TAILWIND_VERSION} in the app. Install it with \\`bun add -D tailwindcss@${TAILWIND_VERSION}\\` (resolved from ${root}).`);\n }\n var packageJSON = JSON.parse(await (0, import_promises.readFile)(packagePath, \"utf8\"));\n if (packageJSON.version !== TAILWIND_VERSION) {\n throw new Error(`[tamagui] @tamagui/tailwind/vite requires tailwindcss@${TAILWIND_VERSION}, but ${packageJSON.version || \"an unknown version\"} was resolved from ${packagePath}. Align the app dependency before starting Vite.`);\n }\n}\nfunction createTailwindScannerState() {\n var root = \"\";\n var generation = -1;\n var enabled = false;\n var scanner = null;\n var compiler = null;\n var grammarConfig = (0, import_runtime.createGrammarConfigView)({});\n var candidatesByFile = /* @__PURE__ */ new Map();\n var compiledCandidates = /* @__PURE__ */ new Set();\n var addDependency = function() {\n };\n var css = \"\";\n function clear() {\n root = \"\";\n generation = -1;\n enabled = false;\n scanner = null;\n compiler = null;\n grammarConfig = (0, import_runtime.createGrammarConfigView)({});\n candidatesByFile = /* @__PURE__ */ new Map();\n compiledCandidates = /* @__PURE__ */ new Set();\n addDependency = function() {\n };\n css = \"\";\n }\n async function configure(nextRoot, nextGeneration, config, onDependency) {\n var onSourceGlob = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : function() {\n };\n if (!config) {\n clear();\n generation = nextGeneration;\n return false;\n }\n if (compiler && scanner && enabled && generation === nextGeneration && root === nextRoot) {\n return true;\n }\n await assertHostTailwind(nextRoot);\n root = nextRoot;\n generation = nextGeneration;\n enabled = true;\n grammarConfig = (0, import_runtime.createGrammarConfigView)(config);\n addDependency = onDependency;\n scanner = new import_oxide.Scanner({\n sources: [\n {\n base: root,\n pattern: \"**/*\",\n negated: false\n },\n {\n base: root,\n pattern: \"node_modules/**\",\n negated: true\n },\n {\n base: root,\n pattern: \".git/**\",\n negated: true\n },\n {\n base: root,\n pattern: \".vite/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"dist/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"build/**\",\n negated: true\n },\n {\n base: root,\n pattern: \"coverage/**\",\n negated: true\n }\n ]\n });\n compiler = await createCompiler();\n scanner.scan();\n registerScannerSources(scanner, onDependency, onSourceGlob);\n candidatesByFile = /* @__PURE__ */ new Map();\n await Promise.all(scanner.files.map(async function(file) {\n try {\n var source = await (0, import_promises.readFile)(file, \"utf8\");\n candidatesByFile.set(await normalizeSourcePath(file), candidatesForSource(scanner, file, source));\n } catch (e) {\n }\n }));\n await rebuild();\n return true;\n }\n async function createCompiler() {\n return (0, import_node.compile)(TAILWIND_INPUT, {\n base: root,\n onDependency: addDependency\n });\n }\n async function rebuild() {\n if (!compiler) return false;\n var allCandidates = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = candidatesByFile.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var candidates = _step.value;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = candidates[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var candidate = _step1.value;\n allCandidates.add(candidate);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var passthrough = [\n ...allCandidates\n ].filter(function(candidate2) {\n return (0, import_tooling.classifyCandidate)(candidate2, grammarConfig).kind === \"passthrough\";\n }).sort(function(a, b) {\n return a < b ? -1 : a > b ? 1 : 0;\n });\n var nextCandidates = new Set(passthrough);\n var removedCandidate = [\n ...compiledCandidates\n ].some(function(candidate2) {\n return !nextCandidates.has(candidate2);\n });\n if (removedCandidate) {\n compiler = await createCompiler();\n }\n var nextCSS = compiler.build(passthrough);\n compiledCandidates = nextCandidates;\n if (nextCSS === css) return false;\n css = nextCSS;\n return true;\n }\n async function scanSource(id, source) {\n if (!enabled || !scanner) return false;\n candidatesByFile.set(await normalizeSourcePath(id), candidatesForSource(scanner, id, source));\n return rebuild();\n }\n async function removeSource(id) {\n if (!candidatesByFile.delete(await normalizeSourcePath(id))) return false;\n return rebuild();\n }\n return {\n clear,\n configure,\n removeSource,\n scanSource,\n get enabled() {\n return enabled;\n },\n get css() {\n return css;\n },\n get candidateCount() {\n return compiledCandidates.size;\n }\n };\n}\nasync function updateTailwindForWatchChange(state, id, event, configure) {\n if (!await configure()) return false;\n if (event === \"delete\") {\n return state.removeSource(id);\n }\n try {\n return state.scanSource(id, await (0, import_promises.readFile)(id, \"utf8\"));\n } catch (e) {\n return state.removeSource(id);\n }\n}\nfunction registerScannerSources(scanner, onDependency, onSourceGlob) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = scanner.files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var file = _step.value;\n onDependency(file);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = scanner.globs[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var { base, pattern } = _step1.value;\n onSourceGlob(import_path.default.join(base, pattern));\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n}\nasync function normalizeSourcePath(id) {\n var cleanId = import_path.default.resolve(id.split(\"?\", 1)[0]);\n try {\n return await (0, import_promises.realpath)(cleanId);\n } catch (e) {\n try {\n return import_path.default.join(await (0, import_promises.realpath)(import_path.default.dirname(cleanId)), import_path.default.basename(cleanId));\n } catch (e2) {\n return cleanId;\n }\n }\n}\nfunction candidatesForSource(scanner, id, source) {\n return new Set(scanner.getCandidatesWithPositions({\n content: source,\n extension: extensionForFile(id)\n }).map(function(param) {\n var { candidate } = param;\n return candidate;\n }));\n}\n//# sourceMappingURL=state.js.map\n"],"mappings":"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"}
|
package/dist/esm/candidate.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
2
|
import { plainValueToPayload } from "@tamagui/core/internal-runtime";
|
|
3
|
-
import { borderSideSuffix,
|
|
3
|
+
import { borderSideSuffix, configRevisionSymbol, createGrammarConfigView, getSafeAreaEdge, getTokenCategory, insetAxisProps, percentUtilityProps, radiusCornerProps, sizeUtilityProps, splitColorOpacitySuffix } from "@tamagui/style-grammar/runtime";
|
|
4
|
+
import { classifyCandidate, decodeArbitrary } from "@tamagui/style-grammar/tooling/candidate";
|
|
4
5
|
|
|
5
6
|
const styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();
|
|
6
7
|
function getStyleGrammarConfig(config) {
|
|
@@ -46,23 +47,23 @@ function borderDimValue(raw) {
|
|
|
46
47
|
if (/^-?\d*\.?\d+$/.test(inner)) return Number(inner);
|
|
47
48
|
return inner;
|
|
48
49
|
}
|
|
49
|
-
function
|
|
50
|
+
function expansionProps(parsed) {
|
|
50
51
|
const prefix = parsed.prefix;
|
|
51
52
|
if (!prefix) return null;
|
|
53
|
+
if (prefix === "size") return sizeUtilityProps;
|
|
54
|
+
if (prefix === "inset-x" || prefix === "inset-y") {
|
|
55
|
+
return insetAxisProps[prefix.slice("inset-".length)];
|
|
56
|
+
}
|
|
52
57
|
if (prefix.startsWith("rounded-")) {
|
|
53
58
|
const props = radiusCornerProps[prefix.slice("rounded-".length)];
|
|
54
59
|
if (!props || props.length === 1) return null;
|
|
55
|
-
|
|
56
|
-
for (const p of props) out2[p] = value;
|
|
57
|
-
return out2;
|
|
60
|
+
return props;
|
|
58
61
|
}
|
|
59
62
|
const m = /^border-([trblxy])$/.exec(prefix);
|
|
60
63
|
if (!m) return null;
|
|
61
64
|
const sides = borderSideSuffix[m[1]];
|
|
62
65
|
const suffix = parsed.entry?.prop.endsWith("Width") ? "Width" : "Color";
|
|
63
|
-
|
|
64
|
-
for (const side of sides) out[`border${side}${suffix}`] = value;
|
|
65
|
-
return out;
|
|
66
|
+
return sides.map((side) => `border${side}${suffix}`);
|
|
66
67
|
}
|
|
67
68
|
function tailwindClassToFlatProp(parsed) {
|
|
68
69
|
if (parsed.kind !== "dynamic" || !parsed.entry || parsed.rawValue === void 0) {
|
|
@@ -264,18 +265,26 @@ function computeClassPlan(cls, grammarConfig) {
|
|
|
264
265
|
}
|
|
265
266
|
return entries;
|
|
266
267
|
}
|
|
268
|
+
const expandedProps = expansionProps(parsed);
|
|
269
|
+
if (expandedProps) {
|
|
270
|
+
const entries = [];
|
|
271
|
+
for (const prop of expandedProps) {
|
|
272
|
+
const flatProp2 = tailwindClassToFlatProp({
|
|
273
|
+
...parsed,
|
|
274
|
+
entry: parsed.entry ? {
|
|
275
|
+
...parsed.entry,
|
|
276
|
+
prop
|
|
277
|
+
} : parsed.entry
|
|
278
|
+
});
|
|
279
|
+
if (!flatProp2) return "raw";
|
|
280
|
+
const entry = createPlanEntry(flatProp2.key, flatProp2.value, parsed.modifiers);
|
|
281
|
+
if (!entry) return "raw";
|
|
282
|
+
entries.push(entry);
|
|
283
|
+
}
|
|
284
|
+
return entries;
|
|
285
|
+
}
|
|
267
286
|
const flatProp = tailwindClassToFlatProp(parsed);
|
|
268
287
|
if (flatProp) {
|
|
269
|
-
const expanded = expandBorderCandidate(parsed, flatProp.value);
|
|
270
|
-
if (expanded) {
|
|
271
|
-
const entries = [];
|
|
272
|
-
for (const p in expanded) {
|
|
273
|
-
const entry2 = createPlanEntry(p, expanded[p], parsed.modifiers);
|
|
274
|
-
if (!entry2) return "raw";
|
|
275
|
-
entries.push(entry2);
|
|
276
|
-
}
|
|
277
|
-
return entries;
|
|
278
|
-
}
|
|
279
288
|
const entry = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
|
|
280
289
|
return entry ? [entry] : "raw";
|
|
281
290
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidate.js","names":[],"sources":["esm/candidate.js"],"sourcesContent":["import { isWeb } from \"@tamagui/constants\";\nimport {\n plainValueToPayload\n} from \"@tamagui/core/internal-runtime\";\nimport {\n borderSideSuffix,\n classifyCandidate,\n configRevisionSymbol,\n createGrammarConfigView,\n decodeArbitrary,\n getTokenCategory,\n getSafeAreaEdge,\n percentUtilityProps,\n radiusCornerProps,\n splitColorOpacitySuffix\n} from \"@tamagui/style-grammar/runtime\";\nconst styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n const cached = styleGrammarConfigCache.get(config);\n const revision = config[configRevisionSymbol]?.revision || 0;\n if (cached && cached.revision === revision) return cached.value;\n const view = createGrammarConfigView(config);\n styleGrammarConfigCache.set(config, { revision, value: view });\n return view;\n}\nfunction isTokenValueProp(prop) {\n return getTokenCategory(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n const px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction tailwindSizingValue(prop, value) {\n if (value === \"full\") return \"100%\";\n if (value === \"auto\") return \"auto\";\n if (value === \"screen\") return /[Hh]eight/.test(prop) ? \"100vh\" : \"100vw\";\n if (value === \"min\") return \"min-content\";\n if (value === \"max\") return \"max-content\";\n if (value === \"fit\") return \"fit-content\";\n const frac = /^(\\d+)\\/(\\d+)$/.exec(value);\n if (frac && Number(frac[2]) !== 0) {\n return `${Number(frac[1]) / Number(frac[2]) * 100}%`;\n }\n return null;\n}\nfunction borderDimValue(raw) {\n let inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = decodeArbitrary(raw.slice(1, -1));\n }\n const px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number.parseFloat(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction expandBorderCandidate(parsed, value) {\n const prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix.startsWith(\"rounded-\")) {\n const props = radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n const out2 = {};\n for (const p of props) out2[p] = value;\n return out2;\n }\n const m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n const sides = borderSideSuffix[m[1]];\n const suffix = parsed.entry?.prop.endsWith(\"Width\") ? \"Width\" : \"Color\";\n const out = {};\n for (const side of sides) out[`border${side}${suffix}`] = value;\n return out;\n}\nfunction tailwindClassToFlatProp(parsed) {\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n const prop = parsed.entry.prop;\n const category = parsed.entry.tokenCategory;\n let value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && parsed.prefix?.startsWith(\"border\")) {\n if (parsed.valueKind === \"token\") {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else if (parsed.valueKind === \"arbitrary\") {\n value = borderDimValue(value);\n } else {\n return null;\n }\n return { key: prop, value };\n }\n if (prop === \"fontFamily\") {\n let famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = decodeArbitrary(value.slice(1, -1));\n } else {\n const generic = {\n sans: \"sans-serif\",\n serif: \"serif\",\n mono: \"monospace\"\n };\n famValue = parsed.valueKind === \"token\" ? value : generic[value] || value;\n }\n return {\n key: \"fontFamily\",\n value: famValue\n };\n }\n if (prop === \"fontSize\") {\n let fsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n fsValue = arbitraryValue(decodeArbitrary(value.slice(1, -1)));\n } else {\n fsValue = value;\n }\n return {\n key: \"fontSize\",\n value: fsValue\n };\n }\n if (prop === \"lineHeight\") {\n let lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n const inner = decodeArbitrary(value.slice(1, -1));\n lhValue = /^-?\\d*\\.?\\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;\n } else {\n lhValue = value;\n }\n return {\n key: \"lineHeight\",\n value: lhValue\n };\n }\n if (prop === \"letterSpacing\") {\n let lsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n lsValue = arbitraryValue(decodeArbitrary(value.slice(1, -1)));\n } else {\n lsValue = value;\n }\n return {\n key: \"letterSpacing\",\n value: lsValue\n };\n }\n if (prop === \"boxShadow\" && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n return {\n key: \"boxShadow\",\n value: decodeArbitrary(value.slice(1, -1))\n };\n }\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n const inner = decodeArbitrary(value.slice(1, -1));\n if (inner === \"\") return null;\n return { key: prop, value: arbitraryValue(inner) };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n const sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return { key: prop, value: sized };\n }\n }\n let opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n const suffix = splitColorOpacitySuffix(value);\n if (suffix.kind === \"invalid\") {\n return { key: prop, value };\n }\n if (suffix.kind === \"valid\") {\n opacitySuffix = value.slice(suffix.name.length);\n value = suffix.name;\n }\n }\n if (percentUtilityProps.has(prop) && /^\\d+$/.test(value)) {\n value = Number(value) / 100;\n } else if (/^\\d+(\\.\\d+)?$/.test(value)) {\n if (category === \"zIndex\" && parsed.valueKind === \"convenience\") {\n value = Number(value);\n } else if (category) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else {\n value = Number(value);\n }\n } else if (typeof value === \"string\") {\n if (category && !((category === \"space\" || category === \"size\" || category === \"radius\") && getSafeAreaEdge(value))) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n }\n }\n if (opacitySuffix && typeof value === \"string\") {\n value = `${value}${opacitySuffix}`;\n }\n if (parsed.negative && !category) {\n if (typeof value === \"number\") value = -value;\n else if (typeof value === \"string\" && value[0] !== \"-\") value = `-${value}`;\n }\n return { key: prop, value };\n}\nconst classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n let cache = classPlanCache.get(grammarConfig);\n if (!cache) {\n cache = /* @__PURE__ */ new Map();\n classPlanCache.set(grammarConfig, cache);\n }\n return cache;\n}\nfunction createPlanEntry(property, value, modifiers) {\n if (modifiers.length === 0) return [property, value];\n const payload = plainValueToPayload(value, property);\n if (payload === null) return null;\n let condition = \"\";\n for (let index = 0; index < modifiers.length; index++) {\n if (index) condition += \":\";\n condition += modifiers[index];\n }\n return [property, payload, condition, modifiers];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n const groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [[\"group\", groupMarker[1] || true]],\n preserveRawClass: isWeb\n };\n }\n const containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n const isSize = containerMarker[1] !== void 0;\n const name = containerMarker[2];\n const entries = [];\n entries.push([\"container\", name || true]);\n if (isSize) {\n entries.push([\"containerType\", \"size\"]);\n }\n return { entries, preserveRawClass: isWeb };\n }\n const classification = classifyCandidate(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return isWeb ? \"raw\" : null;\n }\n const parsed = classification.parsed;\n const util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n const entries = [];\n for (const p in util) {\n const entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries.push(entry);\n }\n return entries;\n }\n const flatProp = tailwindClassToFlatProp(parsed);\n if (flatProp) {\n const expanded = expandBorderCandidate(parsed, flatProp.value);\n if (expanded) {\n const entries = [];\n for (const p in expanded) {\n const entry2 = createPlanEntry(p, expanded[p], parsed.modifiers);\n if (!entry2) return \"raw\";\n entries.push(entry2);\n }\n return entries;\n }\n const entry = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n return entry ? [entry] : \"raw\";\n }\n return \"raw\";\n}\nfunction getTailwindClassPlan(candidate, config) {\n const grammarConfig = getStyleGrammarConfig(config);\n const plans = getClassPlanCache(grammarConfig);\n let plan = plans.get(candidate);\n if (plan === void 0) {\n plan = computeClassPlan(candidate, grammarConfig);\n plans.set(candidate, plan);\n }\n return plan;\n}\nfunction resolveTailwindClassName(className, config) {\n const result = {};\n let rawClassName = \"\";\n let start = 0;\n for (let index = 0; index <= className.length; index++) {\n if (index !== className.length && className.charCodeAt(index) > 32) continue;\n if (start === index) {\n start = index + 1;\n continue;\n }\n const candidate = className.slice(start, index);\n const plan = getTailwindClassPlan(candidate, config);\n if (plan === \"raw\") {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n } else if (plan) {\n const parentPlan = plan;\n if (!Array.isArray(plan) && parentPlan.preserveRawClass) {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n }\n const entries = Array.isArray(plan) ? plan : parentPlan.entries;\n for (let entryIndex = 0; entryIndex < entries.length; entryIndex++) {\n const [key, value, condition] = entries[entryIndex];\n const previous = result[key];\n let next = value;\n if (condition !== void 0) {\n next = previous && typeof previous === \"object\" && !Array.isArray(previous) ? { ...previous, [condition]: value } : previous === void 0 ? { [condition]: value } : { default: previous, [condition]: value };\n } else if (previous && typeof previous === \"object\" && !Array.isArray(previous)) {\n next = { ...previous, default: value };\n }\n setInAuthoredOrder(result, key, next);\n }\n }\n start = index + 1;\n }\n if (rawClassName) result.className = rawClassName;\n return result;\n}\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\nexport {\n getStyleGrammarConfig,\n getTailwindClassPlan,\n isTokenValueProp,\n resolveTailwindClassName,\n setInAuthoredOrder\n};\n//# sourceMappingURL=candidate.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"candidate.js","names":[],"sources":["esm/candidate.js"],"sourcesContent":["import { isWeb } from \"@tamagui/constants\";\nimport {\n plainValueToPayload\n} from \"@tamagui/core/internal-runtime\";\nimport {\n borderSideSuffix,\n configRevisionSymbol,\n createGrammarConfigView,\n getTokenCategory,\n getSafeAreaEdge,\n insetAxisProps,\n percentUtilityProps,\n radiusCornerProps,\n sizeUtilityProps,\n splitColorOpacitySuffix\n} from \"@tamagui/style-grammar/runtime\";\nimport {\n classifyCandidate,\n decodeArbitrary\n} from \"@tamagui/style-grammar/tooling/candidate\";\nconst styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n const cached = styleGrammarConfigCache.get(config);\n const revision = config[configRevisionSymbol]?.revision || 0;\n if (cached && cached.revision === revision) return cached.value;\n const view = createGrammarConfigView(config);\n styleGrammarConfigCache.set(config, { revision, value: view });\n return view;\n}\nfunction isTokenValueProp(prop) {\n return getTokenCategory(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n const px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction tailwindSizingValue(prop, value) {\n if (value === \"full\") return \"100%\";\n if (value === \"auto\") return \"auto\";\n if (value === \"screen\") return /[Hh]eight/.test(prop) ? \"100vh\" : \"100vw\";\n if (value === \"min\") return \"min-content\";\n if (value === \"max\") return \"max-content\";\n if (value === \"fit\") return \"fit-content\";\n const frac = /^(\\d+)\\/(\\d+)$/.exec(value);\n if (frac && Number(frac[2]) !== 0) {\n return `${Number(frac[1]) / Number(frac[2]) * 100}%`;\n }\n return null;\n}\nfunction borderDimValue(raw) {\n let inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = decodeArbitrary(raw.slice(1, -1));\n }\n const px = /^(-?\\d*\\.?\\d+)px$/.exec(inner);\n if (px) return Number.parseFloat(px[1]);\n if (/^-?\\d*\\.?\\d+$/.test(inner)) return Number(inner);\n return inner;\n}\nfunction expansionProps(parsed) {\n const prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix === \"size\") return sizeUtilityProps;\n if (prefix === \"inset-x\" || prefix === \"inset-y\") {\n return insetAxisProps[prefix.slice(\"inset-\".length)];\n }\n if (prefix.startsWith(\"rounded-\")) {\n const props = radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n return props;\n }\n const m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n const sides = borderSideSuffix[m[1]];\n const suffix = parsed.entry?.prop.endsWith(\"Width\") ? \"Width\" : \"Color\";\n return sides.map((side) => `border${side}${suffix}`);\n}\nfunction tailwindClassToFlatProp(parsed) {\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n const prop = parsed.entry.prop;\n const category = parsed.entry.tokenCategory;\n let value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && parsed.prefix?.startsWith(\"border\")) {\n if (parsed.valueKind === \"token\") {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else if (parsed.valueKind === \"arbitrary\") {\n value = borderDimValue(value);\n } else {\n return null;\n }\n return { key: prop, value };\n }\n if (prop === \"fontFamily\") {\n let famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = decodeArbitrary(value.slice(1, -1));\n } else {\n const generic = {\n sans: \"sans-serif\",\n serif: \"serif\",\n mono: \"monospace\"\n };\n famValue = parsed.valueKind === \"token\" ? value : generic[value] || value;\n }\n return {\n key: \"fontFamily\",\n value: famValue\n };\n }\n if (prop === \"fontSize\") {\n let fsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n fsValue = arbitraryValue(decodeArbitrary(value.slice(1, -1)));\n } else {\n fsValue = value;\n }\n return {\n key: \"fontSize\",\n value: fsValue\n };\n }\n if (prop === \"lineHeight\") {\n let lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n const inner = decodeArbitrary(value.slice(1, -1));\n lhValue = /^-?\\d*\\.?\\d+px$/.test(inner) ? Number.parseFloat(inner) : inner;\n } else {\n lhValue = value;\n }\n return {\n key: \"lineHeight\",\n value: lhValue\n };\n }\n if (prop === \"letterSpacing\") {\n let lsValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n lsValue = arbitraryValue(decodeArbitrary(value.slice(1, -1)));\n } else {\n lsValue = value;\n }\n return {\n key: \"letterSpacing\",\n value: lsValue\n };\n }\n if (prop === \"boxShadow\" && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n return {\n key: \"boxShadow\",\n value: decodeArbitrary(value.slice(1, -1))\n };\n }\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n const inner = decodeArbitrary(value.slice(1, -1));\n if (inner === \"\") return null;\n return { key: prop, value: arbitraryValue(inner) };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n const sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return { key: prop, value: sized };\n }\n }\n let opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n const suffix = splitColorOpacitySuffix(value);\n if (suffix.kind === \"invalid\") {\n return { key: prop, value };\n }\n if (suffix.kind === \"valid\") {\n opacitySuffix = value.slice(suffix.name.length);\n value = suffix.name;\n }\n }\n if (percentUtilityProps.has(prop) && /^\\d+$/.test(value)) {\n value = Number(value) / 100;\n } else if (/^\\d+(\\.\\d+)?$/.test(value)) {\n if (category === \"zIndex\" && parsed.valueKind === \"convenience\") {\n value = Number(value);\n } else if (category) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n } else {\n value = Number(value);\n }\n } else if (typeof value === \"string\") {\n if (category && !((category === \"space\" || category === \"size\" || category === \"radius\") && getSafeAreaEdge(value))) {\n value = `${parsed.negative ? \"-\" : \"\"}${value}`;\n }\n }\n if (opacitySuffix && typeof value === \"string\") {\n value = `${value}${opacitySuffix}`;\n }\n if (parsed.negative && !category) {\n if (typeof value === \"number\") value = -value;\n else if (typeof value === \"string\" && value[0] !== \"-\") value = `-${value}`;\n }\n return { key: prop, value };\n}\nconst classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n let cache = classPlanCache.get(grammarConfig);\n if (!cache) {\n cache = /* @__PURE__ */ new Map();\n classPlanCache.set(grammarConfig, cache);\n }\n return cache;\n}\nfunction createPlanEntry(property, value, modifiers) {\n if (modifiers.length === 0) return [property, value];\n const payload = plainValueToPayload(value, property);\n if (payload === null) return null;\n let condition = \"\";\n for (let index = 0; index < modifiers.length; index++) {\n if (index) condition += \":\";\n condition += modifiers[index];\n }\n return [property, payload, condition, modifiers];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n const groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [[\"group\", groupMarker[1] || true]],\n preserveRawClass: isWeb\n };\n }\n const containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n const isSize = containerMarker[1] !== void 0;\n const name = containerMarker[2];\n const entries = [];\n entries.push([\"container\", name || true]);\n if (isSize) {\n entries.push([\"containerType\", \"size\"]);\n }\n return { entries, preserveRawClass: isWeb };\n }\n const classification = classifyCandidate(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return isWeb ? \"raw\" : null;\n }\n const parsed = classification.parsed;\n const util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n const entries = [];\n for (const p in util) {\n const entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries.push(entry);\n }\n return entries;\n }\n const expandedProps = expansionProps(parsed);\n if (expandedProps) {\n const entries = [];\n for (const prop of expandedProps) {\n const flatProp2 = tailwindClassToFlatProp({\n ...parsed,\n entry: parsed.entry ? { ...parsed.entry, prop } : parsed.entry\n });\n if (!flatProp2) return \"raw\";\n const entry = createPlanEntry(flatProp2.key, flatProp2.value, parsed.modifiers);\n if (!entry) return \"raw\";\n entries.push(entry);\n }\n return entries;\n }\n const flatProp = tailwindClassToFlatProp(parsed);\n if (flatProp) {\n const entry = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n return entry ? [entry] : \"raw\";\n }\n return \"raw\";\n}\nfunction getTailwindClassPlan(candidate, config) {\n const grammarConfig = getStyleGrammarConfig(config);\n const plans = getClassPlanCache(grammarConfig);\n let plan = plans.get(candidate);\n if (plan === void 0) {\n plan = computeClassPlan(candidate, grammarConfig);\n plans.set(candidate, plan);\n }\n return plan;\n}\nfunction resolveTailwindClassName(className, config) {\n const result = {};\n let rawClassName = \"\";\n let start = 0;\n for (let index = 0; index <= className.length; index++) {\n if (index !== className.length && className.charCodeAt(index) > 32) continue;\n if (start === index) {\n start = index + 1;\n continue;\n }\n const candidate = className.slice(start, index);\n const plan = getTailwindClassPlan(candidate, config);\n if (plan === \"raw\") {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n } else if (plan) {\n const parentPlan = plan;\n if (!Array.isArray(plan) && parentPlan.preserveRawClass) {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n }\n const entries = Array.isArray(plan) ? plan : parentPlan.entries;\n for (let entryIndex = 0; entryIndex < entries.length; entryIndex++) {\n const [key, value, condition] = entries[entryIndex];\n const previous = result[key];\n let next = value;\n if (condition !== void 0) {\n next = previous && typeof previous === \"object\" && !Array.isArray(previous) ? { ...previous, [condition]: value } : previous === void 0 ? { [condition]: value } : { default: previous, [condition]: value };\n } else if (previous && typeof previous === \"object\" && !Array.isArray(previous)) {\n next = { ...previous, default: value };\n }\n setInAuthoredOrder(result, key, next);\n }\n }\n start = index + 1;\n }\n if (rawClassName) result.className = rawClassName;\n return result;\n}\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\nexport {\n getStyleGrammarConfig,\n getTailwindClassPlan,\n isTokenValueProp,\n resolveTailwindClassName,\n setInAuthoredOrder\n};\n//# sourceMappingURL=candidate.js.map\n"],"mappings":";;;;;;AAoBA,MAAM,0CAA0C,IAAI,QAAQ;AAC5D,SAAS,sBAAsB,QAAQ;CACrC,MAAM,SAAS,wBAAwB,IAAI,MAAM;CACjD,MAAM,WAAW,OAAO,qBAAqB,EAAE,YAAY;CAC3D,IAAI,UAAU,OAAO,aAAa,UAAU,OAAO,OAAO;CAC1D,MAAM,OAAO,wBAAwB,MAAM;CAC3C,wBAAwB,IAAI,QAAQ;EAAE;EAAU,OAAO;CAAK,CAAC;CAC7D,OAAO;AACT;AACA,SAAS,iBAAiB,MAAM;CAC9B,OAAO,iBAAiB,IAAI,MAAM;AACpC;AACA,SAAS,eAAe,OAAO;CAC7B,MAAM,KAAK,oBAAoB,KAAK,KAAK;CACzC,IAAI,IAAI,OAAO,OAAO,GAAG,EAAE;CAC3B,IAAI,gBAAgB,KAAK,KAAK,GAAG,OAAO,OAAO,KAAK;CACpD,OAAO;AACT;AACA,SAAS,oBAAoB,MAAM,OAAO;CACxC,IAAI,UAAU,QAAQ,OAAO;CAC7B,IAAI,UAAU,QAAQ,OAAO;CAC7B,IAAI,UAAU,UAAU,OAAO,YAAY,KAAK,IAAI,IAAI,UAAU;CAClE,IAAI,UAAU,OAAO,OAAO;CAC5B,IAAI,UAAU,OAAO,OAAO;CAC5B,IAAI,UAAU,OAAO,OAAO;CAC5B,MAAM,OAAO,iBAAiB,KAAK,KAAK;CACxC,IAAI,QAAQ,OAAO,KAAK,EAAE,MAAM,GAAG;EACjC,OAAO,GAAG,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,EAAE,IAAI,IAAI;CACpD;CACA,OAAO;AACT;AACA,SAAS,eAAe,KAAK;CAC3B,IAAI,QAAQ;CACZ,IAAI,IAAI,SAAS,KAAK,IAAI,OAAO,OAAO,IAAI,IAAI,SAAS,OAAO,KAAK;EACnE,QAAQ,gBAAgB,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC;CAC1C;CACA,MAAM,KAAK,oBAAoB,KAAK,KAAK;CACzC,IAAI,IAAI,OAAO,OAAO,WAAW,GAAG,EAAE;CACtC,IAAI,gBAAgB,KAAK,KAAK,GAAG,OAAO,OAAO,KAAK;CACpD,OAAO;AACT;AACA,SAAS,eAAe,QAAQ;CAC9B,MAAM,SAAS,OAAO;CACtB,IAAI,CAAC,QAAQ,OAAO;CACpB,IAAI,WAAW,QAAQ,OAAO;CAC9B,IAAI,WAAW,aAAa,WAAW,WAAW;EAChD,OAAO,eAAe,OAAO,MAAM,SAAS,MAAM;CACpD;CACA,IAAI,OAAO,WAAW,UAAU,GAAG;EACjC,MAAM,QAAQ,kBAAkB,OAAO,MAAM,WAAW,MAAM;EAC9D,IAAI,CAAC,SAAS,MAAM,WAAW,GAAG,OAAO;EACzC,OAAO;CACT;CACA,MAAM,IAAI,sBAAsB,KAAK,MAAM;CAC3C,IAAI,CAAC,GAAG,OAAO;CACf,MAAM,QAAQ,iBAAiB,EAAE;CACjC,MAAM,SAAS,OAAO,OAAO,KAAK,SAAS,OAAO,IAAI,UAAU;CAChE,OAAO,MAAM,KAAK,SAAS,SAAS,OAAO,QAAQ;AACrD;AACA,SAAS,wBAAwB,QAAQ;CACvC,IAAI,OAAO,SAAS,aAAa,CAAC,OAAO,SAAS,OAAO,aAAa,KAAK,GAAG;EAC5E,OAAO;CACT;CACA,MAAM,OAAO,OAAO,MAAM;CAC1B,MAAM,WAAW,OAAO,MAAM;CAC9B,IAAI,QAAQ,OAAO;CACnB,IAAI,KAAK,SAAS,OAAO,KAAK,OAAO,QAAQ,WAAW,QAAQ,GAAG;EACjE,IAAI,OAAO,cAAc,SAAS;GAChC,QAAQ,GAAG,OAAO,WAAW,MAAM,KAAK;EAC1C,OAAO,IAAI,OAAO,cAAc,aAAa;GAC3C,QAAQ,eAAe,KAAK;EAC9B,OAAO;GACL,OAAO;EACT;EACA,OAAO;GAAE,KAAK;GAAM;EAAM;CAC5B;CACA,IAAI,SAAS,cAAc;EACzB,IAAI;EACJ,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;GAC3E,WAAW,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;EAC/C,OAAO;GACL,MAAM,UAAU;IACd,MAAM;IACN,OAAO;IACP,MAAM;GACR;GACA,WAAW,OAAO,cAAc,UAAU,QAAQ,QAAQ,UAAU;EACtE;EACA,OAAO;GACL,KAAK;GACL,OAAO;EACT;CACF;CACA,IAAI,SAAS,YAAY;EACvB,IAAI;EACJ,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;GAC3E,UAAU,eAAe,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;EAC9D,OAAO;GACL,UAAU;EACZ;EACA,OAAO;GACL,KAAK;GACL,OAAO;EACT;CACF;CACA,IAAI,SAAS,cAAc;EACzB,IAAI;EACJ,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;GAC3E,MAAM,QAAQ,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;GAChD,UAAU,kBAAkB,KAAK,KAAK,IAAI,OAAO,WAAW,KAAK,IAAI;EACvE,OAAO;GACL,UAAU;EACZ;EACA,OAAO;GACL,KAAK;GACL,OAAO;EACT;CACF;CACA,IAAI,SAAS,iBAAiB;EAC5B,IAAI;EACJ,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;GAC3E,UAAU,eAAe,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;EAC9D,OAAO;GACL,UAAU;EACZ;EACA,OAAO;GACL,KAAK;GACL,OAAO;EACT;CACF;CACA,IAAI,SAAS,eAAe,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;EAC/E,OAAO;GACL,KAAK;GACL,OAAO,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;EAC3C;CACF;CACA,IAAI,MAAM,SAAS,KAAK,MAAM,OAAO,OAAO,MAAM,MAAM,SAAS,OAAO,KAAK;EAC3E,MAAM,QAAQ,gBAAgB,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;EAChD,IAAI,UAAU,IAAI,OAAO;EACzB,OAAO;GAAE,KAAK;GAAM,OAAO,eAAe,KAAK;EAAE;CACnD;CACA,IAAI,aAAa,UAAU,OAAO,cAAc,SAAS;EACvD,MAAM,QAAQ,oBAAoB,MAAM,KAAK;EAC7C,IAAI,SAAS,MAAM;GACjB,OAAO;IAAE,KAAK;IAAM,OAAO;GAAM;EACnC;CACF;CACA,IAAI,gBAAgB;CACpB,IAAI,aAAa,WAAW,OAAO,UAAU,UAAU;EACrD,MAAM,SAAS,wBAAwB,KAAK;EAC5C,IAAI,OAAO,SAAS,WAAW;GAC7B,OAAO;IAAE,KAAK;IAAM;GAAM;EAC5B;EACA,IAAI,OAAO,SAAS,SAAS;GAC3B,gBAAgB,MAAM,MAAM,OAAO,KAAK,MAAM;GAC9C,QAAQ,OAAO;EACjB;CACF;CACA,IAAI,oBAAoB,IAAI,IAAI,KAAK,QAAQ,KAAK,KAAK,GAAG;EACxD,QAAQ,OAAO,KAAK,IAAI;CAC1B,OAAO,IAAI,gBAAgB,KAAK,KAAK,GAAG;EACtC,IAAI,aAAa,YAAY,OAAO,cAAc,eAAe;GAC/D,QAAQ,OAAO,KAAK;EACtB,OAAO,IAAI,UAAU;GACnB,QAAQ,GAAG,OAAO,WAAW,MAAM,KAAK;EAC1C,OAAO;GACL,QAAQ,OAAO,KAAK;EACtB;CACF,OAAO,IAAI,OAAO,UAAU,UAAU;EACpC,IAAI,YAAY,GAAG,aAAa,WAAW,aAAa,UAAU,aAAa,aAAa,gBAAgB,KAAK,IAAI;GACnH,QAAQ,GAAG,OAAO,WAAW,MAAM,KAAK;EAC1C;CACF;CACA,IAAI,iBAAiB,OAAO,UAAU,UAAU;EAC9C,QAAQ,GAAG,QAAQ;CACrB;CACA,IAAI,OAAO,YAAY,CAAC,UAAU;EAChC,IAAI,OAAO,UAAU,UAAU,QAAQ,CAAC;OACnC,IAAI,OAAO,UAAU,YAAY,MAAM,OAAO,KAAK,QAAQ,IAAI;CACtE;CACA,OAAO;EAAE,KAAK;EAAM;CAAM;AAC5B;AACA,MAAM,iCAAiC,IAAI,QAAQ;AACnD,SAAS,kBAAkB,eAAe;CACxC,IAAI,QAAQ,eAAe,IAAI,aAAa;CAC5C,IAAI,CAAC,OAAO;EACV,wBAAwB,IAAI,IAAI;EAChC,eAAe,IAAI,eAAe,KAAK;CACzC;CACA,OAAO;AACT;AACA,SAAS,gBAAgB,UAAU,OAAO,WAAW;CACnD,IAAI,UAAU,WAAW,GAAG,OAAO,CAAC,UAAU,KAAK;CACnD,MAAM,UAAU,oBAAoB,OAAO,QAAQ;CACnD,IAAI,YAAY,MAAM,OAAO;CAC7B,IAAI,YAAY;CAChB,KAAK,IAAI,QAAQ,GAAG,QAAQ,UAAU,QAAQ,SAAS;EACrD,IAAI,OAAO,aAAa;EACxB,aAAa,UAAU;CACzB;CACA,OAAO;EAAC;EAAU;EAAS;EAAW;CAAS;AACjD;AACA,SAAS,iBAAiB,KAAK,eAAe;CAC5C,MAAM,cAAc,iCAAiC,KAAK,GAAG;CAC7D,IAAI,aAAa;EACf,OAAO;GACL,SAAS,CAAC,CAAC,SAAS,YAAY,MAAM,IAAI,CAAC;GAC3C,kBAAkB;EACpB;CACF;CACA,MAAM,kBAAkB,8CAA8C,KAAK,GAAG;CAC9E,IAAI,iBAAiB;EACnB,MAAM,SAAS,gBAAgB,OAAO,KAAK;EAC3C,MAAM,OAAO,gBAAgB;EAC7B,MAAM,UAAU,CAAC;EACjB,QAAQ,KAAK,CAAC,aAAa,QAAQ,IAAI,CAAC;EACxC,IAAI,QAAQ;GACV,QAAQ,KAAK,CAAC,iBAAiB,MAAM,CAAC;EACxC;EACA,OAAO;GAAE;GAAS,kBAAkB;EAAM;CAC5C;CACA,MAAM,iBAAiB,kBAAkB,KAAK,aAAa;CAC3D,IAAI,eAAe,SAAS,eAAe;EACzC,OAAO,QAAQ,QAAQ;CACzB;CACA,MAAM,SAAS,eAAe;CAC9B,MAAM,OAAO,OAAO,SAAS,YAAY,OAAO,aAAa;CAC7D,IAAI,MAAM;EACR,MAAM,UAAU,CAAC;EACjB,KAAK,MAAM,KAAK,MAAM;GACpB,MAAM,QAAQ,gBAAgB,GAAG,KAAK,IAAI,OAAO,SAAS;GAC1D,IAAI,CAAC,OAAO,OAAO;GACnB,QAAQ,KAAK,KAAK;EACpB;EACA,OAAO;CACT;CACA,MAAM,gBAAgB,eAAe,MAAM;CAC3C,IAAI,eAAe;EACjB,MAAM,UAAU,CAAC;EACjB,KAAK,MAAM,QAAQ,eAAe;GAChC,MAAM,YAAY,wBAAwB;IACxC,GAAG;IACH,OAAO,OAAO,QAAQ;KAAE,GAAG,OAAO;KAAO;IAAK,IAAI,OAAO;GAC3D,CAAC;GACD,IAAI,CAAC,WAAW,OAAO;GACvB,MAAM,QAAQ,gBAAgB,UAAU,KAAK,UAAU,OAAO,OAAO,SAAS;GAC9E,IAAI,CAAC,OAAO,OAAO;GACnB,QAAQ,KAAK,KAAK;EACpB;EACA,OAAO;CACT;CACA,MAAM,WAAW,wBAAwB,MAAM;CAC/C,IAAI,UAAU;EACZ,MAAM,QAAQ,gBAAgB,SAAS,KAAK,SAAS,OAAO,OAAO,SAAS;EAC5E,OAAO,QAAQ,CAAC,KAAK,IAAI;CAC3B;CACA,OAAO;AACT;AACA,SAAS,qBAAqB,WAAW,QAAQ;CAC/C,MAAM,gBAAgB,sBAAsB,MAAM;CAClD,MAAM,QAAQ,kBAAkB,aAAa;CAC7C,IAAI,OAAO,MAAM,IAAI,SAAS;CAC9B,IAAI,SAAS,KAAK,GAAG;EACnB,OAAO,iBAAiB,WAAW,aAAa;EAChD,MAAM,IAAI,WAAW,IAAI;CAC3B;CACA,OAAO;AACT;AACA,SAAS,yBAAyB,WAAW,QAAQ;CACnD,MAAM,SAAS,CAAC;CAChB,IAAI,eAAe;CACnB,IAAI,QAAQ;CACZ,KAAK,IAAI,QAAQ,GAAG,SAAS,UAAU,QAAQ,SAAS;EACtD,IAAI,UAAU,UAAU,UAAU,UAAU,WAAW,KAAK,IAAI,IAAI;EACpE,IAAI,UAAU,OAAO;GACnB,QAAQ,QAAQ;GAChB;EACF;EACA,MAAM,YAAY,UAAU,MAAM,OAAO,KAAK;EAC9C,MAAM,OAAO,qBAAqB,WAAW,MAAM;EACnD,IAAI,SAAS,OAAO;GAClB,eAAe,eAAe,GAAG,aAAa,GAAG,cAAc;EACjE,OAAO,IAAI,MAAM;GACf,MAAM,aAAa;GACnB,IAAI,CAAC,MAAM,QAAQ,IAAI,KAAK,WAAW,kBAAkB;IACvD,eAAe,eAAe,GAAG,aAAa,GAAG,cAAc;GACjE;GACA,MAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,OAAO,WAAW;GACxD,KAAK,IAAI,aAAa,GAAG,aAAa,QAAQ,QAAQ,cAAc;IAClE,MAAM,CAAC,KAAK,OAAO,aAAa,QAAQ;IACxC,MAAM,WAAW,OAAO;IACxB,IAAI,OAAO;IACX,IAAI,cAAc,KAAK,GAAG;KACxB,OAAO,YAAY,OAAO,aAAa,YAAY,CAAC,MAAM,QAAQ,QAAQ,IAAI;MAAE,GAAG;OAAW,YAAY;KAAM,IAAI,aAAa,KAAK,IAAI,GAAG,YAAY,MAAM,IAAI;MAAE,SAAS;OAAW,YAAY;KAAM;IAC7M,OAAO,IAAI,YAAY,OAAO,aAAa,YAAY,CAAC,MAAM,QAAQ,QAAQ,GAAG;KAC/E,OAAO;MAAE,GAAG;MAAU,SAAS;KAAM;IACvC;IACA,mBAAmB,QAAQ,KAAK,IAAI;GACtC;EACF;EACA,QAAQ,QAAQ;CAClB;CACA,IAAI,cAAc,OAAO,YAAY;CACrC,OAAO;AACT;AACA,SAAS,mBAAmB,QAAQ,KAAK,OAAO;CAC9C,IAAI,OAAO,QAAQ,OAAO,OAAO;CACjC,OAAO,OAAO;AAChB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
2
|
import { plainValueToPayload } from "@tamagui/core/internal-runtime";
|
|
3
|
-
import { borderSideSuffix,
|
|
3
|
+
import { borderSideSuffix, configRevisionSymbol, createGrammarConfigView, getSafeAreaEdge, getTokenCategory, insetAxisProps, percentUtilityProps, radiusCornerProps, sizeUtilityProps, splitColorOpacitySuffix } from "@tamagui/style-grammar/runtime";
|
|
4
|
+
import { classifyCandidate, decodeArbitrary } from "@tamagui/style-grammar/tooling/candidate";
|
|
4
5
|
|
|
5
6
|
function _type_of(obj) {
|
|
6
7
|
"@swc/helpers - typeof";
|
|
@@ -51,62 +52,26 @@ function borderDimValue(raw) {
|
|
|
51
52
|
if (/^-?\d*\.?\d+$/.test(inner)) return Number(inner);
|
|
52
53
|
return inner;
|
|
53
54
|
}
|
|
54
|
-
function
|
|
55
|
+
function expansionProps(parsed) {
|
|
55
56
|
var _parsed_entry;
|
|
56
57
|
var prefix = parsed.prefix;
|
|
57
58
|
if (!prefix) return null;
|
|
59
|
+
if (prefix === "size") return sizeUtilityProps;
|
|
60
|
+
if (prefix === "inset-x" || prefix === "inset-y") {
|
|
61
|
+
return insetAxisProps[prefix.slice("inset-".length)];
|
|
62
|
+
}
|
|
58
63
|
if (prefix.startsWith("rounded-")) {
|
|
59
64
|
var props = radiusCornerProps[prefix.slice("rounded-".length)];
|
|
60
65
|
if (!props || props.length === 1) return null;
|
|
61
|
-
|
|
62
|
-
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
63
|
-
try {
|
|
64
|
-
for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
65
|
-
var p = _step.value;
|
|
66
|
-
out[p] = value;
|
|
67
|
-
}
|
|
68
|
-
} catch (err) {
|
|
69
|
-
_didIteratorError = true;
|
|
70
|
-
_iteratorError = err;
|
|
71
|
-
} finally {
|
|
72
|
-
try {
|
|
73
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
74
|
-
_iterator.return();
|
|
75
|
-
}
|
|
76
|
-
} finally {
|
|
77
|
-
if (_didIteratorError) {
|
|
78
|
-
throw _iteratorError;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
return out;
|
|
66
|
+
return props;
|
|
83
67
|
}
|
|
84
68
|
var m = /^border-([trblxy])$/.exec(prefix);
|
|
85
69
|
if (!m) return null;
|
|
86
70
|
var sides = borderSideSuffix[m[1]];
|
|
87
71
|
var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith("Width")) ? "Width" : "Color";
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
92
|
-
var side = _step1.value;
|
|
93
|
-
out1[`border${side}${suffix}`] = value;
|
|
94
|
-
}
|
|
95
|
-
} catch (err) {
|
|
96
|
-
_didIteratorError1 = true;
|
|
97
|
-
_iteratorError1 = err;
|
|
98
|
-
} finally {
|
|
99
|
-
try {
|
|
100
|
-
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
101
|
-
_iterator1.return();
|
|
102
|
-
}
|
|
103
|
-
} finally {
|
|
104
|
-
if (_didIteratorError1) {
|
|
105
|
-
throw _iteratorError1;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
return out1;
|
|
72
|
+
return sides.map(function(side) {
|
|
73
|
+
return `border${side}${suffix}`;
|
|
74
|
+
});
|
|
110
75
|
}
|
|
111
76
|
function tailwindClassToFlatProp(parsed) {
|
|
112
77
|
var _parsed_prefix;
|
|
@@ -309,19 +274,44 @@ function computeClassPlan(cls, grammarConfig) {
|
|
|
309
274
|
}
|
|
310
275
|
return entries1;
|
|
311
276
|
}
|
|
312
|
-
var
|
|
313
|
-
if (
|
|
314
|
-
var
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
for (var
|
|
318
|
-
var
|
|
277
|
+
var expandedProps = expansionProps(parsed);
|
|
278
|
+
if (expandedProps) {
|
|
279
|
+
var entries2 = [];
|
|
280
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
281
|
+
try {
|
|
282
|
+
for (var _iterator = expandedProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
283
|
+
var prop = _step.value;
|
|
284
|
+
var flatProp = tailwindClassToFlatProp({
|
|
285
|
+
...parsed,
|
|
286
|
+
entry: parsed.entry ? {
|
|
287
|
+
...parsed.entry,
|
|
288
|
+
prop
|
|
289
|
+
} : parsed.entry
|
|
290
|
+
});
|
|
291
|
+
if (!flatProp) return "raw";
|
|
292
|
+
var entry1 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);
|
|
319
293
|
if (!entry1) return "raw";
|
|
320
294
|
entries2.push(entry1);
|
|
321
295
|
}
|
|
322
|
-
|
|
296
|
+
} catch (err) {
|
|
297
|
+
_didIteratorError = true;
|
|
298
|
+
_iteratorError = err;
|
|
299
|
+
} finally {
|
|
300
|
+
try {
|
|
301
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
302
|
+
_iterator.return();
|
|
303
|
+
}
|
|
304
|
+
} finally {
|
|
305
|
+
if (_didIteratorError) {
|
|
306
|
+
throw _iteratorError;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
323
309
|
}
|
|
324
|
-
|
|
310
|
+
return entries2;
|
|
311
|
+
}
|
|
312
|
+
var flatProp1 = tailwindClassToFlatProp(parsed);
|
|
313
|
+
if (flatProp1) {
|
|
314
|
+
var entry2 = createPlanEntry(flatProp1.key, flatProp1.value, parsed.modifiers);
|
|
325
315
|
return entry2 ? [entry2] : "raw";
|
|
326
316
|
}
|
|
327
317
|
return "raw";
|