@impulse-ui-native/theme 2.0.1 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/constants/index.d.mts +10 -0
- package/dist/constants/index.js +2 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/style.constants.d.mts +14 -0
- package/dist/constants/style.constants.js +100 -0
- package/dist/constants/style.constants.js.map +1 -0
- package/dist/hooks/index.d.mts +28 -0
- package/dist/hooks/index.js +19 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-border.hook.d.mts +5 -0
- package/dist/hooks/use-border.hook.js +10 -0
- package/dist/hooks/use-border.hook.js.map +1 -0
- package/dist/hooks/use-colors.hook.d.mts +16 -0
- package/dist/hooks/use-colors.hook.js +10 -0
- package/dist/hooks/use-colors.hook.js.map +1 -0
- package/dist/hooks/use-components-tokens.hook.d.mts +16 -0
- package/dist/hooks/use-components-tokens.hook.js +10 -0
- package/dist/hooks/use-components-tokens.hook.js.map +1 -0
- package/dist/hooks/use-radii.hook.d.mts +5 -0
- package/dist/hooks/use-radii.hook.js +10 -0
- package/dist/hooks/use-radii.hook.js.map +1 -0
- package/dist/hooks/use-space.hook.d.mts +5 -0
- package/dist/hooks/use-space.hook.js +10 -0
- package/dist/hooks/use-space.hook.js.map +1 -0
- package/dist/hooks/use-style-props.hook.d.mts +13 -0
- package/dist/hooks/use-style-props.hook.js +10 -0
- package/dist/hooks/use-style-props.hook.js.map +1 -0
- package/dist/hooks/use-theme.hook.d.mts +16 -0
- package/dist/hooks/use-theme.hook.js +8 -0
- package/dist/hooks/use-theme.hook.js.map +1 -0
- package/dist/hooks/use-themed-styles.d.mts +22 -0
- package/dist/hooks/use-themed-styles.js +16 -0
- package/dist/hooks/use-themed-styles.js.map +1 -0
- package/dist/index.d.mts +39 -554
- package/dist/index.js +6 -1051
- package/dist/index.js.map +1 -1
- package/dist/providers/index.d.mts +16 -0
- package/dist/providers/index.js +2 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/theme.provider.d.mts +29 -0
- package/dist/providers/theme.provider.js +35 -0
- package/dist/providers/theme.provider.js.map +1 -0
- package/dist/theme/create-button-tokens.d.mts +16 -0
- package/dist/theme/create-button-tokens.js +78 -0
- package/dist/theme/create-button-tokens.js.map +1 -0
- package/dist/theme/create-control-tokens.d.mts +20 -0
- package/dist/theme/create-control-tokens.js +153 -0
- package/dist/theme/create-control-tokens.js.map +1 -0
- package/dist/theme/create-data-state-tokens.d.mts +16 -0
- package/dist/theme/create-data-state-tokens.js +23 -0
- package/dist/theme/create-data-state-tokens.js.map +1 -0
- package/dist/theme/create-datetime-picker.d.mts +16 -0
- package/dist/theme/create-datetime-picker.js +43 -0
- package/dist/theme/create-datetime-picker.js.map +1 -0
- package/dist/theme/create-flyout-tokens.d.mts +16 -0
- package/dist/theme/create-flyout-tokens.js +27 -0
- package/dist/theme/create-flyout-tokens.js.map +1 -0
- package/dist/theme/create-icon-button-tokens.d.mts +16 -0
- package/dist/theme/create-icon-button-tokens.js +72 -0
- package/dist/theme/create-icon-button-tokens.js.map +1 -0
- package/dist/theme/create-select-tokens.d.mts +16 -0
- package/dist/theme/create-select-tokens.js +14 -0
- package/dist/theme/create-select-tokens.js.map +1 -0
- package/dist/theme/create-skeleton-tokens.d.mts +16 -0
- package/dist/theme/create-skeleton-tokens.js +21 -0
- package/dist/theme/create-skeleton-tokens.js.map +1 -0
- package/dist/theme/create-tag-tokens.d.mts +16 -0
- package/dist/theme/create-tag-tokens.js +102 -0
- package/dist/theme/create-tag-tokens.js.map +1 -0
- package/dist/theme/create-time-picker-tokens.d.mts +16 -0
- package/dist/theme/create-time-picker-tokens.js +40 -0
- package/dist/theme/create-time-picker-tokens.js.map +1 -0
- package/dist/theme/dark.theme.d.mts +16 -0
- package/dist/theme/dark.theme.js +24 -0
- package/dist/theme/dark.theme.js.map +1 -0
- package/dist/theme/index.d.mts +16 -0
- package/dist/theme/index.js +8 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/light.theme.d.mts +16 -0
- package/dist/theme/light.theme.js +24 -0
- package/dist/theme/light.theme.js.map +1 -0
- package/dist/theme/tokens.theme.d.mts +29 -0
- package/dist/theme/tokens.theme.js +257 -0
- package/dist/theme/tokens.theme.js.map +1 -0
- package/dist/types/border.types.d.mts +22 -0
- package/dist/types/border.types.js +1 -0
- package/dist/types/border.types.js.map +1 -0
- package/dist/types/buttons-tokens.types.d.mts +42 -0
- package/dist/types/buttons-tokens.types.js +1 -0
- package/dist/types/buttons-tokens.types.js.map +1 -0
- package/dist/types/chart.types.d.mts +19 -0
- package/dist/types/chart.types.js +1 -0
- package/dist/types/chart.types.js.map +1 -0
- package/dist/types/color.types.d.mts +9 -0
- package/dist/types/color.types.js +1 -0
- package/dist/types/color.types.js.map +1 -0
- package/dist/types/components.types.d.mts +4 -0
- package/dist/types/components.types.js +1 -0
- package/dist/types/components.types.js.map +1 -0
- package/dist/types/control-tokes.types.d.mts +59 -0
- package/dist/types/control-tokes.types.js +1 -0
- package/dist/types/control-tokes.types.js.map +1 -0
- package/dist/types/data-state-tokens.types.d.mts +23 -0
- package/dist/types/data-state-tokens.types.js +1 -0
- package/dist/types/data-state-tokens.types.js.map +1 -0
- package/dist/types/datetime-picker-tokens.types.d.mts +47 -0
- package/dist/types/datetime-picker-tokens.types.js +1 -0
- package/dist/types/datetime-picker-tokens.types.js.map +1 -0
- package/dist/types/dimension.types.d.mts +14 -0
- package/dist/types/dimension.types.js +1 -0
- package/dist/types/dimension.types.js.map +1 -0
- package/dist/types/flex.types.d.mts +25 -0
- package/dist/types/flex.types.js +1 -0
- package/dist/types/flex.types.js.map +1 -0
- package/dist/types/flyout-tokens.types.d.mts +25 -0
- package/dist/types/flyout-tokens.types.js +1 -0
- package/dist/types/flyout-tokens.types.js.map +1 -0
- package/dist/types/index.d.mts +22 -0
- package/dist/types/index.js +22 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/select-tokens.types.d.mts +11 -0
- package/dist/types/select-tokens.types.js +1 -0
- package/dist/types/select-tokens.types.js.map +1 -0
- package/dist/types/shadow.types.d.mts +20 -0
- package/dist/types/shadow.types.js +1 -0
- package/dist/types/shadow.types.js.map +1 -0
- package/dist/types/skeleton-tokens.types.d.mts +18 -0
- package/dist/types/skeleton-tokens.types.js +1 -0
- package/dist/types/skeleton-tokens.types.js.map +1 -0
- package/dist/types/spacing.types.d.mts +20 -0
- package/dist/types/spacing.types.js +1 -0
- package/dist/types/spacing.types.js.map +1 -0
- package/dist/types/style.types.d.mts +14 -0
- package/dist/types/style.types.js +1 -0
- package/dist/types/style.types.js.map +1 -0
- package/dist/types/tag-tokens.types.d.mts +28 -0
- package/dist/types/tag-tokens.types.js +1 -0
- package/dist/types/tag-tokens.types.js.map +1 -0
- package/dist/types/theme-provider.types.d.mts +90 -0
- package/dist/types/theme-provider.types.js +1 -0
- package/dist/types/theme-provider.types.js.map +1 -0
- package/dist/types/time-picker-token.types.d.mts +34 -0
- package/dist/types/time-picker-token.types.js +1 -0
- package/dist/types/time-picker-token.types.js.map +1 -0
- package/dist/types/tokens.types.d.mts +27 -0
- package/dist/types/tokens.types.js +1 -0
- package/dist/types/tokens.types.js.map +1 -0
- package/dist/types/typography.types.d.mts +23 -0
- package/dist/types/typography.types.js +1 -0
- package/dist/types/typography.types.js.map +1 -0
- package/dist/utils/index.d.mts +22 -0
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/style.utils.d.mts +27 -0
- package/dist/utils/style.utils.js +49 -0
- package/dist/utils/style.utils.js.map +1 -0
- package/package.json +8 -7
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/constants/style.constants.ts","../src/hooks/use-border.hook.ts","../src/providers/theme.provider.tsx","../src/theme/create-button-tokens.ts","../src/theme/create-control-tokens.ts","../src/theme/create-data-state-tokens.ts","../src/theme/create-datetime-picker.ts","../src/theme/create-flyout-tokens.ts","../src/theme/create-icon-button-tokens.ts","../src/theme/create-select-tokens.ts","../src/theme/create-skeleton-tokens.ts","../src/theme/create-tag-tokens.ts","../src/theme/create-time-picker-tokens.ts","../src/theme/tokens.theme.ts","../src/theme/dark.theme.ts","../src/theme/light.theme.ts","../src/hooks/use-colors.hook.ts","../src/hooks/use-components-tokens.hook.ts","../src/hooks/use-radii.hook.ts","../src/hooks/use-space.hook.ts","../src/hooks/use-style-props.hook.ts","../src/utils/style.utils.ts","../src/hooks/use-theme.hook.ts","../src/hooks/use-themed-styles.ts"],"sourcesContent":["import { ShadowIntensity, ShadowLevel, StyleProps } from \"../types\";\r\n\r\nconst StylePropsRecord: Record<keyof StyleProps, number> = {\r\n margin: 0,\r\n marginTop: 0,\r\n marginBottom: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n marginHorizontal: 0,\r\n marginVertical: 0,\r\n padding: 0,\r\n paddingTop: 0,\r\n paddingBottom: 0,\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n paddingHorizontal: 0,\r\n paddingVertical: 0,\r\n color: 0,\r\n backgroundColor: 0,\r\n opacity: 0,\r\n shadow: 0,\r\n shadowPosition: 0,\r\n shadowColor: 0,\r\n shadowOpacity: 0,\r\n shadowRadius: 0,\r\n shadowOffset: 0,\r\n elevation: 0,\r\n borderRadius: 0,\r\n borderTopLeftRadius: 0,\r\n borderTopRightRadius: 0,\r\n borderBottomLeftRadius: 0,\r\n borderBottomRightRadius: 0,\r\n borderWidth: 0,\r\n borderTopWidth: 0,\r\n borderRightWidth: 0,\r\n borderBottomWidth: 0,\r\n borderLeftWidth: 0,\r\n borderColor: 0,\r\n borderTopColor: 0,\r\n borderRightColor: 0,\r\n borderBottomColor: 0,\r\n borderLeftColor: 0,\r\n borderStyle: 0,\r\n fontSize: 0,\r\n fontFamily: 0,\r\n fontWeight: 0,\r\n fontStyle: 0,\r\n fontVariant: 0,\r\n letterSpacing: 0,\r\n lineHeight: 0,\r\n textAlign: 0,\r\n textDecorationLine: 0,\r\n textDecorationStyle: 0,\r\n textDecorationColor: 0,\r\n textTransform: 0,\r\n includeFontPadding: 0,\r\n textAlignVertical: 0,\r\n writingDirection: 0,\r\n flex: 0,\r\n flexGrow: 0,\r\n flexShrink: 0,\r\n flexBasis: 0,\r\n flexDirection: 0,\r\n flexWrap: 0,\r\n justifyContent: 0,\r\n alignItems: 0,\r\n alignSelf: 0,\r\n alignContent: 0,\r\n gap: 0,\r\n rowGap: 0,\r\n columnGap: 0,\r\n position: 0,\r\n top: 0,\r\n right: 0,\r\n bottom: 0,\r\n left: 0,\r\n zIndex: 0,\r\n width: 0,\r\n height: 0,\r\n minWidth: 0,\r\n maxWidth: 0,\r\n minHeight: 0,\r\n maxHeight: 0,\r\n aspectRatio: 0,\r\n overflow: 0,\r\n} as const;\r\n\r\nexport const StylePropsSet = new Set<keyof StyleProps>(\r\n Object.keys(StylePropsRecord) as (keyof StyleProps)[],\r\n);\r\n\r\nexport const shadowScale: Record<ShadowLevel, ShadowIntensity> = {\r\n none: { radius: 0, opacity: 0, elevation: 0 },\r\n xs: { radius: 2, opacity: 0.08, elevation: 1 },\r\n sm: { radius: 4, opacity: 0.1, elevation: 2 },\r\n md: { radius: 8, opacity: 0.15, elevation: 4 },\r\n lg: { radius: 16, opacity: 0.18, elevation: 8 },\r\n xl: { radius: 24, opacity: 0.22, elevation: 12 },\r\n};\r\n","import { useMemo } from \"react\";\r\n\r\nimport { useThemeContext } from \"../providers\";\r\nimport { BorderSize } from \"../types\";\r\n\r\nexport function useBorder(): BorderSize {\r\n const context = useThemeContext();\r\n\r\n return useMemo(() => context.borderSize, [context.borderSize]);\r\n}\r\n","import {\r\n createContext,\r\n memo,\r\n PropsWithChildren,\r\n useContext,\r\n useMemo,\r\n} from \"react\";\r\n\r\nimport { DeepPartial, merge } from \"@impulse-ui-native/core\";\r\n\r\nimport { createComponentsTokens, DarkTheme, LightTheme } from \"../theme\";\r\nimport {\r\n AppTheme,\r\n ColorScheme,\r\n ComponentsTokens,\r\n PrimitiveThemeTokens,\r\n} from \"../types\";\r\n\r\nconst ThemeContext = createContext<AppTheme | undefined>(undefined);\r\n\r\ninterface ThemeProviderProps {\r\n scheme?: ColorScheme;\r\n theme?: DeepPartial<{\r\n light: PrimitiveThemeTokens;\r\n dark: PrimitiveThemeTokens;\r\n }>;\r\n components?:\r\n | ((theme: PrimitiveThemeTokens) => DeepPartial<ComponentsTokens>)\r\n | DeepPartial<ComponentsTokens>;\r\n}\r\n\r\nexport const ThemeProvider = memo(function ThemeProvider(\r\n props: PropsWithChildren<ThemeProviderProps>,\r\n) {\r\n const scheme = props?.scheme ?? \"light\";\r\n\r\n const context = useMemo<AppTheme>(() => {\r\n const baseTheme = scheme === \"light\" ? LightTheme : DarkTheme;\r\n const customBaseTheme = props.theme?.[scheme];\r\n const theme = merge(baseTheme, customBaseTheme);\r\n\r\n return {\r\n ...theme,\r\n components: createComponentsTokens(theme),\r\n };\r\n }, [scheme, props.theme?.light, props.theme?.dark, props.components]);\r\n\r\n return (\r\n <ThemeContext.Provider value={context}>\r\n {props.children}\r\n </ThemeContext.Provider>\r\n );\r\n});\r\n\r\nexport function useThemeContext() {\r\n const context = useContext(ThemeContext);\r\n\r\n if (!context) {\r\n throw new Error(\"useThemeContext must be used within a ThemeProvider\");\r\n }\r\n\r\n return context;\r\n}\r\n","import { ButtonTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createButtonTokens(tokens: PrimitiveThemeTokens): ButtonTokens {\r\n const primary = tokens.colors.primary.value;\r\n const primaryContrast = tokens.colors.primary.contrast;\r\n\r\n const secondary = tokens.colors.secondary.value;\r\n const secondaryContrast = tokens.colors.secondary.contrast;\r\n\r\n const neutral = tokens.colors.neutral;\r\n const disabledColor = tokens.colors.text.disabled;\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.md,\r\n\r\n sizes: {\r\n small: {\r\n height: 32,\r\n paddingVertical: 6,\r\n paddingHorizontal: 12,\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n medium: {\r\n height: 40,\r\n paddingVertical: 8,\r\n paddingHorizontal: 16,\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n large: {\r\n height: 48,\r\n paddingVertical: 10,\r\n paddingHorizontal: 20,\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n backgroundColor: primary,\r\n borderColor: primary,\r\n color: primaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"5\"],\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: \"transparent\",\r\n borderColor: primary,\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n soft: {\r\n backgroundColor: secondary,\r\n borderColor: secondary,\r\n color: secondaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"3\"],\r\n disabledBorderColor: neutral[\"3\"],\r\n disabledColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n },\r\n };\r\n}\r\n","import {\r\n ControlAddonTokens,\r\n ControlContainerTokens,\r\n ControlErrorTokens,\r\n ControlInputTokens,\r\n ControlLabelTokens,\r\n PrimitiveThemeTokens,\r\n} from \"../types\";\r\n\r\nexport function createControlAddonTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlAddonTokens {\r\n return {\r\n marginHorizontal: tokens.space.xxs,\r\n hitSlop: tokens.space.sm,\r\n\r\n iconColor: tokens.colors.text.secondary,\r\n errorIconColor: tokens.colors.feedback.error.value,\r\n disabledIconColor: tokens.colors.text.disabled,\r\n };\r\n}\r\n\r\nexport function createControlContainerTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlContainerTokens {\r\n const ErrorColor = tokens.colors.feedback.error.value;\r\n const TransparentColor = \"transparent\";\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.sm,\r\n disabledOpacity: 0.7,\r\n\r\n sizes: {\r\n small: {\r\n height: 32,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n medium: {\r\n height: 40,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n large: {\r\n height: 48,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n backgroundColor: tokens.colors.surface.secondary.value,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: tokens.colors.neutral[\"2\"],\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: TransparentColor,\r\n borderColor: tokens.colors.neutral[\"5\"],\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: tokens.colors.neutral[\"5\"],\r\n },\r\n\r\n soft: {\r\n backgroundColor: tokens.colors.accent.value,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: tokens.colors.neutral[\"2\"],\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: TransparentColor,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: TransparentColor,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: TransparentColor,\r\n },\r\n },\r\n };\r\n}\r\n\r\nexport function createControlErrorTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlErrorTokens {\r\n return {\r\n marginTop: tokens.space.xxs,\r\n color: tokens.colors.feedback.error.value,\r\n fontSize: tokens.fontSize.xs,\r\n };\r\n}\r\n\r\nexport function createControlInputTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlInputTokens {\r\n return {\r\n flex: 1,\r\n fontFamily: tokens.fontFamily.normal[400],\r\n paddingHorizontal: tokens.space.xxs,\r\n\r\n sizes: {\r\n small: {\r\n fontSize: tokens.fontSize.xs,\r\n },\r\n medium: {\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n large: {\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n outlined: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n soft: {\r\n color: tokens.colors.accent.contrast,\r\n placeholderColor: tokens.colors.accent.contrast,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.accent.contrast,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n ghost: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n plain: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n },\r\n };\r\n}\r\n\r\nexport function createControlLabelTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlLabelTokens {\r\n return {\r\n marginBottom: tokens.space.xxs,\r\n fontSize: tokens.fontSize.xsm,\r\n\r\n color: tokens.colors.text.secondary,\r\n disabledColor: tokens.colors.text.disabled,\r\n errorColor: tokens.colors.feedback.error.value,\r\n };\r\n}\r\n","import { DataStateTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createDataStateTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): DataStateTokens {\r\n return {\r\n details: {\r\n gap: 10,\r\n iconSize: 150,\r\n iconColor: tokens.colors.primary.value,\r\n },\r\n\r\n actionsFooter: {\r\n gap: 10,\r\n },\r\n\r\n content: {\r\n zIndex: 1,\r\n },\r\n\r\n loading: {\r\n transitionDuration: 250,\r\n loaderZIndex: 1,\r\n },\r\n };\r\n}\r\n","import { DatetimePickerTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createDatetimePickerTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): DatetimePickerTokens {\r\n return {\r\n calendar: {\r\n dayNamesMarginBottom: tokens.space.msm,\r\n weeksGap: tokens.space.xxs,\r\n },\r\n day: {\r\n size: 40,\r\n borderRadius: tokens.radii.sm,\r\n\r\n color: tokens.colors.text.primary,\r\n outsideMonthColor: tokens.colors.neutral[\"5\"],\r\n\r\n selectedBackgroundColor: tokens.colors.primary.value,\r\n selectedColor: tokens.colors.primary.contrast,\r\n\r\n rangeBackgroundColor: tokens.colors.secondary.value,\r\n rangeColor: tokens.colors.secondary.contrast,\r\n },\r\n datePickerFlyout: {\r\n gap: tokens.space.msm,\r\n },\r\n datetimePickerFlyout: {\r\n gap: tokens.space.msm,\r\n },\r\n datetimeRangePickerFlyout: {\r\n gap: tokens.space.msm,\r\n timeInputsGap: tokens.space.xs,\r\n },\r\n flyoutActions: {\r\n gap: tokens.space.msm,\r\n buttonsGap: tokens.space.xs,\r\n clearColor: tokens.colors.primary.value,\r\n },\r\n quickDateOptions: {\r\n gap: tokens.space.xs,\r\n },\r\n visibleDateSelect: {\r\n gap: tokens.space.xs,\r\n },\r\n };\r\n}\r\n","import { FlyoutTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createFlyoutTokens(tokens: PrimitiveThemeTokens): FlyoutTokens {\r\n return {\r\n zIndexBase: 100,\r\n\r\n maxHeightRatio: 0.7,\r\n\r\n overlayColor: tokens.colors.black,\r\n overlayVisibleOpacity: 0.4,\r\n\r\n backgroundColor: tokens.colors.surface.secondary.value,\r\n contentPaddingHorizontal: tokens.space.md,\r\n\r\n borderRadius: tokens.radii.xl,\r\n\r\n hiddenOpacity: 0,\r\n\r\n title: {\r\n paddingVertical: tokens.space.msm,\r\n paddingHorizontal: tokens.space.md,\r\n },\r\n\r\n handle: {\r\n containerHeight: 32,\r\n width: \"25%\",\r\n height: 6,\r\n borderRadius: tokens.radii.round,\r\n backgroundColor: tokens.colors.surface.primary.value,\r\n },\r\n };\r\n}\r\n","import { IconButtonTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createIconButtonTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): IconButtonTokens {\r\n const primary = tokens.colors.primary.value;\r\n const primaryContrast = tokens.colors.primary.contrast;\r\n\r\n const secondary = tokens.colors.secondary.value;\r\n const secondaryContrast = tokens.colors.secondary.contrast;\r\n\r\n const neutral = tokens.colors.neutral;\r\n const disabledColor = tokens.colors.text.disabled;\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.md,\r\n\r\n sizes: {\r\n small: {\r\n size: 32,\r\n padding: 6,\r\n },\r\n medium: {\r\n size: 40,\r\n padding: 8,\r\n },\r\n large: {\r\n size: 48,\r\n padding: 10,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n backgroundColor: primary,\r\n borderColor: primary,\r\n color: primaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"5\"],\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: \"transparent\",\r\n borderColor: primary,\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n soft: {\r\n backgroundColor: secondary,\r\n borderColor: secondary,\r\n color: secondaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"3\"],\r\n disabledBorderColor: neutral[\"3\"],\r\n disabledColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n },\r\n };\r\n}\r\n","import { PrimitiveThemeTokens, SelectTokens } from \"../types\";\r\n\r\nexport function createSelectTokens(tokens: PrimitiveThemeTokens): SelectTokens {\r\n return {\r\n option: {\r\n padding: tokens.space.sm,\r\n selectedIconColor: tokens.colors.primary.value,\r\n selectedIconVisibleOpacity: 1,\r\n selectedIconHiddenOpacity: 0,\r\n },\r\n };\r\n}\r\n","import { PrimitiveThemeTokens, SkeletonTokens } from \"../types\";\r\n\r\nexport function createSkeletonTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): SkeletonTokens {\r\n const boneColor = tokens.colors.neutral[\"5\"];\r\n\r\n return {\r\n bone: {\r\n backgroundColor: boneColor,\r\n borderColor: boneColor,\r\n initialOpacity: 1,\r\n animatedOpacity: 0.4,\r\n animationDuration: 1000,\r\n },\r\n\r\n text: {\r\n alignSelf: \"flex-start\",\r\n textTransform: \"uppercase\",\r\n opacity: 0,\r\n },\r\n };\r\n}\r\n","import { PrimitiveThemeTokens, TagTokens } from \"../types\";\r\n\r\nexport function createTagTokens(tokens: PrimitiveThemeTokens): TagTokens {\r\n const neutral = tokens.colors.neutral;\r\n const disabledColor = tokens.colors.text.disabled;\r\n\r\n const createVariants = (value: string, contrast: string) => ({\r\n filled: {\r\n backgroundColor: value,\r\n borderColor: value,\r\n color: contrast,\r\n\r\n disabledBackgroundColor: neutral[\"4\"],\r\n disabledBorderColor: neutral[\"6\"],\r\n disabledColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: \"transparent\",\r\n borderColor: value,\r\n color: value,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: neutral[\"6\"],\r\n disabledColor,\r\n },\r\n\r\n soft: {\r\n backgroundColor: contrast,\r\n borderColor: contrast,\r\n color: value,\r\n\r\n disabledBackgroundColor: neutral[\"3\"],\r\n disabledBorderColor: neutral[\"3\"],\r\n disabledColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: value,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: value,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n });\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.round,\r\n gap: tokens.space.xxs,\r\n iconMarginLeft: tokens.borderSize.md,\r\n\r\n sizes: {\r\n small: {\r\n height: 24,\r\n paddingHorizontal: tokens.space.xs,\r\n minWidth: tokens.space.xl,\r\n fontSize: tokens.fontSize.xs,\r\n },\r\n\r\n medium: {\r\n height: 28,\r\n paddingHorizontal: tokens.space.xs,\r\n minWidth: tokens.space.xxl,\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n\r\n large: {\r\n height: 32,\r\n paddingHorizontal: tokens.space.mxs,\r\n minWidth: tokens.space.xxl,\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n },\r\n\r\n colors: {\r\n primary: createVariants(\r\n tokens.colors.primary.value,\r\n tokens.colors.primary.contrast,\r\n ),\r\n\r\n secondary: createVariants(\r\n tokens.colors.secondary.value,\r\n tokens.colors.secondary.contrast,\r\n ),\r\n\r\n error: createVariants(\r\n tokens.colors.feedback.error.value,\r\n tokens.colors.feedback.error.contrast,\r\n ),\r\n\r\n warning: createVariants(\r\n tokens.colors.feedback.warning.value,\r\n tokens.colors.feedback.warning.contrast,\r\n ),\r\n\r\n success: createVariants(\r\n tokens.colors.feedback.success.value,\r\n tokens.colors.feedback.success.contrast,\r\n ),\r\n\r\n info: createVariants(\r\n tokens.colors.feedback.info.value,\r\n tokens.colors.feedback.info.contrast,\r\n ),\r\n },\r\n };\r\n}\r\n","import { PrimitiveThemeTokens, TimePickerTokens } from \"../types\";\r\n\r\nexport function createTimePickerTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): TimePickerTokens {\r\n const ItemHeight = 50;\r\n const VisibleItems = 5;\r\n const ContainerHeight = ItemHeight * VisibleItems;\r\n const VerticalPadding = ContainerHeight / 2 - ItemHeight / 2;\r\n const ColumnWidth = 70;\r\n\r\n return {\r\n column: {\r\n width: ColumnWidth,\r\n height: ContainerHeight,\r\n gap: tokens.space.xxs,\r\n\r\n listWidth: 30,\r\n itemHeight: ItemHeight,\r\n visibleItems: VisibleItems,\r\n verticalPadding: VerticalPadding,\r\n initialScrollIndexViewOffset: -VerticalPadding,\r\n\r\n fontSize: tokens.fontSize.xl,\r\n selectedColor: tokens.colors.primary.value,\r\n color: tokens.colors.text.primary,\r\n selectedFontWeight: tokens.fontWeight.semiBold,\r\n fontWeight: tokens.fontWeight.regular,\r\n },\r\n\r\n flyout: {\r\n gap: tokens.space.msm,\r\n },\r\n\r\n columns: {\r\n height: ContainerHeight,\r\n gap: tokens.space.xs,\r\n indicatorHeight: ItemHeight,\r\n indicatorWidth: ColumnWidth * 3 + 70,\r\n indicatorTop: VerticalPadding,\r\n indicatorBorderRadius: tokens.radii.round,\r\n indicatorBackgroundColor: tokens.colors.surface.primary.value,\r\n },\r\n };\r\n}\r\n","import {\r\n BorderSize,\r\n ComponentsTokens,\r\n FontFamily,\r\n FontSize,\r\n FontWeight,\r\n FontWeightItalic,\r\n FontWeightNormal,\r\n FontWeightValue,\r\n LineHeight,\r\n NeutralColor,\r\n PrimitiveThemeTokens,\r\n Radii,\r\n Space,\r\n ThemeColors,\r\n} from \"../types\";\r\nimport { createButtonTokens } from \"./create-button-tokens\";\r\nimport {\r\n createControlAddonTokens,\r\n createControlContainerTokens,\r\n createControlErrorTokens,\r\n createControlInputTokens,\r\n createControlLabelTokens,\r\n} from \"./create-control-tokens\";\r\nimport { createDataStateTokens } from \"./create-data-state-tokens\";\r\nimport { createDatetimePickerTokens } from \"./create-datetime-picker\";\r\nimport { createFlyoutTokens } from \"./create-flyout-tokens\";\r\nimport { createIconButtonTokens } from \"./create-icon-button-tokens\";\r\nimport { createSelectTokens } from \"./create-select-tokens\";\r\nimport { createSkeletonTokens } from \"./create-skeleton-tokens\";\r\nimport { createTagTokens } from \"./create-tag-tokens\";\r\nimport { createTimePickerTokens } from \"./create-time-picker-tokens\";\r\n\r\nexport const SpaceTokens: Space = {\r\n none: 0,\r\n xxs: 4,\r\n xs: 8,\r\n mxs: 12,\r\n sm: 16,\r\n msm: 24,\r\n md: 32,\r\n lg: 48,\r\n xl: 64,\r\n xxl: 96,\r\n};\r\n\r\nexport const BorderSizeTokens: BorderSize = {\r\n sm: 1,\r\n md: 2,\r\n lg: 3,\r\n xl: 5,\r\n xxl: 10,\r\n};\r\n\r\nexport const RadiiTokens: Radii = {\r\n sm: 4,\r\n md: 8,\r\n lg: 16,\r\n xl: 32,\r\n xxl: 64,\r\n xxxl: 128,\r\n round: 100000,\r\n};\r\n\r\nexport const FontSizeTokens: FontSize = {\r\n xxs: 8,\r\n xs: 12,\r\n xsm: 14,\r\n sm: 16,\r\n md: 18,\r\n lg: 20,\r\n xl: 24,\r\n xxl: 28,\r\n xxxl: 32,\r\n huge: 36,\r\n massive: 40,\r\n giant: 48,\r\n colossal: 56,\r\n};\r\n\r\nexport const LineHeightTokens: LineHeight = {\r\n xxs: 12,\r\n xs: 16,\r\n xsm: 20,\r\n sm: 24,\r\n md: 26,\r\n lg: 28,\r\n xl: 32,\r\n xxl: 36,\r\n xxxl: 40,\r\n huge: 44,\r\n massive: 48,\r\n giant: 56,\r\n colossal: 64,\r\n};\r\n\r\nexport const FontWeightTokens: FontWeight = {\r\n thin: 100,\r\n extraLight: 200,\r\n light: 300,\r\n regular: 400,\r\n medium: 500,\r\n semiBold: 600,\r\n bold: 700,\r\n extraBold: 800,\r\n black: 900,\r\n};\r\n\r\nexport const FontFamilyWeightsNormalTokens: Record<\r\n FontWeightValue,\r\n FontWeightNormal\r\n> = {\r\n 100: \"Montserrat_100Thin\",\r\n 200: \"Montserrat_200ExtraLight\",\r\n 300: \"Montserrat_300Light\",\r\n 400: \"Montserrat_400Regular\",\r\n 500: \"Montserrat_500Medium\",\r\n 600: \"Montserrat_600SemiBold\",\r\n 700: \"Montserrat_700Bold\",\r\n 800: \"Montserrat_800ExtraBold\",\r\n 900: \"Montserrat_900Black\",\r\n};\r\n\r\nexport const FontFamilyWeightsItalicTokens: Record<\r\n FontWeightValue,\r\n FontWeightItalic\r\n> = {\r\n 100: \"Montserrat_100Thin_Italic\",\r\n 200: \"Montserrat_200ExtraLight_Italic\",\r\n 300: \"Montserrat_300Light_Italic\",\r\n 400: \"Montserrat_400Regular_Italic\",\r\n 500: \"Montserrat_500Medium_Italic\",\r\n 600: \"Montserrat_600SemiBold_Italic\",\r\n 700: \"Montserrat_700Bold_Italic\",\r\n 800: \"Montserrat_800ExtraBold_Italic\",\r\n 900: \"Montserrat_900Black_Italic\",\r\n};\r\n\r\nexport const FontFamilyTokens: FontFamily = {\r\n normal: FontFamilyWeightsNormalTokens,\r\n italic: FontFamilyWeightsItalicTokens,\r\n};\r\n\r\nexport const NeutralColorTokens: NeutralColor = {\r\n \"0\": \"#ffffff\",\r\n \"1\": \"#f8f9fa\",\r\n \"2\": \"#f1f3f5\",\r\n \"3\": \"#e9ecef\",\r\n \"4\": \"#dee2e6\",\r\n \"5\": \"#ced4da\",\r\n \"6\": \"#adb5bd\",\r\n \"7\": \"#868e96\",\r\n \"8\": \"#495057\",\r\n \"9\": \"#343a40\",\r\n \"10\": \"#212529\",\r\n \"11\": \"#16191d\",\r\n \"12\": \"#0d0f12\",\r\n \"13\": \"#000000\",\r\n};\r\n\r\nexport const LightColors: ThemeColors = {\r\n primary: {\r\n value: \"#f55d6b\",\r\n contrast: NeutralColorTokens[\"0\"],\r\n },\r\n\r\n accent: {\r\n value: \"#FA9EA7\",\r\n contrast: NeutralColorTokens[\"0\"],\r\n },\r\n\r\n secondary: {\r\n value: \"#FEE7E9\",\r\n contrast: \"#f55d6b\",\r\n },\r\n\r\n neutral: NeutralColorTokens,\r\n\r\n surface: {\r\n primary: {\r\n value: NeutralColorTokens[\"2\"],\r\n contrast: NeutralColorTokens[\"11\"],\r\n },\r\n secondary: {\r\n value: NeutralColorTokens[\"0\"],\r\n contrast: NeutralColorTokens[\"11\"],\r\n },\r\n elevated: {\r\n value: NeutralColorTokens[\"0\"],\r\n contrast: NeutralColorTokens[\"11\"],\r\n },\r\n inverse: {\r\n value: NeutralColorTokens[\"13\"],\r\n contrast: NeutralColorTokens[\"0\"],\r\n },\r\n },\r\n\r\n text: {\r\n primary: NeutralColorTokens[\"11\"],\r\n secondary: NeutralColorTokens[\"10\"],\r\n tertiary: NeutralColorTokens[\"9\"],\r\n inverse: NeutralColorTokens[\"0\"],\r\n disabled: NeutralColorTokens[\"7\"],\r\n },\r\n\r\n border: {\r\n subtle: {\r\n value: NeutralColorTokens[\"3\"],\r\n contrast: NeutralColorTokens[\"9\"],\r\n },\r\n default: {\r\n value: NeutralColorTokens[\"4\"],\r\n contrast: NeutralColorTokens[\"10\"],\r\n },\r\n strong: {\r\n value: NeutralColorTokens[\"6\"],\r\n contrast: NeutralColorTokens[\"11\"],\r\n },\r\n focus: {\r\n value: \"#f55d6b\",\r\n contrast: NeutralColorTokens[\"0\"],\r\n },\r\n },\r\n\r\n feedback: {\r\n error: {\r\n value: \"#c92a2a\",\r\n contrast: \"#fff5f5\",\r\n },\r\n warning: {\r\n value: \"#e67700\",\r\n contrast: \"#fff4e6\",\r\n },\r\n success: {\r\n value: \"#7a9908\",\r\n contrast: \"#f4fce3\",\r\n },\r\n info: {\r\n value: \"#1864ab\",\r\n contrast: \"#e7f5ff\",\r\n },\r\n },\r\n\r\n overlay: \"rgba(0, 0, 0, 0.45)\",\r\n\r\n white: NeutralColorTokens[\"0\"],\r\n black: NeutralColorTokens[\"13\"],\r\n};\r\n\r\nexport function createComponentsTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ComponentsTokens {\r\n return {\r\n button: createButtonTokens(tokens),\r\n iconButton: createIconButtonTokens(tokens),\r\n tag: createTagTokens(tokens),\r\n controlAddon: createControlAddonTokens(tokens),\r\n controlContainer: createControlContainerTokens(tokens),\r\n controlError: createControlErrorTokens(tokens),\r\n controlInput: createControlInputTokens(tokens),\r\n controlLabel: createControlLabelTokens(tokens),\r\n select: createSelectTokens(tokens),\r\n datetimePicker: createDatetimePickerTokens(tokens),\r\n timePicker: createTimePickerTokens(tokens),\r\n flyout: createFlyoutTokens(tokens),\r\n skeleton: createSkeletonTokens(tokens),\r\n dataState: createDataStateTokens(tokens),\r\n };\r\n}\r\n","import { PrimitiveThemeTokens } from \"../types\";\r\nimport {\r\n BorderSizeTokens,\r\n FontFamilyTokens,\r\n FontSizeTokens,\r\n FontWeightTokens,\r\n LightColors,\r\n LineHeightTokens,\r\n RadiiTokens,\r\n SpaceTokens,\r\n} from \"./tokens.theme\";\r\n\r\nexport const DarkTheme: PrimitiveThemeTokens = {\r\n colors: LightColors,\r\n space: SpaceTokens,\r\n radii: RadiiTokens,\r\n fontFamily: FontFamilyTokens,\r\n borderSize: BorderSizeTokens,\r\n fontSize: FontSizeTokens,\r\n fontWeight: FontWeightTokens,\r\n lineHeight: LineHeightTokens,\r\n};\r\n","import { PrimitiveThemeTokens } from \"../types\";\r\nimport {\r\n BorderSizeTokens,\r\n FontFamilyTokens,\r\n FontSizeTokens,\r\n FontWeightTokens,\r\n LightColors,\r\n LineHeightTokens,\r\n RadiiTokens,\r\n SpaceTokens,\r\n} from \"./tokens.theme\";\r\n\r\nexport const LightTheme: PrimitiveThemeTokens = {\r\n colors: LightColors,\r\n space: SpaceTokens,\r\n radii: RadiiTokens,\r\n fontFamily: FontFamilyTokens,\r\n borderSize: BorderSizeTokens,\r\n fontSize: FontSizeTokens,\r\n fontWeight: FontWeightTokens,\r\n lineHeight: LineHeightTokens,\r\n};\r\n","import { useMemo } from \"react\";\r\n\r\nimport { useThemeContext } from \"../providers\";\r\nimport { ThemeColors } from \"../types\";\r\n\r\nexport function useColors(): ThemeColors {\r\n const context = useThemeContext();\r\n\r\n return useMemo(() => context.colors, [context.colors]);\r\n}\r\n","import { useMemo } from \"react\";\r\n\r\nimport { useThemeContext } from \"../providers\";\r\n\r\nexport function useComponentsTokens() {\r\n const context = useThemeContext();\r\n\r\n return useMemo(() => context.components, [context.components]);\r\n}\r\n","import { useMemo } from \"react\";\r\n\r\nimport { useThemeContext } from \"../providers\";\r\nimport { Radii } from \"../types\";\r\n\r\nexport function useRadii(): Radii {\r\n const context = useThemeContext();\r\n\r\n return useMemo(() => context.radii, [context.radii]);\r\n}\r\n","import { useMemo } from \"react\";\r\n\r\nimport { useThemeContext } from \"../providers\";\r\nimport { Space } from \"../types\";\r\n\r\nexport function useSpace(): Space {\r\n const context = useThemeContext();\r\n\r\n return useMemo(() => context.space, [context.space]);\r\n}\r\n","import { useMemo } from \"react\";\r\n\r\nimport { createStyleKey, extractStyleProps } from \"../utils\";\r\n\r\nexport function useStyleProps<Props extends object>(props: Props) {\r\n const key = useMemo(() => createStyleKey(props), [props]);\r\n\r\n return useMemo(() => extractStyleProps(props), [key]);\r\n}\r\n","import { Platform, ViewStyle } from \"react-native\";\r\n\r\nimport { shadowScale, StylePropsSet } from \"../constants\";\r\nimport {\r\n ShadowLevel,\r\n ShadowPosition,\r\n StylePropKey,\r\n StyleProps,\r\n ThemeColors,\r\n} from \"../types\";\r\n\r\nconst isStylePropKey = (k: string): k is StylePropKey =>\r\n StylePropsSet.has(k as StylePropKey);\r\n\r\nexport const extractStyleProps = <Props extends object>(\r\n props: Props,\r\n): StyleProps => {\r\n const style: StyleProps = {};\r\n\r\n for (const k in props) {\r\n if (isStylePropKey(k) && props[k] !== undefined) {\r\n style[k] = props[k] as any;\r\n }\r\n }\r\n\r\n return style;\r\n};\r\n\r\nexport const createStyleKey = <Props extends object>(props: Props) => {\r\n let key = \"\";\r\n\r\n for (const k in props) {\r\n if (isStylePropKey(k)) {\r\n key += String(props[k as keyof Props]);\r\n }\r\n }\r\n\r\n return key;\r\n};\r\n\r\nexport const getShadowStyle = (\r\n level: ShadowLevel = \"none\",\r\n position: ShadowPosition = \"bottom\",\r\n colors: ThemeColors,\r\n): ViewStyle => {\r\n const token = shadowScale[level];\r\n\r\n if (level === \"none\") return {};\r\n\r\n if (Platform.OS === \"android\") {\r\n return {\r\n elevation: token.elevation,\r\n };\r\n }\r\n\r\n let offsetY = 0;\r\n\r\n if (position === \"bottom\") offsetY = token.radius / 2;\r\n if (position === \"top\") offsetY = -token.radius / 2;\r\n if (position === \"around\") offsetY = 0;\r\n\r\n return {\r\n shadowColor: colors.black,\r\n shadowOpacity: token.opacity,\r\n shadowRadius: token.radius,\r\n shadowOffset: {\r\n width: 0,\r\n height: offsetY,\r\n },\r\n };\r\n};\r\n","import { useThemeContext } from \"../providers\";\r\nimport { AppTheme } from \"../types\";\r\n\r\nexport function useTheme(): AppTheme {\r\n return useThemeContext();\r\n}\r\n","import { useMemo } from \"react\";\r\nimport { StyleSheet } from \"react-native\";\r\n\r\nimport { AppTheme } from \"../types\";\r\nimport { useTheme } from \"./use-theme.hook\";\r\n\r\ntype ThemedStyles<T extends StyleSheet.NamedStyles<T>> = T;\r\n\r\ntype StyledFunctionNoProps<T extends StyleSheet.NamedStyles<T>> = (\r\n theme: AppTheme,\r\n) => ThemedStyles<T>;\r\n\r\ntype StyledFunctionWithProps<\r\n Props extends object,\r\n T extends StyleSheet.NamedStyles<T>,\r\n> = (theme: AppTheme, props: Props) => ThemedStyles<T>;\r\n\r\nexport function useThemedStyles<T extends StyleSheet.NamedStyles<T>>(\r\n styledFunction: StyledFunctionNoProps<T>,\r\n): ThemedStyles<T>;\r\n\r\nexport function useThemedStyles<\r\n Props extends object,\r\n T extends StyleSheet.NamedStyles<T>,\r\n>(\r\n styledFunction: StyledFunctionWithProps<Props, T>,\r\n props: Props,\r\n dependencies: readonly unknown[],\r\n): ThemedStyles<T>;\r\n\r\nexport function useThemedStyles<\r\n Props extends object,\r\n T extends StyleSheet.NamedStyles<T>,\r\n>(\r\n styledFunction: StyledFunctionWithProps<Props, T>,\r\n props: Props,\r\n dependencies: readonly unknown[],\r\n): ThemedStyles<T>;\r\n\r\nexport function useThemedStyles<\r\n Props extends object,\r\n T extends StyleSheet.NamedStyles<T>,\r\n>(\r\n styledFunction: StyledFunctionNoProps<T> | StyledFunctionWithProps<Props, T>,\r\n props?: Props,\r\n dependencies?: readonly unknown[],\r\n): ThemedStyles<T> {\r\n const theme = useTheme();\r\n\r\n const memoDependencies = dependencies ?? (props === undefined ? [] : [props]);\r\n\r\n return useMemo(() => {\r\n if (props === undefined) {\r\n return (styledFunction as StyledFunctionNoProps<T>)(theme);\r\n }\r\n\r\n return (styledFunction as StyledFunctionWithProps<Props, T>)(theme, props);\r\n }, [theme, styledFunction, ...memoDependencies]);\r\n}\r\n"],"mappings":"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","names":["useMemo","ThemeProvider","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from \"./constants\";\r\nexport * from \"./hooks\";\r\nexport * from \"./providers\";\r\nexport * from \"./theme\";\r\nexport * from \"./types\";\r\nexport * from \"./utils\";\r\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { ThemeProvider, useThemeContext } from './theme.provider.mjs';
|
|
2
|
+
import 'react';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import '@impulse-ui-native/core';
|
|
5
|
+
import '../types/theme-provider.types.mjs';
|
|
6
|
+
import '../types/buttons-tokens.types.mjs';
|
|
7
|
+
import '../types/components.types.mjs';
|
|
8
|
+
import '../types/control-tokes.types.mjs';
|
|
9
|
+
import '../types/data-state-tokens.types.mjs';
|
|
10
|
+
import '../types/datetime-picker-tokens.types.mjs';
|
|
11
|
+
import '../types/flyout-tokens.types.mjs';
|
|
12
|
+
import '../types/select-tokens.types.mjs';
|
|
13
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
14
|
+
import '../types/tag-tokens.types.mjs';
|
|
15
|
+
import '../types/time-picker-token.types.mjs';
|
|
16
|
+
import '../types/tokens.types.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/index.ts"],"sourcesContent":["export * from \"./theme.provider\";\r\n"],"mappings":"AAAA,cAAc;","names":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
|
+
import { DeepPartial } from '@impulse-ui-native/core';
|
|
5
|
+
import { ColorScheme, PrimitiveThemeTokens, ComponentsTokens, AppTheme } from '../types/theme-provider.types.mjs';
|
|
6
|
+
import '../types/buttons-tokens.types.mjs';
|
|
7
|
+
import '../types/components.types.mjs';
|
|
8
|
+
import '../types/control-tokes.types.mjs';
|
|
9
|
+
import '../types/data-state-tokens.types.mjs';
|
|
10
|
+
import '../types/datetime-picker-tokens.types.mjs';
|
|
11
|
+
import '../types/flyout-tokens.types.mjs';
|
|
12
|
+
import '../types/select-tokens.types.mjs';
|
|
13
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
14
|
+
import '../types/tag-tokens.types.mjs';
|
|
15
|
+
import '../types/time-picker-token.types.mjs';
|
|
16
|
+
import '../types/tokens.types.mjs';
|
|
17
|
+
|
|
18
|
+
interface ThemeProviderProps {
|
|
19
|
+
scheme?: ColorScheme;
|
|
20
|
+
theme?: DeepPartial<{
|
|
21
|
+
light: PrimitiveThemeTokens;
|
|
22
|
+
dark: PrimitiveThemeTokens;
|
|
23
|
+
}>;
|
|
24
|
+
components?: ((theme: PrimitiveThemeTokens) => DeepPartial<ComponentsTokens>) | DeepPartial<ComponentsTokens>;
|
|
25
|
+
}
|
|
26
|
+
declare const ThemeProvider: react.MemoExoticComponent<(props: PropsWithChildren<ThemeProviderProps>) => react_jsx_runtime.JSX.Element>;
|
|
27
|
+
declare function useThemeContext(): AppTheme;
|
|
28
|
+
|
|
29
|
+
export { ThemeProvider, useThemeContext };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import {
|
|
3
|
+
createContext,
|
|
4
|
+
memo,
|
|
5
|
+
useContext,
|
|
6
|
+
useMemo
|
|
7
|
+
} from "react";
|
|
8
|
+
import { merge } from "@impulse-ui-native/core";
|
|
9
|
+
import { createComponentsTokens, DarkTheme, LightTheme } from "../theme";
|
|
10
|
+
const ThemeContext = createContext(void 0);
|
|
11
|
+
const ThemeProvider = memo(function ThemeProvider2(props) {
|
|
12
|
+
const scheme = props?.scheme ?? "light";
|
|
13
|
+
const context = useMemo(() => {
|
|
14
|
+
const baseTheme = scheme === "light" ? LightTheme : DarkTheme;
|
|
15
|
+
const customBaseTheme = props.theme?.[scheme];
|
|
16
|
+
const theme = merge(baseTheme, customBaseTheme);
|
|
17
|
+
return {
|
|
18
|
+
...theme,
|
|
19
|
+
components: createComponentsTokens(theme)
|
|
20
|
+
};
|
|
21
|
+
}, [scheme, props.theme?.light, props.theme?.dark, props.components]);
|
|
22
|
+
return /* @__PURE__ */ jsx(ThemeContext.Provider, { value: context, children: props.children });
|
|
23
|
+
});
|
|
24
|
+
function useThemeContext() {
|
|
25
|
+
const context = useContext(ThemeContext);
|
|
26
|
+
if (!context) {
|
|
27
|
+
throw new Error("useThemeContext must be used within a ThemeProvider");
|
|
28
|
+
}
|
|
29
|
+
return context;
|
|
30
|
+
}
|
|
31
|
+
export {
|
|
32
|
+
ThemeProvider,
|
|
33
|
+
useThemeContext
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=theme.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/providers/theme.provider.tsx"],"sourcesContent":["import {\r\n createContext,\r\n memo,\r\n PropsWithChildren,\r\n useContext,\r\n useMemo,\r\n} from \"react\";\r\n\r\nimport { DeepPartial, merge } from \"@impulse-ui-native/core\";\r\n\r\nimport { createComponentsTokens, DarkTheme, LightTheme } from \"../theme\";\r\nimport {\r\n AppTheme,\r\n ColorScheme,\r\n ComponentsTokens,\r\n PrimitiveThemeTokens,\r\n} from \"../types\";\r\n\r\nconst ThemeContext = createContext<AppTheme | undefined>(undefined);\r\n\r\ninterface ThemeProviderProps {\r\n scheme?: ColorScheme;\r\n theme?: DeepPartial<{\r\n light: PrimitiveThemeTokens;\r\n dark: PrimitiveThemeTokens;\r\n }>;\r\n components?:\r\n | ((theme: PrimitiveThemeTokens) => DeepPartial<ComponentsTokens>)\r\n | DeepPartial<ComponentsTokens>;\r\n}\r\n\r\nexport const ThemeProvider = memo(function ThemeProvider(\r\n props: PropsWithChildren<ThemeProviderProps>,\r\n) {\r\n const scheme = props?.scheme ?? \"light\";\r\n\r\n const context = useMemo<AppTheme>(() => {\r\n const baseTheme = scheme === \"light\" ? LightTheme : DarkTheme;\r\n const customBaseTheme = props.theme?.[scheme];\r\n const theme = merge(baseTheme, customBaseTheme);\r\n\r\n return {\r\n ...theme,\r\n components: createComponentsTokens(theme),\r\n };\r\n }, [scheme, props.theme?.light, props.theme?.dark, props.components]);\r\n\r\n return (\r\n <ThemeContext.Provider value={context}>\r\n {props.children}\r\n </ThemeContext.Provider>\r\n );\r\n});\r\n\r\nexport function useThemeContext() {\r\n const context = useContext(ThemeContext);\r\n\r\n if (!context) {\r\n throw new Error(\"useThemeContext must be used within a ThemeProvider\");\r\n }\r\n\r\n return context;\r\n}\r\n"],"mappings":"AAgDI;AAhDJ;AAAA,EACE;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEP,SAAsB,aAAa;AAEnC,SAAS,wBAAwB,WAAW,kBAAkB;AAQ9D,MAAM,eAAe,cAAoC,MAAS;AAa3D,MAAM,gBAAgB,KAAK,SAASA,eACzC,OACA;AACA,QAAM,SAAS,OAAO,UAAU;AAEhC,QAAM,UAAU,QAAkB,MAAM;AACtC,UAAM,YAAY,WAAW,UAAU,aAAa;AACpD,UAAM,kBAAkB,MAAM,QAAQ,MAAM;AAC5C,UAAM,QAAQ,MAAM,WAAW,eAAe;AAE9C,WAAO;AAAA,MACL,GAAG;AAAA,MACH,YAAY,uBAAuB,KAAK;AAAA,IAC1C;AAAA,EACF,GAAG,CAAC,QAAQ,MAAM,OAAO,OAAO,MAAM,OAAO,MAAM,MAAM,UAAU,CAAC;AAEpE,SACE,oBAAC,aAAa,UAAb,EAAsB,OAAO,SAC3B,gBAAM,UACT;AAEJ,CAAC;AAEM,SAAS,kBAAkB;AAChC,QAAM,UAAU,WAAW,YAAY;AAEvC,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,qDAAqD;AAAA,EACvE;AAEA,SAAO;AACT;","names":["ThemeProvider"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PrimitiveThemeTokens } from '../types/theme-provider.types.mjs';
|
|
2
|
+
import { ButtonTokens } from '../types/buttons-tokens.types.mjs';
|
|
3
|
+
import '../types/control-tokes.types.mjs';
|
|
4
|
+
import '../types/components.types.mjs';
|
|
5
|
+
import '../types/data-state-tokens.types.mjs';
|
|
6
|
+
import '../types/datetime-picker-tokens.types.mjs';
|
|
7
|
+
import '../types/flyout-tokens.types.mjs';
|
|
8
|
+
import '../types/select-tokens.types.mjs';
|
|
9
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
10
|
+
import '../types/tag-tokens.types.mjs';
|
|
11
|
+
import '../types/time-picker-token.types.mjs';
|
|
12
|
+
import '../types/tokens.types.mjs';
|
|
13
|
+
|
|
14
|
+
declare function createButtonTokens(tokens: PrimitiveThemeTokens): ButtonTokens;
|
|
15
|
+
|
|
16
|
+
export { createButtonTokens };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
function createButtonTokens(tokens) {
|
|
2
|
+
const primary = tokens.colors.primary.value;
|
|
3
|
+
const primaryContrast = tokens.colors.primary.contrast;
|
|
4
|
+
const secondary = tokens.colors.secondary.value;
|
|
5
|
+
const secondaryContrast = tokens.colors.secondary.contrast;
|
|
6
|
+
const neutral = tokens.colors.neutral;
|
|
7
|
+
const disabledColor = tokens.colors.text.disabled;
|
|
8
|
+
return {
|
|
9
|
+
borderWidth: tokens.borderSize.sm,
|
|
10
|
+
borderRadius: tokens.radii.md,
|
|
11
|
+
sizes: {
|
|
12
|
+
small: {
|
|
13
|
+
height: 32,
|
|
14
|
+
paddingVertical: 6,
|
|
15
|
+
paddingHorizontal: 12,
|
|
16
|
+
fontSize: tokens.fontSize.xsm
|
|
17
|
+
},
|
|
18
|
+
medium: {
|
|
19
|
+
height: 40,
|
|
20
|
+
paddingVertical: 8,
|
|
21
|
+
paddingHorizontal: 16,
|
|
22
|
+
fontSize: tokens.fontSize.sm
|
|
23
|
+
},
|
|
24
|
+
large: {
|
|
25
|
+
height: 48,
|
|
26
|
+
paddingVertical: 10,
|
|
27
|
+
paddingHorizontal: 20,
|
|
28
|
+
fontSize: tokens.fontSize.sm
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
variants: {
|
|
32
|
+
filled: {
|
|
33
|
+
backgroundColor: primary,
|
|
34
|
+
borderColor: primary,
|
|
35
|
+
color: primaryContrast,
|
|
36
|
+
disabledBackgroundColor: neutral["5"],
|
|
37
|
+
disabledBorderColor: neutral["5"],
|
|
38
|
+
disabledColor
|
|
39
|
+
},
|
|
40
|
+
outlined: {
|
|
41
|
+
backgroundColor: "transparent",
|
|
42
|
+
borderColor: primary,
|
|
43
|
+
color: primary,
|
|
44
|
+
disabledBackgroundColor: "transparent",
|
|
45
|
+
disabledBorderColor: neutral["5"],
|
|
46
|
+
disabledColor
|
|
47
|
+
},
|
|
48
|
+
soft: {
|
|
49
|
+
backgroundColor: secondary,
|
|
50
|
+
borderColor: secondary,
|
|
51
|
+
color: secondaryContrast,
|
|
52
|
+
disabledBackgroundColor: neutral["3"],
|
|
53
|
+
disabledBorderColor: neutral["3"],
|
|
54
|
+
disabledColor
|
|
55
|
+
},
|
|
56
|
+
ghost: {
|
|
57
|
+
backgroundColor: "transparent",
|
|
58
|
+
borderColor: "transparent",
|
|
59
|
+
color: primary,
|
|
60
|
+
disabledBackgroundColor: "transparent",
|
|
61
|
+
disabledBorderColor: "transparent",
|
|
62
|
+
disabledColor
|
|
63
|
+
},
|
|
64
|
+
plain: {
|
|
65
|
+
backgroundColor: "transparent",
|
|
66
|
+
borderColor: "transparent",
|
|
67
|
+
color: primary,
|
|
68
|
+
disabledBackgroundColor: "transparent",
|
|
69
|
+
disabledBorderColor: "transparent",
|
|
70
|
+
disabledColor
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
export {
|
|
76
|
+
createButtonTokens
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=create-button-tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/theme/create-button-tokens.ts"],"sourcesContent":["import { ButtonTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createButtonTokens(tokens: PrimitiveThemeTokens): ButtonTokens {\r\n const primary = tokens.colors.primary.value;\r\n const primaryContrast = tokens.colors.primary.contrast;\r\n\r\n const secondary = tokens.colors.secondary.value;\r\n const secondaryContrast = tokens.colors.secondary.contrast;\r\n\r\n const neutral = tokens.colors.neutral;\r\n const disabledColor = tokens.colors.text.disabled;\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.md,\r\n\r\n sizes: {\r\n small: {\r\n height: 32,\r\n paddingVertical: 6,\r\n paddingHorizontal: 12,\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n medium: {\r\n height: 40,\r\n paddingVertical: 8,\r\n paddingHorizontal: 16,\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n large: {\r\n height: 48,\r\n paddingVertical: 10,\r\n paddingHorizontal: 20,\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n backgroundColor: primary,\r\n borderColor: primary,\r\n color: primaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"5\"],\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: \"transparent\",\r\n borderColor: primary,\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: neutral[\"5\"],\r\n disabledColor,\r\n },\r\n\r\n soft: {\r\n backgroundColor: secondary,\r\n borderColor: secondary,\r\n color: secondaryContrast,\r\n\r\n disabledBackgroundColor: neutral[\"3\"],\r\n disabledBorderColor: neutral[\"3\"],\r\n disabledColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"transparent\",\r\n color: primary,\r\n\r\n disabledBackgroundColor: \"transparent\",\r\n disabledBorderColor: \"transparent\",\r\n disabledColor,\r\n },\r\n },\r\n };\r\n}\r\n"],"mappings":"AAEO,SAAS,mBAAmB,QAA4C;AAC7E,QAAM,UAAU,OAAO,OAAO,QAAQ;AACtC,QAAM,kBAAkB,OAAO,OAAO,QAAQ;AAE9C,QAAM,YAAY,OAAO,OAAO,UAAU;AAC1C,QAAM,oBAAoB,OAAO,OAAO,UAAU;AAElD,QAAM,UAAU,OAAO,OAAO;AAC9B,QAAM,gBAAgB,OAAO,OAAO,KAAK;AAEzC,SAAO;AAAA,IACL,aAAa,OAAO,WAAW;AAAA,IAC/B,cAAc,OAAO,MAAM;AAAA,IAE3B,OAAO;AAAA,MACL,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,UAAU,OAAO,SAAS;AAAA,MAC5B;AAAA,MACA,QAAQ;AAAA,QACN,QAAQ;AAAA,QACR,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,UAAU,OAAO,SAAS;AAAA,MAC5B;AAAA,MACA,OAAO;AAAA,QACL,QAAQ;AAAA,QACR,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,UAAU,OAAO,SAAS;AAAA,MAC5B;AAAA,IACF;AAAA,IAEA,UAAU;AAAA,MACR,QAAQ;AAAA,QACN,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QAEP,yBAAyB,QAAQ,GAAG;AAAA,QACpC,qBAAqB,QAAQ,GAAG;AAAA,QAChC;AAAA,MACF;AAAA,MAEA,UAAU;AAAA,QACR,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QAEP,yBAAyB;AAAA,QACzB,qBAAqB,QAAQ,GAAG;AAAA,QAChC;AAAA,MACF;AAAA,MAEA,MAAM;AAAA,QACJ,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QAEP,yBAAyB,QAAQ,GAAG;AAAA,QACpC,qBAAqB,QAAQ,GAAG;AAAA,QAChC;AAAA,MACF;AAAA,MAEA,OAAO;AAAA,QACL,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QAEP,yBAAyB;AAAA,QACzB,qBAAqB;AAAA,QACrB;AAAA,MACF;AAAA,MAEA,OAAO;AAAA,QACL,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,OAAO;AAAA,QAEP,yBAAyB;AAAA,QACzB,qBAAqB;AAAA,QACrB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { PrimitiveThemeTokens } from '../types/theme-provider.types.mjs';
|
|
2
|
+
import { ControlAddonTokens, ControlContainerTokens, ControlErrorTokens, ControlInputTokens, ControlLabelTokens } from '../types/control-tokes.types.mjs';
|
|
3
|
+
import '../types/buttons-tokens.types.mjs';
|
|
4
|
+
import '../types/components.types.mjs';
|
|
5
|
+
import '../types/data-state-tokens.types.mjs';
|
|
6
|
+
import '../types/datetime-picker-tokens.types.mjs';
|
|
7
|
+
import '../types/flyout-tokens.types.mjs';
|
|
8
|
+
import '../types/select-tokens.types.mjs';
|
|
9
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
10
|
+
import '../types/tag-tokens.types.mjs';
|
|
11
|
+
import '../types/time-picker-token.types.mjs';
|
|
12
|
+
import '../types/tokens.types.mjs';
|
|
13
|
+
|
|
14
|
+
declare function createControlAddonTokens(tokens: PrimitiveThemeTokens): ControlAddonTokens;
|
|
15
|
+
declare function createControlContainerTokens(tokens: PrimitiveThemeTokens): ControlContainerTokens;
|
|
16
|
+
declare function createControlErrorTokens(tokens: PrimitiveThemeTokens): ControlErrorTokens;
|
|
17
|
+
declare function createControlInputTokens(tokens: PrimitiveThemeTokens): ControlInputTokens;
|
|
18
|
+
declare function createControlLabelTokens(tokens: PrimitiveThemeTokens): ControlLabelTokens;
|
|
19
|
+
|
|
20
|
+
export { createControlAddonTokens, createControlContainerTokens, createControlErrorTokens, createControlInputTokens, createControlLabelTokens };
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
function createControlAddonTokens(tokens) {
|
|
2
|
+
return {
|
|
3
|
+
marginHorizontal: tokens.space.xxs,
|
|
4
|
+
hitSlop: tokens.space.sm,
|
|
5
|
+
iconColor: tokens.colors.text.secondary,
|
|
6
|
+
errorIconColor: tokens.colors.feedback.error.value,
|
|
7
|
+
disabledIconColor: tokens.colors.text.disabled
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
function createControlContainerTokens(tokens) {
|
|
11
|
+
const ErrorColor = tokens.colors.feedback.error.value;
|
|
12
|
+
const TransparentColor = "transparent";
|
|
13
|
+
return {
|
|
14
|
+
borderWidth: tokens.borderSize.sm,
|
|
15
|
+
borderRadius: tokens.radii.sm,
|
|
16
|
+
disabledOpacity: 0.7,
|
|
17
|
+
sizes: {
|
|
18
|
+
small: {
|
|
19
|
+
height: 32,
|
|
20
|
+
paddingHorizontal: tokens.space.xs
|
|
21
|
+
},
|
|
22
|
+
medium: {
|
|
23
|
+
height: 40,
|
|
24
|
+
paddingHorizontal: tokens.space.xs
|
|
25
|
+
},
|
|
26
|
+
large: {
|
|
27
|
+
height: 48,
|
|
28
|
+
paddingHorizontal: tokens.space.xs
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
variants: {
|
|
32
|
+
filled: {
|
|
33
|
+
backgroundColor: tokens.colors.surface.secondary.value,
|
|
34
|
+
borderColor: TransparentColor,
|
|
35
|
+
errorBorderColor: ErrorColor,
|
|
36
|
+
disabledBackgroundColor: tokens.colors.neutral["2"],
|
|
37
|
+
disabledBorderColor: TransparentColor
|
|
38
|
+
},
|
|
39
|
+
outlined: {
|
|
40
|
+
backgroundColor: TransparentColor,
|
|
41
|
+
borderColor: tokens.colors.neutral["5"],
|
|
42
|
+
errorBorderColor: ErrorColor,
|
|
43
|
+
disabledBackgroundColor: TransparentColor,
|
|
44
|
+
disabledBorderColor: tokens.colors.neutral["5"]
|
|
45
|
+
},
|
|
46
|
+
soft: {
|
|
47
|
+
backgroundColor: tokens.colors.accent.value,
|
|
48
|
+
borderColor: TransparentColor,
|
|
49
|
+
errorBorderColor: ErrorColor,
|
|
50
|
+
disabledBackgroundColor: tokens.colors.neutral["2"],
|
|
51
|
+
disabledBorderColor: TransparentColor
|
|
52
|
+
},
|
|
53
|
+
ghost: {
|
|
54
|
+
backgroundColor: TransparentColor,
|
|
55
|
+
borderColor: TransparentColor,
|
|
56
|
+
errorBorderColor: ErrorColor,
|
|
57
|
+
disabledBackgroundColor: TransparentColor,
|
|
58
|
+
disabledBorderColor: TransparentColor
|
|
59
|
+
},
|
|
60
|
+
plain: {
|
|
61
|
+
backgroundColor: TransparentColor,
|
|
62
|
+
borderColor: TransparentColor,
|
|
63
|
+
errorBorderColor: ErrorColor,
|
|
64
|
+
disabledBackgroundColor: TransparentColor,
|
|
65
|
+
disabledBorderColor: TransparentColor
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function createControlErrorTokens(tokens) {
|
|
71
|
+
return {
|
|
72
|
+
marginTop: tokens.space.xxs,
|
|
73
|
+
color: tokens.colors.feedback.error.value,
|
|
74
|
+
fontSize: tokens.fontSize.xs
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function createControlInputTokens(tokens) {
|
|
78
|
+
return {
|
|
79
|
+
flex: 1,
|
|
80
|
+
fontFamily: tokens.fontFamily.normal[400],
|
|
81
|
+
paddingHorizontal: tokens.space.xxs,
|
|
82
|
+
sizes: {
|
|
83
|
+
small: {
|
|
84
|
+
fontSize: tokens.fontSize.xs
|
|
85
|
+
},
|
|
86
|
+
medium: {
|
|
87
|
+
fontSize: tokens.fontSize.xsm
|
|
88
|
+
},
|
|
89
|
+
large: {
|
|
90
|
+
fontSize: tokens.fontSize.sm
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
variants: {
|
|
94
|
+
filled: {
|
|
95
|
+
color: tokens.colors.text.primary,
|
|
96
|
+
placeholderColor: tokens.colors.text.disabled,
|
|
97
|
+
disabledColor: tokens.colors.text.disabled,
|
|
98
|
+
disabledPlaceholderColor: tokens.colors.text.disabled,
|
|
99
|
+
errorColor: tokens.colors.text.primary,
|
|
100
|
+
errorPlaceholderColor: tokens.colors.feedback.error.value
|
|
101
|
+
},
|
|
102
|
+
outlined: {
|
|
103
|
+
color: tokens.colors.text.primary,
|
|
104
|
+
placeholderColor: tokens.colors.text.disabled,
|
|
105
|
+
disabledColor: tokens.colors.text.disabled,
|
|
106
|
+
disabledPlaceholderColor: tokens.colors.text.disabled,
|
|
107
|
+
errorColor: tokens.colors.text.primary,
|
|
108
|
+
errorPlaceholderColor: tokens.colors.feedback.error.value
|
|
109
|
+
},
|
|
110
|
+
soft: {
|
|
111
|
+
color: tokens.colors.accent.contrast,
|
|
112
|
+
placeholderColor: tokens.colors.accent.contrast,
|
|
113
|
+
disabledColor: tokens.colors.text.disabled,
|
|
114
|
+
disabledPlaceholderColor: tokens.colors.text.disabled,
|
|
115
|
+
errorColor: tokens.colors.accent.contrast,
|
|
116
|
+
errorPlaceholderColor: tokens.colors.feedback.error.value
|
|
117
|
+
},
|
|
118
|
+
ghost: {
|
|
119
|
+
color: tokens.colors.text.primary,
|
|
120
|
+
placeholderColor: tokens.colors.text.disabled,
|
|
121
|
+
disabledColor: tokens.colors.text.disabled,
|
|
122
|
+
disabledPlaceholderColor: tokens.colors.text.disabled,
|
|
123
|
+
errorColor: tokens.colors.text.primary,
|
|
124
|
+
errorPlaceholderColor: tokens.colors.feedback.error.value
|
|
125
|
+
},
|
|
126
|
+
plain: {
|
|
127
|
+
color: tokens.colors.text.primary,
|
|
128
|
+
placeholderColor: tokens.colors.text.disabled,
|
|
129
|
+
disabledColor: tokens.colors.text.disabled,
|
|
130
|
+
disabledPlaceholderColor: tokens.colors.text.disabled,
|
|
131
|
+
errorColor: tokens.colors.text.primary,
|
|
132
|
+
errorPlaceholderColor: tokens.colors.feedback.error.value
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function createControlLabelTokens(tokens) {
|
|
138
|
+
return {
|
|
139
|
+
marginBottom: tokens.space.xxs,
|
|
140
|
+
fontSize: tokens.fontSize.xsm,
|
|
141
|
+
color: tokens.colors.text.secondary,
|
|
142
|
+
disabledColor: tokens.colors.text.disabled,
|
|
143
|
+
errorColor: tokens.colors.feedback.error.value
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
export {
|
|
147
|
+
createControlAddonTokens,
|
|
148
|
+
createControlContainerTokens,
|
|
149
|
+
createControlErrorTokens,
|
|
150
|
+
createControlInputTokens,
|
|
151
|
+
createControlLabelTokens
|
|
152
|
+
};
|
|
153
|
+
//# sourceMappingURL=create-control-tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/theme/create-control-tokens.ts"],"sourcesContent":["import {\r\n ControlAddonTokens,\r\n ControlContainerTokens,\r\n ControlErrorTokens,\r\n ControlInputTokens,\r\n ControlLabelTokens,\r\n PrimitiveThemeTokens,\r\n} from \"../types\";\r\n\r\nexport function createControlAddonTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlAddonTokens {\r\n return {\r\n marginHorizontal: tokens.space.xxs,\r\n hitSlop: tokens.space.sm,\r\n\r\n iconColor: tokens.colors.text.secondary,\r\n errorIconColor: tokens.colors.feedback.error.value,\r\n disabledIconColor: tokens.colors.text.disabled,\r\n };\r\n}\r\n\r\nexport function createControlContainerTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlContainerTokens {\r\n const ErrorColor = tokens.colors.feedback.error.value;\r\n const TransparentColor = \"transparent\";\r\n\r\n return {\r\n borderWidth: tokens.borderSize.sm,\r\n borderRadius: tokens.radii.sm,\r\n disabledOpacity: 0.7,\r\n\r\n sizes: {\r\n small: {\r\n height: 32,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n medium: {\r\n height: 40,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n large: {\r\n height: 48,\r\n paddingHorizontal: tokens.space.xs,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n backgroundColor: tokens.colors.surface.secondary.value,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: tokens.colors.neutral[\"2\"],\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n outlined: {\r\n backgroundColor: TransparentColor,\r\n borderColor: tokens.colors.neutral[\"5\"],\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: tokens.colors.neutral[\"5\"],\r\n },\r\n\r\n soft: {\r\n backgroundColor: tokens.colors.accent.value,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: tokens.colors.neutral[\"2\"],\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n ghost: {\r\n backgroundColor: TransparentColor,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: TransparentColor,\r\n },\r\n\r\n plain: {\r\n backgroundColor: TransparentColor,\r\n borderColor: TransparentColor,\r\n\r\n errorBorderColor: ErrorColor,\r\n\r\n disabledBackgroundColor: TransparentColor,\r\n disabledBorderColor: TransparentColor,\r\n },\r\n },\r\n };\r\n}\r\n\r\nexport function createControlErrorTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlErrorTokens {\r\n return {\r\n marginTop: tokens.space.xxs,\r\n color: tokens.colors.feedback.error.value,\r\n fontSize: tokens.fontSize.xs,\r\n };\r\n}\r\n\r\nexport function createControlInputTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlInputTokens {\r\n return {\r\n flex: 1,\r\n fontFamily: tokens.fontFamily.normal[400],\r\n paddingHorizontal: tokens.space.xxs,\r\n\r\n sizes: {\r\n small: {\r\n fontSize: tokens.fontSize.xs,\r\n },\r\n medium: {\r\n fontSize: tokens.fontSize.xsm,\r\n },\r\n large: {\r\n fontSize: tokens.fontSize.sm,\r\n },\r\n },\r\n\r\n variants: {\r\n filled: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n outlined: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n soft: {\r\n color: tokens.colors.accent.contrast,\r\n placeholderColor: tokens.colors.accent.contrast,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.accent.contrast,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n ghost: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n\r\n plain: {\r\n color: tokens.colors.text.primary,\r\n placeholderColor: tokens.colors.text.disabled,\r\n\r\n disabledColor: tokens.colors.text.disabled,\r\n disabledPlaceholderColor: tokens.colors.text.disabled,\r\n\r\n errorColor: tokens.colors.text.primary,\r\n errorPlaceholderColor: tokens.colors.feedback.error.value,\r\n },\r\n },\r\n };\r\n}\r\n\r\nexport function createControlLabelTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): ControlLabelTokens {\r\n return {\r\n marginBottom: tokens.space.xxs,\r\n fontSize: tokens.fontSize.xsm,\r\n\r\n color: tokens.colors.text.secondary,\r\n disabledColor: tokens.colors.text.disabled,\r\n errorColor: tokens.colors.feedback.error.value,\r\n };\r\n}\r\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PrimitiveThemeTokens } from '../types/theme-provider.types.mjs';
|
|
2
|
+
import { DataStateTokens } from '../types/data-state-tokens.types.mjs';
|
|
3
|
+
import '../types/buttons-tokens.types.mjs';
|
|
4
|
+
import '../types/components.types.mjs';
|
|
5
|
+
import '../types/control-tokes.types.mjs';
|
|
6
|
+
import '../types/datetime-picker-tokens.types.mjs';
|
|
7
|
+
import '../types/flyout-tokens.types.mjs';
|
|
8
|
+
import '../types/select-tokens.types.mjs';
|
|
9
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
10
|
+
import '../types/tag-tokens.types.mjs';
|
|
11
|
+
import '../types/time-picker-token.types.mjs';
|
|
12
|
+
import '../types/tokens.types.mjs';
|
|
13
|
+
|
|
14
|
+
declare function createDataStateTokens(tokens: PrimitiveThemeTokens): DataStateTokens;
|
|
15
|
+
|
|
16
|
+
export { createDataStateTokens };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
function createDataStateTokens(tokens) {
|
|
2
|
+
return {
|
|
3
|
+
details: {
|
|
4
|
+
gap: 10,
|
|
5
|
+
iconSize: 150,
|
|
6
|
+
iconColor: tokens.colors.primary.value
|
|
7
|
+
},
|
|
8
|
+
actionsFooter: {
|
|
9
|
+
gap: 10
|
|
10
|
+
},
|
|
11
|
+
content: {
|
|
12
|
+
zIndex: 1
|
|
13
|
+
},
|
|
14
|
+
loading: {
|
|
15
|
+
transitionDuration: 250,
|
|
16
|
+
loaderZIndex: 1
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export {
|
|
21
|
+
createDataStateTokens
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=create-data-state-tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/theme/create-data-state-tokens.ts"],"sourcesContent":["import { DataStateTokens, PrimitiveThemeTokens } from \"../types\";\r\n\r\nexport function createDataStateTokens(\r\n tokens: PrimitiveThemeTokens,\r\n): DataStateTokens {\r\n return {\r\n details: {\r\n gap: 10,\r\n iconSize: 150,\r\n iconColor: tokens.colors.primary.value,\r\n },\r\n\r\n actionsFooter: {\r\n gap: 10,\r\n },\r\n\r\n content: {\r\n zIndex: 1,\r\n },\r\n\r\n loading: {\r\n transitionDuration: 250,\r\n loaderZIndex: 1,\r\n },\r\n };\r\n}\r\n"],"mappings":"AAEO,SAAS,sBACd,QACiB;AACjB,SAAO;AAAA,IACL,SAAS;AAAA,MACP,KAAK;AAAA,MACL,UAAU;AAAA,MACV,WAAW,OAAO,OAAO,QAAQ;AAAA,IACnC;AAAA,IAEA,eAAe;AAAA,MACb,KAAK;AAAA,IACP;AAAA,IAEA,SAAS;AAAA,MACP,QAAQ;AAAA,IACV;AAAA,IAEA,SAAS;AAAA,MACP,oBAAoB;AAAA,MACpB,cAAc;AAAA,IAChB;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PrimitiveThemeTokens } from '../types/theme-provider.types.mjs';
|
|
2
|
+
import { DatetimePickerTokens } from '../types/datetime-picker-tokens.types.mjs';
|
|
3
|
+
import '../types/buttons-tokens.types.mjs';
|
|
4
|
+
import '../types/components.types.mjs';
|
|
5
|
+
import '../types/control-tokes.types.mjs';
|
|
6
|
+
import '../types/data-state-tokens.types.mjs';
|
|
7
|
+
import '../types/flyout-tokens.types.mjs';
|
|
8
|
+
import '../types/select-tokens.types.mjs';
|
|
9
|
+
import '../types/skeleton-tokens.types.mjs';
|
|
10
|
+
import '../types/tag-tokens.types.mjs';
|
|
11
|
+
import '../types/time-picker-token.types.mjs';
|
|
12
|
+
import '../types/tokens.types.mjs';
|
|
13
|
+
|
|
14
|
+
declare function createDatetimePickerTokens(tokens: PrimitiveThemeTokens): DatetimePickerTokens;
|
|
15
|
+
|
|
16
|
+
export { createDatetimePickerTokens };
|