@chakra-ui/panda-preset 3.23.0 → 3.24.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.
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ 'use strict';
3
+
4
+ var def = require('../def.cjs');
5
+
6
+ const codeBlockSlotRecipe = def.defineSlotRecipe({
7
+ slots: [
8
+ "root",
9
+ "content",
10
+ "title",
11
+ "header",
12
+ "footer",
13
+ "control",
14
+ "overlay",
15
+ "code",
16
+ "codeText",
17
+ "copyTrigger",
18
+ "copyIndicator",
19
+ "collapseTrigger",
20
+ "collapseIndicator",
21
+ "collapseText"
22
+ ],
23
+ className: "code-block",
24
+ base: {
25
+ root: {
26
+ colorPalette: "gray",
27
+ rounded: "var(--code-block-radius)",
28
+ overflow: "hidden",
29
+ bg: "bg",
30
+ color: "fg",
31
+ borderWidth: "1px",
32
+ "--code-block-max-height": "320px",
33
+ "--code-block-bg": "colors.bg",
34
+ "--code-block-fg": "colors.fg",
35
+ "--code-block-obscured-opacity": "0.5",
36
+ "--code-block-obscured-blur": "1px",
37
+ "--code-block-line-number-width": "sizes.3",
38
+ "--code-block-line-number-margin": "spacing.4",
39
+ "--code-block-highlight-bg": "{colors.teal.focusRing/20}",
40
+ "--code-block-highlight-border": "colors.teal.focusRing",
41
+ "--code-block-highlight-added-bg": "{colors.green.focusRing/20}",
42
+ "--code-block-highlight-added-border": "colors.green.focusRing",
43
+ "--code-block-highlight-removed-bg": "{colors.red.focusRing/20}",
44
+ "--code-block-highlight-removed-border": "colors.red.focusRing"
45
+ },
46
+ header: {
47
+ display: "flex",
48
+ alignItems: "center",
49
+ gap: "2",
50
+ position: "relative",
51
+ px: "var(--code-block-padding)",
52
+ minH: "var(--code-block-header-height)",
53
+ mb: "calc(var(--code-block-padding) / 2 * -1)"
54
+ },
55
+ title: {
56
+ display: "inline-flex",
57
+ alignItems: "center",
58
+ gap: "1.5",
59
+ flex: "1",
60
+ color: "fg.muted"
61
+ },
62
+ control: {
63
+ gap: "1.5",
64
+ display: "inline-flex",
65
+ alignItems: "center"
66
+ },
67
+ footer: {
68
+ display: "flex",
69
+ alignItems: "center",
70
+ justifyContent: "center",
71
+ gap: "2",
72
+ px: "var(--code-block-padding)",
73
+ minH: "var(--code-block-header-height)"
74
+ },
75
+ content: {
76
+ position: "relative",
77
+ colorScheme: "dark",
78
+ overflow: "hidden",
79
+ borderBottomRadius: "var(--code-block-radius)",
80
+ maxHeight: "var(--code-block-max-height)",
81
+ "& ::selection": {
82
+ bg: "blue.500/40"
83
+ },
84
+ _expanded: {
85
+ maxHeight: "unset"
86
+ }
87
+ },
88
+ overlay: {
89
+ "--bg": "{colors.black/50}",
90
+ display: "flex",
91
+ alignItems: "flex-end",
92
+ justifyContent: "center",
93
+ padding: "4",
94
+ bgImage: "linear-gradient(0deg,var(--bg) 25%,transparent 100%)",
95
+ color: "white",
96
+ minH: "5rem",
97
+ pos: "absolute",
98
+ bottom: "0",
99
+ insetInline: "0",
100
+ zIndex: "1",
101
+ fontWeight: "medium",
102
+ _expanded: {
103
+ display: "none"
104
+ }
105
+ },
106
+ code: {
107
+ fontFamily: "mono",
108
+ lineHeight: "tall",
109
+ whiteSpace: "pre",
110
+ counterReset: "line 0"
111
+ },
112
+ codeText: {
113
+ px: "var(--code-block-padding)",
114
+ py: "var(--code-block-padding)",
115
+ position: "relative",
116
+ display: "block",
117
+ width: "100%",
118
+ "&[data-has-focused]": {
119
+ "& [data-line]:not([data-focused])": {
120
+ transitionProperty: "opacity, filter",
121
+ transitionDuration: "moderate",
122
+ transitionTimingFunction: "ease-in-out",
123
+ opacity: "var(--code-block-obscured-opacity)",
124
+ filter: "blur(var(--code-block-obscured-blur))"
125
+ },
126
+ "&:hover": {
127
+ "--code-block-obscured-opacity": "1",
128
+ "--code-block-obscured-blur": "0px"
129
+ }
130
+ },
131
+ "&[data-has-line-numbers][data-plaintext]": {
132
+ paddingInlineStart: "calc(var(--code-block-line-number-width) + var(--code-block-line-number-margin) + var(--code-block-padding))"
133
+ },
134
+ "& [data-line]": {
135
+ position: "relative",
136
+ "--highlight-bg": "var(--code-block-highlight-bg)",
137
+ "--highlight-border": "var(--code-block-highlight-border)",
138
+ "&[data-highlight], &[data-diff]": {
139
+ display: "inline-block",
140
+ width: "full",
141
+ "&:after": {
142
+ content: "''",
143
+ display: "block",
144
+ position: "absolute",
145
+ insetStart: "calc(var(--code-block-padding) * -1)",
146
+ insetEnd: "0px",
147
+ width: "calc(100% + var(--code-block-padding) * 2)",
148
+ height: "100%",
149
+ bg: "var(--highlight-bg)",
150
+ borderStartWidth: "2px",
151
+ borderStartColor: "var(--highlight-border)"
152
+ }
153
+ },
154
+ "&[data-diff='added']": {
155
+ "--highlight-bg": "var(--code-block-highlight-added-bg)",
156
+ "--highlight-border": "var(--code-block-highlight-added-border)"
157
+ },
158
+ "&[data-diff='removed']": {
159
+ "--highlight-bg": "var(--code-block-highlight-removed-bg)",
160
+ "--highlight-border": "var(--code-block-highlight-removed-border)"
161
+ }
162
+ },
163
+ "&[data-word-wrap]": {
164
+ "&[data-plaintext], & [data-line]": {
165
+ whiteSpace: "pre-wrap",
166
+ wordBreak: "break-all"
167
+ }
168
+ },
169
+ "&[data-has-line-numbers]": {
170
+ "--content": "counter(line)",
171
+ "& [data-line]:before": {
172
+ content: "var(--content)",
173
+ counterIncrement: "line",
174
+ width: "var(--code-block-line-number-width)",
175
+ marginRight: "var(--code-block-line-number-margin)",
176
+ display: "inline-block",
177
+ textAlign: "end",
178
+ userSelect: "none",
179
+ opacity: 0.4
180
+ },
181
+ "& [data-diff='added']:before": {
182
+ content: "'+'"
183
+ },
184
+ "& [data-diff='removed']:before": {
185
+ content: "'-'"
186
+ }
187
+ }
188
+ }
189
+ },
190
+ variants: {
191
+ size: {
192
+ sm: {
193
+ root: {
194
+ "--code-block-padding": "spacing.4",
195
+ "--code-block-radius": "radii.md",
196
+ "--code-block-header-height": "sizes.8"
197
+ },
198
+ title: {
199
+ textStyle: "xs"
200
+ },
201
+ code: {
202
+ fontSize: "xs"
203
+ }
204
+ },
205
+ md: {
206
+ root: {
207
+ "--code-block-padding": "spacing.4",
208
+ "--code-block-radius": "radii.lg",
209
+ "--code-block-header-height": "sizes.10"
210
+ },
211
+ title: {
212
+ textStyle: "xs"
213
+ },
214
+ code: {
215
+ fontSize: "sm"
216
+ }
217
+ },
218
+ lg: {
219
+ root: {
220
+ "--code-block-padding": "spacing.5",
221
+ "--code-block-radius": "radii.xl",
222
+ "--code-block-header-height": "sizes.12"
223
+ },
224
+ title: {
225
+ textStyle: "sm"
226
+ },
227
+ code: {
228
+ fontSize: "sm"
229
+ }
230
+ }
231
+ }
232
+ },
233
+ defaultVariants: {
234
+ size: "md"
235
+ }
236
+ });
237
+
238
+ exports.codeBlockSlotRecipe = codeBlockSlotRecipe;
@@ -10,6 +10,7 @@ var breadcrumb = require('./breadcrumb.cjs');
10
10
  var card = require('./card.cjs');
11
11
  var checkbox = require('./checkbox.cjs');
12
12
  var checkboxCard = require('./checkbox-card.cjs');
13
+ var codeBlock = require('./code-block.cjs');
13
14
  var collapsible = require('./collapsible.cjs');
14
15
  var colorPicker = require('./color-picker.cjs');
15
16
  var combobox = require('./combobox.cjs');
@@ -59,6 +60,7 @@ const slotRecipes = {
59
60
  card: card.cardSlotRecipe,
60
61
  checkbox: checkbox.checkboxSlotRecipe,
61
62
  checkboxCard: checkboxCard.checkboxCardSlotRecipe,
63
+ codeBlock: codeBlock.codeBlockSlotRecipe,
62
64
  collapsible: collapsible.collapsibleSlotRecipe,
63
65
  dataList: dataList.dataListSlotRecipe,
64
66
  dialog: dialog.dialogSlotRecipe,
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+ import { defineSlotRecipe } from '../def.js';
3
+
4
+ const codeBlockSlotRecipe = defineSlotRecipe({
5
+ slots: [
6
+ "root",
7
+ "content",
8
+ "title",
9
+ "header",
10
+ "footer",
11
+ "control",
12
+ "overlay",
13
+ "code",
14
+ "codeText",
15
+ "copyTrigger",
16
+ "copyIndicator",
17
+ "collapseTrigger",
18
+ "collapseIndicator",
19
+ "collapseText"
20
+ ],
21
+ className: "code-block",
22
+ base: {
23
+ root: {
24
+ colorPalette: "gray",
25
+ rounded: "var(--code-block-radius)",
26
+ overflow: "hidden",
27
+ bg: "bg",
28
+ color: "fg",
29
+ borderWidth: "1px",
30
+ "--code-block-max-height": "320px",
31
+ "--code-block-bg": "colors.bg",
32
+ "--code-block-fg": "colors.fg",
33
+ "--code-block-obscured-opacity": "0.5",
34
+ "--code-block-obscured-blur": "1px",
35
+ "--code-block-line-number-width": "sizes.3",
36
+ "--code-block-line-number-margin": "spacing.4",
37
+ "--code-block-highlight-bg": "{colors.teal.focusRing/20}",
38
+ "--code-block-highlight-border": "colors.teal.focusRing",
39
+ "--code-block-highlight-added-bg": "{colors.green.focusRing/20}",
40
+ "--code-block-highlight-added-border": "colors.green.focusRing",
41
+ "--code-block-highlight-removed-bg": "{colors.red.focusRing/20}",
42
+ "--code-block-highlight-removed-border": "colors.red.focusRing"
43
+ },
44
+ header: {
45
+ display: "flex",
46
+ alignItems: "center",
47
+ gap: "2",
48
+ position: "relative",
49
+ px: "var(--code-block-padding)",
50
+ minH: "var(--code-block-header-height)",
51
+ mb: "calc(var(--code-block-padding) / 2 * -1)"
52
+ },
53
+ title: {
54
+ display: "inline-flex",
55
+ alignItems: "center",
56
+ gap: "1.5",
57
+ flex: "1",
58
+ color: "fg.muted"
59
+ },
60
+ control: {
61
+ gap: "1.5",
62
+ display: "inline-flex",
63
+ alignItems: "center"
64
+ },
65
+ footer: {
66
+ display: "flex",
67
+ alignItems: "center",
68
+ justifyContent: "center",
69
+ gap: "2",
70
+ px: "var(--code-block-padding)",
71
+ minH: "var(--code-block-header-height)"
72
+ },
73
+ content: {
74
+ position: "relative",
75
+ colorScheme: "dark",
76
+ overflow: "hidden",
77
+ borderBottomRadius: "var(--code-block-radius)",
78
+ maxHeight: "var(--code-block-max-height)",
79
+ "& ::selection": {
80
+ bg: "blue.500/40"
81
+ },
82
+ _expanded: {
83
+ maxHeight: "unset"
84
+ }
85
+ },
86
+ overlay: {
87
+ "--bg": "{colors.black/50}",
88
+ display: "flex",
89
+ alignItems: "flex-end",
90
+ justifyContent: "center",
91
+ padding: "4",
92
+ bgImage: "linear-gradient(0deg,var(--bg) 25%,transparent 100%)",
93
+ color: "white",
94
+ minH: "5rem",
95
+ pos: "absolute",
96
+ bottom: "0",
97
+ insetInline: "0",
98
+ zIndex: "1",
99
+ fontWeight: "medium",
100
+ _expanded: {
101
+ display: "none"
102
+ }
103
+ },
104
+ code: {
105
+ fontFamily: "mono",
106
+ lineHeight: "tall",
107
+ whiteSpace: "pre",
108
+ counterReset: "line 0"
109
+ },
110
+ codeText: {
111
+ px: "var(--code-block-padding)",
112
+ py: "var(--code-block-padding)",
113
+ position: "relative",
114
+ display: "block",
115
+ width: "100%",
116
+ "&[data-has-focused]": {
117
+ "& [data-line]:not([data-focused])": {
118
+ transitionProperty: "opacity, filter",
119
+ transitionDuration: "moderate",
120
+ transitionTimingFunction: "ease-in-out",
121
+ opacity: "var(--code-block-obscured-opacity)",
122
+ filter: "blur(var(--code-block-obscured-blur))"
123
+ },
124
+ "&:hover": {
125
+ "--code-block-obscured-opacity": "1",
126
+ "--code-block-obscured-blur": "0px"
127
+ }
128
+ },
129
+ "&[data-has-line-numbers][data-plaintext]": {
130
+ paddingInlineStart: "calc(var(--code-block-line-number-width) + var(--code-block-line-number-margin) + var(--code-block-padding))"
131
+ },
132
+ "& [data-line]": {
133
+ position: "relative",
134
+ "--highlight-bg": "var(--code-block-highlight-bg)",
135
+ "--highlight-border": "var(--code-block-highlight-border)",
136
+ "&[data-highlight], &[data-diff]": {
137
+ display: "inline-block",
138
+ width: "full",
139
+ "&:after": {
140
+ content: "''",
141
+ display: "block",
142
+ position: "absolute",
143
+ insetStart: "calc(var(--code-block-padding) * -1)",
144
+ insetEnd: "0px",
145
+ width: "calc(100% + var(--code-block-padding) * 2)",
146
+ height: "100%",
147
+ bg: "var(--highlight-bg)",
148
+ borderStartWidth: "2px",
149
+ borderStartColor: "var(--highlight-border)"
150
+ }
151
+ },
152
+ "&[data-diff='added']": {
153
+ "--highlight-bg": "var(--code-block-highlight-added-bg)",
154
+ "--highlight-border": "var(--code-block-highlight-added-border)"
155
+ },
156
+ "&[data-diff='removed']": {
157
+ "--highlight-bg": "var(--code-block-highlight-removed-bg)",
158
+ "--highlight-border": "var(--code-block-highlight-removed-border)"
159
+ }
160
+ },
161
+ "&[data-word-wrap]": {
162
+ "&[data-plaintext], & [data-line]": {
163
+ whiteSpace: "pre-wrap",
164
+ wordBreak: "break-all"
165
+ }
166
+ },
167
+ "&[data-has-line-numbers]": {
168
+ "--content": "counter(line)",
169
+ "& [data-line]:before": {
170
+ content: "var(--content)",
171
+ counterIncrement: "line",
172
+ width: "var(--code-block-line-number-width)",
173
+ marginRight: "var(--code-block-line-number-margin)",
174
+ display: "inline-block",
175
+ textAlign: "end",
176
+ userSelect: "none",
177
+ opacity: 0.4
178
+ },
179
+ "& [data-diff='added']:before": {
180
+ content: "'+'"
181
+ },
182
+ "& [data-diff='removed']:before": {
183
+ content: "'-'"
184
+ }
185
+ }
186
+ }
187
+ },
188
+ variants: {
189
+ size: {
190
+ sm: {
191
+ root: {
192
+ "--code-block-padding": "spacing.4",
193
+ "--code-block-radius": "radii.md",
194
+ "--code-block-header-height": "sizes.8"
195
+ },
196
+ title: {
197
+ textStyle: "xs"
198
+ },
199
+ code: {
200
+ fontSize: "xs"
201
+ }
202
+ },
203
+ md: {
204
+ root: {
205
+ "--code-block-padding": "spacing.4",
206
+ "--code-block-radius": "radii.lg",
207
+ "--code-block-header-height": "sizes.10"
208
+ },
209
+ title: {
210
+ textStyle: "xs"
211
+ },
212
+ code: {
213
+ fontSize: "sm"
214
+ }
215
+ },
216
+ lg: {
217
+ root: {
218
+ "--code-block-padding": "spacing.5",
219
+ "--code-block-radius": "radii.xl",
220
+ "--code-block-header-height": "sizes.12"
221
+ },
222
+ title: {
223
+ textStyle: "sm"
224
+ },
225
+ code: {
226
+ fontSize: "sm"
227
+ }
228
+ }
229
+ }
230
+ },
231
+ defaultVariants: {
232
+ size: "md"
233
+ }
234
+ });
235
+
236
+ export { codeBlockSlotRecipe };
@@ -8,6 +8,7 @@ import { breadcrumbSlotRecipe } from './breadcrumb.js';
8
8
  import { cardSlotRecipe } from './card.js';
9
9
  import { checkboxSlotRecipe } from './checkbox.js';
10
10
  import { checkboxCardSlotRecipe } from './checkbox-card.js';
11
+ import { codeBlockSlotRecipe } from './code-block.js';
11
12
  import { collapsibleSlotRecipe } from './collapsible.js';
12
13
  import { colorPickerSlotRecipe } from './color-picker.js';
13
14
  import { comboboxSlotRecipe } from './combobox.js';
@@ -57,6 +58,7 @@ const slotRecipes = {
57
58
  card: cardSlotRecipe,
58
59
  checkbox: checkboxSlotRecipe,
59
60
  checkboxCard: checkboxCardSlotRecipe,
61
+ codeBlock: codeBlockSlotRecipe,
60
62
  collapsible: collapsibleSlotRecipe,
61
63
  dataList: dataListSlotRecipe,
62
64
  dialog: dialogSlotRecipe,
@@ -0,0 +1 @@
1
+ export declare const codeBlockSlotRecipe: import("@pandacss/types").SlotRecipeConfig;
@@ -8,6 +8,7 @@ export declare const slotRecipes: {
8
8
  card: import("@pandacss/types").SlotRecipeConfig;
9
9
  checkbox: import("@pandacss/types").SlotRecipeConfig;
10
10
  checkboxCard: import("@pandacss/types").SlotRecipeConfig;
11
+ codeBlock: import("@pandacss/types").SlotRecipeConfig;
11
12
  collapsible: import("@pandacss/types").SlotRecipeConfig;
12
13
  dataList: import("@pandacss/types").SlotRecipeConfig;
13
14
  dialog: import("@pandacss/types").SlotRecipeConfig;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chakra-ui/panda-preset",
3
- "version": "3.23.0",
3
+ "version": "3.24.1",
4
4
  "description": "Panda preset for Chakra UI",
5
5
  "type": "module",
6
6
  "main": "dist/cjs/index.cjs",
@@ -49,7 +49,7 @@
49
49
  },
50
50
  "devDependencies": {
51
51
  "globby": "14.1.0",
52
- "@chakra-ui/cli": "3.23.0"
52
+ "@chakra-ui/cli": "3.24.1"
53
53
  },
54
54
  "scripts": {
55
55
  "theme:eject": "chakra eject --outdir=src",