@vscode-elements/elements 2.1.1-pre.0 → 2.2.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 (28) hide show
  1. package/custom-elements.json +1053 -986
  2. package/dist/bundled.js +147 -76
  3. package/dist/includes/VscElement.js +1 -1
  4. package/dist/includes/VscElement.js.map +1 -1
  5. package/dist/includes/test-helpers.d.ts +2 -2
  6. package/dist/includes/test-helpers.d.ts.map +1 -1
  7. package/dist/includes/test-helpers.js +2 -1
  8. package/dist/includes/test-helpers.js.map +1 -1
  9. package/dist/vscode-button/vscode-button.d.ts +8 -0
  10. package/dist/vscode-button/vscode-button.d.ts.map +1 -1
  11. package/dist/vscode-button/vscode-button.js +37 -12
  12. package/dist/vscode-button/vscode-button.js.map +1 -1
  13. package/dist/vscode-button/vscode-button.styles.d.ts.map +1 -1
  14. package/dist/vscode-button/vscode-button.styles.js +47 -54
  15. package/dist/vscode-button/vscode-button.styles.js.map +1 -1
  16. package/dist/vscode-button-group/vscode-button-group.styles.d.ts.map +1 -1
  17. package/dist/vscode-button-group/vscode-button-group.styles.js +2 -0
  18. package/dist/vscode-button-group/vscode-button-group.styles.js.map +1 -1
  19. package/dist/vscode-checkbox/vscode-checkbox.d.ts +5 -2
  20. package/dist/vscode-checkbox/vscode-checkbox.d.ts.map +1 -1
  21. package/dist/vscode-checkbox/vscode-checkbox.js +14 -9
  22. package/dist/vscode-checkbox/vscode-checkbox.js.map +1 -1
  23. package/dist/vscode-checkbox/vscode-checkbox.styles.d.ts.map +1 -1
  24. package/dist/vscode-checkbox/vscode-checkbox.styles.js +71 -0
  25. package/dist/vscode-checkbox/vscode-checkbox.styles.js.map +1 -1
  26. package/package.json +1 -1
  27. package/vscode.css-custom-data.json +19 -15
  28. package/vscode.html-custom-data.json +23 -18
@@ -4,78 +4,19 @@
4
4
  "modules": [
5
5
  {
6
6
  "kind": "javascript-module",
7
- "path": "src/vscode-badge/vscode-badge.styles.ts",
8
- "declarations": [
9
- {
10
- "kind": "variable",
11
- "name": "styles",
12
- "type": {
13
- "text": "CSSResultGroup"
14
- },
15
- "default": "[ defaultStyles, css` :host { display: inline-block; } .root { background-color: var(--vscode-badge-background, #616161); border: 1px solid var(--vscode-contrastBorder, transparent); border-radius: 2px; box-sizing: border-box; color: var(--vscode-badge-foreground, #f8f8f8); display: block; font-family: var(--vscode-font-family, ${defaultFontStack}); font-size: 11px; font-weight: 400; line-height: 14px; min-width: 18px; padding: 2px 3px; text-align: center; white-space: nowrap; } :host([variant='counter']) .root { border-radius: 11px; line-height: 11px; min-height: 18px; min-width: 18px; padding: 3px 6px; } :host([variant='activity-bar-counter']) .root { background-color: var(--vscode-activityBarBadge-background, #0078d4); border-radius: 20px; color: var(--vscode-activityBarBadge-foreground, #ffffff); font-size: 9px; font-weight: 600; line-height: 16px; padding: 0 4px; } :host([variant='tab-header-counter']) .root { background-color: var(--vscode-activityBarBadge-background, #0078d4); border-radius: 10px; color: var(--vscode-activityBarBadge-foreground, #ffffff); line-height: 10px; min-height: 16px; min-width: 16px; padding: 3px 5px; } `, ]"
16
- }
17
- ],
18
- "exports": [
19
- {
20
- "kind": "js",
21
- "name": "default",
22
- "declaration": {
23
- "name": "styles",
24
- "module": "src/vscode-badge/vscode-badge.styles.ts"
25
- }
26
- }
27
- ]
7
+ "path": "src/includes/AssociatedFormControl.ts",
8
+ "declarations": [],
9
+ "exports": []
28
10
  },
29
11
  {
30
12
  "kind": "javascript-module",
31
- "path": "src/vscode-badge/vscode-badge.ts",
13
+ "path": "src/includes/VscElement.ts",
32
14
  "declarations": [
33
15
  {
34
16
  "kind": "class",
35
- "description": "Show counts or status information. Badges can also be used within [Textfield](https://vscode-elements.github.io/components/textfield) and [TabHeader](https://vscode-elements.github.io/components/tabs) components.",
36
- "name": "VscodeBadge",
37
- "cssProperties": [
38
- {
39
- "description": "A sans-serif font type depends on the host OS.",
40
- "name": "--vscode-font-family",
41
- "default": "sans-serif"
42
- },
43
- {
44
- "name": "--vscode-contrastBorder",
45
- "default": "transparent"
46
- },
47
- {
48
- "description": "default and counter variant background color",
49
- "name": "--vscode-badge-background",
50
- "default": "#616161"
51
- },
52
- {
53
- "description": "default and counter variant foreground color",
54
- "name": "--vscode-badge-foreground",
55
- "default": "#f8f8f8"
56
- },
57
- {
58
- "description": "activity bar variant background color",
59
- "name": "--vscode-activityBarBadge-background",
60
- "default": "#0078d4"
61
- },
62
- {
63
- "description": "activity bar variant foreground color",
64
- "name": "--vscode-activityBarBadge-foreground",
65
- "default": "#ffffff"
66
- }
67
- ],
17
+ "description": "",
18
+ "name": "VscElement",
68
19
  "members": [
69
- {
70
- "kind": "field",
71
- "name": "variant",
72
- "type": {
73
- "text": "| 'default'\n | 'counter'\n | 'activity-bar-counter'\n | 'tab-header-counter'"
74
- },
75
- "default": "'default'",
76
- "attribute": "variant",
77
- "reflects": true
78
- },
79
20
  {
80
21
  "kind": "field",
81
22
  "name": "version",
@@ -83,1217 +24,1323 @@
83
24
  "text": "string"
84
25
  },
85
26
  "description": "VSCode Elements version",
86
- "readonly": true,
87
- "inheritedFrom": {
88
- "name": "VscElement",
89
- "module": "src/includes/VscElement.ts"
90
- }
27
+ "readonly": true
91
28
  }
92
29
  ],
93
- "attributes": [
30
+ "superclass": {
31
+ "name": "LitElement",
32
+ "package": "lit"
33
+ },
34
+ "customElement": true
35
+ },
36
+ {
37
+ "kind": "function",
38
+ "name": "customElement",
39
+ "parameters": [
94
40
  {
95
- "name": "variant",
41
+ "name": "tagName",
96
42
  "type": {
97
- "text": "| 'default'\n | 'counter'\n | 'activity-bar-counter'\n | 'tab-header-counter'"
98
- },
99
- "default": "'default'",
100
- "fieldName": "variant"
43
+ "text": "string"
44
+ }
101
45
  }
102
46
  ],
103
- "superclass": {
104
- "name": "VscElement",
105
- "module": "/src/includes/VscElement.js"
106
- },
107
- "tagName": "vscode-badge",
108
- "customElement": true
47
+ "description": "Own implementation of Lit's customElement decorator."
109
48
  }
110
49
  ],
111
50
  "exports": [
112
51
  {
113
52
  "kind": "js",
114
- "name": "VscodeBadge",
53
+ "name": "VscElement",
115
54
  "declaration": {
116
- "name": "VscodeBadge",
117
- "module": "src/vscode-badge/vscode-badge.ts"
55
+ "name": "VscElement",
56
+ "module": "src/includes/VscElement.ts"
57
+ }
58
+ },
59
+ {
60
+ "kind": "js",
61
+ "name": "customElement",
62
+ "declaration": {
63
+ "name": "customElement",
64
+ "module": "src/includes/VscElement.ts"
118
65
  }
119
66
  },
120
67
  {
121
68
  "kind": "custom-element-definition",
122
- "name": "vscode-badge",
69
+ "name": "tagName",
123
70
  "declaration": {
124
- "name": "VscodeBadge",
125
- "module": "src/vscode-badge/vscode-badge.ts"
71
+ "name": "anonymous_0",
72
+ "module": "src/includes/VscElement.ts"
126
73
  }
127
74
  }
128
75
  ]
129
76
  },
130
77
  {
131
78
  "kind": "javascript-module",
132
- "path": "src/vscode-button/vscode-button.styles.ts",
79
+ "path": "src/includes/default.styles.ts",
80
+ "declarations": [],
81
+ "exports": [
82
+ {
83
+ "kind": "js",
84
+ "name": "default",
85
+ "declaration": {
86
+ "module": "src/includes/default.styles.ts"
87
+ }
88
+ }
89
+ ]
90
+ },
91
+ {
92
+ "kind": "javascript-module",
93
+ "path": "src/includes/helpers.ts",
133
94
  "declarations": [
134
95
  {
135
96
  "kind": "variable",
136
- "name": "styles",
97
+ "name": "INPUT_LINE_HEIGHT_RATIO"
98
+ },
99
+ {
100
+ "kind": "variable",
101
+ "name": "DEFUALT_INPUT_WIDGET_WIDTH",
137
102
  "type": {
138
- "text": "CSSResultGroup"
103
+ "text": "number"
139
104
  },
140
- "default": "[ defaultStyles, css` :host { cursor: pointer; display: inline-block; width: auto; } .root { background-color: var(--vscode-button-background, #0078d4); border-bottom-left-radius: var(--vsc-border-left-radius, 2px); border-bottom-right-radius: var(--vsc-border-right-radius, 2px); border-bottom-width: 1px; border-color: var(--vscode-button-border, transparent); border-left-width: var(--vsc-border-left-width, 1px); border-right-width: var(--vsc-border-right-width, 1px); border-style: solid; border-top-left-radius: var(--vsc-border-left-radius, 2px); border-top-right-radius: var(--vsc-border-right-radius, 2px); border-top-width: 1px; box-sizing: border-box; color: var(--vscode-button-foreground, #ffffff); display: inline-flex; font-family: var(--vscode-font-family, ${defaultFontStack}); font-size: var(--vscode-font-size, 13px); font-weight: var(--vscode-font-weight, normal); line-height: 22px; overflow: hidden; padding: 0; user-select: none; white-space: nowrap; width: 100%; } :host([secondary]) .root { color: var(--vscode-button-secondaryForeground, #cccccc); background-color: var(--vscode-button-secondaryBackground, #313131); border-color: var( --vscode-button-border, var(--vscode-button-secondaryBackground, rgba(255, 255, 255, 0.07)) ); } :host([disabled]) { cursor: default; opacity: 0.4; pointer-events: none; } :host(:hover) .root { background-color: var(--vscode-button-hoverBackground, #026ec1); } :host([disabled]:hover) .root { background-color: var(--vscode-button-background, #0078d4); } :host([secondary]:hover) .root { background-color: var(--vscode-button-secondaryHoverBackground, #3c3c3c); } :host([secondary][disabled]:hover) .root { background-color: var(--vscode-button-secondaryBackground, #313131); } :host(:focus), :host(:active) { outline: none; } :host(:focus) .root { background-color: var(--vscode-button-hoverBackground, #026ec1); outline: 1px solid var(--vscode-focusBorder, #0078d4); outline-offset: 2px; } :host([disabled]:focus) .root { background-color: var(--vscode-button-background, #0078d4); outline: 0; } :host([secondary]:focus) .root { background-color: var(--vscode-button-secondaryHoverBackground, #3c3c3c); } :host([secondary][disabled]:focus) .root { background-color: var(--vscode-button-secondaryBackground, #313131); } ::slotted(*) { display: inline-block; margin-left: 4px; margin-right: 4px; } ::slotted(*:first-child) { margin-left: 0; } ::slotted(*:last-child) { margin-right: 0; } ::slotted(vscode-icon) { color: inherit; } .content { align-items: center; box-sizing: border-box; display: flex; justify-content: center; position: relative; width: 100%; height: 100%; padding: 1px 13px; } :host(:empty) .content, :host([icon-only]) .content { min-height: 24px; min-width: 16px; padding: 1px 4px; } slot { align-items: center; display: flex; height: 100%; } .icon, .icon-after { color: inherit; display: block; } :host(:not(:empty)) .icon { margin-right: 3px; } :host(:not(:empty)) .icon-after, :host([icon]) .icon-after { margin-left: 3px; } .divider { display: var(--vsc-divider-display, none); background-color: transparent; padding: 4px 0; box-sizing: border-box; } :host(:hover) .divider, :host(:focus) .divider { background-color: var(--vscode-button-hoverBackground, #026ec1); } :host([secondary]) .divider { background-color: var(--vscode-button-secondaryBackground, #313131); } :host([secondary]:hover) .divider, :host([secondary]:focus) .divider { background-color: var(--vscode-button-secondaryHoverBackground, #3c3c3c); } .divider > div { background-color: var( --vscode-button-separator, rgba(255, 255, 255, 0.4) ); height: 100%; width: 1px; margin: 0; } :host([secondary]) .divider > div { background-color: var(--vscode-button-secondaryForeground, #cccccc); opacity: 0.4; } `, ]"
105
+ "default": "320"
106
+ },
107
+ {
108
+ "kind": "function",
109
+ "name": "getDefaultFontStack"
110
+ },
111
+ {
112
+ "kind": "function",
113
+ "name": "getDefaultEditorFontStack"
141
114
  }
142
115
  ],
143
116
  "exports": [
144
117
  {
145
118
  "kind": "js",
146
- "name": "default",
119
+ "name": "INPUT_LINE_HEIGHT_RATIO",
147
120
  "declaration": {
148
- "name": "styles",
149
- "module": "src/vscode-button/vscode-button.styles.ts"
121
+ "name": "INPUT_LINE_HEIGHT_RATIO",
122
+ "module": "src/includes/helpers.ts"
123
+ }
124
+ },
125
+ {
126
+ "kind": "js",
127
+ "name": "DEFUALT_INPUT_WIDGET_WIDTH",
128
+ "declaration": {
129
+ "name": "DEFUALT_INPUT_WIDGET_WIDTH",
130
+ "module": "src/includes/helpers.ts"
131
+ }
132
+ },
133
+ {
134
+ "kind": "js",
135
+ "name": "getDefaultFontStack",
136
+ "declaration": {
137
+ "name": "getDefaultFontStack",
138
+ "module": "src/includes/helpers.ts"
139
+ }
140
+ },
141
+ {
142
+ "kind": "js",
143
+ "name": "getDefaultEditorFontStack",
144
+ "declaration": {
145
+ "name": "getDefaultEditorFontStack",
146
+ "module": "src/includes/helpers.ts"
150
147
  }
151
148
  }
152
149
  ]
153
150
  },
154
151
  {
155
152
  "kind": "javascript-module",
156
- "path": "src/vscode-button/vscode-button.ts",
153
+ "path": "src/includes/style-property-map.ts",
157
154
  "declarations": [
158
155
  {
159
- "kind": "class",
160
- "description": "Clickable element that are used to trigger actions.",
161
- "name": "VscodeButton",
162
- "cssProperties": [
156
+ "kind": "variable",
157
+ "name": "stylePropertyMap",
158
+ "description": "Implement a Lit directive similar to styleMap, but instead of setting styles via the style\nattribute (which violates CSP), it should apply styles using the style property.\n\n[MDN Reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy#unsafe-inline)"
159
+ }
160
+ ],
161
+ "exports": [
162
+ {
163
+ "kind": "js",
164
+ "name": "stylePropertyMap",
165
+ "declaration": {
166
+ "name": "stylePropertyMap",
167
+ "module": "src/includes/style-property-map.ts"
168
+ }
169
+ }
170
+ ]
171
+ },
172
+ {
173
+ "kind": "javascript-module",
174
+ "path": "src/includes/test-helpers.ts",
175
+ "declarations": [
176
+ {
177
+ "kind": "function",
178
+ "name": "clickOnElement",
179
+ "parameters": [
163
180
  {
164
- "name": "--vscode-button-background",
165
- "default": "#0078d4"
181
+ "name": "el",
182
+ "type": {
183
+ "text": "Element"
184
+ }
166
185
  },
167
186
  {
168
- "name": "--vscode-button-foreground",
169
- "default": "#ffffff"
187
+ "name": "position",
188
+ "default": "'center'",
189
+ "type": {
190
+ "text": "'top' | 'right' | 'bottom' | 'left' | 'center'"
191
+ }
170
192
  },
171
193
  {
172
- "name": "--vscode-button-border",
173
- "default": "var(--vscode-button-background, rgba(255, 255, 255, 0.07))"
194
+ "name": "offsetX",
195
+ "default": "0"
174
196
  },
175
197
  {
176
- "name": "--vscode-button-hoverBackground",
177
- "default": "#026ec1"
178
- },
198
+ "name": "offsetY",
199
+ "default": "0"
200
+ }
201
+ ],
202
+ "description": "A testing utility that measures an element's position and clicks on it."
203
+ },
204
+ {
205
+ "kind": "function",
206
+ "name": "moveMouseOnElement",
207
+ "parameters": [
179
208
  {
180
- "description": "A sans-serif font type depends on the host OS.",
181
- "name": "--vscode-font-family",
182
- "default": "sans-serif"
209
+ "name": "el",
210
+ "type": {
211
+ "text": "Element"
212
+ }
183
213
  },
184
214
  {
185
- "name": "--vscode-font-size",
186
- "default": "13px"
187
- },
215
+ "name": "position",
216
+ "default": "'center'",
217
+ "type": {
218
+ "text": "'top' | 'right' | 'bottom' | 'left' | 'center'"
219
+ }
220
+ },
188
221
  {
189
- "name": "--vscode-font-weight",
190
- "default": "normal"
222
+ "name": "offsetX",
223
+ "default": "0"
191
224
  },
192
225
  {
193
- "name": "--vscode-button-secondaryForeground",
194
- "default": "#cccccc"
226
+ "name": "offsetY",
227
+ "default": "0"
228
+ }
229
+ ],
230
+ "description": "A testing utility that moves the mouse onto an element."
231
+ },
232
+ {
233
+ "kind": "function",
234
+ "name": "dragElement",
235
+ "return": {
236
+ "type": {
237
+ "text": "Promise<void>"
238
+ }
239
+ },
240
+ "parameters": [
241
+ {
242
+ "name": "el",
243
+ "type": {
244
+ "text": "Element"
245
+ }
195
246
  },
196
247
  {
197
- "name": "--vscode-button-secondaryBackground",
198
- "default": "#313131"
248
+ "name": "deltaX",
249
+ "default": "0"
199
250
  },
200
251
  {
201
- "name": "--vscode-button-secondaryHoverBackground",
202
- "default": "#3c3c3c"
252
+ "name": "deltaY",
253
+ "default": "0"
203
254
  },
204
255
  {
205
- "name": "--vscode-focusBorder",
206
- "default": "#0078d4"
256
+ "name": "callbacks",
257
+ "default": "{}",
258
+ "type": {
259
+ "text": "{\n afterMouseDown?: () => void | Promise<void>;\n afterMouseMove?: () => void | Promise<void>;\n }"
260
+ }
207
261
  }
208
262
  ],
209
- "members": [
263
+ "description": "A testing utility that drags an element with the mouse."
264
+ },
265
+ {
266
+ "kind": "function",
267
+ "name": "$",
268
+ "return": {
269
+ "type": {
270
+ "text": "TagNameToElement<K>"
271
+ }
272
+ },
273
+ "parameters": [
210
274
  {
211
- "kind": "field",
212
- "name": "autofocus",
275
+ "name": "selector",
213
276
  "type": {
214
- "text": "boolean"
215
- },
216
- "default": "false",
217
- "attribute": "autofocus",
218
- "reflects": true
219
- },
277
+ "text": "K"
278
+ }
279
+ }
280
+ ]
281
+ },
282
+ {
283
+ "kind": "function",
284
+ "name": "$",
285
+ "return": {
286
+ "type": {
287
+ "text": "TagNameToElement<K>"
288
+ }
289
+ },
290
+ "parameters": [
220
291
  {
221
- "kind": "field",
222
- "name": "secondary",
292
+ "name": "root",
223
293
  "type": {
224
- "text": "boolean"
225
- },
226
- "default": "false",
227
- "description": "Button has a less prominent style.",
228
- "attribute": "secondary",
229
- "reflects": true
294
+ "text": "Element | ShadowRoot"
295
+ }
230
296
  },
231
297
  {
232
- "kind": "field",
233
- "name": "disabled",
298
+ "name": "selector",
234
299
  "type": {
235
- "text": "boolean"
236
- },
237
- "default": "false",
238
- "attribute": "disabled",
239
- "reflects": true
240
- },
300
+ "text": "K"
301
+ }
302
+ }
303
+ ]
304
+ },
305
+ {
306
+ "kind": "function",
307
+ "name": "$",
308
+ "return": {
309
+ "type": {
310
+ "text": "T"
311
+ }
312
+ },
313
+ "parameters": [
241
314
  {
242
- "kind": "field",
243
- "name": "icon",
315
+ "name": "selector",
244
316
  "type": {
245
317
  "text": "string"
246
- },
247
- "default": "''",
248
- "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) before the label",
249
- "attribute": "icon"
250
- },
251
- {
252
- "kind": "field",
253
- "name": "iconSpin",
254
- "type": {
255
- "text": "boolean"
256
- },
257
- "default": "false",
258
- "description": "Spin property for the icon",
259
- "attribute": "icon-spin",
260
- "reflects": true
261
- },
318
+ }
319
+ }
320
+ ]
321
+ },
322
+ {
323
+ "kind": "function",
324
+ "name": "$",
325
+ "return": {
326
+ "type": {
327
+ "text": "T"
328
+ }
329
+ },
330
+ "parameters": [
262
331
  {
263
- "kind": "field",
264
- "name": "iconSpinDuration",
332
+ "name": "root",
265
333
  "type": {
266
- "text": "number | undefined"
267
- },
268
- "description": "Duration property for the icon",
269
- "attribute": "icon-spin-duration",
270
- "reflects": true
334
+ "text": "Element | ShadowRoot"
335
+ }
271
336
  },
272
337
  {
273
- "kind": "field",
274
- "name": "iconAfter",
338
+ "name": "selector",
275
339
  "type": {
276
340
  "text": "string"
277
- },
278
- "default": "''",
279
- "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) after the label",
280
- "attribute": "icon-after"
281
- },
341
+ }
342
+ }
343
+ ]
344
+ },
345
+ {
346
+ "kind": "function",
347
+ "name": "$",
348
+ "return": {
349
+ "type": {
350
+ "text": "T"
351
+ }
352
+ },
353
+ "parameters": [
282
354
  {
283
- "kind": "field",
284
- "name": "iconAfterSpin",
355
+ "name": "arg1",
285
356
  "type": {
286
- "text": "boolean"
287
- },
288
- "default": "false",
289
- "description": "Spin property for the after icon",
290
- "attribute": "icon-after-spin",
291
- "reflects": true
357
+ "text": "string | Element | ShadowRoot"
358
+ }
292
359
  },
293
360
  {
294
- "kind": "field",
295
- "name": "iconAfterSpinDuration",
361
+ "name": "arg2",
362
+ "optional": true,
296
363
  "type": {
297
- "text": "number | undefined"
298
- },
299
- "description": "Duration property for the after icon",
300
- "attribute": "icon-after-spin-duration",
301
- "reflects": true
302
- },
364
+ "text": "string"
365
+ }
366
+ }
367
+ ]
368
+ },
369
+ {
370
+ "kind": "function",
371
+ "name": "$$",
372
+ "return": {
373
+ "type": {
374
+ "text": "NodeListOf<TagNameToElement<K>>"
375
+ }
376
+ },
377
+ "parameters": [
303
378
  {
304
- "kind": "field",
305
- "name": "focused",
379
+ "name": "selector",
306
380
  "type": {
307
- "text": "boolean"
308
- },
309
- "default": "false",
310
- "attribute": "focused",
311
- "reflects": true
312
- },
381
+ "text": "K"
382
+ }
383
+ }
384
+ ]
385
+ },
386
+ {
387
+ "kind": "function",
388
+ "name": "$$",
389
+ "return": {
390
+ "type": {
391
+ "text": "NodeListOf<TagNameToElement<K>>"
392
+ }
393
+ },
394
+ "parameters": [
313
395
  {
314
- "kind": "field",
315
- "name": "name",
396
+ "name": "root",
316
397
  "type": {
317
- "text": "string | undefined"
318
- },
319
- "default": "undefined",
320
- "attribute": "name",
321
- "reflects": true
398
+ "text": "Element"
399
+ }
322
400
  },
323
401
  {
324
- "kind": "field",
325
- "name": "iconOnly",
402
+ "name": "selector",
326
403
  "type": {
327
- "text": "boolean"
328
- },
329
- "default": "false",
330
- "attribute": "icon-only",
331
- "reflects": true
332
- },
333
- {
334
- "kind": "field",
335
- "name": "type",
336
- "type": {
337
- "text": "'submit' | 'reset' | 'button'"
338
- },
339
- "default": "'button'",
340
- "attribute": "type",
341
- "reflects": true
342
- },
343
- {
344
- "kind": "field",
345
- "name": "value",
346
- "type": {
347
- "text": "string"
348
- },
349
- "default": "''",
350
- "attribute": "value"
351
- },
352
- {
353
- "kind": "field",
354
- "name": "_prevTabindex",
355
- "type": {
356
- "text": "number"
357
- },
358
- "privacy": "private",
359
- "default": "0"
360
- },
361
- {
362
- "kind": "field",
363
- "name": "_internals",
364
- "type": {
365
- "text": "ElementInternals"
366
- },
367
- "privacy": "private"
368
- },
369
- {
370
- "kind": "field",
371
- "name": "form",
372
- "type": {
373
- "text": "HTMLFormElement | null"
374
- },
375
- "readonly": true
376
- },
377
- {
378
- "kind": "method",
379
- "name": "_executeAction",
380
- "privacy": "private"
381
- },
382
- {
383
- "kind": "method",
384
- "name": "_handleKeyDown",
385
- "privacy": "private",
386
- "parameters": [
387
- {
388
- "name": "event",
389
- "type": {
390
- "text": "KeyboardEvent"
391
- }
392
- }
393
- ]
394
- },
395
- {
396
- "kind": "method",
397
- "name": "_handleClick",
398
- "privacy": "private",
399
- "parameters": [
400
- {
401
- "name": "event",
402
- "type": {
403
- "text": "MouseEvent"
404
- }
405
- }
406
- ]
407
- },
408
- {
409
- "kind": "field",
410
- "name": "_handleFocus",
411
- "privacy": "private"
412
- },
413
- {
414
- "kind": "field",
415
- "name": "_handleBlur",
416
- "privacy": "private"
417
- },
418
- {
419
- "kind": "field",
420
- "name": "version",
421
- "type": {
422
- "text": "string"
423
- },
424
- "description": "VSCode Elements version",
425
- "readonly": true,
426
- "inheritedFrom": {
427
- "name": "VscElement",
428
- "module": "src/includes/VscElement.ts"
404
+ "text": "K"
429
405
  }
430
406
  }
431
- ],
432
- "attributes": [
433
- {
434
- "name": "autofocus",
435
- "type": {
436
- "text": "boolean"
437
- },
438
- "default": "false",
439
- "fieldName": "autofocus"
440
- },
441
- {
442
- "name": "secondary",
443
- "type": {
444
- "text": "boolean"
445
- },
446
- "default": "false",
447
- "description": "Button has a less prominent style.",
448
- "fieldName": "secondary"
449
- },
450
- {
451
- "name": "disabled",
452
- "type": {
453
- "text": "boolean"
454
- },
455
- "default": "false",
456
- "fieldName": "disabled"
457
- },
458
- {
459
- "name": "icon",
460
- "type": {
461
- "text": "string"
462
- },
463
- "default": "''",
464
- "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) before the label",
465
- "fieldName": "icon"
466
- },
467
- {
468
- "name": "icon-spin",
469
- "type": {
470
- "text": "boolean"
471
- },
472
- "default": "false",
473
- "description": "Spin property for the icon",
474
- "fieldName": "iconSpin"
475
- },
476
- {
477
- "name": "icon-spin-duration",
478
- "type": {
479
- "text": "number | undefined"
480
- },
481
- "description": "Duration property for the icon",
482
- "fieldName": "iconSpinDuration"
483
- },
407
+ ]
408
+ },
409
+ {
410
+ "kind": "function",
411
+ "name": "$$",
412
+ "return": {
413
+ "type": {
414
+ "text": "NodeListOf<T>"
415
+ }
416
+ },
417
+ "parameters": [
484
418
  {
485
- "name": "icon-after",
419
+ "name": "selector",
486
420
  "type": {
487
421
  "text": "string"
488
- },
489
- "default": "''",
490
- "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) after the label",
491
- "fieldName": "iconAfter"
492
- },
493
- {
494
- "name": "icon-after-spin",
495
- "type": {
496
- "text": "boolean"
497
- },
498
- "default": "false",
499
- "description": "Spin property for the after icon",
500
- "fieldName": "iconAfterSpin"
501
- },
502
- {
503
- "name": "icon-after-spin-duration",
504
- "type": {
505
- "text": "number | undefined"
506
- },
507
- "description": "Duration property for the after icon",
508
- "fieldName": "iconAfterSpinDuration"
509
- },
510
- {
511
- "name": "focused",
512
- "type": {
513
- "text": "boolean"
514
- },
515
- "default": "false",
516
- "fieldName": "focused"
517
- },
518
- {
519
- "name": "name",
520
- "type": {
521
- "text": "string | undefined"
522
- },
523
- "default": "undefined",
524
- "fieldName": "name"
525
- },
526
- {
527
- "name": "icon-only",
528
- "type": {
529
- "text": "boolean"
530
- },
531
- "default": "false",
532
- "fieldName": "iconOnly"
533
- },
422
+ }
423
+ }
424
+ ]
425
+ },
426
+ {
427
+ "kind": "function",
428
+ "name": "$$",
429
+ "return": {
430
+ "type": {
431
+ "text": "NodeListOf<T>"
432
+ }
433
+ },
434
+ "parameters": [
534
435
  {
535
- "name": "type",
436
+ "name": "root",
536
437
  "type": {
537
- "text": "'submit' | 'reset' | 'button'"
538
- },
539
- "default": "'button'",
540
- "fieldName": "type"
438
+ "text": "Element"
439
+ }
541
440
  },
542
441
  {
543
- "name": "value",
442
+ "name": "selector",
544
443
  "type": {
545
444
  "text": "string"
546
- },
547
- "default": "''",
548
- "fieldName": "value"
445
+ }
549
446
  }
550
- ],
551
- "superclass": {
552
- "name": "VscElement",
553
- "module": "/src/includes/VscElement.js"
554
- },
555
- "tagName": "vscode-button",
556
- "customElement": true
557
- }
558
- ],
559
- "exports": [
560
- {
561
- "kind": "js",
562
- "name": "VscodeButton",
563
- "declaration": {
564
- "name": "VscodeButton",
565
- "module": "src/vscode-button/vscode-button.ts"
566
- }
447
+ ]
567
448
  },
568
449
  {
569
- "kind": "custom-element-definition",
570
- "name": "vscode-button",
571
- "declaration": {
572
- "name": "VscodeButton",
573
- "module": "src/vscode-button/vscode-button.ts"
574
- }
575
- }
576
- ]
577
- },
578
- {
579
- "kind": "javascript-module",
580
- "path": "src/vscode-button-group/vscode-button-group.styles.ts",
581
- "declarations": [
582
- {
583
- "kind": "variable",
584
- "name": "styles",
585
- "type": {
586
- "text": "CSSResultGroup"
450
+ "kind": "function",
451
+ "name": "$$",
452
+ "return": {
453
+ "type": {
454
+ "text": "NodeListOf<T>"
455
+ }
587
456
  },
588
- "default": "[ defaultStyles, css` :host { display: inline-block; } .root { align-items: stretch; display: flex; width: 100%; } ::slotted(vscode-button:not(:first-child)) { --vsc-border-left-width: 0; --vsc-border-left-radius: 0; --vsc-border-left-width: 0; } ::slotted(vscode-button:not(:last-child)) { --vsc-divider-display: block; --vsc-border-right-width: 0; --vsc-border-right-radius: 0; --vsc-border-right-width: 0; } ::slotted(vscode-button:focus) { z-index: 1; } ::slotted(vscode-button:not(:empty)) { width: 100%; } `, ]"
589
- }
590
- ],
591
- "exports": [
592
- {
593
- "kind": "js",
594
- "name": "default",
595
- "declaration": {
596
- "name": "styles",
597
- "module": "src/vscode-button-group/vscode-button-group.styles.ts"
598
- }
599
- }
600
- ]
601
- },
602
- {
603
- "kind": "javascript-module",
604
- "path": "src/vscode-button-group/vscode-button-group.ts",
605
- "declarations": [
606
- {
607
- "kind": "class",
608
- "description": "Shows a split button, including several components in a single button. Commonly used to show a button with a dropdown to the right.",
609
- "name": "VscodeButtonGroup",
610
- "cssProperties": [
611
- {
612
- "name": "--vscode-button-background",
613
- "default": "#0078d4"
614
- },
615
- {
616
- "name": "--vscode-button-foreground",
617
- "default": "#ffffff"
618
- },
619
- {
620
- "name": "--vscode-button-border",
621
- "default": "var(--vscode-button-background, rgba(255, 255, 255, 0.07))"
622
- },
623
- {
624
- "name": "--vscode-button-hoverBackground",
625
- "default": "#026ec1"
626
- },
627
- {
628
- "description": "A sans-serif font type depends on the host OS.",
629
- "name": "--vscode-font-family",
630
- "default": "sans-serif"
631
- },
632
- {
633
- "name": "--vscode-font-size",
634
- "default": "13px"
635
- },
636
- {
637
- "name": "--vscode-font-weight",
638
- "default": "normal"
639
- },
640
- {
641
- "name": "--vscode-button-secondaryForeground",
642
- "default": "#cccccc"
643
- },
644
- {
645
- "name": "--vscode-button-secondaryBackground",
646
- "default": "#313131"
647
- },
457
+ "parameters": [
648
458
  {
649
- "name": "--vscode-button-secondaryHoverBackground",
650
- "default": "#3c3c3c"
459
+ "name": "arg1",
460
+ "type": {
461
+ "text": "string | Element"
462
+ }
651
463
  },
652
464
  {
653
- "name": "--vscode-focusBorder",
654
- "default": "#0078d4"
655
- }
656
- ],
657
- "members": [
658
- {
659
- "kind": "field",
660
- "name": "version",
465
+ "name": "arg2",
466
+ "optional": true,
661
467
  "type": {
662
468
  "text": "string"
663
- },
664
- "description": "VSCode Elements version",
665
- "readonly": true,
666
- "inheritedFrom": {
667
- "name": "VscElement",
668
- "module": "src/includes/VscElement.ts"
669
469
  }
670
470
  }
671
- ],
672
- "superclass": {
673
- "name": "VscElement",
674
- "module": "/src/includes/VscElement.js"
675
- },
676
- "tagName": "vscode-button-group",
677
- "customElement": true
471
+ ]
678
472
  }
679
473
  ],
680
474
  "exports": [
681
475
  {
682
476
  "kind": "js",
683
- "name": "VscodeButtonGroup",
477
+ "name": "clickOnElement",
684
478
  "declaration": {
685
- "name": "VscodeButtonGroup",
686
- "module": "src/vscode-button-group/vscode-button-group.ts"
479
+ "name": "clickOnElement",
480
+ "module": "src/includes/test-helpers.ts"
687
481
  }
688
482
  },
689
483
  {
690
- "kind": "custom-element-definition",
691
- "name": "vscode-button-group",
484
+ "kind": "js",
485
+ "name": "moveMouseOnElement",
692
486
  "declaration": {
693
- "name": "VscodeButtonGroup",
694
- "module": "src/vscode-button-group/vscode-button-group.ts"
487
+ "name": "moveMouseOnElement",
488
+ "module": "src/includes/test-helpers.ts"
695
489
  }
696
- }
697
- ]
698
- },
699
- {
700
- "kind": "javascript-module",
701
- "path": "src/includes/AssociatedFormControl.ts",
702
- "declarations": [],
703
- "exports": []
704
- },
705
- {
706
- "kind": "javascript-module",
707
- "path": "src/includes/VscElement.ts",
708
- "declarations": [
709
- {
710
- "kind": "class",
711
- "description": "",
712
- "name": "VscElement",
713
- "members": [
714
- {
715
- "kind": "field",
716
- "name": "version",
717
- "type": {
718
- "text": "string"
719
- },
720
- "description": "VSCode Elements version",
721
- "readonly": true
722
- }
723
- ],
724
- "superclass": {
725
- "name": "LitElement",
726
- "package": "lit"
727
- },
728
- "customElement": true
729
490
  },
730
- {
731
- "kind": "function",
732
- "name": "customElement",
733
- "parameters": [
734
- {
735
- "name": "tagName",
736
- "type": {
737
- "text": "string"
738
- }
739
- }
740
- ],
741
- "description": "Own implementation of Lit's customElement decorator."
742
- }
743
- ],
744
- "exports": [
745
491
  {
746
492
  "kind": "js",
747
- "name": "VscElement",
493
+ "name": "dragElement",
748
494
  "declaration": {
749
- "name": "VscElement",
750
- "module": "src/includes/VscElement.ts"
495
+ "name": "dragElement",
496
+ "module": "src/includes/test-helpers.ts"
751
497
  }
752
498
  },
753
499
  {
754
500
  "kind": "js",
755
- "name": "customElement",
501
+ "name": "$",
756
502
  "declaration": {
757
- "name": "customElement",
758
- "module": "src/includes/VscElement.ts"
503
+ "name": "$",
504
+ "module": "src/includes/test-helpers.ts"
759
505
  }
760
506
  },
761
507
  {
762
- "kind": "custom-element-definition",
763
- "name": "tagName",
508
+ "kind": "js",
509
+ "name": "$",
764
510
  "declaration": {
765
- "name": "anonymous_0",
766
- "module": "src/includes/VscElement.ts"
511
+ "name": "$",
512
+ "module": "src/includes/test-helpers.ts"
767
513
  }
768
- }
769
- ]
770
- },
771
- {
772
- "kind": "javascript-module",
773
- "path": "src/includes/default.styles.ts",
774
- "declarations": [],
775
- "exports": [
514
+ },
776
515
  {
777
516
  "kind": "js",
778
- "name": "default",
517
+ "name": "$",
779
518
  "declaration": {
780
- "module": "src/includes/default.styles.ts"
519
+ "name": "$",
520
+ "module": "src/includes/test-helpers.ts"
781
521
  }
782
- }
783
- ]
784
- },
785
- {
786
- "kind": "javascript-module",
787
- "path": "src/includes/helpers.ts",
788
- "declarations": [
789
- {
790
- "kind": "variable",
791
- "name": "INPUT_LINE_HEIGHT_RATIO"
792
522
  },
793
523
  {
794
- "kind": "variable",
795
- "name": "DEFUALT_INPUT_WIDGET_WIDTH",
796
- "type": {
797
- "text": "number"
798
- },
799
- "default": "320"
524
+ "kind": "js",
525
+ "name": "$",
526
+ "declaration": {
527
+ "name": "$",
528
+ "module": "src/includes/test-helpers.ts"
529
+ }
800
530
  },
801
531
  {
802
- "kind": "function",
803
- "name": "getDefaultFontStack"
532
+ "kind": "js",
533
+ "name": "$",
534
+ "declaration": {
535
+ "name": "$",
536
+ "module": "src/includes/test-helpers.ts"
537
+ }
804
538
  },
805
539
  {
806
- "kind": "function",
807
- "name": "getDefaultEditorFontStack"
808
- }
809
- ],
810
- "exports": [
540
+ "kind": "js",
541
+ "name": "$$",
542
+ "declaration": {
543
+ "name": "$$",
544
+ "module": "src/includes/test-helpers.ts"
545
+ }
546
+ },
811
547
  {
812
548
  "kind": "js",
813
- "name": "INPUT_LINE_HEIGHT_RATIO",
549
+ "name": "$$",
814
550
  "declaration": {
815
- "name": "INPUT_LINE_HEIGHT_RATIO",
816
- "module": "src/includes/helpers.ts"
551
+ "name": "$$",
552
+ "module": "src/includes/test-helpers.ts"
817
553
  }
818
554
  },
819
555
  {
820
556
  "kind": "js",
821
- "name": "DEFUALT_INPUT_WIDGET_WIDTH",
557
+ "name": "$$",
822
558
  "declaration": {
823
- "name": "DEFUALT_INPUT_WIDGET_WIDTH",
824
- "module": "src/includes/helpers.ts"
559
+ "name": "$$",
560
+ "module": "src/includes/test-helpers.ts"
825
561
  }
826
562
  },
827
563
  {
828
564
  "kind": "js",
829
- "name": "getDefaultFontStack",
565
+ "name": "$$",
830
566
  "declaration": {
831
- "name": "getDefaultFontStack",
832
- "module": "src/includes/helpers.ts"
567
+ "name": "$$",
568
+ "module": "src/includes/test-helpers.ts"
833
569
  }
834
570
  },
835
571
  {
836
572
  "kind": "js",
837
- "name": "getDefaultEditorFontStack",
573
+ "name": "$$",
838
574
  "declaration": {
839
- "name": "getDefaultEditorFontStack",
840
- "module": "src/includes/helpers.ts"
575
+ "name": "$$",
576
+ "module": "src/includes/test-helpers.ts"
841
577
  }
842
578
  }
843
579
  ]
844
580
  },
845
581
  {
846
582
  "kind": "javascript-module",
847
- "path": "src/includes/style-property-map.ts",
583
+ "path": "src/includes/uniqueId.ts",
584
+ "declarations": [
585
+ {
586
+ "kind": "function",
587
+ "name": "uniqueId",
588
+ "parameters": [
589
+ {
590
+ "name": "prefix",
591
+ "default": "''"
592
+ }
593
+ ]
594
+ }
595
+ ],
596
+ "exports": [
597
+ {
598
+ "kind": "js",
599
+ "name": "default",
600
+ "declaration": {
601
+ "name": "uniqueId",
602
+ "module": "src/includes/uniqueId.ts"
603
+ }
604
+ }
605
+ ]
606
+ },
607
+ {
608
+ "kind": "javascript-module",
609
+ "path": "src/vscode-button/vscode-button.styles.ts",
848
610
  "declarations": [
849
611
  {
850
612
  "kind": "variable",
851
- "name": "stylePropertyMap",
852
- "description": "Implement a Lit directive similar to styleMap, but instead of setting styles via the style\nattribute (which violates CSP), it should apply styles using the style property.\n\n[MDN Reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy#unsafe-inline)"
613
+ "name": "styles",
614
+ "type": {
615
+ "text": "CSSResultGroup"
616
+ },
617
+ "default": "[ defaultStyles, css` :host { cursor: pointer; display: inline-block; width: auto; } .base { align-items: center; background-color: var(--vscode-button-background, #0078d4); border-bottom-left-radius: var(--vsc-border-left-radius, 2px); border-bottom-right-radius: var(--vsc-border-right-radius, 2px); border-bottom-width: 1px; border-color: var(--vscode-button-border, transparent); border-left-width: var(--vsc-border-left-width, 1px); border-right-width: var(--vsc-border-right-width, 1px); border-style: solid; border-top-left-radius: var(--vsc-border-left-radius, 2px); border-top-right-radius: var(--vsc-border-right-radius, 2px); border-top-width: 1px; box-sizing: border-box; color: var(--vscode-button-foreground, #ffffff); display: flex; font-family: var(--vscode-font-family, ${defaultFontStack}); font-size: var(--vscode-font-size, 13px); font-weight: var(--vscode-font-weight, normal); height: 100%; justify-content: center; line-height: 22px; overflow: hidden; padding: 1px calc(13px + var(--vsc-base-additional-right-padding, 0px)) 1px 13px; position: relative; user-select: none; white-space: nowrap; width: 100%; } .base:after { background-color: var( --vscode-button-separator, rgba(255, 255, 255, 0.4) ); content: var(--vsc-base-after-content); display: var(--vsc-divider-display, none); position: absolute; right: 0; top: 4px; bottom: 4px; width: 1px; } :host([secondary]) .base:after { background-color: var(--vscode-button-secondaryForeground, #cccccc); opacity: 0.4; } :host([secondary]) .base { color: var(--vscode-button-secondaryForeground, #cccccc); background-color: var(--vscode-button-secondaryBackground, #313131); border-color: var( --vscode-button-border, var(--vscode-button-secondaryBackground, rgba(255, 255, 255, 0.07)) ); } :host([disabled]) { cursor: default; opacity: 0.4; pointer-events: none; } :host(:hover) .base { background-color: var(--vscode-button-hoverBackground, #026ec1); } :host([disabled]:hover) .base { background-color: var(--vscode-button-background, #0078d4); } :host([secondary]:hover) .base { background-color: var(--vscode-button-secondaryHoverBackground, #3c3c3c); } :host([secondary][disabled]:hover) .base { background-color: var(--vscode-button-secondaryBackground, #313131); } :host(:focus), :host(:active) { outline: none; } :host(:focus) .base { background-color: var(--vscode-button-hoverBackground, #026ec1); outline: 1px solid var(--vscode-focusBorder, #0078d4); outline-offset: 2px; } :host([disabled]:focus) .base { background-color: var(--vscode-button-background, #0078d4); outline: 0; } :host([secondary]:focus) .base { background-color: var(--vscode-button-secondaryHoverBackground, #3c3c3c); } :host([secondary][disabled]:focus) .base { background-color: var(--vscode-button-secondaryBackground, #313131); } ::slotted(*) { display: inline-block; margin-left: 4px; margin-right: 4px; } ::slotted(*:first-child) { margin-left: 0; } ::slotted(*:last-child) { margin-right: 0; } ::slotted(vscode-icon) { color: inherit; } .content { display: flex; position: relative; width: 100%; height: 100%; padding: 1px 13px; } :host(:empty) .base, .base.icon-only { min-height: 24px; min-width: 26px; padding: 1px 4px; } slot { align-items: center; display: flex; height: 100%; } .has-content-before slot[name='content-before'] { margin-right: 4px; } .has-content-after slot[name='content-after'] { margin-left: 4px; } .icon, .icon-after { color: inherit; display: block; } :host(:not(:empty)) .icon { margin-right: 3px; } :host(:not(:empty)) .icon-after, :host([icon]) .icon-after { margin-left: 3px; } `, ]"
853
618
  }
854
619
  ],
855
620
  "exports": [
856
621
  {
857
622
  "kind": "js",
858
- "name": "stylePropertyMap",
623
+ "name": "default",
859
624
  "declaration": {
860
- "name": "stylePropertyMap",
861
- "module": "src/includes/style-property-map.ts"
625
+ "name": "styles",
626
+ "module": "src/vscode-button/vscode-button.styles.ts"
862
627
  }
863
628
  }
864
629
  ]
865
630
  },
866
631
  {
867
632
  "kind": "javascript-module",
868
- "path": "src/includes/test-helpers.ts",
633
+ "path": "src/vscode-button/vscode-button.ts",
869
634
  "declarations": [
870
635
  {
871
- "kind": "function",
872
- "name": "clickOnElement",
873
- "parameters": [
636
+ "kind": "class",
637
+ "description": "Clickable element that are used to trigger actions.",
638
+ "name": "VscodeButton",
639
+ "cssProperties": [
640
+ {
641
+ "name": "--vscode-button-background",
642
+ "default": "#0078d4"
643
+ },
644
+ {
645
+ "name": "--vscode-button-foreground",
646
+ "default": "#ffffff"
647
+ },
648
+ {
649
+ "name": "--vscode-button-border",
650
+ "default": "var(--vscode-button-background, rgba(255, 255, 255, 0.07))"
651
+ },
652
+ {
653
+ "name": "--vscode-button-hoverBackground",
654
+ "default": "#026ec1"
655
+ },
656
+ {
657
+ "description": "A sans-serif font type depends on the host OS.",
658
+ "name": "--vscode-font-family",
659
+ "default": "sans-serif"
660
+ },
661
+ {
662
+ "name": "--vscode-font-size",
663
+ "default": "13px"
664
+ },
665
+ {
666
+ "name": "--vscode-font-weight",
667
+ "default": "normal"
668
+ },
669
+ {
670
+ "name": "--vscode-button-secondaryForeground",
671
+ "default": "#cccccc"
672
+ },
673
+ {
674
+ "name": "--vscode-button-secondaryBackground",
675
+ "default": "#313131"
676
+ },
677
+ {
678
+ "name": "--vscode-button-secondaryHoverBackground",
679
+ "default": "#3c3c3c"
680
+ },
681
+ {
682
+ "name": "--vscode-focusBorder",
683
+ "default": "#0078d4"
684
+ }
685
+ ],
686
+ "cssParts": [
687
+ {
688
+ "description": "The main content area of the component.",
689
+ "name": "base"
690
+ }
691
+ ],
692
+ "slots": [
693
+ {
694
+ "description": "Slot before the main content.",
695
+ "name": "content-before"
696
+ },
697
+ {
698
+ "description": "Slot after the main content.",
699
+ "name": "content-after"
700
+ }
701
+ ],
702
+ "members": [
703
+ {
704
+ "kind": "field",
705
+ "name": "autofocus",
706
+ "type": {
707
+ "text": "boolean"
708
+ },
709
+ "default": "false",
710
+ "attribute": "autofocus",
711
+ "reflects": true
712
+ },
713
+ {
714
+ "kind": "field",
715
+ "name": "secondary",
716
+ "type": {
717
+ "text": "boolean"
718
+ },
719
+ "default": "false",
720
+ "description": "Button has a less prominent style.",
721
+ "attribute": "secondary",
722
+ "reflects": true
723
+ },
724
+ {
725
+ "kind": "field",
726
+ "name": "disabled",
727
+ "type": {
728
+ "text": "boolean"
729
+ },
730
+ "default": "false",
731
+ "attribute": "disabled",
732
+ "reflects": true
733
+ },
734
+ {
735
+ "kind": "field",
736
+ "name": "icon",
737
+ "type": {
738
+ "text": "string"
739
+ },
740
+ "default": "''",
741
+ "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) before the label",
742
+ "attribute": "icon"
743
+ },
744
+ {
745
+ "kind": "field",
746
+ "name": "iconSpin",
747
+ "type": {
748
+ "text": "boolean"
749
+ },
750
+ "default": "false",
751
+ "description": "Spin property for the icon",
752
+ "attribute": "icon-spin",
753
+ "reflects": true
754
+ },
755
+ {
756
+ "kind": "field",
757
+ "name": "iconSpinDuration",
758
+ "type": {
759
+ "text": "number | undefined"
760
+ },
761
+ "description": "Duration property for the icon",
762
+ "attribute": "icon-spin-duration",
763
+ "reflects": true
764
+ },
765
+ {
766
+ "kind": "field",
767
+ "name": "iconAfter",
768
+ "type": {
769
+ "text": "string"
770
+ },
771
+ "default": "''",
772
+ "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) after the label",
773
+ "attribute": "icon-after"
774
+ },
775
+ {
776
+ "kind": "field",
777
+ "name": "iconAfterSpin",
778
+ "type": {
779
+ "text": "boolean"
780
+ },
781
+ "default": "false",
782
+ "description": "Spin property for the after icon",
783
+ "attribute": "icon-after-spin",
784
+ "reflects": true
785
+ },
786
+ {
787
+ "kind": "field",
788
+ "name": "iconAfterSpinDuration",
789
+ "type": {
790
+ "text": "number | undefined"
791
+ },
792
+ "description": "Duration property for the after icon",
793
+ "attribute": "icon-after-spin-duration",
794
+ "reflects": true
795
+ },
796
+ {
797
+ "kind": "field",
798
+ "name": "focused",
799
+ "type": {
800
+ "text": "boolean"
801
+ },
802
+ "default": "false",
803
+ "attribute": "focused",
804
+ "reflects": true
805
+ },
874
806
  {
875
- "name": "el",
807
+ "kind": "field",
808
+ "name": "name",
876
809
  "type": {
877
- "text": "Element"
878
- }
810
+ "text": "string | undefined"
811
+ },
812
+ "default": "undefined",
813
+ "attribute": "name",
814
+ "reflects": true
879
815
  },
880
816
  {
881
- "name": "position",
882
- "default": "'center'",
817
+ "kind": "field",
818
+ "name": "iconOnly",
883
819
  "type": {
884
- "text": "'top' | 'right' | 'bottom' | 'left' | 'center'"
885
- }
820
+ "text": "boolean"
821
+ },
822
+ "default": "false",
823
+ "attribute": "icon-only",
824
+ "reflects": true
886
825
  },
887
826
  {
888
- "name": "offsetX",
889
- "default": "0"
827
+ "kind": "field",
828
+ "name": "type",
829
+ "type": {
830
+ "text": "'submit' | 'reset' | 'button'"
831
+ },
832
+ "default": "'button'",
833
+ "attribute": "type",
834
+ "reflects": true
890
835
  },
891
836
  {
892
- "name": "offsetY",
893
- "default": "0"
894
- }
895
- ],
896
- "description": "A testing utility that measures an element's position and clicks on it."
897
- },
898
- {
899
- "kind": "function",
900
- "name": "moveMouseOnElement",
901
- "parameters": [
837
+ "kind": "field",
838
+ "name": "value",
839
+ "type": {
840
+ "text": "string"
841
+ },
842
+ "default": "''",
843
+ "attribute": "value"
844
+ },
902
845
  {
903
- "name": "el",
846
+ "kind": "field",
847
+ "name": "_prevTabindex",
904
848
  "type": {
905
- "text": "Element"
906
- }
849
+ "text": "number"
850
+ },
851
+ "privacy": "private",
852
+ "default": "0"
907
853
  },
908
854
  {
909
- "name": "position",
910
- "default": "'center'",
855
+ "kind": "field",
856
+ "name": "_internals",
911
857
  "type": {
912
- "text": "'top' | 'right' | 'bottom' | 'left' | 'center'"
913
- }
858
+ "text": "ElementInternals"
859
+ },
860
+ "privacy": "private"
914
861
  },
915
862
  {
916
- "name": "offsetX",
917
- "default": "0"
863
+ "kind": "field",
864
+ "name": "_hasContentBefore",
865
+ "type": {
866
+ "text": "boolean"
867
+ },
868
+ "privacy": "private",
869
+ "default": "false"
918
870
  },
919
871
  {
920
- "name": "offsetY",
921
- "default": "0"
922
- }
923
- ],
924
- "description": "A testing utility that moves the mouse onto an element."
925
- },
926
- {
927
- "kind": "function",
928
- "name": "dragElement",
929
- "return": {
930
- "type": {
931
- "text": "Promise<void>"
932
- }
933
- },
934
- "parameters": [
872
+ "kind": "field",
873
+ "name": "_hasContentAfter",
874
+ "type": {
875
+ "text": "boolean"
876
+ },
877
+ "privacy": "private",
878
+ "default": "false"
879
+ },
935
880
  {
936
- "name": "el",
881
+ "kind": "field",
882
+ "name": "form",
937
883
  "type": {
938
- "text": "Element"
939
- }
884
+ "text": "HTMLFormElement | null"
885
+ },
886
+ "readonly": true
940
887
  },
941
888
  {
942
- "name": "deltaX",
943
- "default": "0"
889
+ "kind": "method",
890
+ "name": "_executeAction",
891
+ "privacy": "private"
944
892
  },
945
893
  {
946
- "name": "deltaY",
947
- "default": "0"
894
+ "kind": "method",
895
+ "name": "_handleKeyDown",
896
+ "privacy": "private",
897
+ "parameters": [
898
+ {
899
+ "name": "event",
900
+ "type": {
901
+ "text": "KeyboardEvent"
902
+ }
903
+ }
904
+ ]
948
905
  },
949
906
  {
950
- "name": "callbacks",
951
- "default": "{}",
907
+ "kind": "method",
908
+ "name": "_handleClick",
909
+ "privacy": "private",
910
+ "parameters": [
911
+ {
912
+ "name": "event",
913
+ "type": {
914
+ "text": "MouseEvent"
915
+ }
916
+ }
917
+ ]
918
+ },
919
+ {
920
+ "kind": "field",
921
+ "name": "_handleFocus",
922
+ "privacy": "private"
923
+ },
924
+ {
925
+ "kind": "field",
926
+ "name": "_handleBlur",
927
+ "privacy": "private"
928
+ },
929
+ {
930
+ "kind": "method",
931
+ "name": "_handleSlotChange",
932
+ "privacy": "private",
933
+ "parameters": [
934
+ {
935
+ "name": "ev",
936
+ "type": {
937
+ "text": "Event"
938
+ }
939
+ }
940
+ ]
941
+ },
942
+ {
943
+ "kind": "field",
944
+ "name": "version",
952
945
  "type": {
953
- "text": "{\n afterMouseDown?: () => void | Promise<void>;\n afterMouseMove?: () => void | Promise<void>;\n }"
946
+ "text": "string"
947
+ },
948
+ "description": "VSCode Elements version",
949
+ "readonly": true,
950
+ "inheritedFrom": {
951
+ "name": "VscElement",
952
+ "module": "src/includes/VscElement.ts"
954
953
  }
955
954
  }
956
955
  ],
957
- "description": "A testing utility that drags an element with the mouse."
958
- },
959
- {
960
- "kind": "function",
961
- "name": "$",
962
- "return": {
963
- "type": {
964
- "text": "TagNameToElement<K>"
965
- }
966
- },
967
- "parameters": [
956
+ "attributes": [
968
957
  {
969
- "name": "selector",
958
+ "name": "autofocus",
970
959
  "type": {
971
- "text": "K"
972
- }
973
- }
974
- ]
975
- },
976
- {
977
- "kind": "function",
978
- "name": "$",
979
- "return": {
980
- "type": {
981
- "text": "TagNameToElement<K>"
982
- }
983
- },
984
- "parameters": [
960
+ "text": "boolean"
961
+ },
962
+ "default": "false",
963
+ "fieldName": "autofocus"
964
+ },
965
+ {
966
+ "name": "secondary",
967
+ "type": {
968
+ "text": "boolean"
969
+ },
970
+ "default": "false",
971
+ "description": "Button has a less prominent style.",
972
+ "fieldName": "secondary"
973
+ },
974
+ {
975
+ "name": "disabled",
976
+ "type": {
977
+ "text": "boolean"
978
+ },
979
+ "default": "false",
980
+ "fieldName": "disabled"
981
+ },
982
+ {
983
+ "name": "icon",
984
+ "type": {
985
+ "text": "string"
986
+ },
987
+ "default": "''",
988
+ "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) before the label",
989
+ "fieldName": "icon"
990
+ },
991
+ {
992
+ "name": "icon-spin",
993
+ "type": {
994
+ "text": "boolean"
995
+ },
996
+ "default": "false",
997
+ "description": "Spin property for the icon",
998
+ "fieldName": "iconSpin"
999
+ },
1000
+ {
1001
+ "name": "icon-spin-duration",
1002
+ "type": {
1003
+ "text": "number | undefined"
1004
+ },
1005
+ "description": "Duration property for the icon",
1006
+ "fieldName": "iconSpinDuration"
1007
+ },
1008
+ {
1009
+ "name": "icon-after",
1010
+ "type": {
1011
+ "text": "string"
1012
+ },
1013
+ "default": "''",
1014
+ "description": "A [Codicon](https://microsoft.github.io/vscode-codicons/dist/codicon.html) after the label",
1015
+ "fieldName": "iconAfter"
1016
+ },
985
1017
  {
986
- "name": "root",
1018
+ "name": "icon-after-spin",
987
1019
  "type": {
988
- "text": "Element"
989
- }
1020
+ "text": "boolean"
1021
+ },
1022
+ "default": "false",
1023
+ "description": "Spin property for the after icon",
1024
+ "fieldName": "iconAfterSpin"
990
1025
  },
991
1026
  {
992
- "name": "selector",
1027
+ "name": "icon-after-spin-duration",
993
1028
  "type": {
994
- "text": "K"
995
- }
996
- }
997
- ]
998
- },
999
- {
1000
- "kind": "function",
1001
- "name": "$",
1002
- "return": {
1003
- "type": {
1004
- "text": "T"
1005
- }
1006
- },
1007
- "parameters": [
1029
+ "text": "number | undefined"
1030
+ },
1031
+ "description": "Duration property for the after icon",
1032
+ "fieldName": "iconAfterSpinDuration"
1033
+ },
1008
1034
  {
1009
- "name": "selector",
1035
+ "name": "focused",
1010
1036
  "type": {
1011
- "text": "string"
1012
- }
1013
- }
1014
- ]
1015
- },
1016
- {
1017
- "kind": "function",
1018
- "name": "$",
1019
- "return": {
1020
- "type": {
1021
- "text": "T"
1022
- }
1023
- },
1024
- "parameters": [
1037
+ "text": "boolean"
1038
+ },
1039
+ "default": "false",
1040
+ "fieldName": "focused"
1041
+ },
1025
1042
  {
1026
- "name": "root",
1043
+ "name": "name",
1027
1044
  "type": {
1028
- "text": "Element"
1029
- }
1045
+ "text": "string | undefined"
1046
+ },
1047
+ "default": "undefined",
1048
+ "fieldName": "name"
1030
1049
  },
1031
1050
  {
1032
- "name": "selector",
1051
+ "name": "icon-only",
1033
1052
  "type": {
1034
- "text": "string"
1035
- }
1036
- }
1037
- ]
1038
- },
1039
- {
1040
- "kind": "function",
1041
- "name": "$",
1042
- "return": {
1043
- "type": {
1044
- "text": "T"
1045
- }
1046
- },
1047
- "parameters": [
1053
+ "text": "boolean"
1054
+ },
1055
+ "default": "false",
1056
+ "fieldName": "iconOnly"
1057
+ },
1048
1058
  {
1049
- "name": "arg1",
1059
+ "name": "type",
1050
1060
  "type": {
1051
- "text": "string | Element"
1052
- }
1061
+ "text": "'submit' | 'reset' | 'button'"
1062
+ },
1063
+ "default": "'button'",
1064
+ "fieldName": "type"
1053
1065
  },
1054
1066
  {
1055
- "name": "arg2",
1056
- "optional": true,
1067
+ "name": "value",
1057
1068
  "type": {
1058
1069
  "text": "string"
1059
- }
1060
- }
1061
- ]
1062
- },
1063
- {
1064
- "kind": "function",
1065
- "name": "$$",
1066
- "return": {
1067
- "type": {
1068
- "text": "NodeListOf<TagNameToElement<K>>"
1070
+ },
1071
+ "default": "''",
1072
+ "fieldName": "value"
1069
1073
  }
1074
+ ],
1075
+ "superclass": {
1076
+ "name": "VscElement",
1077
+ "module": "/src/includes/VscElement.js"
1070
1078
  },
1071
- "parameters": [
1072
- {
1073
- "name": "selector",
1074
- "type": {
1075
- "text": "K"
1076
- }
1077
- }
1078
- ]
1079
+ "tagName": "vscode-button",
1080
+ "customElement": true
1081
+ }
1082
+ ],
1083
+ "exports": [
1084
+ {
1085
+ "kind": "js",
1086
+ "name": "VscodeButton",
1087
+ "declaration": {
1088
+ "name": "VscodeButton",
1089
+ "module": "src/vscode-button/vscode-button.ts"
1090
+ }
1079
1091
  },
1080
1092
  {
1081
- "kind": "function",
1082
- "name": "$$",
1083
- "return": {
1084
- "type": {
1085
- "text": "NodeListOf<TagNameToElement<K>>"
1086
- }
1093
+ "kind": "custom-element-definition",
1094
+ "name": "vscode-button",
1095
+ "declaration": {
1096
+ "name": "VscodeButton",
1097
+ "module": "src/vscode-button/vscode-button.ts"
1098
+ }
1099
+ }
1100
+ ]
1101
+ },
1102
+ {
1103
+ "kind": "javascript-module",
1104
+ "path": "src/vscode-badge/vscode-badge.styles.ts",
1105
+ "declarations": [
1106
+ {
1107
+ "kind": "variable",
1108
+ "name": "styles",
1109
+ "type": {
1110
+ "text": "CSSResultGroup"
1087
1111
  },
1088
- "parameters": [
1112
+ "default": "[ defaultStyles, css` :host { display: inline-block; } .root { background-color: var(--vscode-badge-background, #616161); border: 1px solid var(--vscode-contrastBorder, transparent); border-radius: 2px; box-sizing: border-box; color: var(--vscode-badge-foreground, #f8f8f8); display: block; font-family: var(--vscode-font-family, ${defaultFontStack}); font-size: 11px; font-weight: 400; line-height: 14px; min-width: 18px; padding: 2px 3px; text-align: center; white-space: nowrap; } :host([variant='counter']) .root { border-radius: 11px; line-height: 11px; min-height: 18px; min-width: 18px; padding: 3px 6px; } :host([variant='activity-bar-counter']) .root { background-color: var(--vscode-activityBarBadge-background, #0078d4); border-radius: 20px; color: var(--vscode-activityBarBadge-foreground, #ffffff); font-size: 9px; font-weight: 600; line-height: 16px; padding: 0 4px; } :host([variant='tab-header-counter']) .root { background-color: var(--vscode-activityBarBadge-background, #0078d4); border-radius: 10px; color: var(--vscode-activityBarBadge-foreground, #ffffff); line-height: 10px; min-height: 16px; min-width: 16px; padding: 3px 5px; } `, ]"
1113
+ }
1114
+ ],
1115
+ "exports": [
1116
+ {
1117
+ "kind": "js",
1118
+ "name": "default",
1119
+ "declaration": {
1120
+ "name": "styles",
1121
+ "module": "src/vscode-badge/vscode-badge.styles.ts"
1122
+ }
1123
+ }
1124
+ ]
1125
+ },
1126
+ {
1127
+ "kind": "javascript-module",
1128
+ "path": "src/vscode-badge/vscode-badge.ts",
1129
+ "declarations": [
1130
+ {
1131
+ "kind": "class",
1132
+ "description": "Show counts or status information. Badges can also be used within [Textfield](https://vscode-elements.github.io/components/textfield) and [TabHeader](https://vscode-elements.github.io/components/tabs) components.",
1133
+ "name": "VscodeBadge",
1134
+ "cssProperties": [
1089
1135
  {
1090
- "name": "root",
1091
- "type": {
1092
- "text": "Element"
1093
- }
1136
+ "description": "A sans-serif font type depends on the host OS.",
1137
+ "name": "--vscode-font-family",
1138
+ "default": "sans-serif"
1094
1139
  },
1095
1140
  {
1096
- "name": "selector",
1097
- "type": {
1098
- "text": "K"
1099
- }
1100
- }
1101
- ]
1102
- },
1103
- {
1104
- "kind": "function",
1105
- "name": "$$",
1106
- "return": {
1107
- "type": {
1108
- "text": "NodeListOf<T>"
1109
- }
1110
- },
1111
- "parameters": [
1141
+ "name": "--vscode-contrastBorder",
1142
+ "default": "transparent"
1143
+ },
1112
1144
  {
1113
- "name": "selector",
1114
- "type": {
1115
- "text": "string"
1116
- }
1117
- }
1118
- ]
1119
- },
1120
- {
1121
- "kind": "function",
1122
- "name": "$$",
1123
- "return": {
1124
- "type": {
1125
- "text": "NodeListOf<T>"
1126
- }
1127
- },
1128
- "parameters": [
1145
+ "description": "default and counter variant background color",
1146
+ "name": "--vscode-badge-background",
1147
+ "default": "#616161"
1148
+ },
1129
1149
  {
1130
- "name": "root",
1131
- "type": {
1132
- "text": "Element"
1133
- }
1150
+ "description": "default and counter variant foreground color",
1151
+ "name": "--vscode-badge-foreground",
1152
+ "default": "#f8f8f8"
1134
1153
  },
1135
1154
  {
1136
- "name": "selector",
1137
- "type": {
1138
- "text": "string"
1139
- }
1140
- }
1141
- ]
1142
- },
1143
- {
1144
- "kind": "function",
1145
- "name": "$$",
1146
- "return": {
1147
- "type": {
1148
- "text": "NodeListOf<T>"
1155
+ "description": "activity bar variant background color",
1156
+ "name": "--vscode-activityBarBadge-background",
1157
+ "default": "#0078d4"
1158
+ },
1159
+ {
1160
+ "description": "activity bar variant foreground color",
1161
+ "name": "--vscode-activityBarBadge-foreground",
1162
+ "default": "#ffffff"
1149
1163
  }
1150
- },
1151
- "parameters": [
1164
+ ],
1165
+ "members": [
1152
1166
  {
1153
- "name": "arg1",
1167
+ "kind": "field",
1168
+ "name": "variant",
1154
1169
  "type": {
1155
- "text": "string | Element"
1156
- }
1170
+ "text": "| 'default'\n | 'counter'\n | 'activity-bar-counter'\n | 'tab-header-counter'"
1171
+ },
1172
+ "default": "'default'",
1173
+ "attribute": "variant",
1174
+ "reflects": true
1157
1175
  },
1158
1176
  {
1159
- "name": "arg2",
1160
- "optional": true,
1177
+ "kind": "field",
1178
+ "name": "version",
1161
1179
  "type": {
1162
1180
  "text": "string"
1181
+ },
1182
+ "description": "VSCode Elements version",
1183
+ "readonly": true,
1184
+ "inheritedFrom": {
1185
+ "name": "VscElement",
1186
+ "module": "src/includes/VscElement.ts"
1163
1187
  }
1164
1188
  }
1165
- ]
1189
+ ],
1190
+ "attributes": [
1191
+ {
1192
+ "name": "variant",
1193
+ "type": {
1194
+ "text": "| 'default'\n | 'counter'\n | 'activity-bar-counter'\n | 'tab-header-counter'"
1195
+ },
1196
+ "default": "'default'",
1197
+ "fieldName": "variant"
1198
+ }
1199
+ ],
1200
+ "superclass": {
1201
+ "name": "VscElement",
1202
+ "module": "/src/includes/VscElement.js"
1203
+ },
1204
+ "tagName": "vscode-badge",
1205
+ "customElement": true
1166
1206
  }
1167
1207
  ],
1168
1208
  "exports": [
1169
1209
  {
1170
1210
  "kind": "js",
1171
- "name": "clickOnElement",
1172
- "declaration": {
1173
- "name": "clickOnElement",
1174
- "module": "src/includes/test-helpers.ts"
1175
- }
1176
- },
1177
- {
1178
- "kind": "js",
1179
- "name": "moveMouseOnElement",
1180
- "declaration": {
1181
- "name": "moveMouseOnElement",
1182
- "module": "src/includes/test-helpers.ts"
1183
- }
1184
- },
1185
- {
1186
- "kind": "js",
1187
- "name": "dragElement",
1188
- "declaration": {
1189
- "name": "dragElement",
1190
- "module": "src/includes/test-helpers.ts"
1191
- }
1192
- },
1193
- {
1194
- "kind": "js",
1195
- "name": "$",
1196
- "declaration": {
1197
- "name": "$",
1198
- "module": "src/includes/test-helpers.ts"
1199
- }
1200
- },
1201
- {
1202
- "kind": "js",
1203
- "name": "$",
1204
- "declaration": {
1205
- "name": "$",
1206
- "module": "src/includes/test-helpers.ts"
1207
- }
1208
- },
1209
- {
1210
- "kind": "js",
1211
- "name": "$",
1212
- "declaration": {
1213
- "name": "$",
1214
- "module": "src/includes/test-helpers.ts"
1215
- }
1216
- },
1217
- {
1218
- "kind": "js",
1219
- "name": "$",
1220
- "declaration": {
1221
- "name": "$",
1222
- "module": "src/includes/test-helpers.ts"
1223
- }
1224
- },
1225
- {
1226
- "kind": "js",
1227
- "name": "$",
1228
- "declaration": {
1229
- "name": "$",
1230
- "module": "src/includes/test-helpers.ts"
1231
- }
1232
- },
1233
- {
1234
- "kind": "js",
1235
- "name": "$$",
1236
- "declaration": {
1237
- "name": "$$",
1238
- "module": "src/includes/test-helpers.ts"
1239
- }
1240
- },
1241
- {
1242
- "kind": "js",
1243
- "name": "$$",
1211
+ "name": "VscodeBadge",
1244
1212
  "declaration": {
1245
- "name": "$$",
1246
- "module": "src/includes/test-helpers.ts"
1213
+ "name": "VscodeBadge",
1214
+ "module": "src/vscode-badge/vscode-badge.ts"
1247
1215
  }
1248
1216
  },
1249
1217
  {
1250
- "kind": "js",
1251
- "name": "$$",
1218
+ "kind": "custom-element-definition",
1219
+ "name": "vscode-badge",
1252
1220
  "declaration": {
1253
- "name": "$$",
1254
- "module": "src/includes/test-helpers.ts"
1221
+ "name": "VscodeBadge",
1222
+ "module": "src/vscode-badge/vscode-badge.ts"
1255
1223
  }
1256
- },
1224
+ }
1225
+ ]
1226
+ },
1227
+ {
1228
+ "kind": "javascript-module",
1229
+ "path": "src/vscode-button-group/vscode-button-group.styles.ts",
1230
+ "declarations": [
1257
1231
  {
1258
- "kind": "js",
1259
- "name": "$$",
1260
- "declaration": {
1261
- "name": "$$",
1262
- "module": "src/includes/test-helpers.ts"
1263
- }
1264
- },
1232
+ "kind": "variable",
1233
+ "name": "styles",
1234
+ "type": {
1235
+ "text": "CSSResultGroup"
1236
+ },
1237
+ "default": "[ defaultStyles, css` :host { display: inline-block; } .root { align-items: stretch; display: flex; width: 100%; } ::slotted(vscode-button:not(:first-child)) { --vsc-border-left-width: 0; --vsc-border-left-radius: 0; --vsc-border-left-width: 0; } ::slotted(vscode-button:not(:last-child)) { --vsc-divider-display: block; --vsc-base-additional-right-padding: 1px; --vsc-base-after-content: ''; --vsc-border-right-width: 0; --vsc-border-right-radius: 0; --vsc-border-right-width: 0; } ::slotted(vscode-button:focus) { z-index: 1; } ::slotted(vscode-button:not(:empty)) { width: 100%; } `, ]"
1238
+ }
1239
+ ],
1240
+ "exports": [
1265
1241
  {
1266
1242
  "kind": "js",
1267
- "name": "$$",
1243
+ "name": "default",
1268
1244
  "declaration": {
1269
- "name": "$$",
1270
- "module": "src/includes/test-helpers.ts"
1245
+ "name": "styles",
1246
+ "module": "src/vscode-button-group/vscode-button-group.styles.ts"
1271
1247
  }
1272
1248
  }
1273
1249
  ]
1274
1250
  },
1275
1251
  {
1276
1252
  "kind": "javascript-module",
1277
- "path": "src/includes/uniqueId.ts",
1253
+ "path": "src/vscode-button-group/vscode-button-group.ts",
1278
1254
  "declarations": [
1279
1255
  {
1280
- "kind": "function",
1281
- "name": "uniqueId",
1282
- "parameters": [
1256
+ "kind": "class",
1257
+ "description": "Shows a split button, including several components in a single button. Commonly used to show a button with a dropdown to the right.",
1258
+ "name": "VscodeButtonGroup",
1259
+ "cssProperties": [
1283
1260
  {
1284
- "name": "prefix",
1285
- "default": "''"
1261
+ "name": "--vscode-button-background",
1262
+ "default": "#0078d4"
1263
+ },
1264
+ {
1265
+ "name": "--vscode-button-foreground",
1266
+ "default": "#ffffff"
1267
+ },
1268
+ {
1269
+ "name": "--vscode-button-border",
1270
+ "default": "var(--vscode-button-background, rgba(255, 255, 255, 0.07))"
1271
+ },
1272
+ {
1273
+ "name": "--vscode-button-hoverBackground",
1274
+ "default": "#026ec1"
1275
+ },
1276
+ {
1277
+ "description": "A sans-serif font type depends on the host OS.",
1278
+ "name": "--vscode-font-family",
1279
+ "default": "sans-serif"
1280
+ },
1281
+ {
1282
+ "name": "--vscode-font-size",
1283
+ "default": "13px"
1284
+ },
1285
+ {
1286
+ "name": "--vscode-font-weight",
1287
+ "default": "normal"
1288
+ },
1289
+ {
1290
+ "name": "--vscode-button-secondaryForeground",
1291
+ "default": "#cccccc"
1292
+ },
1293
+ {
1294
+ "name": "--vscode-button-secondaryBackground",
1295
+ "default": "#313131"
1296
+ },
1297
+ {
1298
+ "name": "--vscode-button-secondaryHoverBackground",
1299
+ "default": "#3c3c3c"
1300
+ },
1301
+ {
1302
+ "name": "--vscode-focusBorder",
1303
+ "default": "#0078d4"
1286
1304
  }
1287
- ]
1305
+ ],
1306
+ "members": [
1307
+ {
1308
+ "kind": "field",
1309
+ "name": "version",
1310
+ "type": {
1311
+ "text": "string"
1312
+ },
1313
+ "description": "VSCode Elements version",
1314
+ "readonly": true,
1315
+ "inheritedFrom": {
1316
+ "name": "VscElement",
1317
+ "module": "src/includes/VscElement.ts"
1318
+ }
1319
+ }
1320
+ ],
1321
+ "superclass": {
1322
+ "name": "VscElement",
1323
+ "module": "/src/includes/VscElement.js"
1324
+ },
1325
+ "tagName": "vscode-button-group",
1326
+ "customElement": true
1288
1327
  }
1289
1328
  ],
1290
1329
  "exports": [
1291
1330
  {
1292
1331
  "kind": "js",
1293
- "name": "default",
1332
+ "name": "VscodeButtonGroup",
1294
1333
  "declaration": {
1295
- "name": "uniqueId",
1296
- "module": "src/includes/uniqueId.ts"
1334
+ "name": "VscodeButtonGroup",
1335
+ "module": "src/vscode-button-group/vscode-button-group.ts"
1336
+ }
1337
+ },
1338
+ {
1339
+ "kind": "custom-element-definition",
1340
+ "name": "vscode-button-group",
1341
+ "declaration": {
1342
+ "name": "VscodeButtonGroup",
1343
+ "module": "src/vscode-button-group/vscode-button-group.ts"
1297
1344
  }
1298
1345
  }
1299
1346
  ]
@@ -1308,7 +1355,7 @@
1308
1355
  "type": {
1309
1356
  "text": "CSSResultGroup"
1310
1357
  },
1311
- "default": "[ defaultStyles, baseStyles, css` :host(:invalid) .icon, :host([invalid]) .icon { background-color: var(--vscode-inputValidation-errorBackground, #5a1d1d); border-color: var(--vscode-inputValidation-errorBorder, #be1100); } .icon { border-radius: 3px; } .indeterminate-icon { background-color: currentColor; position: absolute; height: 1px; width: 12px; } :host(:focus):host(:not([disabled])) .icon { outline: 1px solid var(--vscode-focusBorder, #0078d4); outline-offset: -1px; } `, ]"
1358
+ "default": "[ defaultStyles, baseStyles, css` :host(:invalid) .icon, :host([invalid]) .icon { background-color: var(--vscode-inputValidation-errorBackground, #5a1d1d); border-color: var(--vscode-inputValidation-errorBorder, #be1100); } .icon { border-radius: 3px; } .indeterminate-icon { background-color: currentColor; position: absolute; height: 1px; width: 12px; } :host(:focus):host(:not([disabled])) .icon { outline: 1px solid var(--vscode-focusBorder, #0078d4); outline-offset: -1px; } /* Toggle appearance */ :host([toggle]) .icon { /* Track */ width: 36px; height: 20px; border-radius: 999px; background-color: var(--vscode-button-secondaryBackground, #313131); border-color: var(--vscode-button-border, transparent); justify-content: flex-start; position: absolute; } :host(:focus):host([toggle]):host(:not([disabled])) .icon { outline-offset: 2px; } /* Reserve space for the wider toggle track so text doesn't overlap */ :host([toggle]) .label-inner { padding-left: 45px; /* 36px track + 9px spacing */ } :host([toggle]) .label { min-height: 20px; } :host([toggle]) .wrapper { min-height: 20px; line-height: 20px; } :host([toggle]) .thumb { /* Thumb */ box-sizing: border-box; display: block; width: 16px; height: 16px; border-radius: 50%; background-color: var(--vscode-button-secondaryForeground, #cccccc); margin-left: 1px; transition: transform 120ms ease-in-out; } :host([toggle][checked]) .icon { background-color: var(--vscode-button-background, #04395e); border-color: var(--vscode-button-border, transparent); } :host([toggle][checked]) .thumb { transform: translateX(16px); background-color: var(--vscode-button-foreground, #ffffff); } :host([toggle]):host(:invalid) .icon { background-color: var(--vscode-inputValidation-errorBackground, #5a1d1d); border-color: var(--vscode-inputValidation-errorBorder, #be1100); } :host([toggle]):host(:invalid) .thumb { background-color: var(--vscode-inputValidation-errorBorder, #be1100); } :host([toggle]) .check-icon, :host([toggle]) .indeterminate-icon { display: none; } :host([toggle]:focus):host(:not([disabled])) .icon { outline: 1px solid var(--vscode-focusBorder, #0078d4); outline-offset: -1px; } `, ]"
1312
1359
  }
1313
1360
  ],
1314
1361
  "exports": [
@@ -1433,6 +1480,17 @@
1433
1480
  "attribute": "name",
1434
1481
  "reflects": true
1435
1482
  },
1483
+ {
1484
+ "kind": "field",
1485
+ "name": "toggle",
1486
+ "type": {
1487
+ "text": "boolean"
1488
+ },
1489
+ "default": "false",
1490
+ "description": "When true, renders as a toggle switch instead of a checkbox.",
1491
+ "attribute": "toggle",
1492
+ "reflects": true
1493
+ },
1436
1494
  {
1437
1495
  "kind": "field",
1438
1496
  "name": "value",
@@ -1768,6 +1826,15 @@
1768
1826
  "default": "false",
1769
1827
  "fieldName": "invalid"
1770
1828
  },
1829
+ {
1830
+ "name": "toggle",
1831
+ "type": {
1832
+ "text": "boolean"
1833
+ },
1834
+ "default": "false",
1835
+ "description": "When true, renders as a toggle switch instead of a checkbox.",
1836
+ "fieldName": "toggle"
1837
+ },
1771
1838
  {
1772
1839
  "name": "value",
1773
1840
  "type": {