@pandacss/studio 0.8.0 → 0.10.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.
Files changed (39) hide show
  1. package/dist/studio.js +49 -47
  2. package/dist/studio.mjs +49 -47
  3. package/package.json +15 -15
  4. package/styled-system/css/conditions.mjs +5 -116
  5. package/styled-system/css/css.mjs +19 -379
  6. package/styled-system/css/index.d.ts +2 -1
  7. package/styled-system/css/index.mjs +1 -0
  8. package/styled-system/css/sva.d.ts +4 -0
  9. package/styled-system/css/sva.mjs +20 -0
  10. package/styled-system/helpers.mjs +59 -21
  11. package/styled-system/jsx/aspect-ratio.mjs +1 -1
  12. package/styled-system/jsx/box.mjs +1 -1
  13. package/styled-system/jsx/center.mjs +1 -1
  14. package/styled-system/jsx/circle.mjs +1 -1
  15. package/styled-system/jsx/container.mjs +1 -1
  16. package/styled-system/jsx/divider.mjs +1 -1
  17. package/styled-system/jsx/factory.mjs +2 -2
  18. package/styled-system/jsx/flex.mjs +1 -1
  19. package/styled-system/jsx/float.mjs +1 -1
  20. package/styled-system/jsx/grid-item.mjs +1 -1
  21. package/styled-system/jsx/grid.mjs +1 -1
  22. package/styled-system/jsx/hstack.mjs +1 -1
  23. package/styled-system/jsx/is-valid-prop.mjs +8 -1018
  24. package/styled-system/jsx/link-box.mjs +1 -1
  25. package/styled-system/jsx/link-overlay.mjs +1 -1
  26. package/styled-system/jsx/spacer.mjs +1 -1
  27. package/styled-system/jsx/square.mjs +1 -1
  28. package/styled-system/jsx/stack.mjs +1 -1
  29. package/styled-system/jsx/styled-link.mjs +1 -1
  30. package/styled-system/jsx/vstack.mjs +1 -1
  31. package/styled-system/jsx/wrap.mjs +1 -1
  32. package/styled-system/tokens/index.css +1 -1
  33. package/styled-system/tokens/index.mjs +1 -1
  34. package/styled-system/types/global.d.ts +3 -2
  35. package/styled-system/types/pattern.d.ts +8 -1
  36. package/styled-system/types/prop-type.d.ts +5 -0
  37. package/styled-system/types/recipe.d.ts +66 -4
  38. package/styled-system/types/style-props.d.ts +3 -72
  39. package/styled-system/types/system-types.d.ts +3 -4
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getLinkBoxStyle } from '../patterns/link-box.mjs'
4
4
 
5
- export const LinkBox = forwardRef(function LinkBox(props, ref) {
5
+ export const LinkBox = /* @__PURE__ */ forwardRef(function LinkBox(props, ref) {
6
6
  const styleProps = getLinkBoxStyle()
7
7
  return createElement(panda.div, { ref, ...styleProps, ...props })
8
8
  })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getLinkOverlayStyle } from '../patterns/link-overlay.mjs'
4
4
 
5
- export const LinkOverlay = forwardRef(function LinkOverlay(props, ref) {
5
+ export const LinkOverlay = /* @__PURE__ */ forwardRef(function LinkOverlay(props, ref) {
6
6
  const styleProps = getLinkOverlayStyle()
7
7
  return createElement(panda.a, { ref, ...styleProps, ...props })
8
8
  })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getSpacerStyle } from '../patterns/spacer.mjs'
4
4
 
5
- export const Spacer = forwardRef(function Spacer(props, ref) {
5
+ export const Spacer = /* @__PURE__ */ forwardRef(function Spacer(props, ref) {
6
6
  const { size, ...restProps } = props
7
7
  const styleProps = getSpacerStyle({ size })
8
8
  return createElement(panda.div, { ref, ...styleProps, ...restProps })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getSquareStyle } from '../patterns/square.mjs'
4
4
 
5
- export const Square = forwardRef(function Square(props, ref) {
5
+ export const Square = /* @__PURE__ */ forwardRef(function Square(props, ref) {
6
6
  const { size, ...restProps } = props
7
7
  const styleProps = getSquareStyle({ size })
8
8
  return createElement(panda.div, { ref, ...styleProps, ...restProps })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getStackStyle } from '../patterns/stack.mjs'
4
4
 
5
- export const Stack = forwardRef(function Stack(props, ref) {
5
+ export const Stack = /* @__PURE__ */ forwardRef(function Stack(props, ref) {
6
6
  const { align, justify, direction, gap, ...restProps } = props
7
7
  const styleProps = getStackStyle({ align, justify, direction, gap })
8
8
  return createElement(panda.div, { ref, ...styleProps, ...restProps })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getStyledLinkStyle } from '../patterns/styled-link.mjs'
4
4
 
5
- export const StyledLink = forwardRef(function StyledLink(props, ref) {
5
+ export const StyledLink = /* @__PURE__ */ forwardRef(function StyledLink(props, ref) {
6
6
  const styleProps = getStyledLinkStyle()
7
7
  return createElement(panda.div, { ref, ...styleProps, ...props })
8
8
  })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getVstackStyle } from '../patterns/vstack.mjs'
4
4
 
5
- export const VStack = forwardRef(function VStack(props, ref) {
5
+ export const VStack = /* @__PURE__ */ forwardRef(function VStack(props, ref) {
6
6
  const { justify, gap, ...restProps } = props
7
7
  const styleProps = getVstackStyle({ justify, gap })
8
8
  return createElement(panda.div, { ref, ...styleProps, ...restProps })
@@ -2,7 +2,7 @@ import { createElement, forwardRef } from 'react'
2
2
  import { panda } from './factory.mjs'
3
3
  import { getWrapStyle } from '../patterns/wrap.mjs'
4
4
 
5
- export const Wrap = forwardRef(function Wrap(props, ref) {
5
+ export const Wrap = /* @__PURE__ */ forwardRef(function Wrap(props, ref) {
6
6
  const { gap, rowGap, columnGap, align, justify, ...restProps } = props
7
7
  const styleProps = getWrapStyle({ gap, rowGap, columnGap, align, justify })
8
8
  return createElement(panda.div, { ref, ...styleProps, ...restProps })
@@ -414,7 +414,7 @@
414
414
  --colors-neutral-800: #262626;
415
415
  --colors-neutral-900: #171717;
416
416
  --colors-neutral-950: #0a0a0a;
417
- --assets-check: url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);
417
+ --assets-check: url('data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A');
418
418
  --breakpoints-sm: 640px;
419
419
  --breakpoints-md: 768px;
420
420
  --breakpoints-lg: 1024px;
@@ -1654,7 +1654,7 @@ const tokens = {
1654
1654
  },
1655
1655
  'assets.check': {
1656
1656
  value:
1657
- 'url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A)',
1657
+ "url('data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A')",
1658
1658
  variable: 'var(--assets-check)',
1659
1659
  },
1660
1660
  'breakpoints.sm': {
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
- import type { RecipeVariantRecord, RecipeConfig } from './recipe'
2
+ import type { RecipeVariantRecord, RecipeConfig, SlotRecipeVariantRecord, SlotRecipeConfig } from './recipe'
3
3
  import type { Parts } from './parts'
4
4
  import type { PatternConfig, PatternProperties } from './pattern'
5
5
  import type { GlobalStyleObject, SystemStyleObject } from './system-types'
@@ -7,10 +7,11 @@ import type { CompositionStyles } from './composition'
7
7
 
8
8
  declare module '@pandacss/dev' {
9
9
  export function defineRecipe<V extends RecipeVariantRecord>(config: RecipeConfig<V>): RecipeConfig
10
+ export function defineSlotRecipe<S extends string, V extends SlotRecipeVariantRecord<S>>(config: SlotRecipeConfig<S, V>): SlotRecipeConfig
10
11
  export function defineStyles(definition: SystemStyleObject): SystemStyleObject
11
12
  export function defineGlobalStyles(definition: GlobalStyleObject): GlobalStyleObject
12
13
  export function defineTextStyles(definition: CompositionStyles['textStyles']): CompositionStyles['textStyles']
13
14
  export function defineLayerStyles(definition: CompositionStyles['layerStyles']): CompositionStyles['layerStyles']
14
15
  export function definePattern<T extends PatternProperties>(config: PatternConfig<T>): PatternConfig
15
- export function defineParts<T extends Parts>(parts: T): (config: Partial<Record<keyof T, SystemStyleObject>>) => Partial<Record<keyof T, SystemStyleObject>>;
16
+ export function defineParts<T extends Parts>(parts: T): (config: Partial<Record<keyof T, SystemStyleObject>>) => Partial<Record<keyof T, SystemStyleObject>>
16
17
  }
@@ -40,7 +40,14 @@ export type PatternConfig<T extends PatternProperties = PatternProperties> = {
40
40
  /**
41
41
  * The jsx element name this pattern will generate.
42
42
  */
43
- jsx?: string
43
+ jsxName?: string
44
+ /**
45
+ * The jsx elements to track for this pattern. Can be string or Regexp.
46
+ *
47
+ * @default capitalize(pattern.name)
48
+ * @example ['Button', 'Link', /Button$/]
49
+ */
50
+ jsx?: Array<string | RegExp>
44
51
  /**
45
52
  * Whether to only generate types for the specified properties.
46
53
  * This will disallow css properties
@@ -125,10 +125,12 @@ type PropertyValueTypes = {
125
125
  borderLeft: Tokens["borders"];
126
126
  borderLeftColor: Tokens["colors"];
127
127
  borderInlineStart: Tokens["borders"];
128
+ borderInlineStartWidth: Tokens["borderWidths"];
128
129
  borderInlineStartColor: Tokens["colors"];
129
130
  borderRight: Tokens["borders"];
130
131
  borderRightColor: Tokens["colors"];
131
132
  borderInlineEnd: Tokens["borders"];
133
+ borderInlineEndWidth: Tokens["borderWidths"];
132
134
  borderInlineEndColor: Tokens["colors"];
133
135
  borderTop: Tokens["borders"];
134
136
  borderTopColor: Tokens["colors"];
@@ -138,6 +140,7 @@ type PropertyValueTypes = {
138
140
  borderBlockEndColor: Tokens["colors"];
139
141
  borderBlockStart: Tokens["borders"];
140
142
  borderBlockStartColor: Tokens["colors"];
143
+ opacity: Tokens["opacity"];
141
144
  boxShadow: Tokens["shadows"];
142
145
  boxShadowColor: Tokens["colors"];
143
146
  filter: "auto";
@@ -287,8 +290,10 @@ type PropertyValueTypes = {
287
290
  borderYWidth: Shorthand<"borderBlockWidth">;
288
291
  borderYColor: Shorthand<"borderBlockColor">;
289
292
  borderStart: Shorthand<"borderInlineStart">;
293
+ borderStartWidth: Shorthand<"borderInlineStartWidth">;
290
294
  borderStartColor: Shorthand<"borderInlineStartColor">;
291
295
  borderEnd: Shorthand<"borderInlineEnd">;
296
+ borderEndWidth: Shorthand<"borderInlineEndWidth">;
292
297
  borderEndColor: Shorthand<"borderInlineEndColor">;
293
298
  shadow: Shorthand<"boxShadow">;
294
299
  shadowColor: Shorthand<"boxShadowColor">;
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject } from './system-types'
3
3
 
4
- type Pretty<T> = T extends infer U ? { [K in keyof U]: U[K] } : never
4
+ type Pretty<T> = { [K in keyof T]: T[K] } & {}
5
5
 
6
6
  type StringToBoolean<T> = T extends 'true' | 'false' ? boolean : T
7
7
 
@@ -15,12 +15,18 @@ export type RecipeSelection<T extends RecipeVariantRecord> = keyof any extends k
15
15
 
16
16
  export type RecipeVariantFn<T extends RecipeVariantRecord> = (props?: RecipeSelection<T>) => string
17
17
 
18
- export type RecipeVariantProps<T extends RecipeVariantFn<RecipeVariantRecord>> = Pretty<Parameters<T>[0]>
18
+ export type RecipeVariantProps<
19
+ T extends RecipeVariantFn<RecipeVariantRecord> | SlotRecipeVariantFn<string, SlotRecipeVariantRecord<string>>,
20
+ > = Pretty<Parameters<T>[0]>
19
21
 
20
22
  type RecipeVariantMap<T extends RecipeVariantRecord> = {
21
23
  [K in keyof T]: Array<keyof T[K]>
22
24
  }
23
25
 
26
+ /* -----------------------------------------------------------------------------
27
+ * Recipe / Standard
28
+ * -----------------------------------------------------------------------------*/
29
+
24
30
  export type RecipeRuntimeFn<T extends RecipeVariantRecord> = RecipeVariantFn<T> & {
25
31
  __type: RecipeSelection<T>
26
32
  variantKeys: (keyof T)[]
@@ -59,11 +65,11 @@ export type RecipeDefinition<T extends RecipeVariantRecord> = {
59
65
 
60
66
  export type RecipeCreatorFn = <T extends RecipeVariantRecord>(config: RecipeDefinition<T>) => RecipeRuntimeFn<T>
61
67
 
62
- export type RecipeConfig<T extends RecipeVariantRecord = RecipeVariantRecord> = RecipeDefinition<T> & {
68
+ type RecipeConfigMeta = {
63
69
  /**
64
70
  * The name of the recipe.
65
71
  */
66
- name: string
72
+ className: string
67
73
  /**
68
74
  * The description of the recipe. This will be used in the JSDoc comment.
69
75
  */
@@ -76,3 +82,59 @@ export type RecipeConfig<T extends RecipeVariantRecord = RecipeVariantRecord> =
76
82
  */
77
83
  jsx?: Array<string | RegExp>
78
84
  }
85
+
86
+ export type RecipeConfig<T extends RecipeVariantRecord = RecipeVariantRecord> = RecipeDefinition<T> & RecipeConfigMeta
87
+
88
+ /* -----------------------------------------------------------------------------
89
+ * Recipe / Slot
90
+ * -----------------------------------------------------------------------------*/
91
+
92
+ type SlotRecord<S extends string, T> = Partial<Record<S, T>>
93
+
94
+ export type SlotRecipeVariantRecord<S extends string> = Record<any, Record<any, SlotRecord<S, SystemStyleObject>>>
95
+
96
+ export type SlotRecipeVariantFn<S extends string, T extends RecipeVariantRecord> = (
97
+ props?: RecipeSelection<T>,
98
+ ) => SlotRecord<S, string>
99
+
100
+ export type SlotRecipeRuntimeFn<S extends string, T extends SlotRecipeVariantRecord<S>> = SlotRecipeVariantFn<S, T> & {
101
+ variantKeys: (keyof T)[]
102
+ variantMap: RecipeVariantMap<T>
103
+ splitVariantProps<Props extends RecipeSelection<T>>(props: Props): [RecipeSelection<T>, Pretty<Omit<Props, keyof T>>]
104
+ }
105
+
106
+ export type SlotRecipeCompoundVariant<S extends string, T extends RecipeVariantRecord> = RecipeCompoundSelection<T> & {
107
+ css: SlotRecord<S, SystemStyleObject>
108
+ }
109
+
110
+ export type SlotRecipeDefinition<S extends string, T extends SlotRecipeVariantRecord<S>> = {
111
+ /**
112
+ * The parts/slots of the recipe.
113
+ */
114
+ slots: S[] | Readonly<S[]>
115
+ /**
116
+ * The base styles of the recipe.
117
+ */
118
+ base?: SlotRecord<S, SystemStyleObject>
119
+ /**
120
+ * The multi-variant styles of the recipe.
121
+ */
122
+ variants?: T | SlotRecipeVariantRecord<S>
123
+ /**
124
+ * The default variants of the recipe.
125
+ */
126
+ defaultVariants?: RecipeSelection<T>
127
+ /**
128
+ * The styles to apply when a combination of variants is selected.
129
+ */
130
+ compoundVariants?: Array<SlotRecipeCompoundVariant<S, T>>
131
+ }
132
+
133
+ export type SlotRecipeCreatorFn = <S extends string, T extends SlotRecipeVariantRecord<S>>(
134
+ config: SlotRecipeDefinition<S, T>,
135
+ ) => SlotRecipeRuntimeFn<S, T>
136
+
137
+ export type SlotRecipeConfig<
138
+ S extends string = string,
139
+ T extends SlotRecipeVariantRecord<S> = SlotRecipeVariantRecord<S>,
140
+ > = SlotRecipeDefinition<S, T> & RecipeConfigMeta
@@ -8,78 +8,7 @@ export type CssVarProperties = {
8
8
  }
9
9
 
10
10
  export type SystemProperties = {
11
- MsAccelerator?: PropertyValue<'MsAccelerator'>
12
- MsBlockProgression?: PropertyValue<'MsBlockProgression'>
13
- MsContentZoomChaining?: PropertyValue<'MsContentZoomChaining'>
14
- MsContentZooming?: PropertyValue<'MsContentZooming'>
15
- MsContentZoomLimit?: PropertyValue<'MsContentZoomLimit'>
16
- MsContentZoomLimitMax?: PropertyValue<'MsContentZoomLimitMax'>
17
- MsContentZoomLimitMin?: PropertyValue<'MsContentZoomLimitMin'>
18
- MsContentZoomSnap?: PropertyValue<'MsContentZoomSnap'>
19
- MsContentZoomSnapPoints?: PropertyValue<'MsContentZoomSnapPoints'>
20
- MsContentZoomSnapType?: PropertyValue<'MsContentZoomSnapType'>
21
- MsFilter?: PropertyValue<'MsFilter'>
22
- MsFlowFrom?: PropertyValue<'MsFlowFrom'>
23
- MsFlowInto?: PropertyValue<'MsFlowInto'>
24
- MsGridColumns?: PropertyValue<'MsGridColumns'>
25
- MsGridRows?: PropertyValue<'MsGridRows'>
26
- MsHighContrastAdjust?: PropertyValue<'MsHighContrastAdjust'>
27
- MsHyphenateLimitChars?: PropertyValue<'MsHyphenateLimitChars'>
28
- MsHyphenateLimitLines?: PropertyValue<'MsHyphenateLimitLines'>
29
- MsHyphenateLimitZone?: PropertyValue<'MsHyphenateLimitZone'>
30
- MsImeAlign?: PropertyValue<'MsImeAlign'>
31
- MsOverflowStyle?: PropertyValue<'MsOverflowStyle'>
32
- MsScrollbar3dlightColor?: PropertyValue<'MsScrollbar3dlightColor'>
33
- MsScrollbarArrowColor?: PropertyValue<'MsScrollbarArrowColor'>
34
- MsScrollbarBaseColor?: PropertyValue<'MsScrollbarBaseColor'>
35
- MsScrollbarDarkshadowColor?: PropertyValue<'MsScrollbarDarkshadowColor'>
36
- MsScrollbarFaceColor?: PropertyValue<'MsScrollbarFaceColor'>
37
- MsScrollbarHighlightColor?: PropertyValue<'MsScrollbarHighlightColor'>
38
- MsScrollbarShadowColor?: PropertyValue<'MsScrollbarShadowColor'>
39
- MsScrollbarTrackColor?: PropertyValue<'MsScrollbarTrackColor'>
40
- MsScrollChaining?: PropertyValue<'MsScrollChaining'>
41
- MsScrollLimit?: PropertyValue<'MsScrollLimit'>
42
- MsScrollLimitXMax?: PropertyValue<'MsScrollLimitXMax'>
43
- MsScrollLimitXMin?: PropertyValue<'MsScrollLimitXMin'>
44
- MsScrollLimitYMax?: PropertyValue<'MsScrollLimitYMax'>
45
- MsScrollLimitYMin?: PropertyValue<'MsScrollLimitYMin'>
46
- MsScrollRails?: PropertyValue<'MsScrollRails'>
47
- MsScrollSnapPointsX?: PropertyValue<'MsScrollSnapPointsX'>
48
- MsScrollSnapPointsY?: PropertyValue<'MsScrollSnapPointsY'>
49
- MsScrollSnapType?: PropertyValue<'MsScrollSnapType'>
50
- MsScrollSnapX?: PropertyValue<'MsScrollSnapX'>
51
- MsScrollSnapY?: PropertyValue<'MsScrollSnapY'>
52
- MsScrollTranslation?: PropertyValue<'MsScrollTranslation'>
53
- MsTextAutospace?: PropertyValue<'MsTextAutospace'>
54
- MsTouchSelect?: PropertyValue<'MsTouchSelect'>
55
- MsUserSelect?: PropertyValue<'MsUserSelect'>
56
- MsWrapFlow?: PropertyValue<'MsWrapFlow'>
57
- MsWrapMargin?: PropertyValue<'MsWrapMargin'>
58
- MsWrapThrough?: PropertyValue<'MsWrapThrough'>
59
- MozAppearance?: PropertyValue<'MozAppearance'>
60
- MozBinding?: PropertyValue<'MozBinding'>
61
- MozBorderBottomColors?: PropertyValue<'MozBorderBottomColors'>
62
- MozBorderLeftColors?: PropertyValue<'MozBorderLeftColors'>
63
- MozBorderRightColors?: PropertyValue<'MozBorderRightColors'>
64
- MozBorderTopColors?: PropertyValue<'MozBorderTopColors'>
65
- MozContextProperties?: PropertyValue<'MozContextProperties'>
66
- MozFloatEdge?: PropertyValue<'MozFloatEdge'>
67
- MozForceBrokenImageIcon?: PropertyValue<'MozForceBrokenImageIcon'>
68
- MozImageRegion?: PropertyValue<'MozImageRegion'>
69
- MozOrient?: PropertyValue<'MozOrient'>
70
- MozOutlineRadius?: PropertyValue<'MozOutlineRadius'>
71
- MozOutlineRadiusBottomleft?: PropertyValue<'MozOutlineRadiusBottomleft'>
72
- MozOutlineRadiusBottomright?: PropertyValue<'MozOutlineRadiusBottomright'>
73
- MozOutlineRadiusTopleft?: PropertyValue<'MozOutlineRadiusTopleft'>
74
- MozOutlineRadiusTopright?: PropertyValue<'MozOutlineRadiusTopright'>
75
- MozStackSizing?: PropertyValue<'MozStackSizing'>
76
- MozTextBlink?: PropertyValue<'MozTextBlink'>
77
- MozUserFocus?: PropertyValue<'MozUserFocus'>
78
- MozUserInput?: PropertyValue<'MozUserInput'>
79
- MozUserModify?: PropertyValue<'MozUserModify'>
80
- MozWindowDragging?: PropertyValue<'MozWindowDragging'>
81
- MozWindowShadow?: PropertyValue<'MozWindowShadow'>
82
- WebkitAppearance?: PropertyValue<'WebkitAppearance'>
11
+ WebkitAppearance?: PropertyValue<'WebkitAppearance'>
83
12
  WebkitBorderBefore?: PropertyValue<'WebkitBorderBefore'>
84
13
  WebkitBorderBeforeColor?: PropertyValue<'WebkitBorderBeforeColor'>
85
14
  WebkitBorderBeforeStyle?: PropertyValue<'WebkitBorderBeforeStyle'>
@@ -620,8 +549,10 @@ export type SystemProperties = {
620
549
  borderYWidth?: PropertyValue<'borderYWidth'>
621
550
  borderYColor?: PropertyValue<'borderYColor'>
622
551
  borderStart?: PropertyValue<'borderStart'>
552
+ borderStartWidth?: PropertyValue<'borderStartWidth'>
623
553
  borderStartColor?: PropertyValue<'borderStartColor'>
624
554
  borderEnd?: PropertyValue<'borderEnd'>
555
+ borderEndWidth?: PropertyValue<'borderEndWidth'>
625
556
  borderEndColor?: PropertyValue<'borderEndColor'>
626
557
  shadow?: PropertyValue<'shadow'>
627
558
  shadowColor?: PropertyValue<'shadowColor'>
@@ -51,11 +51,10 @@ export type CompositionStyleObject<Property extends string> = Nested<{
51
51
  /* -----------------------------------------------------------------------------
52
52
  * Jsx style props
53
53
  * -----------------------------------------------------------------------------*/
54
+ type WithCss = { css?: SystemStyleObject }
55
+ type StyleProps = SystemProperties & MinimalNested<SystemStyleObject>
54
56
 
55
- export type JsxStyleProps = SystemProperties &
56
- MinimalNested<SystemStyleObject> & {
57
- css?: SystemStyleObject
58
- }
57
+ export type JsxStyleProps = StyleProps & WithCss
59
58
 
60
59
  export type Assign<T, U> = Omit<T, keyof U> & U
61
60