@tamagui/web 1.74.3 → 1.74.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/helpers/getAnimationDriver.js +28 -0
- package/dist/cjs/helpers/getAnimationDriver.js.map +6 -0
- package/dist/cjs/helpers/getAnimationDriver.native.js +29 -0
- package/dist/cjs/helpers/getAnimationDriver.native.js.map +6 -0
- package/dist/cjs/helpers/propMapper.js +24 -19
- package/dist/cjs/helpers/propMapper.js.map +1 -1
- package/dist/cjs/helpers/propMapper.native.js +24 -19
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/hooks/useAnimationDriver.js +26 -0
- package/dist/cjs/hooks/useAnimationDriver.js.map +6 -0
- package/dist/cjs/hooks/useAnimationDriver.native.js +27 -0
- package/dist/cjs/hooks/useAnimationDriver.native.js.map +6 -0
- package/dist/cjs/hooks/useStyle.js +47 -0
- package/dist/cjs/hooks/useStyle.js.map +6 -0
- package/dist/cjs/hooks/useStyle.native.js +48 -0
- package/dist/cjs/hooks/useStyle.native.js.map +6 -0
- package/dist/cjs/hooks/useTheme.js +1 -1
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js +2 -2
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/views/AnimationDriverProvider.js +26 -0
- package/dist/cjs/views/AnimationDriverProvider.js.map +6 -0
- package/dist/cjs/views/AnimationDriverProvider.native.js +27 -0
- package/dist/cjs/views/AnimationDriverProvider.native.js.map +6 -0
- package/dist/esm/Tamagui.native.js +36 -0
- package/dist/esm/Tamagui.native.js.map +6 -0
- package/dist/esm/config.native.js +62 -0
- package/dist/esm/config.native.js.map +6 -0
- package/dist/esm/constants/accessibilityDirectMap.native.js +59 -0
- package/dist/esm/constants/accessibilityDirectMap.native.js.map +6 -0
- package/dist/esm/constants/constants.native.js +9 -0
- package/dist/esm/constants/constants.native.js.map +6 -0
- package/dist/esm/constants/isDevTools.native.js +12 -0
- package/dist/esm/constants/isDevTools.native.js.map +6 -0
- package/dist/esm/contexts/ComponentContext.native.js +22 -0
- package/dist/esm/contexts/ComponentContext.native.js.map +6 -0
- package/dist/esm/createComponent.native.js +683 -0
- package/dist/esm/createComponent.native.js.map +6 -0
- package/dist/esm/createFont.native.js +38 -0
- package/dist/esm/createFont.native.js.map +6 -0
- package/dist/esm/createShorthands.native.js +7 -0
- package/dist/esm/createShorthands.native.js.map +6 -0
- package/dist/esm/createTamagui.native.js +181 -0
- package/dist/esm/createTamagui.native.js.map +6 -0
- package/dist/esm/createTheme.native.js +5 -0
- package/dist/esm/createTheme.native.js.map +6 -0
- package/dist/esm/createTokens.native.js +8 -0
- package/dist/esm/createTokens.native.js.map +6 -0
- package/dist/esm/createVariable.native.js +57 -0
- package/dist/esm/createVariable.native.js.map +6 -0
- package/dist/esm/createVariables.native.js +34 -0
- package/dist/esm/createVariables.native.js.map +6 -0
- package/dist/esm/defaultComponentState.native.js +19 -0
- package/dist/esm/defaultComponentState.native.js.map +6 -0
- package/dist/esm/helpers/ThemeManager.native.js +157 -0
- package/dist/esm/helpers/ThemeManager.native.js.map +6 -0
- package/dist/esm/helpers/ThemeManagerContext.native.js +6 -0
- package/dist/esm/helpers/ThemeManagerContext.native.js.map +6 -0
- package/dist/esm/helpers/createChainedWeakCache.native.js +33 -0
- package/dist/esm/helpers/createChainedWeakCache.native.js.map +6 -0
- package/dist/esm/helpers/createMediaStyle.native.js +52 -0
- package/dist/esm/helpers/createMediaStyle.native.js.map +6 -0
- package/dist/esm/helpers/createProxy.native.js +14 -0
- package/dist/esm/helpers/createProxy.native.js.map +6 -0
- package/dist/esm/helpers/createShallowSetState.native.js +14 -0
- package/dist/esm/helpers/createShallowSetState.native.js.map +6 -0
- package/dist/esm/helpers/createStyledContext.native.js +30 -0
- package/dist/esm/helpers/createStyledContext.native.js.map +6 -0
- package/dist/esm/helpers/defaultOffset.native.js +5 -0
- package/dist/esm/helpers/defaultOffset.native.js.map +6 -0
- package/dist/esm/helpers/expandStyle.native.js +43 -0
- package/dist/esm/helpers/expandStyle.native.js.map +6 -0
- package/dist/esm/helpers/expandStyles.native.js +37 -0
- package/dist/esm/helpers/expandStyles.native.js.map +6 -0
- package/dist/esm/helpers/getAnimationDriver.js +8 -0
- package/dist/esm/helpers/getAnimationDriver.js.map +6 -0
- package/dist/esm/helpers/getExpandedShorthands.native.js +14 -0
- package/dist/esm/helpers/getExpandedShorthands.native.js.map +6 -0
- package/dist/esm/helpers/getFontLanguage.native.js +5 -0
- package/dist/esm/helpers/getFontLanguage.native.js.map +6 -0
- package/dist/esm/helpers/getGroupPropParts.native.js +11 -0
- package/dist/esm/helpers/getGroupPropParts.native.js.map +6 -0
- package/dist/esm/helpers/getSplitStyles.native.js +539 -0
- package/dist/esm/helpers/getSplitStyles.native.js.map +6 -0
- package/dist/esm/helpers/getStylesAtomic.native.js +10 -0
- package/dist/esm/helpers/getStylesAtomic.native.js.map +6 -0
- package/dist/esm/helpers/getThemeCSSRules.native.js +7 -0
- package/dist/esm/helpers/getThemeCSSRules.native.js.map +6 -0
- package/dist/esm/helpers/getVariantExtras.native.js +51 -0
- package/dist/esm/helpers/getVariantExtras.native.js.map +6 -0
- package/dist/esm/helpers/insertStyleRule.native.js +195 -0
- package/dist/esm/helpers/insertStyleRule.native.js.map +6 -0
- package/dist/esm/helpers/isObj.native.js +5 -0
- package/dist/esm/helpers/isObj.native.js.map +6 -0
- package/dist/esm/helpers/isTamaguiComponent.native.js +8 -0
- package/dist/esm/helpers/isTamaguiComponent.native.js.map +6 -0
- package/dist/esm/helpers/isTamaguiElement.native.js +7 -0
- package/dist/esm/helpers/isTamaguiElement.native.js.map +6 -0
- package/dist/esm/helpers/matchMedia.native.js +20 -0
- package/dist/esm/helpers/matchMedia.native.js.map +6 -0
- package/dist/esm/helpers/mergeProps.native.js +28 -0
- package/dist/esm/helpers/mergeProps.native.js.map +6 -0
- package/dist/esm/helpers/mergeVariants.native.js +35 -0
- package/dist/esm/helpers/mergeVariants.native.js.map +6 -0
- package/dist/esm/helpers/normalizeColor.native.js +20 -0
- package/dist/esm/helpers/normalizeColor.native.js.map +6 -0
- package/dist/esm/helpers/normalizeShadow.native.js +28 -0
- package/dist/esm/helpers/normalizeShadow.native.js.map +6 -0
- package/dist/esm/helpers/normalizeStylePropKeys.native.js +16 -0
- package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +6 -0
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +40 -0
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +6 -0
- package/dist/esm/helpers/objectIdentityKey.native.js +22 -0
- package/dist/esm/helpers/objectIdentityKey.native.js.map +6 -0
- package/dist/esm/helpers/propMapper.js +24 -19
- package/dist/esm/helpers/propMapper.js.map +1 -1
- package/dist/esm/helpers/propMapper.native.js +213 -0
- package/dist/esm/helpers/propMapper.native.js.map +6 -0
- package/dist/esm/helpers/proxyThemeToParents.native.js +40 -0
- package/dist/esm/helpers/proxyThemeToParents.native.js.map +6 -0
- package/dist/esm/helpers/proxyThemeVariables.native.js +16 -0
- package/dist/esm/helpers/proxyThemeVariables.native.js.map +6 -0
- package/dist/esm/helpers/pseudoDescriptors.native.js +37 -0
- package/dist/esm/helpers/pseudoDescriptors.native.js.map +6 -0
- package/dist/esm/helpers/registerCSSVariable.native.js +10 -0
- package/dist/esm/helpers/registerCSSVariable.native.js.map +6 -0
- package/dist/esm/helpers/themeable.native.js +29 -0
- package/dist/esm/helpers/themeable.native.js.map +6 -0
- package/dist/esm/helpers/themes.native.js +17 -0
- package/dist/esm/helpers/themes.native.js.map +6 -0
- package/dist/esm/helpers/timer.native.js +11 -0
- package/dist/esm/helpers/timer.native.js.map +6 -0
- package/dist/esm/helpers/withStaticProperties.native.js +20 -0
- package/dist/esm/helpers/withStaticProperties.native.js.map +6 -0
- package/dist/esm/hooks/getThemeUnwrapped.native.js +6 -0
- package/dist/esm/hooks/getThemeUnwrapped.native.js.map +6 -0
- package/dist/esm/hooks/useAnimationDriver.js +8 -0
- package/dist/esm/hooks/useAnimationDriver.js.map +6 -0
- package/dist/esm/hooks/useConfiguration.native.js +15 -0
- package/dist/esm/hooks/useConfiguration.native.js.map +6 -0
- package/dist/esm/hooks/useDisableSSR.native.js +15 -0
- package/dist/esm/hooks/useDisableSSR.native.js.map +6 -0
- package/dist/esm/hooks/useId.native.js +5 -0
- package/dist/esm/hooks/useId.native.js.map +6 -0
- package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
- package/dist/esm/hooks/useIsTouchDevice.native.js.map +6 -0
- package/dist/esm/hooks/useMedia.native.js +155 -0
- package/dist/esm/hooks/useMedia.native.js.map +6 -0
- package/dist/esm/hooks/useMemoDebug.native.js +10 -0
- package/dist/esm/hooks/useMemoDebug.native.js.map +6 -0
- package/dist/esm/hooks/useProps.native.js +49 -0
- package/dist/esm/hooks/useProps.native.js.map +6 -0
- package/dist/esm/hooks/useStyle.js +32 -0
- package/dist/esm/hooks/useStyle.js.map +6 -0
- package/dist/esm/hooks/useTheme.js +1 -1
- package/dist/esm/hooks/useTheme.js.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +224 -0
- package/dist/esm/hooks/useTheme.native.js.map +6 -0
- package/dist/esm/hooks/useThemeName.native.js +17 -0
- package/dist/esm/hooks/useThemeName.native.js.map +6 -0
- package/dist/esm/index.native.js +90 -0
- package/dist/esm/index.native.js.map +6 -0
- package/dist/esm/inject-styles.native.js +12 -0
- package/dist/esm/inject-styles.native.js.map +6 -0
- package/dist/esm/insertFont.native.js +48 -0
- package/dist/esm/insertFont.native.js.map +6 -0
- package/dist/esm/interfaces/CSSColorNames.native.js +1 -0
- package/dist/esm/interfaces/CSSColorNames.native.js.map +6 -0
- package/dist/esm/interfaces/GetRef.native.js +1 -0
- package/dist/esm/interfaces/GetRef.native.js.map +6 -0
- package/dist/esm/interfaces/Role.native.js +1 -0
- package/dist/esm/interfaces/Role.native.js.map +6 -0
- package/dist/esm/setupHooks.native.js +9 -0
- package/dist/esm/setupHooks.native.js.map +6 -0
- package/dist/esm/setupReactNative.native.js +30 -0
- package/dist/esm/setupReactNative.native.js.map +6 -0
- package/dist/esm/styled.native.js +56 -0
- package/dist/esm/styled.native.js.map +6 -0
- package/dist/esm/types.native.js +1 -0
- package/dist/esm/types.native.js.map +6 -0
- package/dist/esm/views/AnimationDriverProvider.js +7 -0
- package/dist/esm/views/AnimationDriverProvider.js.map +6 -0
- package/dist/esm/views/Configuration.native.js +7 -0
- package/dist/esm/views/Configuration.native.js.map +6 -0
- package/dist/esm/views/FontLanguage.native.js +11 -0
- package/dist/esm/views/FontLanguage.native.js.map +6 -0
- package/dist/esm/views/FontLanguage.types.native.js +1 -0
- package/dist/esm/views/FontLanguage.types.native.js.map +6 -0
- package/dist/esm/views/Slot.native.js +40 -0
- package/dist/esm/views/Slot.native.js.map +6 -0
- package/dist/esm/views/Stack.native.js +12 -0
- package/dist/esm/views/Stack.native.js.map +6 -0
- package/dist/esm/views/TamaguiProvider.native.js +34 -0
- package/dist/esm/views/TamaguiProvider.native.js.map +6 -0
- package/dist/esm/views/Text.native.js +32 -0
- package/dist/esm/views/Text.native.js.map +6 -0
- package/dist/esm/views/Theme.native.js +85 -0
- package/dist/esm/views/Theme.native.js.map +6 -0
- package/dist/esm/views/ThemeDebug.native.js +11 -0
- package/dist/esm/views/ThemeDebug.native.js.map +6 -0
- package/dist/esm/views/ThemeProvider.native.js +26 -0
- package/dist/esm/views/ThemeProvider.native.js.map +6 -0
- package/dist/esm/views/View.native.js +13 -0
- package/dist/esm/views/View.native.js.map +6 -0
- package/package.json +9 -9
- package/src/helpers/propMapper.ts +36 -25
- package/src/hooks/useTheme.tsx +20 -3
- package/src/types.tsx +1 -1
- package/types/helpers/propMapper.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +11 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/types.d.ts +1 -1
- package/types/types.d.ts.map +1 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createComponent.tsx"],
|
|
4
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAChC,SAAS,UAAU,UAAU,aAAa;AAC1C,SAAS,sBAAsB,mBAAmB;AAClD,SAAS,uBAAuB;AAChC,OAAO;AAAA,EACL;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,WAAW,WAAW,wBAAwB;AACvD,SAAS,0BAA0B;AACnC,SAAS,wBAAwB;AACjC,SAAS,qBAAqB,8BAA8B;AAC5D;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB;AAC3B,SAAS,2BAA2B;AACpC,SAAS,iBAAiB;AAC1B,SAAS,eAAe,sBAAsB,gBAAgB;AAC9D,SAAS,yBAAyB;AAClC,SAAS,aAAa;AAyBtB,SAAS,YAAY;AACrB,SAAS,yBAAyB;AAClC,SAAS,kBAAkB;AAolCnB;AA5kCR,IAAI,eACA,cACA,cACA,cACA,MAEA,mBACA;AAEG,MAAM,WAAW,oBAAI,IAAc;AAC1C,IAAI,OAAO,WAAa,KAAa;AACnC,QAAM,gBAAgB,MAAM;AAC1B,aAAS,QAAQ,CAAC,MAAM,EAAE,CAAC,GAC3B,SAAS,MAAM;AAAA,EACjB;AACA,mBAAiB,WAAW,aAAa,GACzC,iBAAiB,YAAY,aAAa,GAC1C,iBAAiB,eAAe,aAAa,GAGzC,QAAQ,IAAI,aAAa,kBAC3B,kBAAkB,MAAM;AACtB,UAAM,sBAAsB,WAAW;AACvC,QAAI,qBAAqB;AACvB,0BAAoB,oBAAI,IAAI;AAC5B,UAAI,IACA,YAAY;AAChB,YAAM,UAAU;AAAA,QACd,KAAK;AAAA,QACL,OAAO;AAAA,QACP,GAAI,OAAO,uBAAwB,WAAW,sBAAsB,CAAC;AAAA,MACvE;AAEA,eAAS,iBAAiB,QAAQ,MAAM;AACtC,qBAAa,EAAE;AAAA,MACjB,CAAC,GAED,SAAS,iBAAiB,WAAW,CAAC,EAAE,KAAK,iBAAiB,MAAM;AAClE,QAAI,qBACJ,aAAa,EAAE,GACX,QAAQ,QAAQ,QAClB,KAAK,WAAW,MAAM;AACpB,sBAAY,IACZ,mBAAmB,QAAQ,CAAC,MAAM,EAAE,EAAI,CAAC;AAAA,QAC3C,GAAG,QAAQ,KAAK;AAAA,MAEpB,CAAC,GAED,SAAS,iBAAiB,SAAS,CAAC,EAAE,KAAK,iBAAiB,MAAM;AAChE,QAAI,oBACA,QAAQ,QAAQ,QAClB,aAAa,EAAE,GACX,aACF,mBAAmB,QAAQ,CAAC,MAAM,EAAE,EAAK,CAAC;AAAA,MAGhD,CAAC;AAAA,IACH;AAAA,EACF;AAEJ;AAMA,IAAI,UACA,UACA,oBAAoB;AAEjB,SAAS,gBAId,cAA4B;AAC5B,MAAI,SAAuC;AAE3C,mBAAiB,CAAC,SAAS;AAIzB,QAHA,SAAS,MAGL,CAAC,kBACH,gBAAgB,MAEZ,CAAC,eAAc;AACjB,YAAM,OAAO,KAAK,OAAO,OAAO,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC;AACpD,qBAAe,oBAAoB,IAAI,GACnC,QAAQ,IAAI,aAAa,kBACtB,gBAEH,QAAQ,IAAI,wBAAwB;AAAA,IAG1C;AAAA,EAEJ,CAAC;AAED,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAAA,eAAc,CAAC;AAAA,IACf,WAAW,CAAC;AAAA,EACd,IAAI,cAEE,4BAA4B,MAAM,aAAa,aAAa,IAC5D,eAAe,aAAa;AAElC,EAAI,QAAQ,IAAI,aAAa,iBAAiB,aAAa,cAAe,SACpE,QAAQ,IAAI,cAAc,eAE5B,QAAQ,IAAI,cAAO,aAAa,iBAAiB,WAAW,KAAK;AAAA,IAC/D;AAAA,IACA;AAAA,IACA,sBAAsB,eAAe,OAAO,KAAK,YAAY,IAAI,CAAC;AAAA,EACpE,CAAC;AAIL,QAAM,YAAY,WAAoC,CAAC,SAAS,iBAAiB;AAU7E,QATE,QAAQ,IAAI,aAAa,iBACvB,oBACF,gBAAgB,GAChB,kBAAkB,SAMhB,CAAC,mBAAmB;AACtB,0BAAoB;AACpB,YAAM,YAAY,MAAM,eAAe;AACvC,MAAI,cACF,WAAW,UAAU,MACrB,WAAW,UAAU;AAAA,IAEzB;AAIF,IAAI,QAAQ,IAAI,aAAa,UACvB,QAAQ,mBAAmB,MAC7B,QAAQ,mBAAmB,EAAE,YAAe,GAC5C,QAAQ,mBAAmB,EAAE,WAAc;AAI/C,UAAM,mBAAmB,WAAW,gBAAgB;AAIpD,QAAI,oBACA,wBACA;AACJ,UAAM,EAAE,QAAQ,IAAI;AAEpB,QAAI,SAAS;AACX,qBAAe,WAAW,OAAO;AACjC,YAAM,EAAE,kBAAkB,IAAI,UAAU;AACxC,iBAAW,OAAO,QAAQ,OAAO;AAC/B,cAAM;AAAA;AAAA,UAEJ,QAAQ,GAAG,KACX,QAAQ,kBAAkB,GAAG,CAAC,KAC9B,eAAe,GAAG,KAClB,eAAe,kBAAkB,GAAG,CAAC;AAAA;AAEvC,QAAI,YAAY,SACV,iBACmB,OAAOA,gBAAe,OAAO,cAEhD,uBAAuB,CAAC,GACxB,mBAAmB,GAAG,IAAI,aAAa,GAAG,MAM9C,2BAA2B,CAAC,GAC5B,uBAAuB,GAAG,IAAI;AAAA,MAElC;AAAA,IACF;AAGA,UAAM,kBAAkB,qBACpB,EAAE,GAAG,cAAc,GAAG,mBAAmB,IACzC;AAIJ,QAAI;AACJ,IAAI,kBACF,QAAQ,WAAW,iBAAiB,OAAO,IAE3C,QAAQ;AAGV,UAAM,YAAY,MAAM,OAClB,gBAAgB,MAAM,iBAAiB,aAAa;AAE1D,IAAI,QAAQ,IAAI,aAAa,iBAAiB,YAC5C,UAAU,MAAM;AACd,UAAI,UAAkC;AAEtC,YAAM,yBAAyB,CAAC,OAAO,OAAU;AAC/C,cAAM,OAAO,QAAQ;AACrB,YAAK;AAEL,cAAI,MAAM;AACR,sBAAU,SAAS,cAAc,MAAM,GACvC,QAAQ,MAAM,QAAQ,OACtB,QAAQ,MAAM,SAAS,WACvB,QAAQ,MAAM,WAAW,YACzB,QAAQ,MAAM,cAAc,OAC5B,QAAQ,MAAM,cAAc,OAC5B,QAAQ,MAAM,cAAc;AAE5B,kBAAM,SAAS,KAAK,aAAa,SAAS,KAAK,IACzC,SAAS,KAAK,aAAa,SAAS,KAAK,IAEzC,UAAU,SAAS,cAAc,MAAM;AAC7C,oBAAQ,MAAM,WAAW,YACzB,QAAQ,MAAM,MAAM,OACpB,QAAQ,MAAM,OAAO,OACrB,QAAQ,MAAM,UAAU,OACxB,QAAQ,MAAM,aAAa,oBAC3B,QAAQ,MAAM,QAAQ,uBACtB,QAAQ,MAAM,WAAW,QACzB,QAAQ,MAAM,aAAa,QAC3B,QAAQ,MAAM,aAAa,aAC3B,QAAQ,MAAM,sBAAyB,QACvC,QAAQ,YAAY,GAAG,iBAAiB,EAAE,IAAI,MAAM,IAAI,MAAM,GAAG,KAAK,GAEtE,QAAQ,YAAY,OAAO,GAC3B,KAAK,YAAY,OAAO;AAAA,UAC1B;AACE,YAAI,WACF,KAAK,YAAY,OAAO;AAAA,MAG9B;AACA,mCAAsB,oBAAI,IAAI,GAC9B,kBAAkB,IAAI,sBAAsB,GACrC,MAAM;AACX,2BAAmB,OAAO,sBAAsB;AAAA,MAClD;AAAA,IACF,GAAG,CAAC,aAAa,CAAC,GAIlB,CAAC,QAAQ,IAAI,wBACb,QAAQ,IAAI,aAAa,iBACzB,cAAc,aACd,CAAC,SAGD,OADc,QAAQ,gBAAgB,EAAE,MAAM,EACjC,MAAM,IAEjB,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,aAAa,QAAQ,aAAa,KAAO,gBAAgB;AAE/D,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAIpD,UAAM,WAAW;AAAA,MACf;AAAA,IAMF;AACA,aAAS,YAAY,CAAC,GAElB,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,UAAU,OAAuB,IAAI,GAKrC,mBAAmB,iBAAiB,iBACpC,gBAAgB,kBAAkB,eAGlC,mBAAmB,GACvB,MAAM,aAAc,MAAM,SAAS,sBAAsB,MAAM,KAAK,IAIhE,kBAAkB,kBAAkB,iBAEpC,kBAAkB,MAAM;AAC5B,UAAI,YAAY,CAAC;AAAiB,eAAO;AACzC,YAAM,WAAW,SAAS;AAE1B,aAAO,GADM,CAAC,EAAE,oBAAoB,CAAC,SAAS,kBACvB,SAAS;AAAA,IAClC,GAAG,GAEG,cAAc,kBAAkB,aAChC,WAAY,kBAAkB,cAAc,KAAM,MAElD,gBAAgB,CAAC,CAAC,MAAM,YACxB,aAAa,IAAS,UAAQ,aAAoB;AAExD,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,eAAe,iBACjB,kBACE,mCACA,wBACF,8BAEE,SAAS,SAAgC,YAAY,GAErD,QAAQ,QAAQ,aAClB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,UAAU,GAAG,GAAK,IAC3C,OAAO,CAAC,GACN,WAAW,OAAO,CAAC;AAEzB,QAAI,kBAAkB,sBAAsB,QAAQ;AAEpD,UAAM,YAAY,MAAM,OAClB,iBAAiB,YAAY,WAAW,MAAM,KAAK,KAAK;AAE9D,QAAI,WAAW;AAEb,YAAM,oBAAoB,iBAAiB,OAAO,OAC5C,KAAK;AACX,wBAAkB,CAACC,WAAU;AAC3B,WAAGA,MAAK,GACR,iBAAiB,OAAO,KAAK,WAAW;AAAA,UACtC,QAAQA;AAAA,QACV,CAAC;AAED,cAAM,OAAO;AAAA,UACX,GAAG,kBAAkB,SAAS;AAAA,UAC9B,GAAGA;AAAA,QACL;AACA,0BAAkB,SAAS,IAAI;AAAA,MACjC;AAAA,IACF;AAEA,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,QAAI,aAAa;AAEjB,IAAI,kBAAkB,CAAC,mBACjB,CAAC,YAAY,eACX,YAAY,MAAM,cAAc,QAClC,aAAa,KAMf,kBAAkB,CAAC,SAAS,QAAQ,gBACtC,SAAS,QAAQ,cAAc;AAGjC,UAAM,qBAAqB,MAAM,UAC7B,KACA,MAAM,gBACN,MAAM,MAAM,aAAa,KACzB,2BAEE,kBAAkB,CAAC,EAAE,SAAS,UAAS,iBAAiB,SACxD,aAAa,MAAM,YAAY,MAAM,oBAAoB;AAE/D,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAIpD,UAAM,UAAU,UAFG,CAAC,aAAa,OAAO,aAAc,aAEhB,MAAM,OAAO,WAE7C,oBAAoB,YAAY,WAAW,QAC3C,oBAAoB,YAAY,YAAY,kBAAkB,SAAS;AAE7E,mBAAe,mBAAmB,iBAAiB,OAAO,mBAC1D,eAAe,mBAAmB,iBAAiB,OAAO;AAE1D,QAAI,cAAc,UACb,aAAa,eAAe,SAAS,qBACrC,aAAa,eAAe,SAAS;AAG1C,QAAI,cAAc,UAAU;AAC1B,YAAM,gBAAgB,SAAS,CAAC;AAChC,UAAI,eAAe;AACjB,cAAM,aAAa,MAAM,WACnBC,aAAY,CAAC,cAAc,WAC3B,mBAAmB,cAAc,kBACjC,eAAe,oBAAoB,cAAc,cACjD,cAAc,oBAAoB,cAAc;AAEtD,QAAI,cAAc,gBACZ,QAAQ,IAAI,aAAa,iBAAiB,cAAc,aAC1D,QAAQ,KAAK,6BAA6B,YAAY,GAAG,GAG3D,MAAM,YAAY,IAAI,MACbA,cAAa,gBAClB,QAAQ,IAAI,aAAa,iBAAiB,cAAc,aAC1D,QAAQ,KAAK,4BAA4B,YAAY,GAAG,GAG1D,MAAM,WAAW,IAAI;AAAA,MAEzB;AAAA,IACF;AAEA,UAAM,wBAAwB,oBAAoB,kBAAkB,eAC9D,gBAAgB,GAAQ,aAAa,iBAAiB,wBACtD,qBAAqB,GACzB,CAAC,SAAS,cAAc,CAAC,aAAa,oBAAoB,QAAQ,mBAG9D,oBAAoB,CAAC,CAAC,QAAQ,YAC9B,eAAe,sBAAsB,mBAGrC,mBACsC,IACtC,eAAgB,oBAAoB,CAAC,kBAAmB;AAE9D,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM,mBAEhD,MAAM,iBACR,SAAS,QAAQ,eAAe;AAGlC,UAAM,kBAA0C;AAAA,MAC9C,MAAM,MAAM;AAAA,MACZ;AAAA,MACA,SAAS;AAAA,MACT,SAAS,SAAS,QAAQ;AAAA;AAAA,MAE1B,cAAc;AAAA;AAAA,QAGV,SAAS,QAAQ;AAAA;AAAA,MAGrB,OAAO;AAAA,IACT;AAIE,oBAAgB,QAAQ;AAG1B,UAAM,YAAoB,CAAC,MAAM,aAAa,WAAW,CAAC,MAAM;AAEhE,QAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,YAAM,KAAK,MAAM;AAEjB,UAAI,aAAa,cAAc,WAAW;AAExC,cAAM,OAAO,GACX,iBAAiB,WAAW,eAAe,WAAW,QAAQ,qBAChE,IACM,OAAO,wBAAwB,eAAe,gBAAgB,UAAU,IACxE,SAAS,QAAQ,SAAS,KAAK,IAC/B,SAAS,GAAG,IAAI,GAAG,SAAS,IAAI,MAAM,KAAK,EAAE,IAAI,IAAI,OAAO,EAAE;AACpE,gBAAQ;AAAA,UACN,MAAM,MAAM,gBAAgB,MAAM,SAAS,IACzC,WAAW,eAAe,SAAS,CAAC,CAAC,MAAM,EAC7C,IAAI,aAAa,cAAO,iBAAK;AAAA,UAC7B;AAAA,QACF,GACK,aACH,QAAQ;AAAA,UACN,qBAAqB,MAAM,SAAS,MAAM,UAAU,aAAa,EAAE,GACjE,MAAM,QAAQ,aAAa,EAC7B,GAAG,MAAM,QAAQ,YAAY,GAAG;AAAA,QAClC,GAGA,QAAQ,IAAI;AAAA,UACV;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,eAAe,EAAE,cAAc,oBAAoB,uBAAuB;AAAA,UAC1E;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,cAAc,OAAO,KAAK,OAAO;AAAA,UACjC,YAAY,OAAO,KAAK,KAAK;AAAA,QAC/B,CAAC,GACD,QAAQ,SAAS;AAAA,MAErB;AAAA,IACF;AAEA,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,CAAC,YAAY,KAAK,IAAI,kBAAkB,eAAe;AAE7D,kBAAc,aAAa;AAC3B,UAAM,kBAAkB,OAAO,eAAgB;AAE/C,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,aAAa,SAAS,UAAU,gBAAgB;AAEtD,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM,aAEpD,uBAAuB,EAAK;AAE5B,UAAM;AAAA;AAAA,MAEH,cAAc,CAAC,mBACf,SAAS,MAAM,aAAa,MAAS,mBAClC,UACA;AAAA,OAGA,eAAe,kBAAkB,kBAAkB,cAEnD,aAAa;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,GAEM,cAAc;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA,YAAY,OAAO,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAGA,IAAI,MAAM,SAAS,MAAM,kBAAkB,UAAU,CAAC,SAAS,QAAQ,gBACrE,YAAY,MAAM,UAAU,IAG1B,QAAQ,IAAI,aAAa,iBAAiB,QAAM,oBAEpD,SAAS,QAAQ,qBAAqB,YAAY;AAIlD,UAAM,eAAe,YAAY,YAAY,MAAM,QAAQ,YAAY,QAAQ,GACzE,uBACJ,oBAAoB,KACpB,gBACC,gBAAgB,YAAY,aAAa,IACtC,qBAAqB,eAAgB,YAAY,WAAmB;AAE1E,yBAAqB,UAAU;AAAA,MAC7B,SAAS;AAAA,MACT,MAAM;AAAA,IACR,CAAC;AAGD,UAAM,2BAA2B,oBAAoB;AAErD,QAAI,QAAQ,IAAI,aAAa,iBAOvB,aAAa,cAAc,cAC7B,QAAQ,eAAe,KAAK,GAG5B,QAAQ;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO,KAAK,KAAK;AAAA,IACnB,GAEA,QAAQ,IAAI,eAAe,WAAW,GAEtC,QAAQ,IAAI,SAAS,EAAE,sBAAsB,cAAc,mBAAmB,CAAC,GAE/E,QAAQ,IAAI,aAAa,OAAO,OAAO,YAAY,UAAU,CAAC,GAC1D,YAEF,QAAQ,IAAI,OAAO,SAAS,iBAAiB,GAE/C,QAAQ,SAAS,GACb,cAAc;AAEhB;AAKN,UAAM;AAAA,MACJ,WAAW;AAAA,MACX;AAAA,MACA,OAAO;AAAA,MACP;AAAA,MACA;AAAA,IACF,IAAI,aAEE,qBAAqB;AAI3B,QAAI;AACJ,QAAI,kBAAkB,iBAAiB,CAAC,OAAO;AAC7C,YAAM,aAAa,cAAc;AAAA,QAC/B,OAAO;AAAA;AAAA,QAEP,OAAO;AAAA;AAAA,QAEP;AAAA,QACA,gBAAgB;AAAA,QAChB;AAAA,QACA,OAAO,WAAW,OAAO;AAAA,QACzB,SAAS,WAAW;AAAA,QACpB;AAAA,QACA;AAAA,MACF,CAAC;AAED,MAAI,cAAc,eAChB,kBAAkB,WAAW,QAG3B,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAAA,IACtD;AAEA,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,gBAAgB;AAAA,MAChB,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEA,YAAY;AAAA;AAAA,MAEZ;AAAA,MACA,OAAO;AAAA;AAAA,MAEP;AAAA,MAEA,GAAG;AAAA,IACL,IAAI;AAEJ,IAAI,QAAQ,IAAI,aAAa,iBAAiB,MAAM,iBAAiB,CAAC,MAAM,SAC1E,QAAQ;AAAA,MACN;AAAA;AAAA;AAAA,IACF,GAGE,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,WACJ,MAAM,oBAAoB;AAAA,IAE1B,MAAM;AAIR,QAAI,YAAY;AAEhB,IAAI,SAAS,eACX,UAAU,QAAQ,aAGhB,cACF,gBAAgB,WAAW;AAAA,MACzB,gBAAgB;AAAA,MAChB,CAAC,MAAmB;AAClB,yBAAiB,OAAO,KAAK,WAAW;AAAA,UACtC,QAAQ,EAAE,YAAY;AAAA,QACxB,CAAC,GAGG,CAAC,SAAS,QAAQ,eAAe,MAAM,kBAAkB,UAC3D,SAAS,CAAC,UAAU,EAAE,GAAG,KAAK,EAAE,GAGlC,SAAS,QAAQ,cAAc;AAAA,MACjC;AAAA,IACF,IAYA,YAAY;AAGd,UAAM,cAAc,gBAAgB,SAAgB,YAAY;AAChE,cAAU,MAAM,aAEZ,QAAQ,IAAI,aAAa,iBACvB,CAAC,iBAAiB,CAAC,UAAU,SAAS,CAAC,SACzC,SAAS,QAAQ,MAAM,QAAQ,EAAE,QAAQ,CAAC,SAAS;AAEjD,MAAI,OAAO,QAAS,YAAY,SAAS;AAAA,KACvC,QAAQ;AAAA,QACN,yBAAyB,IAAI;AAAA,MAC/B;AAAA,IAEJ,CAAC,GAID,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,QAAI,UAAU,MACZ,gBAAgB;AAAA,MACd,OAAO;AAAA,MACP,SAAS;AAAA,IACX,CAAC;AAWH,UAAM,mBAAmB,cAAc,MAAM,WACvC,EAAE,cAAc,YAAY,IAAI;AAEtC,cAAU,MAAM;AACd,UAAI,kBAAkB;AACpB,cAAM,YACJ,MAAM,cAAc,MAAQ,gBAAgB,iBAAiB;AAC/D,wBAAgB;AAAA,UACd;AAAA,QACF,CAAC;AACD;AAAA,MAEF;AAGA,UAAI;AACJ,UAAI,gBAAgB,aAAa;AAC/B,cAAM,UAAU;AAAA,UACd,QAAQ,CAAC;AAAA,UACT,OAAO,CAAC;AAAA,QACV;AACA,gCAAwB,iBAAiB,OAAO;AAAA,UAC9C,CAAC,MAAM,EAAE,QAAQ,OAAO,MAAM;AAC5B,gBAAI,UAAU,cAAc,IAAI,IAAI;AAElC,qBAAO,OAAO,QAAQ,QAAQ,MAAM,GACpC,QAAQ;AAAA,qBACC,UAAU,aAAa;AAChC,oBAAMC,cAAa,cAAc,aAAa,MAAM,GAC9C,OAAO,uBAAuB,QAAQ,OAAOA,WAAU;AAC7D,cAAI,SAAS,QAAQ,UACnB,OAAO,OAAO,QAAQ,OAAO,IAAI,GACjC,QAAQ;AAAA,YAEZ;AACA,qBAAS,UAAU;AACjB,8BAAgB;AAAA;AAAA,gBAEd,OAAO;AAAA,kBACL,GAAG,MAAM;AAAA,kBACT,CAAC,IAAI,GAAG;AAAA,gBACV;AAAA,cACF,CAAC;AAAA,YACH;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,aAAO,MAAM;AACX,gCAAwB,GACxB,SAAS,OAAO,OAAO;AAAA,MACzB;AAAA,IACF,GAAG;AAAA,MACD;AAAA,MACA,MAAM;AAAA,MACN,eAAe,OAAO,KAAK,CAAC,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI;AAAA,MACzD,cAAc,OAAO,KAAK,CAAC,GAAG,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI;AAAA,IACzD,CAAC;AAED,UAAM,sBAAsB,gBAAgB,MAAM,cAAc;AAEhE,QAAI,aAAa,SACb,YAAY,cAAc,aAAa,cAAc,aACrD;AACJ,IAAI,cAAc,WAAW,CAAC,MAAM,QAClC,aAAa,WAAW,MAAM,CAAC;AAEjC,UAAM,sBAAsB,aAAa,QAAQ,UAAU,KAAK,IAE1D,QAAQ,sBACV,YAAY,QACZ,mBAAmB,YAAY;AAEnC,QAAI;AAuCF,cAAU,QAAQ;AAKpB,UAAM,oBAAoB,CAAC,YAAY,gBAAgB,SAAS,YAC1D,cAAc,GAClB,aACE,qBACA,WACA,cACA,aACA,eACA,UAEE,oBAAoB,CAAC,YAAY,gBAAgB,SAAS,YAC1D,kBAAkB,qBAAqB,aAAa,YACpD,cACJ,SAAS,CAAC,EAAE,aAAa,mBAAmB,gBAAgB,eAExD,qBAAqB,EAAE,SAAS,UAIhC,eAAe,GACnB,eAAe,eAAe,qBAAqB;AAGrD,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,UAAM,SACJ,gBAAgB,CAAC,cAAc,CAAC,MAAM,UAClC;AAAA,MACE,YAAY,cACR,CAAC,MAAM;AACL,gBAAQ,GACR,aAAa,CAAC,GACd,YAAY,CAAC;AAAA,MACf,IACA;AAAA,MACJ,IAAK,eAAe,gBAAgB;AAAA,QAClC,cAAc,CAAC,MAAM;AACnB,gBAAM,OAA8B,CAAC;AACrC,UAAI,oBACF,KAAK,QAAQ,KAEX,qBACE,MAAM,YACR,KAAK,QAAQ,KAGjB,gBAAgB,IAAI,GACpB,YAAY,CAAC,GACb,eAAe,CAAC;AAAA,QAClB;AAAA,QACA,cAAc,CAAC,MAAM;AACnB,gBAAM,OAA8B,CAAC;AACrC,mBAAS,IAAI,OAAO,GAChB,oBACF,KAAK,QAAQ,KAEX,qBACE,MAAM,YACR,KAAK,QAAQ,IACb,KAAK,UAAU,KAGnB,gBAAgB,IAAI,GACpB,aAAa,CAAC,GACd,eAAe,CAAC;AAAA,QAClB;AAAA,MACF;AAAA,MACA,WAAW,cACP,CAAC,MAAM;AACL,QAAI,qBACF,gBAAgB;AAAA,UACd,OAAO;AAAA,UACP,SAAS;AAAA,QACX,CAAC,GAEH,YAAY,CAAC,GACb,cAAc,CAAC,GACX,SACF,SAAS,IAAI,OAAO;AAAA,MAExB,IACA;AAAA,MACJ,SAAS,cACL,CAAC,MAAM;AACL,gBAAQ,GAER,SAAS,UAAU,CAAC,GACpB,UAAU,CAAC;AAAA,MAIb,IACA;AAAA,MAEF,aACE,eAAe,cACX,CAAC,MAAM;AACL,gBAAQ,GACR,cAAc,CAAC;AAAA,MACjB,IACA;AAAA,IAEV,IACA;AAEN,IAA+C,UAAU,CAAC,WAExD,OAAO,OAAO,QAAQ;AAAA,MACpB,YAAY,CAAC,UAAU;AAAA,MACvB,UAAU;AAAA,MACV,SAAS,UAAU;AAAA,MACnB,gBAAgB,UAAU;AAAA,MAC1B,cAAc,UAAU;AAAA,MACxB,eAAe,UAAU;AAAA,MACzB,WAAW,UAAU,aAAa;AAAA,MAClC,kBAAkB;AAAA,IACpB,CAAC,GAGC,QAAQ,IAAI,aAAa,iBAAiB,QAAM,cAEhD,QAAQ,IAAI,aAAa,iBAAiB,cAAc,aAE1D,QAAQ,IAAI,UAAU,EAAE,QAAQ,aAAa,YAAY,CAAC,GAI5D,MAAM,YAAY,WAAW,QAAQ,aAAa,eAAe;AAEjE,UAAM,YAAY,MAAM,kBAAkB;AAE1C,IAAI,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAEpD,QAAI,UACF,CAAC,YAAY,UACT,WACA,eAAe;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,IACT,CAAC;AAEP,IAAI,YACF,cAAc,MAqBZ,OAAO,OAAO,WAAW,EAAE,SAAS,YAAY,CAAC,IAIjD,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAAA,IAKlD,QAAQ,IAAI,aAAa,WAExB,gBAAgB,YAAY,gBAAgB,YAEzC,QAAQ,IAAI,iCAEd,UAAU,WAAW,SACrB,UAAU;AAAA,MACR,gBAAgB,WAAW,YAAY;AAAA,MACvC;AAAA,IACF,MAIA,UAAU,WAAW,SACrB,UAAU,YAAY,OAAO,WAAW,UAAU,GAAG,KAGvD,UAAU,cAAc,aAAa,WAAW,OAAO,GAGrD,QAAQ,IAAI,aAAa,iBAAiB,QAAM;AAGpD,UAAM,kBAAkB,QAAQ,MAAM;AACpC,UAAK;AAEL,eAAO;AAAA,UACL,GAAG,iBAAiB;AAAA;AAAA,UAEpB,OAAO;AAAA,YACL,GAAG,iBAAiB,OAAO;AAAA,YAC3B,CAAC,SAAS,GAAG;AAAA,cACX,QAAQ;AAAA;AAAA;AAAA,cAGR,QAAQ;AAAA,gBACN,OAAO,OAAO,YAAY,MAAM,KAAY;AAAA,gBAC5C,QAAQ,OAAO,YAAY,MAAM,MAAa;AAAA,cAChD;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,IACF,GAAG,CAAC,SAAS,CAAC;AAyCd,QAvCI,aAAa,oBACf,UACE,oBAAC,iBAAiB,UAAjB,EAA0B,QAAQ,iBAChC,mBACH,IAIA,QAAQ,IAAI,aAAa,iBAAiB,QAAM,qBAGpD,UAAU,mBACN,UACA,kBAAkB,YAAY,SAAS,eAAe,GAEtD,QAAQ,IAAI,aAAa,iBAAiB,QAAM,uBAEhD,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAa,gBAC/D,UACE,oBAAC,cAAW,YAAwB,YAAY,OAC7C,mBACH,IAkBA,aAAa,SAAS;AACxB,YAAM,eAAe,aAAa,QAAQ;AAC1C,iBAAW,OAAO;AAChB,SAAI,OAAO,SAAS,OAAO,eACzB,2BAA2B,CAAC,GAC5B,uBAAuB,GAAG,IAAI,MAAM,GAAG,KAAK,UAAU,GAAG;AAAA,IAG/D;AAEA,QAAI,wBAAwB;AAC1B,YAAM,WAAW,aAAa,QAAS;AACvC,gBACE,oBAAC,YAAU,GAAG,cAAe,GAAG,wBAC7B,mBACH;AAAA,IAEJ;AAEA,QAAI,QAAQ,IAAI,aAAa,iBACvB,aAAa,cAAc,WAAW;AAExC,cAAQ,eAAe,WADP,OAAO,eAAgB,WAAW,cAAc,WACvB,gBAAgB;AACzD,UAAI;AAEF,gBAAQ,IAAI,aAAa,SAAS,GAElC,QAAQ,IAAI,kBAAkB,OAAO,KAAK,SAAS,CAAC;AACpD,mBAAW,OAAO;AAEhB,kBAAQ,IAAI,OAAO,KAAK,UAAU,GAAG,CAAC;AAGxC,gBAAQ,IAAI,YAAY,OAAO,GAC3B,OAAO,SAAW,OAEpB,QAAQ,IAAI;AAAA,UACV;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,cAAc,MAAM,WAAW,MAAM,GAAG;AAAA,UACxC,eAAe,UAAU,WAAW,MAAM,GAAG;AAAA,UAC7C;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,WAAW,MAAM;AAAA,UACjB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF,CAAC;AAAA,MAEL,QAAQ;AAAA,MAER;AACA,cAAQ,SAAS,GACjB,QAAQ,SAAS;AAAA,IACnB;AAGF,WAAI,QAAQ,IAAI,aAAa,iBAAiB,SAC5C,YACK,WAAW,cACd,WAAW,YAAe,IAC1B,WAAW,MAAM;AACf,aAAO,WAAW,WAClB,KAAK,MAAM,GACX,OAAO;AAAA,IACT,GAAG,EAAE,KAIF;AAAA,EACT,CAAC;AAID,EAAI,aAAa,kBACf,UAAU,cAAc,aAAa;AAKvC,MAAI,MAAqB;AAEzB,EAAK,QAAQ,IAAI,yBACf,MAAM,KAAK,GAAG,IAGhB,IAAI,eAAe;AAEnB,WAAS,mBAAmB,UAAkC;AAC5D,WAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG;AAAA,MACH,cAAc;AAAA,MACd,OAAO;AAAA,MACP,aAAa;AAAA,IACf;AAAA,EACF;AAEA,WAAS,YAAYC,YAAgB,UAAkC;AACrE,WAAAA,WAAU,eAAe,mBAAmB,QAAQ,GACpDA,WAAU,YAAY,WACfA;AAAA,EACT;AAEA,WAAS,UAAUA,YAAgB,UAAkC;AAEnE,UAAM,wBADwBA,WAAU,QAAQ,WAAW,IAEtDA;AAAA;AAAA,MAED,KAAK,WAAWA,UAAgB,CAAC;AAAA,OAE/B,iBAAiB,mBAAmB,QAAQ,GAC5C,MAAM,UAAU,uBAAuB,cAAc;AAC3D,eAAI,eAAe,gBACnB,IAAI,YAAY,WACT;AAAA,EACT;AAEA,aAAI,cAAc,aAClB,IAAI,YAAY,WAET;AACT;AAoBO,SAAS,SAAS,OAA2B;AAClD,SAAO,MAAM;AACf;AACA,SAAS,aAAgB;AAEzB,MAAM,gBAAgB,CAAC,MAAqC,EAAE,OAAO,MAAM;AACzE,SAAO,SAAS,KAAO,UAAU;AACjC,QAAM,SAAS,OAAO,MAAM,IAAW,KAAK;AAC5C,SAAO;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,WAAW;AAAA,EACb;AACF,GAKa,SAAS,gBAA6B;AAAA,EACjD,kBAAkB;AAAA,EAClB,MAAM;AAAA,EACN,eAAe;AAAA,EACf;AAAA,EAEA,cAAc;AAAA,IACZ,GAAG;AAAA;AAAA,IAEH,KAAK;AAAA,IACL,MAAM;AAAA,IACN,eAAe;AAAA,EACjB;AAAA,EAEA,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,QACJ,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IAEA,WAAW;AAAA,MACT,YAAY;AAAA,QACV,QAAQ;AAAA,QACR,WAAW;AAAA,MACb;AAAA,MACA,UAAU;AAAA,QACR,OAAO;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,MACA,MAAM,CAAC;AAAA,IACT;AAAA,EACF;AACF,CAAC;AAYM,SAAS,eAAe,OAA4B;AACzD,QAAM,EAAE,UAAU,UAAU,OAAO,WAAW,WAAW,UAAU,IAAI,OACjE,WAAW,CAAC,EAAE,SAAS,YACvB,eAA4C,aAAc;AAChE,MAAI,EAAE,YAAY,gBAAgB;AAChC,WAAO;AAGT,QAAM,eAAe,SAAS,QAAQ,QAAQ;AAG9C,MADY,aAAa,UACd,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,GAAI,MAAU;AACxD,WAAO;AAGT,QAAM,QAA2B,CAAC;AAClC,WAAS,CAAC,OAAO,KAAK,KAAK,aAAa,QAAQ,GAAG;AACjD,UAAM,UACJ,SAAU,QAET,MAAM,QAAQ,KAAK,KAAK,MAAM,WAAW;AA0B5C,QAvBI,CAAC,WAAW,MAAM,eAAe,KAAK,KAAK,MAAM,MAAO,uBAC1D,QAAQ,MAAM,aAAa,OAAO;AAAA,MAChC;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK,MAAM;AAAA,IACb,CAAQ,IAIN,WAAW,CAAC,SAAU,MAAM,OAAU,CAAC,WACzC,MAAM,KAAK,KAAK,IAEhB,MAAM;AAAA,MACJ,oBAAC,YACE,qBAAW,oBAAC,gBAAc,iBAAM,IAAkB,SADtC,KAEf;AAAA,IACF,GAIE,WAAW,KAAK,KAAK,UAAU,KAE/B;AAAU;AAEd,UAAM,OAAO,aAAa,QAAQ,CAAC;AAEnC,IAAI,QAAQ,CAAC,WAAW,IAAI,MACtB,aACE,YACF,MAAM;AAAA,MACJ,aAAa;AAAA,QACX,KAAK,IAAI,KAAK;AAAA,QACd;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,GAEF,MAAM;AAAA,MACJ,MAAM,eAAe,SAAS,IAC1B,MAAM,aAAa,WAAW,EAAE,KAAK,OAAO,KAAK,GAAG,CAAC,IACrD;AAAA,IACN,GACI,YACF,MAAM;AAAA,MACJ,aAAa;AAAA,QACX,KAAK,IAAI,KAAK;AAAA,QACd;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,KAGF,MAAM;AAAA,MACJ,aAAa;AAAA,QACX,KAAK,IAAI,KAAK;AAAA,QACd;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EAGN;AAEA,SAAI,QAAQ,IAAI,aAAa,iBACvB,MAAM,SAER,QAAQ,IAAI,qBAAqB,OAAO,KAAK,GAI1C;AACT;AAIA,SAAS,aAAa,EAAE,KAAK,WAAW,OAAO,UAAU,GAAsB;AAC7E,SACE;AAAA,IAAC;AAAA;AAAA,MAEC,MAAM;AAAA,MACN;AAAA,MACC,GAAI,OAAO,YAAc,OAAe;AAAA,QACvC,MAAM,cAAc,KAAO,IAAI,cAAc,KAAQ,IAAI;AAAA,MAC3D;AAAA;AAAA,IALK;AAAA,EAMP;AAEJ;AAEA,SAAS,WAAW,OAAwB;AAC1C,QAAM,IAAI,OAAQ;AAClB,SAAO,GAAI,oBAAuB,GAAI;AACxC;AAEA,MAAM,eAAoB,gBAAgB;AAAA,EACxC,cAAc;AAAA,IACZ,GAAG;AAAA,IACH,eAAe;AAAA,IACf,UAAU;AAAA,IACV,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,eAAe;AAAA,EACjB;AACF,CAAC;AAED,SAAS,sBAAsB,OAAe;AAC5C,SAAO,OAAO,KAAK,KAAK,EAAE,KAAK,CAAC,MAAM;AACpC,UAAM,MAAM,MAAM,CAAC;AACnB,WAAO,OAAO,OAAO,OAAQ,YAAY,gBAAgB;AAAA,EAC3D,CAAC;AACH;AAEA,SAAS,cACP,aACA,QACA;AACA,SAAO,OAAO;AAAA,IACZ,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,aACb,CAAC,UAAU,cAAc,UAAU,MAAa,CAAC,CACzD;AAAA,EACH;AACF;AAEA,MAAM,SAAS,CAAC,QACd,OAAO,OAAQ,WAAW,MAAM,CAAC,IAAI,QAAQ,MAAM,EAAE;",
|
|
5
|
+
"names": ["validStyles", "state", "isExiting", "mediaState", "Component"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const fontWeights = [
|
|
2
|
+
"100",
|
|
3
|
+
"200",
|
|
4
|
+
"300",
|
|
5
|
+
"400",
|
|
6
|
+
"500",
|
|
7
|
+
"600",
|
|
8
|
+
"700",
|
|
9
|
+
"800",
|
|
10
|
+
"900"
|
|
11
|
+
], processSection = (section, keys, defaultValue) => {
|
|
12
|
+
if (typeof section == "string")
|
|
13
|
+
return section;
|
|
14
|
+
const sectionKeys = Object.keys(section);
|
|
15
|
+
let fillValue = section[sectionKeys[0]];
|
|
16
|
+
return Object.fromEntries(
|
|
17
|
+
[.../* @__PURE__ */ new Set([...keys, ...sectionKeys])].map((key) => {
|
|
18
|
+
const value = section[key] ?? defaultValue ?? fillValue;
|
|
19
|
+
return fillValue = value, defaultValue = value, [key, value];
|
|
20
|
+
})
|
|
21
|
+
);
|
|
22
|
+
}, createFont = (font) => {
|
|
23
|
+
const sizeKeys = Object.keys(font.size), processedFont = Object.fromEntries(
|
|
24
|
+
Object.entries(font).map(([key, section]) => [
|
|
25
|
+
key,
|
|
26
|
+
processSection(
|
|
27
|
+
section,
|
|
28
|
+
key === "face" ? fontWeights : sizeKeys,
|
|
29
|
+
key === "face" ? { normal: font.family } : void 0
|
|
30
|
+
)
|
|
31
|
+
])
|
|
32
|
+
);
|
|
33
|
+
return Object.freeze(processedFont);
|
|
34
|
+
};
|
|
35
|
+
export {
|
|
36
|
+
createFont
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=createFont.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createFont.ts"],
|
|
4
|
+
"mappings": "AAEA,MAAM,cAAkC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEM,iBAAiB,CACrB,SACA,MACA,iBAC+B;AAC/B,MAAI,OAAO,WAAY;AAAU,WAAO;AAExC,QAAM,cAAc,OAAO,KAAK,OAAO;AACvC,MAAI,YAAY,QAAQ,YAAY,CAAC,CAAC;AAEtC,SAAO,OAAO;AAAA,IACZ,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ;AACnD,YAAM,QAAQ,QAAQ,GAAG,KAAK,gBAAgB;AAC9C,yBAAY,OACZ,eAAe,OACR,CAAC,KAAK,KAAK;AAAA,IACpB,CAAC;AAAA,EACH;AACF,GAEa,aAAa,CAAwB,SAAe;AAC/D,QAAM,WAAW,OAAO,KAAK,KAAK,IAAI,GAChC,gBAAgB,OAAO;AAAA,IAC3B,OAAO,QAAQ,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,OAAO,MAC9B;AAAA,MACL;AAAA,MACA;AAAA,QACE;AAAA,QACA,QAAQ,SAAS,cAAc;AAAA,QAC/B,QAAQ,SAAS,EAAE,QAAQ,KAAK,OAAO,IAAI;AAAA,MAC7C;AAAA,IACF,CACD;AAAA,EACH;AACA,SAAO,OAAO,OAAO,aAAa;AACpC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { isWeb } from "@tamagui/constants";
|
|
2
|
+
import { configListeners, setConfig, setTokens } from "./config";
|
|
3
|
+
import { createVariables } from "./createVariables";
|
|
4
|
+
import { getThemeCSSRules } from "./helpers/getThemeCSSRules";
|
|
5
|
+
import {
|
|
6
|
+
getAllRules,
|
|
7
|
+
listenForSheetChanges,
|
|
8
|
+
scanAllSheets
|
|
9
|
+
} from "./helpers/insertStyleRule";
|
|
10
|
+
import { proxyThemesToParents } from "./helpers/proxyThemeToParents";
|
|
11
|
+
import { registerCSSVariable, variableToCSS } from "./helpers/registerCSSVariable";
|
|
12
|
+
import { ensureThemeVariable } from "./helpers/themes";
|
|
13
|
+
import { configureMedia } from "./hooks/useMedia";
|
|
14
|
+
import { parseFont, registerFontVariables } from "./insertFont";
|
|
15
|
+
import { Tamagui } from "./Tamagui";
|
|
16
|
+
const createdConfigs = /* @__PURE__ */ new WeakMap();
|
|
17
|
+
function createTamagui(configIn) {
|
|
18
|
+
if (createdConfigs.has(configIn))
|
|
19
|
+
return configIn;
|
|
20
|
+
const tokensParsed = {}, tokens = createVariables(configIn.tokens || {});
|
|
21
|
+
if (configIn.tokens) {
|
|
22
|
+
const tokensMerged = {};
|
|
23
|
+
for (const cat in tokens) {
|
|
24
|
+
tokensParsed[cat] = {}, tokensMerged[cat] = {};
|
|
25
|
+
const tokenCat = tokens[cat];
|
|
26
|
+
for (const key in tokenCat) {
|
|
27
|
+
const val = tokenCat[key], prefixedKey = `$${key}`;
|
|
28
|
+
tokensParsed[cat][prefixedKey] = val, tokensMerged[cat][prefixedKey] = val, tokensMerged[cat][key] = val;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
setTokens(tokensMerged);
|
|
32
|
+
}
|
|
33
|
+
let foundThemes;
|
|
34
|
+
if (configIn.themes) {
|
|
35
|
+
const noThemes = Object.keys(configIn.themes).length === 0;
|
|
36
|
+
foundThemes = scanAllSheets(noThemes, tokensParsed);
|
|
37
|
+
}
|
|
38
|
+
listenForSheetChanges();
|
|
39
|
+
let fontSizeTokens = null, fontsParsed;
|
|
40
|
+
if (configIn.fonts) {
|
|
41
|
+
const fontTokens = Object.fromEntries(
|
|
42
|
+
Object.entries(configIn.fonts).map(([k, v]) => [k, createVariables(v, "f", !0)])
|
|
43
|
+
);
|
|
44
|
+
fontsParsed = (() => {
|
|
45
|
+
const res = {};
|
|
46
|
+
for (const familyName in fontTokens) {
|
|
47
|
+
const font = fontTokens[familyName], fontParsed = parseFont(font);
|
|
48
|
+
res[`$${familyName}`] = fontParsed, !fontSizeTokens && fontParsed.size && (fontSizeTokens = new Set(Object.keys(fontParsed.size)));
|
|
49
|
+
}
|
|
50
|
+
return res;
|
|
51
|
+
})();
|
|
52
|
+
}
|
|
53
|
+
const specificTokens = {}, themeConfig = (() => {
|
|
54
|
+
const cssRuleSets = [];
|
|
55
|
+
if (process.env.TAMAGUI_DOES_SSR_CSS !== "true" && // we can leave this out if mutating, only need the js for getThemeCSSRules
|
|
56
|
+
process.env.TAMAGUI_DOES_SSR_CSS !== "mutates-themes") {
|
|
57
|
+
const declarations = [], fontDeclarations = {};
|
|
58
|
+
for (const key in tokens)
|
|
59
|
+
for (const skey in tokens[key]) {
|
|
60
|
+
const variable = tokens[key][skey];
|
|
61
|
+
if (specificTokens[`$${key}.${skey}`] = variable, process.env.NODE_ENV === "development" && typeof variable > "u")
|
|
62
|
+
throw new Error(
|
|
63
|
+
`No value for tokens.${key}.${skey}:
|
|
64
|
+
${JSON.stringify(
|
|
65
|
+
variable,
|
|
66
|
+
null,
|
|
67
|
+
2
|
|
68
|
+
)}`
|
|
69
|
+
);
|
|
70
|
+
isWeb && (registerCSSVariable(variable), declarations.push(variableToCSS(variable, key === "zIndex")));
|
|
71
|
+
}
|
|
72
|
+
if (isWeb) {
|
|
73
|
+
let declarationsToRuleSet2 = function(decs, selector = "") {
|
|
74
|
+
return `:root${selector} {${sep}${[...decs].join(`;${sep}`)}${sep}}`;
|
|
75
|
+
};
|
|
76
|
+
var declarationsToRuleSet = declarationsToRuleSet2;
|
|
77
|
+
for (const key in fontsParsed) {
|
|
78
|
+
const fontParsed = fontsParsed[key], [name, language] = key.includes("_") ? key.split("_") : [key], fontVars = registerFontVariables(fontParsed);
|
|
79
|
+
fontDeclarations[key] = {
|
|
80
|
+
name: name.slice(1),
|
|
81
|
+
declarations: fontVars,
|
|
82
|
+
language
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
const sep = process.env.NODE_ENV === "development" ? configIn.cssStyleSeparator || " " : "";
|
|
86
|
+
if (cssRuleSets.push(declarationsToRuleSet2(declarations)), fontDeclarations)
|
|
87
|
+
for (const key in fontDeclarations) {
|
|
88
|
+
const { name, declarations: declarations2, language = "default" } = fontDeclarations[key], fontSelector = `.font_${name}`, langSelector = `:root .t_lang-${name}-${language} ${fontSelector}`, selectors = language === "default" ? ` ${fontSelector}, ${langSelector}` : langSelector, specificRuleSet = declarationsToRuleSet2(declarations2, selectors);
|
|
89
|
+
cssRuleSets.push(specificRuleSet);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const themesIn = { ...configIn.themes }, dedupedThemes = foundThemes ?? getThemesDeduped(themesIn);
|
|
94
|
+
return {
|
|
95
|
+
themes: proxyThemesToParents(dedupedThemes),
|
|
96
|
+
cssRuleSets,
|
|
97
|
+
getThemeRulesSets() {
|
|
98
|
+
let themeRuleSets = [];
|
|
99
|
+
if (isWeb)
|
|
100
|
+
for (const { names, theme } of dedupedThemes) {
|
|
101
|
+
const nextRules = getThemeCSSRules({
|
|
102
|
+
config: configIn,
|
|
103
|
+
themeName: names[0],
|
|
104
|
+
names,
|
|
105
|
+
theme
|
|
106
|
+
});
|
|
107
|
+
themeRuleSets = [...themeRuleSets, ...nextRules];
|
|
108
|
+
}
|
|
109
|
+
return themeRuleSets;
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
})(), shorthands = configIn.shorthands || {};
|
|
113
|
+
let lastCSSInsertedRulesIndex = -1;
|
|
114
|
+
const getCSS = ({ separator = `
|
|
115
|
+
`, sinceLastCall, exclude } = {}) => {
|
|
116
|
+
if (sinceLastCall && lastCSSInsertedRulesIndex >= 0) {
|
|
117
|
+
const rules = getAllRules();
|
|
118
|
+
return lastCSSInsertedRulesIndex = rules.length, rules.slice(lastCSSInsertedRulesIndex).join(separator);
|
|
119
|
+
}
|
|
120
|
+
lastCSSInsertedRulesIndex = 0;
|
|
121
|
+
const runtimeStyles = getAllRules().join(separator);
|
|
122
|
+
return exclude === "design-system" ? runtimeStyles : `${`._ovs-contain {overscroll-behavior:contain;}
|
|
123
|
+
.is_Text .is_Text {display:inline-flex;}
|
|
124
|
+
._dsp_contents {display:contents;}
|
|
125
|
+
${themeConfig.cssRuleSets.join(separator)}`}
|
|
126
|
+
${exclude ? "" : themeConfig.getThemeRulesSets().join(separator)}
|
|
127
|
+
${runtimeStyles}`;
|
|
128
|
+
}, getNewCSS = (opts) => getCSS({ ...opts, sinceLastCall: !0 });
|
|
129
|
+
let defaultFontName = configIn.defaultFont || // uses font named "body" if present for compat
|
|
130
|
+
configIn.fonts && ("body" in configIn.fonts ? "body" : "");
|
|
131
|
+
!defaultFontName && configIn.fonts && (defaultFontName = Object.keys(configIn.fonts)[0]), defaultFontName?.[0] === "$" && (defaultFontName = defaultFontName.slice(1));
|
|
132
|
+
const defaultFont = `$${defaultFontName}`, config = {
|
|
133
|
+
fonts: {},
|
|
134
|
+
settings: {},
|
|
135
|
+
onlyAllowShorthands: !1,
|
|
136
|
+
fontLanguages: [],
|
|
137
|
+
animations: {},
|
|
138
|
+
media: {},
|
|
139
|
+
...configIn,
|
|
140
|
+
tokens,
|
|
141
|
+
// vite made this into a function if it wasn't set
|
|
142
|
+
shorthands,
|
|
143
|
+
inverseShorthands: shorthands ? Object.fromEntries(Object.entries(shorthands).map(([k, v]) => [v, k])) : {},
|
|
144
|
+
themes: themeConfig.themes,
|
|
145
|
+
fontsParsed: fontsParsed || {},
|
|
146
|
+
themeConfig,
|
|
147
|
+
tokensParsed,
|
|
148
|
+
parsed: !0,
|
|
149
|
+
getNewCSS,
|
|
150
|
+
getCSS,
|
|
151
|
+
defaultFont,
|
|
152
|
+
fontSizeTokens: fontSizeTokens || /* @__PURE__ */ new Set(),
|
|
153
|
+
specificTokens
|
|
154
|
+
// const tokens = [...getToken(tokens.size[0])]
|
|
155
|
+
// .spacer-sm + ._dsp_contents._dsp-sm-hidden { margin-left: -var(--${}) }
|
|
156
|
+
};
|
|
157
|
+
return configureMedia(config), setConfig(config), configListeners.size && (configListeners.forEach((cb) => cb(config)), configListeners.clear()), createdConfigs.set(config, !0), process.env.NODE_ENV === "development" && (process.env.DEBUG?.startsWith("tamagui") && console.log("Tamagui config:", config), globalThis.Tamagui || (globalThis.Tamagui = Tamagui)), config;
|
|
158
|
+
}
|
|
159
|
+
function getThemesDeduped(themes) {
|
|
160
|
+
const dedupedThemes = [], existing = /* @__PURE__ */ new Map();
|
|
161
|
+
for (const themeName in themes) {
|
|
162
|
+
const darkOrLightSpecificPrefix = themeName.startsWith("dark") ? "dark" : themeName.startsWith("light") ? "light" : "", rawTheme = themes[themeName], key = darkOrLightSpecificPrefix + JSON.stringify(rawTheme);
|
|
163
|
+
if (existing.has(key)) {
|
|
164
|
+
existing.get(key).names.push(themeName);
|
|
165
|
+
continue;
|
|
166
|
+
}
|
|
167
|
+
const theme = { ...rawTheme };
|
|
168
|
+
for (const key2 in theme)
|
|
169
|
+
ensureThemeVariable(theme, key2);
|
|
170
|
+
const deduped = {
|
|
171
|
+
names: [themeName],
|
|
172
|
+
theme
|
|
173
|
+
};
|
|
174
|
+
dedupedThemes.push(deduped), existing.set(key, deduped);
|
|
175
|
+
}
|
|
176
|
+
return dedupedThemes;
|
|
177
|
+
}
|
|
178
|
+
export {
|
|
179
|
+
createTamagui
|
|
180
|
+
};
|
|
181
|
+
//# sourceMappingURL=createTamagui.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createTamagui.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["declarationsToRuleSet", "declarations", "key"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { isWeb } from "@tamagui/constants";
|
|
2
|
+
import { simpleHash } from "@tamagui/helpers";
|
|
3
|
+
import { getConfig } from "./config";
|
|
4
|
+
const IS_VAR = "isVar", createVariable = (props, skipHash = !1) => {
|
|
5
|
+
if (!skipHash && isVariable(props))
|
|
6
|
+
return props;
|
|
7
|
+
const { key, name, val } = props;
|
|
8
|
+
return {
|
|
9
|
+
[IS_VAR]: !0,
|
|
10
|
+
key,
|
|
11
|
+
name: skipHash ? "" : simpleHash(name, 40),
|
|
12
|
+
val,
|
|
13
|
+
variable: isWeb ? skipHash ? `var(--${name})` : createCSSVariable(name) : ""
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
function variableToString(vrble, getValue = !1) {
|
|
17
|
+
return isVariable(vrble) ? !getValue && isWeb && vrble.variable ? vrble.variable : `${vrble.val}` : `${vrble || ""}`;
|
|
18
|
+
}
|
|
19
|
+
function isVariable(v) {
|
|
20
|
+
return v && typeof v == "object" && IS_VAR in v;
|
|
21
|
+
}
|
|
22
|
+
function getVariable(nameOrVariable) {
|
|
23
|
+
if (setDidGetVariableValue(!0), isVariable(nameOrVariable))
|
|
24
|
+
return variableToString(nameOrVariable);
|
|
25
|
+
const tokens = getConfig().tokensParsed;
|
|
26
|
+
return variableToString(tokens[nameOrVariable] ?? nameOrVariable);
|
|
27
|
+
}
|
|
28
|
+
let accessed = !1;
|
|
29
|
+
const setDidGetVariableValue = (val) => accessed = val, didGetVariableValue = () => accessed;
|
|
30
|
+
function getVariableValue(v) {
|
|
31
|
+
return isVariable(v) ? (setDidGetVariableValue(!0), v.val) : v;
|
|
32
|
+
}
|
|
33
|
+
function getVariableName(v) {
|
|
34
|
+
return isVariable(v) ? v.name : v;
|
|
35
|
+
}
|
|
36
|
+
function getVariableVariable(v) {
|
|
37
|
+
return isVariable(v) ? v.variable : v;
|
|
38
|
+
}
|
|
39
|
+
const createCSSVariable = (nameProp, includeVar = !0) => {
|
|
40
|
+
if (process.env.NODE_ENV === "development" && (!nameProp || typeof nameProp != "string"))
|
|
41
|
+
throw new Error(`createCSSVariable expected string, got: ${nameProp}`);
|
|
42
|
+
const name = simpleHash(nameProp, 60);
|
|
43
|
+
return includeVar ? `var(--${name})` : name;
|
|
44
|
+
};
|
|
45
|
+
export {
|
|
46
|
+
createCSSVariable,
|
|
47
|
+
createVariable,
|
|
48
|
+
didGetVariableValue,
|
|
49
|
+
getVariable,
|
|
50
|
+
getVariableName,
|
|
51
|
+
getVariableValue,
|
|
52
|
+
getVariableVariable,
|
|
53
|
+
isVariable,
|
|
54
|
+
setDidGetVariableValue,
|
|
55
|
+
variableToString
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=createVariable.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createVariable.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAO1B,MAAM,SAAS,SAaF,iBAAiB,CAC5B,OACA,WAAW,OACK;AAChB,MAAI,CAAC,YAAY,WAAW,KAAK;AAAG,WAAO;AAC3C,QAAM,EAAE,KAAK,MAAM,IAAI,IAAI;AAC3B,SAAO;AAAA,IACL,CAAC,MAAM,GAAG;AAAA,IACV;AAAA,IACA,MAAM,WAAW,KAAK,WAAW,MAAM,EAAE;AAAA,IACzC;AAAA,IACA,UAAU,QAAS,WAAW,SAAS,IAAI,MAAM,kBAAkB,IAAI,IAAK;AAAA,EAC9E;AACF;AAGO,SAAS,iBAAiB,OAAa,WAAW,IAAO;AAC9D,SAAI,WAAW,KAAK,IACd,CAAC,YAAY,SAAS,MAAM,WACvB,MAAM,WAER,GAAG,MAAM,GAAG,KAEd,GAAG,SAAS,EAAE;AACvB;AAEO,SAAS,WAAW,GAAkC;AAC3D,SAAO,KAAK,OAAO,KAAM,YAAY,UAAU;AACjD;AAEO,SAAS,YAAY,gBAAyC;AAEnE,MADA,uBAAuB,EAAI,GACvB,WAAW,cAAc;AAC3B,WAAO,iBAAiB,cAAc;AAExC,QAAM,SAAS,UAAU,EAAE;AAC3B,SAAO,iBAAiB,OAAO,cAAc,KAAK,cAAc;AAClE;AAEA,IAAI,WAAW;AACR,MAAM,yBAAyB,CAAC,QAAkB,WAAW,KACvD,sBAAsB,MAAM;AAElC,SAAS,iBAAiB,GAAmB;AAClD,SAAI,WAAW,CAAC,KACd,uBAAuB,EAAI,GACpB,EAAE,OAEJ;AACT;AAEO,SAAS,gBAAgB,GAAmB;AACjD,SAAI,WAAW,CAAC,IAAU,EAAE,OACrB;AACT;AAEO,SAAS,oBAAoB,GAAmB;AACrD,SAAI,WAAW,CAAC,IAAU,EAAE,WACrB;AACT;AAGO,MAAM,oBAAoB,CAAC,UAAkB,aAAa,OAAS;AACxE,MAAI,QAAQ,IAAI,aAAa,kBACvB,CAAC,YAAY,OAAO,YAAa;AACnC,UAAM,IAAI,MAAM,2CAA2C,QAAQ,EAAE;AAGzE,QAAM,OAAO,WAAW,UAAU,EAAE;AACpC,SAAO,aAAa,SAAS,IAAI,MAAM;AACzC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { simpleHash } from "@tamagui/helpers";
|
|
2
|
+
import { createVariable, isVariable } from "./createVariable";
|
|
3
|
+
const cache = /* @__PURE__ */ new WeakMap(), createVariables = (tokens, parentPath = "", isFont = !1) => {
|
|
4
|
+
if (cache.has(tokens))
|
|
5
|
+
return tokens;
|
|
6
|
+
const res = {};
|
|
7
|
+
let i = 0;
|
|
8
|
+
for (let keyIn in tokens) {
|
|
9
|
+
i++;
|
|
10
|
+
const val = tokens[keyIn], isPrefixed = keyIn[0] === "$", keyWithPrefix = isPrefixed ? keyIn : `$${keyIn}`, key = isPrefixed ? keyWithPrefix.slice(1) : keyIn;
|
|
11
|
+
if (isVariable(val)) {
|
|
12
|
+
res[key] = val;
|
|
13
|
+
continue;
|
|
14
|
+
}
|
|
15
|
+
const niceKey = simpleHash(key);
|
|
16
|
+
let name = isFont ? niceKey.slice(0, 2) : i;
|
|
17
|
+
if (name = parentPath ? `${parentPath}-${name}` : niceKey, val && typeof val == "object") {
|
|
18
|
+
res[key] = createVariables(
|
|
19
|
+
tokens[key],
|
|
20
|
+
name,
|
|
21
|
+
!1
|
|
22
|
+
/* note: don't pass isFont down, we want to avoid it past the first level */
|
|
23
|
+
);
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
const finalValue = isVariable(val) ? val : createVariable({ val, name, key: keyWithPrefix });
|
|
27
|
+
res[key] = finalValue;
|
|
28
|
+
}
|
|
29
|
+
return cache.set(res, !0), res;
|
|
30
|
+
};
|
|
31
|
+
export {
|
|
32
|
+
createVariables
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=createVariables.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createVariables.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,kBAAkB;AAE3B,SAAmB,gBAAgB,kBAAkB;AAcrD,MAAM,QAAQ,oBAAI,QAAQ,GAIb,kBAAkB,CAC7B,QACA,aAAa,IACb,SAAS,OACiB;AAC1B,MAAI,MAAM,IAAI,MAAM;AAAG,WAAO;AAE9B,QAAM,MAAW,CAAC;AAClB,MAAI,IAAI;AACR,WAAS,SAAS,QAAQ;AACxB;AACA,UAAM,MAAM,OAAO,KAAK,GAClB,aAAa,MAAM,CAAC,MAAM,KAC1B,gBAAgB,aAAa,QAAQ,IAAI,KAAK,IAC9C,MAAM,aAAa,cAAc,MAAM,CAAC,IAAI;AAClD,QAAI,WAAW,GAAG,GAAG;AACnB,UAAI,GAAG,IAAI;AACX;AAAA,IACF;AACA,UAAM,UAAU,WAAW,GAAG;AAC9B,QAAI,OAAO,SAAS,QAAQ,MAAM,GAAG,CAAC,IAAI;AAE1C,QADA,OAAO,aAAa,GAAG,UAAU,IAAI,IAAI,KAAK,SAC1C,OAAO,OAAO,OAAQ,UAAU;AAElC,UAAI,GAAG,IAAI;AAAA,QACT,OAAO,GAAG;AAAA,QACV;AAAA,QACA;AAAA;AAAA,MACF;AACA;AAAA,IACF;AACA,UAAM,aAAa,WAAW,GAAG,IAC7B,MACA,eAAe,EAAE,KAAK,MAAM,KAAK,cAAc,CAAC;AACpD,QAAI,GAAG,IAAI;AAAA,EACb;AAEA,eAAM,IAAI,KAAK,EAAI,GACZ;AACT;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const defaultComponentState = {
|
|
2
|
+
hover: !1,
|
|
3
|
+
press: !1,
|
|
4
|
+
pressIn: !1,
|
|
5
|
+
focus: !1,
|
|
6
|
+
unmounted: !0
|
|
7
|
+
}, defaultComponentStateMounted = {
|
|
8
|
+
...defaultComponentState,
|
|
9
|
+
unmounted: !1
|
|
10
|
+
}, defaultComponentStateShouldEnter = {
|
|
11
|
+
...defaultComponentState,
|
|
12
|
+
unmounted: "should-enter"
|
|
13
|
+
};
|
|
14
|
+
export {
|
|
15
|
+
defaultComponentState,
|
|
16
|
+
defaultComponentStateMounted,
|
|
17
|
+
defaultComponentStateShouldEnter
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=defaultComponentState.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/defaultComponentState.tsx"],
|
|
4
|
+
"mappings": "AAEO,MAAM,wBAA+C;AAAA,EAC1D,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AAAA,EACT,OAAO;AAAA,EACP,WAAW;AACb,GAEa,+BAAsD;AAAA,EACjE,GAAG;AAAA,EACH,WAAW;AACb,GAEa,mCAA0D;AAAA,EACrE,GAAG;AAAA,EACH,WAAW;AACb;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { isWeb } from "@tamagui/constants";
|
|
2
|
+
import { getThemes } from "../config";
|
|
3
|
+
import { THEME_CLASSNAME_PREFIX, THEME_NAME_SEPARATOR } from "../constants/constants";
|
|
4
|
+
const emptyState = { name: "" };
|
|
5
|
+
function getHasThemeUpdatingProps(props) {
|
|
6
|
+
return props.name || props.componentName || props.inverse || props.reset;
|
|
7
|
+
}
|
|
8
|
+
let uid = 0;
|
|
9
|
+
class ThemeManager {
|
|
10
|
+
constructor(props = {}, parentManagerIn) {
|
|
11
|
+
this.props = props;
|
|
12
|
+
this.id = uid++;
|
|
13
|
+
this.isComponent = !1;
|
|
14
|
+
this.themeListeners = /* @__PURE__ */ new Set();
|
|
15
|
+
this.parentManager = null;
|
|
16
|
+
this.state = emptyState;
|
|
17
|
+
this.scheme = null;
|
|
18
|
+
this._allKeys = null;
|
|
19
|
+
if (parentManagerIn === "root") {
|
|
20
|
+
this.updateStateFromProps(props, !1);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (!parentManagerIn)
|
|
24
|
+
throw process.env.NODE_ENV !== "production" ? new Error(
|
|
25
|
+
"No parent manager given, this is likely due to duplicated Tamagui dependencies. Check your lockfile for mis-matched versions. It could also be from an error somewhere else in your stack causing Tamagui to recieve undefined context, you can try putting some ErrorBoundary components around other areas of your app, or a Suspense boundary."
|
|
26
|
+
) : "\u274C 0";
|
|
27
|
+
if (this.parentManager = parentManagerIn, !this.updateStateFromProps(props, !1))
|
|
28
|
+
return parentManagerIn || this;
|
|
29
|
+
}
|
|
30
|
+
updateStateFromProps(props = this.props || {}, shouldNotify = !0) {
|
|
31
|
+
if (this.props = props, props.forceTheme)
|
|
32
|
+
return this.state.theme = props.forceTheme, this.state.name = props.name || "", !0;
|
|
33
|
+
const nextState = this.getStateIfChanged(props);
|
|
34
|
+
if (nextState)
|
|
35
|
+
return this.updateState(nextState, shouldNotify), nextState;
|
|
36
|
+
}
|
|
37
|
+
updateState(nextState, shouldNotify = !0) {
|
|
38
|
+
this.state = nextState;
|
|
39
|
+
const names = this.state.name.split("_"), lastName = names[names.length - 1][0];
|
|
40
|
+
this.isComponent = lastName[0] === lastName[0].toUpperCase(), this._allKeys = null, this.scheme = names[0] === "light" ? "light" : names[0] === "dark" ? "dark" : null, process.env.NODE_ENV === "development" && (this._numChangeEventsSent ??= 0, this._numChangeEventsSent++), shouldNotify && queueMicrotask(() => {
|
|
41
|
+
this.notify();
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
getStateIfChanged(props = this.props, state = this.state, parentManager = this.parentManager) {
|
|
45
|
+
const _ = this.getState(props, parentManager);
|
|
46
|
+
if (state && state !== emptyState && !_)
|
|
47
|
+
return parentManager?.state;
|
|
48
|
+
if (this.getStateShouldChange(_, state))
|
|
49
|
+
return _;
|
|
50
|
+
}
|
|
51
|
+
getStateShouldChange(nextState, state = this.state) {
|
|
52
|
+
return !(!nextState?.theme || nextState.theme === state?.theme);
|
|
53
|
+
}
|
|
54
|
+
getState(props = this.props, parentManager = this.parentManager) {
|
|
55
|
+
return getState(props, parentManager) || parentManager?.state || null;
|
|
56
|
+
}
|
|
57
|
+
get allKeys() {
|
|
58
|
+
return this._allKeys ||= /* @__PURE__ */ new Set([
|
|
59
|
+
...this.parentManager?.allKeys || [],
|
|
60
|
+
...Object.keys(this.state.theme || {})
|
|
61
|
+
]), this._allKeys;
|
|
62
|
+
}
|
|
63
|
+
notify(forced = !1) {
|
|
64
|
+
this.themeListeners.forEach((cb) => cb(this.state.name, this, forced));
|
|
65
|
+
}
|
|
66
|
+
onChangeTheme(cb, debugId) {
|
|
67
|
+
return process.env.NODE_ENV === "development" && debugId && (this._listeningIds ??= /* @__PURE__ */ new Set(), this._listeningIds.add(debugId)), this.themeListeners.add(cb), () => {
|
|
68
|
+
this.themeListeners.delete(cb);
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
function getNextThemeClassName(name) {
|
|
73
|
+
return `t_sub_theme ${THEME_CLASSNAME_PREFIX}${name}`.replace("light_", "").replace("dark_", "");
|
|
74
|
+
}
|
|
75
|
+
function getState(props, parentManager) {
|
|
76
|
+
const validManagerAndAllComponentThemes = getNonComponentParentManager(parentManager);
|
|
77
|
+
parentManager = validManagerAndAllComponentThemes[0];
|
|
78
|
+
const allComponentThemes = validManagerAndAllComponentThemes[1], themes = getThemes(), isDirectParentAComponentTheme = allComponentThemes.length > 0;
|
|
79
|
+
if (props.name && props.reset)
|
|
80
|
+
throw new Error("Cannot reset + set new name");
|
|
81
|
+
if (!props.name && !props.inverse && !props.reset && !props.componentName)
|
|
82
|
+
return null;
|
|
83
|
+
if (props.reset && !isDirectParentAComponentTheme && !parentManager?.parentManager)
|
|
84
|
+
return process.env.NODE_ENV === "development" && console.warn("Cannot reset no grandparent exists"), null;
|
|
85
|
+
let result = null;
|
|
86
|
+
const nextName = props.reset ? isDirectParentAComponentTheme ? parentManager?.state?.name || "" : parentManager?.parentManager?.state?.name || "" : props.name || "", { componentName } = props, parentName = props.reset ? isDirectParentAComponentTheme ? (
|
|
87
|
+
// here because parentManager already skipped componentTheme so we have to only go up once
|
|
88
|
+
parentManager?.parentManager?.state.name || ""
|
|
89
|
+
) : parentManager?.parentManager?.parentManager?.state.name || "" : isDirectParentAComponentTheme ? allComponentThemes[0] || "" : parentManager?.state.name || "";
|
|
90
|
+
props.reset && isDirectParentAComponentTheme && allComponentThemes.shift();
|
|
91
|
+
const base = parentName.split(THEME_NAME_SEPARATOR), lastSegment = base[base.length - 1], isParentComponentTheme = parentName && lastSegment[0].toUpperCase() === lastSegment[0];
|
|
92
|
+
isParentComponentTheme && base.pop();
|
|
93
|
+
const parentBaseTheme = isParentComponentTheme ? base.slice(0, base.length).join(THEME_NAME_SEPARATOR) : parentName, max = base.length, min = componentName && !nextName ? max : 0;
|
|
94
|
+
process.env.NODE_ENV === "development" && typeof props.debug == "string" && (console.groupCollapsed("ThemeManager.getState()"), console.log({
|
|
95
|
+
props,
|
|
96
|
+
parentName,
|
|
97
|
+
parentBaseTheme,
|
|
98
|
+
base,
|
|
99
|
+
min,
|
|
100
|
+
max,
|
|
101
|
+
isParentComponentTheme
|
|
102
|
+
}));
|
|
103
|
+
for (let i = max; i >= min; i--) {
|
|
104
|
+
let prefix = base.slice(0, i).join(THEME_NAME_SEPARATOR);
|
|
105
|
+
props.inverse && (prefix = inverseThemeName(prefix));
|
|
106
|
+
let potentials = [];
|
|
107
|
+
if (prefix && prefix !== parentBaseTheme && potentials.push(prefix), nextName && potentials.unshift(prefix ? `${prefix}_${nextName}` : nextName), i === 1) {
|
|
108
|
+
const lastSegment2 = potentials.findIndex((x) => !x.includes("_"));
|
|
109
|
+
lastSegment2 > 0 && potentials.splice(lastSegment2, 0, nextName);
|
|
110
|
+
}
|
|
111
|
+
if (componentName) {
|
|
112
|
+
let componentPotentials = [];
|
|
113
|
+
if (nextName) {
|
|
114
|
+
const beforeSeparator = prefix.slice(0, prefix.indexOf(THEME_NAME_SEPARATOR));
|
|
115
|
+
componentPotentials.push(`${beforeSeparator}_${nextName}_${componentName}`);
|
|
116
|
+
}
|
|
117
|
+
if (componentPotentials.push(`${prefix}_${componentName}`), nextName) {
|
|
118
|
+
const prefixLessOne = base.slice(0, i - 1).join(THEME_NAME_SEPARATOR);
|
|
119
|
+
if (prefixLessOne) {
|
|
120
|
+
const lessSpecific = `${prefixLessOne}_${nextName}_${componentName}`;
|
|
121
|
+
componentPotentials.unshift(lessSpecific);
|
|
122
|
+
}
|
|
123
|
+
const moreSpecific = `${prefix}_${nextName}_${componentName}`;
|
|
124
|
+
componentPotentials.unshift(moreSpecific);
|
|
125
|
+
}
|
|
126
|
+
potentials = [...componentPotentials, ...potentials, ...allComponentThemes];
|
|
127
|
+
}
|
|
128
|
+
const found = potentials.find((t) => t in themes);
|
|
129
|
+
if (process.env.NODE_ENV === "development" && typeof props.debug == "string" && console.log(" - ", { found, potentials, parentManager }), found) {
|
|
130
|
+
result = {
|
|
131
|
+
name: found,
|
|
132
|
+
theme: themes[found],
|
|
133
|
+
className: isWeb ? getNextThemeClassName(found) : "",
|
|
134
|
+
parentName,
|
|
135
|
+
componentName,
|
|
136
|
+
inverse: props.inverse
|
|
137
|
+
};
|
|
138
|
+
break;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return process.env.NODE_ENV === "development" && typeof props.debug == "string" && typeof window < "u" && (console.warn("ThemeManager.getState():", {
|
|
142
|
+
result
|
|
143
|
+
}), console.trace(), console.groupEnd()), result;
|
|
144
|
+
}
|
|
145
|
+
const inverseThemeName = (themeName) => themeName.startsWith("light") ? themeName.replace(/^light/, "dark") : themeName.replace(/^dark/, "light");
|
|
146
|
+
function getNonComponentParentManager(themeManager) {
|
|
147
|
+
let res = themeManager, componentThemeNames = [];
|
|
148
|
+
for (; res && res?.isComponent; )
|
|
149
|
+
componentThemeNames.push(res?.state?.name), res = res.parentManager;
|
|
150
|
+
return [res || null, componentThemeNames];
|
|
151
|
+
}
|
|
152
|
+
export {
|
|
153
|
+
ThemeManager,
|
|
154
|
+
getHasThemeUpdatingProps,
|
|
155
|
+
getNonComponentParentManager
|
|
156
|
+
};
|
|
157
|
+
//# sourceMappingURL=ThemeManager.js.map
|