@ohos-ports/dxos-react-ui-theme 0.6.7-beta.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 +8 -0
- package/README.md +25 -0
- package/README.yml +1 -0
- package/dist/lib/browser/index.mjs +2300 -0
- package/dist/lib/browser/index.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -0
- package/dist/plugin/node/chunk-G3RQ5GOB.cjs +712 -0
- package/dist/plugin/node/chunk-G3RQ5GOB.cjs.map +7 -0
- package/dist/plugin/node/esbuild-plugin.cjs +89 -0
- package/dist/plugin/node/esbuild-plugin.cjs.map +7 -0
- package/dist/plugin/node/meta.json +1 -0
- package/dist/plugin/node/plugin.cjs +77 -0
- package/dist/plugin/node/plugin.cjs.map +7 -0
- package/dist/plugin/node/theme.css +418 -0
- package/dist/plugin/node/theme.css.map +7 -0
- package/dist/types/src/config/colors.d.ts +109 -0
- package/dist/types/src/config/colors.d.ts.map +1 -0
- package/dist/types/src/config/index.d.ts +3 -0
- package/dist/types/src/config/index.d.ts.map +1 -0
- package/dist/types/src/config/resolveContent.d.ts +2 -0
- package/dist/types/src/config/resolveContent.d.ts.map +1 -0
- package/dist/types/src/config/tailwind.d.ts +9 -0
- package/dist/types/src/config/tailwind.d.ts.map +1 -0
- package/dist/types/src/esbuild-plugin.d.ts +9 -0
- package/dist/types/src/esbuild-plugin.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +4 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/plugin.d.ts +13 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/styles/components/anchored-overflow.d.ts +6 -0
- package/dist/types/src/styles/components/anchored-overflow.d.ts.map +1 -0
- package/dist/types/src/styles/components/avatar.d.ts +21 -0
- package/dist/types/src/styles/components/avatar.d.ts.map +1 -0
- package/dist/types/src/styles/components/breadcrumb.d.ts +9 -0
- package/dist/types/src/styles/components/breadcrumb.d.ts.map +1 -0
- package/dist/types/src/styles/components/button.d.ts +19 -0
- package/dist/types/src/styles/components/button.d.ts.map +1 -0
- package/dist/types/src/styles/components/dialog.d.ts +12 -0
- package/dist/types/src/styles/components/dialog.d.ts.map +1 -0
- package/dist/types/src/styles/components/index.d.ts +22 -0
- package/dist/types/src/styles/components/index.d.ts.map +1 -0
- package/dist/types/src/styles/components/input.d.ts +103 -0
- package/dist/types/src/styles/components/input.d.ts.map +1 -0
- package/dist/types/src/styles/components/link.d.ts +7 -0
- package/dist/types/src/styles/components/link.d.ts.map +1 -0
- package/dist/types/src/styles/components/list.d.ts +14 -0
- package/dist/types/src/styles/components/list.d.ts.map +1 -0
- package/dist/types/src/styles/components/main.d.ts +25 -0
- package/dist/types/src/styles/components/main.d.ts.map +1 -0
- package/dist/types/src/styles/components/menu.d.ts +12 -0
- package/dist/types/src/styles/components/menu.d.ts.map +1 -0
- package/dist/types/src/styles/components/message.d.ts +10 -0
- package/dist/types/src/styles/components/message.d.ts.map +1 -0
- package/dist/types/src/styles/components/popover.d.ts +10 -0
- package/dist/types/src/styles/components/popover.d.ts.map +1 -0
- package/dist/types/src/styles/components/scroll-area.d.ts +9 -0
- package/dist/types/src/styles/components/scroll-area.d.ts.map +1 -0
- package/dist/types/src/styles/components/select.d.ts +13 -0
- package/dist/types/src/styles/components/select.d.ts.map +1 -0
- package/dist/types/src/styles/components/separator.d.ts +7 -0
- package/dist/types/src/styles/components/separator.d.ts.map +1 -0
- package/dist/types/src/styles/components/status.d.ts +8 -0
- package/dist/types/src/styles/components/status.d.ts.map +1 -0
- package/dist/types/src/styles/components/tag.d.ts +7 -0
- package/dist/types/src/styles/components/tag.d.ts.map +1 -0
- package/dist/types/src/styles/components/toast.d.ts +12 -0
- package/dist/types/src/styles/components/toast.d.ts.map +1 -0
- package/dist/types/src/styles/components/toolbar.d.ts +5 -0
- package/dist/types/src/styles/components/toolbar.d.ts.map +1 -0
- package/dist/types/src/styles/components/tooltip.d.ts +6 -0
- package/dist/types/src/styles/components/tooltip.d.ts.map +1 -0
- package/dist/types/src/styles/components/treegrid.d.ts +10 -0
- package/dist/types/src/styles/components/treegrid.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/arrow.d.ts +6 -0
- package/dist/types/src/styles/fragments/arrow.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/density.d.ts +13 -0
- package/dist/types/src/styles/fragments/density.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/dimensions.d.ts +2 -0
- package/dist/types/src/styles/fragments/dimensions.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/disabled.d.ts +3 -0
- package/dist/types/src/styles/fragments/disabled.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/elevation.d.ts +11 -0
- package/dist/types/src/styles/fragments/elevation.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/focus.d.ts +6 -0
- package/dist/types/src/styles/fragments/focus.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/group.d.ts +5 -0
- package/dist/types/src/styles/fragments/group.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/hover.d.ts +14 -0
- package/dist/types/src/styles/fragments/hover.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/hue.d.ts +16 -0
- package/dist/types/src/styles/fragments/hue.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/index.d.ts +19 -0
- package/dist/types/src/styles/fragments/index.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/layout.d.ts +3 -0
- package/dist/types/src/styles/fragments/layout.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/motion.d.ts +3 -0
- package/dist/types/src/styles/fragments/motion.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/ornament.d.ts +4 -0
- package/dist/types/src/styles/fragments/ornament.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/selected.d.ts +12 -0
- package/dist/types/src/styles/fragments/selected.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/shimmer.d.ts +3 -0
- package/dist/types/src/styles/fragments/shimmer.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/size.d.ts +9 -0
- package/dist/types/src/styles/fragments/size.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/surface.d.ts +9 -0
- package/dist/types/src/styles/fragments/surface.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/text.d.ts +6 -0
- package/dist/types/src/styles/fragments/text.d.ts.map +1 -0
- package/dist/types/src/styles/fragments/valence.d.ts +13 -0
- package/dist/types/src/styles/fragments/valence.d.ts.map +1 -0
- package/dist/types/src/styles/index.d.ts +4 -0
- package/dist/types/src/styles/index.d.ts.map +1 -0
- package/dist/types/src/styles/theme.d.ts +5 -0
- package/dist/types/src/styles/theme.d.ts.map +1 -0
- package/dist/types/src/tailwind.d.ts +1 -0
- package/dist/types/src/tailwind.d.ts.map +1 -0
- package/dist/types/src/util/index.d.ts +2 -0
- package/dist/types/src/util/index.d.ts.map +1 -0
- package/dist/types/src/util/mx.d.ts +2 -0
- package/dist/types/src/util/mx.d.ts.map +1 -0
- package/dist/types/src/util/semanticColors.d.ts +10 -0
- package/dist/types/src/util/semanticColors.d.ts.map +1 -0
- package/dist/types/src/util/withLogical.d.ts +158 -0
- package/dist/types/src/util/withLogical.d.ts.map +1 -0
- package/package.json +45 -0
- package/plugin.d.ts +7 -0
- package/plugin.js +10 -0
- package/src/config/colors.ts +293 -0
- package/src/config/index.ts +6 -0
- package/src/config/resolveContent.ts +50 -0
- package/src/config/tailwind.ts +200 -0
- package/src/esbuild-plugin.ts +60 -0
- package/src/index.ts +7 -0
- package/src/plugin.ts +63 -0
- package/src/styles/components/anchored-overflow.ts +20 -0
- package/src/styles/components/avatar.ts +96 -0
- package/src/styles/components/breadcrumb.ts +29 -0
- package/src/styles/components/button.ts +47 -0
- package/src/styles/components/dialog.ts +46 -0
- package/src/styles/components/index.ts +25 -0
- package/src/styles/components/input.ts +172 -0
- package/src/styles/components/link.ts +27 -0
- package/src/styles/components/list.ts +46 -0
- package/src/styles/components/main.ts +81 -0
- package/src/styles/components/menu.ts +52 -0
- package/src/styles/components/message.ts +27 -0
- package/src/styles/components/popover.ts +32 -0
- package/src/styles/components/scroll-area.ts +42 -0
- package/src/styles/components/select.ts +55 -0
- package/src/styles/components/separator.ts +19 -0
- package/src/styles/components/status.ts +27 -0
- package/src/styles/components/tag.ts +49 -0
- package/src/styles/components/toast.ts +53 -0
- package/src/styles/components/toolbar.ts +17 -0
- package/src/styles/components/tooltip.ts +27 -0
- package/src/styles/components/treegrid.ts +37 -0
- package/src/styles/fragments/arrow.ts +10 -0
- package/src/styles/fragments/density.ts +17 -0
- package/src/styles/fragments/dimensions.ts +5 -0
- package/src/styles/fragments/disabled.ts +6 -0
- package/src/styles/fragments/elevation.ts +14 -0
- package/src/styles/fragments/focus.ts +18 -0
- package/src/styles/fragments/group.ts +12 -0
- package/src/styles/fragments/hover.ts +22 -0
- package/src/styles/fragments/hue.ts +151 -0
- package/src/styles/fragments/index.ts +22 -0
- package/src/styles/fragments/layout.ts +7 -0
- package/src/styles/fragments/motion.ts +8 -0
- package/src/styles/fragments/ornament.ts +7 -0
- package/src/styles/fragments/selected.ts +39 -0
- package/src/styles/fragments/shimmer.ts +9 -0
- package/src/styles/fragments/size.ts +117 -0
- package/src/styles/fragments/surface.ts +29 -0
- package/src/styles/fragments/text.ts +11 -0
- package/src/styles/fragments/valence.ts +50 -0
- package/src/styles/index.ts +7 -0
- package/src/styles/layers/anchored-overflow.css +9 -0
- package/src/styles/layers/attention.css +50 -0
- package/src/styles/layers/button.css +73 -0
- package/src/styles/layers/can-scroll.css +26 -0
- package/src/styles/layers/checkbox.css +25 -0
- package/src/styles/layers/focus-ring.css +26 -0
- package/src/styles/layers/index.css +10 -0
- package/src/styles/layers/positioning.css +20 -0
- package/src/styles/layers/surfaces.css +39 -0
- package/src/styles/layers/tldraw.css +87 -0
- package/src/styles/layers/typography.css +152 -0
- package/src/styles/theme.ts +69 -0
- package/src/tailwind.ts +5 -0
- package/src/theme.css +52 -0
- package/src/typings.d.ts +7 -0
- package/src/util/index.ts +5 -0
- package/src/util/mx.ts +40 -0
- package/src/util/semanticColors.ts +57 -0
- package/src/util/withLogical.ts +110 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/config/colors.ts", "../../../src/config/tailwind.ts", "../../../src/util/semanticColors.ts", "../../../src/styles/fragments/arrow.ts", "../../../src/styles/fragments/density.ts", "../../../src/styles/fragments/dimensions.ts", "../../../src/styles/fragments/disabled.ts", "../../../src/styles/fragments/elevation.ts", "../../../src/styles/fragments/focus.ts", "../../../src/styles/fragments/group.ts", "../../../src/styles/fragments/hover.ts", "../../../src/styles/fragments/hue.ts", "../../../src/styles/fragments/layout.ts", "../../../src/styles/fragments/motion.ts", "../../../src/styles/fragments/ornament.ts", "../../../src/styles/fragments/selected.ts", "../../../src/styles/fragments/shimmer.ts", "../../../src/styles/fragments/surface.ts", "../../../src/util/mx.ts", "../../../src/util/withLogical.ts", "../../../src/styles/fragments/size.ts", "../../../src/styles/fragments/text.ts", "../../../src/styles/fragments/valence.ts", "../../../src/styles/components/anchored-overflow.ts", "../../../src/styles/components/avatar.ts", "../../../src/styles/components/breadcrumb.ts", "../../../src/styles/components/button.ts", "../../../src/styles/components/dialog.ts", "../../../src/styles/components/menu.ts", "../../../src/styles/components/input.ts", "../../../src/styles/components/link.ts", "../../../src/styles/components/list.ts", "../../../src/styles/components/main.ts", "../../../src/styles/components/message.ts", "../../../src/styles/components/popover.ts", "../../../src/styles/components/scroll-area.ts", "../../../src/styles/components/select.ts", "../../../src/styles/components/separator.ts", "../../../src/styles/components/status.ts", "../../../src/styles/components/tag.ts", "../../../src/styles/components/toast.ts", "../../../src/styles/components/toolbar.ts", "../../../src/styles/components/tooltip.ts", "../../../src/styles/components/treegrid.ts", "../../../src/styles/theme.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport {\n curvePathFromPalette,\n paletteShadesFromCurve,\n hex_to_LCH as hexToLch,\n Lab_to_hex as labToHex,\n} from '@ch-ui/colors';\n\nexport type PaletteConfig = {\n keyColor: string;\n darkCp: number;\n lightCp: number;\n hueTorsion: number;\n};\n\nconst shadeNumbers: number[] = /* [...Array(19)].map((_, i) => 50 + i * 50); */ [\n 50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950,\n];\n\nconst broadShadeNumbers: number[] = [\n 12, 25, 37, 50, 75, 100, 125, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 825, 850, 875,\n 900, 925, 950, 975,\n];\n\nconst dtor = Math.PI / 180;\n\nexport type HuePalette =\n | 'red'\n | 'orange'\n | 'amber'\n | 'yellow'\n | 'lime'\n | 'green'\n | 'emerald'\n | 'teal'\n | 'cyan'\n | 'sky'\n | 'blue'\n | 'indigo'\n | 'violet'\n | 'purple'\n | 'fuchsia'\n | 'pink'\n | 'rose';\n\nexport type ConfigPalette = HuePalette | 'primary' | 'neutral';\n\nexport const paletteConfigs: Record<ConfigPalette, PaletteConfig> = {\n red: {\n keyColor: '#ee003b',\n darkCp: 1,\n lightCp: 0.13,\n hueTorsion: 5.5 * dtor,\n },\n orange: {\n keyColor: '#fa6b32',\n darkCp: 0.725,\n lightCp: 1,\n hueTorsion: 13 * dtor,\n },\n amber: {\n keyColor: '#f08c00',\n darkCp: 1,\n lightCp: 1,\n hueTorsion: 24 * dtor,\n },\n yellow: {\n keyColor: '#ffd900',\n darkCp: 1,\n lightCp: 1,\n hueTorsion: 32 * dtor,\n },\n lime: {\n keyColor: '#99c400',\n darkCp: 1,\n lightCp: 1,\n hueTorsion: -3.5 * dtor,\n },\n green: {\n keyColor: '#30a908',\n darkCp: 0.35,\n lightCp: 0.665,\n hueTorsion: -10.5 * dtor,\n },\n emerald: {\n keyColor: '#15e066',\n darkCp: 1,\n lightCp: 0.735,\n hueTorsion: -7 * dtor,\n },\n teal: {\n keyColor: '#00a270',\n darkCp: 1,\n lightCp: 0.755,\n hueTorsion: -12 * dtor,\n },\n cyan: {\n keyColor: '#048992',\n darkCp: 1,\n lightCp: 0.855,\n hueTorsion: -15 * dtor,\n },\n sky: {\n keyColor: '#007bc2',\n darkCp: 1,\n lightCp: 0.64,\n hueTorsion: 0,\n },\n blue: {\n keyColor: '#0058cb',\n darkCp: 1,\n lightCp: 0.495,\n hueTorsion: -7 * dtor,\n },\n indigo: {\n keyColor: '#1b45c5',\n darkCp: 0.495,\n lightCp: 0.55,\n hueTorsion: 0,\n },\n violet: {\n keyColor: '#080886',\n darkCp: 0.195,\n lightCp: 0.635,\n hueTorsion: -5 * dtor,\n },\n purple: {\n keyColor: '#2c0073',\n darkCp: 0,\n lightCp: 0.63,\n hueTorsion: 0,\n },\n fuchsia: {\n keyColor: '#6d0085',\n darkCp: 1,\n lightCp: 0.695,\n hueTorsion: 0,\n },\n pink: {\n keyColor: '#a5006d',\n darkCp: 1,\n lightCp: 0.775,\n hueTorsion: 0,\n },\n rose: {\n keyColor: '#d00054',\n darkCp: 1,\n lightCp: 1,\n hueTorsion: 0,\n },\n neutral: {\n keyColor: '#707076',\n darkCp: 0.8,\n lightCp: 0.88,\n hueTorsion: 0,\n },\n primary: {\n keyColor: '#1662d9',\n darkCp: 0.86,\n lightCp: 1,\n hueTorsion: -30 * dtor,\n },\n};\n\nexport const physicalColors = Object.keys(paletteConfigs).reduce(\n (acc: Record<string, Record<string, string>>, palette) => {\n const isBroad = palette === 'neutral' || palette === 'primary';\n const paletteConfig = paletteConfigs[palette as ConfigPalette];\n const curve = curvePathFromPalette({\n ...paletteConfig,\n keyColor: hexToLch(paletteConfig.keyColor),\n });\n const defaultShades = paletteShadesFromCurve(curve, 21, [0, 100 * (22 / 21)], 1, 24).reverse();\n const renderCssValue = (shadeNumber: number) => {\n if (shadeNumber > 999) {\n return '#000000';\n } else if (shadeNumber < 1) {\n return '#ffffff';\n } else if (shadeNumber % 50 === 0) {\n return labToHex(defaultShades[shadeNumber / 50]);\n } else {\n const k2 = (shadeNumber % 50) / 50;\n const k1 = 1 - k2;\n const [l1, a1, b1] = defaultShades[Math.floor(shadeNumber / 50)];\n const [l2, a2, b2] = defaultShades[Math.ceil(shadeNumber / 50)];\n return labToHex([l1 * k1 + l2 * k2, a1 * k1 + a2 * k2, b1 * k1 + b2 * k2]);\n }\n };\n acc[palette] = (isBroad ? broadShadeNumbers : shadeNumbers).reduce((acc: Record<string, string>, shadeNumber) => {\n acc[shadeNumber] = renderCssValue(shadeNumber);\n return acc;\n }, {});\n\n return acc;\n },\n {},\n);\n\nexport const semanticColors = {\n scrim: {\n light: `${physicalColors.neutral['75']}A6`,\n dark: `${physicalColors.neutral['900']}A6`,\n },\n attention: {\n light: '#ffffff',\n dark: physicalColors.neutral['900'],\n },\n deck: {\n light: physicalColors.neutral['75'],\n dark: physicalColors.neutral['875'],\n },\n base: {\n light: physicalColors.neutral['25'],\n dark: physicalColors.neutral['850'],\n fg: { light: '#000000', dark: '#ffffff' },\n },\n fgHover: {\n light: physicalColors.neutral['900'],\n dark: physicalColors.neutral['100'],\n },\n description: {\n light: physicalColors.neutral['500'],\n dark: physicalColors.neutral['400'],\n },\n subdued: {\n light: physicalColors.neutral['700'],\n dark: physicalColors.neutral['300'],\n },\n error: {\n light: physicalColors.red['700'],\n dark: physicalColors.red['300'],\n },\n baseGlass: {\n light: `${physicalColors.neutral['12']}e0`,\n dark: `${physicalColors.neutral['850']}e0`,\n },\n input: {\n light: physicalColors.neutral['50'],\n dark: physicalColors.neutral['825'],\n },\n modal: {\n light: '#ffffff',\n dark: `${physicalColors.neutral['750']}`,\n },\n modalSelected: {\n light: physicalColors.neutral['50'],\n dark: physicalColors.neutral['825'],\n },\n hover: {\n light: physicalColors.neutral['37'],\n dark: physicalColors.neutral['800'],\n },\n accent: {\n light: physicalColors.primary['550'],\n dark: physicalColors.primary['550'],\n fg: { light: physicalColors.primary['550'], dark: physicalColors.primary['400'] },\n },\n accentHover: {\n light: physicalColors.primary['600'],\n dark: physicalColors.primary['500'],\n },\n accentFocusIndicator: {\n light: physicalColors.primary['350'],\n dark: physicalColors.primary['450'],\n },\n unAccent: {\n light: physicalColors.neutral['500'],\n dark: physicalColors.neutral['400'],\n },\n unAccentHover: {\n light: physicalColors.neutral['400'],\n dark: physicalColors.neutral['500'],\n },\n separator: {\n light: physicalColors.neutral['50'],\n dark: physicalColors.neutral['700'],\n },\n inverse: {\n light: '#ffffff',\n dark: '#ffffff',\n },\n transparent: {\n light: 'transparent',\n dark: 'transparent',\n },\n unavailable: {\n light: physicalColors.neutral['100'],\n dark: physicalColors.neutral['600'],\n },\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport tailwindcssForms from '@tailwindcss/forms';\nimport merge from 'lodash.merge';\nimport tailwindScrollbar from 'tailwind-scrollbar';\nimport tailwindColors from 'tailwindcss/colors.js';\nimport defaultConfig from 'tailwindcss/stubs/config.full.js';\nimport { type Config, type ThemeConfig } from 'tailwindcss/types/config';\nimport tailwindcssLogical from 'tailwindcss-logical';\nimport tailwindcssRadix from 'tailwindcss-radix';\n\nimport { physicalColors, semanticColors } from './colors';\nimport { semanticColors as semanticColorsPlugin } from '../util/semanticColors';\n\nexport type TailwindConfig = Config;\nexport type TailwindThemeConfig = ThemeConfig;\n\nexport const tailwindConfig = ({\n env = 'production',\n content = [],\n extensions = [],\n}: {\n env?: string;\n content?: string[];\n extensions?: Partial<TailwindThemeConfig>[];\n}): TailwindConfig => ({\n darkMode: 'class',\n theme: {\n // Configure fonts in theme.css and package.json.\n fontFamily: {\n body: ['Inter Variable', ...defaultConfig.theme.fontFamily.sans],\n mono: ['JetBrains Mono Variable', ...defaultConfig.theme.fontFamily.mono],\n },\n extend: merge(\n {\n screens: {\n 'pointer-fine': { raw: '(pointer: fine)' },\n 'hover-hover': { raw: '(hover: hover)' },\n },\n colors: {\n ...physicalColors,\n slate: tailwindColors.slate,\n gray: tailwindColors.gray,\n zinc: tailwindColors.zinc,\n stone: tailwindColors.stone,\n success: physicalColors.emerald,\n warning: physicalColors.amber,\n error: physicalColors.rose,\n info: physicalColors.cyan,\n transparent: 'transparent',\n current: 'currentColor',\n white: '#ffffff',\n black: '#000000',\n },\n semanticColors,\n fontSize: {\n // Base size 16px\n // Scale 1.125\n xs: ['0.790rem', { lineHeight: '1rem' }],\n sm: ['0.889rem', { lineHeight: '1.25rem' }],\n base: ['1rem', { lineHeight: '1.5rem' }],\n lg: ['1.125rem', { lineHeight: '1.75rem' }],\n xl: ['1.266rem', { lineHeight: '1.75rem' }],\n '2xl': ['1.424rem', { lineHeight: '2rem' }],\n '3xl': ['1.602rem', { lineHeight: '2.25rem' }],\n '4xl': ['1.802rem', { lineHeight: '2.5rem' }],\n '5xl': ['2.027rem', { lineHeight: '2.5rem' }],\n '6xl': ['2.281rem', { lineHeight: '2.5rem' }],\n '7xl': ['2.566rem', { lineHeight: '2.75rem' }],\n '8xl': ['2.887rem', { lineHeight: '3rem' }],\n '9xl': ['3.247rem', { lineHeight: '3.25rem' }],\n },\n outlineWidth: {\n 3: '3px',\n },\n boxShadow: {\n slider: '0 0 0 5px rgba(0, 0, 0, 0.3)',\n },\n transitionProperty: {\n 'max-height': 'max-height',\n },\n keyframes: {\n // Popper chrome\n slideDownAndFade: {\n from: { opacity: 0, transform: 'translateY(-2px)' },\n to: { opacity: 1, transform: 'translateY(0)' },\n },\n slideLeftAndFade: {\n from: { opacity: 0, transform: 'translateX(2px)' },\n to: { opacity: 1, transform: 'translateX(0)' },\n },\n slideUpAndFade: {\n from: { opacity: 0, transform: 'translateY(2px)' },\n to: { opacity: 1, transform: 'translateY(0)' },\n },\n slideRightAndFade: {\n from: { opacity: 0, transform: 'translateX(-2px)' },\n to: { opacity: 1, transform: 'translateX(0)' },\n },\n\n // Toast\n 'toast-hide': {\n '0%': { opacity: '1' },\n '100%': { opacity: '0' },\n },\n 'toast-slide-in-right': {\n '0%': { transform: 'translateX(calc(100% + 1rem))' },\n '100%': { transform: 'translateX(0)' },\n },\n 'toast-slide-in-bottom': {\n '0%': { transform: 'translateY(calc(100% + 1rem))' },\n '100%': { transform: 'translateY(0)' },\n },\n 'toast-swipe-out': {\n '0%': {\n transform: 'translateX(var(--radix-toast-swipe-end-x))',\n },\n '100%': {\n transform: 'translateX(calc(100% + 1rem))',\n },\n },\n\n // Shimmer\n 'shimmer-loop': {\n '100%': {\n transform: 'translateX(100%)',\n },\n },\n\n 'halo-pulse': {\n '0%': {\n opacity: 0.3,\n },\n '5%': {\n opacity: 1,\n },\n '100%': {\n opacity: 0.3,\n },\n },\n\n 'progress-indeterminate': {\n '0%': {\n left: 0,\n width: '0%',\n },\n '25%': {\n left: '25%',\n width: '50%',\n },\n '75%': {\n left: '50%',\n width: '100%',\n },\n '100%': {\n left: '100%',\n width: '0%',\n },\n },\n },\n animation: {\n // Popper chrome\n slideDownAndFade: 'slideDownAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',\n slideLeftAndFade: 'slideLeftAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',\n slideUpAndFade: 'slideUpAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',\n slideRightAndFade: 'slideRightAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',\n\n // Toast\n 'toast-hide': 'toast-hide 100ms ease-in forwards',\n 'toast-slide-in-right': 'toast-slide-in-right 150ms cubic-bezier(0.16, 1, 0.3, 1)',\n 'toast-slide-in-bottom': 'toast-slide-in-bottom 150ms cubic-bezier(0.16, 1, 0.3, 1)',\n 'toast-swipe-out': 'toast-swipe-out 100ms ease-out forwards',\n\n spin: 'spin 1.5s linear infinite',\n 'spin-slow': 'spin 3s linear infinite',\n\n shimmer: 'shimmer-loop 2s infinite',\n 'halo-pulse': 'halo-pulse 2s ease-out infinite',\n 'progress-indeterminate': 'progress-indeterminate 2s ease-out infinite',\n },\n },\n ...extensions,\n ),\n },\n plugins: [\n semanticColorsPlugin,\n tailwindcssLogical,\n tailwindcssForms,\n tailwindcssRadix(),\n // https://adoxography.github.io/tailwind-scrollbar/utilities\n tailwindScrollbar,\n ],\n ...(env === 'development' && { mode: 'jit' }),\n content,\n future: {\n hoverOnlyWhenSupported: true,\n },\n});\n", "//\n// Copyright 2024 DXOS.org\n//\n\n// Based upon https://github.com/synw/tailwindcss-semantic-colors/blob/main/index.js retrieved 22 Jan 2024\n\nimport plugin from 'tailwindcss/plugin.js';\nimport { type CSSRuleObject } from 'tailwindcss/types/config';\n\nexport type SemanticColorValue = {\n light: string;\n dark: string;\n fg?: SemanticColorValue;\n};\n\n// TODO(burdon): Move out of util (should not to be exported as lib).\nexport const semanticColors = plugin(({ addUtilities, theme, e }) => {\n const values: Record<string, SemanticColorValue> = theme('semanticColors');\n const semanticColorUtilities = Object.entries(values).map(([key, value]) => {\n return {\n // TODO(thure): Refactor all of these tokens to simply prefix the properties they apply with `s-` as with `s-accent`.\n [`.fg-${e(`${key}`)}`]: {\n color: `${value.fg?.light ?? value.light}`,\n },\n [`.dark .fg-${e(`${key}`)}`]: {\n color: `${value.fg?.dark ?? value.dark}`,\n },\n [`.s-accent-${e(`${key}`)}`]: {\n accentColor: `${value.fg?.light ?? value.light}`,\n },\n [`.dark .s-accent-${e(`${key}`)}`]: {\n accentColor: `${value.fg?.dark ?? value.dark}`,\n },\n [`.surface-${e(`${key}`)}`]: {\n backgroundColor: `${value.light}`,\n '--sticky-bg': `${value.light}`,\n },\n [`.dark .surface-${e(`${key}`)}`]: {\n backgroundColor: `${value.dark}`,\n '--sticky-bg': `${value.dark}`,\n },\n [`.separator-${e(`${key}`)}`]: {\n borderColor: `${value.fg?.light ?? value.light}`,\n },\n [`.dark .separator-${e(`${key}`)}`]: {\n borderColor: `${value.fg?.dark ?? value.dark}`,\n },\n [`.s-outline-${e(`${key}`)}`]: {\n outlineColor: `${value.fg?.light ?? value.light}`,\n },\n [`.dark .s-outline-${e(`${key}`)}`]: {\n outlineColor: `${value.fg?.dark ?? value.dark}`,\n },\n } as CSSRuleObject;\n });\n addUtilities(semanticColorUtilities);\n});\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const arrow = 'fill-[--surface-bg] dark:fill-[--surface-bg]';\n\n/**\n * @deprecated With the implementation of the surface-bg variable, this is now obsolete.\n */\nexport const groupArrow = 'fill-[--surface-bg] dark:fill-[--surface-bg]';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Density } from '@dxos/react-ui-types';\n\nexport const coarseBlockSize = 'min-bs-[2.5rem]';\nexport const coarseTextPadding = 'pli-3';\nexport const coarseButtonPadding = 'pli-4';\nexport const coarseDimensions = `${coarseBlockSize} ${coarseTextPadding}`;\nexport const coarseButtonDimensions = `${coarseBlockSize} ${coarseButtonPadding}`;\nexport const fineBlockSize = 'min-bs-[2.5rem] pointer-fine:min-bs-[2rem]';\nexport const fineTextPadding = 'pli-2';\nexport const fineButtonPadding = 'pli-2.5';\nexport const fineDimensions = `${fineBlockSize} ${fineTextPadding}`;\nexport const fineButtonDimensions = `${fineBlockSize} ${fineButtonPadding}`;\nexport const densityBlockSize = (density: Density = 'coarse') => (density === 'fine' ? fineBlockSize : coarseBlockSize);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const textBlockWidth = 'mli-auto max-is-[60rem]';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nexport const staticDisabled = 'opacity-40 cursor-not-allowed shadow-none';\nexport const dataDisabled = 'data-[disabled]:opacity-40 data-[disabled]:cursor-not-allowed';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFragment, type Elevation } from '@dxos/react-ui-types';\n\n/**\n * @deprecated\n */\nexport const contentElevation: ComponentFragment<{ elevation?: Elevation }> = (_) => ['shadow-none'];\n\nexport const surfaceElevation: ComponentFragment<{ elevation?: Elevation }> = ({ elevation }) => [\n elevation === 'group' ? 'shadow' : elevation === 'chrome' ? 'shadow-lg' : 'shadow-none',\n];\n", "//\n// Copyright 2022 DXOS.org\n//\n\nexport const focusRing =\n 'focus:outline-none focus-visible:z-[1] focus-visible:hover:outline-none dark:focus-visible:hover:outline-none focus-visible:ring-2 focus-visible:ring-offset-0 focus-visible:ring-primary-350 focus-visible:ring-offset-white dark:focus-visible:ring-primary-450 dark:focus-visible:ring-offset-black';\n\n// TODO(burdon): Requires container to have m-1.\nexport const dropRing =\n 'ring-1 ring-offset-0 ring-primary-350 ring-offset-white dark:ring-primary-450 dark:ring-offset-black';\n\nexport const dropRingInner =\n 'before:z-10 before:absolute before:inset-0 before:ring-1 before:ring-inset before:ring-primary-350 before:dark:ring-primary-450';\n\nexport const subduedFocus = 'focus:outline-none focus-visible:outline-none focus:ring-0 ring-0 focus:border-0 border-0';\n\nexport const staticFocusRing =\n 'ring-2 ring-offset-0 ring-primary-350 ring-offset-white dark:ring-primary-450 dark:ring-offset-black';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFragment, type Elevation } from '@dxos/react-ui-types';\n\nimport { surfaceElevation } from './elevation';\n\nexport const group: ComponentFragment<{ elevation?: Elevation }> = (props) => [\n props.elevation === 'base' ? 'bg-transparent border separator-separator' : 'surface-modal',\n surfaceElevation(props),\n];\n", "//\n// Copyright 2022 DXOS.org\n//\n\n/**\n * @deprecated\n */\nexport const hoverColors = 'transition-colors duration-100 linear hover:surface-hover';\n\nexport const ghostHover = 'hover:surface-hover';\nexport const subtleHover = 'hover:bg-neutral-100/20 dark:hover:bg-neutral-800/20';\n\nexport const hoverableControls =\n '[--controls-opacity:1] hover-hover:[--controls-opacity:0] hover-hover:hover:[--controls-opacity:1]';\n\nexport const hoverableFocusedKeyboardControls = 'focus-visible:[--controls-opacity:1]';\nexport const hoverableFocusedWithinControls = 'focus-within:[--controls-opacity:1]';\nexport const hoverableFocusedControls = 'focus:[--controls-opacity:1]';\nexport const staticHoverableControls = 'hover-hover:[--controls-opacity:1]';\nexport const hoverableOpenControlItem = 'hover-hover:aria-[expanded=true]:[--controls-opacity:1]';\n\nexport const hoverableControlItem = 'opacity-[--controls-opacity]';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type { Theme } from '@dxos/react-ui-types';\n\nimport { type HuePalette, physicalColors } from '../../config';\n\nexport type HueToken = {\n text: string;\n textHover: string;\n fill: string;\n cursorLightValue: string;\n cursorDarkValue: string;\n // highlightLightValue: string;\n // highlightDarkValue: string;\n};\n\nconst hueTokenValueShades = {\n cursorLightValue: 400,\n cursorDarkValue: 300,\n // highlightLightValue: 50,\n // highlightDarkValue: 900,\n};\n\nexport const hueTokenThemes: Record<HuePalette, Pick<HueToken, 'text' | 'textHover' | 'fill'>> = {\n red: {\n text: 'text-red-550 dark:text-red-300',\n textHover: 'hover:text-red-450 focus-visible:text-red-450 dark:hover:text-red-200 dark:focus-visible:text-red-200',\n fill: 'fill-red-500/60',\n },\n orange: {\n text: 'text-orange-550 dark:text-orange-300',\n textHover:\n 'hover:text-orange-450 focus-visible:text-orange-450 dark:hover:text-orange-200 dark:focus-visible:text-orange-200',\n fill: 'fill-orange-500/60',\n },\n amber: {\n text: 'text-amber-550 dark:text-amber-300',\n textHover:\n 'hover:text-amber-450 focus-visible:text-amber-450 dark:hover:text-amber-200 dark:focus-visible:text-amber-200',\n fill: 'fill-amber-500/60',\n },\n yellow: {\n text: 'text-yellow-550 dark:text-yellow-300',\n textHover:\n 'hover:text-yellow-450 focus-visible:text-yellow-450 dark:hover:text-yellow-200 dark:focus-visible:text-yellow-200',\n fill: 'fill-yellow-500/60',\n },\n lime: {\n text: 'text-lime-550 dark:text-lime-300',\n textHover:\n 'hover:text-lime-450 focus-visible:text-lime-450 dark:hover:text-lime-200 dark:focus-visible:text-lime-200',\n fill: 'fill-lime-500/60',\n },\n green: {\n text: 'text-green-550 dark:text-green-300',\n textHover:\n 'hover:text-green-450 focus-visible:text-green-450 dark:hover:text-green-200 dark:focus-visible:text-green-200',\n fill: 'fill-green-500/60',\n },\n emerald: {\n text: 'text-emerald-550 dark:text-emerald-300',\n textHover:\n 'hover:text-emerald-450 focus-visible:text-emerald-450 dark:hover:text-emerald-200 dark:focus-visible:text-emerald-200',\n fill: 'fill-emerald-500/60',\n },\n teal: {\n text: 'text-teal-550 dark:text-teal-300',\n textHover:\n 'hover:text-teal-450 focus-visible:text-teal-450 dark:hover:text-teal-200 dark:focus-visible:text-teal-200',\n fill: 'fill-teal-500/60',\n },\n cyan: {\n text: 'text-cyan-550 dark:text-cyan-300',\n textHover:\n 'hover:text-cyan-450 focus-visible:text-cyan-450 dark:hover:text-cyan-200 dark:focus-visible:text-cyan-200',\n fill: 'fill-cyan-500/60',\n },\n sky: {\n text: 'text-sky-550 dark:text-sky-300',\n textHover: 'hover:text-sky-450 focus-visible:text-sky-450 dark:hover:text-sky-200 dark:focus-visible:text-sky-200',\n fill: 'fill-sky-500/60',\n },\n blue: {\n text: 'text-blue-550 dark:text-blue-300',\n textHover:\n 'hover:text-blue-450 focus-visible:text-blue-450 dark:hover:text-blue-200 dark:focus-visible:text-blue-200',\n fill: 'fill-blue-500/60',\n },\n indigo: {\n text: 'text-indigo-550 dark:text-indigo-300',\n textHover:\n 'hover:text-indigo-450 focus-visible:text-indigo-450 dark:hover:text-indigo-200 dark:focus-visible:text-indigo-200',\n fill: 'fill-indigo-500/60',\n },\n violet: {\n text: 'text-violet-550 dark:text-violet-300',\n textHover:\n 'hover:text-violet-450 focus-visible:text-violet-450 dark:hover:text-violet-200 dark:focus-visible:text-violet-200',\n fill: 'fill-violet-500/60',\n },\n purple: {\n text: 'text-purple-550 dark:text-purple-300',\n textHover:\n 'hover:text-purple-450 focus-visible:text-purple-450 dark:hover:text-purple-200 dark:focus-visible:text-purple-200',\n fill: 'fill-purple-500/60',\n },\n fuchsia: {\n text: 'text-fuchsia-550 dark:text-fuchsia-300',\n textHover:\n 'hover:text-fuchsia-450 focus-visible:text-fuchsia-450 dark:hover:text-fuchsia-200 dark:focus-visible:text-fuchsia-200',\n fill: 'fill-fuchsia-500/60',\n },\n pink: {\n text: 'text-pink-550 dark:text-pink-300',\n textHover:\n 'hover:text-pink-450 focus-visible:text-pink-450 dark:hover:text-pink-200 dark:focus-visible:text-pink-200',\n fill: 'fill-pink-500/60',\n },\n rose: {\n text: 'text-rose-550 dark:text-rose-300',\n textHover:\n 'hover:text-rose-450 focus-visible:text-rose-450 dark:hover:text-rose-200 dark:focus-visible:text-rose-200',\n fill: 'fill-rose-500/60',\n },\n};\n\nexport const hueTokens: Record<HuePalette, HueToken> = Object.keys(hueTokenThemes).reduce(\n (acc: Record<string, HueToken>, huePalette) => {\n acc[huePalette] = {\n ...hueTokenThemes[huePalette as HuePalette],\n cursorDarkValue: `${physicalColors[huePalette][hueTokenValueShades.cursorDarkValue]}88`,\n cursorLightValue: physicalColors[huePalette][hueTokenValueShades.cursorLightValue],\n // highlightDarkValue: physicalColors[huePalette][hueTokenValueShades.highlightDarkValue],\n // highlightLightValue: physicalColors[huePalette][hueTokenValueShades.highlightLightValue],\n };\n return acc;\n },\n {},\n);\n\nexport type HueStyleProps = {\n hue: HuePalette;\n};\n\nexport const hueTheme: Theme<Record<string, any>> = {\n text: ({ hue }) => hueTokenThemes[hue as HuePalette].text,\n textHover: ({ hue }) => hueTokenThemes[hue as HuePalette].textHover,\n fill: ({ hue }) => hueTokenThemes[hue as HuePalette].fill,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const bounceLayout = 'fixed inset-0 z-0 overflow-auto overscroll-auto';\n\nexport const fixedInsetFlexLayout = 'flex flex-col fixed inset-0 overflow-hidden overscroll-none';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nexport const popperMotion =\n 'will-change-[opacity,transform] data-[side=top]:animate-slideDownAndFade data-[side=right]:animate-slideLeftAndFade data-[side=bottom]:animate-slideUpAndFade data-[side=left]:animate-slideRightAndFade';\n\nexport const dialogMotion = 'will-change-[opacity,transform] animate-slideUpAndFade';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nexport const separatorBorderColor = 'separator-separator';\nexport const inlineSeparator = 'self-stretch border-ie mli-1';\nexport const blockSeparator = 'self-stretch border-be mlb-1';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFragment } from '@dxos/react-ui-types';\n\nimport { ghostHover } from './hover';\n\nexport const ghostSelectedCurrent =\n ghostHover +\n ' aria-[current]:surface-input hover:aria-[current]:surface-hover' +\n ' aria-selected:bg-primary-100 dark:aria-selected:bg-primary-850 hover:aria-selected:bg-primary-150 hover:dark:aria-selected:bg-primary-800' +\n ' aria-[current]:aria-selected:bg-primary-200 dark:aria-[current]:aria-selected:bg-primary-750 hover:aria-[current]:aria-selected:bg-primary-200 hover:dark:aria-[current]:aria-selected:bg-primary-750';\n\nexport const ghostHighlighted =\n 'data-[highlighted]:bg-primary-100 dark:data-[highlighted]:bg-primary-850 hover:data-[highlighted]:bg-primary-150 hover:dark:data-[highlighted]:bg-primary-800';\n\nexport const ghostSelectedTrackingInterFromNormal = 'tracking-[0.0092em]';\n\nexport const ghostSelected =\n 'aria-selected:surface-base aria-selected:fg-accent aria-selected:font-semibold aria-selected:tracking-normal transition-[color,font-variation-settings,letter-spacing]';\n\nexport type SelectedStyleProps = {\n current?: boolean;\n selected?: boolean;\n};\n\nexport const staticGhostSelectedCurrent: ComponentFragment<SelectedStyleProps> = ({ current, selected }) => [\n current && selected\n ? 'bg-primary-200 dark:bg-primary-750 hover:bg-primary-200 hover:dark:bg-primary-750'\n : current\n ? 'surface-input hover:surface-hover'\n : selected\n ? 'bg-primary-100 dark:bg-primary-850 hover:bg-primary-150 hover:dark:bg-primary-800'\n : ghostHover,\n];\n\nexport const staticGhostSelected: ComponentFragment<Pick<SelectedStyleProps, 'selected'>> = ({ selected }) =>\n selected ? ['bg-primary-200 dark:bg-primary-750'] : [];\n", "//\n// Copyright 2022 DXOS.org\n//\n\nexport const shimmer =\n 'relative before:absolute before:inset-0 before:-translate-x-full before:animate-shimmer before:bg-gradient-to-r before:from-transparent before:via-neutral-100/10 before:to-transparent isolate overflow-hidden';\n\nexport const strongShimmer =\n 'relative before:absolute before:inset-0 before:-translate-x-full before:animate-shimmer before:bg-gradient-to-r before:from-transparent before:via-primary-100/80 before:to-transparent isolate overflow-hidden';\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// NOTE: Please don’t make changes to these fragments without testing *all* the places where they’re used.\n\n// If your scope of concern is narrower than exactly *the entire design system*, please define and apply your own\n// fragment, either to the specific component or in an override to `ThemeProvider`’s `tx` value.\n\n// Main background.\n// NOTE: This should align with theme's root --surface-bg.\nexport const baseSurface = 'base-surface';\n\n// Sidebars, main heading (“topbar”), and nothing else.\nexport const fixedSurface = 'base-surface md:fixed-surface backdrop-blur-md dark:backdrop-blur-lg';\nexport const fixedBorder = 'separator-separator';\n\n// Generic grouping style.\nexport const groupSurface = 'base-surface';\nexport const groupBorder = 'separator-separator';\n\n// Tooltips, popovers, menus, dialogs, etc.\nexport const modalSurface = 'modal-surface';\n\n// Elements that actively have the user’s “attention”; prefer to select with CSS-native selectors like focus-within,\n// but may be applied by app state. ⚠️ Do not apply statically.\nexport const attentionSurface = 'attention-surface';\n\nexport const accentSurface = 'surface-accent fg-inverse';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { extendTailwindMerge, validators } from 'tailwind-merge';\n\nimport { withLogical, type WithLogicalClassGroups } from './withLogical';\nimport { semanticColors } from '../config';\n\nconst semanticColorClasses = Object.keys(semanticColors);\n\ntype AdditionalClassGroups = 'foreground' | 'surface' | 'separator' | WithLogicalClassGroups;\n\nexport const mx = extendTailwindMerge<AdditionalClassGroups>(\n {\n extend: {\n classGroups: {\n 'font-family': ['font-body', 'font-mono'],\n 'font-weight': [\n // App weights\n 'font-thin',\n 'font-extralight',\n 'font-light',\n 'font-normal',\n 'font-medium',\n 'font-semibold',\n 'font-bold',\n 'font-extrabold',\n 'font-black',\n // Arbitrary numbers\n validators.isArbitraryNumber,\n ],\n foreground: semanticColorClasses.map((value) => `fg-${value}`),\n surface: semanticColorClasses.map((value) => `surface-${value}`),\n separator: semanticColorClasses.map((value) => `separator-${value}`),\n },\n },\n },\n withLogical,\n);\n", "//\n// Copyright 2022 DXOS.org\n//\n\n// This tailwind-merge plugin is based upon https://github.com/vltansky/tailwind-merge-logical-plugin\n\nimport { type Config, mergeConfigs, validators } from 'tailwind-merge';\n\nconst getLength = () => [validators.isLength, validators.isArbitraryLength] as const;\nconst getLengthWithAuto = () => ['auto', validators.isLength, validators.isArbitraryLength] as const;\nconst getLengthWithEmpty = () => ['', validators.isLength, validators.isArbitraryLength] as const;\nconst getAny = () => [validators.isAny] as const;\nconst getRounded = () => ['none', '', validators.isTshirtSize, 'full', validators.isArbitraryLength] as const;\n\nconst classGroupsConfig = {\n float: [{ float: ['start', 'end'] }],\n clear: [{ clear: ['start', 'end'] }],\n resize: [{ resize: ['block ', 'inline'] }],\n 'text-alignment': [{ text: ['start', 'end'] }],\n 'logical.overscroll-b': [{ 'overscroll-b': ['auto ', 'contain', 'auto'] }],\n 'logical.overscroll-i': [{ 'overscroll-b': ['auto ', 'contain', 'auto'] }],\n 'logical.bs': [{ bs: getLength() }],\n 'logical.min-bs': [{ 'min-bs': getAny() }],\n 'logical.max-bs': [{ 'max-bs': getAny() }],\n 'logical.is': [{ is: getLength() }],\n 'logical.min-is': [{ 'min-is': getAny() }],\n 'logical.max-is': [{ 'max-is': getAny() }],\n 'logical.mlb': [{ mlb: getLength() }],\n 'logical.mli': [{ mli: getLength() }],\n 'logical.mbs': [{ mbs: getLength() }],\n 'logical.mbe': [{ mbe: getLength() }],\n 'logical.mis': [{ mis: getLength() }],\n 'logical.mie': [{ mie: getLength() }],\n 'logical.plb': [{ plb: getLength() }],\n 'logical.pli': [{ pli: getLength() }],\n 'logical.pbs': [{ pbs: getLength() }],\n 'logical.pbe': [{ pbe: getLength() }],\n 'logical.pis': [{ pis: getLength() }],\n 'logical.pie': [{ pie: getLength() }],\n 'logical.space-b': [{ 'space-b': getLength() }],\n 'logical.space-i': [{ 'space-i': getLength() }],\n 'logical.inset-block': [{ 'inset-block': getLengthWithAuto() }],\n 'logical.inset-inline': [{ 'inset-inline': getLengthWithAuto() }],\n 'logical.block-start': [{ 'block-start': getLengthWithAuto() }],\n 'logical.block-end': [{ 'block-end': getLengthWithAuto() }],\n 'logical.inline-start': [{ 'inline-start': getLengthWithAuto() }],\n 'logical.inline-end': [{ 'inline-end': getLengthWithAuto() }],\n 'logical.border-bs': [{ 'border-bs': getLengthWithEmpty() }],\n 'logical.border-be': [{ 'border-be': getLengthWithEmpty() }],\n 'logical.border-is': [{ 'border-is': getLengthWithEmpty() }],\n 'logical.border-ie': [{ 'border-ie': getLengthWithEmpty() }],\n 'logical.border-color-bs': [{ 'border-bs': getAny() }],\n 'logical.border-color-be': [{ 'border-be': getAny() }],\n 'logical.border-color-is': [{ 'border-is': getAny() }],\n 'logical.border-color-ie': [{ 'border-ie': getAny() }],\n 'logical.rounded-bs': [{ 'rounded-bs': getRounded() }],\n 'logical.rounded-be': [{ 'rounded-be': getRounded() }],\n 'logical.rounded-is': [{ 'rounded-is': getRounded() }],\n 'logical.rounded-ie': [{ 'rounded-ie': getRounded() }],\n 'logical.rounded-ss': [{ 'rounded-ss': getRounded() }],\n 'logical.rounded-se': [{ 'rounded-se': getRounded() }],\n 'logical.rounded-es': [{ 'rounded-es': getRounded() }],\n 'logical.rounded-ee': [{ 'rounded-ee': getRounded() }],\n 'logical.divide-b': [{ 'divide-b': getLengthWithEmpty() }],\n 'logical.divide-i': [{ 'divide-i': getLengthWithEmpty() }],\n};\n\nexport type WithLogicalClassGroups = keyof typeof classGroupsConfig;\n\ntype WithLogicalConfig = Config<WithLogicalClassGroups, string>;\n\nexport const withLogical = (prevConfig: WithLogicalConfig): WithLogicalConfig => {\n return mergeConfigs(prevConfig, {\n extend: {\n classGroups: classGroupsConfig,\n conflictingClassGroups: {\n 'inset-block': ['logical.block-start', 'logical.block-end'],\n 'inset-inline': ['logical.inline-start', 'logical.inline-end'],\n p: ['logical.plb', 'logical.pli', 'logical.pbs', 'logical.pbe', 'logical.pis', 'logical.pie'],\n pli: ['logical.pis', 'logical.pie'],\n plb: ['logical.pbs', 'logical.pbe'],\n m: ['logical.mlb', 'logical.mli', 'logical.mbs', 'logical.mbe', 'logical.mis', 'logical.mie'],\n mli: ['logical.mis', 'logical.mie'],\n mlb: ['logical.mbs', 'logical.mbe'],\n overscroll: ['overscroll-i', 'overscroll-b'],\n rounded: [\n 'logical.rounded-bs',\n 'logical.rounded-be',\n 'logical.rounded-is',\n 'logical.rounded-ie',\n 'logical.rounded-ss',\n 'logical.rounded-se',\n 'logical.rounded-es',\n 'logical.rounded-ee',\n ],\n 'logical.rounded-bs': ['logical.rounded-ss', 'logical.rounded-se'],\n 'logical.rounded-be': ['logical.rounded-es', 'logical.rounded-ee'],\n 'logical.rounded-is': ['logical.rounded-ss', 'logical.rounded-es'],\n 'logical.rounded-ie': ['logical.rounded-ee', 'logical.rounded-se'],\n 'border-color': [\n 'logical.border-color-bs',\n 'logical.border-color-be',\n 'logical.border-color-is',\n 'logical.border-color-ie',\n ],\n border: ['logical.border-bs', 'logical.border-be', 'logical.border-is', 'logical.border-ie'],\n },\n },\n });\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type Size } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport const sizeWidthMap = new Map<Size, string>([\n [0, 'is-0'],\n ['px', 'is-px'],\n [0.5, 'is-0.5'],\n [1, 'is-1'],\n [1.5, 'is-1.5'],\n [2, 'is-2'],\n [2.5, 'is-2.5'],\n [3, 'is-3'],\n [3.5, 'is-3.5'],\n [4, 'is-4'],\n [5, 'is-5'],\n [6, 'is-6'],\n [7, 'is-7'],\n [8, 'is-8'],\n [9, 'is-9'],\n [10, 'is-10'],\n [11, 'is-11'],\n [12, 'is-12'],\n [14, 'is-14'],\n [16, 'is-16'],\n [20, 'is-20'],\n [24, 'is-24'],\n [28, 'is-28'],\n [32, 'is-32'],\n [36, 'is-36'],\n [40, 'is-40'],\n [44, 'is-44'],\n [48, 'is-48'],\n [52, 'is-52'],\n [56, 'is-56'],\n [60, 'is-60'],\n [64, 'is-64'],\n [72, 'is-72'],\n [80, 'is-80'],\n [96, 'is-96'],\n]);\n\nexport const sizeHeightMap = new Map<Size, string>([\n [0, 'bs-0'],\n ['px', 'bs-px'],\n [0.5, 'bs-0.5'],\n [1, 'bs-1'],\n [1.5, 'bs-1.5'],\n [2, 'bs-2'],\n [2.5, 'bs-2.5'],\n [3, 'bs-3'],\n [3.5, 'bs-3.5'],\n [4, 'bs-4'],\n [5, 'bs-5'],\n [6, 'bs-6'],\n [7, 'bs-7'],\n [8, 'bs-8'],\n [9, 'bs-9'],\n [10, 'bs-10'],\n [11, 'bs-11'],\n [12, 'bs-12'],\n [14, 'bs-14'],\n [16, 'bs-16'],\n [20, 'bs-20'],\n [24, 'bs-24'],\n [28, 'bs-28'],\n [32, 'bs-32'],\n [36, 'bs-36'],\n [40, 'bs-40'],\n [44, 'bs-44'],\n [48, 'bs-48'],\n [52, 'bs-52'],\n [56, 'bs-56'],\n [60, 'bs-60'],\n [64, 'bs-64'],\n [72, 'bs-72'],\n [80, 'bs-80'],\n [96, 'bs-96'],\n]);\n\nconst sizes = new Set(sizeWidthMap.keys());\n\nexport const getSizeHeight = sizeHeightMap.get.bind(sizeHeightMap);\nexport const getSizeWidth = sizeWidthMap.get.bind(sizeWidthMap);\nexport const getSize = (size: Size) => mx(getSizeHeight(size), getSizeWidth(size));\n\nexport const computeSize = (value: number, defaultSize: Size) => {\n if (sizes.has(value as Size)) {\n return value as Size;\n } else if (value <= 0) {\n return 0;\n } else if (value === 1) {\n return 'px';\n } else {\n const wholeSeries = Math.floor(value);\n const halfSeries = Math.floor(value * 2) / 2;\n const doubleSeries = Math.floor(value / 2) * 2;\n const quadrupleSeries = Math.floor(value / 4) * 4;\n if (sizes.has(halfSeries as Size)) {\n return halfSeries as Size;\n } else if (sizes.has(wholeSeries as Size)) {\n return wholeSeries as Size;\n } else if (sizes.has(doubleSeries as Size)) {\n return doubleSeries as Size;\n } else if (sizes.has(quadrupleSeries as Size)) {\n return quadrupleSeries as Size;\n } else {\n return defaultSize;\n }\n }\n};\n\nexport const sizeValue = (size: Size): number => (size === 'px' ? 1 : size);\n", "//\n// Copyright 2022 DXOS.org\n//\n\nexport const placeholderText = 'placeholder-neutral-300 dark:placeholder-neutral-500';\nexport const staticPlaceholderText = 'text-neutral-300 dark:text-neutral-500';\n\nexport const descriptionText = 'text-xs font-normal fg-description';\nexport const descriptionTextPrimary = 'text-xs font-normal fg-base';\n\nexport const chromeText = 'text-xs font-normal';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type MessageValence } from '@dxos/react-ui-types';\n\nexport const successText = 'text-xs font-medium text-success-550 dark:text-success-300';\nexport const infoText = 'text-xs font-medium text-info-550 dark:text-info-300';\nexport const warningText = 'text-xs font-medium text-warning-550 dark:text-warning-300';\nexport const errorText = 'text-xs font-medium text-error-550 dark:text-error-300';\n\nexport const valenceColorText = (valence?: MessageValence) => {\n switch (valence) {\n case 'success':\n return successText;\n case 'info':\n return infoText;\n case 'warning':\n return warningText;\n case 'error':\n return errorText;\n default:\n return undefined;\n }\n};\n\nexport const neutralMessageColors = 'bg-neutral-25 dark:bg-neutral-850';\nexport const successMessageColors =\n 'shadow-success-500/50 dark:shadow-success-500/50 text-success-600 dark:text-success-100 bg-success-50 dark:bg-success-900';\nexport const infoMessageColors =\n 'shadow-info-500/50 dark:shadow-info-500/50 text-info-600 dark:text-info-100 bg-info-50 dark:bg-info-900';\nexport const warningMessageColors =\n 'shadow-warning-500/50 dark:shadow-warning-500/50 text-warning-600 dark:text-warning-100 bg-warning-50 dark:bg-warning-900';\nexport const errorMessageColors =\n 'shadow-error-500/50 dark:shadow-error-500/50 text-error-600 dark:text-error-100 bg-error-50 dark:bg-error-900';\n\nexport const messageValence = (valence?: MessageValence) => {\n switch (valence) {\n case 'success':\n return successMessageColors;\n case 'info':\n return infoMessageColors;\n case 'warning':\n return warningMessageColors;\n case 'error':\n return errorMessageColors;\n default:\n return neutralMessageColors;\n }\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type AnchoredOverflowStyleProps = {};\n\nexport const anchoredOverflowRoot: ComponentFunction<AnchoredOverflowStyleProps> = (_props, ...etc) =>\n mx('overflow-anchored overflow-auto', ...etc);\n\nexport const anchoredOverflowAnchor: ComponentFunction<AnchoredOverflowStyleProps> = (_props, ...etc) =>\n mx('overflow-anchor is-px bs-px', ...etc);\n\nexport const anchoredOverflowTheme: Theme<AnchoredOverflowStyleProps> = {\n root: anchoredOverflowRoot,\n anchor: anchoredOverflowAnchor,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Size, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { descriptionText, getSize, getSizeHeight } from '../fragments';\n\nexport type AvatarStyleProps = Partial<{\n size: Size;\n srOnly: boolean;\n status: 'active' | 'inactive' | 'current' | 'error' | 'warning' | 'internal';\n animation: 'pulse' | 'none';\n variant: 'circle' | 'square';\n inGroup: boolean;\n}>;\n\nexport const avatarRoot: ComponentFunction<AvatarStyleProps> = ({ size = 10, inGroup }, ...etc) =>\n mx(\n 'relative inline-flex shrink-0',\n getSize(size),\n inGroup && (size === 'px' || size <= 3 ? '-mie-1' : '-mie-2'),\n ...etc,\n );\n\nexport const avatarLabel: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) => mx(srOnly && 'sr-only', ...etc);\n\nexport const avatarDescription: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) =>\n mx(descriptionText, srOnly && 'sr-only', ...etc);\n\nexport const avatarFrame: ComponentFunction<AvatarStyleProps> = ({ variant }, ...etc) =>\n mx('is-full bs-full bg-[--surface-bg]', variant === 'circle' ? 'rounded-full' : 'rounded', ...etc);\n\nexport const avatarStatusIcon: ComponentFunction<AvatarStyleProps> = ({ status, size = 3 }, ...etc) =>\n mx(\n 'absolute block-end-0 inline-end-0',\n getSize(size),\n status === 'inactive'\n ? 'text-warning-350 dark:text-warning-250'\n : status === 'active'\n ? 'text-success-350 dark:text-success-250'\n : 'text-neutral-350 dark:text-neutral-250',\n ...etc,\n );\n\nexport const avatarRing: ComponentFunction<AvatarStyleProps> = ({ status, variant, animation }, ...etc) =>\n mx(\n 'absolute inset-0 border-2',\n variant === 'circle' ? 'rounded-full' : 'rounded',\n status === 'current'\n ? 'border-primary-400 dark:border-primary-500'\n : status === 'active'\n ? 'border-success-400 dark:border-success-400'\n : status === 'error'\n ? 'border-error-400 dark:border-error-500'\n : status === 'warning'\n ? 'border-warning-400 dark:border-warning-500'\n : status === 'inactive'\n ? 'separator-separator'\n : status === 'internal'\n ? 'border-fuchsia-600'\n : 'border-[color:var(--surface-bg)]',\n animation === 'pulse' ? 'animate-halo-pulse' : '',\n ...etc,\n );\n\nexport const avatarFallbackText: ComponentFunction<AvatarStyleProps> = (_props, ...etc) => mx('fill-white', ...etc);\n\nexport const avatarGroup: ComponentFunction<AvatarStyleProps> = (_props, ...etc) =>\n mx('inline-flex items-center', ...etc);\n\nexport const avatarGroupLabel: ComponentFunction<AvatarStyleProps> = ({ size, srOnly }, ...etc) =>\n mx(\n srOnly\n ? 'sr-only'\n : 'rounded-full truncate text-sm leading-none plb-1 pli-2 relative z-[1] flex items-center justify-center',\n size && getSizeHeight(size),\n ...etc,\n );\n\nexport const avatarGroupDescription: ComponentFunction<AvatarStyleProps> = ({ srOnly }, ...etc) =>\n mx(srOnly ? 'sr-only' : descriptionText, ...etc);\n\nexport const avatarTheme: Theme<AvatarStyleProps> = {\n root: avatarRoot,\n label: avatarLabel,\n description: avatarDescription,\n statusIcon: avatarStatusIcon,\n frame: avatarFrame,\n ring: avatarRing,\n fallbackText: avatarFallbackText,\n group: avatarGroup,\n groupLabel: avatarGroupLabel,\n groupDescription: avatarGroupDescription,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type breadcrumbStyleProps = {};\n\nexport const breadcrumbRoot: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) =>\n mx('shrink-0 flex items-center', ...etc);\n\nexport const breadcrumbList: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('contents', ...etc);\n\nexport const breadcrumbListItem: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx('contents', ...etc);\n\nexport const breadcrumbCurrent: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) => mx(...etc);\n\nexport const breadcrumbSeparator: ComponentFunction<breadcrumbStyleProps> = (_props, ...etc) =>\n mx('opacity-50', ...etc);\n\nexport const breadcrumbTheme: Theme<breadcrumbStyleProps> = {\n root: breadcrumbRoot,\n list: breadcrumbList,\n listItem: breadcrumbListItem,\n current: breadcrumbCurrent,\n separator: breadcrumbSeparator,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport type { Density, Elevation, ComponentFunction, Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { contentElevation, ghostHover } from '../fragments';\n\nexport const primaryButtonColors =\n 'fg-inverse surface-accent hover:surface-accentHover aria-pressed:bg-primary-500 dark:aria-pressed:bg-primary-500 data-[state=open]:bg-primary-500 dark:data-[state=open]:bg-primary-500 aria-checked:bg-primary-500 dark:aria-checked:bg-primary-500 aria-checked:text-primary-100';\n\nexport const staticDefaultButtonColors = 'surface-input';\n\nexport const defaultButtonColors =\n staticDefaultButtonColors +\n ' data-[state=open]:surface-input aria-pressed:fg-accent aria-pressed:surface-base aria-checked:fg-accent aria-checked:surface-base';\n\nexport const ghostButtonColors =\n ghostHover +\n ' hover:text-inherit data-[state=open]:surface-input aria-pressed:fg-accent aria-pressed:surface-base aria-checked:fg-accent aria-checked:surface-base';\n\nexport type ButtonStyleProps = Partial<{\n inGroup?: boolean;\n textWrap?: boolean;\n density: Density;\n elevation: Elevation;\n disabled: boolean;\n variant: 'default' | 'primary' | 'ghost' | 'outline';\n}>;\n\nexport const buttonRoot: ComponentFunction<ButtonStyleProps> = (_props, ...etc) => {\n return mx('ch-button ch-focus-ring group', ...etc);\n};\n\nexport const buttonGroup: ComponentFunction<{ elevation?: Elevation }> = (props, ...etc) => {\n return mx(\n 'inline-flex rounded-sm [&>:first-child]:rounded-is-sm [&>:last-child]:rounded-ie-sm [&>button]:relative',\n contentElevation({ elevation: props.elevation }),\n ...etc,\n );\n};\n\nexport const buttonTheme: Theme<ButtonStyleProps> = {\n root: buttonRoot,\n group: buttonGroup,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { descriptionText, focusRing, surfaceElevation, dialogMotion, groupBorder } from '../fragments';\n\nexport type DialogStyleProps = {\n srOnly?: boolean;\n inOverlayLayout?: boolean;\n elevation?: Elevation;\n};\n\nconst dialogLayoutFragment = 'overflow-auto grid place-items-center p-2 md:p-4 lg:p-8';\n\nexport const dialogOverlay: ComponentFunction<DialogStyleProps> = (_props, ...etc) =>\n mx('fixed z-[22] inset-inline-0 block-start-0 bs-[100dvh] surface-scrim', dialogLayoutFragment, ...etc);\n\nexport const dialogContent: ComponentFunction<DialogStyleProps> = ({ inOverlayLayout, elevation = 'chrome' }, ...etc) =>\n mx(\n // TODO(thure): `flex` should not be default.\n 'flex flex-col',\n !inOverlayLayout && 'fixed z-[22] top-[50%] left-[50%] -translate-x-[50%] -translate-y-[50%]',\n 'is-[95vw] max-is-full md:max-is-[24rem] border rounded-lg p-4',\n dialogMotion,\n surfaceElevation({ elevation }),\n 'surface-baseGlass backdrop-blur',\n groupBorder,\n focusRing,\n ...etc,\n );\n\nexport const dialogTitle: ComponentFunction<DialogStyleProps> = ({ srOnly }, ...etc) =>\n mx('rounded shrink-0 text-xl font-medium', srOnly && 'sr-only', ...etc);\n\nexport const dialogDescription: ComponentFunction<DialogStyleProps> = ({ srOnly }, ...etc) =>\n mx('mlb-2', descriptionText, srOnly && 'sr-only', ...etc);\n\nexport const dialogTheme: Theme<DialogStyleProps> = {\n overlay: dialogOverlay,\n content: dialogContent,\n title: dialogTitle,\n description: dialogDescription,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport {\n arrow,\n modalSurface,\n dataDisabled,\n descriptionText,\n popperMotion,\n subduedFocus,\n surfaceElevation,\n} from '../fragments';\n\nexport type MenuStyleProps = Partial<{\n constrainBlockSize: boolean;\n}>;\n\nexport const menuViewport: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx('rounded-md p-1 max-bs-[--radix-dropdown-menu-content-available-height] overflow-y-auto', ...etc);\n\nexport const menuContent: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx('is-48 rounded-md md:is-56 z-[30]', popperMotion, modalSurface, surfaceElevation({ elevation: 'group' }), ...etc);\n\nexport const menuItem: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx(\n 'flex cursor-pointer select-none items-center gap-2 rounded-md px-2 py-2 text-sm',\n 'data-[highlighted]:surface-hover',\n subduedFocus,\n dataDisabled,\n ...etc,\n );\n\nexport const menuSeparator: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx('mlb-1 mli-2 bs-px bg-neutral-75 dark:bg-neutral-700', ...etc);\n\nexport const menuGroupLabel: ComponentFunction<MenuStyleProps> = (_props, ...etc) =>\n mx(descriptionText, 'select-none pli-2 plb-2', ...etc);\n\nexport const menuArrow: ComponentFunction<MenuStyleProps> = (_props, ...etc) => mx(arrow, ...etc);\n\nexport const menuTheme: Theme<MenuStyleProps> = {\n content: menuContent,\n viewport: menuViewport,\n item: menuItem,\n separator: menuSeparator,\n groupLabel: menuGroupLabel,\n arrow: menuArrow,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n type ComponentFragment,\n type ComponentFunction,\n type Density,\n type Elevation,\n type MessageValence,\n type Size,\n} from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport {\n coarseDimensions,\n staticDisabled,\n fineDimensions,\n placeholderText,\n focusRing,\n subduedFocus,\n fineBlockSize,\n coarseBlockSize,\n staticFocusRing,\n descriptionText,\n valenceColorText,\n getSize,\n computeSize,\n sizeValue,\n getSizeHeight,\n getSizeWidth,\n} from '../fragments';\n\nexport type InputStyleProps = Partial<{\n variant: 'default' | 'subdued' | 'static';\n disabled: boolean;\n focused: boolean;\n density: Density;\n elevation: Elevation;\n validationValence: MessageValence;\n size: Size;\n}>;\n\nexport type InputMetaStyleProps = Partial<{\n srOnly: boolean;\n validationValence: MessageValence;\n}>;\n\nexport const neutralInputValence = '';\nexport const successInputValence = 'shadow-success-500/50 dark:shadow-success-600/50';\nexport const infoInputValence = 'shadow-info-500/50 dark:shadow-info-600/50';\nexport const warningInputValence = 'shadow-warning-500/50 dark:shadow-warning-600/50';\nexport const errorInputValence = 'shadow-error-500/50 dark:shadow-error-600/50';\n\nconst textInputSurfaceFocus =\n 'transition-colors surface-input focus:surface-attention border-transparent focus:border-transparent';\n\nconst textInputSurfaceHover = 'hover:surface-hover focus:hover:surface-attention';\n\nconst booleanInputSurface =\n 'shadow-inner transition-colors surface-unAccent aria-checked:surface-accent aria-[checked=mixed]:surface-accent';\n\nconst booleanInputSurfaceHover =\n 'hover:surface-unAccentHover hover:aria-checked:surface-accentHover hover:aria-[checked=mixed]:surface-accentHover';\n\nexport const inputValence = (valence?: MessageValence) => {\n switch (valence) {\n case 'success':\n return successInputValence;\n case 'info':\n return infoInputValence;\n case 'warning':\n return warningInputValence;\n case 'error':\n return errorInputValence;\n default:\n return null;\n }\n};\n\n// TODO(burdon): Factor out color defs?\nconst sharedSubduedInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n 'is-full bg-transparent text-current',\n props.density === 'fine' ? fineBlockSize : coarseBlockSize,\n placeholderText,\n subduedFocus,\n props.disabled && staticDisabled,\n];\n\nconst sharedDefaultInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n 'is-full text-base rounded text-[color:var(--surface-text)]',\n textInputSurfaceFocus,\n placeholderText,\n props.density === 'fine' ? fineDimensions : coarseDimensions,\n props.disabled ? staticDisabled : textInputSurfaceHover,\n];\n\nconst sharedStaticInputStyles: ComponentFragment<InputStyleProps> = (props) => [\n 'is-full text-base rounded text-[color:var(--surface-text)]',\n textInputSurfaceFocus,\n textInputSurfaceHover,\n props.focused && 'surface-attention',\n placeholderText,\n inputValence(props.validationValence),\n props.disabled && staticDisabled,\n props.focused && staticFocusRing,\n];\n\nexport const inputInput: ComponentFunction<InputStyleProps> = (props, ...etc) =>\n props.variant === 'subdued'\n ? mx(...sharedSubduedInputStyles(props), ...etc)\n : props.variant === 'static'\n ? mx(...sharedStaticInputStyles(props), ...etc)\n : mx(\n ...sharedDefaultInputStyles(props),\n !props.disabled && focusRing,\n inputValence(props.validationValence) || neutralInputValence,\n ...etc,\n );\n\nexport const inputCheckbox: ComponentFunction<InputStyleProps> = ({ size = 5 }, ...etc) =>\n mx('ch-checkbox ch-focus-ring', getSize(size), ...etc);\n\nexport const inputCheckboxIndicator: ComponentFunction<InputStyleProps> = ({ size = 5 }, ...etc) =>\n mx(getSize(computeSize(sizeValue(size) * 0.65, 4)), ...etc);\n\nexport const inputSwitch: ComponentFunction<InputStyleProps> = ({ size = 5, disabled }, ...etc) =>\n mx(\n getSizeHeight(size),\n getSizeWidth(computeSize(sizeValue(size) * 1.75, 9)),\n booleanInputSurface,\n !disabled && booleanInputSurfaceHover,\n // TODO(burdon): Added m-1 margin to make 40px width to align with 40px icon button.\n 'cursor-pointer shrink-0 rounded-full pli-1 mx-1 relative',\n focusRing,\n ...etc,\n );\n\nexport const inputSwitchThumb: ComponentFunction<InputStyleProps> = ({ size = 5 }, ...etc) =>\n mx(\n getSize(size === 'px' ? 'px' : ((size - 2) as Size)),\n 'block bg-white rounded-full separator-separator transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[100%]',\n ...etc,\n );\n\nexport const inputWithSegmentsInput: ComponentFunction<InputStyleProps> = (props, ...etc) =>\n mx('font-mono selection:bg-transparent mli-auto', props.disabled && 'cursor-not-allowed', ...etc);\n\nexport const inputLabel: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx('block text-sm font-medium', props.srOnly && 'sr-only', ...etc);\n\nexport const inputDescription: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx(descriptionText, props.srOnly && 'sr-only', ...etc);\n\nexport const inputDescriptionAndValidation: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx('leading-none mlb-1', props.srOnly && 'sr-only', ...etc);\n\nexport const inputValidation: ComponentFunction<InputMetaStyleProps> = (props, ...etc) =>\n mx(descriptionText, props.srOnly ? 'sr-only' : valenceColorText(props.validationValence), ...etc);\n\nexport const inputTheme = {\n input: inputInput,\n inputWithSegments: inputWithSegmentsInput,\n checkbox: inputCheckbox,\n checkboxIndicator: inputCheckboxIndicator,\n label: inputLabel,\n description: inputDescription,\n validation: inputValidation,\n switch: inputSwitch,\n switchThumb: inputSwitchThumb,\n descriptionAndValidation: inputDescriptionAndValidation,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { focusRing } from '../fragments';\n\nexport type LinkStyleProps = {\n variant?: 'accent' | 'neutral';\n};\n\n// TODO(burdon): Export fragment.\nexport const linkRoot: ComponentFunction<LinkStyleProps> = ({ variant }, ...etc) =>\n mx(\n 'underline decoration-1 underline-offset-2 transition-color rounded-sm',\n variant === 'neutral'\n ? 'text-inherit hover:opacity-90 visited:text-inherit visited:hover:opacity-90'\n : 'fg-accent hover:fg-accentHover visited:fg-accent visited:hover:fg-accentHover',\n focusRing,\n ...etc,\n );\n\nexport const linkTheme: Theme<LinkStyleProps> = {\n root: linkRoot,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Density, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { focusRing, densityBlockSize, getSize, ghostHover } from '../fragments';\n\nexport type ListStyleProps = Partial<{\n density: Density;\n collapsible: boolean;\n}>;\n\nexport const listRoot: ComponentFunction<ListStyleProps> = (_, ...etc) => mx(...etc);\n\nexport const listItem: ComponentFunction<ListStyleProps> = ({ collapsible }, ...etc) =>\n mx(!collapsible && 'flex', ...etc);\n\nexport const listItemEndcap: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx(density === 'fine' ? getSize(8) : getSize(10), 'shrink-0 flex items-start justify-center', ...etc);\n\nexport const listItemHeading: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx(densityBlockSize(density), ...etc);\n\nexport const listItemDragHandleIcon: ComponentFunction<ListStyleProps> = (_props, ...etc) =>\n mx(getSize(5), 'mbs-2.5', ...etc);\n\nexport const listItemOpenTrigger: ComponentFunction<ListStyleProps> = ({ density }, ...etc) =>\n mx('is-5 rounded flex justify-center items-center', densityBlockSize(density), ghostHover, focusRing, ...etc);\n\nexport const listItemOpenTriggerIcon: ComponentFunction<ListStyleProps> = (_props, ...etc) => {\n return mx(getSize(5), ...etc);\n};\n\nexport const listTheme: Theme<ListStyleProps> = {\n root: listRoot,\n item: {\n root: listItem,\n endcap: listItemEndcap,\n heading: listItemHeading,\n dragHandleIcon: listItemDragHandleIcon,\n openTrigger: listItemOpenTrigger,\n openTriggerIcon: listItemOpenTriggerIcon,\n },\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction } from '@dxos/react-ui-types/src';\n\nimport { mx } from '../../util';\nimport { bounceLayout, fixedBorder, fixedSurface } from '../fragments';\n\n// Padding to apply to in-flow elements which need to clear the fixed topbar / bottombar.\nexport const topbarBlockPaddingStart = 'pbs-[--topbar-size] sticky-top-from-topbar-bottom';\nexport const bottombarBlockPaddingEnd = 'pbe-[--statusbar-size] sticky-bottom-from-statusbar-bottom';\n\nexport type MainStyleProps = Partial<{\n bounce: boolean;\n}>;\n\n// Sidebar widths (used by main and complementary sidebar).\nconst sidebarSlots = {\n start: {\n width: 'sm:data-[side=is]:is-[270px]',\n sidebar: 'sm:data-[side=is]:-inline-start-[270px]',\n content:\n 'lg:data-[sidebar-inline-start-state=open]:pis-[270px] lg:data-[sidebar-inline-start-state=open]:scroll-ps-[270px]',\n notch: 'max-is-[270px]',\n },\n // TODO(burdon): Maximal size for phone.\n end: {\n width: 'sm:data-[side=ie]:is-[360px]',\n sidebar: 'sm:data-[side=ie]:-inline-end-[360px]',\n content:\n 'lg:data-[sidebar-inline-end-state=open]:pie-[360px] lg:data-[sidebar-inline-end-state=open]:scroll-pe-[360px]',\n },\n};\n\nexport const mainSidebar: ComponentFunction<MainStyleProps> = (_, ...etc) =>\n mx(\n 'fixed block-start-0 block-end-0 is-[100vw] z-10 data-[side=ie]:z-20 overscroll-contain overflow-x-hidden overflow-y-auto',\n 'transition-[inset-inline-start,inset-inline-end] duration-0 data-[resizing=false]:duration-200 ease-in-out',\n `data-[side=is]:-inline-start-[100vw] ${sidebarSlots.start.width} ${sidebarSlots.start.sidebar}`,\n `data-[side=ie]:-inline-end-[100vw] ${sidebarSlots.end.width} ${sidebarSlots.end.sidebar}`,\n 'data-[side=is]:data-[state=open]:inline-start-0 data-[side=ie]:data-[state=open]:inline-end-0',\n 'data-[side=is]:border-ie data-[side=ie]:border-is',\n fixedBorder,\n fixedSurface,\n ...etc,\n );\n\nexport const mainContent: ComponentFunction<MainStyleProps> = ({ bounce }, ...etc) =>\n mx(\n 'transition-[padding-inline-start,padding-inline-end,scroll-padding-start,scroll-padding-end] duration-200 ease-in-out',\n `pis-0 scroll-ps-0 ${sidebarSlots.start.content}`,\n `pie-0 scroll-pe-0 ${sidebarSlots.end.content}`,\n bounce && bounceLayout,\n ...etc,\n );\n\nexport const mainOverlay: ComponentFunction<MainStyleProps> = (_, ...etc) =>\n mx(\n 'fixed inset-0 z-[9] surface-scrim',\n 'transition-opacity duration-200 ease-in-out',\n 'opacity-0 data-[state=open]:opacity-100 lg:data-[state=open]:opacity-100',\n 'hidden data-[state=open]:block lg:data-[state=open]:hidden',\n ...etc,\n );\n\nexport const mainNotch: ComponentFunction<MainStyleProps> = (_, ...etc) =>\n mx(\n 'fixed z-[11] block-end-0 inline-start-0 pbe-[env(safe-area-inset-bottom)] rounded-se-lg min-bs-[var(--rail-size)] is-fit separator-separator surface-base',\n 'transition-[border-width] box-content border-bs border-ie data-[nav-sidebar-state=open]:border-bs-0 data-[nav-sidebar-state=open]:border-ie-0',\n 'pli-1 grid grid-cols-[repeat(auto-fit,var(--rail-action))]',\n sidebarSlots.start.notch,\n ...etc,\n );\n\nexport const mainTheme = {\n content: mainContent,\n sidebar: mainSidebar,\n overlay: mainOverlay,\n notch: mainNotch,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Elevation, type MessageValence, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { messageValence, contentElevation } from '../fragments';\n\nexport type MessageStyleProps = {\n valence?: MessageValence;\n elevation?: Elevation;\n};\n\nexport const messageRoot: ComponentFunction<MessageStyleProps> = ({ valence, elevation }, ...etc) =>\n mx('p-3 rounded-md max-is-full overflow-auto', contentElevation({ elevation }), messageValence(valence), ...etc);\n\nexport const messageTitle: ComponentFunction<MessageStyleProps> = (_props, ...etc) =>\n mx('text-base font-medium mb-2', ...etc);\n\nexport const messageBody: ComponentFunction<MessageStyleProps> = (_props, ...etc) => mx(...etc);\n\nexport const messageTheme: Theme<MessageStyleProps> = {\n root: messageRoot,\n title: messageTitle,\n body: messageBody,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { focusRing, surfaceElevation, groupArrow, modalSurface } from '../fragments';\n\nexport type PopoverStyleProps = Partial<{\n constrainInline?: boolean;\n constrainBlock: boolean;\n}>;\n\nexport const popoverViewport: ComponentFunction<PopoverStyleProps> = ({ constrainInline, constrainBlock }, ...etc) =>\n mx(\n 'p-1 rounded-lg',\n constrainInline && 'max-is-[--radix-popover-content-available-width] overflow-x-auto',\n constrainBlock && 'max-bs-[--radix-popover-content-available-height] overflow-y-auto',\n ...etc,\n );\n\nexport const popoverContent: ComponentFunction<PopoverStyleProps> = (_props, ...etc) =>\n mx('z-[30] rounded-lg', modalSurface, surfaceElevation({ elevation: 'group' }), focusRing, ...etc);\n\nexport const popoverArrow: ComponentFunction<PopoverStyleProps> = (_props, ...etc) => mx(groupArrow, ...etc);\n\nexport const popoverTheme: Theme<PopoverStyleProps> = {\n content: popoverContent,\n viewport: popoverViewport,\n arrow: popoverArrow,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type ScrollAreaStyleProps = {};\n\nexport const scrollAreaRoot: ComponentFunction<ScrollAreaStyleProps> = (_props, ...etc) =>\n mx('overflow-hidden', ...etc);\n\nexport const scrollAreaViewport: ComponentFunction<ScrollAreaStyleProps> = (_props, ...etc) =>\n mx('is-full bs-full [&>div]:table-fixed [&>div]:is-full', ...etc);\n\nexport const scrollAreaScrollbar: ComponentFunction<ScrollAreaStyleProps> = (_props, ...etc) =>\n mx(\n 'flex select-none touch-none p-0.5 ease-out',\n 'data-[orientation=vertical]:is-1.5 sm:data-[orientation=vertical]:data-[variant=coarse]:is-3',\n 'data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:bs-1.5 sm:data-[orientation=horizontal]:data-[variant=coarse]:bs-3',\n 'sm:data-[variant=coarse]:surface-separator rounded-full',\n '[&>div]:surface-unAccent sm:[&[data-variant=coarse]>div]:surface-attention',\n ...etc,\n );\n\nexport const scrollAreaThumb: ComponentFunction<ScrollAreaStyleProps> = (_props, ...etc) =>\n mx(\n 'flex-1 rounded-full relative',\n \"before:content-[''] before:absolute before:top-1/2 before:left-1/2 before:-translate-x-1/2 before:-translate-y-1/2 before:w-full before:h-full before:min-w-[6px] before:min-h-[6px]\",\n ...etc,\n );\n\nexport const scrollAreaCorner: ComponentFunction<ScrollAreaStyleProps> = (_props, ...etc) => mx(...etc);\n\nexport const scrollAreaTheme: Theme<ScrollAreaStyleProps> = {\n root: scrollAreaRoot,\n viewport: scrollAreaViewport,\n scrollbar: scrollAreaScrollbar,\n thumb: scrollAreaThumb,\n corner: scrollAreaCorner,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type ComponentFunction, type Elevation, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport {\n arrow,\n blockSeparator,\n modalSurface,\n ghostHighlighted,\n surfaceElevation,\n getSize,\n separatorBorderColor,\n} from '../fragments';\n\nexport type SelectStyleProps = Partial<{\n elevation: Elevation;\n}>;\n\nexport const selectContent: ComponentFunction<SelectStyleProps> = ({ elevation = 'chrome' }, ...etc) => {\n return mx('p-1 z-[50] rounded', modalSurface, surfaceElevation({ elevation }), ...etc);\n};\n\nexport const selectItem: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx(\n 'relative flex items-center pis-6 pie-3 plb-1',\n 'text-base leading-none rounded-sm select-none outline-none',\n ghostHighlighted,\n ...etc,\n );\n\nexport const selectItemIndicator: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx('absolute inline-start-0 is-6 inline-flex items-center justify-center', ...etc);\n\nexport const selectArrow: ComponentFunction<SelectStyleProps> = (_props, ...etc) => mx(arrow, ...etc);\n\nexport const selectSeparator: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx(blockSeparator, separatorBorderColor, ...etc);\n\nexport const selectScrollButton: ComponentFunction<SelectStyleProps> = (_props, ...etc) =>\n mx(modalSurface, 'flex items-center justify-center cursor-default bs-6 is-full', ...etc);\n\nexport const selectTriggerIcon: ComponentFunction<SelectStyleProps> = (_props, ...etc) => mx(getSize(2), ...etc);\n\nexport const selectTheme: Theme<SelectStyleProps> = {\n content: selectContent,\n item: selectItem,\n itemIndicator: selectItemIndicator,\n arrow: selectArrow,\n separator: selectSeparator,\n scrollButton: selectScrollButton,\n triggerIcon: selectTriggerIcon,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { blockSeparator, inlineSeparator, separatorBorderColor } from '../fragments';\n\nexport type SeparatorStyleProps = {\n orientation?: 'horizontal' | 'vertical';\n};\n\nexport const separatorRoot: ComponentFunction<SeparatorStyleProps> = ({ orientation }, ...etc) =>\n mx(orientation === 'vertical' ? inlineSeparator : blockSeparator, separatorBorderColor, ...etc);\n\nexport const separatorTheme: Theme<SeparatorStyleProps> = {\n root: separatorRoot,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { ComponentFunction, Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type StatusStyleProps = {\n indeterminate?: boolean;\n};\n\n// TODO(burdon): How to customize color without requiring multiple classes.\nexport const statusRoot: ComponentFunction<StatusStyleProps> = (_props, ...etc) =>\n mx('relative block bs-1 overflow-hidden rounded-full bg-primary-400/20', ...etc);\n\nexport const statusBar: ComponentFunction<StatusStyleProps> = ({ indeterminate }, ...etc) =>\n mx(\n 'absolute block inline-start-0 inset-block-0 rounded-full bg-primary-400',\n indeterminate && 'animate-progress-indeterminate',\n ...etc,\n );\n\nexport const statusTheme: Theme<StatusStyleProps> = {\n root: statusRoot,\n bar: statusBar,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n type ChromaticPalette,\n type ComponentFunction,\n type MessageValence,\n type NeutralPalette,\n type Theme,\n} from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type TagStyleProps = {\n palette?: ChromaticPalette | NeutralPalette | MessageValence;\n};\n\nconst paletteColorMap: Record<Exclude<TagStyleProps['palette'], undefined>, string> = {\n neutral: 'surface-separator text-neutral-800 dark:text-neutral-150',\n red: 'bg-red-200 text-red-800 dark:bg-red-700 dark:text-red-150',\n orange: 'bg-orange-200 text-orange-800 dark:bg-orange-700 dark:text-orange-150',\n amber: 'bg-amber-200 text-amber-800 dark:bg-amber-700 dark:text-amber-150',\n yellow: 'bg-yellow-200 text-yellow-800 dark:bg-yellow-700 dark:text-yellow-150',\n lime: 'bg-lime-200 text-lime-800 dark:bg-lime-700 dark:text-lime-150',\n green: 'bg-green-200 text-green-800 dark:bg-green-700 dark:text-green-150',\n emerald: 'bg-emerald-200 text-emerald-800 dark:bg-emerald-700 dark:text-emerald-150',\n teal: 'bg-teal-200 text-teal-800 dark:bg-teal-700 dark:text-teal-150',\n cyan: 'bg-cyan-200 text-cyan-800 dark:bg-cyan-700 dark:text-cyan-150',\n sky: 'bg-sky-200 text-sky-800 dark:bg-sky-700 dark:text-sky-150',\n blue: 'bg-blue-200 text-blue-800 dark:bg-blue-700 dark:text-blue-150',\n indigo: 'bg-indigo-200 text-indigo-800 dark:bg-indigo-700 dark:text-indigo-150',\n violet: 'bg-violet-200 text-violet-800 dark:bg-violet-700 dark:text-violet-150',\n purple: 'bg-purple-200 text-purple-800 dark:bg-purple-700 dark:text-purple-150',\n fuchsia: 'bg-fuchsia-200 text-fuchsia-800 dark:bg-fuchsia-700 dark:text-fuchsia-150',\n pink: 'bg-pink-200 text-pink-800 dark:bg-pink-700 dark:text-pink-150',\n rose: 'bg-rose-200 text-rose-800 dark:bg-rose-700 dark:text-rose-150',\n info: 'bg-info-200 text-info-800 dark:bg-info-700 dark:text-info-150',\n success: 'bg-success-200 text-success-800 dark:bg-success-700 dark:text-success-150',\n warning: 'bg-warning-200 text-warning-800 dark:bg-warning-700 dark:text-warning-150',\n error: 'bg-error-200 text-error-800 dark:bg-error-700 dark:text-error-150',\n};\n\nexport const tagRoot: ComponentFunction<TagStyleProps> = ({ palette = 'neutral' }, ...etc) =>\n mx('text-xs font-semibold pli-2 plb-0.5 rounded cursor-default', paletteColorMap[palette], ...etc);\n\nexport const tagTheme: Theme<TagStyleProps> = {\n root: tagRoot,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { descriptionText, focusRing, modalSurface, surfaceElevation } from '../fragments';\n\nexport type ToastStyleProps = Partial<{\n srOnly: boolean;\n}>;\n\nexport const toastViewport: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx(\n 'z-[70] fixed bottom-4 inset-x-4 w-auto md:top-4 md:right-4 md:left-auto md:bottom-auto md:w-full md:max-w-sm rounded-lg flex flex-col gap-2',\n ...etc,\n );\n\nexport const toastRoot: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx(\n 'rounded-lg flex p-2 gap-2',\n modalSurface,\n surfaceElevation({ elevation: 'chrome' }),\n 'radix-state-open:animate-toast-slide-in-bottom md:radix-state-open:animate-toast-slide-in-right',\n 'radix-state-closed:animate-toast-hide',\n 'radix-swipe-end:animate-toast-swipe-out',\n 'translate-x-radix-toast-swipe-move-x',\n 'radix-swipe-cancel:translate-x-0 radix-swipe-cancel:duration-200 radix-swipe-cancel:ease-[ease]',\n focusRing,\n ...etc,\n );\n\nexport const toastBody: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx('grow flex flex-col gap-1 justify-center pis-2', ...etc);\n\nexport const toastActions: ComponentFunction<ToastStyleProps> = (_props, ...etc) =>\n mx('shrink-0 flex flex-col gap-1 justify-center', ...etc);\n\nexport const toastTitle: ComponentFunction<ToastStyleProps> = ({ srOnly }, ...etc) =>\n mx('shrink-0 text-md font-medium', srOnly && 'sr-only', ...etc);\n\nexport const toastDescription: ComponentFunction<ToastStyleProps> = ({ srOnly }, ...etc) =>\n mx(descriptionText, 'shrink-0', srOnly && 'sr-only', ...etc);\n\nexport const toastTheme: Theme<ToastStyleProps> = {\n viewport: toastViewport,\n root: toastRoot,\n body: toastBody,\n title: toastTitle,\n description: toastDescription,\n actions: toastActions,\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type ToolbarStyleProps = Partial<{}>;\n\nexport const toolbarRoot: ComponentFunction<ToolbarStyleProps> = (_props, ...etc) => {\n return mx('flex items-center gap-2 is-full', ...etc);\n};\n\nexport const toolbarTheme: Theme<ToolbarStyleProps> = {\n root: toolbarRoot,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\nimport { arrow, chromeText, surfaceElevation, modalSurface, popperMotion } from '../fragments';\n\nexport type TooltipStyleProps = {};\n\nexport const tooltipContent: ComponentFunction<TooltipStyleProps> = (_props, ...etc) =>\n mx(\n 'inline-flex items-center rounded-md plb-2 pli-3 max-is-64',\n modalSurface,\n popperMotion,\n surfaceElevation({ elevation: 'group' }),\n chromeText,\n ...etc,\n );\n\nexport const tooltipArrow: ComponentFunction<TooltipStyleProps> = (_props, ...etc) => mx(arrow, ...etc);\n\nexport const tooltipTheme: Theme<TooltipStyleProps> = {\n content: tooltipContent,\n arrow: tooltipArrow,\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type { ComponentFunction, Theme } from '@dxos/react-ui-types';\n\nimport { mx } from '../../util';\n\nexport type TreegridStyleProps = Partial<{\n level: number;\n indent: boolean;\n}>;\n\nconst levelStyles = new Map<number, string>([\n [1, '[&>.indent:first-of-type]:pis-0 font-medium'],\n [2, '[&>.indent:first-of-type]:pis-0'],\n [3, '[&>.indent:first-of-type]:pis-1'],\n [4, '[&>.indent:first-of-type]:pis-2'],\n [5, '[&>.indent:first-of-type]:pis-3'],\n [6, '[&>.indent:first-of-type]:pis-4'],\n [7, '[&>.indent:first-of-type]:pis-5'],\n [8, '[&>.indent:first-of-type]:pis-6'],\n]);\n\nexport const treegridRoot: ComponentFunction<TreegridStyleProps> = (_, ...etc) => mx('grid', ...etc);\n\nexport const treegridRow: ComponentFunction<TreegridStyleProps> = ({ level = 1 }, ...etc) =>\n mx('contents', levelStyles.get(Math.min(Math.max(Math.round(level), 1), 8)), ...etc);\n\nexport const treegridCell: ComponentFunction<TreegridStyleProps> = ({ indent }, ...etc) =>\n mx(indent && 'indent', ...etc);\n\nexport const treegridTheme: Theme<TreegridStyleProps> = {\n root: treegridRoot,\n row: treegridRow,\n cell: treegridCell,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport get from 'lodash.get';\n\nimport { type ComponentFunction, type Theme } from '@dxos/react-ui-types';\n\nimport {\n anchoredOverflowTheme,\n avatarTheme,\n breadcrumbTheme,\n buttonTheme,\n dialogTheme,\n menuTheme,\n inputTheme,\n linkTheme,\n listTheme,\n mainTheme,\n messageTheme,\n popoverTheme,\n scrollAreaTheme,\n selectTheme,\n separatorTheme,\n statusTheme,\n tagTheme,\n toastTheme,\n toolbarTheme,\n tooltipTheme,\n treegridTheme,\n} from './components';\nimport { hueTheme } from './fragments';\n\nexport const defaultTheme: Theme<Record<string, any>> = {\n themeName: () => 'default',\n\n anchoredOverflow: anchoredOverflowTheme,\n avatar: avatarTheme,\n breadcrumb: breadcrumbTheme,\n button: buttonTheme,\n dialog: dialogTheme,\n menu: menuTheme,\n input: inputTheme,\n link: linkTheme,\n list: listTheme,\n main: mainTheme,\n message: messageTheme,\n popover: popoverTheme,\n select: selectTheme,\n scrollArea: scrollAreaTheme,\n separator: separatorTheme,\n status: statusTheme,\n tag: tagTheme,\n toast: toastTheme,\n toolbar: toolbarTheme,\n tooltip: tooltipTheme,\n treegrid: treegridTheme,\n\n hue: hueTheme,\n};\n\nexport const bindTheme = <P extends Record<string, any>>(theme: Theme<Record<string, any>>) => {\n return (path: string, defaultClassName: string, styleProps: P, ...options: any[]): string => {\n const result: Theme<P> | ComponentFunction<P> = get(theme, path);\n return typeof result === 'function' ? result(styleProps, ...options) : defaultClassName;\n };\n};\n\nexport const defaultTx = bindTheme(defaultTheme);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["curvePathFromPalette", "paletteShadesFromCurve", "hex_to_LCH", "hexToLch", "Lab_to_hex", "labToHex", "shadeNumbers", "broadShadeNumbers", "dtor", "Math", "PI", "paletteConfigs", "red", "keyColor", "darkCp", "lightCp", "hueTorsion", "orange", "amber", "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue", "indigo", "violet", "purple", "fuchsia", "pink", "rose", "neutral", "primary", "physicalColors", "Object", "keys", "reduce", "acc", "palette", "isBroad", "paletteConfig", "curve", "curvePathFromPalette", "hexToLch", "defaultShades", "paletteShadesFromCurve", "reverse", "renderCssValue", "shadeNumber", "labToHex", "k2", "k1", "l1", "a1", "b1", "floor", "l2", "a2", "b2", "ceil", "semanticColors", "scrim", "light", "dark", "attention", "deck", "base", "fg", "fgHover", "description", "subdued", "error", "baseGlass", "input", "modal", "modalSelected", "hover", "accent", "accentHover", "accentFocusIndicator", "unAccent", "unAccentHover", "separator", "inverse", "transparent", "unavailable", "tailwindcssForms", "merge", "tailwindScrollbar", "tailwindColors", "defaultConfig", "tailwindcssLogical", "tailwindcssRadix", "plugin", "semanticColors", "plugin", "addUtilities", "theme", "e", "values", "semanticColorUtilities", "Object", "entries", "map", "key", "value", "color", "fg", "light", "dark", "accentColor", "backgroundColor", "borderColor", "outlineColor", "tailwindConfig", "env", "content", "extensions", "darkMode", "theme", "fontFamily", "body", "defaultConfig", "sans", "mono", "extend", "merge", "screens", "raw", "colors", "physicalColors", "slate", "tailwindColors", "gray", "zinc", "stone", "success", "emerald", "warning", "amber", "error", "rose", "info", "cyan", "transparent", "current", "white", "black", "semanticColors", "fontSize", "xs", "lineHeight", "sm", "base", "lg", "xl", "outlineWidth", "boxShadow", "slider", "transitionProperty", "keyframes", "slideDownAndFade", "from", "opacity", "transform", "to", "slideLeftAndFade", "slideUpAndFade", "slideRightAndFade", "left", "width", "animation", "spin", "shimmer", "plugins", "semanticColorsPlugin", "tailwindcssLogical", "tailwindcssForms", "tailwindcssRadix", "tailwindScrollbar", "mode", "future", "hoverOnlyWhenSupported", "arrow", "groupArrow", "coarseBlockSize", "coarseTextPadding", "coarseButtonPadding", "coarseDimensions", "coarseButtonDimensions", "fineBlockSize", "fineTextPadding", "fineButtonPadding", "fineDimensions", "fineButtonDimensions", "densityBlockSize", "density", "textBlockWidth", "staticDisabled", "dataDisabled", "contentElevation", "_", "surfaceElevation", "elevation", "focusRing", "dropRing", "dropRingInner", "subduedFocus", "staticFocusRing", "group", "props", "elevation", "surfaceElevation", "hoverColors", "ghostHover", "subtleHover", "hoverableControls", "hoverableFocusedKeyboardControls", "hoverableFocusedWithinControls", "hoverableFocusedControls", "staticHoverableControls", "hoverableOpenControlItem", "hoverableControlItem", "hueTokenValueShades", "cursorLightValue", "cursorDarkValue", "hueTokenThemes", "red", "text", "textHover", "fill", "orange", "amber", "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue", "indigo", "violet", "purple", "fuchsia", "pink", "rose", "hueTokens", "Object", "keys", "reduce", "acc", "huePalette", "physicalColors", "hueTheme", "hue", "bounceLayout", "fixedInsetFlexLayout", "popperMotion", "dialogMotion", "separatorBorderColor", "inlineSeparator", "blockSeparator", "ghostSelectedCurrent", "ghostHover", "ghostHighlighted", "ghostSelectedTrackingInterFromNormal", "ghostSelected", "staticGhostSelectedCurrent", "current", "selected", "staticGhostSelected", "shimmer", "strongShimmer", "baseSurface", "fixedSurface", "fixedBorder", "groupSurface", "groupBorder", "modalSurface", "attentionSurface", "accentSurface", "extendTailwindMerge", "validators", "mergeConfigs", "validators", "getLength", "validators", "isLength", "isArbitraryLength", "getLengthWithAuto", "getLengthWithEmpty", "getAny", "isAny", "getRounded", "isTshirtSize", "classGroupsConfig", "float", "clear", "resize", "text", "bs", "is", "mlb", "mli", "mbs", "mbe", "mis", "mie", "plb", "pli", "pbs", "pbe", "pis", "pie", "withLogical", "prevConfig", "mergeConfigs", "extend", "classGroups", "conflictingClassGroups", "p", "m", "overscroll", "rounded", "border", "semanticColorClasses", "Object", "keys", "semanticColors", "mx", "extendTailwindMerge", "extend", "classGroups", "validators", "isArbitraryNumber", "foreground", "map", "value", "surface", "separator", "withLogical", "sizeWidthMap", "Map", "sizeHeightMap", "sizes", "Set", "keys", "getSizeHeight", "get", "bind", "getSizeWidth", "getSize", "size", "mx", "computeSize", "value", "defaultSize", "has", "wholeSeries", "Math", "floor", "halfSeries", "doubleSeries", "quadrupleSeries", "sizeValue", "placeholderText", "staticPlaceholderText", "descriptionText", "descriptionTextPrimary", "chromeText", "successText", "infoText", "warningText", "errorText", "valenceColorText", "valence", "undefined", "neutralMessageColors", "successMessageColors", "infoMessageColors", "warningMessageColors", "errorMessageColors", "messageValence", "anchoredOverflowRoot", "_props", "etc", "mx", "anchoredOverflowAnchor", "anchoredOverflowTheme", "root", "anchor", "avatarRoot", "size", "inGroup", "etc", "mx", "getSize", "avatarLabel", "srOnly", "avatarDescription", "descriptionText", "avatarFrame", "variant", "avatarStatusIcon", "status", "avatarRing", "animation", "avatarFallbackText", "_props", "avatarGroup", "avatarGroupLabel", "getSizeHeight", "avatarGroupDescription", "avatarTheme", "root", "label", "description", "statusIcon", "frame", "ring", "fallbackText", "group", "groupLabel", "groupDescription", "breadcrumbRoot", "_props", "etc", "mx", "breadcrumbList", "breadcrumbListItem", "breadcrumbCurrent", "breadcrumbSeparator", "breadcrumbTheme", "root", "list", "listItem", "current", "separator", "primaryButtonColors", "staticDefaultButtonColors", "defaultButtonColors", "ghostButtonColors", "ghostHover", "buttonRoot", "_props", "etc", "mx", "buttonGroup", "props", "contentElevation", "elevation", "buttonTheme", "root", "group", "dialogLayoutFragment", "dialogOverlay", "_props", "etc", "mx", "dialogContent", "inOverlayLayout", "elevation", "dialogMotion", "surfaceElevation", "groupBorder", "focusRing", "dialogTitle", "srOnly", "dialogDescription", "descriptionText", "dialogTheme", "overlay", "content", "title", "description", "menuViewport", "_props", "etc", "mx", "menuContent", "popperMotion", "modalSurface", "surfaceElevation", "elevation", "menuItem", "subduedFocus", "dataDisabled", "menuSeparator", "menuGroupLabel", "descriptionText", "menuArrow", "arrow", "menuTheme", "content", "viewport", "item", "separator", "groupLabel", "neutralInputValence", "successInputValence", "infoInputValence", "warningInputValence", "errorInputValence", "textInputSurfaceFocus", "textInputSurfaceHover", "booleanInputSurface", "booleanInputSurfaceHover", "inputValence", "valence", "sharedSubduedInputStyles", "props", "density", "fineBlockSize", "coarseBlockSize", "placeholderText", "subduedFocus", "disabled", "staticDisabled", "sharedDefaultInputStyles", "fineDimensions", "coarseDimensions", "sharedStaticInputStyles", "focused", "validationValence", "staticFocusRing", "inputInput", "etc", "variant", "mx", "focusRing", "inputCheckbox", "size", "getSize", "inputCheckboxIndicator", "computeSize", "sizeValue", "inputSwitch", "getSizeHeight", "getSizeWidth", "inputSwitchThumb", "inputWithSegmentsInput", "inputLabel", "srOnly", "inputDescription", "descriptionText", "inputDescriptionAndValidation", "inputValidation", "valenceColorText", "inputTheme", "input", "inputWithSegments", "checkbox", "checkboxIndicator", "label", "description", "validation", "switch", "switchThumb", "descriptionAndValidation", "linkRoot", "variant", "etc", "mx", "focusRing", "linkTheme", "root", "listRoot", "_", "etc", "mx", "listItem", "collapsible", "listItemEndcap", "density", "getSize", "listItemHeading", "densityBlockSize", "listItemDragHandleIcon", "_props", "listItemOpenTrigger", "ghostHover", "focusRing", "listItemOpenTriggerIcon", "listTheme", "root", "item", "endcap", "heading", "dragHandleIcon", "openTrigger", "openTriggerIcon", "topbarBlockPaddingStart", "bottombarBlockPaddingEnd", "sidebarSlots", "start", "width", "sidebar", "content", "notch", "end", "mainSidebar", "_", "etc", "mx", "fixedBorder", "fixedSurface", "mainContent", "bounce", "bounceLayout", "mainOverlay", "mainNotch", "mainTheme", "overlay", "messageRoot", "valence", "elevation", "etc", "mx", "contentElevation", "messageValence", "messageTitle", "_props", "messageBody", "messageTheme", "root", "title", "body", "popoverViewport", "constrainInline", "constrainBlock", "etc", "mx", "popoverContent", "_props", "modalSurface", "surfaceElevation", "elevation", "focusRing", "popoverArrow", "groupArrow", "popoverTheme", "content", "viewport", "arrow", "scrollAreaRoot", "_props", "etc", "mx", "scrollAreaViewport", "scrollAreaScrollbar", "scrollAreaThumb", "scrollAreaCorner", "scrollAreaTheme", "root", "viewport", "scrollbar", "thumb", "corner", "selectContent", "elevation", "etc", "mx", "modalSurface", "surfaceElevation", "selectItem", "_props", "ghostHighlighted", "selectItemIndicator", "selectArrow", "arrow", "selectSeparator", "blockSeparator", "separatorBorderColor", "selectScrollButton", "selectTriggerIcon", "getSize", "selectTheme", "content", "item", "itemIndicator", "separator", "scrollButton", "triggerIcon", "separatorRoot", "orientation", "etc", "mx", "inlineSeparator", "blockSeparator", "separatorBorderColor", "separatorTheme", "root", "statusRoot", "_props", "etc", "mx", "statusBar", "indeterminate", "statusTheme", "root", "bar", "paletteColorMap", "neutral", "red", "orange", "amber", "yellow", "lime", "green", "emerald", "teal", "cyan", "sky", "blue", "indigo", "violet", "purple", "fuchsia", "pink", "rose", "info", "success", "warning", "error", "tagRoot", "palette", "etc", "mx", "tagTheme", "root", "toastViewport", "_props", "etc", "mx", "toastRoot", "modalSurface", "surfaceElevation", "elevation", "focusRing", "toastBody", "toastActions", "toastTitle", "srOnly", "toastDescription", "descriptionText", "toastTheme", "viewport", "root", "body", "title", "description", "actions", "toolbarRoot", "_props", "etc", "mx", "toolbarTheme", "root", "tooltipContent", "_props", "etc", "mx", "modalSurface", "popperMotion", "surfaceElevation", "elevation", "chromeText", "tooltipArrow", "arrow", "tooltipTheme", "content", "levelStyles", "Map", "treegridRoot", "_", "etc", "mx", "treegridRow", "level", "get", "Math", "min", "max", "round", "treegridCell", "indent", "treegridTheme", "root", "row", "cell", "get", "defaultTheme", "themeName", "anchoredOverflow", "anchoredOverflowTheme", "avatar", "avatarTheme", "breadcrumb", "breadcrumbTheme", "button", "buttonTheme", "dialog", "dialogTheme", "menu", "menuTheme", "input", "inputTheme", "link", "linkTheme", "list", "listTheme", "main", "mainTheme", "message", "messageTheme", "popover", "popoverTheme", "select", "selectTheme", "scrollArea", "scrollAreaTheme", "separator", "separatorTheme", "status", "statusTheme", "tag", "tagTheme", "toast", "toastTheme", "toolbar", "toolbarTheme", "tooltip", "tooltipTheme", "treegrid", "treegridTheme", "hue", "hueTheme", "bindTheme", "theme", "path", "defaultClassName", "styleProps", "options", "result", "get", "defaultTx"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"inputs":{"packages/ui/react-ui-theme/src/config/colors.ts":{"bytes":24501,"imports":[{"path":"@ch-ui/colors","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-theme/src/util/semanticColors.ts":{"bytes":7730,"imports":[{"path":"tailwindcss/plugin","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-theme/src/config/tailwind.ts":{"bytes":25513,"imports":[{"path":"@tailwindcss/forms","kind":"import-statement","external":true},{"path":"lodash.merge","kind":"import-statement","external":true},{"path":"tailwind-scrollbar","kind":"import-statement","external":true},{"path":"tailwindcss/colors","kind":"import-statement","external":true},{"path":"tailwindcss/stubs/config.full.js","kind":"import-statement","external":true},{"path":"tailwindcss-logical","kind":"import-statement","external":true},{"path":"tailwindcss-radix","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-theme/src/config/colors.ts","kind":"import-statement","original":"./colors"},{"path":"packages/ui/react-ui-theme/src/util/semanticColors.ts","kind":"import-statement","original":"../util/semanticColors"}],"format":"esm"},"packages/ui/react-ui-theme/src/config/index.ts":{"bytes":591,"imports":[{"path":"packages/ui/react-ui-theme/src/config/colors.ts","kind":"import-statement","original":"./colors"},{"path":"packages/ui/react-ui-theme/src/config/tailwind.ts","kind":"import-statement","original":"./tailwind"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/arrow.ts":{"bytes":1119,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/density.ts":{"bytes":3204,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/dimensions.ts":{"bytes":637,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/disabled.ts":{"bytes":950,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/elevation.ts":{"bytes":1520,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/focus.ts":{"bytes":2915,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/group.ts":{"bytes":1334,"imports":[{"path":"packages/ui/react-ui-theme/src/styles/fragments/elevation.ts","kind":"import-statement","original":"./elevation"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/hover.ts":{"bytes":3222,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/hue.ts":{"bytes":15127,"imports":[{"path":"packages/ui/react-ui-theme/src/config/index.ts","kind":"import-statement","original":"../../config"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/layout.ts":{"bytes":982,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/motion.ts":{"bytes":1298,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/ornament.ts":{"bytes":1070,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/selected.ts":{"bytes":4951,"imports":[{"path":"packages/ui/react-ui-theme/src/styles/fragments/hover.ts","kind":"import-statement","original":"./hover"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/shimmer.ts":{"bytes":1663,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/surface.ts":{"bytes":3865,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/util/withLogical.ts":{"bytes":21246,"imports":[{"path":"tailwind-merge","kind":"import-statement","external":true}],"format":"esm"},"packages/ui/react-ui-theme/src/util/mx.ts":{"bytes":4092,"imports":[{"path":"tailwind-merge","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-theme/src/util/withLogical.ts","kind":"import-statement","original":"./withLogical"},{"path":"packages/ui/react-ui-theme/src/config/index.ts","kind":"import-statement","original":"../config"}],"format":"esm"},"packages/ui/react-ui-theme/src/util/index.ts":{"bytes":489,"imports":[{"path":"packages/ui/react-ui-theme/src/util/mx.ts","kind":"import-statement","original":"./mx"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/size.ts":{"bytes":11933,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/text.ts":{"bytes":1599,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/valence.ts":{"bytes":5673,"imports":[],"format":"esm"},"packages/ui/react-ui-theme/src/styles/fragments/index.ts":{"bytes":1965,"imports":[{"path":"packages/ui/react-ui-theme/src/styles/fragments/arrow.ts","kind":"import-statement","original":"./arrow"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/density.ts","kind":"import-statement","original":"./density"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/dimensions.ts","kind":"import-statement","original":"./dimensions"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/disabled.ts","kind":"import-statement","original":"./disabled"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/elevation.ts","kind":"import-statement","original":"./elevation"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/focus.ts","kind":"import-statement","original":"./focus"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/group.ts","kind":"import-statement","original":"./group"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/hover.ts","kind":"import-statement","original":"./hover"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/hue.ts","kind":"import-statement","original":"./hue"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/layout.ts","kind":"import-statement","original":"./layout"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/motion.ts","kind":"import-statement","original":"./motion"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/ornament.ts","kind":"import-statement","original":"./ornament"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/selected.ts","kind":"import-statement","original":"./selected"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/shimmer.ts","kind":"import-statement","original":"./shimmer"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/surface.ts","kind":"import-statement","original":"./surface"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/size.ts","kind":"import-statement","original":"./size"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/text.ts","kind":"import-statement","original":"./text"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/valence.ts","kind":"import-statement","original":"./valence"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/anchored-overflow.ts":{"bytes":2062,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/avatar.ts":{"bytes":9927,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/breadcrumb.ts":{"bytes":3199,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/button.ts":{"bytes":4969,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/dialog.ts":{"bytes":5100,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/menu.ts":{"bytes":5068,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/input.ts":{"bytes":17842,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/link.ts":{"bytes":2297,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/list.ts":{"bytes":5348,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/main.ts":{"bytes":9521,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/message.ts":{"bytes":2899,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/popover.ts":{"bytes":3570,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/scroll-area.ts":{"bytes":4824,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/select.ts":{"bytes":5723,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/separator.ts":{"bytes":2023,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/status.ts":{"bytes":2437,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/tag.ts":{"bytes":6623,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/toast.ts":{"bytes":5760,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/toolbar.ts":{"bytes":1434,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/tooltip.ts":{"bytes":2601,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"../fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/treegrid.ts":{"bytes":4069,"imports":[{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/components/index.ts":{"bytes":2246,"imports":[{"path":"packages/ui/react-ui-theme/src/styles/components/anchored-overflow.ts","kind":"import-statement","original":"./anchored-overflow"},{"path":"packages/ui/react-ui-theme/src/styles/components/avatar.ts","kind":"import-statement","original":"./avatar"},{"path":"packages/ui/react-ui-theme/src/styles/components/breadcrumb.ts","kind":"import-statement","original":"./breadcrumb"},{"path":"packages/ui/react-ui-theme/src/styles/components/button.ts","kind":"import-statement","original":"./button"},{"path":"packages/ui/react-ui-theme/src/styles/components/dialog.ts","kind":"import-statement","original":"./dialog"},{"path":"packages/ui/react-ui-theme/src/styles/components/menu.ts","kind":"import-statement","original":"./menu"},{"path":"packages/ui/react-ui-theme/src/styles/components/input.ts","kind":"import-statement","original":"./input"},{"path":"packages/ui/react-ui-theme/src/styles/components/link.ts","kind":"import-statement","original":"./link"},{"path":"packages/ui/react-ui-theme/src/styles/components/list.ts","kind":"import-statement","original":"./list"},{"path":"packages/ui/react-ui-theme/src/styles/components/main.ts","kind":"import-statement","original":"./main"},{"path":"packages/ui/react-ui-theme/src/styles/components/message.ts","kind":"import-statement","original":"./message"},{"path":"packages/ui/react-ui-theme/src/styles/components/popover.ts","kind":"import-statement","original":"./popover"},{"path":"packages/ui/react-ui-theme/src/styles/components/scroll-area.ts","kind":"import-statement","original":"./scroll-area"},{"path":"packages/ui/react-ui-theme/src/styles/components/select.ts","kind":"import-statement","original":"./select"},{"path":"packages/ui/react-ui-theme/src/styles/components/separator.ts","kind":"import-statement","original":"./separator"},{"path":"packages/ui/react-ui-theme/src/styles/components/status.ts","kind":"import-statement","original":"./status"},{"path":"packages/ui/react-ui-theme/src/styles/components/tag.ts","kind":"import-statement","original":"./tag"},{"path":"packages/ui/react-ui-theme/src/styles/components/toast.ts","kind":"import-statement","original":"./toast"},{"path":"packages/ui/react-ui-theme/src/styles/components/toolbar.ts","kind":"import-statement","original":"./toolbar"},{"path":"packages/ui/react-ui-theme/src/styles/components/tooltip.ts","kind":"import-statement","original":"./tooltip"},{"path":"packages/ui/react-ui-theme/src/styles/components/treegrid.ts","kind":"import-statement","original":"./treegrid"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/theme.ts":{"bytes":5944,"imports":[{"path":"lodash.get","kind":"import-statement","external":true},{"path":"packages/ui/react-ui-theme/src/styles/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"./fragments"}],"format":"esm"},"packages/ui/react-ui-theme/src/styles/index.ts":{"bytes":685,"imports":[{"path":"packages/ui/react-ui-theme/src/styles/fragments/index.ts","kind":"import-statement","original":"./fragments"},{"path":"packages/ui/react-ui-theme/src/styles/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/ui/react-ui-theme/src/styles/theme.ts","kind":"import-statement","original":"./theme"}],"format":"esm"},"packages/ui/react-ui-theme/src/index.ts":{"bytes":658,"imports":[{"path":"packages/ui/react-ui-theme/src/config/index.ts","kind":"import-statement","original":"./config"},{"path":"packages/ui/react-ui-theme/src/styles/index.ts","kind":"import-statement","original":"./styles"},{"path":"packages/ui/react-ui-theme/src/util/index.ts","kind":"import-statement","original":"./util"}],"format":"esm"}},"outputs":{"packages/ui/react-ui-theme/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":120905},"packages/ui/react-ui-theme/dist/lib/browser/index.mjs":{"imports":[{"path":"@ch-ui/colors","kind":"import-statement","external":true},{"path":"@tailwindcss/forms","kind":"import-statement","external":true},{"path":"lodash.merge","kind":"import-statement","external":true},{"path":"tailwind-scrollbar","kind":"import-statement","external":true},{"path":"tailwindcss/colors","kind":"import-statement","external":true},{"path":"tailwindcss/stubs/config.full.js","kind":"import-statement","external":true},{"path":"tailwindcss-logical","kind":"import-statement","external":true},{"path":"tailwindcss-radix","kind":"import-statement","external":true},{"path":"tailwindcss/plugin","kind":"import-statement","external":true},{"path":"tailwind-merge","kind":"import-statement","external":true},{"path":"tailwind-merge","kind":"import-statement","external":true},{"path":"lodash.get","kind":"import-statement","external":true}],"exports":["accentSurface","anchoredOverflowAnchor","anchoredOverflowRoot","anchoredOverflowTheme","arrow","attentionSurface","avatarDescription","avatarFallbackText","avatarFrame","avatarGroup","avatarGroupDescription","avatarGroupLabel","avatarLabel","avatarRing","avatarRoot","avatarStatusIcon","avatarTheme","baseSurface","bindTheme","blockSeparator","bottombarBlockPaddingEnd","bounceLayout","breadcrumbCurrent","breadcrumbList","breadcrumbListItem","breadcrumbRoot","breadcrumbSeparator","breadcrumbTheme","buttonGroup","buttonRoot","buttonTheme","chromeText","coarseBlockSize","coarseButtonDimensions","coarseButtonPadding","coarseDimensions","coarseTextPadding","computeSize","contentElevation","dataDisabled","defaultButtonColors","defaultTheme","defaultTx","densityBlockSize","descriptionText","descriptionTextPrimary","dialogContent","dialogDescription","dialogMotion","dialogOverlay","dialogTheme","dialogTitle","dropRing","dropRingInner","errorInputValence","errorMessageColors","errorText","fineBlockSize","fineButtonDimensions","fineButtonPadding","fineDimensions","fineTextPadding","fixedBorder","fixedInsetFlexLayout","fixedSurface","focusRing","getSize","getSizeHeight","getSizeWidth","ghostButtonColors","ghostHighlighted","ghostHover","ghostSelected","ghostSelectedCurrent","ghostSelectedTrackingInterFromNormal","group","groupArrow","groupBorder","groupSurface","hoverColors","hoverableControlItem","hoverableControls","hoverableFocusedControls","hoverableFocusedKeyboardControls","hoverableFocusedWithinControls","hoverableOpenControlItem","hueTheme","hueTokenThemes","hueTokens","infoInputValence","infoMessageColors","infoText","inlineSeparator","inputCheckbox","inputCheckboxIndicator","inputDescription","inputDescriptionAndValidation","inputInput","inputLabel","inputSwitch","inputSwitchThumb","inputTheme","inputValence","inputValidation","inputWithSegmentsInput","linkRoot","linkTheme","listItem","listItemDragHandleIcon","listItemEndcap","listItemHeading","listItemOpenTrigger","listItemOpenTriggerIcon","listRoot","listTheme","mainContent","mainNotch","mainOverlay","mainSidebar","mainTheme","menuArrow","menuContent","menuGroupLabel","menuItem","menuSeparator","menuTheme","menuViewport","messageBody","messageRoot","messageTheme","messageTitle","messageValence","modalSurface","mx","neutralInputValence","neutralMessageColors","paletteConfigs","physicalColors","placeholderText","popoverArrow","popoverContent","popoverTheme","popoverViewport","popperMotion","primaryButtonColors","scrollAreaCorner","scrollAreaRoot","scrollAreaScrollbar","scrollAreaTheme","scrollAreaThumb","scrollAreaViewport","selectArrow","selectContent","selectItem","selectItemIndicator","selectScrollButton","selectSeparator","selectTheme","selectTriggerIcon","semanticColors","separatorBorderColor","separatorRoot","separatorTheme","shimmer","sizeHeightMap","sizeValue","sizeWidthMap","staticDefaultButtonColors","staticDisabled","staticFocusRing","staticGhostSelected","staticGhostSelectedCurrent","staticHoverableControls","staticPlaceholderText","statusBar","statusRoot","statusTheme","strongShimmer","subduedFocus","subtleHover","successInputValence","successMessageColors","successText","surfaceElevation","tagRoot","tagTheme","tailwindConfig","textBlockWidth","toastActions","toastBody","toastDescription","toastRoot","toastTheme","toastTitle","toastViewport","toolbarRoot","toolbarTheme","tooltipArrow","tooltipContent","tooltipTheme","topbarBlockPaddingStart","treegridCell","treegridRoot","treegridRow","treegridTheme","valenceColorText","warningInputValence","warningMessageColors","warningText"],"entryPoint":"packages/ui/react-ui-theme/src/index.ts","inputs":{"packages/ui/react-ui-theme/src/config/colors.ts":{"bytesInOutput":6069},"packages/ui/react-ui-theme/src/config/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/config/tailwind.ts":{"bytesInOutput":6841},"packages/ui/react-ui-theme/src/util/semanticColors.ts":{"bytesInOutput":1511},"packages/ui/react-ui-theme/src/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/styles/fragments/arrow.ts":{"bytesInOutput":125},"packages/ui/react-ui-theme/src/styles/fragments/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/styles/fragments/density.ts":{"bytesInOutput":610},"packages/ui/react-ui-theme/src/styles/fragments/dimensions.ts":{"bytesInOutput":48},"packages/ui/react-ui-theme/src/styles/fragments/disabled.ts":{"bytesInOutput":150},"packages/ui/react-ui-theme/src/styles/fragments/elevation.ts":{"bytesInOutput":188},"packages/ui/react-ui-theme/src/styles/fragments/focus.ts":{"bytesInOutput":822},"packages/ui/react-ui-theme/src/styles/fragments/group.ts":{"bytesInOutput":148},"packages/ui/react-ui-theme/src/styles/fragments/hover.ts":{"bytesInOutput":754},"packages/ui/react-ui-theme/src/styles/fragments/hue.ts":{"bytesInOutput":4378},"packages/ui/react-ui-theme/src/styles/fragments/layout.ts":{"bytesInOutput":160},"packages/ui/react-ui-theme/src/styles/fragments/motion.ts":{"bytesInOutput":300},"packages/ui/react-ui-theme/src/styles/fragments/ornament.ts":{"bytesInOutput":157},"packages/ui/react-ui-theme/src/styles/fragments/selected.ts":{"bytesInOutput":1319},"packages/ui/react-ui-theme/src/styles/fragments/shimmer.ts":{"bytesInOutput":456},"packages/ui/react-ui-theme/src/styles/fragments/surface.ts":{"bytesInOutput":371},"packages/ui/react-ui-theme/src/util/mx.ts":{"bytesInOutput":848},"packages/ui/react-ui-theme/src/util/withLogical.ts":{"bytesInOutput":6396},"packages/ui/react-ui-theme/src/util/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/styles/fragments/size.ts":{"bytesInOutput":3091},"packages/ui/react-ui-theme/src/styles/fragments/text.ts":{"bytesInOutput":308},"packages/ui/react-ui-theme/src/styles/fragments/valence.ts":{"bytesInOutput":1538},"packages/ui/react-ui-theme/src/styles/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/styles/components/anchored-overflow.ts":{"bytesInOutput":282},"packages/ui/react-ui-theme/src/styles/components/index.ts":{"bytesInOutput":0},"packages/ui/react-ui-theme/src/styles/components/avatar.ts":{"bytesInOutput":2174},"packages/ui/react-ui-theme/src/styles/components/breadcrumb.ts":{"bytesInOutput":515},"packages/ui/react-ui-theme/src/styles/components/button.ts":{"bytesInOutput":1117},"packages/ui/react-ui-theme/src/styles/components/dialog.ts":{"bytesInOutput":1027},"packages/ui/react-ui-theme/src/styles/components/menu.ts":{"bytesInOutput":918},"packages/ui/react-ui-theme/src/styles/components/input.ts":{"bytesInOutput":4095},"packages/ui/react-ui-theme/src/styles/components/link.ts":{"bytesInOutput":359},"packages/ui/react-ui-theme/src/styles/components/list.ts":{"bytesInOutput":949},"packages/ui/react-ui-theme/src/styles/components/main.ts":{"bytesInOutput":2508},"packages/ui/react-ui-theme/src/styles/components/message.ts":{"bytesInOutput":389},"packages/ui/react-ui-theme/src/styles/components/popover.ts":{"bytesInOutput":583},"packages/ui/react-ui-theme/src/styles/components/scroll-area.ts":{"bytesInOutput":1155},"packages/ui/react-ui-theme/src/styles/components/select.ts":{"bytesInOutput":1046},"packages/ui/react-ui-theme/src/styles/components/separator.ts":{"bytesInOutput":194},"packages/ui/react-ui-theme/src/styles/components/status.ts":{"bytesInOutput":364},"packages/ui/react-ui-theme/src/styles/components/tag.ts":{"bytesInOutput":1932},"packages/ui/react-ui-theme/src/styles/components/toast.ts":{"bytesInOutput":1239},"packages/ui/react-ui-theme/src/styles/components/toolbar.ts":{"bytesInOutput":143},"packages/ui/react-ui-theme/src/styles/components/tooltip.ts":{"bytesInOutput":329},"packages/ui/react-ui-theme/src/styles/components/treegrid.ts":{"bytesInOutput":839},"packages/ui/react-ui-theme/src/styles/theme.ts":{"bytesInOutput":882}},"bytes":66361}}}
|