@tamagui/style-grammar 0.0.0-bootstrap.0 → 3.0.0-beta.643.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +33 -1
- package/dist/cjs/backgroundFamily.cjs +176 -0
- package/dist/cjs/backgroundFamily.native.cjs +195 -0
- package/dist/cjs/backgroundFamily.native.js +197 -0
- package/dist/cjs/backgroundFamily.native.js.map +1 -0
- package/dist/cjs/borderFamily.cjs +169 -0
- package/dist/cjs/borderFamily.native.cjs +247 -0
- package/dist/cjs/borderFamily.native.js +249 -0
- package/dist/cjs/borderFamily.native.js.map +1 -0
- package/dist/cjs/candidate.cjs +608 -0
- package/dist/cjs/candidate.native.cjs +821 -0
- package/dist/cjs/candidate.native.js +823 -0
- package/dist/cjs/candidate.native.js.map +1 -0
- package/dist/cjs/candidateTarget.cjs +50 -0
- package/dist/cjs/candidateTarget.native.cjs +88 -0
- package/dist/cjs/candidateTarget.native.js +90 -0
- package/dist/cjs/candidateTarget.native.js.map +1 -0
- package/dist/cjs/clauseCapability.cjs +130 -0
- package/dist/cjs/clauseCapability.native.cjs +152 -0
- package/dist/cjs/clauseCapability.native.js +154 -0
- package/dist/cjs/clauseCapability.native.js.map +1 -0
- package/dist/cjs/clausePrecedence.cjs +153 -0
- package/dist/cjs/clausePrecedence.native.cjs +204 -0
- package/dist/cjs/clausePrecedence.native.js +206 -0
- package/dist/cjs/clausePrecedence.native.js.map +1 -0
- package/dist/cjs/clauseSources.cjs +47 -0
- package/dist/cjs/clauseSources.native.cjs +49 -0
- package/dist/cjs/clauseSources.native.js +51 -0
- package/dist/cjs/clauseSources.native.js.map +1 -0
- package/dist/cjs/config.cjs +130 -0
- package/dist/cjs/config.native.cjs +185 -0
- package/dist/cjs/config.native.js +187 -0
- package/dist/cjs/config.native.js.map +1 -0
- package/dist/cjs/evaluateProgram.cjs +65 -0
- package/dist/cjs/evaluateProgram.native.cjs +70 -0
- package/dist/cjs/evaluateProgram.native.js +72 -0
- package/dist/cjs/evaluateProgram.native.js.map +1 -0
- package/dist/cjs/fontShorthand.cjs +207 -0
- package/dist/cjs/fontShorthand.native.cjs +260 -0
- package/dist/cjs/fontShorthand.native.js +262 -0
- package/dist/cjs/fontShorthand.native.js.map +1 -0
- package/dist/cjs/geometricShorthand.cjs +122 -0
- package/dist/cjs/geometricShorthand.native.cjs +128 -0
- package/dist/cjs/geometricShorthand.native.js +130 -0
- package/dist/cjs/geometricShorthand.native.js.map +1 -0
- package/dist/cjs/index.cjs +19 -0
- package/dist/cjs/index.native.cjs +21 -0
- package/dist/cjs/index.native.js +23 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/lowerProgram.cjs +205 -0
- package/dist/cjs/lowerProgram.native.cjs +257 -0
- package/dist/cjs/lowerProgram.native.js +259 -0
- package/dist/cjs/lowerProgram.native.js.map +1 -0
- package/dist/cjs/mergeFlatValues.cjs +50 -0
- package/dist/cjs/mergeFlatValues.native.cjs +71 -0
- package/dist/cjs/mergeFlatValues.native.js +73 -0
- package/dist/cjs/mergeFlatValues.native.js.map +1 -0
- package/dist/cjs/modifierRegistry.cjs +246 -0
- package/dist/cjs/modifierRegistry.native.cjs +426 -0
- package/dist/cjs/modifierRegistry.native.js +428 -0
- package/dist/cjs/modifierRegistry.native.js.map +1 -0
- package/dist/cjs/payloadShape.cjs +69 -0
- package/dist/cjs/payloadShape.native.cjs +71 -0
- package/dist/cjs/payloadShape.native.js +73 -0
- package/dist/cjs/payloadShape.native.js.map +1 -0
- package/dist/cjs/programEligibility.cjs +46 -0
- package/dist/cjs/programEligibility.native.cjs +48 -0
- package/dist/cjs/programEligibility.native.js +50 -0
- package/dist/cjs/programEligibility.native.js.map +1 -0
- package/dist/cjs/programHash.cjs +86 -0
- package/dist/cjs/programHash.native.cjs +106 -0
- package/dist/cjs/programHash.native.js +108 -0
- package/dist/cjs/programHash.native.js.map +1 -0
- package/dist/cjs/programs.cjs +128 -0
- package/dist/cjs/programs.native.cjs +220 -0
- package/dist/cjs/programs.native.js +222 -0
- package/dist/cjs/programs.native.js.map +1 -0
- package/dist/cjs/registry.cjs +629 -0
- package/dist/cjs/registry.native.cjs +635 -0
- package/dist/cjs/registry.native.js +637 -0
- package/dist/cjs/registry.native.js.map +1 -0
- package/dist/cjs/resolvePayload.cjs +296 -0
- package/dist/cjs/resolvePayload.native.cjs +302 -0
- package/dist/cjs/resolvePayload.native.js +304 -0
- package/dist/cjs/resolvePayload.native.js.map +1 -0
- package/dist/cjs/runtime.cjs +50 -0
- package/dist/cjs/runtime.native.cjs +52 -0
- package/dist/cjs/runtime.native.js +54 -0
- package/dist/cjs/runtime.native.js.map +1 -0
- package/dist/cjs/safeAreaVariables.cjs +42 -0
- package/dist/cjs/safeAreaVariables.native.cjs +44 -0
- package/dist/cjs/safeAreaVariables.native.js +46 -0
- package/dist/cjs/safeAreaVariables.native.js.map +1 -0
- package/dist/cjs/scanFlatValue.cjs +181 -0
- package/dist/cjs/scanFlatValue.native.cjs +183 -0
- package/dist/cjs/scanFlatValue.native.js +185 -0
- package/dist/cjs/scanFlatValue.native.js.map +1 -0
- package/dist/cjs/serializePayload.cjs +149 -0
- package/dist/cjs/serializePayload.native.cjs +187 -0
- package/dist/cjs/serializePayload.native.js +189 -0
- package/dist/cjs/serializePayload.native.js.map +1 -0
- package/dist/cjs/stateModifiers.cjs +43 -0
- package/dist/cjs/stateModifiers.native.cjs +45 -0
- package/dist/cjs/stateModifiers.native.js +47 -0
- package/dist/cjs/stateModifiers.native.js.map +1 -0
- package/dist/cjs/states.cjs +97 -0
- package/dist/cjs/states.native.cjs +131 -0
- package/dist/cjs/states.native.js +133 -0
- package/dist/cjs/states.native.js.map +1 -0
- package/dist/cjs/table.cjs +54 -0
- package/dist/cjs/table.native.cjs +135 -0
- package/dist/cjs/table.native.js +137 -0
- package/dist/cjs/table.native.js.map +1 -0
- package/dist/cjs/textDecorationFamily.cjs +129 -0
- package/dist/cjs/textDecorationFamily.native.cjs +199 -0
- package/dist/cjs/textDecorationFamily.native.js +201 -0
- package/dist/cjs/textDecorationFamily.native.js.map +1 -0
- package/dist/cjs/tooling.cjs +26 -0
- package/dist/cjs/tooling.native.cjs +28 -0
- package/dist/cjs/tooling.native.js +30 -0
- package/dist/cjs/tooling.native.js.map +1 -0
- package/dist/cjs/toolingAnnotations.cjs +105 -0
- package/dist/cjs/toolingAnnotations.native.cjs +133 -0
- package/dist/cjs/toolingAnnotations.native.js +135 -0
- package/dist/cjs/toolingAnnotations.native.js.map +1 -0
- package/dist/cjs/toolingDiagnostics.cjs +459 -0
- package/dist/cjs/toolingDiagnostics.native.cjs +788 -0
- package/dist/cjs/toolingDiagnostics.native.js +790 -0
- package/dist/cjs/toolingDiagnostics.native.js.map +1 -0
- package/dist/cjs/toolingRegistry.cjs +159 -0
- package/dist/cjs/toolingRegistry.native.cjs +164 -0
- package/dist/cjs/toolingRegistry.native.js +166 -0
- package/dist/cjs/toolingRegistry.native.js.map +1 -0
- package/dist/cjs/transformFamily.cjs +425 -0
- package/dist/cjs/transformFamily.native.cjs +517 -0
- package/dist/cjs/transformFamily.native.js +519 -0
- package/dist/cjs/transformFamily.native.js.map +1 -0
- package/dist/cjs/transition.cjs +459 -0
- package/dist/cjs/transition.native.cjs +499 -0
- package/dist/cjs/transition.native.js +501 -0
- package/dist/cjs/transition.native.js.map +1 -0
- package/dist/cjs/transitionAlign.cjs +115 -0
- package/dist/cjs/transitionAlign.native.cjs +154 -0
- package/dist/cjs/transitionAlign.native.js +156 -0
- package/dist/cjs/transitionAlign.native.js.map +1 -0
- package/dist/cjs/transitionLegacy.cjs +217 -0
- package/dist/cjs/transitionLegacy.native.cjs +260 -0
- package/dist/cjs/transitionLegacy.native.js +262 -0
- package/dist/cjs/transitionLegacy.native.js.map +1 -0
- package/dist/cjs/transitionNative.cjs +281 -0
- package/dist/cjs/transitionNative.native.cjs +285 -0
- package/dist/cjs/transitionNative.native.js +287 -0
- package/dist/cjs/transitionNative.native.js.map +1 -0
- package/dist/cjs/unitlessNumbers.cjs +86 -0
- package/dist/cjs/unitlessNumbers.native.cjs +106 -0
- package/dist/cjs/unitlessNumbers.native.js +108 -0
- package/dist/cjs/unitlessNumbers.native.js.map +1 -0
- package/dist/cjs/v6ThemeNames.cjs +47 -0
- package/dist/cjs/v6ThemeNames.native.cjs +53 -0
- package/dist/cjs/v6ThemeNames.native.js +55 -0
- package/dist/cjs/v6ThemeNames.native.js.map +1 -0
- package/dist/cjs/valueParser.cjs +148 -0
- package/dist/cjs/valueParser.native.cjs +150 -0
- package/dist/cjs/valueParser.native.js +152 -0
- package/dist/cjs/valueParser.native.js.map +1 -0
- package/dist/cjs/valueTypes.cjs +38 -0
- package/dist/cjs/valueTypes.native.cjs +40 -0
- package/dist/cjs/valueTypes.native.js +42 -0
- package/dist/cjs/valueTypes.native.js.map +1 -0
- package/dist/esm/backgroundFamily.mjs +150 -0
- package/dist/esm/backgroundFamily.mjs.map +1 -0
- package/dist/esm/backgroundFamily.native.js +167 -0
- package/dist/esm/backgroundFamily.native.js.map +1 -0
- package/dist/esm/borderFamily.mjs +146 -0
- package/dist/esm/borderFamily.mjs.map +1 -0
- package/dist/esm/borderFamily.native.js +222 -0
- package/dist/esm/borderFamily.native.js.map +1 -0
- package/dist/esm/candidate.mjs +581 -0
- package/dist/esm/candidate.mjs.map +1 -0
- package/dist/esm/candidate.native.js +792 -0
- package/dist/esm/candidate.native.js.map +1 -0
- package/dist/esm/candidateTarget.mjs +29 -0
- package/dist/esm/candidateTarget.mjs.map +1 -0
- package/dist/esm/candidateTarget.native.js +65 -0
- package/dist/esm/candidateTarget.native.js.map +1 -0
- package/dist/esm/clauseCapability.mjs +107 -0
- package/dist/esm/clauseCapability.mjs.map +1 -0
- package/dist/esm/clauseCapability.native.js +127 -0
- package/dist/esm/clauseCapability.native.js.map +1 -0
- package/dist/esm/clausePrecedence.mjs +121 -0
- package/dist/esm/clausePrecedence.mjs.map +1 -0
- package/dist/esm/clausePrecedence.native.js +170 -0
- package/dist/esm/clausePrecedence.native.js.map +1 -0
- package/dist/esm/clauseSources.mjs +23 -0
- package/dist/esm/clauseSources.mjs.map +1 -0
- package/dist/esm/clauseSources.native.js +23 -0
- package/dist/esm/clauseSources.native.js.map +1 -0
- package/dist/esm/config.mjs +103 -0
- package/dist/esm/config.mjs.map +1 -0
- package/dist/esm/config.native.js +156 -0
- package/dist/esm/config.native.js.map +1 -0
- package/dist/esm/evaluateProgram.mjs +45 -0
- package/dist/esm/evaluateProgram.mjs.map +1 -0
- package/dist/esm/evaluateProgram.native.js +48 -0
- package/dist/esm/evaluateProgram.native.js.map +1 -0
- package/dist/esm/fontShorthand.mjs +184 -0
- package/dist/esm/fontShorthand.mjs.map +1 -0
- package/dist/esm/fontShorthand.native.js +235 -0
- package/dist/esm/fontShorthand.native.js.map +1 -0
- package/dist/esm/geometricShorthand.mjs +102 -0
- package/dist/esm/geometricShorthand.mjs.map +1 -0
- package/dist/esm/geometricShorthand.native.js +106 -0
- package/dist/esm/geometricShorthand.native.js.map +1 -0
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/index.native.js +1 -0
- package/dist/esm/lowerProgram.mjs +182 -0
- package/dist/esm/lowerProgram.mjs.map +1 -0
- package/dist/esm/lowerProgram.native.js +232 -0
- package/dist/esm/lowerProgram.native.js.map +1 -0
- package/dist/esm/mergeFlatValues.mjs +27 -0
- package/dist/esm/mergeFlatValues.mjs.map +1 -0
- package/dist/esm/mergeFlatValues.native.js +46 -0
- package/dist/esm/mergeFlatValues.native.js.map +1 -0
- package/dist/esm/modifierRegistry.mjs +219 -0
- package/dist/esm/modifierRegistry.mjs.map +1 -0
- package/dist/esm/modifierRegistry.native.js +397 -0
- package/dist/esm/modifierRegistry.native.js.map +1 -0
- package/dist/esm/payloadShape.mjs +49 -0
- package/dist/esm/payloadShape.mjs.map +1 -0
- package/dist/esm/payloadShape.native.js +49 -0
- package/dist/esm/payloadShape.native.js.map +1 -0
- package/dist/esm/programEligibility.mjs +22 -0
- package/dist/esm/programEligibility.mjs.map +1 -0
- package/dist/esm/programEligibility.native.js +22 -0
- package/dist/esm/programEligibility.native.js.map +1 -0
- package/dist/esm/programHash.mjs +62 -0
- package/dist/esm/programHash.mjs.map +1 -0
- package/dist/esm/programHash.native.js +80 -0
- package/dist/esm/programHash.native.js.map +1 -0
- package/dist/esm/programs.mjs +103 -0
- package/dist/esm/programs.mjs.map +1 -0
- package/dist/esm/programs.native.js +193 -0
- package/dist/esm/programs.native.js.map +1 -0
- package/dist/esm/registry.mjs +595 -0
- package/dist/esm/registry.mjs.map +1 -0
- package/dist/esm/registry.native.js +599 -0
- package/dist/esm/registry.native.js.map +1 -0
- package/dist/esm/resolvePayload.mjs +273 -0
- package/dist/esm/resolvePayload.mjs.map +1 -0
- package/dist/esm/resolvePayload.native.js +277 -0
- package/dist/esm/resolvePayload.native.js.map +1 -0
- package/dist/esm/runtime.mjs +63 -0
- package/dist/esm/runtime.native.js +63 -0
- package/dist/esm/safeAreaVariables.mjs +18 -0
- package/dist/esm/safeAreaVariables.mjs.map +1 -0
- package/dist/esm/safeAreaVariables.native.js +18 -0
- package/dist/esm/safeAreaVariables.native.js.map +1 -0
- package/dist/esm/scanFlatValue.mjs +160 -0
- package/dist/esm/scanFlatValue.mjs.map +1 -0
- package/dist/esm/scanFlatValue.native.js +160 -0
- package/dist/esm/scanFlatValue.native.js.map +1 -0
- package/dist/esm/serializePayload.mjs +125 -0
- package/dist/esm/serializePayload.mjs.map +1 -0
- package/dist/esm/serializePayload.native.js +161 -0
- package/dist/esm/serializePayload.native.js.map +1 -0
- package/dist/esm/stateModifiers.mjs +19 -0
- package/dist/esm/stateModifiers.mjs.map +1 -0
- package/dist/esm/stateModifiers.native.js +19 -0
- package/dist/esm/stateModifiers.native.js.map +1 -0
- package/dist/esm/states.mjs +69 -0
- package/dist/esm/states.mjs.map +1 -0
- package/dist/esm/states.native.js +101 -0
- package/dist/esm/states.native.js.map +1 -0
- package/dist/esm/table.mjs +31 -0
- package/dist/esm/table.mjs.map +1 -0
- package/dist/esm/table.native.js +110 -0
- package/dist/esm/table.native.js.map +1 -0
- package/dist/esm/textDecorationFamily.mjs +106 -0
- package/dist/esm/textDecorationFamily.mjs.map +1 -0
- package/dist/esm/textDecorationFamily.native.js +174 -0
- package/dist/esm/textDecorationFamily.native.js.map +1 -0
- package/dist/esm/tooling.mjs +15 -0
- package/dist/esm/tooling.native.js +15 -0
- package/dist/esm/toolingAnnotations.mjs +85 -0
- package/dist/esm/toolingAnnotations.mjs.map +1 -0
- package/dist/esm/toolingAnnotations.native.js +111 -0
- package/dist/esm/toolingAnnotations.native.js.map +1 -0
- package/dist/esm/toolingDiagnostics.mjs +428 -0
- package/dist/esm/toolingDiagnostics.mjs.map +1 -0
- package/dist/esm/toolingDiagnostics.native.js +755 -0
- package/dist/esm/toolingDiagnostics.native.js.map +1 -0
- package/dist/esm/toolingRegistry.mjs +135 -0
- package/dist/esm/toolingRegistry.mjs.map +1 -0
- package/dist/esm/toolingRegistry.native.js +138 -0
- package/dist/esm/toolingRegistry.native.js.map +1 -0
- package/dist/esm/transformFamily.mjs +392 -0
- package/dist/esm/transformFamily.mjs.map +1 -0
- package/dist/esm/transformFamily.native.js +482 -0
- package/dist/esm/transformFamily.native.js.map +1 -0
- package/dist/esm/transition.mjs +434 -0
- package/dist/esm/transition.mjs.map +1 -0
- package/dist/esm/transition.native.js +472 -0
- package/dist/esm/transition.native.js.map +1 -0
- package/dist/esm/transitionAlign.mjs +95 -0
- package/dist/esm/transitionAlign.mjs.map +1 -0
- package/dist/esm/transitionAlign.native.js +132 -0
- package/dist/esm/transitionAlign.native.js.map +1 -0
- package/dist/esm/transitionLegacy.mjs +197 -0
- package/dist/esm/transitionLegacy.mjs.map +1 -0
- package/dist/esm/transitionLegacy.native.js +238 -0
- package/dist/esm/transitionLegacy.native.js.map +1 -0
- package/dist/esm/transitionNative.mjs +257 -0
- package/dist/esm/transitionNative.mjs.map +1 -0
- package/dist/esm/transitionNative.native.js +259 -0
- package/dist/esm/transitionNative.native.js.map +1 -0
- package/dist/esm/unitlessNumbers.mjs +65 -0
- package/dist/esm/unitlessNumbers.mjs.map +1 -0
- package/dist/esm/unitlessNumbers.native.js +83 -0
- package/dist/esm/unitlessNumbers.native.js.map +1 -0
- package/dist/esm/v6ThemeNames.mjs +23 -0
- package/dist/esm/v6ThemeNames.mjs.map +1 -0
- package/dist/esm/v6ThemeNames.native.js +27 -0
- package/dist/esm/v6ThemeNames.native.js.map +1 -0
- package/dist/esm/valueParser.mjs +125 -0
- package/dist/esm/valueParser.mjs.map +1 -0
- package/dist/esm/valueParser.native.js +125 -0
- package/dist/esm/valueParser.native.js.map +1 -0
- package/dist/esm/valueTypes.mjs +14 -0
- package/dist/esm/valueTypes.mjs.map +1 -0
- package/dist/esm/valueTypes.native.js +14 -0
- package/dist/esm/valueTypes.native.js.map +1 -0
- package/package.json +98 -4
- package/src/backgroundFamily.ts +182 -0
- package/src/borderFamily.ts +172 -0
- package/src/candidate.ts +691 -0
- package/src/candidateTarget.ts +67 -0
- package/src/clauseCapability.ts +209 -0
- package/src/clausePrecedence.ts +198 -0
- package/src/clauseSources.ts +29 -0
- package/src/config.ts +169 -0
- package/src/evaluateProgram.ts +91 -0
- package/src/fontShorthand.ts +177 -0
- package/src/geometricShorthand.ts +105 -0
- package/src/index.ts +1 -0
- package/src/lowerProgram.ts +398 -0
- package/src/modifierRegistry.ts +340 -0
- package/src/payloadShape.ts +92 -0
- package/src/programEligibility.ts +46 -0
- package/src/programHash.ts +128 -0
- package/src/programs.ts +95 -0
- package/src/registry.ts +367 -0
- package/src/resolvePayload.ts +480 -0
- package/src/runtime.ts +32 -0
- package/src/safeAreaVariables.ts +19 -0
- package/src/scanFlatValue.ts +327 -0
- package/src/serializePayload.ts +199 -0
- package/src/stateModifiers.ts +36 -0
- package/src/states.ts +128 -0
- package/src/table.ts +47 -0
- package/src/textDecorationFamily.ts +119 -0
- package/src/tooling.ts +8 -0
- package/src/toolingAnnotations.ts +151 -0
- package/src/toolingDiagnostics.ts +735 -0
- package/src/toolingRegistry.ts +130 -0
- package/src/transformFamily.ts +590 -0
- package/src/transition.ts +553 -0
- package/src/transitionAlign.ts +165 -0
- package/src/transitionLegacy.ts +237 -0
- package/src/transitionNative.ts +357 -0
- package/src/unitlessNumbers.ts +61 -0
- package/src/v6ThemeNames.ts +40 -0
- package/src/valueParser.ts +193 -0
- package/src/valueTypes.ts +136 -0
- package/types/backgroundFamily.d.ts +17 -0
- package/types/backgroundFamily.d.ts.map +11 -0
- package/types/borderFamily.d.ts +23 -0
- package/types/borderFamily.d.ts.map +11 -0
- package/types/candidate.d.ts +52 -0
- package/types/candidate.d.ts.map +11 -0
- package/types/candidateTarget.d.ts +32 -0
- package/types/candidateTarget.d.ts.map +11 -0
- package/types/clauseCapability.d.ts +69 -0
- package/types/clauseCapability.d.ts.map +11 -0
- package/types/clausePrecedence.d.ts +30 -0
- package/types/clausePrecedence.d.ts.map +11 -0
- package/types/clauseSources.d.ts +12 -0
- package/types/clauseSources.d.ts.map +11 -0
- package/types/config.d.ts +44 -0
- package/types/config.d.ts.map +11 -0
- package/types/evaluateProgram.d.ts +27 -0
- package/types/evaluateProgram.d.ts.map +11 -0
- package/types/fontShorthand.d.ts +25 -0
- package/types/fontShorthand.d.ts.map +11 -0
- package/types/geometricShorthand.d.ts +21 -0
- package/types/geometricShorthand.d.ts.map +11 -0
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +11 -0
- package/types/lowerProgram.d.ts +73 -0
- package/types/lowerProgram.d.ts.map +11 -0
- package/types/mergeFlatValues.d.ts +14 -0
- package/types/mergeFlatValues.d.ts.map +11 -0
- package/types/modifierRegistry.d.ts +70 -0
- package/types/modifierRegistry.d.ts.map +11 -0
- package/types/payloadShape.d.ts +15 -0
- package/types/payloadShape.d.ts.map +11 -0
- package/types/programEligibility.d.ts +23 -0
- package/types/programEligibility.d.ts.map +11 -0
- package/types/programHash.d.ts +20 -0
- package/types/programHash.d.ts.map +11 -0
- package/types/programs.d.ts +18 -0
- package/types/programs.d.ts.map +11 -0
- package/types/registry.d.ts +24 -0
- package/types/registry.d.ts.map +11 -0
- package/types/resolvePayload.d.ts +75 -0
- package/types/resolvePayload.d.ts.map +11 -0
- package/types/runtime.d.ts +34 -0
- package/types/runtime.d.ts.map +11 -0
- package/types/safeAreaVariables.d.ts +5 -0
- package/types/safeAreaVariables.d.ts.map +11 -0
- package/types/scanFlatValue.d.ts +29 -0
- package/types/scanFlatValue.d.ts.map +11 -0
- package/types/serializePayload.d.ts +13 -0
- package/types/serializePayload.d.ts.map +11 -0
- package/types/stateModifiers.d.ts +14 -0
- package/types/stateModifiers.d.ts.map +11 -0
- package/types/states.d.ts +22 -0
- package/types/states.d.ts.map +11 -0
- package/types/table.d.ts +4 -0
- package/types/table.d.ts.map +11 -0
- package/types/textDecorationFamily.d.ts +23 -0
- package/types/textDecorationFamily.d.ts.map +11 -0
- package/types/tooling.d.ts +10 -0
- package/types/tooling.d.ts.map +11 -0
- package/types/toolingAnnotations.d.ts +29 -0
- package/types/toolingAnnotations.d.ts.map +11 -0
- package/types/toolingDiagnostics.d.ts +114 -0
- package/types/toolingDiagnostics.d.ts.map +11 -0
- package/types/toolingRegistry.d.ts +10 -0
- package/types/toolingRegistry.d.ts.map +11 -0
- package/types/transformFamily.d.ts +83 -0
- package/types/transformFamily.d.ts.map +11 -0
- package/types/transition.d.ts +65 -0
- package/types/transition.d.ts.map +11 -0
- package/types/transitionAlign.d.ts +15 -0
- package/types/transitionAlign.d.ts.map +11 -0
- package/types/transitionLegacy.d.ts +9 -0
- package/types/transitionLegacy.d.ts.map +11 -0
- package/types/transitionNative.d.ts +41 -0
- package/types/transitionNative.d.ts.map +11 -0
- package/types/unitlessNumbers.d.ts +3 -0
- package/types/unitlessNumbers.d.ts.map +11 -0
- package/types/v6ThemeNames.d.ts +7 -0
- package/types/v6ThemeNames.d.ts.map +11 -0
- package/types/valueParser.d.ts +36 -0
- package/types/valueParser.d.ts.map +11 -0
- package/types/valueTypes.d.ts +66 -0
- package/types/valueTypes.d.ts.map +11 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export * from "./backgroundFamily.native.js"
|
|
2
|
+
|
|
3
|
+
export * from "./borderFamily.native.js"
|
|
4
|
+
|
|
5
|
+
export * from "./candidate.native.js"
|
|
6
|
+
|
|
7
|
+
export * from "./candidateTarget.native.js"
|
|
8
|
+
|
|
9
|
+
export * from "./clausePrecedence.native.js"
|
|
10
|
+
|
|
11
|
+
export * from "./clauseSources.native.js"
|
|
12
|
+
|
|
13
|
+
export * from "./config.native.js"
|
|
14
|
+
|
|
15
|
+
export * from "./evaluateProgram.native.js"
|
|
16
|
+
|
|
17
|
+
export * from "./fontShorthand.native.js"
|
|
18
|
+
|
|
19
|
+
export * from "./geometricShorthand.native.js"
|
|
20
|
+
|
|
21
|
+
export * from "./lowerProgram.native.js"
|
|
22
|
+
|
|
23
|
+
export * from "./mergeFlatValues.native.js"
|
|
24
|
+
|
|
25
|
+
export * from "./modifierRegistry.native.js"
|
|
26
|
+
|
|
27
|
+
export * from "./payloadShape.native.js"
|
|
28
|
+
|
|
29
|
+
export * from "./programEligibility.native.js"
|
|
30
|
+
|
|
31
|
+
export * from "./programHash.native.js"
|
|
32
|
+
|
|
33
|
+
export * from "./programs.native.js"
|
|
34
|
+
|
|
35
|
+
export * from "./registry.native.js"
|
|
36
|
+
|
|
37
|
+
export * from "./resolvePayload.native.js"
|
|
38
|
+
|
|
39
|
+
export * from "./safeAreaVariables.native.js"
|
|
40
|
+
|
|
41
|
+
export * from "./scanFlatValue.native.js"
|
|
42
|
+
|
|
43
|
+
export * from "./stateModifiers.native.js"
|
|
44
|
+
|
|
45
|
+
export * from "./serializePayload.native.js"
|
|
46
|
+
|
|
47
|
+
export * from "./states.native.js"
|
|
48
|
+
|
|
49
|
+
export * from "./textDecorationFamily.native.js"
|
|
50
|
+
|
|
51
|
+
export * from "./transformFamily.native.js"
|
|
52
|
+
|
|
53
|
+
export * from "./transition.native.js"
|
|
54
|
+
|
|
55
|
+
export * from "./transitionAlign.native.js"
|
|
56
|
+
|
|
57
|
+
export * from "./transitionNative.native.js"
|
|
58
|
+
|
|
59
|
+
export * from "./valueParser.native.js"
|
|
60
|
+
|
|
61
|
+
export * from "./valueTypes.native.js"
|
|
62
|
+
|
|
63
|
+
export * from "./unitlessNumbers.native.js"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const safeAreaVariableNames = {
|
|
2
|
+
top: "safe-area-top",
|
|
3
|
+
right: "safe-area-right",
|
|
4
|
+
bottom: "safe-area-bottom",
|
|
5
|
+
left: "safe-area-left"
|
|
6
|
+
};
|
|
7
|
+
const safeAreaEdges = {
|
|
8
|
+
[safeAreaVariableNames.top]: "top",
|
|
9
|
+
[safeAreaVariableNames.right]: "right",
|
|
10
|
+
[safeAreaVariableNames.bottom]: "bottom",
|
|
11
|
+
[safeAreaVariableNames.left]: "left"
|
|
12
|
+
};
|
|
13
|
+
function getSafeAreaEdge(name) {
|
|
14
|
+
return safeAreaEdges[name];
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { getSafeAreaEdge, safeAreaVariableNames };
|
|
18
|
+
//# sourceMappingURL=safeAreaVariables.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeAreaVariables.js","names":[],"sources":["esm/safeAreaVariables.js"],"sourcesContent":["const safeAreaVariableNames = {\n top: \"safe-area-top\",\n right: \"safe-area-right\",\n bottom: \"safe-area-bottom\",\n left: \"safe-area-left\"\n};\nconst safeAreaEdges = {\n [safeAreaVariableNames.top]: \"top\",\n [safeAreaVariableNames.right]: \"right\",\n [safeAreaVariableNames.bottom]: \"bottom\",\n [safeAreaVariableNames.left]: \"left\"\n};\nfunction getSafeAreaEdge(name) {\n return safeAreaEdges[name];\n}\nexport {\n getSafeAreaEdge,\n safeAreaVariableNames\n};\n//# sourceMappingURL=safeAreaVariables.js.map\n"],"mappings":";AAAA,MAAM,wBAAwB;CAC5B,KAAK;CACL,OAAO;CACP,QAAQ;CACR,MAAM;AACR;AACA,MAAM,gBAAgB;EACnB,sBAAsB,MAAM;EAC5B,sBAAsB,QAAQ;EAC9B,sBAAsB,SAAS;EAC/B,sBAAsB,OAAO;AAChC;AACA,SAAS,gBAAgB,MAAM;CAC7B,OAAO,cAAc;AACvB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var safeAreaVariableNames = {
|
|
2
|
+
top: "safe-area-top",
|
|
3
|
+
right: "safe-area-right",
|
|
4
|
+
bottom: "safe-area-bottom",
|
|
5
|
+
left: "safe-area-left"
|
|
6
|
+
};
|
|
7
|
+
var safeAreaEdges = {
|
|
8
|
+
[safeAreaVariableNames.top]: "top",
|
|
9
|
+
[safeAreaVariableNames.right]: "right",
|
|
10
|
+
[safeAreaVariableNames.bottom]: "bottom",
|
|
11
|
+
[safeAreaVariableNames.left]: "left"
|
|
12
|
+
};
|
|
13
|
+
function getSafeAreaEdge(name) {
|
|
14
|
+
return safeAreaEdges[name];
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { getSafeAreaEdge, safeAreaVariableNames };
|
|
18
|
+
//# sourceMappingURL=safeAreaVariables.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeAreaVariables.native.js","names":[],"sources":["esm/safeAreaVariables.native.js"],"sourcesContent":["var safeAreaVariableNames = {\n top: \"safe-area-top\",\n right: \"safe-area-right\",\n bottom: \"safe-area-bottom\",\n left: \"safe-area-left\"\n};\nvar safeAreaEdges = {\n [safeAreaVariableNames.top]: \"top\",\n [safeAreaVariableNames.right]: \"right\",\n [safeAreaVariableNames.bottom]: \"bottom\",\n [safeAreaVariableNames.left]: \"left\"\n};\nfunction getSafeAreaEdge(name) {\n return safeAreaEdges[name];\n}\nexport {\n getSafeAreaEdge,\n safeAreaVariableNames\n};\n//# sourceMappingURL=safeAreaVariables.js.map\n"],"mappings":";AAAA,IAAI,wBAAwB;CAC1B,KAAK;CACL,OAAO;CACP,QAAQ;CACR,MAAM;AACR;AACA,IAAI,gBAAgB;EACjB,sBAAsB,MAAM;EAC5B,sBAAsB,QAAQ;EAC9B,sBAAsB,SAAS;EAC/B,sBAAsB,OAAO;AAChC;AACA,SAAS,gBAAgB,MAAM;CAC7B,OAAO,cAAc;AACvB"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
const CHAR_TAB = 9;
|
|
2
|
+
const CHAR_LF = 10;
|
|
3
|
+
const CHAR_FF = 12;
|
|
4
|
+
const CHAR_CR = 13;
|
|
5
|
+
const CHAR_SPACE = 32;
|
|
6
|
+
const CHAR_DOUBLE_QUOTE = 34;
|
|
7
|
+
const CHAR_SINGLE_QUOTE = 39;
|
|
8
|
+
const CHAR_PAREN_OPEN = 40;
|
|
9
|
+
const CHAR_PAREN_CLOSE = 41;
|
|
10
|
+
const CHAR_STAR = 42;
|
|
11
|
+
const CHAR_SLASH = 47;
|
|
12
|
+
const CHAR_SEMICOLON = 59;
|
|
13
|
+
const CHAR_COLON = 58;
|
|
14
|
+
const CHAR_BACKSLASH = 92;
|
|
15
|
+
const CHAR_BRACE_OPEN = 123;
|
|
16
|
+
const CHAR_BRACE_CLOSE = 125;
|
|
17
|
+
function isWhitespace(code) {
|
|
18
|
+
return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;
|
|
19
|
+
}
|
|
20
|
+
function opensUrlToken(source, index) {
|
|
21
|
+
if (index < 3) return false;
|
|
22
|
+
if ((source.charCodeAt(index - 3) | 32) !== 117 || (source.charCodeAt(index - 2) | 32) !== 114 || (source.charCodeAt(index - 1) | 32) !== 108) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
const before = index > 3 ? source.charCodeAt(index - 4) : 0;
|
|
26
|
+
if (before === 45 || before === 95 || before >= 128 || before >= 48 && before <= 57 || before >= 65 && before <= 90 || before >= 97 && before <= 122) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
let next = index + 1;
|
|
30
|
+
while (next < source.length && source.charCodeAt(next) <= 32) next++;
|
|
31
|
+
const quote = source.charCodeAt(next);
|
|
32
|
+
return quote !== CHAR_DOUBLE_QUOTE && quote !== CHAR_SINGLE_QUOTE;
|
|
33
|
+
}
|
|
34
|
+
function closeSegment(source, visitor, segmentStart, end, isBase) {
|
|
35
|
+
let start = segmentStart;
|
|
36
|
+
let stop = end;
|
|
37
|
+
while (start < stop && isWhitespace(source.charCodeAt(start))) start++;
|
|
38
|
+
while (stop > start && isWhitespace(source.charCodeAt(stop - 1))) stop--;
|
|
39
|
+
visitor.segment(start, stop, isBase);
|
|
40
|
+
}
|
|
41
|
+
function scanFlatValue(source, visitor) {
|
|
42
|
+
const length = source.length;
|
|
43
|
+
let failure = null;
|
|
44
|
+
let sawChain = false;
|
|
45
|
+
let segmentStart = 0;
|
|
46
|
+
let comment = false;
|
|
47
|
+
let commentStart = -1;
|
|
48
|
+
let quote = 0;
|
|
49
|
+
let quoteStart = -1;
|
|
50
|
+
let url = false;
|
|
51
|
+
let depth = 0;
|
|
52
|
+
let parenStart = -1;
|
|
53
|
+
let wordStart = -1;
|
|
54
|
+
let lastColon = -1;
|
|
55
|
+
for (let index = 0; index < length; index++) {
|
|
56
|
+
const code = source.charCodeAt(index);
|
|
57
|
+
if (comment) {
|
|
58
|
+
if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {
|
|
59
|
+
comment = false;
|
|
60
|
+
index++;
|
|
61
|
+
}
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (quote !== 0) {
|
|
65
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
66
|
+
else if (code === quote) quote = 0;
|
|
67
|
+
else if (code === CHAR_LF || code === CHAR_CR || code === CHAR_FF) {
|
|
68
|
+
if (failure === null) failure = "unterminated-string";
|
|
69
|
+
if (visitor.error !== void 0) visitor.error("unterminated-string", quoteStart);
|
|
70
|
+
quote = 0;
|
|
71
|
+
index--;
|
|
72
|
+
}
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
if (url) {
|
|
76
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
77
|
+
else if (code === CHAR_PAREN_CLOSE) {
|
|
78
|
+
url = false;
|
|
79
|
+
depth--;
|
|
80
|
+
}
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
if (code === CHAR_SLASH && source.charCodeAt(index + 1) === CHAR_STAR) {
|
|
84
|
+
comment = true;
|
|
85
|
+
commentStart = index;
|
|
86
|
+
index++;
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {
|
|
90
|
+
if (failure === null) failure = "stray-comment-close";
|
|
91
|
+
if (visitor.error !== void 0) visitor.error("stray-comment-close", index);
|
|
92
|
+
index++;
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if (depth > 0) {
|
|
96
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
97
|
+
else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {
|
|
98
|
+
quote = code;
|
|
99
|
+
quoteStart = index;
|
|
100
|
+
} else if (code === CHAR_PAREN_OPEN) {
|
|
101
|
+
if (opensUrlToken(source, index)) url = true;
|
|
102
|
+
depth++;
|
|
103
|
+
} else if (code === CHAR_PAREN_CLOSE) depth--;
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
if (isWhitespace(code)) {
|
|
107
|
+
if (wordStart !== -1) {
|
|
108
|
+
if (visitor.word !== void 0) visitor.word(wordStart, index, lastColon !== -1);
|
|
109
|
+
if (lastColon !== -1) {
|
|
110
|
+
closeSegment(source, visitor, segmentStart, wordStart, !sawChain);
|
|
111
|
+
if (!visitor.chain(wordStart, lastColon)) return "refused-chain";
|
|
112
|
+
sawChain = true;
|
|
113
|
+
segmentStart = lastColon + 1;
|
|
114
|
+
}
|
|
115
|
+
wordStart = -1;
|
|
116
|
+
lastColon = -1;
|
|
117
|
+
}
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
if (wordStart === -1) wordStart = index;
|
|
121
|
+
if (code === CHAR_BRACE_OPEN || code === CHAR_BRACE_CLOSE || code === CHAR_SEMICOLON) {
|
|
122
|
+
if (failure === null) failure = "invalid-character";
|
|
123
|
+
if (visitor.error !== void 0) visitor.error("invalid-character", index);
|
|
124
|
+
} else if (code === CHAR_BACKSLASH) index++;
|
|
125
|
+
else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {
|
|
126
|
+
quote = code;
|
|
127
|
+
quoteStart = index;
|
|
128
|
+
} else if (code === CHAR_PAREN_OPEN) {
|
|
129
|
+
if (opensUrlToken(source, index)) url = true;
|
|
130
|
+
depth = 1;
|
|
131
|
+
parenStart = index;
|
|
132
|
+
} else if (code === CHAR_COLON) lastColon = index;
|
|
133
|
+
}
|
|
134
|
+
if (comment) {
|
|
135
|
+
if (failure === null) failure = "unterminated-comment";
|
|
136
|
+
if (visitor.error !== void 0) visitor.error("unterminated-comment", commentStart);
|
|
137
|
+
}
|
|
138
|
+
if (quote !== 0) {
|
|
139
|
+
if (failure === null) failure = "unterminated-string";
|
|
140
|
+
if (visitor.error !== void 0) visitor.error("unterminated-string", quoteStart);
|
|
141
|
+
}
|
|
142
|
+
if (depth > 0) {
|
|
143
|
+
if (failure === null) failure = "unterminated-function";
|
|
144
|
+
if (visitor.error !== void 0) visitor.error("unterminated-function", parenStart);
|
|
145
|
+
}
|
|
146
|
+
if (wordStart !== -1) {
|
|
147
|
+
if (visitor.word !== void 0) visitor.word(wordStart, length, lastColon !== -1);
|
|
148
|
+
if (lastColon !== -1) {
|
|
149
|
+
closeSegment(source, visitor, segmentStart, wordStart, !sawChain);
|
|
150
|
+
if (!visitor.chain(wordStart, lastColon)) return "refused-chain";
|
|
151
|
+
sawChain = true;
|
|
152
|
+
segmentStart = lastColon + 1;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
closeSegment(source, visitor, segmentStart, length, !sawChain);
|
|
156
|
+
return failure;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export { scanFlatValue };
|
|
160
|
+
//# sourceMappingURL=scanFlatValue.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanFlatValue.js","names":[],"sources":["esm/scanFlatValue.js"],"sourcesContent":["const CHAR_TAB = 9;\nconst CHAR_LF = 10;\nconst CHAR_FF = 12;\nconst CHAR_CR = 13;\nconst CHAR_SPACE = 32;\nconst CHAR_DOUBLE_QUOTE = 34;\nconst CHAR_SINGLE_QUOTE = 39;\nconst CHAR_PAREN_OPEN = 40;\nconst CHAR_PAREN_CLOSE = 41;\nconst CHAR_STAR = 42;\nconst CHAR_SLASH = 47;\nconst CHAR_SEMICOLON = 59;\nconst CHAR_COLON = 58;\nconst CHAR_BACKSLASH = 92;\nconst CHAR_BRACE_OPEN = 123;\nconst CHAR_BRACE_CLOSE = 125;\nfunction isWhitespace(code) {\n return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;\n}\nfunction opensUrlToken(source, index) {\n if (index < 3) return false;\n if ((source.charCodeAt(index - 3) | 32) !== 117 || (source.charCodeAt(index - 2) | 32) !== 114 || (source.charCodeAt(index - 1) | 32) !== 108) {\n return false;\n }\n const before = index > 3 ? source.charCodeAt(index - 4) : 0;\n if (before === 45 || before === 95 || before >= 128 || before >= 48 && before <= 57 || before >= 65 && before <= 90 || before >= 97 && before <= 122) {\n return false;\n }\n let next = index + 1;\n while (next < source.length && source.charCodeAt(next) <= 32) next++;\n const quote = source.charCodeAt(next);\n return quote !== CHAR_DOUBLE_QUOTE && quote !== CHAR_SINGLE_QUOTE;\n}\nfunction closeSegment(source, visitor, segmentStart, end, isBase) {\n let start = segmentStart;\n let stop = end;\n while (start < stop && isWhitespace(source.charCodeAt(start))) start++;\n while (stop > start && isWhitespace(source.charCodeAt(stop - 1))) stop--;\n visitor.segment(start, stop, isBase);\n}\nfunction scanFlatValue(source, visitor) {\n const length = source.length;\n let failure = null;\n let sawChain = false;\n let segmentStart = 0;\n let comment = false;\n let commentStart = -1;\n let quote = 0;\n let quoteStart = -1;\n let url = false;\n let depth = 0;\n let parenStart = -1;\n let wordStart = -1;\n let lastColon = -1;\n for (let index = 0; index < length; index++) {\n const code = source.charCodeAt(index);\n if (comment) {\n if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {\n comment = false;\n index++;\n }\n continue;\n }\n if (quote !== 0) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === quote) quote = 0;\n else if (code === CHAR_LF || code === CHAR_CR || code === CHAR_FF) {\n if (failure === null) failure = \"unterminated-string\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-string\", quoteStart);\n quote = 0;\n index--;\n }\n continue;\n }\n if (url) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_PAREN_CLOSE) {\n url = false;\n depth--;\n }\n continue;\n }\n if (code === CHAR_SLASH && source.charCodeAt(index + 1) === CHAR_STAR) {\n comment = true;\n commentStart = index;\n index++;\n continue;\n }\n if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {\n if (failure === null) failure = \"stray-comment-close\";\n if (visitor.error !== void 0) visitor.error(\"stray-comment-close\", index);\n index++;\n continue;\n }\n if (depth > 0) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n quote = code;\n quoteStart = index;\n } else if (code === CHAR_PAREN_OPEN) {\n if (opensUrlToken(source, index)) url = true;\n depth++;\n } else if (code === CHAR_PAREN_CLOSE) depth--;\n continue;\n }\n if (isWhitespace(code)) {\n if (wordStart !== -1) {\n if (visitor.word !== void 0) visitor.word(wordStart, index, lastColon !== -1);\n if (lastColon !== -1) {\n closeSegment(source, visitor, segmentStart, wordStart, !sawChain);\n if (!visitor.chain(wordStart, lastColon)) return \"refused-chain\";\n sawChain = true;\n segmentStart = lastColon + 1;\n }\n wordStart = -1;\n lastColon = -1;\n }\n continue;\n }\n if (wordStart === -1) wordStart = index;\n if (code === CHAR_BRACE_OPEN || code === CHAR_BRACE_CLOSE || code === CHAR_SEMICOLON) {\n if (failure === null) failure = \"invalid-character\";\n if (visitor.error !== void 0) visitor.error(\"invalid-character\", index);\n } else if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n quote = code;\n quoteStart = index;\n } else if (code === CHAR_PAREN_OPEN) {\n if (opensUrlToken(source, index)) url = true;\n depth = 1;\n parenStart = index;\n } else if (code === CHAR_COLON) lastColon = index;\n }\n if (comment) {\n if (failure === null) failure = \"unterminated-comment\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-comment\", commentStart);\n }\n if (quote !== 0) {\n if (failure === null) failure = \"unterminated-string\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-string\", quoteStart);\n }\n if (depth > 0) {\n if (failure === null) failure = \"unterminated-function\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-function\", parenStart);\n }\n if (wordStart !== -1) {\n if (visitor.word !== void 0) visitor.word(wordStart, length, lastColon !== -1);\n if (lastColon !== -1) {\n closeSegment(source, visitor, segmentStart, wordStart, !sawChain);\n if (!visitor.chain(wordStart, lastColon)) return \"refused-chain\";\n sawChain = true;\n segmentStart = lastColon + 1;\n }\n }\n closeSegment(source, visitor, segmentStart, length, !sawChain);\n return failure;\n}\nexport {\n scanFlatValue\n};\n//# sourceMappingURL=scanFlatValue.js.map\n"],"mappings":"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"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
var CHAR_TAB = 9;
|
|
2
|
+
var CHAR_LF = 10;
|
|
3
|
+
var CHAR_FF = 12;
|
|
4
|
+
var CHAR_CR = 13;
|
|
5
|
+
var CHAR_SPACE = 32;
|
|
6
|
+
var CHAR_DOUBLE_QUOTE = 34;
|
|
7
|
+
var CHAR_SINGLE_QUOTE = 39;
|
|
8
|
+
var CHAR_PAREN_OPEN = 40;
|
|
9
|
+
var CHAR_PAREN_CLOSE = 41;
|
|
10
|
+
var CHAR_STAR = 42;
|
|
11
|
+
var CHAR_SLASH = 47;
|
|
12
|
+
var CHAR_SEMICOLON = 59;
|
|
13
|
+
var CHAR_COLON = 58;
|
|
14
|
+
var CHAR_BACKSLASH = 92;
|
|
15
|
+
var CHAR_BRACE_OPEN = 123;
|
|
16
|
+
var CHAR_BRACE_CLOSE = 125;
|
|
17
|
+
function isWhitespace(code) {
|
|
18
|
+
return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;
|
|
19
|
+
}
|
|
20
|
+
function opensUrlToken(source, index) {
|
|
21
|
+
if (index < 3) return false;
|
|
22
|
+
if ((source.charCodeAt(index - 3) | 32) !== 117 || (source.charCodeAt(index - 2) | 32) !== 114 || (source.charCodeAt(index - 1) | 32) !== 108) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
var before = index > 3 ? source.charCodeAt(index - 4) : 0;
|
|
26
|
+
if (before === 45 || before === 95 || before >= 128 || before >= 48 && before <= 57 || before >= 65 && before <= 90 || before >= 97 && before <= 122) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
var next = index + 1;
|
|
30
|
+
while (next < source.length && source.charCodeAt(next) <= 32) next++;
|
|
31
|
+
var quote = source.charCodeAt(next);
|
|
32
|
+
return quote !== CHAR_DOUBLE_QUOTE && quote !== CHAR_SINGLE_QUOTE;
|
|
33
|
+
}
|
|
34
|
+
function closeSegment(source, visitor, segmentStart, end, isBase) {
|
|
35
|
+
var start = segmentStart;
|
|
36
|
+
var stop = end;
|
|
37
|
+
while (start < stop && isWhitespace(source.charCodeAt(start))) start++;
|
|
38
|
+
while (stop > start && isWhitespace(source.charCodeAt(stop - 1))) stop--;
|
|
39
|
+
visitor.segment(start, stop, isBase);
|
|
40
|
+
}
|
|
41
|
+
function scanFlatValue(source, visitor) {
|
|
42
|
+
var length = source.length;
|
|
43
|
+
var failure = null;
|
|
44
|
+
var sawChain = false;
|
|
45
|
+
var segmentStart = 0;
|
|
46
|
+
var comment = false;
|
|
47
|
+
var commentStart = -1;
|
|
48
|
+
var quote = 0;
|
|
49
|
+
var quoteStart = -1;
|
|
50
|
+
var url = false;
|
|
51
|
+
var depth = 0;
|
|
52
|
+
var parenStart = -1;
|
|
53
|
+
var wordStart = -1;
|
|
54
|
+
var lastColon = -1;
|
|
55
|
+
for (var index = 0; index < length; index++) {
|
|
56
|
+
var code = source.charCodeAt(index);
|
|
57
|
+
if (comment) {
|
|
58
|
+
if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {
|
|
59
|
+
comment = false;
|
|
60
|
+
index++;
|
|
61
|
+
}
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (quote !== 0) {
|
|
65
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
66
|
+
else if (code === quote) quote = 0;
|
|
67
|
+
else if (code === CHAR_LF || code === CHAR_CR || code === CHAR_FF) {
|
|
68
|
+
if (failure === null) failure = "unterminated-string";
|
|
69
|
+
if (visitor.error !== void 0) visitor.error("unterminated-string", quoteStart);
|
|
70
|
+
quote = 0;
|
|
71
|
+
index--;
|
|
72
|
+
}
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
if (url) {
|
|
76
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
77
|
+
else if (code === CHAR_PAREN_CLOSE) {
|
|
78
|
+
url = false;
|
|
79
|
+
depth--;
|
|
80
|
+
}
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
if (code === CHAR_SLASH && source.charCodeAt(index + 1) === CHAR_STAR) {
|
|
84
|
+
comment = true;
|
|
85
|
+
commentStart = index;
|
|
86
|
+
index++;
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {
|
|
90
|
+
if (failure === null) failure = "stray-comment-close";
|
|
91
|
+
if (visitor.error !== void 0) visitor.error("stray-comment-close", index);
|
|
92
|
+
index++;
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if (depth > 0) {
|
|
96
|
+
if (code === CHAR_BACKSLASH) index++;
|
|
97
|
+
else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {
|
|
98
|
+
quote = code;
|
|
99
|
+
quoteStart = index;
|
|
100
|
+
} else if (code === CHAR_PAREN_OPEN) {
|
|
101
|
+
if (opensUrlToken(source, index)) url = true;
|
|
102
|
+
depth++;
|
|
103
|
+
} else if (code === CHAR_PAREN_CLOSE) depth--;
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
if (isWhitespace(code)) {
|
|
107
|
+
if (wordStart !== -1) {
|
|
108
|
+
if (visitor.word !== void 0) visitor.word(wordStart, index, lastColon !== -1);
|
|
109
|
+
if (lastColon !== -1) {
|
|
110
|
+
closeSegment(source, visitor, segmentStart, wordStart, !sawChain);
|
|
111
|
+
if (!visitor.chain(wordStart, lastColon)) return "refused-chain";
|
|
112
|
+
sawChain = true;
|
|
113
|
+
segmentStart = lastColon + 1;
|
|
114
|
+
}
|
|
115
|
+
wordStart = -1;
|
|
116
|
+
lastColon = -1;
|
|
117
|
+
}
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
if (wordStart === -1) wordStart = index;
|
|
121
|
+
if (code === CHAR_BRACE_OPEN || code === CHAR_BRACE_CLOSE || code === CHAR_SEMICOLON) {
|
|
122
|
+
if (failure === null) failure = "invalid-character";
|
|
123
|
+
if (visitor.error !== void 0) visitor.error("invalid-character", index);
|
|
124
|
+
} else if (code === CHAR_BACKSLASH) index++;
|
|
125
|
+
else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {
|
|
126
|
+
quote = code;
|
|
127
|
+
quoteStart = index;
|
|
128
|
+
} else if (code === CHAR_PAREN_OPEN) {
|
|
129
|
+
if (opensUrlToken(source, index)) url = true;
|
|
130
|
+
depth = 1;
|
|
131
|
+
parenStart = index;
|
|
132
|
+
} else if (code === CHAR_COLON) lastColon = index;
|
|
133
|
+
}
|
|
134
|
+
if (comment) {
|
|
135
|
+
if (failure === null) failure = "unterminated-comment";
|
|
136
|
+
if (visitor.error !== void 0) visitor.error("unterminated-comment", commentStart);
|
|
137
|
+
}
|
|
138
|
+
if (quote !== 0) {
|
|
139
|
+
if (failure === null) failure = "unterminated-string";
|
|
140
|
+
if (visitor.error !== void 0) visitor.error("unterminated-string", quoteStart);
|
|
141
|
+
}
|
|
142
|
+
if (depth > 0) {
|
|
143
|
+
if (failure === null) failure = "unterminated-function";
|
|
144
|
+
if (visitor.error !== void 0) visitor.error("unterminated-function", parenStart);
|
|
145
|
+
}
|
|
146
|
+
if (wordStart !== -1) {
|
|
147
|
+
if (visitor.word !== void 0) visitor.word(wordStart, length, lastColon !== -1);
|
|
148
|
+
if (lastColon !== -1) {
|
|
149
|
+
closeSegment(source, visitor, segmentStart, wordStart, !sawChain);
|
|
150
|
+
if (!visitor.chain(wordStart, lastColon)) return "refused-chain";
|
|
151
|
+
sawChain = true;
|
|
152
|
+
segmentStart = lastColon + 1;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
closeSegment(source, visitor, segmentStart, length, !sawChain);
|
|
156
|
+
return failure;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export { scanFlatValue };
|
|
160
|
+
//# sourceMappingURL=scanFlatValue.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanFlatValue.native.js","names":[],"sources":["esm/scanFlatValue.native.js"],"sourcesContent":["var CHAR_TAB = 9;\nvar CHAR_LF = 10;\nvar CHAR_FF = 12;\nvar CHAR_CR = 13;\nvar CHAR_SPACE = 32;\nvar CHAR_DOUBLE_QUOTE = 34;\nvar CHAR_SINGLE_QUOTE = 39;\nvar CHAR_PAREN_OPEN = 40;\nvar CHAR_PAREN_CLOSE = 41;\nvar CHAR_STAR = 42;\nvar CHAR_SLASH = 47;\nvar CHAR_SEMICOLON = 59;\nvar CHAR_COLON = 58;\nvar CHAR_BACKSLASH = 92;\nvar CHAR_BRACE_OPEN = 123;\nvar CHAR_BRACE_CLOSE = 125;\nfunction isWhitespace(code) {\n return code === CHAR_SPACE || code === CHAR_TAB || code === CHAR_LF || code === CHAR_CR || code === CHAR_FF;\n}\nfunction opensUrlToken(source, index) {\n if (index < 3) return false;\n if ((source.charCodeAt(index - 3) | 32) !== 117 || (source.charCodeAt(index - 2) | 32) !== 114 || (source.charCodeAt(index - 1) | 32) !== 108) {\n return false;\n }\n var before = index > 3 ? source.charCodeAt(index - 4) : 0;\n if (before === 45 || before === 95 || before >= 128 || before >= 48 && before <= 57 || before >= 65 && before <= 90 || before >= 97 && before <= 122) {\n return false;\n }\n var next = index + 1;\n while (next < source.length && source.charCodeAt(next) <= 32) next++;\n var quote = source.charCodeAt(next);\n return quote !== CHAR_DOUBLE_QUOTE && quote !== CHAR_SINGLE_QUOTE;\n}\nfunction closeSegment(source, visitor, segmentStart, end, isBase) {\n var start = segmentStart;\n var stop = end;\n while (start < stop && isWhitespace(source.charCodeAt(start))) start++;\n while (stop > start && isWhitespace(source.charCodeAt(stop - 1))) stop--;\n visitor.segment(start, stop, isBase);\n}\nfunction scanFlatValue(source, visitor) {\n var length = source.length;\n var failure = null;\n var sawChain = false;\n var segmentStart = 0;\n var comment = false;\n var commentStart = -1;\n var quote = 0;\n var quoteStart = -1;\n var url = false;\n var depth = 0;\n var parenStart = -1;\n var wordStart = -1;\n var lastColon = -1;\n for (var index = 0; index < length; index++) {\n var code = source.charCodeAt(index);\n if (comment) {\n if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {\n comment = false;\n index++;\n }\n continue;\n }\n if (quote !== 0) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === quote) quote = 0;\n else if (code === CHAR_LF || code === CHAR_CR || code === CHAR_FF) {\n if (failure === null) failure = \"unterminated-string\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-string\", quoteStart);\n quote = 0;\n index--;\n }\n continue;\n }\n if (url) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_PAREN_CLOSE) {\n url = false;\n depth--;\n }\n continue;\n }\n if (code === CHAR_SLASH && source.charCodeAt(index + 1) === CHAR_STAR) {\n comment = true;\n commentStart = index;\n index++;\n continue;\n }\n if (code === CHAR_STAR && source.charCodeAt(index + 1) === CHAR_SLASH) {\n if (failure === null) failure = \"stray-comment-close\";\n if (visitor.error !== void 0) visitor.error(\"stray-comment-close\", index);\n index++;\n continue;\n }\n if (depth > 0) {\n if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n quote = code;\n quoteStart = index;\n } else if (code === CHAR_PAREN_OPEN) {\n if (opensUrlToken(source, index)) url = true;\n depth++;\n } else if (code === CHAR_PAREN_CLOSE) depth--;\n continue;\n }\n if (isWhitespace(code)) {\n if (wordStart !== -1) {\n if (visitor.word !== void 0) visitor.word(wordStart, index, lastColon !== -1);\n if (lastColon !== -1) {\n closeSegment(source, visitor, segmentStart, wordStart, !sawChain);\n if (!visitor.chain(wordStart, lastColon)) return \"refused-chain\";\n sawChain = true;\n segmentStart = lastColon + 1;\n }\n wordStart = -1;\n lastColon = -1;\n }\n continue;\n }\n if (wordStart === -1) wordStart = index;\n if (code === CHAR_BRACE_OPEN || code === CHAR_BRACE_CLOSE || code === CHAR_SEMICOLON) {\n if (failure === null) failure = \"invalid-character\";\n if (visitor.error !== void 0) visitor.error(\"invalid-character\", index);\n } else if (code === CHAR_BACKSLASH) index++;\n else if (code === CHAR_DOUBLE_QUOTE || code === CHAR_SINGLE_QUOTE) {\n quote = code;\n quoteStart = index;\n } else if (code === CHAR_PAREN_OPEN) {\n if (opensUrlToken(source, index)) url = true;\n depth = 1;\n parenStart = index;\n } else if (code === CHAR_COLON) lastColon = index;\n }\n if (comment) {\n if (failure === null) failure = \"unterminated-comment\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-comment\", commentStart);\n }\n if (quote !== 0) {\n if (failure === null) failure = \"unterminated-string\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-string\", quoteStart);\n }\n if (depth > 0) {\n if (failure === null) failure = \"unterminated-function\";\n if (visitor.error !== void 0) visitor.error(\"unterminated-function\", parenStart);\n }\n if (wordStart !== -1) {\n if (visitor.word !== void 0) visitor.word(wordStart, length, lastColon !== -1);\n if (lastColon !== -1) {\n closeSegment(source, visitor, segmentStart, wordStart, !sawChain);\n if (!visitor.chain(wordStart, lastColon)) return \"refused-chain\";\n sawChain = true;\n segmentStart = lastColon + 1;\n }\n }\n closeSegment(source, visitor, segmentStart, length, !sawChain);\n return failure;\n}\nexport {\n scanFlatValue\n};\n//# sourceMappingURL=scanFlatValue.js.map\n"],"mappings":"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"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
function serializePayloadWeb(resolved, toVar) {
|
|
2
|
+
let out = "";
|
|
3
|
+
for (const segment of resolved.segments) {
|
|
4
|
+
if (typeof segment === "string") {
|
|
5
|
+
out += segment;
|
|
6
|
+
continue;
|
|
7
|
+
}
|
|
8
|
+
const variable = toVar(segment.name);
|
|
9
|
+
out += segment.opacity === void 0 ? variable : `color-mix(in srgb, ${variable} ${segment.opacity}%, transparent)`;
|
|
10
|
+
}
|
|
11
|
+
return out;
|
|
12
|
+
}
|
|
13
|
+
function serializePayloadNative(resolved, get, opts) {
|
|
14
|
+
let out = "";
|
|
15
|
+
for (const segment of resolved.segments) {
|
|
16
|
+
if (typeof segment === "string") {
|
|
17
|
+
out += segment;
|
|
18
|
+
continue;
|
|
19
|
+
}
|
|
20
|
+
const value = get(segment.name);
|
|
21
|
+
out += segment.opacity === void 0 ? value : composeAlpha(value, segment);
|
|
22
|
+
}
|
|
23
|
+
return finalizeNumeric(out, opts?.unit);
|
|
24
|
+
}
|
|
25
|
+
function composeAlpha(value, reference) {
|
|
26
|
+
const parsed = typeof value === "string" ? readColor(value) : null;
|
|
27
|
+
if (!parsed) {
|
|
28
|
+
throw new Error(`cannot apply the /${reference.opacity} opacity suffix to "${reference.name}": its value ${JSON.stringify(value)} is not a #hex, rgb(), or rgba() color`);
|
|
29
|
+
}
|
|
30
|
+
const alpha = round4(parsed.a * (reference.opacity / 100));
|
|
31
|
+
return `rgba(${parsed.r},${parsed.g},${parsed.b},${alpha})`;
|
|
32
|
+
}
|
|
33
|
+
function readColor(input) {
|
|
34
|
+
const color = input.trim();
|
|
35
|
+
if (color.charCodeAt(0) === 35) return readHex(color);
|
|
36
|
+
const open = color.indexOf("(");
|
|
37
|
+
if (open === -1 || color.charCodeAt(color.length - 1) !== 41) return null;
|
|
38
|
+
const fn = color.slice(0, open).toLowerCase();
|
|
39
|
+
if (fn !== "rgb" && fn !== "rgba") return null;
|
|
40
|
+
const parts = color.slice(open + 1, -1).split(",");
|
|
41
|
+
if (parts.length !== 3 && parts.length !== 4) return null;
|
|
42
|
+
const channels = [];
|
|
43
|
+
for (let index = 0; index < 3; index++) {
|
|
44
|
+
const channel = readNumber(parts[index]);
|
|
45
|
+
if (channel === null) return null;
|
|
46
|
+
channels.push(clamp(Math.round(channel), 0, 255));
|
|
47
|
+
}
|
|
48
|
+
let alpha = 1;
|
|
49
|
+
if (parts.length === 4) {
|
|
50
|
+
const parsedAlpha = readNumber(parts[3]);
|
|
51
|
+
if (parsedAlpha === null) return null;
|
|
52
|
+
alpha = clamp(parsedAlpha, 0, 1);
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
r: channels[0],
|
|
56
|
+
g: channels[1],
|
|
57
|
+
b: channels[2],
|
|
58
|
+
a: alpha
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function readHex(color) {
|
|
62
|
+
const digits = color.slice(1);
|
|
63
|
+
const size = digits.length;
|
|
64
|
+
if (size !== 3 && size !== 4 && size !== 6 && size !== 8) return null;
|
|
65
|
+
for (let index = 0; index < size; index++) {
|
|
66
|
+
const code = digits.charCodeAt(index);
|
|
67
|
+
const isHex = code >= 48 && code <= 57 || code >= 97 && code <= 102 || code >= 65 && code <= 70;
|
|
68
|
+
if (!isHex) return null;
|
|
69
|
+
}
|
|
70
|
+
const short = size === 3 || size === 4;
|
|
71
|
+
const pair = (position) => short ? Number.parseInt(digits[position].repeat(2), 16) : Number.parseInt(digits.slice(position * 2, position * 2 + 2), 16);
|
|
72
|
+
const hasAlpha = size === 4 || size === 8;
|
|
73
|
+
return {
|
|
74
|
+
r: pair(0),
|
|
75
|
+
g: pair(1),
|
|
76
|
+
b: pair(2),
|
|
77
|
+
a: hasAlpha ? round4(pair(3) / 255) : 1
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
function readNumber(text) {
|
|
81
|
+
const trimmed = text.trim();
|
|
82
|
+
if (!trimmed) return null;
|
|
83
|
+
for (let index = 0; index < trimmed.length; index++) {
|
|
84
|
+
const code = trimmed.charCodeAt(index);
|
|
85
|
+
const ok = code >= 48 && code <= 57 || code === 46 || (code === 45 || code === 43) && index === 0;
|
|
86
|
+
if (!ok) return null;
|
|
87
|
+
}
|
|
88
|
+
const value = Number(trimmed);
|
|
89
|
+
return Number.isFinite(value) ? value : null;
|
|
90
|
+
}
|
|
91
|
+
function clamp(value, min, max) {
|
|
92
|
+
return value < min ? min : value > max ? max : value;
|
|
93
|
+
}
|
|
94
|
+
function round4(value) {
|
|
95
|
+
return Math.round(value * 1e4) / 1e4;
|
|
96
|
+
}
|
|
97
|
+
function finalizeNumeric(out, unit) {
|
|
98
|
+
let end = out.length;
|
|
99
|
+
if (unit === "px-to-number" && end > 2 && out.endsWith("px")) end -= 2;
|
|
100
|
+
if (end === 0) return out;
|
|
101
|
+
let index = 0;
|
|
102
|
+
const first = out.charCodeAt(0);
|
|
103
|
+
if (first === 45 || first === 43) index++;
|
|
104
|
+
let digits = 0;
|
|
105
|
+
let dots = 0;
|
|
106
|
+
for (; index < end; index++) {
|
|
107
|
+
const code = out.charCodeAt(index);
|
|
108
|
+
if (code >= 48 && code <= 57) {
|
|
109
|
+
digits++;
|
|
110
|
+
continue;
|
|
111
|
+
}
|
|
112
|
+
if (code === 46) {
|
|
113
|
+
dots++;
|
|
114
|
+
if (dots > 1) return out;
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
return out;
|
|
118
|
+
}
|
|
119
|
+
if (digits === 0) return out;
|
|
120
|
+
const value = Number(out.slice(0, end));
|
|
121
|
+
return Number.isFinite(value) ? value : out;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export { serializePayloadNative, serializePayloadWeb };
|
|
125
|
+
//# sourceMappingURL=serializePayload.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializePayload.js","names":[],"sources":["esm/serializePayload.js"],"sourcesContent":["function serializePayloadWeb(resolved, toVar) {\n let out = \"\";\n for (const segment of resolved.segments) {\n if (typeof segment === \"string\") {\n out += segment;\n continue;\n }\n const variable = toVar(segment.name);\n out += segment.opacity === void 0 ? variable : `color-mix(in srgb, ${variable} ${segment.opacity}%, transparent)`;\n }\n return out;\n}\nfunction serializePayloadNative(resolved, get, opts) {\n let out = \"\";\n for (const segment of resolved.segments) {\n if (typeof segment === \"string\") {\n out += segment;\n continue;\n }\n const value = get(segment.name);\n out += segment.opacity === void 0 ? value : composeAlpha(value, segment);\n }\n return finalizeNumeric(out, opts?.unit);\n}\nfunction composeAlpha(value, reference) {\n const parsed = typeof value === \"string\" ? readColor(value) : null;\n if (!parsed) {\n throw new Error(\n `cannot apply the /${reference.opacity} opacity suffix to \"${reference.name}\": its value ${JSON.stringify(value)} is not a #hex, rgb(), or rgba() color`\n );\n }\n const alpha = round4(parsed.a * (reference.opacity / 100));\n return `rgba(${parsed.r},${parsed.g},${parsed.b},${alpha})`;\n}\nfunction readColor(input) {\n const color = input.trim();\n if (color.charCodeAt(0) === 35) return readHex(color);\n const open = color.indexOf(\"(\");\n if (open === -1 || color.charCodeAt(color.length - 1) !== 41) return null;\n const fn = color.slice(0, open).toLowerCase();\n if (fn !== \"rgb\" && fn !== \"rgba\") return null;\n const parts = color.slice(open + 1, -1).split(\",\");\n if (parts.length !== 3 && parts.length !== 4) return null;\n const channels = [];\n for (let index = 0; index < 3; index++) {\n const channel = readNumber(parts[index]);\n if (channel === null) return null;\n channels.push(clamp(Math.round(channel), 0, 255));\n }\n let alpha = 1;\n if (parts.length === 4) {\n const parsedAlpha = readNumber(parts[3]);\n if (parsedAlpha === null) return null;\n alpha = clamp(parsedAlpha, 0, 1);\n }\n return { r: channels[0], g: channels[1], b: channels[2], a: alpha };\n}\nfunction readHex(color) {\n const digits = color.slice(1);\n const size = digits.length;\n if (size !== 3 && size !== 4 && size !== 6 && size !== 8) return null;\n for (let index = 0; index < size; index++) {\n const code = digits.charCodeAt(index);\n const isHex = code >= 48 && code <= 57 || code >= 97 && code <= 102 || code >= 65 && code <= 70;\n if (!isHex) return null;\n }\n const short = size === 3 || size === 4;\n const pair = (position) => short ? Number.parseInt(digits[position].repeat(2), 16) : Number.parseInt(digits.slice(position * 2, position * 2 + 2), 16);\n const hasAlpha = size === 4 || size === 8;\n return {\n r: pair(0),\n g: pair(1),\n b: pair(2),\n a: hasAlpha ? round4(pair(3) / 255) : 1\n };\n}\nfunction readNumber(text) {\n const trimmed = text.trim();\n if (!trimmed) return null;\n for (let index = 0; index < trimmed.length; index++) {\n const code = trimmed.charCodeAt(index);\n const ok = code >= 48 && code <= 57 || code === 46 || // .\n (code === 45 || code === 43) && index === 0;\n if (!ok) return null;\n }\n const value = Number(trimmed);\n return Number.isFinite(value) ? value : null;\n}\nfunction clamp(value, min, max) {\n return value < min ? min : value > max ? max : value;\n}\nfunction round4(value) {\n return Math.round(value * 1e4) / 1e4;\n}\nfunction finalizeNumeric(out, unit) {\n let end = out.length;\n if (unit === \"px-to-number\" && end > 2 && out.endsWith(\"px\")) end -= 2;\n if (end === 0) return out;\n let index = 0;\n const first = out.charCodeAt(0);\n if (first === 45 || first === 43) index++;\n let digits = 0;\n let dots = 0;\n for (; index < end; index++) {\n const code = out.charCodeAt(index);\n if (code >= 48 && code <= 57) {\n digits++;\n continue;\n }\n if (code === 46) {\n dots++;\n if (dots > 1) return out;\n continue;\n }\n return out;\n }\n if (digits === 0) return out;\n const value = Number(out.slice(0, end));\n return Number.isFinite(value) ? value : out;\n}\nexport {\n serializePayloadNative,\n serializePayloadWeb\n};\n//# sourceMappingURL=serializePayload.js.map\n"],"mappings":"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"}
|