@pandacss/studio 0.4.0 → 0.5.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 (52) hide show
  1. package/dist/studio.d.mts +13 -0
  2. package/dist/studio.js +11 -4
  3. package/dist/studio.mjs +12 -5
  4. package/package.json +13 -13
  5. package/styled-system/chunks/src__components__analyzer__category-utilities.css +65 -1
  6. package/styled-system/chunks/src__components__analyzer__data-combobox.css +29 -0
  7. package/styled-system/chunks/src__components__analyzer__file-details.css +36 -0
  8. package/styled-system/chunks/src__components__analyzer__report-item-columns.css +1 -0
  9. package/styled-system/chunks/src__components__analyzer__report-item-link.css +96 -0
  10. package/styled-system/chunks/src__components__analyzer__utility-details.css +65 -0
  11. package/styled-system/chunks/src__components__color-constrast.css +1 -2
  12. package/styled-system/chunks/src__components__color-wrapper.css +96 -0
  13. package/styled-system/chunks/src__components__colors.css +2 -2
  14. package/styled-system/chunks/src__components__font-tokens.css +1 -1
  15. package/styled-system/chunks/src__components__input.css +62 -0
  16. package/styled-system/chunks/src__components__layer-styles.css +26 -0
  17. package/styled-system/chunks/src__components__nav-item.css +72 -0
  18. package/styled-system/chunks/src__components__overview.css +25 -1
  19. package/styled-system/chunks/src__components__side-nav-item.css +24 -0
  20. package/styled-system/chunks/src__components__side-nav.css +2 -2
  21. package/styled-system/chunks/src__components__theme-toggle.css +12 -0
  22. package/styled-system/chunks/src__components__token-analyzer.css +149 -1
  23. package/styled-system/chunks/src__layouts__Sidebar.css +24 -0
  24. package/styled-system/helpers.mjs +35 -22
  25. package/styled-system/styles.css +5 -266
  26. package/styled-system/tokens/index.css +101 -30
  27. package/styled-system/tokens/index.mjs +322 -38
  28. package/styled-system/tokens/tokens.d.ts +3 -3
  29. package/styled-system/types/pattern.d.ts +1 -1
  30. package/styled-system/types/prop-type.d.ts +1 -1
  31. package/styled-system/types/system-types.d.ts +1 -1
  32. package/styled-system/chunks/..__core____tests____atomic-rule.test.css +0 -363
  33. package/styled-system/chunks/src__components__analyzer__quick-tooltip.css +0 -2
  34. package/styled-system/chunks/src__components__analyzer__token-search-combobox.css +0 -2
  35. package/styled-system/chunks/src__layouts__Layout.css +0 -2
  36. package/styled-system/chunks/src__pages__colors.css +0 -2
  37. package/styled-system/chunks/src__pages__font-sizes.css +0 -2
  38. package/styled-system/chunks/src__pages__font-weights.css +0 -2
  39. package/styled-system/chunks/src__pages__fonts.css +0 -2
  40. package/styled-system/chunks/src__pages__index.css +0 -2
  41. package/styled-system/chunks/src__pages__layer-styles.css +0 -2
  42. package/styled-system/chunks/src__pages__letter-spacings.css +0 -2
  43. package/styled-system/chunks/src__pages__line-heights.css +0 -2
  44. package/styled-system/chunks/src__pages__playground__contrast-checker.css +0 -2
  45. package/styled-system/chunks/src__pages__playground__typography.css +0 -2
  46. package/styled-system/chunks/src__pages__radii.css +0 -2
  47. package/styled-system/chunks/src__pages__sizes.css +0 -2
  48. package/styled-system/chunks/src__pages__spacing.css +0 -2
  49. package/styled-system/chunks/src__pages__text-styles.css +0 -2
  50. package/styled-system/chunks/src__pages__token-analyzer__file.css +0 -2
  51. package/styled-system/chunks/src__pages__token-analyzer__index.css +0 -2
  52. package/styled-system/chunks/src__pages__token-analyzer__utility.css +0 -2
@@ -36,7 +36,7 @@
36
36
  }
37
37
 
38
38
  .top_0 {
39
- top: 0;
39
+ top: var(--spacing-0);
40
40
  }
41
41
 
42
42
  .z_1 {
@@ -100,6 +100,6 @@
100
100
  }
101
101
 
102
102
  .mx_0 {
103
- margin-inline: 0;
103
+ margin-inline: var(--spacing-0);
104
104
  }
105
105
  }
@@ -8,7 +8,7 @@
8
8
  }
9
9
 
10
10
  .top_0 {
11
- top: 0;
11
+ top: var(--spacing-0);
12
12
  }
13
13
 
14
14
  .z_1 {
@@ -1,4 +1,66 @@
1
1
  @layer utilities {
2
+ .dark\:text_neutral\.300 {
3
+ &.dark,
4
+ .dark & {
5
+ color: var(--colors-neutral-300);
6
+ }
7
+ }
8
+
9
+ .focusWithin\:outline-style_solid {
10
+ &:focus-within {
11
+ outline-style: solid;
12
+ }
13
+ }
14
+
15
+ .focusWithin\:ring_2px {
16
+ &:focus-within {
17
+ outline-width: 2px;
18
+ }
19
+ }
20
+
21
+ .focusWithin\:ring_2px {
22
+ &:focus-within {
23
+ outline-offset: 2px;
24
+ }
25
+ }
26
+
27
+ .focusWithin\:ring_neutral\.400 {
28
+ &:focus-within {
29
+ outline-color: var(--colors-neutral-400);
30
+ }
31
+ }
32
+
33
+ .dark\:text_neutral\.300 {
34
+ &.dark,
35
+ .dark & {
36
+ color: var(--colors-neutral-300);
37
+ }
38
+ }
39
+
40
+ .focusWithin\:outline-style_solid {
41
+ &:focus-within {
42
+ outline-style: solid;
43
+ }
44
+ }
45
+
46
+ .focusWithin\:ring_2px {
47
+ &:focus-within {
48
+ outline-width: 2px;
49
+ }
50
+ }
51
+
52
+ .focusWithin\:ring_2px {
53
+ &:focus-within {
54
+ outline-offset: 2px;
55
+ }
56
+ }
57
+
58
+ .focusWithin\:ring_neutral\.400 {
59
+ &:focus-within {
60
+ outline-color: var(--colors-neutral-400);
61
+ }
62
+ }
63
+
2
64
  .bg_transparent {
3
65
  background: var(--colors-transparent);
4
66
  }
@@ -12,6 +12,32 @@
12
12
  }
13
13
  }
14
14
 
15
+ .divide-y_1px {
16
+ & > :not([hidden]) ~ :not([hidden]) {
17
+ border-top-width: 1px;
18
+ border-bottom-width: 0px;
19
+ }
20
+ }
21
+
22
+ .divide_card {
23
+ & > :not([hidden]) ~ :not([hidden]) {
24
+ border-color: var(--colors-card);
25
+ }
26
+ }
27
+
28
+ .divide-y_1px {
29
+ & > :not([hidden]) ~ :not([hidden]) {
30
+ border-top-width: 1px;
31
+ border-bottom-width: 0px;
32
+ }
33
+ }
34
+
35
+ .divide_card {
36
+ & > :not([hidden]) ~ :not([hidden]) {
37
+ border-color: var(--colors-card);
38
+ }
39
+ }
40
+
15
41
  .px_1 {
16
42
  padding-inline: var(--spacing-1);
17
43
  }
@@ -1,4 +1,16 @@
1
1
  @layer utilities {
2
+ .hover\:shadow_lg {
3
+ &:where(:hover, [data-hover]) {
4
+ box-shadow: var(--shadows-lg);
5
+ }
6
+ }
7
+
8
+ .hover\:shadow_lg {
9
+ &:where(:hover, [data-hover]) {
10
+ box-shadow: var(--shadows-lg);
11
+ }
12
+ }
13
+
2
14
  .w_60 {
3
15
  width: var(--sizes-60);
4
16
  }
@@ -55,6 +67,66 @@
55
67
  }
56
68
  }
57
69
 
70
+ .\[\&_svg\]\:font_normal {
71
+ & svg {
72
+ font-weight: var(--font-weights-normal);
73
+ }
74
+ }
75
+
76
+ .\[\&_svg\]\:fs_xx-large {
77
+ & svg {
78
+ font-size: xx-large;
79
+ }
80
+ }
81
+
82
+ .\[\&_svg\]\:mb_6 {
83
+ & svg {
84
+ margin-bottom: var(--spacing-6);
85
+ }
86
+ }
87
+
88
+ .\[\&_svg\]\:h_6 {
89
+ & svg {
90
+ height: var(--sizes-6);
91
+ }
92
+ }
93
+
94
+ .\[\&_svg\]\:w_6 {
95
+ & svg {
96
+ width: var(--sizes-6);
97
+ }
98
+ }
99
+
100
+ .\[\&_svg\]\:font_normal {
101
+ & svg {
102
+ font-weight: var(--font-weights-normal);
103
+ }
104
+ }
105
+
106
+ .\[\&_svg\]\:fs_xx-large {
107
+ & svg {
108
+ font-size: xx-large;
109
+ }
110
+ }
111
+
112
+ .\[\&_svg\]\:mb_6 {
113
+ & svg {
114
+ margin-bottom: var(--spacing-6);
115
+ }
116
+ }
117
+
118
+ .\[\&_svg\]\:h_6 {
119
+ & svg {
120
+ height: var(--sizes-6);
121
+ }
122
+ }
123
+
124
+ .\[\&_svg\]\:w_6 {
125
+ & svg {
126
+ width: var(--sizes-6);
127
+ }
128
+ }
129
+
58
130
  .font_semibold {
59
131
  font-weight: var(--font-weights-semibold);
60
132
  }
@@ -108,7 +108,31 @@
108
108
  }
109
109
 
110
110
  .p_0 {
111
- padding: 0;
111
+ padding: var(--spacing-0);
112
+ }
113
+
114
+ .\[\&\:hover\]\:bg_\#4049f0 {
115
+ &:hover {
116
+ background: #4049f0;
117
+ }
118
+ }
119
+
120
+ .\[\&\:hover\]\:shadow_lg {
121
+ &:hover {
122
+ box-shadow: var(--shadows-lg);
123
+ }
124
+ }
125
+
126
+ .\[\&\:hover\]\:bg_\#4049f0 {
127
+ &:hover {
128
+ background: #4049f0;
129
+ }
130
+ }
131
+
132
+ .\[\&\:hover\]\:shadow_lg {
133
+ &:hover {
134
+ box-shadow: var(--shadows-lg);
135
+ }
112
136
  }
113
137
 
114
138
  .\[\&\:hover\]\:bg_\#4049f0 {
@@ -1,4 +1,28 @@
1
1
  @layer utilities {
2
+ .hover\:text_yellow\.300 {
3
+ &:where(:hover, [data-hover]) {
4
+ color: var(--colors-yellow-300);
5
+ }
6
+ }
7
+
8
+ .currentPage\:text_yellow\.300 {
9
+ &[aria-current='page'] {
10
+ color: var(--colors-yellow-300);
11
+ }
12
+ }
13
+
14
+ .hover\:text_yellow\.300 {
15
+ &:where(:hover, [data-hover]) {
16
+ color: var(--colors-yellow-300);
17
+ }
18
+ }
19
+
20
+ .currentPage\:text_yellow\.300 {
21
+ &[aria-current='page'] {
22
+ color: var(--colors-yellow-300);
23
+ }
24
+ }
25
+
2
26
  .d_block {
3
27
  display: block;
4
28
  }
@@ -24,7 +24,7 @@
24
24
  }
25
25
 
26
26
  .p_0 {
27
- padding: 0;
27
+ padding: var(--spacing-0);
28
28
  }
29
29
 
30
30
  .my_2 {
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  .mx_0 {
35
- margin-inline: 0;
35
+ margin-inline: var(--spacing-0);
36
36
  }
37
37
 
38
38
  .d_flex {
@@ -1,4 +1,16 @@
1
1
  @layer utilities {
2
+ .\[\&\.active\]\:text_yellow\.300 {
3
+ &.active {
4
+ color: var(--colors-yellow-300);
5
+ }
6
+ }
7
+
8
+ .\[\&\.active\]\:text_yellow\.300 {
9
+ &.active {
10
+ color: var(--colors-yellow-300);
11
+ }
12
+ }
13
+
2
14
  .cursor_pointer {
3
15
  cursor: pointer;
4
16
  }
@@ -3,6 +3,138 @@
3
3
  padding-block: 20px;
4
4
  }
5
5
 
6
+ .\[\&_li\]\:cursor_pointer {
7
+ & li {
8
+ cursor: pointer;
9
+ }
10
+ }
11
+
12
+ .hover\:opacity_0\.8 {
13
+ &:where(:hover, [data-hover]) {
14
+ opacity: 0.8;
15
+ }
16
+ }
17
+
18
+ .hover\:bg_border {
19
+ &:where(:hover, [data-hover]) {
20
+ background-color: var(--colors-border);
21
+ }
22
+ }
23
+
24
+ .hover\:bg_border {
25
+ &:where(:hover, [data-hover]) {
26
+ background: var(--colors-border);
27
+ }
28
+ }
29
+
30
+ .hover\:opacity_0\.6 {
31
+ &:where(:hover, [data-hover]) {
32
+ opacity: 0.6;
33
+ }
34
+ }
35
+
36
+ .hover\:opacity_1 {
37
+ &:where(:hover, [data-hover]) {
38
+ opacity: 1;
39
+ }
40
+ }
41
+
42
+ .hover\:border-b_black {
43
+ &:where(:hover, [data-hover]) {
44
+ border-bottom-color: var(--colors-black);
45
+ }
46
+ }
47
+
48
+ .hover\:opacity_1 {
49
+ &:where(:hover, [data-hover]) {
50
+ opacity: 1;
51
+ }
52
+ }
53
+
54
+ .hover\:border-b_black {
55
+ &:where(:hover, [data-hover]) {
56
+ border-bottom-color: var(--colors-black);
57
+ }
58
+ }
59
+
60
+ .hover\:opacity_1 {
61
+ &:where(:hover, [data-hover]) {
62
+ opacity: 1;
63
+ }
64
+ }
65
+
66
+ .hover\:border-b_black {
67
+ &:where(:hover, [data-hover]) {
68
+ border-bottom-color: var(--colors-black);
69
+ }
70
+ }
71
+
72
+ .\[\&_li\]\:cursor_pointer {
73
+ & li {
74
+ cursor: pointer;
75
+ }
76
+ }
77
+
78
+ .hover\:opacity_0\.8 {
79
+ &:where(:hover, [data-hover]) {
80
+ opacity: 0.8;
81
+ }
82
+ }
83
+
84
+ .hover\:bg_border {
85
+ &:where(:hover, [data-hover]) {
86
+ background-color: var(--colors-border);
87
+ }
88
+ }
89
+
90
+ .hover\:bg_border {
91
+ &:where(:hover, [data-hover]) {
92
+ background: var(--colors-border);
93
+ }
94
+ }
95
+
96
+ .hover\:opacity_0\.6 {
97
+ &:where(:hover, [data-hover]) {
98
+ opacity: 0.6;
99
+ }
100
+ }
101
+
102
+ .hover\:opacity_1 {
103
+ &:where(:hover, [data-hover]) {
104
+ opacity: 1;
105
+ }
106
+ }
107
+
108
+ .hover\:border-b_black {
109
+ &:where(:hover, [data-hover]) {
110
+ border-bottom-color: var(--colors-black);
111
+ }
112
+ }
113
+
114
+ .hover\:opacity_1 {
115
+ &:where(:hover, [data-hover]) {
116
+ opacity: 1;
117
+ }
118
+ }
119
+
120
+ .hover\:border-b_black {
121
+ &:where(:hover, [data-hover]) {
122
+ border-bottom-color: var(--colors-black);
123
+ }
124
+ }
125
+
126
+ .hover\:opacity_1 {
127
+ &:where(:hover, [data-hover]) {
128
+ opacity: 1;
129
+ }
130
+ }
131
+
132
+ .hover\:border-b_black {
133
+ &:where(:hover, [data-hover]) {
134
+ border-bottom-color: var(--colors-black);
135
+ }
136
+ }
137
+
6
138
  .p_4px_8px {
7
139
  padding: 4px 8px;
8
140
  }
@@ -88,7 +220,7 @@
88
220
  }
89
221
 
90
222
  .p_0 {
91
- padding: 0;
223
+ padding: var(--spacing-0);
92
224
  }
93
225
 
94
226
  .hover\:bg_border {
@@ -260,4 +392,20 @@
260
392
  }
261
393
  }
262
394
  }
395
+
396
+ .\[\&_li\]\:hover\:opacity_0\.8 {
397
+ & li {
398
+ &:where(:hover, [data-hover]) {
399
+ opacity: 0.8;
400
+ }
401
+ }
402
+ }
403
+
404
+ .\[\&_li\]\:hover\:opacity_0\.8 {
405
+ & li {
406
+ &:where(:hover, [data-hover]) {
407
+ opacity: 0.8;
408
+ }
409
+ }
410
+ }
263
411
  }
@@ -110,4 +110,28 @@
110
110
  padding-inline: var(--spacing-8);
111
111
  }
112
112
  }
113
+
114
+ .md\:px_6 {
115
+ @media screen and (min-width: 768px) {
116
+ padding-inline: var(--spacing-6);
117
+ }
118
+ }
119
+
120
+ .lg\:px_8 {
121
+ @media screen and (min-width: 1024px) {
122
+ padding-inline: var(--spacing-8);
123
+ }
124
+ }
125
+
126
+ .md\:px_6 {
127
+ @media screen and (min-width: 768px) {
128
+ padding-inline: var(--spacing-6);
129
+ }
130
+ }
131
+
132
+ .lg\:px_8 {
133
+ @media screen and (min-width: 1024px) {
134
+ padding-inline: var(--spacing-8);
135
+ }
136
+ }
113
137
  }
@@ -3,6 +3,18 @@ function isObject(value) {
3
3
  return typeof value === 'object' && value != null && !Array.isArray(value)
4
4
  }
5
5
 
6
+ // src/astish.ts
7
+ var newRule = /(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g
8
+ var ruleClean = /\/\*[^]*?\*\/|\s\s+|\n/g
9
+ var astish = (val, tree = [{}]) => {
10
+ const block = newRule.exec(val.replace(ruleClean, ''))
11
+ if (!block) return tree[0]
12
+ if (block[4]) tree.shift()
13
+ else if (block[3]) tree.unshift((tree[0][block[3]] = tree[0][block[3]] || {}))
14
+ else tree[0][block[1]] = block[2]
15
+ return astish(val, tree)
16
+ }
17
+
6
18
  // src/compact.ts
7
19
  function compact(value) {
8
20
  return Object.fromEntries(Object.entries(value ?? {}).filter(([_, value2]) => value2 !== void 0))
@@ -175,6 +187,28 @@ function createMergeCss(context) {
175
187
  return { mergeCss, assignCss }
176
188
  }
177
189
 
190
+ // src/memo.ts
191
+ var memo = (fn) => {
192
+ const cache = /* @__PURE__ */ new Map()
193
+ const get = (...args) => {
194
+ const key = JSON.stringify(args)
195
+ if (cache.has(key)) {
196
+ return cache.get(key)
197
+ }
198
+ const result = fn(...args)
199
+ cache.set(key, result)
200
+ return result
201
+ }
202
+ return get
203
+ }
204
+
205
+ // src/hypenate.ts
206
+ var dashCaseRegex = /[A-Z]/g
207
+ var hypenateProperty = memo((property) => {
208
+ if (property.startsWith('--')) return property
209
+ return property.replace(dashCaseRegex, (match) => `-${match.toLowerCase()}`)
210
+ })
211
+
178
212
  // src/normalize-html.ts
179
213
  var htmlProps = ['htmlSize', 'htmlTranslate', 'htmlWidth', 'htmlHeight']
180
214
  function convert(key) {
@@ -203,29 +237,8 @@ function splitProps(props, ...keys) {
203
237
  const fn = (key) => split(Array.isArray(key) ? key : dKeys.filter(key))
204
238
  return keys.map(fn).concat(split(dKeys))
205
239
  }
206
-
207
- // src/memo.ts
208
- var memo = (fn) => {
209
- const cache = /* @__PURE__ */ new Map()
210
- const get = (...args) => {
211
- const key = JSON.stringify(args)
212
- if (cache.has(key)) {
213
- return cache.get(key)
214
- }
215
- const result = fn(...args)
216
- cache.set(key, result)
217
- return result
218
- }
219
- return get
220
- }
221
-
222
- // src/hypenate.ts
223
- var dashCaseRegex = /[A-Z]/g
224
- var hypenateProperty = memo((property) => {
225
- if (property.startsWith('--')) return property
226
- return property.replace(dashCaseRegex, (match) => `-${match.toLowerCase()}`)
227
- })
228
240
  export {
241
+ astish,
229
242
  compact,
230
243
  createCss,
231
244
  createMergeCss,