@calame/core 0.2.0
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/__css.d.ts +9 -0
- package/dist/__css.d.ts.map +1 -0
- package/dist/__css.js +34 -0
- package/dist/__css.js.map +1 -0
- package/dist/__resetCSS.d.ts +6 -0
- package/dist/__resetCSS.d.ts.map +1 -0
- package/dist/__resetCSS.js +16 -0
- package/dist/__resetCSS.js.map +1 -0
- package/dist/__resetStyles.d.ts +7 -0
- package/dist/__resetStyles.d.ts.map +1 -0
- package/dist/__resetStyles.js +19 -0
- package/dist/__resetStyles.js.map +1 -0
- package/dist/__staticCSS.d.ts +7 -0
- package/dist/__staticCSS.d.ts.map +1 -0
- package/dist/__staticCSS.js +11 -0
- package/dist/__staticCSS.js.map +1 -0
- package/dist/__staticStyles.d.ts +9 -0
- package/dist/__staticStyles.d.ts.map +1 -0
- package/dist/__staticStyles.js +14 -0
- package/dist/__staticStyles.js.map +1 -0
- package/dist/__styles.d.ts +9 -0
- package/dist/__styles.d.ts.map +1 -0
- package/dist/__styles.js +41 -0
- package/dist/__styles.js.map +1 -0
- package/dist/constants.d.ts +37 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +65 -0
- package/dist/constants.js.map +1 -0
- package/dist/devtools/getAtomicDebugSequenceTree.d.ts +4 -0
- package/dist/devtools/getAtomicDebugSequenceTree.d.ts.map +1 -0
- package/dist/devtools/getAtomicDebugSequenceTree.js +43 -0
- package/dist/devtools/getAtomicDebugSequenceTree.js.map +1 -0
- package/dist/devtools/getResetDebugSequence.d.ts +4 -0
- package/dist/devtools/getResetDebugSequence.d.ts.map +1 -0
- package/dist/devtools/getResetDebugSequence.js +24 -0
- package/dist/devtools/getResetDebugSequence.js.map +1 -0
- package/dist/devtools/getSourceURLfromError.d.ts +2 -0
- package/dist/devtools/getSourceURLfromError.d.ts.map +1 -0
- package/dist/devtools/getSourceURLfromError.js +24 -0
- package/dist/devtools/getSourceURLfromError.js.map +1 -0
- package/dist/devtools/index.d.ts +6 -0
- package/dist/devtools/index.d.ts.map +1 -0
- package/dist/devtools/index.js +5 -0
- package/dist/devtools/index.js.map +1 -0
- package/dist/devtools/injectDevTools.d.ts +2 -0
- package/dist/devtools/injectDevTools.d.ts.map +1 -0
- package/dist/devtools/injectDevTools.js +31 -0
- package/dist/devtools/injectDevTools.js.map +1 -0
- package/dist/devtools/isDevToolsEnabled.d.ts +2 -0
- package/dist/devtools/isDevToolsEnabled.d.ts.map +1 -0
- package/dist/devtools/isDevToolsEnabled.js +12 -0
- package/dist/devtools/isDevToolsEnabled.js.map +1 -0
- package/dist/devtools/mergeDebugSequence.d.ts +3 -0
- package/dist/devtools/mergeDebugSequence.d.ts.map +1 -0
- package/dist/devtools/mergeDebugSequence.js +23 -0
- package/dist/devtools/mergeDebugSequence.js.map +1 -0
- package/dist/devtools/react-render-tracker/stackTrace.d.ts +7 -0
- package/dist/devtools/react-render-tracker/stackTrace.d.ts.map +1 -0
- package/dist/devtools/react-render-tracker/stackTrace.js +60 -0
- package/dist/devtools/react-render-tracker/stackTrace.js.map +1 -0
- package/dist/devtools/store.d.ts +14 -0
- package/dist/devtools/store.d.ts.map +1 -0
- package/dist/devtools/store.js +32 -0
- package/dist/devtools/store.js.map +1 -0
- package/dist/devtools/types.d.ts +24 -0
- package/dist/devtools/types.d.ts.map +1 -0
- package/dist/devtools/types.js +2 -0
- package/dist/devtools/types.js.map +1 -0
- package/dist/devtools/utils.d.ts +4 -0
- package/dist/devtools/utils.d.ts.map +1 -0
- package/dist/devtools/utils.js +45 -0
- package/dist/devtools/utils.js.map +1 -0
- package/dist/index.d.ts +56 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/insertionFactory.d.ts +9 -0
- package/dist/insertionFactory.d.ts.map +1 -0
- package/dist/insertionFactory.js +16 -0
- package/dist/insertionFactory.js.map +1 -0
- package/dist/makeResetStyles.d.ts +8 -0
- package/dist/makeResetStyles.d.ts.map +1 -0
- package/dist/makeResetStyles.js +38 -0
- package/dist/makeResetStyles.js.map +1 -0
- package/dist/makeStaticStyles.d.ts +8 -0
- package/dist/makeStaticStyles.d.ts.map +1 -0
- package/dist/makeStaticStyles.js +13 -0
- package/dist/makeStaticStyles.js.map +1 -0
- package/dist/makeStyles.d.ts +8 -0
- package/dist/makeStyles.d.ts.map +1 -0
- package/dist/makeStyles.js +57 -0
- package/dist/makeStyles.js.map +1 -0
- package/dist/mergeClasses.d.ts +20 -0
- package/dist/mergeClasses.d.ts.map +1 -0
- package/dist/mergeClasses.js +110 -0
- package/dist/mergeClasses.js.map +1 -0
- package/dist/renderer/createDOMRenderer.d.ts +44 -0
- package/dist/renderer/createDOMRenderer.d.ts.map +1 -0
- package/dist/renderer/createDOMRenderer.js +54 -0
- package/dist/renderer/createDOMRenderer.js.map +1 -0
- package/dist/renderer/createIsomorphicStyleSheet.d.ts +4 -0
- package/dist/renderer/createIsomorphicStyleSheet.d.ts.map +1 -0
- package/dist/renderer/createIsomorphicStyleSheet.js +39 -0
- package/dist/renderer/createIsomorphicStyleSheet.js.map +1 -0
- package/dist/renderer/getStyleSheetForBucket.d.ts +14 -0
- package/dist/renderer/getStyleSheetForBucket.d.ts.map +1 -0
- package/dist/renderer/getStyleSheetForBucket.js +129 -0
- package/dist/renderer/getStyleSheetForBucket.js.map +1 -0
- package/dist/renderer/rehydrateRendererCache.d.ts +9 -0
- package/dist/renderer/rehydrateRendererCache.d.ts.map +1 -0
- package/dist/renderer/rehydrateRendererCache.js +43 -0
- package/dist/renderer/rehydrateRendererCache.js.map +1 -0
- package/dist/renderer/safeInsertRule.d.ts +9 -0
- package/dist/renderer/safeInsertRule.d.ts.map +1 -0
- package/dist/renderer/safeInsertRule.js +30 -0
- package/dist/renderer/safeInsertRule.js.map +1 -0
- package/dist/resolveStyleRulesForSlots.d.ts +11 -0
- package/dist/resolveStyleRulesForSlots.d.ts.map +1 -0
- package/dist/resolveStyleRulesForSlots.js +24 -0
- package/dist/resolveStyleRulesForSlots.js.map +1 -0
- package/dist/runtime/compileAtomicCSSRule.d.ts +22 -0
- package/dist/runtime/compileAtomicCSSRule.d.ts.map +1 -0
- package/dist/runtime/compileAtomicCSSRule.js +59 -0
- package/dist/runtime/compileAtomicCSSRule.js.map +1 -0
- package/dist/runtime/compileCSSRules.d.ts +2 -0
- package/dist/runtime/compileCSSRules.d.ts.map +1 -0
- package/dist/runtime/compileCSSRules.js +21 -0
- package/dist/runtime/compileCSSRules.js.map +1 -0
- package/dist/runtime/compileKeyframeCSS.d.ts +7 -0
- package/dist/runtime/compileKeyframeCSS.d.ts.map +1 -0
- package/dist/runtime/compileKeyframeCSS.js +28 -0
- package/dist/runtime/compileKeyframeCSS.js.map +1 -0
- package/dist/runtime/compileResetCSSRules.d.ts +2 -0
- package/dist/runtime/compileResetCSSRules.d.ts.map +1 -0
- package/dist/runtime/compileResetCSSRules.js +26 -0
- package/dist/runtime/compileResetCSSRules.js.map +1 -0
- package/dist/runtime/compileStaticCSS.d.ts +3 -0
- package/dist/runtime/compileStaticCSS.d.ts.map +1 -0
- package/dist/runtime/compileStaticCSS.js +7 -0
- package/dist/runtime/compileStaticCSS.js.map +1 -0
- package/dist/runtime/getStyleBucketName.d.ts +23 -0
- package/dist/runtime/getStyleBucketName.d.ts.map +1 -0
- package/dist/runtime/getStyleBucketName.js +68 -0
- package/dist/runtime/getStyleBucketName.js.map +1 -0
- package/dist/runtime/reduceToClassNameForSlots.d.ts +15 -0
- package/dist/runtime/reduceToClassNameForSlots.d.ts.map +1 -0
- package/dist/runtime/reduceToClassNameForSlots.js +54 -0
- package/dist/runtime/reduceToClassNameForSlots.js.map +1 -0
- package/dist/runtime/resolveResetStyleRules.d.ts +7 -0
- package/dist/runtime/resolveResetStyleRules.d.ts.map +1 -0
- package/dist/runtime/resolveResetStyleRules.js +116 -0
- package/dist/runtime/resolveResetStyleRules.js.map +1 -0
- package/dist/runtime/resolveStaticStyleRules.d.ts +4 -0
- package/dist/runtime/resolveStaticStyleRules.d.ts.map +1 -0
- package/dist/runtime/resolveStaticStyleRules.js +21 -0
- package/dist/runtime/resolveStaticStyleRules.js.map +1 -0
- package/dist/runtime/resolveStyleRules.d.ts +10 -0
- package/dist/runtime/resolveStyleRules.d.ts.map +1 -0
- package/dist/runtime/resolveStyleRules.js +247 -0
- package/dist/runtime/resolveStyleRules.js.map +1 -0
- package/dist/runtime/shorthands.d.ts +6 -0
- package/dist/runtime/shorthands.d.ts.map +1 -0
- package/dist/runtime/shorthands.js +141 -0
- package/dist/runtime/shorthands.js.map +1 -0
- package/dist/runtime/stylis/globalPlugin.d.ts +3 -0
- package/dist/runtime/stylis/globalPlugin.d.ts.map +1 -0
- package/dist/runtime/stylis/globalPlugin.js +39 -0
- package/dist/runtime/stylis/globalPlugin.js.map +1 -0
- package/dist/runtime/stylis/isAtRuleElement.d.ts +3 -0
- package/dist/runtime/stylis/isAtRuleElement.d.ts.map +1 -0
- package/dist/runtime/stylis/isAtRuleElement.js +12 -0
- package/dist/runtime/stylis/isAtRuleElement.js.map +1 -0
- package/dist/runtime/stylis/prefixerPlugin.d.ts +10 -0
- package/dist/runtime/stylis/prefixerPlugin.d.ts.map +1 -0
- package/dist/runtime/stylis/prefixerPlugin.js +134 -0
- package/dist/runtime/stylis/prefixerPlugin.js.map +1 -0
- package/dist/runtime/stylis/rulesheetPlugin.d.ts +7 -0
- package/dist/runtime/stylis/rulesheetPlugin.d.ts.map +1 -0
- package/dist/runtime/stylis/rulesheetPlugin.js +13 -0
- package/dist/runtime/stylis/rulesheetPlugin.js.map +1 -0
- package/dist/runtime/stylis/sortClassesInAtRulesPlugin.d.ts +3 -0
- package/dist/runtime/stylis/sortClassesInAtRulesPlugin.d.ts.map +1 -0
- package/dist/runtime/stylis/sortClassesInAtRulesPlugin.js +7 -0
- package/dist/runtime/stylis/sortClassesInAtRulesPlugin.js.map +1 -0
- package/dist/runtime/utils/cssifyObject.d.ts +3 -0
- package/dist/runtime/utils/cssifyObject.d.ts.map +1 -0
- package/dist/runtime/utils/cssifyObject.js +19 -0
- package/dist/runtime/utils/cssifyObject.js.map +1 -0
- package/dist/runtime/utils/generateCombinedMediaQuery.d.ts +2 -0
- package/dist/runtime/utils/generateCombinedMediaQuery.d.ts.map +1 -0
- package/dist/runtime/utils/generateCombinedMediaQuery.js +7 -0
- package/dist/runtime/utils/generateCombinedMediaQuery.js.map +1 -0
- package/dist/runtime/utils/hashClassName.d.ts +10 -0
- package/dist/runtime/utils/hashClassName.d.ts.map +1 -0
- package/dist/runtime/utils/hashClassName.js +13 -0
- package/dist/runtime/utils/hashClassName.js.map +1 -0
- package/dist/runtime/utils/hashPropertyKey.d.ts +5 -0
- package/dist/runtime/utils/hashPropertyKey.d.ts.map +1 -0
- package/dist/runtime/utils/hashPropertyKey.js +30 -0
- package/dist/runtime/utils/hashPropertyKey.js.map +1 -0
- package/dist/runtime/utils/hashSequence.d.ts +3 -0
- package/dist/runtime/utils/hashSequence.d.ts.map +1 -0
- package/dist/runtime/utils/hashSequence.js +22 -0
- package/dist/runtime/utils/hashSequence.js.map +1 -0
- package/dist/runtime/utils/hyphenateProperty.d.ts +2 -0
- package/dist/runtime/utils/hyphenateProperty.d.ts.map +1 -0
- package/dist/runtime/utils/hyphenateProperty.js +17 -0
- package/dist/runtime/utils/hyphenateProperty.js.map +1 -0
- package/dist/runtime/utils/isContainerQuerySelector.d.ts +2 -0
- package/dist/runtime/utils/isContainerQuerySelector.d.ts.map +1 -0
- package/dist/runtime/utils/isContainerQuerySelector.js +4 -0
- package/dist/runtime/utils/isContainerQuerySelector.js.map +1 -0
- package/dist/runtime/utils/isLayerSelector.d.ts +2 -0
- package/dist/runtime/utils/isLayerSelector.d.ts.map +1 -0
- package/dist/runtime/utils/isLayerSelector.js +4 -0
- package/dist/runtime/utils/isLayerSelector.js.map +1 -0
- package/dist/runtime/utils/isMediaQuerySelector.d.ts +2 -0
- package/dist/runtime/utils/isMediaQuerySelector.d.ts.map +1 -0
- package/dist/runtime/utils/isMediaQuerySelector.js +4 -0
- package/dist/runtime/utils/isMediaQuerySelector.js.map +1 -0
- package/dist/runtime/utils/isNestedSelector.d.ts +2 -0
- package/dist/runtime/utils/isNestedSelector.d.ts.map +1 -0
- package/dist/runtime/utils/isNestedSelector.js +5 -0
- package/dist/runtime/utils/isNestedSelector.js.map +1 -0
- package/dist/runtime/utils/isObject.d.ts +2 -0
- package/dist/runtime/utils/isObject.d.ts.map +1 -0
- package/dist/runtime/utils/isObject.js +5 -0
- package/dist/runtime/utils/isObject.js.map +1 -0
- package/dist/runtime/utils/isResetValue.d.ts +2 -0
- package/dist/runtime/utils/isResetValue.d.ts.map +1 -0
- package/dist/runtime/utils/isResetValue.js +5 -0
- package/dist/runtime/utils/isResetValue.js.map +1 -0
- package/dist/runtime/utils/isSupportQuerySelector.d.ts +2 -0
- package/dist/runtime/utils/isSupportQuerySelector.d.ts.map +1 -0
- package/dist/runtime/utils/isSupportQuerySelector.js +4 -0
- package/dist/runtime/utils/isSupportQuerySelector.js.map +1 -0
- package/dist/runtime/utils/normalizeCSSBucketEntry.d.ts +9 -0
- package/dist/runtime/utils/normalizeCSSBucketEntry.d.ts.map +1 -0
- package/dist/runtime/utils/normalizeCSSBucketEntry.js +16 -0
- package/dist/runtime/utils/normalizeCSSBucketEntry.js.map +1 -0
- package/dist/runtime/utils/normalizeNestedProperty.d.ts +2 -0
- package/dist/runtime/utils/normalizeNestedProperty.d.ts.map +1 -0
- package/dist/runtime/utils/normalizeNestedProperty.js +7 -0
- package/dist/runtime/utils/normalizeNestedProperty.js.map +1 -0
- package/dist/runtime/utils/trimSelector.d.ts +5 -0
- package/dist/runtime/utils/trimSelector.d.ts.map +1 -0
- package/dist/runtime/utils/trimSelector.js +7 -0
- package/dist/runtime/utils/trimSelector.js.map +1 -0
- package/dist/runtime/utils/types.d.ts +7 -0
- package/dist/runtime/utils/types.d.ts.map +1 -0
- package/dist/runtime/utils/types.js +2 -0
- package/dist/runtime/utils/types.js.map +1 -0
- package/dist/runtime/warnings/logError.d.ts +2 -0
- package/dist/runtime/warnings/logError.d.ts.map +1 -0
- package/dist/runtime/warnings/logError.js +6 -0
- package/dist/runtime/warnings/logError.js.map +1 -0
- package/dist/runtime/warnings/warnAboutUnresolvedRule.d.ts +3 -0
- package/dist/runtime/warnings/warnAboutUnresolvedRule.d.ts.map +1 -0
- package/dist/runtime/warnings/warnAboutUnresolvedRule.js +31 -0
- package/dist/runtime/warnings/warnAboutUnresolvedRule.js.map +1 -0
- package/dist/runtime/warnings/warnAboutUnsupportedProperties.d.ts +3 -0
- package/dist/runtime/warnings/warnAboutUnsupportedProperties.d.ts.map +1 -0
- package/dist/runtime/warnings/warnAboutUnsupportedProperties.js +14 -0
- package/dist/runtime/warnings/warnAboutUnsupportedProperties.js.map +1 -0
- package/dist/shorthands/border.d.ts +11 -0
- package/dist/shorthands/border.d.ts.map +1 -0
- package/dist/shorthands/border.js +34 -0
- package/dist/shorthands/border.js.map +1 -0
- package/dist/shorthands/borderBottom.d.ts +17 -0
- package/dist/shorthands/borderBottom.d.ts.map +1 -0
- package/dist/shorthands/borderBottom.js +31 -0
- package/dist/shorthands/borderBottom.js.map +1 -0
- package/dist/shorthands/borderColor.d.ts +9 -0
- package/dist/shorthands/borderColor.d.ts.map +1 -0
- package/dist/shorthands/borderColor.js +16 -0
- package/dist/shorthands/borderColor.js.map +1 -0
- package/dist/shorthands/borderLeft.d.ts +17 -0
- package/dist/shorthands/borderLeft.d.ts.map +1 -0
- package/dist/shorthands/borderLeft.js +31 -0
- package/dist/shorthands/borderLeft.js.map +1 -0
- package/dist/shorthands/borderRadius.d.ts +20 -0
- package/dist/shorthands/borderRadius.d.ts.map +1 -0
- package/dist/shorthands/borderRadius.js +23 -0
- package/dist/shorthands/borderRadius.js.map +1 -0
- package/dist/shorthands/borderRight.d.ts +17 -0
- package/dist/shorthands/borderRight.d.ts.map +1 -0
- package/dist/shorthands/borderRight.js +31 -0
- package/dist/shorthands/borderRight.js.map +1 -0
- package/dist/shorthands/borderStyle.d.ts +9 -0
- package/dist/shorthands/borderStyle.d.ts.map +1 -0
- package/dist/shorthands/borderStyle.js +16 -0
- package/dist/shorthands/borderStyle.js.map +1 -0
- package/dist/shorthands/borderTop.d.ts +17 -0
- package/dist/shorthands/borderTop.d.ts.map +1 -0
- package/dist/shorthands/borderTop.js +31 -0
- package/dist/shorthands/borderTop.js.map +1 -0
- package/dist/shorthands/borderWidth.d.ts +9 -0
- package/dist/shorthands/borderWidth.d.ts.map +1 -0
- package/dist/shorthands/borderWidth.js +16 -0
- package/dist/shorthands/borderWidth.js.map +1 -0
- package/dist/shorthands/flex.d.ts +18 -0
- package/dist/shorthands/flex.d.ts.map +1 -0
- package/dist/shorthands/flex.js +95 -0
- package/dist/shorthands/flex.js.map +1 -0
- package/dist/shorthands/gap.d.ts +17 -0
- package/dist/shorthands/gap.d.ts.map +1 -0
- package/dist/shorthands/gap.js +18 -0
- package/dist/shorthands/gap.js.map +1 -0
- package/dist/shorthands/generateStyles.d.ts +5 -0
- package/dist/shorthands/generateStyles.d.ts.map +1 -0
- package/dist/shorthands/generateStyles.js +14 -0
- package/dist/shorthands/generateStyles.js.map +1 -0
- package/dist/shorthands/gridArea.d.ts +14 -0
- package/dist/shorthands/gridArea.d.ts.map +1 -0
- package/dist/shorthands/gridArea.js +60 -0
- package/dist/shorthands/gridArea.js.map +1 -0
- package/dist/shorthands/index.d.ts +24 -0
- package/dist/shorthands/index.d.ts.map +1 -0
- package/dist/shorthands/index.js +24 -0
- package/dist/shorthands/index.js.map +1 -0
- package/dist/shorthands/inset.d.ts +13 -0
- package/dist/shorthands/inset.d.ts.map +1 -0
- package/dist/shorthands/inset.js +23 -0
- package/dist/shorthands/inset.js.map +1 -0
- package/dist/shorthands/margin.d.ts +13 -0
- package/dist/shorthands/margin.d.ts.map +1 -0
- package/dist/shorthands/margin.js +18 -0
- package/dist/shorthands/margin.js.map +1 -0
- package/dist/shorthands/marginBlock.d.ts +17 -0
- package/dist/shorthands/marginBlock.d.ts.map +1 -0
- package/dist/shorthands/marginBlock.js +18 -0
- package/dist/shorthands/marginBlock.js.map +1 -0
- package/dist/shorthands/marginInline.d.ts +17 -0
- package/dist/shorthands/marginInline.d.ts.map +1 -0
- package/dist/shorthands/marginInline.js +18 -0
- package/dist/shorthands/marginInline.js.map +1 -0
- package/dist/shorthands/outline.d.ts +11 -0
- package/dist/shorthands/outline.d.ts.map +1 -0
- package/dist/shorthands/outline.js +20 -0
- package/dist/shorthands/outline.js.map +1 -0
- package/dist/shorthands/overflow.d.ts +17 -0
- package/dist/shorthands/overflow.d.ts.map +1 -0
- package/dist/shorthands/overflow.js +18 -0
- package/dist/shorthands/overflow.js.map +1 -0
- package/dist/shorthands/padding.d.ts +13 -0
- package/dist/shorthands/padding.d.ts.map +1 -0
- package/dist/shorthands/padding.js +18 -0
- package/dist/shorthands/padding.js.map +1 -0
- package/dist/shorthands/paddingBlock.d.ts +17 -0
- package/dist/shorthands/paddingBlock.d.ts.map +1 -0
- package/dist/shorthands/paddingBlock.js +18 -0
- package/dist/shorthands/paddingBlock.js.map +1 -0
- package/dist/shorthands/paddingInline.d.ts +17 -0
- package/dist/shorthands/paddingInline.d.ts.map +1 -0
- package/dist/shorthands/paddingInline.js +18 -0
- package/dist/shorthands/paddingInline.js.map +1 -0
- package/dist/shorthands/textDecoration.d.ts +15 -0
- package/dist/shorthands/textDecoration.d.ts.map +1 -0
- package/dist/shorthands/textDecoration.js +31 -0
- package/dist/shorthands/textDecoration.js.map +1 -0
- package/dist/shorthands/transition.d.ts +23 -0
- package/dist/shorthands/transition.d.ts.map +1 -0
- package/dist/shorthands/transition.js +54 -0
- package/dist/shorthands/transition.js.map +1 -0
- package/dist/shorthands/types.d.ts +30 -0
- package/dist/shorthands/types.d.ts.map +1 -0
- package/dist/shorthands/types.js +2 -0
- package/dist/shorthands/types.js.map +1 -0
- package/dist/shorthands/utils.d.ts +4 -0
- package/dist/shorthands/utils.d.ts.map +1 -0
- package/dist/shorthands/utils.js +16 -0
- package/dist/shorthands/utils.js.map +1 -0
- package/dist/types.d.ts +77 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +24 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { DEBUG_RESET_CLASSES, DEFINITION_LOOKUP_TABLE, LOOKUP_DEFINITIONS_INDEX, LOOKUP_DIR_INDEX, RESET_HASH_PREFIX, SEQUENCE_PREFIX, SEQUENCE_SIZE, } from './constants';
|
|
2
|
+
import { hashSequence } from './runtime/utils/hashSequence';
|
|
3
|
+
import { reduceToClassName } from './runtime/reduceToClassNameForSlots';
|
|
4
|
+
// Contains a mapping of previously resolved sequences of atomic classnames
|
|
5
|
+
export const mergeClassesCachedResults = {};
|
|
6
|
+
export function mergeClasses() {
|
|
7
|
+
// arguments are parsed manually to avoid double loops as TS & Babel transforms rest via an additional loop
|
|
8
|
+
// @see https://babeljs.io/docs/en/babel-plugin-transform-parameters
|
|
9
|
+
/* eslint-disable prefer-rest-params */
|
|
10
|
+
let dir = null;
|
|
11
|
+
let resultClassName = '';
|
|
12
|
+
// Is used as a cache key to avoid object merging
|
|
13
|
+
let sequenceMatch = '';
|
|
14
|
+
const sequencesIds = new Array(arguments.length);
|
|
15
|
+
let containsResetClassName = '';
|
|
16
|
+
for (let i = 0; i < arguments.length; i++) {
|
|
17
|
+
const className = arguments[i];
|
|
18
|
+
if (typeof className === 'string' && className !== '') {
|
|
19
|
+
// All classes generated by `makeStyles()` are prefixed by a sequence hash, this allows to identify class sets
|
|
20
|
+
// without parsing each className in a string
|
|
21
|
+
const sequenceIndex = className.indexOf(SEQUENCE_PREFIX);
|
|
22
|
+
if (sequenceIndex === -1) {
|
|
23
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
24
|
+
className.split(' ').forEach(entry => {
|
|
25
|
+
if (entry.startsWith(RESET_HASH_PREFIX) && DEBUG_RESET_CLASSES[entry]) {
|
|
26
|
+
if (containsResetClassName) {
|
|
27
|
+
// eslint-disable-next-line no-console
|
|
28
|
+
console.error('mergeClasses(): a passed string contains multiple classes produced by makeResetStyles (' +
|
|
29
|
+
`${className} & ${resultClassName}, this will lead to non-deterministic behavior. Learn more:` +
|
|
30
|
+
'https://calame.js.org/react/api/make-reset-styles#limitations' +
|
|
31
|
+
'\n' +
|
|
32
|
+
`Source string: ${className}`);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
containsResetClassName = entry;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
resultClassName += className + ' ';
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const sequenceId = className.substr(sequenceIndex, SEQUENCE_SIZE);
|
|
44
|
+
// Handles a case with mixed classnames, i.e. "ui-button ATOMIC_CLASSES"
|
|
45
|
+
if (sequenceIndex > 0) {
|
|
46
|
+
resultClassName += className.slice(0, sequenceIndex);
|
|
47
|
+
}
|
|
48
|
+
sequenceMatch += sequenceId;
|
|
49
|
+
sequencesIds[i] = sequenceId;
|
|
50
|
+
}
|
|
51
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
52
|
+
if (className.indexOf(SEQUENCE_PREFIX, sequenceIndex + 1) !== -1) {
|
|
53
|
+
// eslint-disable-next-line no-console
|
|
54
|
+
console.error('mergeClasses(): a passed string contains multiple identifiers of atomic classes (classes that start ' +
|
|
55
|
+
`with "${SEQUENCE_PREFIX}"), it's possible that passed classes were concatenated in a wrong way. ` +
|
|
56
|
+
`Source string: ${className}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// .slice() there allows to avoid trailing space for non-atomic classes
|
|
62
|
+
// "ui-button ui-flex " => "ui-button ui-flex"
|
|
63
|
+
if (sequenceMatch === '') {
|
|
64
|
+
return resultClassName.slice(0, -1);
|
|
65
|
+
}
|
|
66
|
+
// It's safe to reuse results to avoid continuous merging as results are stable
|
|
67
|
+
// "__seq1 ... __seq2 ..." => "__seq12 ..."
|
|
68
|
+
const mergeClassesResult = mergeClassesCachedResults[sequenceMatch];
|
|
69
|
+
if (mergeClassesResult !== undefined) {
|
|
70
|
+
return resultClassName + mergeClassesResult;
|
|
71
|
+
}
|
|
72
|
+
const sequenceMappings = [];
|
|
73
|
+
for (let i = 0; i < arguments.length; i++) {
|
|
74
|
+
const sequenceId = sequencesIds[i];
|
|
75
|
+
if (sequenceId) {
|
|
76
|
+
const sequenceMapping = DEFINITION_LOOKUP_TABLE[sequenceId];
|
|
77
|
+
if (sequenceMapping) {
|
|
78
|
+
sequenceMappings.push(sequenceMapping[LOOKUP_DEFINITIONS_INDEX]);
|
|
79
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
80
|
+
if (dir !== null && dir !== sequenceMapping[LOOKUP_DIR_INDEX]) {
|
|
81
|
+
// eslint-disable-next-line no-console
|
|
82
|
+
console.error(`mergeClasses(): a passed string contains an identifier (${sequenceId}) that has different direction ` +
|
|
83
|
+
`(dir="${sequenceMapping[1] ? 'rtl' : 'ltr'}") setting than other classes. This is not supported. ` +
|
|
84
|
+
`Source string: ${arguments[i]}`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
dir = sequenceMapping[LOOKUP_DIR_INDEX];
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
91
|
+
// eslint-disable-next-line no-console
|
|
92
|
+
console.error(`mergeClasses(): a passed string contains an identifier (${sequenceId}) that does not match any entry ` +
|
|
93
|
+
`in cache. Source string: ${arguments[i]}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// eslint-disable-next-line prefer-spread
|
|
99
|
+
const resultClassesMap = Object.assign.apply(Object,
|
|
100
|
+
// .assign() mutates the first object, we can't mutate mappings as it will produce invalid results later
|
|
101
|
+
[{}].concat(sequenceMappings));
|
|
102
|
+
const [atomicClasses, classesMapHash] = reduceToClassName(resultClassesMap, dir);
|
|
103
|
+
// Each merge of classes generates a new sequence of atomic classes that needs to be registered
|
|
104
|
+
const newSequenceHash = hashSequence(classesMapHash, dir, sequencesIds);
|
|
105
|
+
const newClassName = newSequenceHash + ' ' + atomicClasses;
|
|
106
|
+
mergeClassesCachedResults[sequenceMatch] = newClassName;
|
|
107
|
+
DEFINITION_LOOKUP_TABLE[newSequenceHash] = [resultClassesMap, dir];
|
|
108
|
+
return resultClassName + newClassName;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=mergeClasses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeClasses.js","sourceRoot":"","sources":["../src/mergeClasses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { CalameRenderer } from '../types';
|
|
2
|
+
export interface CreateDOMRendererOptions {
|
|
3
|
+
/**
|
|
4
|
+
* A salt that will be added for hashed classes. Should be the same for all renderers in the same application
|
|
5
|
+
* (bundle).
|
|
6
|
+
*
|
|
7
|
+
* @see https://github.com/microsoft/calame/issues/453
|
|
8
|
+
*/
|
|
9
|
+
classNameHashSalt?: string;
|
|
10
|
+
/**
|
|
11
|
+
* If specified, a renderer will insert created style tags after this element.
|
|
12
|
+
*/
|
|
13
|
+
insertionPoint?: HTMLElement;
|
|
14
|
+
/**
|
|
15
|
+
* A map of attributes that's passed to the generated style elements. Is useful to set "nonce" attribute.
|
|
16
|
+
*
|
|
17
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce
|
|
18
|
+
*/
|
|
19
|
+
styleElementAttributes?: Record<string, string>;
|
|
20
|
+
/**
|
|
21
|
+
* A filter run before CSS rule insertion to systematically remove CSS rules at render time.
|
|
22
|
+
* This can be used to forbid specific rules from being written to the style sheet at run time without
|
|
23
|
+
* affecting build time styles.
|
|
24
|
+
*
|
|
25
|
+
* âš ï¸ Keep the filter as performant as possible to avoid negative performance impacts to your application.
|
|
26
|
+
* âš ï¸ This API is unstable and can be removed from the library at any time.
|
|
27
|
+
*/
|
|
28
|
+
unstable_filterCSSRule?: (cssRule: string) => boolean;
|
|
29
|
+
/**
|
|
30
|
+
* @param a - media query
|
|
31
|
+
* @param b - media query
|
|
32
|
+
* @returns positive number if a > b or negative number if a < b
|
|
33
|
+
*/
|
|
34
|
+
compareMediaQueries?: (a: string, b: string) => number;
|
|
35
|
+
}
|
|
36
|
+
/** @internal */
|
|
37
|
+
export declare const defaultCompareMediaQueries: (a: string, b: string) => 0 | 1 | -1;
|
|
38
|
+
/**
|
|
39
|
+
* Creates a new instances of a renderer.
|
|
40
|
+
*
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
export declare function createDOMRenderer(targetDocument?: Document | undefined, options?: CreateDOMRendererOptions): CalameRenderer;
|
|
44
|
+
//# sourceMappingURL=createDOMRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDOMRenderer.d.ts","sourceRoot":"","sources":["../../src/renderer/createDOMRenderer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAmB,MAAM,UAAU,CAAC;AAMhE,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,cAAc,CAAC,EAAE,WAAW,CAAC;IAE7B;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhD;;;;;;;OAOG;IACH,sBAAsB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAEtD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CACxD;AAED,gBAAgB;AAChB,eAAO,MAAM,0BAA0B,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,eAAiC,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,GAAE,QAAQ,GAAG,SAAkE,EAC7F,OAAO,GAAE,wBAA6B,GACrC,cAAc,CA4DhB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { injectDevTools, isDevToolsEnabled, debugData } from '../devtools';
|
|
2
|
+
import { normalizeCSSBucketEntry } from '../runtime/utils/normalizeCSSBucketEntry';
|
|
3
|
+
import { getStyleSheetForBucket } from './getStyleSheetForBucket';
|
|
4
|
+
import { safeInsertRule } from './safeInsertRule';
|
|
5
|
+
let lastIndex = 0;
|
|
6
|
+
/** @internal */
|
|
7
|
+
export const defaultCompareMediaQueries = (a, b) => (a < b ? -1 : a > b ? 1 : 0);
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new instances of a renderer.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export function createDOMRenderer(targetDocument = typeof document === 'undefined' ? undefined : document, options = {}) {
|
|
14
|
+
const { classNameHashSalt, unstable_filterCSSRule, insertionPoint, styleElementAttributes, compareMediaQueries = defaultCompareMediaQueries, } = options;
|
|
15
|
+
const renderer = {
|
|
16
|
+
classNameHashSalt,
|
|
17
|
+
insertionCache: {},
|
|
18
|
+
stylesheets: {},
|
|
19
|
+
styleElementAttributes: Object.freeze(styleElementAttributes),
|
|
20
|
+
compareMediaQueries,
|
|
21
|
+
id: `d${lastIndex++}`,
|
|
22
|
+
insertCSSRules(cssRules) {
|
|
23
|
+
// eslint-disable-next-line guard-for-in
|
|
24
|
+
for (const styleBucketName in cssRules) {
|
|
25
|
+
const cssRulesForBucket = cssRules[styleBucketName];
|
|
26
|
+
// This is a hot path in rendering styles: ".length" is cached in "l" var to avoid accesses the property
|
|
27
|
+
for (let i = 0, l = cssRulesForBucket.length; i < l; i++) {
|
|
28
|
+
const [ruleCSS, metadata] = normalizeCSSBucketEntry(cssRulesForBucket[i]);
|
|
29
|
+
const sheet = getStyleSheetForBucket(styleBucketName, targetDocument, insertionPoint || null, renderer, metadata);
|
|
30
|
+
if (renderer.insertionCache[ruleCSS]) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
renderer.insertionCache[ruleCSS] = styleBucketName;
|
|
34
|
+
if (process.env.NODE_ENV !== 'production' && isDevToolsEnabled) {
|
|
35
|
+
debugData.addCSSRule(ruleCSS);
|
|
36
|
+
}
|
|
37
|
+
if (unstable_filterCSSRule) {
|
|
38
|
+
if (unstable_filterCSSRule(ruleCSS)) {
|
|
39
|
+
safeInsertRule(sheet, ruleCSS);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
safeInsertRule(sheet, ruleCSS);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
};
|
|
49
|
+
if (targetDocument && process.env.NODE_ENV !== 'production' && isDevToolsEnabled) {
|
|
50
|
+
injectDevTools(targetDocument);
|
|
51
|
+
}
|
|
52
|
+
return renderer;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=createDOMRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDOMRenderer.js","sourceRoot":"","sources":["../../src/renderer/createDOMRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAEnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,IAAI,SAAS,GAAG,CAAC,CAAC;AAyClB,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjG;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,iBAAuC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAC7F,UAAoC,EAAE;IAEtC,MAAM,EACJ,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,sBAAsB,EACtB,mBAAmB,GAAG,0BAA0B,GACjD,GAAG,OAAO,CAAC;IACZ,MAAM,QAAQ,GAAmB;QAC/B,iBAAiB;QACjB,cAAc,EAAE,EAAE;QAClB,WAAW,EAAE,EAAE;QACf,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC;QAC7D,mBAAmB;QAEnB,EAAE,EAAE,IAAI,SAAS,EAAE,EAAE;QAErB,cAAc,CAAC,QAAQ;YACrB,wCAAwC;YACxC,KAAK,MAAM,eAAe,IAAI,QAAQ,EAAE,CAAC;gBACvC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAkC,CAAE,CAAC;gBAExE,wGAAwG;gBACxG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzD,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,MAAM,KAAK,GAAG,sBAAsB,CAClC,eAAkC,EAClC,cAAc,EACd,cAAc,IAAI,IAAI,EACtB,QAAQ,EACR,QAAQ,CACT,CAAC;oBAEF,IAAI,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;wBACrC,SAAS;oBACX,CAAC;oBAED,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,eAAkC,CAAC;oBAEtE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,iBAAiB,EAAE,CAAC;wBAC/D,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAChC,CAAC;oBAED,IAAI,sBAAsB,EAAE,CAAC;wBAC3B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;4BACpC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;wBACjC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;IAEF,IAAI,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,iBAAiB,EAAE,CAAC;QACjF,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IsomorphicStyleSheet, StyleBucketName } from '../types';
|
|
2
|
+
export declare function createIsomorphicStyleSheet(styleElement: HTMLStyleElement | undefined, bucketName: StyleBucketName, priority: number, elementAttributes: Record<string, string>): IsomorphicStyleSheet;
|
|
3
|
+
export declare function createIsomorphicStyleSheetFromElement(element: HTMLStyleElement): IsomorphicStyleSheet;
|
|
4
|
+
//# sourceMappingURL=createIsomorphicStyleSheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createIsomorphicStyleSheet.d.ts","sourceRoot":"","sources":["../../src/renderer/createIsomorphicStyleSheet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEtE,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,gBAAgB,GAAG,SAAS,EAC1C,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACxC,oBAAoB,CAkCtB;AAED,wBAAgB,qCAAqC,CAAC,OAAO,EAAE,gBAAgB,wBAY9E"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { DATA_BUCKET_ATTR, DATA_PRIORITY_ATTR } from '../constants';
|
|
2
|
+
export function createIsomorphicStyleSheet(styleElement, bucketName, priority, elementAttributes) {
|
|
3
|
+
// no CSSStyleSheet in SSR, just append rules here for server render
|
|
4
|
+
const __cssRulesForSSR = [];
|
|
5
|
+
elementAttributes[DATA_BUCKET_ATTR] = bucketName;
|
|
6
|
+
elementAttributes[DATA_PRIORITY_ATTR] = String(priority);
|
|
7
|
+
if (styleElement) {
|
|
8
|
+
for (const attrName in elementAttributes) {
|
|
9
|
+
styleElement.setAttribute(attrName, elementAttributes[attrName]);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
function insertRule(rule) {
|
|
13
|
+
if (styleElement === null || styleElement === void 0 ? void 0 : styleElement.sheet) {
|
|
14
|
+
return styleElement.sheet.insertRule(rule, styleElement.sheet.cssRules.length);
|
|
15
|
+
}
|
|
16
|
+
return __cssRulesForSSR.push(rule);
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
elementAttributes,
|
|
20
|
+
insertRule,
|
|
21
|
+
element: styleElement,
|
|
22
|
+
bucketName,
|
|
23
|
+
cssRules() {
|
|
24
|
+
if (styleElement === null || styleElement === void 0 ? void 0 : styleElement.sheet) {
|
|
25
|
+
return Array.from(styleElement.sheet.cssRules).map(cssRule => cssRule.cssText);
|
|
26
|
+
}
|
|
27
|
+
return __cssRulesForSSR;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export function createIsomorphicStyleSheetFromElement(element) {
|
|
32
|
+
const elementAttributes = Array.from(element.attributes).reduce((acc, attr) => {
|
|
33
|
+
acc[attr.name] = attr.value;
|
|
34
|
+
return acc;
|
|
35
|
+
}, {});
|
|
36
|
+
const stylesheet = createIsomorphicStyleSheet(element, elementAttributes[DATA_BUCKET_ATTR], Number(elementAttributes[DATA_PRIORITY_ATTR]), elementAttributes);
|
|
37
|
+
return stylesheet;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=createIsomorphicStyleSheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createIsomorphicStyleSheet.js","sourceRoot":"","sources":["../../src/renderer/createIsomorphicStyleSheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGpE,MAAM,UAAU,0BAA0B,CACxC,YAA0C,EAC1C,UAA2B,EAC3B,QAAgB,EAChB,iBAAyC;IAEzC,oEAAoE;IACpE,MAAM,gBAAgB,GAAa,EAAE,CAAC;IAEtC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,UAAU,CAAC;IACjD,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEzD,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;YACzC,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,SAAS,UAAU,CAAC,IAAY;QAC9B,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,EAAE,CAAC;YACxB,OAAO,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,OAAO;QACL,iBAAiB;QACjB,UAAU;QACV,OAAO,EAAE,YAAY;QACrB,UAAU;QACV,QAAQ;YACN,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACjF,CAAC;YAED,OAAO,gBAAgB,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,OAAyB;IAC7E,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC5E,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAA4B,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,0BAA0B,CAC3C,OAAO,EACP,iBAAiB,CAAC,gBAAgB,CAAoB,EACtD,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,EAC7C,iBAAiB,CAClB,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { CalameRenderer, IsomorphicStyleSheet, StyleBucketName } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Ordered style buckets using their short pseudo name.
|
|
4
|
+
*
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare const styleBucketOrdering: StyleBucketName[];
|
|
8
|
+
export declare function getStyleSheetKey(bucketName: StyleBucketName, media: string, priority: number | string): string;
|
|
9
|
+
export declare function getStyleSheetKeyFromElement(styleEl: HTMLStyleElement): string;
|
|
10
|
+
/**
|
|
11
|
+
* Lazily adds a `<style>` bucket to the `<head>`. This will ensure that the style buckets are ordered.
|
|
12
|
+
*/
|
|
13
|
+
export declare function getStyleSheetForBucket(bucketName: StyleBucketName, targetDocument: Document | undefined, insertionPoint: HTMLElement | null, renderer: CalameRenderer, metadata?: Record<string, unknown>): IsomorphicStyleSheet;
|
|
14
|
+
//# sourceMappingURL=getStyleSheetForBucket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getStyleSheetForBucket.d.ts","sourceRoot":"","sources":["../../src/renderer/getStyleSheetForBucket.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGtF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAAe,EA6BhD,CAAC;AAQF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAE9G;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAK7E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAC3B,cAAc,EAAE,QAAQ,GAAG,SAAS,EACpC,cAAc,EAAE,WAAW,GAAG,IAAI,EAClC,QAAQ,EAAE,cAAc,EACxB,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACrC,oBAAoB,CA0BtB"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { DATA_BUCKET_ATTR, DATA_PRIORITY_ATTR } from '../constants';
|
|
2
|
+
import { createIsomorphicStyleSheet } from './createIsomorphicStyleSheet';
|
|
3
|
+
/**
|
|
4
|
+
* Ordered style buckets using their short pseudo name.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export const styleBucketOrdering = [
|
|
9
|
+
// reset styles
|
|
10
|
+
'r',
|
|
11
|
+
// catch-all
|
|
12
|
+
'd',
|
|
13
|
+
// link
|
|
14
|
+
'l',
|
|
15
|
+
// visited
|
|
16
|
+
'v',
|
|
17
|
+
// focus-within
|
|
18
|
+
'w',
|
|
19
|
+
// focus
|
|
20
|
+
'f',
|
|
21
|
+
// focus-visible
|
|
22
|
+
'i',
|
|
23
|
+
// hover
|
|
24
|
+
'h',
|
|
25
|
+
// active
|
|
26
|
+
'a',
|
|
27
|
+
// at rules for reset styles
|
|
28
|
+
's',
|
|
29
|
+
// keyframes
|
|
30
|
+
'k',
|
|
31
|
+
// at-rules
|
|
32
|
+
't',
|
|
33
|
+
// @media rules
|
|
34
|
+
'm',
|
|
35
|
+
// @container rules
|
|
36
|
+
'c',
|
|
37
|
+
];
|
|
38
|
+
// avoid repeatedly calling `indexOf` to determine order during new insertions
|
|
39
|
+
const styleBucketOrderingMap = styleBucketOrdering.reduce((acc, cur, j) => {
|
|
40
|
+
acc[cur] = j;
|
|
41
|
+
return acc;
|
|
42
|
+
}, {});
|
|
43
|
+
export function getStyleSheetKey(bucketName, media, priority) {
|
|
44
|
+
return (bucketName === 'm' ? bucketName + media : bucketName) + priority;
|
|
45
|
+
}
|
|
46
|
+
export function getStyleSheetKeyFromElement(styleEl) {
|
|
47
|
+
var _a;
|
|
48
|
+
const bucketName = styleEl.getAttribute(DATA_BUCKET_ATTR);
|
|
49
|
+
const priority = (_a = styleEl.getAttribute(DATA_PRIORITY_ATTR)) !== null && _a !== void 0 ? _a : '0';
|
|
50
|
+
return getStyleSheetKey(bucketName, styleEl.media, priority);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Lazily adds a `<style>` bucket to the `<head>`. This will ensure that the style buckets are ordered.
|
|
54
|
+
*/
|
|
55
|
+
export function getStyleSheetForBucket(bucketName, targetDocument, insertionPoint, renderer, metadata = {}) {
|
|
56
|
+
var _a, _b;
|
|
57
|
+
const isMediaBucket = bucketName === 'm';
|
|
58
|
+
const media = (_a = metadata['m']) !== null && _a !== void 0 ? _a : '0';
|
|
59
|
+
const priority = (_b = metadata['p']) !== null && _b !== void 0 ? _b : 0;
|
|
60
|
+
const stylesheetKey = getStyleSheetKey(bucketName, media, priority);
|
|
61
|
+
if (!renderer.stylesheets[stylesheetKey]) {
|
|
62
|
+
const tag = targetDocument && targetDocument.createElement('style');
|
|
63
|
+
const stylesheet = createIsomorphicStyleSheet(tag, bucketName, priority, {
|
|
64
|
+
...renderer.styleElementAttributes,
|
|
65
|
+
...(isMediaBucket && { media }),
|
|
66
|
+
});
|
|
67
|
+
renderer.stylesheets[stylesheetKey] = stylesheet;
|
|
68
|
+
if ((targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.head) && tag) {
|
|
69
|
+
targetDocument.head.insertBefore(tag, findInsertionPoint(targetDocument, insertionPoint, bucketName, renderer, metadata));
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return renderer.stylesheets[stylesheetKey];
|
|
73
|
+
}
|
|
74
|
+
function isSameInsertionKey(element, bucketName, metadata) {
|
|
75
|
+
var _a, _b;
|
|
76
|
+
const targetKey = bucketName + ((_a = metadata['m']) !== null && _a !== void 0 ? _a : '');
|
|
77
|
+
const elementKey = element.getAttribute(DATA_BUCKET_ATTR) + ((_b = element.media) !== null && _b !== void 0 ? _b : '');
|
|
78
|
+
return targetKey === elementKey;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Finds an element before which the new bucket style element should be inserted following the bucket sort order.
|
|
82
|
+
*
|
|
83
|
+
* @param targetDocument - A document
|
|
84
|
+
* @param insertionPoint - An element that will be used as an initial insertion point
|
|
85
|
+
* @param targetBucket - The bucket that should be inserted to DOM
|
|
86
|
+
* @param renderer - Calame renderer
|
|
87
|
+
* @param metadata - metadata for CSS rule
|
|
88
|
+
* @returns - Smallest style element with greater sort order than the current bucket
|
|
89
|
+
*/
|
|
90
|
+
function findInsertionPoint(targetDocument, insertionPoint, targetBucket, renderer, metadata = {}) {
|
|
91
|
+
var _a, _b;
|
|
92
|
+
const targetOrder = styleBucketOrderingMap[targetBucket];
|
|
93
|
+
const media = (_a = metadata['m']) !== null && _a !== void 0 ? _a : '';
|
|
94
|
+
const priority = (_b = metadata['p']) !== null && _b !== void 0 ? _b : 0;
|
|
95
|
+
// Similar to javascript sort comparators where
|
|
96
|
+
// a positive value is increasing sort order
|
|
97
|
+
// a negative value is decreasing sort order
|
|
98
|
+
let comparer = el => targetOrder - styleBucketOrderingMap[el.getAttribute(DATA_BUCKET_ATTR)];
|
|
99
|
+
let styleElements = targetDocument.head.querySelectorAll(`[${DATA_BUCKET_ATTR}]`);
|
|
100
|
+
if (targetBucket === 'm') {
|
|
101
|
+
const mediaElements = targetDocument.head.querySelectorAll(`[${DATA_BUCKET_ATTR}="${targetBucket}"]`);
|
|
102
|
+
// only reduce the scope of the search and change comparer
|
|
103
|
+
// if there are other media buckets already on the page
|
|
104
|
+
if (mediaElements.length) {
|
|
105
|
+
styleElements = mediaElements;
|
|
106
|
+
comparer = (el) => renderer.compareMediaQueries(media, el.media);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const comparerWithPriority = el => {
|
|
110
|
+
if (isSameInsertionKey(el, targetBucket, metadata)) {
|
|
111
|
+
return priority - Number(el.getAttribute('data-priority'));
|
|
112
|
+
}
|
|
113
|
+
return comparer(el);
|
|
114
|
+
};
|
|
115
|
+
const length = styleElements.length;
|
|
116
|
+
let index = length - 1;
|
|
117
|
+
while (index >= 0) {
|
|
118
|
+
const styleElement = styleElements.item(index);
|
|
119
|
+
if (comparerWithPriority(styleElement) > 0) {
|
|
120
|
+
return styleElement.nextSibling;
|
|
121
|
+
}
|
|
122
|
+
index--;
|
|
123
|
+
}
|
|
124
|
+
if (length > 0) {
|
|
125
|
+
return styleElements.item(0);
|
|
126
|
+
}
|
|
127
|
+
return insertionPoint ? insertionPoint.nextSibling : null;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=getStyleSheetForBucket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getStyleSheetForBucket.js","sourceRoot":"","sources":["../../src/renderer/getStyleSheetForBucket.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CalameRenderer } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Should be called in a case of Server-Side rendering. Rehydrates cache from for a renderer to avoid double insertion
|
|
4
|
+
* of classes to DOM.
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export declare function rehydrateRendererCache(renderer: CalameRenderer, target?: Document | undefined): void;
|
|
9
|
+
//# sourceMappingURL=rehydrateRendererCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rehydrateRendererCache.d.ts","sourceRoot":"","sources":["../../src/renderer/rehydrateRendererCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAmB,MAAM,UAAU,CAAC;AAiBhE;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EACxB,MAAM,GAAE,QAAQ,GAAG,SAAkE,QA6BtF"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { isDevToolsEnabled, debugData } from '../devtools';
|
|
2
|
+
import { createIsomorphicStyleSheetFromElement } from './createIsomorphicStyleSheet';
|
|
3
|
+
import { getStyleSheetKeyFromElement } from './getStyleSheetForBucket';
|
|
4
|
+
// Regexps to extract names of classes and animations
|
|
5
|
+
// https://github.com/styletron/styletron/blob/e0fcae826744eb00ce679ac613a1b10d44256660/packages/styletron-engine-atomic/src/client/client.js#L8
|
|
6
|
+
const KEYFRAMES_HYDRATOR = /@(-webkit-)?keyframes ([^{]+){((?:(?:from|to|(?:\d+\.?\d*%))\{(?:[^}])*})*)}/g;
|
|
7
|
+
const AT_RULES_HYDRATOR = /@(media|supports|layer)[^{]+\{([\s\S]+?})\s*}/g;
|
|
8
|
+
const STYLES_HYDRATOR = /\.([^{:]+)(:[^{]+)?{(?:[^}]*;)?([^}]*?)}/g;
|
|
9
|
+
const regexps = {
|
|
10
|
+
k: KEYFRAMES_HYDRATOR,
|
|
11
|
+
t: AT_RULES_HYDRATOR,
|
|
12
|
+
m: AT_RULES_HYDRATOR,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Should be called in a case of Server-Side rendering. Rehydrates cache from for a renderer to avoid double insertion
|
|
16
|
+
* of classes to DOM.
|
|
17
|
+
*
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export function rehydrateRendererCache(renderer, target = typeof document === 'undefined' ? undefined : document) {
|
|
21
|
+
if (target) {
|
|
22
|
+
const styleElements = target.querySelectorAll('[data-make-styles-bucket]');
|
|
23
|
+
styleElements.forEach(styleElement => {
|
|
24
|
+
const bucketName = styleElement.dataset['makeStylesBucket'];
|
|
25
|
+
const stylesheetKey = getStyleSheetKeyFromElement(styleElement);
|
|
26
|
+
// 👇 If some elements are not created yet, we will register them in renderer
|
|
27
|
+
if (!renderer.stylesheets[stylesheetKey]) {
|
|
28
|
+
renderer.stylesheets[stylesheetKey] = createIsomorphicStyleSheetFromElement(styleElement);
|
|
29
|
+
}
|
|
30
|
+
const regex = regexps[bucketName] || STYLES_HYDRATOR;
|
|
31
|
+
let match;
|
|
32
|
+
while ((match = regex.exec(styleElement.textContent))) {
|
|
33
|
+
// "cacheKey" is either a class name or an animation name
|
|
34
|
+
const [cssRule] = match;
|
|
35
|
+
renderer.insertionCache[cssRule] = bucketName;
|
|
36
|
+
if (process.env.NODE_ENV !== 'production' && isDevToolsEnabled) {
|
|
37
|
+
debugData.addCSSRule(cssRule);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=rehydrateRendererCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rehydrateRendererCache.js","sourceRoot":"","sources":["../../src/renderer/rehydrateRendererCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,qCAAqC,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAEvE,qDAAqD;AACrD,gJAAgJ;AAChJ,MAAM,kBAAkB,GAAG,+EAA+E,CAAC;AAC3G,MAAM,iBAAiB,GAAG,gDAAgD,CAAC;AAC3E,MAAM,eAAe,GAAG,2CAA2C,CAAC;AAEpE,MAAM,OAAO,GAA6C;IACxD,CAAC,EAAE,kBAAkB;IACrB,CAAC,EAAE,iBAAiB;IACpB,CAAC,EAAE,iBAAiB;CACrB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAwB,EACxB,SAA+B,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;IAErF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAmB,2BAA2B,CAAC,CAAC;QAE7F,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACnC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,kBAAkB,CAAoB,CAAC;YAC/E,MAAM,aAAa,GAAG,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAEhE,+EAA+E;YAC/E,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,qCAAqC,CAAC,YAAY,CAAC,CAAC;YAC5F,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,eAAe,CAAC;YACrD,IAAI,KAAK,CAAC;YAEV,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,WAAY,CAAC,CAAC,EAAE,CAAC;gBACvD,yDAAyD;gBACzD,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;gBAExB,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC;gBAE9C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,iBAAiB,EAAE,CAAC;oBAC/D,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*
|
|
4
|
+
* Calls `sheet.insertRule` and catches errors related to browser prefixes.
|
|
5
|
+
*/
|
|
6
|
+
export declare function safeInsertRule(sheet: {
|
|
7
|
+
insertRule(rule: string): number | undefined;
|
|
8
|
+
}, ruleCSS: string): void;
|
|
9
|
+
//# sourceMappingURL=safeInsertRule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeInsertRule.d.ts","sourceRoot":"","sources":["../../src/renderer/safeInsertRule.ts"],"names":[],"mappings":"AAaA;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IAAE,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAU7G"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Suffixes to be ignored in case of error
|
|
3
|
+
*/
|
|
4
|
+
const ignoreSuffixes = [
|
|
5
|
+
'-moz-placeholder',
|
|
6
|
+
'-moz-focus-inner',
|
|
7
|
+
'-moz-focusring',
|
|
8
|
+
'-ms-input-placeholder',
|
|
9
|
+
'-moz-read-write',
|
|
10
|
+
'-moz-read-only',
|
|
11
|
+
].join('|');
|
|
12
|
+
const ignoreSuffixesRegex = new RegExp(`:(${ignoreSuffixes})`);
|
|
13
|
+
/**
|
|
14
|
+
* @internal
|
|
15
|
+
*
|
|
16
|
+
* Calls `sheet.insertRule` and catches errors related to browser prefixes.
|
|
17
|
+
*/
|
|
18
|
+
export function safeInsertRule(sheet, ruleCSS) {
|
|
19
|
+
try {
|
|
20
|
+
sheet.insertRule(ruleCSS);
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
// We've disabled these warnings due to false-positive errors with browser prefixes
|
|
24
|
+
if (process.env.NODE_ENV !== 'production' && !ignoreSuffixesRegex.test(ruleCSS)) {
|
|
25
|
+
// eslint-disable-next-line no-console
|
|
26
|
+
console.error(`There was a problem inserting the following rule: "${ruleCSS}"`, e);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=safeInsertRule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeInsertRule.js","sourceRoot":"","sources":["../../src/renderer/safeInsertRule.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,cAAc,GAAG;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;IAChB,uBAAuB;IACvB,iBAAiB;IACjB,gBAAgB;CACjB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACZ,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAC,KAAK,cAAc,GAAG,CAAC,CAAC;AAE/D;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAuD,EAAE,OAAe;IACrG,IAAI,CAAC;QACH,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,mFAAmF;QACnF,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChF,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,sDAAsD,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CSSClassesMapBySlot, CSSRulesByBucket, StylesBySlots } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Calls resolveStyleRules() for each slot, is also used by build time transform.
|
|
4
|
+
*
|
|
5
|
+
* @param stylesBySlots - An object with makeStyles rules where a key is a slot name
|
|
6
|
+
* @param classNameHashSalt - A salt for classes hash
|
|
7
|
+
*
|
|
8
|
+
* @return - A tuple with an object classnames mapping where a key is a slot name and an array with CSS rules
|
|
9
|
+
*/
|
|
10
|
+
export declare function resolveStyleRulesForSlots<Slots extends string | number>(stylesBySlots: StylesBySlots<Slots>, classNameHashSalt?: string): [CSSClassesMapBySlot<Slots>, CSSRulesByBucket];
|
|
11
|
+
//# sourceMappingURL=resolveStyleRulesForSlots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveStyleRulesForSlots.d.ts","sourceRoot":"","sources":["../src/resolveStyleRulesForSlots.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAmB,aAAa,EAAE,MAAM,SAAS,CAAC;AAErG;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACrE,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,iBAAiB,GAAE,MAAW,GAC7B,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,CAiBhD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { resolveStyleRules } from './runtime/resolveStyleRules';
|
|
2
|
+
/**
|
|
3
|
+
* Calls resolveStyleRules() for each slot, is also used by build time transform.
|
|
4
|
+
*
|
|
5
|
+
* @param stylesBySlots - An object with makeStyles rules where a key is a slot name
|
|
6
|
+
* @param classNameHashSalt - A salt for classes hash
|
|
7
|
+
*
|
|
8
|
+
* @return - A tuple with an object classnames mapping where a key is a slot name and an array with CSS rules
|
|
9
|
+
*/
|
|
10
|
+
export function resolveStyleRulesForSlots(stylesBySlots, classNameHashSalt = '') {
|
|
11
|
+
const classesMapBySlot = {};
|
|
12
|
+
const cssRules = {};
|
|
13
|
+
// eslint-disable-next-line guard-for-in
|
|
14
|
+
for (const slotName in stylesBySlots) {
|
|
15
|
+
const slotStyles = stylesBySlots[slotName];
|
|
16
|
+
const [cssClassMap, cssRulesByBucket] = resolveStyleRules(slotStyles, classNameHashSalt);
|
|
17
|
+
classesMapBySlot[slotName] = cssClassMap;
|
|
18
|
+
Object.keys(cssRulesByBucket).forEach(styleBucketName => {
|
|
19
|
+
cssRules[styleBucketName] = (cssRules[styleBucketName] || []).concat(cssRulesByBucket[styleBucketName]);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return [classesMapBySlot, cssRules];
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=resolveStyleRulesForSlots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveStyleRulesForSlots.js","sourceRoot":"","sources":["../src/resolveStyleRulesForSlots.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACvC,aAAmC,EACnC,oBAA4B,EAAE;IAE9B,MAAM,gBAAgB,GAAG,EAAgC,CAAC;IAC1D,MAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,wCAAwC;IACxC,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;QACrC,MAAM,UAAU,GAAgB,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,GAAG,iBAAiB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QAEzF,gBAAgB,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC;QAExC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAuB,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;YAC7E,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,eAAe,CAAE,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { AtRules } from './utils/types';
|
|
2
|
+
export interface CompileAtomicCSSOptions {
|
|
3
|
+
className: string;
|
|
4
|
+
selectors: string[];
|
|
5
|
+
property: string;
|
|
6
|
+
value: number | string | Array<number | string>;
|
|
7
|
+
rtlClassName?: string;
|
|
8
|
+
rtlProperty?: string;
|
|
9
|
+
rtlValue?: number | string | Array<number | string>;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Normalizes pseudo selectors to always contain &, requires to work properly with comma-separated selectors.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ":hover" => "&:hover"
|
|
16
|
+
* " :hover" => "& :hover"
|
|
17
|
+
* ":hover,:focus" => "&:hover,&:focus"
|
|
18
|
+
* " :hover, :focus" => "& :hover,& :focus"
|
|
19
|
+
*/
|
|
20
|
+
export declare function normalizePseudoSelector(pseudoSelector: string): string;
|
|
21
|
+
export declare function compileAtomicCSSRule(options: CompileAtomicCSSOptions, atRules: AtRules): [string?, string?];
|
|
22
|
+
//# sourceMappingURL=compileAtomicCSSRule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compileAtomicCSSRule.d.ts","sourceRoot":"","sources":["../../src/runtime/compileAtomicCSSRule.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAEhD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CACrD;AAID;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAStE;AAcD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,OAAO,GACf,CAAC,MAAM,CAAC,EAAuB,MAAM,CAAC,CAAsB,CAqC9D"}
|