@sanity/ui 2.9.0-corel.0 → 3.0.0-static.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/ui.js +6 -0
- package/dist/_chunks-cjs/buildCommand.js +2836 -0
- package/dist/_chunks-cjs/buildCommand.js.map +1 -0
- package/dist/_chunks-cjs/getTheme_v2.js +1 -27
- package/dist/_chunks-cjs/getTheme_v2.js.map +1 -1
- package/dist/_chunks-es/getTheme_v2.mjs +1 -27
- package/dist/_chunks-es/getTheme_v2.mjs.map +1 -1
- package/dist/_legacy/getTheme_v2.esm.js +1 -27
- package/dist/_legacy/getTheme_v2.esm.js.map +1 -1
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +23 -0
- package/dist/cli.js.map +1 -0
- package/dist/css.d.mts +943 -0
- package/dist/css.d.ts +943 -0
- package/dist/css.esm.js +3135 -0
- package/dist/css.esm.js.map +1 -0
- package/dist/css.js +3135 -0
- package/dist/css.js.map +1 -0
- package/dist/css.mjs +3135 -0
- package/dist/css.mjs.map +1 -0
- package/dist/index.d.mts +175 -164
- package/dist/index.d.ts +175 -164
- package/dist/index.esm.js +864 -1955
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +870 -1962
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +864 -1955
- package/dist/index.mjs.map +1 -1
- package/dist/sanity-theme.css +25 -0
- package/dist/system.css +2953 -0
- package/dist/theme.d.mts +84 -22
- package/dist/theme.d.ts +84 -22
- package/dist/theme.esm.js +232 -283
- package/dist/theme.esm.js.map +1 -1
- package/dist/theme.js +232 -283
- package/dist/theme.js.map +1 -1
- package/dist/theme.mjs +232 -283
- package/dist/theme.mjs.map +1 -1
- package/exports/css.ts +1 -0
- package/package.json +25 -4
- package/src/core/__workshop__/constants.ts +15 -15
- package/src/core/__workshop__/fontsPlugin.tsx +1 -1
- package/src/core/components/autocomplete/autocomplete.styles.tsx +1 -1
- package/src/core/components/autocomplete/autocomplete.tsx +12 -4
- package/src/core/components/breadcrumbs/__workshop__/example.tsx +1 -3
- package/src/core/components/breadcrumbs/__workshop__/index.ts +0 -5
- package/src/core/components/breadcrumbs/breadcrumbs.styles.ts +14 -2
- package/src/core/components/breadcrumbs/breadcrumbs.tsx +14 -9
- package/src/core/components/dialog/__workshop__/panes.tsx +1 -1
- package/src/core/components/dialog/dialog.tsx +77 -92
- package/src/core/components/hotkeys/hotkeys.tsx +18 -29
- package/src/core/components/menu/menu.tsx +8 -5
- package/src/core/components/menu/menuDivider.ts +2 -1
- package/src/core/components/menu/menuGroup.tsx +16 -8
- package/src/core/components/menu/menuItem.tsx +23 -14
- package/src/core/components/skeleton/skeleton.tsx +1 -1
- package/src/core/components/skeleton/styles.ts +1 -1
- package/src/core/components/skeleton/textSkeleton.tsx +1 -1
- package/src/core/components/tab/tab.tsx +6 -7
- package/src/core/components/tab/tabList.tsx +3 -2
- package/src/core/components/toast/styles.ts +1 -1
- package/src/core/components/toast/toast.tsx +6 -4
- package/src/core/components/toast/toastProvider.tsx +31 -22
- package/src/core/components/tree/style.ts +1 -1
- package/src/core/components/tree/tree.tsx +8 -2
- package/src/core/components/tree/treeGroup.tsx +1 -1
- package/src/core/components/tree/treeItem.tsx +38 -25
- package/src/core/components/tree/types.ts +5 -1
- package/src/core/lib/styled/elements.ts +135 -0
- package/src/core/lib/styled/index.ts +2 -0
- package/src/core/lib/styled/members.ts +15 -0
- package/src/core/lib/styled/styled.ts +79 -0
- package/src/core/primitives/_selectable/selectable.tsx +27 -14
- package/src/core/primitives/avatar/avatar.tsx +52 -32
- package/src/core/primitives/avatar/avatarCounter.tsx +1 -1
- package/src/core/primitives/avatar/avatarStack.tsx +1 -1
- package/src/core/primitives/badge/__workshop__/tones.tsx +9 -16
- package/src/core/primitives/badge/badge.tsx +18 -20
- package/src/core/primitives/box/box.tsx +62 -74
- package/src/core/primitives/button/__workshop__/props.tsx +3 -1
- package/src/core/primitives/button/__workshop__/sanityUploadButton.tsx +1 -1
- package/src/core/primitives/button/__workshop__/styled1.tsx +1 -1
- package/src/core/primitives/button/__workshop__/styled2.tsx +1 -1
- package/src/core/primitives/button/button.tsx +38 -45
- package/src/core/primitives/button/styles.ts +2 -2
- package/src/core/primitives/card/RootCardContext.ts +3 -0
- package/src/core/primitives/card/__workshop__/selected.tsx +1 -1
- package/src/core/primitives/card/__workshop__/styled.tsx +1 -1
- package/src/core/primitives/card/card.tsx +44 -46
- package/src/core/primitives/card/styles.ts +1 -1
- package/src/core/primitives/checkbox/checkbox.tsx +6 -8
- package/src/core/primitives/code/code.tsx +23 -12
- package/src/core/primitives/code/styles.ts +1 -1
- package/src/core/primitives/container/container.tsx +7 -15
- package/src/core/primitives/flex/__workshop__/example.tsx +1 -1
- package/src/core/primitives/flex/flex.tsx +6 -19
- package/src/core/primitives/grid/grid.tsx +2 -1
- package/src/core/primitives/heading/heading.tsx +32 -19
- package/src/core/primitives/heading/styles.ts +1 -1
- package/src/core/primitives/inline/inline.tsx +22 -13
- package/src/core/primitives/kbd/kbd.tsx +30 -37
- package/src/core/primitives/label/label.tsx +15 -4
- package/src/core/primitives/label/styles.ts +1 -1
- package/src/core/primitives/popover/__workshop__/RecursiveStory.tsx +0 -1
- package/src/core/primitives/popover/popover.tsx +21 -15
- package/src/core/primitives/popover/popoverCard.tsx +36 -38
- package/src/core/primitives/radio/radio.tsx +1 -1
- package/src/core/primitives/radio/styles.ts +1 -1
- package/src/core/primitives/select/select.tsx +1 -1
- package/src/core/primitives/select/styles.ts +1 -1
- package/src/core/primitives/spinner/spinner.tsx +6 -20
- package/src/core/primitives/stack/stack.tsx +12 -10
- package/src/core/primitives/switch/styles.ts +9 -9
- package/src/core/primitives/switch/switch.tsx +20 -21
- package/src/core/primitives/text/__workshop__/colored.tsx +1 -1
- package/src/core/primitives/text/styles.ts +1 -2
- package/src/core/primitives/text/text.tsx +17 -21
- package/src/core/primitives/textArea/textArea.tsx +1 -1
- package/src/core/primitives/textInput/__workshop__/plain.tsx +1 -1
- package/src/core/primitives/textInput/textInput.tsx +176 -123
- package/src/core/primitives/tooltip/tooltip.test.tsx +1 -0
- package/src/core/primitives/tooltip/tooltip.tsx +13 -13
- package/src/core/primitives/tooltip/tooltipCard.tsx +15 -14
- package/src/core/primitives/types.ts +35 -16
- package/src/core/styles/border/borderStyle.ts +6 -0
- package/src/core/styles/border/types.ts +1 -0
- package/src/core/styles/box/boxStyle.ts +6 -0
- package/src/core/styles/card/_cardColorStyle.ts +0 -8
- package/src/core/styles/flex/flexStyle.ts +0 -18
- package/src/core/styles/flex/types.ts +1 -3
- package/src/core/styles/grid/gridStyle.ts +0 -10
- package/src/core/styles/helpers.ts +9 -0
- package/src/core/styles/input/textInputStyle.ts +1 -1
- package/src/core/theme/__workshop__/build/Root.tsx +1 -1
- package/src/core/theme/themeProvider.tsx +1 -1
- package/src/core/theme/useTheme.ts +1 -1
- package/src/core/types/avatar.ts +6 -1
- package/src/core/types/button.ts +1 -0
- package/src/core/types/flex.ts +27 -26
- package/src/core/types/gridItem.ts +32 -24
- package/src/core/types/radius.ts +7 -4
- package/src/core/utils/arrow/arrow.tsx +1 -1
- package/src/core/utils/elementQuery/__workshop__/customMedia.tsx +1 -1
- package/src/core/utils/layer/layer.tsx +28 -11
- package/src/core/utils/srOnly/srOnly.tsx +1 -1
- package/src/core/utils/virtualList/virtualList.tsx +1 -1
- package/src/css/_resp.ts +28 -0
- package/src/css/cli/buildCommand.ts +36 -0
- package/src/css/cli/index.ts +38 -0
- package/src/css/compile/comileRules.ts +59 -0
- package/src/css/compile/compileRule.ts +58 -0
- package/src/css/compile/compileSystem.ts +7 -0
- package/src/css/compile/compileTheme.ts +509 -0
- package/src/css/components/breadcrumbs/breadcrumbs.ts +5 -0
- package/src/css/components/breadcrumbs/index.ts +1 -0
- package/src/css/components/breadcrumbs/rules.ts +7 -0
- package/src/css/components/dialog/classes.ts +29 -0
- package/src/css/components/dialog/index.ts +1 -0
- package/src/css/components/dialog/rules.ts +75 -0
- package/src/css/components/tree/index.ts +1 -0
- package/src/css/components/tree/rules.ts +52 -0
- package/src/css/components/tree/tree.ts +5 -0
- package/src/css/composeClassNames.ts +3 -0
- package/src/css/index.ts +47 -0
- package/src/css/primitives/avatar/avatar.ts +32 -0
- package/src/css/primitives/avatar/index.ts +2 -0
- package/src/css/primitives/avatar/rules.ts +190 -0
- package/src/css/primitives/avatar/types.ts +9 -0
- package/src/css/primitives/badge/badge.ts +8 -0
- package/src/css/primitives/badge/index.ts +2 -0
- package/src/css/primitives/badge/rules.ts +25 -0
- package/src/css/primitives/badge/types.ts +8 -0
- package/src/css/primitives/box/box.ts +34 -0
- package/src/css/primitives/box/index.ts +2 -0
- package/src/css/primitives/box/rules.ts +25 -0
- package/src/css/primitives/box/types.ts +49 -0
- package/src/css/primitives/button/button.ts +26 -0
- package/src/css/primitives/button/index.ts +1 -0
- package/src/css/primitives/button/rules.ts +58 -0
- package/src/css/primitives/card/card.ts +21 -0
- package/src/css/primitives/card/index.ts +1 -0
- package/src/css/primitives/card/rules.ts +93 -0
- package/src/{core/primitives/checkbox/styles.ts → css/primitives/checkbox/__styles.ts} +3 -3
- package/src/css/primitives/checkbox/checkbox.ts +9 -0
- package/src/css/primitives/checkbox/index.ts +1 -0
- package/src/css/primitives/checkbox/rules.ts +136 -0
- package/src/css/primitives/code/code.ts +9 -0
- package/src/css/primitives/code/index.ts +2 -0
- package/src/css/primitives/code/rules.ts +71 -0
- package/src/css/primitives/code/types.ts +10 -0
- package/src/css/primitives/container/container.ts +7 -0
- package/src/css/primitives/container/index.ts +2 -0
- package/src/css/primitives/container/rules.ts +8 -0
- package/src/css/primitives/container/types.ts +6 -0
- package/src/css/primitives/heading/heading.ts +16 -0
- package/src/css/primitives/heading/index.ts +2 -0
- package/src/css/primitives/heading/rules.ts +84 -0
- package/src/css/primitives/heading/types.ts +12 -0
- package/src/css/primitives/kbd/index.ts +2 -0
- package/src/css/primitives/kbd/kbd.ts +7 -0
- package/src/css/primitives/kbd/rules.ts +20 -0
- package/src/css/primitives/kbd/types.ts +5 -0
- package/src/css/primitives/label/index.ts +2 -0
- package/src/css/primitives/label/label.ts +16 -0
- package/src/css/primitives/label/rules.ts +85 -0
- package/src/css/primitives/label/types.ts +12 -0
- package/src/css/primitives/popover/index.ts +1 -0
- package/src/css/primitives/popover/popover.ts +5 -0
- package/src/css/primitives/popover/rules.ts +5 -0
- package/src/css/primitives/radio/index.ts +1 -0
- package/src/css/primitives/radio/radio.ts +5 -0
- package/src/css/primitives/radio/rules.ts +5 -0
- package/src/css/primitives/select/index.ts +1 -0
- package/src/css/primitives/select/rules.ts +5 -0
- package/src/css/primitives/select/select.ts +5 -0
- package/src/{core/primitives/_selectable/style.ts → css/primitives/selectable/__style.ts} +5 -4
- package/src/css/primitives/selectable/index.ts +2 -0
- package/src/css/primitives/selectable/rules.ts +27 -0
- package/src/css/primitives/selectable/selectable.ts +9 -0
- package/src/css/primitives/selectable/types.ts +6 -0
- package/src/css/primitives/spinner/index.ts +1 -0
- package/src/css/primitives/spinner/rules.ts +22 -0
- package/src/css/primitives/spinner/spinner.ts +5 -0
- package/src/css/primitives/switch/index.ts +1 -0
- package/src/css/primitives/switch/rules.ts +132 -0
- package/src/css/primitives/switch/switch.ts +5 -0
- package/src/css/primitives/text/index.ts +2 -0
- package/src/css/primitives/text/rules.ts +75 -0
- package/src/css/primitives/text/text.ts +16 -0
- package/src/css/primitives/text/types.ts +11 -0
- package/src/css/primitives/textArea/index.ts +1 -0
- package/src/css/primitives/textArea/rules.ts +5 -0
- package/src/css/primitives/textArea/textArea.ts +5 -0
- package/src/css/primitives/textInput/index.ts +1 -0
- package/src/css/primitives/textInput/rules.ts +226 -0
- package/src/css/primitives/textInput/textInput.ts +7 -0
- package/src/css/primitives/token/rules.ts +45 -0
- package/src/css/primitives/tooltip/index.ts +1 -0
- package/src/css/primitives/tooltip/rules.ts +17 -0
- package/src/css/primitives/tooltip/tooltip.ts +9 -0
- package/src/css/responsiveRules.ts +25 -0
- package/src/css/rules.ts +121 -0
- package/src/css/styles/border/border.ts +22 -0
- package/src/css/styles/border/index.ts +2 -0
- package/src/css/styles/border/rules.ts +24 -0
- package/src/css/styles/border/types.ts +10 -0
- package/src/css/styles/display/rules.ts +62 -0
- package/src/css/styles/flex/flex.ts +20 -0
- package/src/css/styles/flex/index.ts +2 -0
- package/src/css/styles/flex/rules.ts +28 -0
- package/src/css/styles/flex/types.ts +35 -0
- package/src/css/styles/flexItem/flexItem.ts +8 -0
- package/src/css/styles/flexItem/index.ts +2 -0
- package/src/css/styles/flexItem/rules.ts +11 -0
- package/src/css/styles/flexItem/types.ts +11 -0
- package/src/css/styles/font/font.ts +12 -0
- package/src/css/styles/font/index.ts +2 -0
- package/src/css/styles/font/rules.ts +125 -0
- package/src/css/styles/font/types.ts +6 -0
- package/src/css/styles/gap/gap.ts +8 -0
- package/src/css/styles/gap/index.ts +2 -0
- package/src/css/styles/gap/rules.ts +33 -0
- package/src/css/styles/gap/types.ts +9 -0
- package/src/css/styles/grid/rules.ts +35 -0
- package/src/css/styles/gridItem/gridItem.ts +15 -0
- package/src/css/styles/gridItem/index.ts +2 -0
- package/src/css/styles/gridItem/rules.ts +96 -0
- package/src/css/styles/gridItem/types.ts +41 -0
- package/src/css/styles/height/rules.ts +7 -0
- package/src/css/styles/margin/index.ts +2 -0
- package/src/css/styles/margin/margin.ts +15 -0
- package/src/css/styles/margin/rules.ts +59 -0
- package/src/css/styles/margin/types.ts +11 -0
- package/src/css/styles/maxWidth/index.ts +2 -0
- package/src/css/styles/maxWidth/maxWidth.ts +6 -0
- package/src/css/styles/maxWidth/rules.ts +36 -0
- package/src/css/styles/maxWidth/types.ts +6 -0
- package/src/css/styles/overflow/rules.ts +9 -0
- package/src/css/styles/padding/index.ts +2 -0
- package/src/css/styles/padding/padding.ts +15 -0
- package/src/css/styles/padding/rules.ts +59 -0
- package/src/css/styles/padding/types.ts +12 -0
- package/src/css/styles/pointerEvents/index.ts +2 -0
- package/src/css/styles/pointerEvents/pointerEvents.ts +6 -0
- package/src/css/styles/pointerEvents/rules.ts +11 -0
- package/src/css/styles/pointerEvents/types.ts +7 -0
- package/src/css/styles/position/index.ts +2 -0
- package/src/css/styles/position/position.ts +7 -0
- package/src/css/styles/position/rules.ts +31 -0
- package/src/css/styles/position/types.ts +13 -0
- package/src/css/styles/radius/index.ts +2 -0
- package/src/css/styles/radius/radius.ts +8 -0
- package/src/css/styles/radius/rules.ts +13 -0
- package/src/css/styles/radius/types.ts +7 -0
- package/src/css/styles/shadow/rules.ts +53 -0
- package/src/css/styles/width/index.ts +2 -0
- package/src/css/styles/width/rules.ts +7 -0
- package/src/css/styles/width/types.ts +8 -0
- package/src/css/styles/width/width.ts +6 -0
- package/src/css/types.ts +591 -0
- package/src/css/varNames.ts +381 -0
- package/src/css/vars.ts +313 -0
- package/src/theme/build/_deprecated/color/factory.ts +1 -1
- package/src/theme/build/_deprecated/color/muted/createMuted.ts +2 -2
- package/src/theme/build/buildColorTheme.ts +39 -45
- package/src/theme/build/renderColorTheme.ts +65 -239
- package/src/theme/build/resolveColorTokens.ts +115 -51
- package/src/theme/config/tokens/color/types.ts +18 -4
- package/src/theme/defaults/colorTokens.ts +10 -17
- package/src/theme/defaults/config.ts +1 -1
- package/src/theme/getScopedTheme.ts +2 -9
- package/src/theme/system/_constants.ts +25 -0
- package/src/theme/system/_types.ts +41 -0
- package/src/theme/system/color/_constants.ts +0 -8
- package/src/theme/system/color/badge.ts +7 -3
- package/src/theme/system/index.ts +2 -0
- package/src/theme/system/v0/color/_system.ts +4 -8
- package/src/theme/system/v0/color/color.ts +2 -3
- package/src/theme/versioning/themeColor_v0_v2.ts +0 -26
- package/src/theme/versioning/v0_v2.ts +0 -4
- package/src/core/components/breadcrumbs/__workshop__/buttons.tsx +0 -58
- package/src/core/components/dialog/styles.ts +0 -76
|
@@ -1,27 +1,37 @@
|
|
|
1
1
|
import {
|
|
2
|
-
BoxDisplay,
|
|
3
|
-
BoxHeight,
|
|
4
|
-
BoxOverflow,
|
|
5
|
-
BoxSizing,
|
|
6
|
-
FlexAlign,
|
|
7
|
-
FlexDirection,
|
|
8
|
-
FlexJustify,
|
|
9
|
-
FlexValue,
|
|
10
|
-
FlexWrap,
|
|
11
|
-
GridAutoCols,
|
|
12
|
-
GridAutoFlow,
|
|
13
|
-
GridAutoRows,
|
|
14
2
|
GridItemColumn,
|
|
15
3
|
GridItemColumnEnd,
|
|
16
4
|
GridItemColumnStart,
|
|
17
5
|
GridItemRow,
|
|
18
6
|
GridItemRowEnd,
|
|
19
7
|
GridItemRowStart,
|
|
20
|
-
|
|
8
|
+
type FlexAlign,
|
|
9
|
+
type FlexDirection,
|
|
10
|
+
type FlexJustify,
|
|
11
|
+
type FlexValue,
|
|
12
|
+
type FlexWrap,
|
|
13
|
+
} from '@sanity/ui/css'
|
|
14
|
+
|
|
15
|
+
import {
|
|
16
|
+
type BoxDisplay,
|
|
17
|
+
type BoxHeight,
|
|
18
|
+
type BoxOverflow,
|
|
19
|
+
type BoxSizing,
|
|
20
|
+
type GridAutoCols,
|
|
21
|
+
type GridAutoFlow,
|
|
22
|
+
type GridAutoRows,
|
|
23
|
+
// type GridItemColumn,
|
|
24
|
+
// type GridItemColumnEnd,
|
|
25
|
+
// type GridItemColumnStart,
|
|
26
|
+
// type GridItemRow,
|
|
27
|
+
// type GridItemRowEnd,
|
|
28
|
+
// type GridItemRowStart,
|
|
29
|
+
type Radius,
|
|
21
30
|
} from '../types'
|
|
22
31
|
|
|
23
32
|
/**
|
|
24
33
|
* @public
|
|
34
|
+
* @deprecated
|
|
25
35
|
*/
|
|
26
36
|
export interface ResponsiveBorderProps {
|
|
27
37
|
border?: boolean | boolean[]
|
|
@@ -33,6 +43,7 @@ export interface ResponsiveBorderProps {
|
|
|
33
43
|
|
|
34
44
|
/**
|
|
35
45
|
* @public
|
|
46
|
+
* @deprecated
|
|
36
47
|
*/
|
|
37
48
|
export interface ResponsiveBoxProps {
|
|
38
49
|
display?: BoxDisplay | BoxDisplay[]
|
|
@@ -43,6 +54,7 @@ export interface ResponsiveBoxProps {
|
|
|
43
54
|
|
|
44
55
|
/**
|
|
45
56
|
* @public
|
|
57
|
+
* @deprecated
|
|
46
58
|
*/
|
|
47
59
|
export interface ResponsiveFlexProps {
|
|
48
60
|
align?: FlexAlign | FlexAlign[]
|
|
@@ -53,6 +65,7 @@ export interface ResponsiveFlexProps {
|
|
|
53
65
|
|
|
54
66
|
/**
|
|
55
67
|
* @public
|
|
68
|
+
* @deprecated
|
|
56
69
|
*/
|
|
57
70
|
export interface ResponsiveFlexItemProps {
|
|
58
71
|
/** Sets the flex CSS attribute. The property is responsive. */
|
|
@@ -67,14 +80,15 @@ export interface ResponsiveGridProps {
|
|
|
67
80
|
autoCols?: GridAutoCols | GridAutoCols[]
|
|
68
81
|
autoFlow?: GridAutoFlow | GridAutoFlow[]
|
|
69
82
|
columns?: number | number[]
|
|
70
|
-
gap?: number | number[]
|
|
71
|
-
gapX?: number | number[]
|
|
72
|
-
gapY?: number | number[]
|
|
83
|
+
// gap?: number | number[]
|
|
84
|
+
// gapX?: number | number[]
|
|
85
|
+
// gapY?: number | number[]
|
|
73
86
|
rows?: number | number[]
|
|
74
87
|
}
|
|
75
88
|
|
|
76
89
|
/**
|
|
77
90
|
* @public
|
|
91
|
+
* @deprecated
|
|
78
92
|
*/
|
|
79
93
|
export interface ResponsiveGridItemProps {
|
|
80
94
|
column?: GridItemColumn | GridItemColumn[]
|
|
@@ -87,6 +101,7 @@ export interface ResponsiveGridItemProps {
|
|
|
87
101
|
|
|
88
102
|
/**
|
|
89
103
|
* @public
|
|
104
|
+
* @deprecated
|
|
90
105
|
*/
|
|
91
106
|
export interface ResponsiveMarginProps {
|
|
92
107
|
/** Applies margins to all sides. The property is responsive. */
|
|
@@ -103,6 +118,7 @@ export interface ResponsiveMarginProps {
|
|
|
103
118
|
|
|
104
119
|
/**
|
|
105
120
|
* @public
|
|
121
|
+
* @deprecated
|
|
106
122
|
*/
|
|
107
123
|
export interface ResponsivePaddingProps {
|
|
108
124
|
padding?: number | number[]
|
|
@@ -116,6 +132,7 @@ export interface ResponsivePaddingProps {
|
|
|
116
132
|
|
|
117
133
|
/**
|
|
118
134
|
* @public
|
|
135
|
+
* @deprecated
|
|
119
136
|
*/
|
|
120
137
|
export interface ResponsiveRadiusProps {
|
|
121
138
|
radius?: Radius | Radius[]
|
|
@@ -123,6 +140,7 @@ export interface ResponsiveRadiusProps {
|
|
|
123
140
|
|
|
124
141
|
/**
|
|
125
142
|
* @public
|
|
143
|
+
* @deprecated
|
|
126
144
|
*/
|
|
127
145
|
export interface ResponsiveShadowProps {
|
|
128
146
|
shadow?: number | number[]
|
|
@@ -130,6 +148,7 @@ export interface ResponsiveShadowProps {
|
|
|
130
148
|
|
|
131
149
|
/**
|
|
132
150
|
* @public
|
|
151
|
+
* @deprecated
|
|
133
152
|
*/
|
|
134
153
|
export interface ResponsiveWidthProps {
|
|
135
154
|
width?: number | 'auto' | (number | 'auto')[]
|
|
@@ -3,12 +3,14 @@ import {_responsive} from '../helpers'
|
|
|
3
3
|
import {ThemeProps} from '../types'
|
|
4
4
|
import {ResponsiveBorderStyleProps} from './types'
|
|
5
5
|
|
|
6
|
+
/** @deprecated */
|
|
6
7
|
export function responsiveBorderStyle(): Array<
|
|
7
8
|
(props: ResponsiveBorderStyleProps & ThemeProps) => CSSObject[]
|
|
8
9
|
> {
|
|
9
10
|
return [border, borderTop, borderRight, borderBottom, borderLeft]
|
|
10
11
|
}
|
|
11
12
|
|
|
13
|
+
/** @deprecated */
|
|
12
14
|
function border(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
13
15
|
const {card, media} = getTheme_v2(props.theme)
|
|
14
16
|
const borderStyle = `${card.border?.width ?? 1}px solid var(--card-border-color)`
|
|
@@ -18,6 +20,7 @@ function border(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
|
18
20
|
)
|
|
19
21
|
}
|
|
20
22
|
|
|
23
|
+
/** @deprecated */
|
|
21
24
|
function borderTop(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
22
25
|
const {card, media} = getTheme_v2(props.theme)
|
|
23
26
|
const borderStyle = `${card.border?.width ?? 1}px solid var(--card-border-color)`
|
|
@@ -27,6 +30,7 @@ function borderTop(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
|
27
30
|
)
|
|
28
31
|
}
|
|
29
32
|
|
|
33
|
+
/** @deprecated */
|
|
30
34
|
function borderRight(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
31
35
|
const {card, media} = getTheme_v2(props.theme)
|
|
32
36
|
const borderStyle = `${card.border?.width ?? 1}px solid var(--card-border-color)`
|
|
@@ -36,6 +40,7 @@ function borderRight(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
|
36
40
|
)
|
|
37
41
|
}
|
|
38
42
|
|
|
43
|
+
/** @deprecated */
|
|
39
44
|
function borderBottom(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
40
45
|
const {card, media} = getTheme_v2(props.theme)
|
|
41
46
|
const borderStyle = `${card.border?.width ?? 1}px solid var(--card-border-color)`
|
|
@@ -45,6 +50,7 @@ function borderBottom(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
|
45
50
|
)
|
|
46
51
|
}
|
|
47
52
|
|
|
53
|
+
/** @deprecated */
|
|
48
54
|
function borderLeft(props: ResponsiveBorderStyleProps & ThemeProps) {
|
|
49
55
|
const {card, media} = getTheme_v2(props.theme)
|
|
50
56
|
const borderStyle = `${card.border?.width ?? 1}px solid var(--card-border-color)`
|
|
@@ -20,10 +20,12 @@ const BOX_HEIGHT = {
|
|
|
20
20
|
fill: '100%',
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
+
/** @deprecated */
|
|
23
24
|
export function boxStyle(): CSSObject {
|
|
24
25
|
return BASE_STYLE
|
|
25
26
|
}
|
|
26
27
|
|
|
28
|
+
/** @deprecated */
|
|
27
29
|
export function responsiveBoxStyle(): Array<
|
|
28
30
|
(props: ResponsiveBoxStyleProps & ThemeProps) => CSSObject[]
|
|
29
31
|
> {
|
|
@@ -35,6 +37,7 @@ export function responsiveBoxStyle(): Array<
|
|
|
35
37
|
]
|
|
36
38
|
}
|
|
37
39
|
|
|
40
|
+
/** @deprecated */
|
|
38
41
|
function responsiveBoxDisplayStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
39
42
|
const {media} = getTheme_v2(props.theme)
|
|
40
43
|
|
|
@@ -43,6 +46,7 @@ function responsiveBoxDisplayStyle(props: ResponsiveBoxStyleProps & ThemeProps)
|
|
|
43
46
|
}))
|
|
44
47
|
}
|
|
45
48
|
|
|
49
|
+
/** @deprecated */
|
|
46
50
|
function responsiveBoxSizingStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
47
51
|
const {media} = getTheme_v2(props.theme)
|
|
48
52
|
|
|
@@ -51,6 +55,7 @@ function responsiveBoxSizingStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
|
51
55
|
}))
|
|
52
56
|
}
|
|
53
57
|
|
|
58
|
+
/** @deprecated */
|
|
54
59
|
function responsiveBoxHeightStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
55
60
|
const {media} = getTheme_v2(props.theme)
|
|
56
61
|
|
|
@@ -59,6 +64,7 @@ function responsiveBoxHeightStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
|
59
64
|
}))
|
|
60
65
|
}
|
|
61
66
|
|
|
67
|
+
/** @deprecated */
|
|
62
68
|
function responsiveBoxOverflowStyle(props: ResponsiveBoxStyleProps & ThemeProps) {
|
|
63
69
|
const {media} = getTheme_v2(props.theme)
|
|
64
70
|
|
|
@@ -71,14 +71,6 @@ export function _cardColorStyle(
|
|
|
71
71
|
'--card-badge-critical-dot-color': color.badge.critical.dot,
|
|
72
72
|
'--card-badge-critical-fg-color': color.badge.critical.fg,
|
|
73
73
|
'--card-badge-critical-icon-color': color.badge.critical.icon,
|
|
74
|
-
'--card-badge-prospect-bg-color': color.badge.prospect.bg,
|
|
75
|
-
'--card-badge-prospect-dot-color': color.badge.prospect.dot,
|
|
76
|
-
'--card-badge-prospect-fg-color': color.badge.prospect.fg,
|
|
77
|
-
'--card-badge-prospect-icon-color': color.badge.prospect.icon,
|
|
78
|
-
'--card-badge-explore-bg-color': color.badge.explore.bg,
|
|
79
|
-
'--card-badge-explore-dot-color': color.badge.explore.dot,
|
|
80
|
-
'--card-badge-explore-fg-color': color.badge.explore.fg,
|
|
81
|
-
'--card-badge-explore-icon-color': color.badge.explore.icon,
|
|
82
74
|
|
|
83
75
|
'--card-code-bg-color': color.code.bg,
|
|
84
76
|
'--card-code-fg-color': color.code.fg,
|
|
@@ -16,8 +16,6 @@ export function responsiveFlexStyle(): Array<
|
|
|
16
16
|
BASE_STYLE,
|
|
17
17
|
responsiveFlexAlignStyle,
|
|
18
18
|
responsiveFlexGapStyle,
|
|
19
|
-
responsiveFlexGapXStyle,
|
|
20
|
-
responsiveFlexGapYStyle,
|
|
21
19
|
responsiveFlexWrapStyle,
|
|
22
20
|
responsiveFlexJustifyStyle,
|
|
23
21
|
responsiveFlexDirectionStyle,
|
|
@@ -42,22 +40,6 @@ function responsiveFlexGapStyle(props: ResponsiveFlexStyleProps & ThemeProps) {
|
|
|
42
40
|
}))
|
|
43
41
|
}
|
|
44
42
|
|
|
45
|
-
function responsiveFlexGapXStyle(props: ResponsiveFlexStyleProps & ThemeProps) {
|
|
46
|
-
const {media, space} = getTheme_v2(props.theme)
|
|
47
|
-
|
|
48
|
-
return _responsive(media, props.$gapX, (gapX) => ({
|
|
49
|
-
columnGap: gapX ? rem(space[gapX]) : undefined,
|
|
50
|
-
}))
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
function responsiveFlexGapYStyle(props: ResponsiveFlexStyleProps & ThemeProps) {
|
|
54
|
-
const {media, space} = getTheme_v2(props.theme)
|
|
55
|
-
|
|
56
|
-
return _responsive(media, props.$gapY, (gapY) => ({
|
|
57
|
-
rowGap: gapY ? rem(space[gapY]) : undefined,
|
|
58
|
-
}))
|
|
59
|
-
}
|
|
60
|
-
|
|
61
43
|
export function responsiveFlexWrapStyle(props: ResponsiveFlexStyleProps & ThemeProps): CSSObject[] {
|
|
62
44
|
const {media} = getTheme_v2(props.theme)
|
|
63
45
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {FlexAlign, FlexDirection, FlexJustify, FlexValue, FlexWrap} from '
|
|
1
|
+
import {FlexAlign, FlexDirection, FlexJustify, FlexValue, FlexWrap} from '@sanity/ui/css'
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* @internal
|
|
@@ -7,8 +7,6 @@ export interface ResponsiveFlexStyleProps {
|
|
|
7
7
|
$align: FlexAlign[]
|
|
8
8
|
$direction: FlexDirection[]
|
|
9
9
|
$gap: number[]
|
|
10
|
-
$gapX: number[]
|
|
11
|
-
$gapY: number[]
|
|
12
10
|
$justify: FlexJustify[]
|
|
13
11
|
$wrap: FlexWrap[]
|
|
14
12
|
}
|
|
@@ -3,15 +3,6 @@ import {rem, _responsive} from '../helpers'
|
|
|
3
3
|
import {ThemeProps} from '../types'
|
|
4
4
|
import {ResponsiveGridStyleProps} from './types'
|
|
5
5
|
|
|
6
|
-
const GRID_CSS = {
|
|
7
|
-
'&&:not([hidden])': {
|
|
8
|
-
display: 'grid',
|
|
9
|
-
},
|
|
10
|
-
'&[data-as="ul"],&[data-as="ol"]': {
|
|
11
|
-
listStyle: 'none',
|
|
12
|
-
},
|
|
13
|
-
}
|
|
14
|
-
|
|
15
6
|
const GRID_AUTO_COLUMS = {
|
|
16
7
|
auto: 'auto',
|
|
17
8
|
min: 'min-content',
|
|
@@ -30,7 +21,6 @@ export function responsiveGridStyle(): Array<
|
|
|
30
21
|
CSSObject | ((props: ResponsiveGridStyleProps & ThemeProps) => CSSObject[])
|
|
31
22
|
> {
|
|
32
23
|
return [
|
|
33
|
-
GRID_CSS,
|
|
34
24
|
responsiveGridAutoFlowStyle,
|
|
35
25
|
responsiveGridAutoRowsStyle,
|
|
36
26
|
responsiveGridAutoColsStyle,
|
|
@@ -13,6 +13,15 @@ export function _fillCSSObject(keys: string[], value: string | number | CSSObjec
|
|
|
13
13
|
}, {})
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export function px(pixelValue: number): string | 0 {
|
|
20
|
+
if (pixelValue === 0) return 0
|
|
21
|
+
|
|
22
|
+
return `${pixelValue}px`
|
|
23
|
+
}
|
|
24
|
+
|
|
16
25
|
/**
|
|
17
26
|
* @public
|
|
18
27
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {ThemeColorSchemeKey, ThemeFontWeightKey, getTheme_v2} from '@sanity/ui/theme'
|
|
2
2
|
import {CSSObject} from '@sanity/ui/theme'
|
|
3
|
-
import {css} from 'styled
|
|
3
|
+
import {css} from '../../lib/styled'
|
|
4
4
|
import {CardTone} from '../../types'
|
|
5
5
|
import {focusRingBorderStyle, focusRingStyle} from '../focusRing'
|
|
6
6
|
import {rem, _responsive} from '../helpers'
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
getScopedTheme,
|
|
7
7
|
} from '@sanity/ui/theme'
|
|
8
8
|
import {useContext, useMemo} from 'react'
|
|
9
|
-
import {ThemeProvider as StyledThemeProvider} from 'styled
|
|
9
|
+
import {ThemeProvider as StyledThemeProvider} from '../lib/styled'
|
|
10
10
|
import {ThemeContext} from './themeContext'
|
|
11
11
|
import {ThemeContextValue} from './types'
|
|
12
12
|
|
package/src/core/types/avatar.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export {
|
|
2
|
+
/** @deprecated Use `AvatarSize` from `@sanity/ui/theme' instead. */
|
|
3
|
+
type AvatarSize,
|
|
4
|
+
} from '@sanity/ui/theme'
|
|
5
|
+
|
|
1
6
|
/**
|
|
2
7
|
* @public
|
|
3
8
|
*/
|
|
@@ -6,7 +11,7 @@ export type AvatarPosition = 'top' | 'bottom' | 'inside'
|
|
|
6
11
|
/**
|
|
7
12
|
* @public
|
|
8
13
|
*/
|
|
9
|
-
export type AvatarSize = 0 | 1 | 2 | 3
|
|
14
|
+
// export type AvatarSize = 0 | 1 | 2 | 3
|
|
10
15
|
|
|
11
16
|
/**
|
|
12
17
|
* @public
|
package/src/core/types/button.ts
CHANGED
package/src/core/types/flex.ts
CHANGED
|
@@ -1,30 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export {
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
* @deprecated
|
|
5
|
+
*/
|
|
6
|
+
type FlexAlign,
|
|
5
7
|
|
|
6
|
-
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* @public
|
|
10
|
+
* @deprecated
|
|
11
|
+
*/
|
|
12
|
+
type FlexDirection,
|
|
10
13
|
|
|
11
|
-
/**
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
| 'flex-end'
|
|
17
|
-
| 'center'
|
|
18
|
-
| 'space-between'
|
|
19
|
-
| 'space-around'
|
|
20
|
-
| 'space-evenly'
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
* @deprecated
|
|
17
|
+
*/
|
|
18
|
+
type FlexJustify,
|
|
21
19
|
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
/**
|
|
21
|
+
* @public
|
|
22
|
+
* @deprecated
|
|
23
|
+
*/
|
|
24
|
+
type FlexValue,
|
|
26
25
|
|
|
27
|
-
/**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
/**
|
|
27
|
+
* @public
|
|
28
|
+
* @deprecated
|
|
29
|
+
*/
|
|
30
|
+
type FlexWrap,
|
|
31
|
+
} from '@sanity/ui/css'
|
|
@@ -1,29 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export {
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
* @deprecated
|
|
5
|
+
*/
|
|
6
|
+
type GridItemColumn,
|
|
5
7
|
|
|
6
|
-
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* @public
|
|
10
|
+
* @deprecated
|
|
11
|
+
*/
|
|
12
|
+
type GridItemColumnStart,
|
|
10
13
|
|
|
11
|
-
/**
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
* @deprecated
|
|
17
|
+
*/
|
|
18
|
+
type GridItemColumnEnd,
|
|
15
19
|
|
|
16
|
-
/**
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
+
/**
|
|
21
|
+
* @public
|
|
22
|
+
* @deprecated
|
|
23
|
+
*/
|
|
24
|
+
type GridItemRow,
|
|
20
25
|
|
|
21
|
-
/**
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
26
|
+
/**
|
|
27
|
+
* @public
|
|
28
|
+
* @deprecated
|
|
29
|
+
*/
|
|
30
|
+
type GridItemRowStart,
|
|
25
31
|
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
/**
|
|
33
|
+
* @public
|
|
34
|
+
* @deprecated
|
|
35
|
+
*/
|
|
36
|
+
type GridItemRowEnd,
|
|
37
|
+
} from '@sanity/ui/css'
|
package/src/core/types/radius.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {ForwardedRef, HTMLProps, ReactElement, forwardRef} from 'react'
|
|
2
|
-
import {styled, css} from 'styled
|
|
2
|
+
import {styled, css} from '../../lib/styled'
|
|
3
3
|
import {useTheme_v2} from '../../theme'
|
|
4
4
|
import {Point, compileCommands, getRoundedCommands} from './cmds'
|
|
5
5
|
|
|
@@ -1,32 +1,41 @@
|
|
|
1
1
|
import {FocusEvent, forwardRef, useCallback, useEffect, useImperativeHandle, useRef} from 'react'
|
|
2
|
-
import {styled} from 'styled-components'
|
|
3
2
|
import {EMPTY_RECORD} from '../../constants'
|
|
4
3
|
import {containsOrEqualsElement, isHTMLElement} from '../../helpers'
|
|
4
|
+
// import {styled} from '../../lib/styled'
|
|
5
|
+
import {Box, BoxProps} from '../../primitives'
|
|
5
6
|
import {LayerProvider} from './layerProvider'
|
|
6
7
|
import {useLayer} from './useLayer'
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* @public
|
|
10
11
|
*/
|
|
11
|
-
export interface LayerProps {
|
|
12
|
-
as?: React.ElementType | keyof JSX.IntrinsicElements
|
|
12
|
+
export interface LayerProps extends BoxProps {
|
|
13
|
+
// as?: React.ElementType | keyof JSX.IntrinsicElements
|
|
13
14
|
/** A callback that fires when the layer becomes the top layer when it was not the top layer before. */
|
|
14
15
|
onActivate?: (props: {activeElement: HTMLElement | null}) => void
|
|
15
16
|
zOffset?: number | number[]
|
|
16
17
|
}
|
|
17
18
|
|
|
18
|
-
interface LayerChildrenProps {
|
|
19
|
-
as?: React.ElementType | keyof JSX.IntrinsicElements
|
|
19
|
+
interface LayerChildrenProps extends BoxProps {
|
|
20
|
+
// as?: React.ElementType | keyof JSX.IntrinsicElements
|
|
20
21
|
onActivate?: LayerProps['onActivate']
|
|
21
22
|
}
|
|
22
23
|
|
|
23
|
-
const Root = styled.div({position: 'relative'})
|
|
24
|
+
// const Root = styled.div({position: 'relative'})
|
|
24
25
|
|
|
25
26
|
const LayerChildren = forwardRef(function LayerChildren(
|
|
26
|
-
props: LayerChildrenProps &
|
|
27
|
+
props: LayerChildrenProps &
|
|
28
|
+
Omit<React.HTMLProps<HTMLDivElement>, 'as' | 'height' | 'width' | 'wrap'>,
|
|
27
29
|
forwardedRef: React.Ref<HTMLDivElement>,
|
|
28
30
|
) {
|
|
29
|
-
const {
|
|
31
|
+
const {
|
|
32
|
+
children,
|
|
33
|
+
onActivate,
|
|
34
|
+
onFocus,
|
|
35
|
+
position = 'relative',
|
|
36
|
+
style = EMPTY_RECORD,
|
|
37
|
+
...restProps
|
|
38
|
+
} = props
|
|
30
39
|
const {zIndex, isTopLayer} = useLayer()
|
|
31
40
|
const lastFocusedRef = useRef<HTMLElement | null>(null)
|
|
32
41
|
const ref = useRef<HTMLDivElement | null>(null)
|
|
@@ -65,9 +74,16 @@ const LayerChildren = forwardRef(function LayerChildren(
|
|
|
65
74
|
)
|
|
66
75
|
|
|
67
76
|
return (
|
|
68
|
-
<
|
|
77
|
+
<Box
|
|
78
|
+
data-ui="Layer"
|
|
79
|
+
{...restProps}
|
|
80
|
+
onFocus={handleFocus}
|
|
81
|
+
position={position}
|
|
82
|
+
ref={ref}
|
|
83
|
+
style={{...style, zIndex}}
|
|
84
|
+
>
|
|
69
85
|
{children}
|
|
70
|
-
</
|
|
86
|
+
</Box>
|
|
71
87
|
)
|
|
72
88
|
})
|
|
73
89
|
|
|
@@ -75,7 +91,7 @@ const LayerChildren = forwardRef(function LayerChildren(
|
|
|
75
91
|
* @public
|
|
76
92
|
*/
|
|
77
93
|
export const Layer = forwardRef(function Layer(
|
|
78
|
-
props: LayerProps & Omit<React.HTMLProps<HTMLDivElement>, 'as'>,
|
|
94
|
+
props: LayerProps & Omit<React.HTMLProps<HTMLDivElement>, 'as' | 'width' | 'wrap'>,
|
|
79
95
|
ref: React.Ref<HTMLDivElement>,
|
|
80
96
|
) {
|
|
81
97
|
const {children, zOffset = 1, ...restProps} = props
|
|
@@ -88,4 +104,5 @@ export const Layer = forwardRef(function Layer(
|
|
|
88
104
|
</LayerProvider>
|
|
89
105
|
)
|
|
90
106
|
})
|
|
107
|
+
|
|
91
108
|
Layer.displayName = 'ForwardRef(Layer)'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
import {forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState} from 'react'
|
|
3
|
-
import {styled} from 'styled
|
|
3
|
+
import {styled} from '../../lib/styled'
|
|
4
4
|
import {_isScrollable} from '../../helpers'
|
|
5
5
|
import {_ResizeObserver} from '../../observers'
|
|
6
6
|
import {StackProps} from '../../primitives'
|
package/src/css/_resp.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {ResponsiveProp} from './types'
|
|
2
|
+
|
|
3
|
+
export function _resp<T>(
|
|
4
|
+
prefix: string | undefined,
|
|
5
|
+
prop: ResponsiveProp<T> | undefined,
|
|
6
|
+
): string | undefined {
|
|
7
|
+
if (prop === undefined) {
|
|
8
|
+
return undefined
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
if (Array.isArray(prop)) {
|
|
12
|
+
return prop
|
|
13
|
+
.map((value, index) => {
|
|
14
|
+
const className = (typeof value === 'boolean' ? [prefix] : [prefix, value])
|
|
15
|
+
.filter((s) => s === 0 || Boolean(s))
|
|
16
|
+
.join('-')
|
|
17
|
+
.replace(/\./g, '_')
|
|
18
|
+
|
|
19
|
+
return index === 0 ? `${className}` : `_${index}:${className}`
|
|
20
|
+
})
|
|
21
|
+
.join(' ')
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return (typeof prop === 'boolean' ? [prefix] : [prefix, prop])
|
|
25
|
+
.filter((s) => s === 0 || Boolean(s))
|
|
26
|
+
.join('-')
|
|
27
|
+
.replace(/\./g, '_')
|
|
28
|
+
}
|