@pandacss/studio 0.11.0 → 0.12.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 (54) hide show
  1. package/package.json +9 -9
  2. package/styled-system/chunks/..__core____tests____complex-rule.test.css +19 -0
  3. package/styled-system/css/css.mjs +11 -5
  4. package/styled-system/css/cx.mjs +15 -4
  5. package/styled-system/jsx/aspect-ratio.d.ts +2 -1
  6. package/styled-system/jsx/bleed.d.ts +2 -1
  7. package/styled-system/jsx/box.d.ts +2 -1
  8. package/styled-system/jsx/center.d.ts +2 -1
  9. package/styled-system/jsx/circle.d.ts +2 -1
  10. package/styled-system/jsx/container.d.ts +2 -1
  11. package/styled-system/jsx/divider.d.ts +2 -1
  12. package/styled-system/jsx/flex.d.ts +2 -1
  13. package/styled-system/jsx/float.d.ts +2 -1
  14. package/styled-system/jsx/grid-item.d.ts +2 -1
  15. package/styled-system/jsx/grid.d.ts +2 -1
  16. package/styled-system/jsx/hstack.d.ts +2 -1
  17. package/styled-system/jsx/is-valid-prop.mjs +4 -4
  18. package/styled-system/jsx/link-box.d.ts +2 -1
  19. package/styled-system/jsx/link-overlay.d.ts +2 -1
  20. package/styled-system/jsx/spacer.d.ts +2 -1
  21. package/styled-system/jsx/square.d.ts +2 -1
  22. package/styled-system/jsx/stack.d.ts +2 -1
  23. package/styled-system/jsx/styled-link.d.ts +2 -1
  24. package/styled-system/jsx/visually-hidden.d.ts +2 -1
  25. package/styled-system/jsx/vstack.d.ts +2 -1
  26. package/styled-system/jsx/wrap.d.ts +2 -1
  27. package/styled-system/patterns/aspect-ratio.d.ts +5 -4
  28. package/styled-system/patterns/bleed.d.ts +5 -4
  29. package/styled-system/patterns/box.d.ts +5 -4
  30. package/styled-system/patterns/center.d.ts +5 -4
  31. package/styled-system/patterns/circle.d.ts +5 -4
  32. package/styled-system/patterns/container.d.ts +5 -4
  33. package/styled-system/patterns/divider.d.ts +5 -4
  34. package/styled-system/patterns/flex.d.ts +5 -4
  35. package/styled-system/patterns/float.d.ts +5 -4
  36. package/styled-system/patterns/grid-item.d.ts +5 -4
  37. package/styled-system/patterns/grid.d.ts +5 -4
  38. package/styled-system/patterns/hstack.d.ts +5 -4
  39. package/styled-system/patterns/link-box.d.ts +5 -4
  40. package/styled-system/patterns/link-overlay.d.ts +5 -4
  41. package/styled-system/patterns/spacer.d.ts +5 -4
  42. package/styled-system/patterns/square.d.ts +5 -4
  43. package/styled-system/patterns/stack.d.ts +5 -4
  44. package/styled-system/patterns/styled-link.d.ts +5 -4
  45. package/styled-system/patterns/visually-hidden.d.ts +5 -4
  46. package/styled-system/patterns/vstack.d.ts +5 -4
  47. package/styled-system/patterns/wrap.d.ts +5 -4
  48. package/styled-system/styles.css +14 -0
  49. package/styled-system/tokens/tokens.d.ts +3 -0
  50. package/styled-system/types/jsx.d.ts +2 -2
  51. package/styled-system/types/prop-type.d.ts +1 -0
  52. package/styled-system/types/recipe.d.ts +4 -2
  53. package/styled-system/types/style-props.d.ts +30 -2
  54. package/styled-system/types/system-types.d.ts +7 -4
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type ContainerProperties = {
@@ -9,11 +10,11 @@ export type ContainerProperties = {
9
10
  }
10
11
 
11
12
 
12
- type ContainerOptions = ContainerProperties & Omit<SystemStyleObject, keyof ContainerProperties >
13
+ type ContainerStyles = ContainerProperties & DistributiveOmit<SystemStyleObject, keyof ContainerProperties >
13
14
 
14
15
  interface ContainerPatternFn {
15
- (options?: ContainerOptions): string
16
- raw: (options: ContainerOptions) => ContainerOptions
16
+ (styles?: ContainerStyles): string
17
+ raw: (styles: ContainerStyles) => ContainerStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type DividerProperties = {
@@ -11,11 +12,11 @@ export type DividerProperties = {
11
12
  }
12
13
 
13
14
 
14
- type DividerOptions = DividerProperties & Omit<SystemStyleObject, keyof DividerProperties >
15
+ type DividerStyles = DividerProperties & DistributiveOmit<SystemStyleObject, keyof DividerProperties >
15
16
 
16
17
  interface DividerPatternFn {
17
- (options?: DividerOptions): string
18
- raw: (options: DividerOptions) => DividerOptions
18
+ (styles?: DividerStyles): string
19
+ raw: (styles: DividerStyles) => DividerStyles
19
20
  }
20
21
 
21
22
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type FlexProperties = {
@@ -15,11 +16,11 @@ export type FlexProperties = {
15
16
  }
16
17
 
17
18
 
18
- type FlexOptions = FlexProperties & Omit<SystemStyleObject, keyof FlexProperties >
19
+ type FlexStyles = FlexProperties & DistributiveOmit<SystemStyleObject, keyof FlexProperties >
19
20
 
20
21
  interface FlexPatternFn {
21
- (options?: FlexOptions): string
22
- raw: (options: FlexOptions) => FlexOptions
22
+ (styles?: FlexStyles): string
23
+ raw: (styles: FlexStyles) => FlexStyles
23
24
  }
24
25
 
25
26
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type FloatProperties = {
@@ -12,11 +13,11 @@ export type FloatProperties = {
12
13
  }
13
14
 
14
15
 
15
- type FloatOptions = FloatProperties & Omit<SystemStyleObject, keyof FloatProperties >
16
+ type FloatStyles = FloatProperties & DistributiveOmit<SystemStyleObject, keyof FloatProperties >
16
17
 
17
18
  interface FloatPatternFn {
18
- (options?: FloatOptions): string
19
- raw: (options: FloatOptions) => FloatOptions
19
+ (styles?: FloatStyles): string
20
+ raw: (styles: FloatStyles) => FloatStyles
20
21
  }
21
22
 
22
23
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type GridItemProperties = {
@@ -14,11 +15,11 @@ export type GridItemProperties = {
14
15
  }
15
16
 
16
17
 
17
- type GridItemOptions = GridItemProperties & Omit<SystemStyleObject, keyof GridItemProperties >
18
+ type GridItemStyles = GridItemProperties & DistributiveOmit<SystemStyleObject, keyof GridItemProperties >
18
19
 
19
20
  interface GridItemPatternFn {
20
- (options?: GridItemOptions): string
21
- raw: (options: GridItemOptions) => GridItemOptions
21
+ (styles?: GridItemStyles): string
22
+ raw: (styles: GridItemStyles) => GridItemStyles
22
23
  }
23
24
 
24
25
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type GridProperties = {
@@ -13,11 +14,11 @@ export type GridProperties = {
13
14
  }
14
15
 
15
16
 
16
- type GridOptions = GridProperties & Omit<SystemStyleObject, keyof GridProperties >
17
+ type GridStyles = GridProperties & DistributiveOmit<SystemStyleObject, keyof GridProperties >
17
18
 
18
19
  interface GridPatternFn {
19
- (options?: GridOptions): string
20
- raw: (options: GridOptions) => GridOptions
20
+ (styles?: GridStyles): string
21
+ raw: (styles: GridStyles) => GridStyles
21
22
  }
22
23
 
23
24
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type HstackProperties = {
@@ -10,11 +11,11 @@ export type HstackProperties = {
10
11
  }
11
12
 
12
13
 
13
- type HstackOptions = HstackProperties & Omit<SystemStyleObject, keyof HstackProperties >
14
+ type HstackStyles = HstackProperties & DistributiveOmit<SystemStyleObject, keyof HstackProperties >
14
15
 
15
16
  interface HstackPatternFn {
16
- (options?: HstackOptions): string
17
- raw: (options: HstackOptions) => HstackOptions
17
+ (styles?: HstackStyles): string
18
+ raw: (styles: HstackStyles) => HstackStyles
18
19
  }
19
20
 
20
21
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type LinkBoxProperties = {
@@ -9,11 +10,11 @@ export type LinkBoxProperties = {
9
10
  }
10
11
 
11
12
 
12
- type LinkBoxOptions = LinkBoxProperties & Omit<SystemStyleObject, keyof LinkBoxProperties >
13
+ type LinkBoxStyles = LinkBoxProperties & DistributiveOmit<SystemStyleObject, keyof LinkBoxProperties >
13
14
 
14
15
  interface LinkBoxPatternFn {
15
- (options?: LinkBoxOptions): string
16
- raw: (options: LinkBoxOptions) => LinkBoxOptions
16
+ (styles?: LinkBoxStyles): string
17
+ raw: (styles: LinkBoxStyles) => LinkBoxStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type LinkOverlayProperties = {
@@ -9,11 +10,11 @@ export type LinkOverlayProperties = {
9
10
  }
10
11
 
11
12
 
12
- type LinkOverlayOptions = LinkOverlayProperties & Omit<SystemStyleObject, keyof LinkOverlayProperties >
13
+ type LinkOverlayStyles = LinkOverlayProperties & DistributiveOmit<SystemStyleObject, keyof LinkOverlayProperties >
13
14
 
14
15
  interface LinkOverlayPatternFn {
15
- (options?: LinkOverlayOptions): string
16
- raw: (options: LinkOverlayOptions) => LinkOverlayOptions
16
+ (styles?: LinkOverlayStyles): string
17
+ raw: (styles: LinkOverlayStyles) => LinkOverlayStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type SpacerProperties = {
@@ -9,11 +10,11 @@ export type SpacerProperties = {
9
10
  }
10
11
 
11
12
 
12
- type SpacerOptions = SpacerProperties & Omit<SystemStyleObject, keyof SpacerProperties >
13
+ type SpacerStyles = SpacerProperties & DistributiveOmit<SystemStyleObject, keyof SpacerProperties >
13
14
 
14
15
  interface SpacerPatternFn {
15
- (options?: SpacerOptions): string
16
- raw: (options: SpacerOptions) => SpacerOptions
16
+ (styles?: SpacerStyles): string
17
+ raw: (styles: SpacerStyles) => SpacerStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type SquareProperties = {
@@ -9,11 +10,11 @@ export type SquareProperties = {
9
10
  }
10
11
 
11
12
 
12
- type SquareOptions = SquareProperties & Omit<SystemStyleObject, keyof SquareProperties >
13
+ type SquareStyles = SquareProperties & DistributiveOmit<SystemStyleObject, keyof SquareProperties >
13
14
 
14
15
  interface SquarePatternFn {
15
- (options?: SquareOptions): string
16
- raw: (options: SquareOptions) => SquareOptions
16
+ (styles?: SquareStyles): string
17
+ raw: (styles: SquareStyles) => SquareStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type StackProperties = {
@@ -12,11 +13,11 @@ export type StackProperties = {
12
13
  }
13
14
 
14
15
 
15
- type StackOptions = StackProperties & Omit<SystemStyleObject, keyof StackProperties >
16
+ type StackStyles = StackProperties & DistributiveOmit<SystemStyleObject, keyof StackProperties >
16
17
 
17
18
  interface StackPatternFn {
18
- (options?: StackOptions): string
19
- raw: (options: StackOptions) => StackOptions
19
+ (styles?: StackStyles): string
20
+ raw: (styles: StackStyles) => StackStyles
20
21
  }
21
22
 
22
23
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type StyledLinkProperties = {
@@ -9,11 +10,11 @@ export type StyledLinkProperties = {
9
10
  }
10
11
 
11
12
 
12
- type StyledLinkOptions = StyledLinkProperties & Omit<SystemStyleObject, keyof StyledLinkProperties >
13
+ type StyledLinkStyles = StyledLinkProperties & DistributiveOmit<SystemStyleObject, keyof StyledLinkProperties >
13
14
 
14
15
  interface StyledLinkPatternFn {
15
- (options?: StyledLinkOptions): string
16
- raw: (options: StyledLinkOptions) => StyledLinkOptions
16
+ (styles?: StyledLinkStyles): string
17
+ raw: (styles: StyledLinkStyles) => StyledLinkStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type VisuallyHiddenProperties = {
@@ -9,11 +10,11 @@ export type VisuallyHiddenProperties = {
9
10
  }
10
11
 
11
12
 
12
- type VisuallyHiddenOptions = VisuallyHiddenProperties & Omit<SystemStyleObject, keyof VisuallyHiddenProperties >
13
+ type VisuallyHiddenStyles = VisuallyHiddenProperties & DistributiveOmit<SystemStyleObject, keyof VisuallyHiddenProperties >
13
14
 
14
15
  interface VisuallyHiddenPatternFn {
15
- (options?: VisuallyHiddenOptions): string
16
- raw: (options: VisuallyHiddenOptions) => VisuallyHiddenOptions
16
+ (styles?: VisuallyHiddenStyles): string
17
+ raw: (styles: VisuallyHiddenStyles) => VisuallyHiddenStyles
17
18
  }
18
19
 
19
20
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type VstackProperties = {
@@ -10,11 +11,11 @@ export type VstackProperties = {
10
11
  }
11
12
 
12
13
 
13
- type VstackOptions = VstackProperties & Omit<SystemStyleObject, keyof VstackProperties >
14
+ type VstackStyles = VstackProperties & DistributiveOmit<SystemStyleObject, keyof VstackProperties >
14
15
 
15
16
  interface VstackPatternFn {
16
- (options?: VstackOptions): string
17
- raw: (options: VstackOptions) => VstackOptions
17
+ (styles?: VstackStyles): string
18
+ raw: (styles: VstackStyles) => VstackStyles
18
19
  }
19
20
 
20
21
 
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
2
  import type { SystemStyleObject, ConditionalValue } from '../types'
3
- import type { PropertyValue } from '../types/prop-type'
4
3
  import type { Properties } from '../types/csstype'
4
+ import type { PropertyValue } from '../types/prop-type'
5
+ import type { DistributiveOmit } from '../types/system-types'
5
6
  import type { Tokens } from '../tokens'
6
7
 
7
8
  export type WrapProperties = {
@@ -13,11 +14,11 @@ export type WrapProperties = {
13
14
  }
14
15
 
15
16
 
16
- type WrapOptions = WrapProperties & Omit<SystemStyleObject, keyof WrapProperties >
17
+ type WrapStyles = WrapProperties & DistributiveOmit<SystemStyleObject, keyof WrapProperties >
17
18
 
18
19
  interface WrapPatternFn {
19
- (options?: WrapOptions): string
20
- raw: (options: WrapOptions) => WrapOptions
20
+ (styles?: WrapStyles): string
21
+ raw: (styles: WrapStyles) => WrapStyles
21
22
  }
22
23
 
23
24
 
@@ -11,6 +11,11 @@
11
11
  @import './tokens/keyframes.css';
12
12
 
13
13
  @layer utilities {
14
+ .styles\:dark\:text_green500.dark,
15
+ .dark .styles\:dark\:text_green500 {
16
+ color: green500;
17
+ }
18
+
14
19
  .font_12px\/1\.5_Helvetica\,_Arial\,_sans-serif {
15
20
  font: 12px/1.5 Helvetica, Arial, sans-serif;
16
21
  }
@@ -1020,6 +1025,15 @@
1020
1025
  opacity: 0.8;
1021
1026
  }
1022
1027
 
1028
+ @media screen and (min-width: 640px) {
1029
+ @media screen and (min-width: 768px) {
1030
+ .styles\:dark\:sm\:md\:text_red200.dark,
1031
+ .dark .styles\:dark\:sm\:md\:text_red200 {
1032
+ color: red200;
1033
+ }
1034
+ }
1035
+ }
1036
+
1023
1037
  @media screen and (min-width: 768px) {
1024
1038
  .md\:px_6 {
1025
1039
  padding-inline: var(--spacing-6);
@@ -37,6 +37,8 @@ export type AssetToken = "check"
37
37
 
38
38
  export type BreakpointToken = "sm" | "md" | "lg" | "xl" | "2xl"
39
39
 
40
+ export type AnimationName = "spin" | "ping" | "pulse" | "bounce"
41
+
40
42
  export type Tokens = {
41
43
  borders: BorderToken
42
44
  easings: EasingToken
@@ -55,6 +57,7 @@ export type Tokens = {
55
57
  colors: ColorToken
56
58
  assets: AssetToken
57
59
  breakpoints: BreakpointToken
60
+ animationName: AnimationName
58
61
  } & { [token: string]: never }
59
62
 
60
63
  export type TokenCategory = "zIndex" | "opacity" | "colors" | "fonts" | "fontSizes" | "fontWeights" | "lineHeights" | "letterSpacings" | "sizes" | "shadows" | "spacing" | "radii" | "borders" | "durations" | "easings" | "animations" | "blurs" | "gradients" | "breakpoints" | "assets"
@@ -1,11 +1,11 @@
1
1
  /* eslint-disable */
2
2
  import type { ComponentPropsWithoutRef, ElementType, ElementRef, Ref } from 'react'
3
- import type { Assign, JsxStyleProps, JsxHTMLProps } from './system-types'
3
+ import type { Assign, DistributiveOmit, JsxStyleProps, JsxHTMLProps } from './system-types'
4
4
  import type { RecipeDefinition, RecipeSelection, RecipeVariantRecord } from './recipe'
5
5
 
6
6
  type Dict = Record<string, unknown>
7
7
 
8
- type ComponentProps<T extends ElementType> = Omit<ComponentPropsWithoutRef<T>, 'ref'> & {
8
+ type ComponentProps<T extends ElementType> = DistributiveOmit<ComponentPropsWithoutRef<T>, 'ref'> & {
9
9
  ref?: Ref<ElementRef<T>>
10
10
  }
11
11
 
@@ -156,6 +156,7 @@ type PropertyValueTypes = {
156
156
  transitionDuration: Tokens["durations"];
157
157
  transition: "all" | "common" | "background" | "colors" | "opacity" | "shadow" | "transform";
158
158
  animation: Tokens["animations"];
159
+ animationName: Tokens["animationName"];
159
160
  animationDelay: Tokens["durations"];
160
161
  scale: "auto" | CssProperties["scale"];
161
162
  translate: "auto" | CssProperties["translate"];
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
- import type { SystemStyleObject } from './system-types'
2
+ import type { SystemStyleObject, DistributiveOmit } from './system-types'
3
3
 
4
4
  type Pretty<T> = { [K in keyof T]: T[K] } & {}
5
5
 
@@ -33,7 +33,9 @@ export type RecipeRuntimeFn<T extends RecipeVariantRecord> = RecipeVariantFn<T>
33
33
  variantMap: RecipeVariantMap<T>
34
34
  resolve: (props: RecipeSelection<T>) => SystemStyleObject
35
35
  config: RecipeConfig<T>
36
- splitVariantProps<Props extends RecipeSelection<T>>(props: Props): [RecipeSelection<T>, Pretty<Omit<Props, keyof T>>]
36
+ splitVariantProps<Props extends RecipeSelection<T>>(
37
+ props: Props,
38
+ ): [RecipeSelection<T>, Pretty<DistributiveOmit<Props, keyof T>>]
37
39
  }
38
40
 
39
41
  export type RecipeCompoundSelection<T extends RecipeVariantRecord> = {
@@ -472,6 +472,36 @@ export type SystemProperties = {
472
472
  writingMode?: PropertyValue<'writingMode'>
473
473
  zIndex?: PropertyValue<'zIndex'>
474
474
  zoom?: PropertyValue<'zoom'>
475
+ alignmentBaseline?: PropertyValue<'alignmentBaseline'>
476
+ baselineShift?: PropertyValue<'baselineShift'>
477
+ clipRule?: PropertyValue<'clipRule'>
478
+ colorInterpolation?: PropertyValue<'colorInterpolation'>
479
+ colorRendering?: PropertyValue<'colorRendering'>
480
+ dominantBaseline?: PropertyValue<'dominantBaseline'>
481
+ fill?: PropertyValue<'fill'>
482
+ fillOpacity?: PropertyValue<'fillOpacity'>
483
+ fillRule?: PropertyValue<'fillRule'>
484
+ floodColor?: PropertyValue<'floodColor'>
485
+ floodOpacity?: PropertyValue<'floodOpacity'>
486
+ glyphOrientationVertical?: PropertyValue<'glyphOrientationVertical'>
487
+ lightingColor?: PropertyValue<'lightingColor'>
488
+ marker?: PropertyValue<'marker'>
489
+ markerEnd?: PropertyValue<'markerEnd'>
490
+ markerMid?: PropertyValue<'markerMid'>
491
+ markerStart?: PropertyValue<'markerStart'>
492
+ shapeRendering?: PropertyValue<'shapeRendering'>
493
+ stopColor?: PropertyValue<'stopColor'>
494
+ stopOpacity?: PropertyValue<'stopOpacity'>
495
+ stroke?: PropertyValue<'stroke'>
496
+ strokeDasharray?: PropertyValue<'strokeDasharray'>
497
+ strokeDashoffset?: PropertyValue<'strokeDashoffset'>
498
+ strokeLinecap?: PropertyValue<'strokeLinecap'>
499
+ strokeLinejoin?: PropertyValue<'strokeLinejoin'>
500
+ strokeMiterlimit?: PropertyValue<'strokeMiterlimit'>
501
+ strokeOpacity?: PropertyValue<'strokeOpacity'>
502
+ strokeWidth?: PropertyValue<'strokeWidth'>
503
+ textAnchor?: PropertyValue<'textAnchor'>
504
+ vectorEffect?: PropertyValue<'vectorEffect'>
475
505
  pos?: PropertyValue<'pos'>
476
506
  insetEnd?: PropertyValue<'insetEnd'>
477
507
  end?: PropertyValue<'end'>
@@ -616,8 +646,6 @@ export type SystemProperties = {
616
646
  scrollSnapMarginBottom?: PropertyValue<'scrollSnapMarginBottom'>
617
647
  scrollSnapMarginLeft?: PropertyValue<'scrollSnapMarginLeft'>
618
648
  scrollSnapMarginRight?: PropertyValue<'scrollSnapMarginRight'>
619
- fill?: PropertyValue<'fill'>
620
- stroke?: PropertyValue<'stroke'>
621
649
  srOnly?: PropertyValue<'srOnly'>
622
650
  debug?: PropertyValue<'debug'>
623
651
  colorPalette?: PropertyValue<'colorPalette'>
@@ -56,19 +56,22 @@ type StyleProps = SystemProperties & MinimalNested<SystemStyleObject>
56
56
 
57
57
  export type JsxStyleProps = StyleProps & WithCss
58
58
 
59
- export type Assign<T, U> = Omit<T, keyof U> & U
59
+ export type DistributiveOmit<T, K extends keyof any> = T extends unknown ? Omit<T, K> : never
60
+
61
+ export type Assign<T, U> = {
62
+ [K in keyof T]: K extends keyof U ? U[K] : T[K]
63
+ } & U
60
64
 
61
65
  export type PatchedHTMLProps = {
62
- htmlSize?: string | number
63
66
  htmlWidth?: string | number
64
67
  htmlHeight?: string | number
65
68
  htmlTranslate?: 'yes' | 'no' | undefined
66
69
  htmlContent?: string
67
70
  }
68
71
 
69
- export type OmittedHTMLProps = 'color' | 'translate' | 'transition' | 'width' | 'height' | 'size' | 'content'
72
+ export type OmittedHTMLProps = 'color' | 'translate' | 'transition' | 'width' | 'height' | 'content'
70
73
 
71
- type WithHTMLProps<T> = Omit<T, OmittedHTMLProps> & PatchedHTMLProps
74
+ type WithHTMLProps<T> = DistributiveOmit<T, OmittedHTMLProps> & PatchedHTMLProps
72
75
 
73
76
  export type JsxHTMLProps<T extends Record<string, any>, P extends Record<string, any> = {}> = Assign<
74
77
  WithHTMLProps<T>,