@pandacss/studio 0.21.0 → 0.22.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.
Files changed (64) hide show
  1. package/astro.config.mjs +3 -9
  2. package/dist/studio.d.mts +1 -1
  3. package/dist/studio.d.ts +1 -1
  4. package/dist/studio.js +38 -2050
  5. package/dist/studio.mjs +42 -2080
  6. package/package.json +11 -14
  7. package/src/components/sizes.tsx +4 -3
  8. package/styled-system/helpers.mjs +3 -1
  9. package/styled-system/jsx/aspect-ratio.mjs +2 -5
  10. package/styled-system/jsx/bleed.mjs +2 -5
  11. package/styled-system/jsx/box.mjs +3 -7
  12. package/styled-system/jsx/center.mjs +2 -5
  13. package/styled-system/jsx/circle.mjs +2 -5
  14. package/styled-system/jsx/container.mjs +3 -7
  15. package/styled-system/jsx/divider.mjs +2 -5
  16. package/styled-system/jsx/factory.mjs +1 -2
  17. package/styled-system/jsx/flex.mjs +2 -5
  18. package/styled-system/jsx/float.mjs +2 -5
  19. package/styled-system/jsx/grid-item.mjs +2 -5
  20. package/styled-system/jsx/grid.mjs +2 -5
  21. package/styled-system/jsx/hstack.mjs +2 -5
  22. package/styled-system/jsx/index.d.ts +0 -3
  23. package/styled-system/jsx/link-box.mjs +3 -7
  24. package/styled-system/jsx/link-overlay.mjs +3 -7
  25. package/styled-system/jsx/spacer.mjs +2 -5
  26. package/styled-system/jsx/square.mjs +2 -5
  27. package/styled-system/jsx/stack.mjs +2 -5
  28. package/styled-system/jsx/styled-link.mjs +3 -7
  29. package/styled-system/jsx/visually-hidden.mjs +3 -7
  30. package/styled-system/jsx/vstack.mjs +2 -5
  31. package/styled-system/jsx/wrap.mjs +2 -5
  32. package/styled-system/styles.css +1277 -542
  33. package/styled-system/types/conditions.d.ts +1 -1
  34. package/styled-system/types/csstype.d.ts +1270 -721
  35. package/styled-system/types/recipe.d.ts +9 -0
  36. package/styled-system/types/static-css.d.ts +39 -0
  37. package/styled-system/chunks/src__components__color-constrast.css +0 -106
  38. package/styled-system/chunks/src__components__color-wrapper.css +0 -58
  39. package/styled-system/chunks/src__components__colors.css +0 -106
  40. package/styled-system/chunks/src__components__empty-state.css +0 -46
  41. package/styled-system/chunks/src__components__font-family.css +0 -86
  42. package/styled-system/chunks/src__components__font-tokens.css +0 -62
  43. package/styled-system/chunks/src__components__input.css +0 -58
  44. package/styled-system/chunks/src__components__layer-styles.css +0 -63
  45. package/styled-system/chunks/src__components__nav-item.css +0 -57
  46. package/styled-system/chunks/src__components__overview.css +0 -122
  47. package/styled-system/chunks/src__components__radii.css +0 -50
  48. package/styled-system/chunks/src__components__semantic-color.css +0 -70
  49. package/styled-system/chunks/src__components__side-nav-item.css +0 -30
  50. package/styled-system/chunks/src__components__side-nav.css +0 -50
  51. package/styled-system/chunks/src__components__sizes.css +0 -42
  52. package/styled-system/chunks/src__components__text-styles.css +0 -32
  53. package/styled-system/chunks/src__components__theme-toggle.css +0 -62
  54. package/styled-system/chunks/src__components__token-content.css +0 -14
  55. package/styled-system/chunks/src__components__token-group.css +0 -22
  56. package/styled-system/chunks/src__components__typography-playground.css +0 -62
  57. package/styled-system/chunks/src__layouts__Sidebar.css +0 -114
  58. package/styled-system/global.css +0 -58
  59. package/styled-system/reset.css +0 -214
  60. package/styled-system/static.css +0 -5
  61. package/styled-system/tokens/index.css +0 -437
  62. package/styled-system/tokens/keyframes.css +0 -28
  63. package/styled-system/types/helpers.d.ts +0 -2
  64. package/virtual-panda.ts +0 -62
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable */
2
+ import type { RecipeRule } from './static-css';
2
3
  import type { SystemStyleObject, DistributiveOmit, Pretty } from './system-types';
3
4
 
4
5
  type StringToBoolean<T> = T extends 'true' | 'false' ? boolean : T
@@ -63,6 +64,10 @@ export interface RecipeDefinition<T extends RecipeVariantRecord> {
63
64
  * The styles to apply when a combination of variants is selected.
64
65
  */
65
66
  compoundVariants?: Pretty<RecipeCompoundVariant<RecipeCompoundSelection<T>>>[]
67
+ /**
68
+ * Variants to pre-generate, will be include in the final `config.staticCss`
69
+ */
70
+ staticCss?: RecipeRule[]
66
71
  }
67
72
 
68
73
  export type RecipeCreatorFn = <T extends RecipeVariantRecord>(config: RecipeDefinition<T>) => RecipeRuntimeFn<T>
@@ -134,6 +139,10 @@ export interface SlotRecipeDefinition<S extends string, T extends SlotRecipeVari
134
139
  * The styles to apply when a combination of variants is selected.
135
140
  */
136
141
  compoundVariants?: Pretty<SlotRecipeCompoundVariant<S, RecipeCompoundSelection<T>>>[]
142
+ /**
143
+ * Variants to pre-generate, will be include in the final `config.staticCss`
144
+ */
145
+ staticCss?: RecipeRule[]
137
146
  }
138
147
 
139
148
  export type SlotRecipeCreatorFn = <S extends string, T extends SlotRecipeVariantRecord<S>>(
@@ -0,0 +1,39 @@
1
+ /* eslint-disable */
2
+ interface CssRule {
3
+ /**
4
+ * The css properties to generate utilities for.
5
+ * @example ['margin', 'padding']
6
+ */
7
+ properties: {
8
+ [property: string]: string[]
9
+ }
10
+ /**
11
+ * The css conditions to generate utilities for.
12
+ * @example ['hover', 'focus']
13
+ */
14
+ conditions?: string[]
15
+ /**
16
+ * Whether to generate responsive utilities.
17
+ */
18
+ responsive?: boolean
19
+ }
20
+
21
+ export type RecipeRule =
22
+ | '*'
23
+ | ({
24
+ conditions?: string[]
25
+ responsive?: boolean
26
+ } & { [variant: string]: boolean | string[] })
27
+
28
+ export interface StaticCssOptions {
29
+ /**
30
+ * The css utility classes to generate.
31
+ */
32
+ css?: CssRule[]
33
+ /**
34
+ * The css recipes to generate.
35
+ */
36
+ recipes?: {
37
+ [recipe: string]: RecipeRule[]
38
+ }
39
+ }
@@ -1,106 +0,0 @@
1
- @layer utilities {
2
-
3
- .pt_16 {
4
- padding-top: var(--spacing-16)
5
- }
6
-
7
- .gap_5 {
8
- gap: var(--spacing-5)
9
- }
10
-
11
- .mt_10 {
12
- margin-top: var(--spacing-10)
13
- }
14
-
15
- .font_bold {
16
- font-weight: var(--font-weights-bold)
17
- }
18
-
19
- .fs_4xl {
20
- font-size: var(--font-sizes-4xl)
21
- }
22
-
23
- .opacity_0\.5 {
24
- opacity: 0.5
25
- }
26
-
27
- .justify_space-between {
28
- justify-content: space-between
29
- }
30
-
31
- .font_medium {
32
- font-weight: var(--font-weights-medium)
33
- }
34
-
35
- .gap_2 {
36
- gap: var(--spacing-2)
37
- }
38
-
39
- .gap_3 {
40
- gap: var(--spacing-3)
41
- }
42
-
43
- .justify_center {
44
- justify-content: center
45
- }
46
-
47
- .gap_10px {
48
- gap: 10px
49
- }
50
-
51
- .flex_row {
52
- flex-direction: row
53
- }
54
-
55
- .font_semibold {
56
- font-weight: var(--font-weights-semibold)
57
- }
58
-
59
- .fs_2xl {
60
- font-size: var(--font-sizes-2xl)
61
- }
62
-
63
- .p_2 {
64
- padding: var(--spacing-2)
65
- }
66
-
67
- .ring_none {
68
- outline: var(--borders-none)
69
- }
70
-
71
- .border-width_1px {
72
- border-width: 1px
73
- }
74
-
75
- .border_card {
76
- border-color: var(--colors-card)
77
- }
78
-
79
- .items_center {
80
- align-items: center
81
- }
82
-
83
- .gap_2\.5 {
84
- gap: var(--spacing-2\.5)
85
- }
86
-
87
- .text_center {
88
- text-align: center
89
- }
90
-
91
- .d_flex {
92
- display: flex
93
- }
94
-
95
- .flex_column {
96
- flex-direction: column
97
- }
98
-
99
- .gap_4 {
100
- gap: var(--spacing-4)
101
- }
102
-
103
- .flex_1 {
104
- flex: 1 1 0%
105
- }
106
- }
@@ -1,58 +0,0 @@
1
- @layer utilities {
2
-
3
- .w_full {
4
- width: var(--sizes-full)
5
- }
6
-
7
- .h_10 {
8
- height: var(--sizes-10)
9
- }
10
-
11
- .rounded_sm {
12
- border-radius: var(--radii-sm)
13
- }
14
-
15
- .pos_relative {
16
- position: relative
17
- }
18
-
19
- .overflow_hidden {
20
- overflow: hidden
21
- }
22
-
23
- .shadow_inset {
24
- box-shadow: var(--shadows-inset)
25
- }
26
-
27
- .before\:content_\'\'::before {
28
- content: ''
29
- }
30
-
31
- .before\:pos_absolute::before {
32
- position: absolute
33
- }
34
-
35
- .before\:rounded_sm::before {
36
- border-radius: var(--radii-sm)
37
- }
38
-
39
- .before\:w_100\%::before {
40
- width: 100%
41
- }
42
-
43
- .before\:h_100\%::before {
44
- height: 100%
45
- }
46
-
47
- .before\:bg_24px::before {
48
- background-size: 24px
49
- }
50
-
51
- .before\:z_-1::before {
52
- z-index: -1
53
- }
54
-
55
- .before\:bg-img_check::before {
56
- background-image: var(--assets-check)
57
- }
58
- }
@@ -1,106 +0,0 @@
1
- @layer utilities {
2
-
3
- .font_semibold {
4
- font-weight: var(--font-weights-semibold)
5
- }
6
-
7
- .text_capitalize {
8
- text-transform: capitalize
9
- }
10
-
11
- .fs_xl {
12
- font-size: var(--font-sizes-xl)
13
- }
14
-
15
- .font_medium {
16
- font-weight: var(--font-weights-medium)
17
- }
18
-
19
- .opacity_0\.7 {
20
- opacity: 0.7
21
- }
22
-
23
- .fs_sm {
24
- font-size: var(--font-sizes-sm)
25
- }
26
-
27
- .text_uppercase {
28
- text-transform: uppercase
29
- }
30
-
31
- .mb_3\.5 {
32
- margin-bottom: var(--spacing-3\.5)
33
- }
34
-
35
- .pos_sticky {
36
- position: sticky
37
- }
38
-
39
- .top_0 {
40
- top: var(--spacing-0)
41
- }
42
-
43
- .z_1 {
44
- z-index: 1
45
- }
46
-
47
- .w_full {
48
- width: var(--sizes-full)
49
- }
50
-
51
- .gap_0\.5 {
52
- gap: var(--spacing-0\.5)
53
- }
54
-
55
- .mt_2 {
56
- margin-top: var(--spacing-2)
57
- }
58
-
59
- .flex_column {
60
- flex-direction: column
61
- }
62
-
63
- .gap_10 {
64
- gap: var(--spacing-10)
65
- }
66
-
67
- .d_flex {
68
- display: flex
69
- }
70
-
71
- .items_center {
72
- align-items: center
73
- }
74
-
75
- .gap_1 {
76
- gap: var(--spacing-1)
77
- }
78
-
79
- .flex_row {
80
- flex-direction: row
81
- }
82
-
83
- .grid-cols_repeat\(auto-fit\,_minmax\(13rem\,_1fr\)\) {
84
- grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr))
85
- }
86
-
87
- .d_grid {
88
- display: grid
89
- }
90
-
91
- .grid-cols_repeat\(auto-fit\,_minmax\(30rem\,_1fr\)\) {
92
- grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr))
93
- }
94
-
95
- .gap_4 {
96
- gap: var(--spacing-4)
97
- }
98
-
99
- .my_5 {
100
- margin-block: var(--spacing-5)
101
- }
102
-
103
- .mx_0 {
104
- margin-inline: var(--spacing-0)
105
- }
106
- }
@@ -1,46 +0,0 @@
1
- @layer utilities {
2
-
3
- .fs_5xl {
4
- font-size: var(--font-sizes-5xl)
5
- }
6
-
7
- .font_semibold {
8
- font-weight: var(--font-weights-semibold)
9
- }
10
-
11
- .justify_center {
12
- justify-content: center
13
- }
14
-
15
- .gap_5 {
16
- gap: var(--spacing-5)
17
- }
18
-
19
- .h_full {
20
- height: var(--sizes-full)
21
- }
22
-
23
- .min-h_40vh {
24
- min-height: 40vh
25
- }
26
-
27
- .d_flex {
28
- display: flex
29
- }
30
-
31
- .flex_column {
32
- flex-direction: column
33
- }
34
-
35
- .items_center {
36
- align-items: center
37
- }
38
-
39
- .gap_10px {
40
- gap: 10px
41
- }
42
-
43
- .opacity_0\.8 {
44
- opacity: 0.8
45
- }
46
- }
@@ -1,86 +0,0 @@
1
- @layer utilities {
2
-
3
- .fs_100px {
4
- font-size: 100px
5
- }
6
-
7
- .font_bold {
8
- font-weight: var(--font-weights-bold)
9
- }
10
-
11
- .leading_1 {
12
- line-height: 1
13
- }
14
-
15
- .font_semibold {
16
- font-weight: var(--font-weights-semibold)
17
- }
18
-
19
- .opacity_0\.7 {
20
- opacity: 0.7
21
- }
22
-
23
- .gap_8 {
24
- gap: var(--spacing-8)
25
- }
26
-
27
- .flex_column {
28
- flex-direction: column
29
- }
30
-
31
- .gap_10px {
32
- gap: 10px
33
- }
34
-
35
- .gap_10 {
36
- gap: var(--spacing-10)
37
- }
38
-
39
- .flex_row {
40
- flex-direction: row
41
- }
42
-
43
- .flex-wrap_wrap {
44
- flex-wrap: wrap
45
- }
46
-
47
- .fs_24px {
48
- font-size: 24px
49
- }
50
-
51
- .mt_8 {
52
- margin-top: var(--spacing-8)
53
- }
54
-
55
- .text_uppercase {
56
- text-transform: uppercase
57
- }
58
-
59
- .d_flex {
60
- display: flex
61
- }
62
-
63
- .items_center {
64
- align-items: center
65
- }
66
-
67
- .justify_center {
68
- justify-content: center
69
- }
70
-
71
- .flex_0_0_auto {
72
- flex: 0 0 auto
73
- }
74
-
75
- .w_8 {
76
- width: var(--sizes-8)
77
- }
78
-
79
- .h_8 {
80
- height: var(--sizes-8)
81
- }
82
-
83
- .text_lowercase {
84
- text-transform: lowercase
85
- }
86
- }
@@ -1,62 +0,0 @@
1
- @layer utilities {
2
-
3
- .mb_3\.5 {
4
- margin-bottom: var(--spacing-3\.5)
5
- }
6
-
7
- .pos_sticky {
8
- position: sticky
9
- }
10
-
11
- .top_0 {
12
- top: var(--spacing-0)
13
- }
14
-
15
- .z_1 {
16
- z-index: 1
17
- }
18
-
19
- .resize_vertical {
20
- resize: vertical
21
- }
22
-
23
- .font_medium {
24
- font-weight: var(--font-weights-medium)
25
- }
26
-
27
- .opacity_0\.4 {
28
- opacity: 0.4
29
- }
30
-
31
- .fs_4xl {
32
- font-size: var(--font-sizes-4xl)
33
- }
34
-
35
- .leading_normal {
36
- line-height: var(--line-heights-normal)
37
- }
38
-
39
- .flex_column {
40
- flex-direction: column
41
- }
42
-
43
- .gap_3\.5 {
44
- gap: var(--spacing-3\.5)
45
- }
46
-
47
- .d_flex {
48
- display: flex
49
- }
50
-
51
- .items_center {
52
- align-items: center
53
- }
54
-
55
- .gap_1 {
56
- gap: var(--spacing-1)
57
- }
58
-
59
- .flex_row {
60
- flex-direction: row
61
- }
62
- }
@@ -1,58 +0,0 @@
1
- @layer utilities {
2
-
3
- .bg_transparent {
4
- background: var(--colors-transparent)
5
- }
6
-
7
- .w_full {
8
- width: var(--sizes-full)
9
- }
10
-
11
- .px_4 {
12
- padding-inline: var(--spacing-4)
13
- }
14
-
15
- .py_2 {
16
- padding-block: var(--spacing-2)
17
- }
18
-
19
- .rounded_md {
20
- border-radius: var(--radii-md)
21
- }
22
-
23
- .text_neutral\.600 {
24
- color: var(--colors-neutral-600)
25
- }
26
-
27
- .dark\:text_neutral\.300.dark, .dark .dark\:text_neutral\.300 {
28
- color: var(--colors-neutral-300)
29
- }
30
-
31
- .shadow_sm {
32
- box-shadow: var(--shadows-sm)
33
- }
34
-
35
- .border-width_1px {
36
- border-width: 1px
37
- }
38
-
39
- .border_border {
40
- border-color: var(--colors-border)
41
- }
42
-
43
- .focusWithin\:outline-style_solid:focus-within {
44
- outline-style: solid
45
- }
46
-
47
- .focusWithin\:ring_2px:focus-within {
48
- outline-width: 2px
49
- }
50
-
51
- .focusWithin\:ring_2px:focus-within {
52
- outline-offset: 2px
53
- }
54
-
55
- .focusWithin\:ring_neutral\.400:focus-within {
56
- outline-color: var(--colors-neutral-400)
57
- }
58
- }
@@ -1,63 +0,0 @@
1
- @layer utilities {
2
-
3
- .divide-y_1px > :not([hidden]) ~ :not([hidden]) {
4
- border-top-width: 1px;
5
- border-bottom-width: 0px
6
- }
7
-
8
- .divide_card > :not([hidden]) ~ :not([hidden]) {
9
- border-color: var(--colors-card)
10
- }
11
-
12
- .px_1 {
13
- padding-inline: var(--spacing-1)
14
- }
15
-
16
- .py_2\.5 {
17
- padding-block: var(--spacing-2\.5)
18
- }
19
-
20
- .border_card {
21
- border-color: var(--colors-card)
22
- }
23
-
24
- .fs_small {
25
- font-size: small
26
- }
27
-
28
- .mt_1\.5 {
29
- margin-top: var(--spacing-1\.5)
30
- }
31
-
32
- .px_4 {
33
- padding-inline: var(--spacing-4)
34
- }
35
-
36
- .py_2 {
37
- padding-block: var(--spacing-2)
38
- }
39
-
40
- .bg_card {
41
- background: var(--colors-card)
42
- }
43
-
44
- .mt_5 {
45
- margin-top: var(--spacing-5)
46
- }
47
-
48
- .flex_auto {
49
- flex: 1 1 auto
50
- }
51
-
52
- .my_3 {
53
- margin-block: var(--spacing-3)
54
- }
55
-
56
- .h_20 {
57
- height: var(--sizes-20)
58
- }
59
-
60
- .font_medium {
61
- font-weight: var(--font-weights-medium)
62
- }
63
- }
@@ -1,57 +0,0 @@
1
- @layer utilities {
2
-
3
- .w_60 {
4
- width: var(--sizes-60)
5
- }
6
-
7
- .bg_card {
8
- background: var(--colors-card)
9
- }
10
-
11
- .rounded_sm {
12
- border-radius: var(--radii-sm)
13
- }
14
-
15
- .p_4 {
16
- padding: var(--spacing-4)
17
- }
18
-
19
- .transition_all_0\.2s_ease {
20
- transition: all 0.2s ease
21
- }
22
- .\[\&_svg\]\:font_normal svg {
23
- font-weight: var(--font-weights-normal)
24
- }
25
- .\[\&_svg\]\:fs_xx-large svg {
26
- font-size: xx-large
27
- }
28
- .\[\&_svg\]\:mb_6 svg {
29
- margin-bottom: var(--spacing-6)
30
- }
31
- .\[\&_svg\]\:h_6 svg {
32
- height: var(--sizes-6)
33
- }
34
- .\[\&_svg\]\:w_6 svg {
35
- width: var(--sizes-6)
36
- }
37
-
38
- .font_semibold {
39
- font-weight: var(--font-weights-semibold)
40
- }
41
-
42
- .fs_small {
43
- font-size: small
44
- }
45
-
46
- .d_block {
47
- display: block
48
- }
49
-
50
- .mt_3 {
51
- margin-top: var(--spacing-3)
52
- }
53
-
54
- .hover\:shadow_lg:is(:hover, [data-hover]) {
55
- box-shadow: var(--shadows-lg)
56
- }
57
- }