@tamagui/tailwind 3.0.0-beta.765.1 → 3.0.0-beta.804.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 +69 -82
- package/dist/cjs/candidate.native.cjs +74 -86
- package/dist/cjs/candidate.native.js +74 -86
- package/dist/cjs/candidate.native.js.map +1 -1
- package/dist/cjs/frontend.cjs +9 -12
- package/dist/cjs/frontend.native.cjs +10 -13
- package/dist/cjs/frontend.native.js +10 -13
- package/dist/cjs/frontend.native.js.map +1 -1
- package/dist/cjs/index.cjs +0 -2
- package/dist/cjs/index.native.cjs +0 -2
- package/dist/cjs/index.native.js +0 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/candidate.mjs +70 -84
- package/dist/esm/candidate.mjs.map +1 -1
- package/dist/esm/candidate.native.js +75 -88
- package/dist/esm/candidate.native.js.map +1 -1
- package/dist/esm/frontend.mjs +10 -13
- package/dist/esm/frontend.mjs.map +1 -1
- package/dist/esm/frontend.native.js +11 -14
- package/dist/esm/frontend.native.js.map +1 -1
- package/dist/esm/index.mjs +1 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +1 -2
- package/dist/esm/index.native.js.map +1 -1
- package/package.json +13 -13
- package/src/candidate.ts +77 -121
- package/src/frontend.ts +10 -21
- package/src/index.tsx +0 -1
- package/src/types.ts +1 -1
- package/types/candidate.d.ts +3 -9
- package/types/candidate.d.ts.map +1 -1
- package/types/frontend.d.ts +2 -2
- package/types/frontend.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/types.d.ts +1 -1
- package/types/types.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidate.js","names":[],"sources":["esm/candidate.js"],"sourcesContent":["import { isWeb } from \"@tamagui/constants\";\nimport {\n STYLE_FRONTEND_PASSTHROUGH_PREFIX,\n createFrontendProgram,\n plainValueToPayload\n} from \"@tamagui/core/internal-runtime\";\nimport {\n borderSideSuffix,\n classifyCandidate,\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 if (cached) return cached;\n const view = createGrammarConfigView(config);\n styleGrammarConfigCache.set(config, 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 return [\n null,\n createFrontendProgram(property, {\n base: null,\n clauses: [{ modifiers, payload }]\n })\n ];\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 if (name) entries.push([\"containerName\", name]);\n if (isSize) {\n entries.push([\"containerType\", \"size\"]);\n } else if (name) {\n entries.push([\"containerType\", \"inline-size\"]);\n } else {\n entries.push([\"container\", true]);\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}\nconst warnedNativePassthroughCandidates = /* @__PURE__ */ new Set();\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\nfunction preprocessTailwindClassName(props, config, preservePassthroughPosition = false) {\n const className = props.className;\n if (!className || typeof className !== \"string\") {\n return props;\n }\n const classes = className.split(/\\s+/).filter(Boolean);\n const result = {};\n const grammarConfig = getStyleGrammarConfig(config);\n const plans = getClassPlanCache(grammarConfig);\n const classPlans = classes.map((cls) => {\n let plan = plans.get(cls);\n if (plan === void 0) {\n plan = computeClassPlan(cls, grammarConfig);\n plans.set(cls, plan);\n }\n return plan;\n });\n const hasOwnedStyleCandidate = preservePassthroughPosition && classPlans.some((plan) => Array.isArray(plan));\n let frontendProgramIndex = 0;\n let passthroughIndex = 0;\n const regularClasses = [];\n const preserveRawClass = (cls) => {\n if (hasOwnedStyleCandidate) {\n result[`${STYLE_FRONTEND_PASSTHROUGH_PREFIX}${passthroughIndex++}`] = cls;\n } else {\n regularClasses.push(cls);\n }\n };\n const applyEntry = ([key, value]) => {\n if (key === null) {\n result[`__tamagui_frontend_program_${frontendProgramIndex++}`] = value;\n } else {\n setInAuthoredOrder(result, key, value);\n }\n };\n for (const key in props) {\n if (key !== \"className\") {\n setInAuthoredOrder(result, key, props[key]);\n continue;\n }\n for (let classIndex = 0; classIndex < classes.length; classIndex++) {\n const cls = classes[classIndex];\n const plan = classPlans[classIndex];\n if (plan === null) {\n if (process.env.NODE_ENV !== \"production\" && !warnedNativePassthroughCandidates.has(cls)) {\n warnedNativePassthroughCandidates.add(cls);\n console.warn(\n `[tamagui] Tailwind candidate \"${cls}\" is web-only and was dropped on native. Use a Tamagui grammar candidate or a native style prop for cross-platform output.`\n );\n }\n continue;\n }\n if (plan === \"raw\") {\n preserveRawClass(cls);\n continue;\n }\n if (!Array.isArray(plan)) {\n if (plan.preserveRawClass) {\n preserveRawClass(cls);\n }\n for (let i = 0; i < plan.entries.length; i++) {\n applyEntry(plan.entries[i]);\n }\n continue;\n }\n for (let i = 0; i < plan.length; i++) {\n applyEntry(plan[i]);\n }\n }\n if (regularClasses.length > 0) {\n result.className = regularClasses.join(\" \");\n }\n }\n return result;\n}\nexport {\n getStyleGrammarConfig,\n isTokenValueProp,\n preprocessTailwindClassName,\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 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,13 +1,22 @@
|
|
|
1
1
|
import { isWeb } from "@tamagui/constants";
|
|
2
|
-
import {
|
|
3
|
-
import { borderSideSuffix, classifyCandidate, createGrammarConfigView, decodeArbitrary, getSafeAreaEdge, getTokenCategory, percentUtilityProps, radiusCornerProps, splitColorOpacitySuffix } from "@tamagui/style-grammar/runtime";
|
|
2
|
+
import { plainValueToPayload } from "@tamagui/core/internal-runtime";
|
|
3
|
+
import { borderSideSuffix, classifyCandidate, configRevisionSymbol, createGrammarConfigView, decodeArbitrary, getSafeAreaEdge, getTokenCategory, percentUtilityProps, radiusCornerProps, splitColorOpacitySuffix } from "@tamagui/style-grammar/runtime";
|
|
4
4
|
|
|
5
|
+
function _type_of(obj) {
|
|
6
|
+
"@swc/helpers - typeof";
|
|
7
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
8
|
+
}
|
|
5
9
|
var styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();
|
|
6
10
|
function getStyleGrammarConfig(config) {
|
|
11
|
+
var _config_configRevisionSymbol;
|
|
7
12
|
var cached = styleGrammarConfigCache.get(config);
|
|
8
|
-
|
|
13
|
+
var revision = ((_config_configRevisionSymbol = config[configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;
|
|
14
|
+
if (cached && cached.revision === revision) return cached.value;
|
|
9
15
|
var view = createGrammarConfigView(config);
|
|
10
|
-
styleGrammarConfigCache.set(config,
|
|
16
|
+
styleGrammarConfigCache.set(config, {
|
|
17
|
+
revision,
|
|
18
|
+
value: view
|
|
19
|
+
});
|
|
11
20
|
return view;
|
|
12
21
|
}
|
|
13
22
|
function isTokenValueProp(prop) {
|
|
@@ -251,13 +260,17 @@ function createPlanEntry(property, value, modifiers) {
|
|
|
251
260
|
if (modifiers.length === 0) return [property, value];
|
|
252
261
|
var payload = plainValueToPayload(value, property);
|
|
253
262
|
if (payload === null) return null;
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
263
|
+
var condition = "";
|
|
264
|
+
for (var index = 0; index < modifiers.length; index++) {
|
|
265
|
+
if (index) condition += ":";
|
|
266
|
+
condition += modifiers[index];
|
|
267
|
+
}
|
|
268
|
+
return [
|
|
269
|
+
property,
|
|
270
|
+
payload,
|
|
271
|
+
condition,
|
|
272
|
+
modifiers
|
|
273
|
+
];
|
|
261
274
|
}
|
|
262
275
|
function computeClassPlan(cls, grammarConfig) {
|
|
263
276
|
var groupMarker = /^group(?:\/([A-Za-z0-9_-]+))?$/.exec(cls);
|
|
@@ -272,13 +285,9 @@ function computeClassPlan(cls, grammarConfig) {
|
|
|
272
285
|
var isSize = containerMarker[1] !== void 0;
|
|
273
286
|
var name = containerMarker[2];
|
|
274
287
|
var entries = [];
|
|
275
|
-
|
|
288
|
+
entries.push(["container", name || true]);
|
|
276
289
|
if (isSize) {
|
|
277
290
|
entries.push(["containerType", "size"]);
|
|
278
|
-
} else if (name) {
|
|
279
|
-
entries.push(["containerType", "inline-size"]);
|
|
280
|
-
} else {
|
|
281
|
-
entries.push(["container", true]);
|
|
282
291
|
}
|
|
283
292
|
return {
|
|
284
293
|
entries,
|
|
@@ -317,88 +326,66 @@ function computeClassPlan(cls, grammarConfig) {
|
|
|
317
326
|
}
|
|
318
327
|
return "raw";
|
|
319
328
|
}
|
|
320
|
-
|
|
321
|
-
function setInAuthoredOrder(target, key, value) {
|
|
322
|
-
if (key in target) delete target[key];
|
|
323
|
-
target[key] = value;
|
|
324
|
-
}
|
|
325
|
-
function preprocessTailwindClassName(props, config) {
|
|
326
|
-
var preservePassthroughPosition = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
|
|
327
|
-
var className = props.className;
|
|
328
|
-
if (!className || typeof className !== "string") {
|
|
329
|
-
return props;
|
|
330
|
-
}
|
|
331
|
-
var classes = className.split(/\s+/).filter(Boolean);
|
|
332
|
-
var result = {};
|
|
329
|
+
function getTailwindClassPlan(candidate, config) {
|
|
333
330
|
var grammarConfig = getStyleGrammarConfig(config);
|
|
334
331
|
var plans = getClassPlanCache(grammarConfig);
|
|
335
|
-
var
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
var
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
var
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
if (hasOwnedStyleCandidate) {
|
|
351
|
-
result[`${STYLE_FRONTEND_PASSTHROUGH_PREFIX}${passthroughIndex++}`] = cls2;
|
|
352
|
-
} else {
|
|
353
|
-
regularClasses.push(cls2);
|
|
354
|
-
}
|
|
355
|
-
};
|
|
356
|
-
var applyEntry = function(param) {
|
|
357
|
-
var [key2, value] = param;
|
|
358
|
-
if (key2 === null) {
|
|
359
|
-
result[`__tamagui_frontend_program_${frontendProgramIndex++}`] = value;
|
|
360
|
-
} else {
|
|
361
|
-
setInAuthoredOrder(result, key2, value);
|
|
362
|
-
}
|
|
363
|
-
};
|
|
364
|
-
for (var key in props) {
|
|
365
|
-
if (key !== "className") {
|
|
366
|
-
setInAuthoredOrder(result, key, props[key]);
|
|
332
|
+
var plan = plans.get(candidate);
|
|
333
|
+
if (plan === void 0) {
|
|
334
|
+
plan = computeClassPlan(candidate, grammarConfig);
|
|
335
|
+
plans.set(candidate, plan);
|
|
336
|
+
}
|
|
337
|
+
return plan;
|
|
338
|
+
}
|
|
339
|
+
function resolveTailwindClassName(className, config) {
|
|
340
|
+
var result = {};
|
|
341
|
+
var rawClassName = "";
|
|
342
|
+
var start = 0;
|
|
343
|
+
for (var index = 0; index <= className.length; index++) {
|
|
344
|
+
if (index !== className.length && className.charCodeAt(index) > 32) continue;
|
|
345
|
+
if (start === index) {
|
|
346
|
+
start = index + 1;
|
|
367
347
|
continue;
|
|
368
348
|
}
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
}
|
|
377
|
-
continue;
|
|
378
|
-
}
|
|
379
|
-
if (plan === "raw") {
|
|
380
|
-
preserveRawClass(cls);
|
|
381
|
-
continue;
|
|
349
|
+
var candidate = className.slice(start, index);
|
|
350
|
+
var plan = getTailwindClassPlan(candidate, config);
|
|
351
|
+
if (plan === "raw") {
|
|
352
|
+
rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;
|
|
353
|
+
} else if (plan) {
|
|
354
|
+
var parentPlan = plan;
|
|
355
|
+
if (!Array.isArray(plan) && parentPlan.preserveRawClass) {
|
|
356
|
+
rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;
|
|
382
357
|
}
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
358
|
+
var entries = Array.isArray(plan) ? plan : parentPlan.entries;
|
|
359
|
+
for (var entryIndex = 0; entryIndex < entries.length; entryIndex++) {
|
|
360
|
+
var [key, value, condition] = entries[entryIndex];
|
|
361
|
+
var previous = result[key];
|
|
362
|
+
var next = value;
|
|
363
|
+
if (condition !== void 0) {
|
|
364
|
+
next = previous && (typeof previous === "undefined" ? "undefined" : _type_of(previous)) === "object" && !Array.isArray(previous) ? {
|
|
365
|
+
...previous,
|
|
366
|
+
[condition]: value
|
|
367
|
+
} : previous === void 0 ? { [condition]: value } : {
|
|
368
|
+
default: previous,
|
|
369
|
+
[condition]: value
|
|
370
|
+
};
|
|
371
|
+
} else if (previous && (typeof previous === "undefined" ? "undefined" : _type_of(previous)) === "object" && !Array.isArray(previous)) {
|
|
372
|
+
next = {
|
|
373
|
+
...previous,
|
|
374
|
+
default: value
|
|
375
|
+
};
|
|
386
376
|
}
|
|
387
|
-
|
|
388
|
-
applyEntry(plan.entries[i]);
|
|
389
|
-
}
|
|
390
|
-
continue;
|
|
391
|
-
}
|
|
392
|
-
for (var i1 = 0; i1 < plan.length; i1++) {
|
|
393
|
-
applyEntry(plan[i1]);
|
|
377
|
+
setInAuthoredOrder(result, key, next);
|
|
394
378
|
}
|
|
395
379
|
}
|
|
396
|
-
|
|
397
|
-
result.className = regularClasses.join(" ");
|
|
398
|
-
}
|
|
380
|
+
start = index + 1;
|
|
399
381
|
}
|
|
382
|
+
if (rawClassName) result.className = rawClassName;
|
|
400
383
|
return result;
|
|
401
384
|
}
|
|
385
|
+
function setInAuthoredOrder(target, key, value) {
|
|
386
|
+
if (key in target) delete target[key];
|
|
387
|
+
target[key] = value;
|
|
388
|
+
}
|
|
402
389
|
|
|
403
|
-
export { getStyleGrammarConfig, isTokenValueProp,
|
|
390
|
+
export { getStyleGrammarConfig, getTailwindClassPlan, isTokenValueProp, resolveTailwindClassName, setInAuthoredOrder };
|
|
404
391
|
//# sourceMappingURL=candidate.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"candidate.native.js","names":[],"sources":["esm/candidate.native.js"],"sourcesContent":["import { isWeb } from \"@tamagui/constants\";\nimport { STYLE_FRONTEND_PASSTHROUGH_PREFIX, createFrontendProgram, plainValueToPayload } from \"@tamagui/core/internal-runtime\";\nimport { borderSideSuffix, classifyCandidate, createGrammarConfigView, decodeArbitrary, getTokenCategory, getSafeAreaEdge, percentUtilityProps, radiusCornerProps, splitColorOpacitySuffix } from \"@tamagui/style-grammar/runtime\";\nvar styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n var cached = styleGrammarConfigCache.get(config);\n if (cached) return cached;\n var view = createGrammarConfigView(config);\n styleGrammarConfigCache.set(config, view);\n return view;\n}\nfunction isTokenValueProp(prop) {\n return getTokenCategory(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n var 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 var 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 var inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = decodeArbitrary(raw.slice(1, -1));\n }\n var 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 var _parsed_entry;\n var prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix.startsWith(\"rounded-\")) {\n var props = radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n out[p] = value;\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 return out;\n }\n var m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n var sides = borderSideSuffix[m[1]];\n var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith(\"Width\")) ? \"Width\" : \"Color\";\n var out1 = {};\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var side = _step1.value;\n out1[`border${side}${suffix}`] = value;\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 return out1;\n}\nfunction tailwindClassToFlatProp(parsed) {\n var _parsed_prefix;\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n var prop = parsed.entry.prop;\n var category = parsed.entry.tokenCategory;\n var value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && ((_parsed_prefix = parsed.prefix) === null || _parsed_prefix === void 0 ? void 0 : _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 {\n key: prop,\n value\n };\n }\n if (prop === \"fontFamily\") {\n var famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = decodeArbitrary(value.slice(1, -1));\n } else {\n var 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 var 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 var lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var 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 var 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 var inner1 = decodeArbitrary(value.slice(1, -1));\n if (inner1 === \"\") return null;\n return {\n key: prop,\n value: arbitraryValue(inner1)\n };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n var sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return {\n key: prop,\n value: sized\n };\n }\n }\n var opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n var suffix = splitColorOpacitySuffix(value);\n if (suffix.kind === \"invalid\") {\n return {\n key: prop,\n value\n };\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 {\n key: prop,\n value\n };\n}\nvar classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n var 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 [\n property,\n value\n ];\n var payload = plainValueToPayload(value, property);\n if (payload === null) return null;\n return [\n null,\n createFrontendProgram(property, {\n base: null,\n clauses: [\n {\n modifiers,\n payload\n }\n ]\n })\n ];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n var groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [\n [\n \"group\",\n groupMarker[1] || true\n ]\n ],\n preserveRawClass: isWeb\n };\n }\n var containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n var isSize = containerMarker[1] !== void 0;\n var name = containerMarker[2];\n var entries = [];\n if (name) entries.push([\n \"containerName\",\n name\n ]);\n if (isSize) {\n entries.push([\n \"containerType\",\n \"size\"\n ]);\n } else if (name) {\n entries.push([\n \"containerType\",\n \"inline-size\"\n ]);\n } else {\n entries.push([\n \"container\",\n true\n ]);\n }\n return {\n entries,\n preserveRawClass: isWeb\n };\n }\n var classification = classifyCandidate(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return isWeb ? \"raw\" : null;\n }\n var parsed = classification.parsed;\n var util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n var entries1 = [];\n for (var p in util) {\n var entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries1.push(entry);\n }\n return entries1;\n }\n var flatProp = tailwindClassToFlatProp(parsed);\n if (flatProp) {\n var expanded = expandBorderCandidate(parsed, flatProp.value);\n if (expanded) {\n var entries2 = [];\n for (var p1 in expanded) {\n var entry1 = createPlanEntry(p1, expanded[p1], parsed.modifiers);\n if (!entry1) return \"raw\";\n entries2.push(entry1);\n }\n return entries2;\n }\n var entry2 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n return entry2 ? [\n entry2\n ] : \"raw\";\n }\n return \"raw\";\n}\nvar warnedNativePassthroughCandidates = /* @__PURE__ */ new Set();\nfunction setInAuthoredOrder(target, key, value) {\n if (key in target) delete target[key];\n target[key] = value;\n}\nfunction preprocessTailwindClassName(props, config) {\n var preservePassthroughPosition = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var className = props.className;\n if (!className || typeof className !== \"string\") {\n return props;\n }\n var classes = className.split(/\\s+/).filter(Boolean);\n var result = {};\n var grammarConfig = getStyleGrammarConfig(config);\n var plans = getClassPlanCache(grammarConfig);\n var classPlans = classes.map(function(cls2) {\n var plan2 = plans.get(cls2);\n if (plan2 === void 0) {\n plan2 = computeClassPlan(cls2, grammarConfig);\n plans.set(cls2, plan2);\n }\n return plan2;\n });\n var hasOwnedStyleCandidate = preservePassthroughPosition && classPlans.some(function(plan2) {\n return Array.isArray(plan2);\n });\n var frontendProgramIndex = 0;\n var passthroughIndex = 0;\n var regularClasses = [];\n var preserveRawClass = function(cls2) {\n if (hasOwnedStyleCandidate) {\n result[`${STYLE_FRONTEND_PASSTHROUGH_PREFIX}${passthroughIndex++}`] = cls2;\n } else {\n regularClasses.push(cls2);\n }\n };\n var applyEntry = function(param) {\n var [key2, value] = param;\n if (key2 === null) {\n result[`__tamagui_frontend_program_${frontendProgramIndex++}`] = value;\n } else {\n setInAuthoredOrder(result, key2, value);\n }\n };\n for (var key in props) {\n if (key !== \"className\") {\n setInAuthoredOrder(result, key, props[key]);\n continue;\n }\n for (var classIndex = 0; classIndex < classes.length; classIndex++) {\n var cls = classes[classIndex];\n var plan = classPlans[classIndex];\n if (plan === null) {\n if (process.env.NODE_ENV !== \"production\" && !warnedNativePassthroughCandidates.has(cls)) {\n warnedNativePassthroughCandidates.add(cls);\n console.warn(`[tamagui] Tailwind candidate \"${cls}\" is web-only and was dropped on native. Use a Tamagui grammar candidate or a native style prop for cross-platform output.`);\n }\n continue;\n }\n if (plan === \"raw\") {\n preserveRawClass(cls);\n continue;\n }\n if (!Array.isArray(plan)) {\n if (plan.preserveRawClass) {\n preserveRawClass(cls);\n }\n for (var i = 0; i < plan.entries.length; i++) {\n applyEntry(plan.entries[i]);\n }\n continue;\n }\n for (var i1 = 0; i1 < plan.length; i1++) {\n applyEntry(plan[i1]);\n }\n }\n if (regularClasses.length > 0) {\n result.className = regularClasses.join(\" \");\n }\n }\n return result;\n}\nexport {\n getStyleGrammarConfig,\n isTokenValueProp,\n preprocessTailwindClassName,\n setInAuthoredOrder\n};\n//# sourceMappingURL=candidate.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"candidate.native.js","names":[],"sources":["esm/candidate.native.js"],"sourcesContent":["import { isWeb } from \"@tamagui/constants\";\nimport { plainValueToPayload } from \"@tamagui/core/internal-runtime\";\nimport { borderSideSuffix, classifyCandidate, configRevisionSymbol, createGrammarConfigView, decodeArbitrary, getTokenCategory, getSafeAreaEdge, percentUtilityProps, radiusCornerProps, splitColorOpacitySuffix } from \"@tamagui/style-grammar/runtime\";\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar styleGrammarConfigCache = /* @__PURE__ */ new WeakMap();\nfunction getStyleGrammarConfig(config) {\n var _config_configRevisionSymbol;\n var cached = styleGrammarConfigCache.get(config);\n var revision = ((_config_configRevisionSymbol = config[configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;\n if (cached && cached.revision === revision) return cached.value;\n var view = createGrammarConfigView(config);\n styleGrammarConfigCache.set(config, {\n revision,\n value: view\n });\n return view;\n}\nfunction isTokenValueProp(prop) {\n return getTokenCategory(prop) !== null;\n}\nfunction arbitraryValue(inner) {\n var 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 var 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 var inner = raw;\n if (raw.length > 1 && raw[0] === \"[\" && raw[raw.length - 1] === \"]\") {\n inner = decodeArbitrary(raw.slice(1, -1));\n }\n var 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 var _parsed_entry;\n var prefix = parsed.prefix;\n if (!prefix) return null;\n if (prefix.startsWith(\"rounded-\")) {\n var props = radiusCornerProps[prefix.slice(\"rounded-\".length)];\n if (!props || props.length === 1) return null;\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = props[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n out[p] = value;\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 return out;\n }\n var m = /^border-([trblxy])$/.exec(prefix);\n if (!m) return null;\n var sides = borderSideSuffix[m[1]];\n var suffix = ((_parsed_entry = parsed.entry) === null || _parsed_entry === void 0 ? void 0 : _parsed_entry.prop.endsWith(\"Width\")) ? \"Width\" : \"Color\";\n var out1 = {};\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = sides[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var side = _step1.value;\n out1[`border${side}${suffix}`] = value;\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 return out1;\n}\nfunction tailwindClassToFlatProp(parsed) {\n var _parsed_prefix;\n if (parsed.kind !== \"dynamic\" || !parsed.entry || parsed.rawValue === void 0) {\n return null;\n }\n var prop = parsed.entry.prop;\n var category = parsed.entry.tokenCategory;\n var value = parsed.rawValue;\n if (prop.endsWith(\"Width\") && ((_parsed_prefix = parsed.prefix) === null || _parsed_prefix === void 0 ? void 0 : _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 {\n key: prop,\n value\n };\n }\n if (prop === \"fontFamily\") {\n var famValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n famValue = decodeArbitrary(value.slice(1, -1));\n } else {\n var 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 var 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 var lhValue;\n if (value.length > 2 && value[0] === \"[\" && value[value.length - 1] === \"]\") {\n var 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 var 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 var inner1 = decodeArbitrary(value.slice(1, -1));\n if (inner1 === \"\") return null;\n return {\n key: prop,\n value: arbitraryValue(inner1)\n };\n }\n if (category === \"size\" && parsed.valueKind !== \"token\") {\n var sized = tailwindSizingValue(prop, value);\n if (sized != null) {\n return {\n key: prop,\n value: sized\n };\n }\n }\n var opacitySuffix = \"\";\n if (category === \"color\" && typeof value === \"string\") {\n var suffix = splitColorOpacitySuffix(value);\n if (suffix.kind === \"invalid\") {\n return {\n key: prop,\n value\n };\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 {\n key: prop,\n value\n };\n}\nvar classPlanCache = /* @__PURE__ */ new WeakMap();\nfunction getClassPlanCache(grammarConfig) {\n var 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 [\n property,\n value\n ];\n var payload = plainValueToPayload(value, property);\n if (payload === null) return null;\n var condition = \"\";\n for (var index = 0; index < modifiers.length; index++) {\n if (index) condition += \":\";\n condition += modifiers[index];\n }\n return [\n property,\n payload,\n condition,\n modifiers\n ];\n}\nfunction computeClassPlan(cls, grammarConfig) {\n var groupMarker = /^group(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (groupMarker) {\n return {\n entries: [\n [\n \"group\",\n groupMarker[1] || true\n ]\n ],\n preserveRawClass: isWeb\n };\n }\n var containerMarker = /^@container(-size)?(?:\\/([A-Za-z0-9_-]+))?$/.exec(cls);\n if (containerMarker) {\n var isSize = containerMarker[1] !== void 0;\n var name = containerMarker[2];\n var entries = [];\n entries.push([\n \"container\",\n name || true\n ]);\n if (isSize) {\n entries.push([\n \"containerType\",\n \"size\"\n ]);\n }\n return {\n entries,\n preserveRawClass: isWeb\n };\n }\n var classification = classifyCandidate(cls, grammarConfig);\n if (classification.kind === \"passthrough\") {\n return isWeb ? \"raw\" : null;\n }\n var parsed = classification.parsed;\n var util = parsed.kind === \"utility\" ? parsed.properties : null;\n if (util) {\n var entries1 = [];\n for (var p in util) {\n var entry = createPlanEntry(p, util[p], parsed.modifiers);\n if (!entry) return \"raw\";\n entries1.push(entry);\n }\n return entries1;\n }\n var flatProp = tailwindClassToFlatProp(parsed);\n if (flatProp) {\n var expanded = expandBorderCandidate(parsed, flatProp.value);\n if (expanded) {\n var entries2 = [];\n for (var p1 in expanded) {\n var entry1 = createPlanEntry(p1, expanded[p1], parsed.modifiers);\n if (!entry1) return \"raw\";\n entries2.push(entry1);\n }\n return entries2;\n }\n var entry2 = createPlanEntry(flatProp.key, flatProp.value, parsed.modifiers);\n return entry2 ? [\n entry2\n ] : \"raw\";\n }\n return \"raw\";\n}\nfunction getTailwindClassPlan(candidate, config) {\n var grammarConfig = getStyleGrammarConfig(config);\n var plans = getClassPlanCache(grammarConfig);\n var 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 var result = {};\n var rawClassName = \"\";\n var start = 0;\n for (var 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 var candidate = className.slice(start, index);\n var plan = getTailwindClassPlan(candidate, config);\n if (plan === \"raw\") {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n } else if (plan) {\n var parentPlan = plan;\n if (!Array.isArray(plan) && parentPlan.preserveRawClass) {\n rawClassName = rawClassName ? `${rawClassName} ${candidate}` : candidate;\n }\n var entries = Array.isArray(plan) ? plan : parentPlan.entries;\n for (var entryIndex = 0; entryIndex < entries.length; entryIndex++) {\n var [key, value, condition] = entries[entryIndex];\n var previous = result[key];\n var next = value;\n if (condition !== void 0) {\n next = previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous) ? {\n ...previous,\n [condition]: value\n } : previous === void 0 ? {\n [condition]: value\n } : {\n default: previous,\n [condition]: value\n };\n } else if (previous && (typeof previous === \"undefined\" ? \"undefined\" : _type_of(previous)) === \"object\" && !Array.isArray(previous)) {\n next = {\n ...previous,\n default: value\n };\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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"}
|
package/dist/esm/frontend.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { configRevisionSymbol } from "@tamagui/style-grammar/runtime";
|
|
2
|
+
import { getTailwindClassPlan, resolveTailwindClassName } from "./candidate.mjs";
|
|
3
3
|
|
|
4
4
|
function parseStaticStyle(input, config) {
|
|
5
|
-
return
|
|
5
|
+
return resolveTailwindClassName(input, config);
|
|
6
6
|
}
|
|
7
7
|
const normalizedStaticConfigCache = /* @__PURE__ */ new WeakMap();
|
|
8
8
|
const normalizedStaticConfigs = /* @__PURE__ */ new WeakSet();
|
|
@@ -12,7 +12,8 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
12
12
|
}
|
|
13
13
|
let configCache = normalizedStaticConfigCache.get(staticConfig);
|
|
14
14
|
const cached = configCache?.get(config);
|
|
15
|
-
|
|
15
|
+
const revision = config[configRevisionSymbol]?.revision || 0;
|
|
16
|
+
if (cached && cached.revision === revision) return cached.value;
|
|
16
17
|
let variants = staticConfig.variants;
|
|
17
18
|
if (variants) {
|
|
18
19
|
variants = Object.fromEntries(Object.entries(variants).map(([variantName, definition]) => [variantName, typeof definition === "object" && definition ? Object.fromEntries(Object.entries(definition).map(([matcher, value]) => [matcher, typeof value === "string" ? parseStaticStyle(value, config) : value])) : definition]));
|
|
@@ -37,19 +38,15 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
37
38
|
};
|
|
38
39
|
normalizedStaticConfigs.add(normalized);
|
|
39
40
|
configCache ||= /* @__PURE__ */ new WeakMap();
|
|
40
|
-
configCache.set(config,
|
|
41
|
+
configCache.set(config, {
|
|
42
|
+
revision,
|
|
43
|
+
value: normalized
|
|
44
|
+
});
|
|
41
45
|
normalizedStaticConfigCache.set(staticConfig, configCache);
|
|
42
46
|
return normalized;
|
|
43
47
|
}
|
|
44
48
|
const tailwindStyleFrontend = {
|
|
45
|
-
|
|
46
|
-
const transformed = typeof props.className === "string" ? preprocessTailwindClassName(props, config, true) : props;
|
|
47
|
-
if (transformed !== props) {
|
|
48
|
-
;
|
|
49
|
-
transformed[STYLE_FRONTEND_PREPROCESSED] = true;
|
|
50
|
-
}
|
|
51
|
-
return transformed;
|
|
52
|
-
},
|
|
49
|
+
getClassPlan: getTailwindClassPlan,
|
|
53
50
|
normalizeStaticConfig: normalizeTailwindStaticConfig
|
|
54
51
|
};
|
|
55
52
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend.js","names":[],"sources":["esm/frontend.js"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"frontend.js","names":[],"sources":["esm/frontend.js"],"sourcesContent":["import { configRevisionSymbol } from \"@tamagui/style-grammar/runtime\";\nimport { getTailwindClassPlan, resolveTailwindClassName } from \"./candidate\";\nfunction parseStaticStyle(input, config) {\n return resolveTailwindClassName(input, config);\n}\nconst normalizedStaticConfigCache = /* @__PURE__ */ new WeakMap();\nconst normalizedStaticConfigs = /* @__PURE__ */ new WeakSet();\nfunction normalizeTailwindStaticConfig(staticConfig, config) {\n if (normalizedStaticConfigs.has(staticConfig)) {\n return staticConfig;\n }\n let configCache = normalizedStaticConfigCache.get(staticConfig);\n const cached = configCache?.get(config);\n const revision = config[configRevisionSymbol]?.revision || 0;\n if (cached && cached.revision === revision) return cached.value;\n let variants = staticConfig.variants;\n if (variants) {\n variants = Object.fromEntries(\n Object.entries(variants).map(([variantName, definition]) => [\n variantName,\n typeof definition === \"object\" && definition ? Object.fromEntries(\n Object.entries(definition).map(([matcher, value]) => [\n matcher,\n typeof value === \"string\" ? parseStaticStyle(value, config) : value\n ])\n ) : definition\n ])\n );\n }\n const compoundVariants = staticConfig.compoundVariants?.map((compoundVariant) => ({\n ...compoundVariant,\n style: typeof compoundVariant.style === \"string\" ? parseStaticStyle(compoundVariant.style, config) : compoundVariant.style\n }));\n let baseStyle = staticConfig.baseStyle;\n let passthroughClassName = staticConfig.passthroughClassName;\n if (staticConfig.baseClassName) {\n const { className, ...styles } = parseStaticStyle(staticConfig.baseClassName, config);\n baseStyle = styles;\n passthroughClassName = className;\n }\n const normalized = {\n ...staticConfig,\n baseStyle,\n passthroughClassName,\n variants,\n compoundVariants\n };\n normalizedStaticConfigs.add(normalized);\n configCache ||= /* @__PURE__ */ new WeakMap();\n configCache.set(config, { revision, value: normalized });\n normalizedStaticConfigCache.set(staticConfig, configCache);\n return normalized;\n}\nconst tailwindStyleFrontend = {\n getClassPlan: getTailwindClassPlan,\n normalizeStaticConfig: normalizeTailwindStaticConfig\n};\nexport {\n parseStaticStyle,\n tailwindStyleFrontend\n};\n//# sourceMappingURL=frontend.js.map\n"],"mappings":";;;;AAEA,SAAS,iBAAiB,OAAO,QAAQ;CACvC,OAAO,yBAAyB,OAAO,MAAM;AAC/C;AACA,MAAM,8CAA8C,IAAI,QAAQ;AAChE,MAAM,0CAA0C,IAAI,QAAQ;AAC5D,SAAS,8BAA8B,cAAc,QAAQ;CAC3D,IAAI,wBAAwB,IAAI,YAAY,GAAG;EAC7C,OAAO;CACT;CACA,IAAI,cAAc,4BAA4B,IAAI,YAAY;CAC9D,MAAM,SAAS,aAAa,IAAI,MAAM;CACtC,MAAM,WAAW,OAAO,qBAAqB,EAAE,YAAY;CAC3D,IAAI,UAAU,OAAO,aAAa,UAAU,OAAO,OAAO;CAC1D,IAAI,WAAW,aAAa;CAC5B,IAAI,UAAU;EACZ,WAAW,OAAO,YAChB,OAAO,QAAQ,QAAQ,CAAC,CAAC,KAAK,CAAC,aAAa,gBAAgB,CAC1D,aACA,OAAO,eAAe,YAAY,aAAa,OAAO,YACpD,OAAO,QAAQ,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,WAAW,CACnD,SACA,OAAO,UAAU,WAAW,iBAAiB,OAAO,MAAM,IAAI,KAChE,CAAC,CACH,IAAI,UACN,CAAC,CACH;CACF;CACA,MAAM,mBAAmB,aAAa,kBAAkB,KAAK,qBAAqB;EAChF,GAAG;EACH,OAAO,OAAO,gBAAgB,UAAU,WAAW,iBAAiB,gBAAgB,OAAO,MAAM,IAAI,gBAAgB;CACvH,EAAE;CACF,IAAI,YAAY,aAAa;CAC7B,IAAI,uBAAuB,aAAa;CACxC,IAAI,aAAa,eAAe;EAC9B,MAAM,EAAE,WAAW,GAAG,WAAW,iBAAiB,aAAa,eAAe,MAAM;EACpF,YAAY;EACZ,uBAAuB;CACzB;CACA,MAAM,aAAa;EACjB,GAAG;EACH;EACA;EACA;EACA;CACF;CACA,wBAAwB,IAAI,UAAU;CACtC,gCAAgC,IAAI,QAAQ;CAC5C,YAAY,IAAI,QAAQ;EAAE;EAAU,OAAO;CAAW,CAAC;CACvD,4BAA4B,IAAI,cAAc,WAAW;CACzD,OAAO;AACT;AACA,MAAM,wBAAwB;CAC5B,cAAc;CACd,uBAAuB;AACzB"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { configRevisionSymbol } from "@tamagui/style-grammar/runtime";
|
|
2
|
+
import { getTailwindClassPlan, resolveTailwindClassName } from "./candidate.native.js";
|
|
3
3
|
|
|
4
4
|
function _type_of(obj) {
|
|
5
5
|
"@swc/helpers - typeof";
|
|
6
6
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
7
7
|
}
|
|
8
8
|
function parseStaticStyle(input, config) {
|
|
9
|
-
return
|
|
9
|
+
return resolveTailwindClassName(input, config);
|
|
10
10
|
}
|
|
11
11
|
var normalizedStaticConfigCache = /* @__PURE__ */ new WeakMap();
|
|
12
12
|
var normalizedStaticConfigs = /* @__PURE__ */ new WeakSet();
|
|
13
13
|
function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
14
|
-
var _staticConfig_compoundVariants;
|
|
14
|
+
var _config_configRevisionSymbol, _staticConfig_compoundVariants;
|
|
15
15
|
if (normalizedStaticConfigs.has(staticConfig)) {
|
|
16
16
|
return staticConfig;
|
|
17
17
|
}
|
|
18
18
|
var configCache = normalizedStaticConfigCache.get(staticConfig);
|
|
19
19
|
var cached = configCache === null || configCache === void 0 ? void 0 : configCache.get(config);
|
|
20
|
-
|
|
20
|
+
var revision = ((_config_configRevisionSymbol = config[configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;
|
|
21
|
+
if (cached && cached.revision === revision) return cached.value;
|
|
21
22
|
var variants = staticConfig.variants;
|
|
22
23
|
if (variants) {
|
|
23
24
|
variants = Object.fromEntries(Object.entries(variants).map(function(param) {
|
|
@@ -50,19 +51,15 @@ function normalizeTailwindStaticConfig(staticConfig, config) {
|
|
|
50
51
|
};
|
|
51
52
|
normalizedStaticConfigs.add(normalized);
|
|
52
53
|
configCache || (configCache = /* @__PURE__ */ new WeakMap());
|
|
53
|
-
configCache.set(config,
|
|
54
|
+
configCache.set(config, {
|
|
55
|
+
revision,
|
|
56
|
+
value: normalized
|
|
57
|
+
});
|
|
54
58
|
normalizedStaticConfigCache.set(staticConfig, configCache);
|
|
55
59
|
return normalized;
|
|
56
60
|
}
|
|
57
61
|
var tailwindStyleFrontend = {
|
|
58
|
-
|
|
59
|
-
var transformed = typeof props.className === "string" ? preprocessTailwindClassName(props, config, true) : props;
|
|
60
|
-
if (transformed !== props) {
|
|
61
|
-
;
|
|
62
|
-
transformed[STYLE_FRONTEND_PREPROCESSED] = true;
|
|
63
|
-
}
|
|
64
|
-
return transformed;
|
|
65
|
-
},
|
|
62
|
+
getClassPlan: getTailwindClassPlan,
|
|
66
63
|
normalizeStaticConfig: normalizeTailwindStaticConfig
|
|
67
64
|
};
|
|
68
65
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend.native.js","names":[],"sources":["esm/frontend.native.js"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"frontend.native.js","names":[],"sources":["esm/frontend.native.js"],"sourcesContent":["import { configRevisionSymbol } from \"@tamagui/style-grammar/runtime\";\nimport { getTailwindClassPlan, resolveTailwindClassName } from \"./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 resolveTailwindClassName(input, config);\n}\nvar normalizedStaticConfigCache = /* @__PURE__ */ new WeakMap();\nvar normalizedStaticConfigs = /* @__PURE__ */ new WeakSet();\nfunction normalizeTailwindStaticConfig(staticConfig, config) {\n var _config_configRevisionSymbol, _staticConfig_compoundVariants;\n if (normalizedStaticConfigs.has(staticConfig)) {\n return staticConfig;\n }\n var configCache = normalizedStaticConfigCache.get(staticConfig);\n var cached = configCache === null || configCache === void 0 ? void 0 : configCache.get(config);\n var revision = ((_config_configRevisionSymbol = config[configRevisionSymbol]) === null || _config_configRevisionSymbol === void 0 ? void 0 : _config_configRevisionSymbol.revision) || 0;\n if (cached && cached.revision === revision) return cached.value;\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 compoundVariants = (_staticConfig_compoundVariants = staticConfig.compoundVariants) === null || _staticConfig_compoundVariants === void 0 ? void 0 : _staticConfig_compoundVariants.map(function(compoundVariant) {\n return {\n ...compoundVariant,\n style: typeof compoundVariant.style === \"string\" ? parseStaticStyle(compoundVariant.style, config) : compoundVariant.style\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 var normalized = {\n ...staticConfig,\n baseStyle,\n passthroughClassName,\n variants,\n compoundVariants\n };\n normalizedStaticConfigs.add(normalized);\n configCache || (configCache = /* @__PURE__ */ new WeakMap());\n configCache.set(config, {\n revision,\n value: normalized\n });\n normalizedStaticConfigCache.set(staticConfig, configCache);\n return normalized;\n}\nvar tailwindStyleFrontend = {\n getClassPlan: getTailwindClassPlan,\n normalizeStaticConfig: normalizeTailwindStaticConfig\n};\nexport {\n parseStaticStyle,\n tailwindStyleFrontend\n};\n//# sourceMappingURL=frontend.js.map\n"],"mappings":";;;;AAEA,SAAS,SAAS,KAAK;CACrB;CACA,OAAO,OAAO,OAAO,WAAW,eAAe,IAAI,gBAAgB,SAAS,WAAW,OAAO;AAChG;AACA,SAAS,iBAAiB,OAAO,QAAQ;CACvC,OAAO,yBAAyB,OAAO,MAAM;AAC/C;AACA,IAAI,8CAA8C,IAAI,QAAQ;AAC9D,IAAI,0CAA0C,IAAI,QAAQ;AAC1D,SAAS,8BAA8B,cAAc,QAAQ;CAC3D,IAAI,8BAA8B;CAClC,IAAI,wBAAwB,IAAI,YAAY,GAAG;EAC7C,OAAO;CACT;CACA,IAAI,cAAc,4BAA4B,IAAI,YAAY;CAC9D,IAAI,SAAS,gBAAgB,QAAQ,gBAAgB,KAAK,IAAI,KAAK,IAAI,YAAY,IAAI,MAAM;CAC7F,IAAI,aAAa,+BAA+B,OAAO,2BAA2B,QAAQ,iCAAiC,KAAK,IAAI,KAAK,IAAI,6BAA6B,aAAa;CACvL,IAAI,UAAU,OAAO,aAAa,UAAU,OAAO,OAAO;CAC1D,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,oBAAoB,iCAAiC,aAAa,sBAAsB,QAAQ,mCAAmC,KAAK,IAAI,KAAK,IAAI,+BAA+B,IAAI,SAAS,iBAAiB;EACpN,OAAO;GACL,GAAG;GACH,OAAO,OAAO,gBAAgB,UAAU,WAAW,iBAAiB,gBAAgB,OAAO,MAAM,IAAI,gBAAgB;EACvH;CACF,CAAC;CACD,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,IAAI,aAAa;EACf,GAAG;EACH;EACA;EACA;EACA;CACF;CACA,wBAAwB,IAAI,UAAU;CACtC,gBAAgB,8BAA8B,IAAI,QAAQ;CAC1D,YAAY,IAAI,QAAQ;EACtB;EACA,OAAO;CACT,CAAC;CACD,4BAA4B,IAAI,cAAc,WAAW;CACzD,OAAO;AACT;AACA,IAAI,wBAAwB;CAC1B,cAAc;CACd,uBAAuB;AACzB"}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { createFrontendViews } from "@tamagui/core/internal-runtime";
|
|
2
2
|
import { parseStaticStyle, tailwindStyleFrontend, tailwindStyleFrontend as tailwindStyleFrontend2 } from "./frontend.mjs";
|
|
3
3
|
import { styled } from "./styled.mjs";
|
|
4
|
-
import { preprocessTailwindClassName } from "./candidate.mjs";
|
|
5
4
|
|
|
6
5
|
const frontendViews = createFrontendViews(tailwindStyleFrontend);
|
|
7
6
|
const View = frontendViews.View;
|
|
8
7
|
const Text = frontendViews.Text;
|
|
9
8
|
|
|
10
|
-
export { Text, View, parseStaticStyle,
|
|
9
|
+
export { Text, View, parseStaticStyle, styled, tailwindStyleFrontend2 as tailwindStyleFrontend };
|
|
11
10
|
//# sourceMappingURL=index.mjs.map
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["esm/index.js"],"sourcesContent":["import { createFrontendViews } from \"@tamagui/core/internal-runtime\";\nimport { tailwindStyleFrontend } from \"./frontend\";\nimport { styled } from \"./styled\";\nimport { parseStaticStyle, tailwindStyleFrontend as tailwindStyleFrontend2 } from \"./frontend\";\
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["esm/index.js"],"sourcesContent":["import { createFrontendViews } from \"@tamagui/core/internal-runtime\";\nimport { tailwindStyleFrontend } from \"./frontend\";\nimport { styled } from \"./styled\";\nimport { parseStaticStyle, tailwindStyleFrontend as tailwindStyleFrontend2 } from \"./frontend\";\nconst frontendViews = createFrontendViews(tailwindStyleFrontend);\nconst View = frontendViews.View;\nconst Text = frontendViews.Text;\nexport {\n Text,\n View,\n parseStaticStyle,\n styled,\n tailwindStyleFrontend2 as tailwindStyleFrontend\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;;AAIA,MAAM,gBAAgB,oBAAoB,qBAAqB;AAC/D,MAAM,OAAO,cAAc;AAC3B,MAAM,OAAO,cAAc"}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { createFrontendViews } from "@tamagui/core/internal-runtime";
|
|
2
2
|
import { parseStaticStyle, tailwindStyleFrontend, tailwindStyleFrontend as tailwindStyleFrontend2 } from "./frontend.native.js";
|
|
3
3
|
import { styled } from "./styled.native.js";
|
|
4
|
-
import { preprocessTailwindClassName } from "./candidate.native.js";
|
|
5
4
|
|
|
6
5
|
var frontendViews = createFrontendViews(tailwindStyleFrontend);
|
|
7
6
|
var View = frontendViews.View;
|
|
8
7
|
var Text = frontendViews.Text;
|
|
9
8
|
|
|
10
|
-
export { Text, View, parseStaticStyle,
|
|
9
|
+
export { Text, View, parseStaticStyle, styled, tailwindStyleFrontend2 as tailwindStyleFrontend };
|
|
11
10
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","names":[],"sources":["esm/index.native.js"],"sourcesContent":["import { createFrontendViews } from \"@tamagui/core/internal-runtime\";\nimport { tailwindStyleFrontend } from \"./frontend\";\nimport { styled } from \"./styled\";\nimport { parseStaticStyle, tailwindStyleFrontend as tailwindStyleFrontend2 } from \"./frontend\";\
|
|
1
|
+
{"version":3,"file":"index.native.js","names":[],"sources":["esm/index.native.js"],"sourcesContent":["import { createFrontendViews } from \"@tamagui/core/internal-runtime\";\nimport { tailwindStyleFrontend } from \"./frontend\";\nimport { styled } from \"./styled\";\nimport { parseStaticStyle, tailwindStyleFrontend as tailwindStyleFrontend2 } from \"./frontend\";\nvar frontendViews = createFrontendViews(tailwindStyleFrontend);\nvar View = frontendViews.View;\nvar Text = frontendViews.Text;\nexport {\n Text,\n View,\n parseStaticStyle,\n styled,\n tailwindStyleFrontend2 as tailwindStyleFrontend\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;;AAIA,IAAI,gBAAgB,oBAAoB,qBAAqB;AAC7D,IAAI,OAAO,cAAc;AACzB,IAAI,OAAO,cAAc"}
|