@slexkit/mcp 0.3.2 → 0.4.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.
- package/README.md +85 -58
- package/dist/data/llms-components.txt +6 -21
- package/dist/data/llms-full.txt +7465 -6858
- package/dist/data/llms-runtime.txt +1704 -1433
- package/dist/data/llms-toolhost.txt +290 -284
- package/dist/data/llms.txt +19 -13
- package/dist/data/slexkit-ai-manifest.json +318 -297
- package/dist/data/standard/slex-capabilities.catalog.json +413 -0
- package/dist/data/standard/slex-component-catalog.json +4475 -0
- package/dist/data/standard/slex-conformance.json +248 -0
- package/dist/data/standard/slex-expression.schema.json +2116 -0
- package/dist/data/standard/slex-logic-profile.json +130 -0
- package/dist/data/standard/slex-standard-manifest.json +37 -0
- package/dist/index.js +852 -40
- package/dist/index.js.map +5 -5
- package/package.json +47 -47
|
@@ -0,0 +1,4475 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "slex-component-catalog",
|
|
3
|
+
"packageName": "slexkit",
|
|
4
|
+
"version": "0.4.0",
|
|
5
|
+
"schemaVersion": "2026-06",
|
|
6
|
+
"protocolVersion": "0.1",
|
|
7
|
+
"componentCount": 28,
|
|
8
|
+
"components": [
|
|
9
|
+
{
|
|
10
|
+
"type": "accordion",
|
|
11
|
+
"category": "Disclosure",
|
|
12
|
+
"status": "ready",
|
|
13
|
+
"state": "none",
|
|
14
|
+
"since": "0.1.0",
|
|
15
|
+
"title": "Accordion",
|
|
16
|
+
"summary": "Expandable grouped panels.",
|
|
17
|
+
"description": "Use accordion to reveal one or more sections from a compact list of panels.",
|
|
18
|
+
"props": {
|
|
19
|
+
"value": {
|
|
20
|
+
"type": "string | string[]",
|
|
21
|
+
"dynamic": true,
|
|
22
|
+
"description": "Current expanded item value; use an array when multiple is true."
|
|
23
|
+
},
|
|
24
|
+
"multiple": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"default": false,
|
|
27
|
+
"description": "Allow multiple items to be expanded at the same time."
|
|
28
|
+
},
|
|
29
|
+
"items": {
|
|
30
|
+
"type": "array",
|
|
31
|
+
"description": "Panel definitions with value, label, content, and optional icon."
|
|
32
|
+
},
|
|
33
|
+
"items[].icon": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"description": "Icon name shown before an item trigger label."
|
|
36
|
+
},
|
|
37
|
+
"onchange": {
|
|
38
|
+
"type": "write-expression",
|
|
39
|
+
"description": "Write expression invoked when expanded items change."
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"children": {
|
|
43
|
+
"allowed": false,
|
|
44
|
+
"description": "This component does not render nested child components."
|
|
45
|
+
},
|
|
46
|
+
"examples": [
|
|
47
|
+
{
|
|
48
|
+
"id": "basic",
|
|
49
|
+
"title": "Basic usage",
|
|
50
|
+
"source": {
|
|
51
|
+
"slex": "0.1",
|
|
52
|
+
"namespace": "doc_accordion_typical",
|
|
53
|
+
"layout": {
|
|
54
|
+
"accordion:faq": {
|
|
55
|
+
"multiple": true,
|
|
56
|
+
"value": [
|
|
57
|
+
"install"
|
|
58
|
+
],
|
|
59
|
+
"items": [
|
|
60
|
+
{
|
|
61
|
+
"value": "install",
|
|
62
|
+
"label": "Install",
|
|
63
|
+
"icon": "download-simple",
|
|
64
|
+
"content": "Prepare dependencies."
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"value": "review",
|
|
68
|
+
"label": "Review",
|
|
69
|
+
"icon": "check-circle",
|
|
70
|
+
"content": "Check the result."
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"value": "ship",
|
|
74
|
+
"label": "Ship",
|
|
75
|
+
"icon": "rocket-launch",
|
|
76
|
+
"content": "Publish the change."
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
"docs": {
|
|
85
|
+
"href": "/docs/components/accordion",
|
|
86
|
+
"anchors": {
|
|
87
|
+
"api": "accordion-api-reference",
|
|
88
|
+
"examples": "accordion-canonical-example"
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"jsonSchema": {
|
|
92
|
+
"type": "object",
|
|
93
|
+
"additionalProperties": true,
|
|
94
|
+
"properties": {
|
|
95
|
+
"value": {
|
|
96
|
+
"anyOf": [
|
|
97
|
+
{
|
|
98
|
+
"type": "string"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"type": "array",
|
|
102
|
+
"items": {
|
|
103
|
+
"type": "string"
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
],
|
|
107
|
+
"description": "Current expanded item value; use an array when multiple is true."
|
|
108
|
+
},
|
|
109
|
+
"$value": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
112
|
+
"xSlexkitExpressionKind": "read"
|
|
113
|
+
},
|
|
114
|
+
"multiple": {
|
|
115
|
+
"type": "boolean",
|
|
116
|
+
"description": "Allow multiple items to be expanded at the same time.",
|
|
117
|
+
"default": false
|
|
118
|
+
},
|
|
119
|
+
"items": {
|
|
120
|
+
"type": "array",
|
|
121
|
+
"description": "Panel definitions with value, label, content, and optional icon."
|
|
122
|
+
},
|
|
123
|
+
"items[].icon": {
|
|
124
|
+
"type": "string",
|
|
125
|
+
"description": "Icon name shown before an item trigger label."
|
|
126
|
+
},
|
|
127
|
+
"onchange": {
|
|
128
|
+
"type": "string",
|
|
129
|
+
"xSlexkitExpressionKind": "write",
|
|
130
|
+
"description": "Write expression invoked when expanded items change."
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
"required": [],
|
|
134
|
+
"patternProperties": {
|
|
135
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
136
|
+
"$ref": "#/$defs/componentNode"
|
|
137
|
+
},
|
|
138
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"description": "Write-pipe event handler expression.",
|
|
141
|
+
"xSlexkitExpressionKind": "write"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"hash": "ff1be273"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"type": "badge",
|
|
149
|
+
"category": "Content",
|
|
150
|
+
"status": "ready",
|
|
151
|
+
"state": "readable",
|
|
152
|
+
"since": "0.1.0",
|
|
153
|
+
"title": "Badge",
|
|
154
|
+
"summary": "Compact label for status or classification.",
|
|
155
|
+
"description": "Use badge to annotate nearby content with a short semantic label.",
|
|
156
|
+
"props": {
|
|
157
|
+
"label": {
|
|
158
|
+
"type": "string",
|
|
159
|
+
"dynamic": true,
|
|
160
|
+
"description": "Badge text."
|
|
161
|
+
},
|
|
162
|
+
"text": {
|
|
163
|
+
"type": "string",
|
|
164
|
+
"dynamic": true,
|
|
165
|
+
"description": "Alias for label."
|
|
166
|
+
},
|
|
167
|
+
"content": {
|
|
168
|
+
"type": "string",
|
|
169
|
+
"dynamic": true,
|
|
170
|
+
"description": "Alias for label."
|
|
171
|
+
},
|
|
172
|
+
"icon": {
|
|
173
|
+
"type": "string",
|
|
174
|
+
"description": "Icon name shown before the badge label."
|
|
175
|
+
},
|
|
176
|
+
"tone": {
|
|
177
|
+
"type": "string",
|
|
178
|
+
"values": [
|
|
179
|
+
"info",
|
|
180
|
+
"success",
|
|
181
|
+
"warning",
|
|
182
|
+
"danger",
|
|
183
|
+
"muted"
|
|
184
|
+
],
|
|
185
|
+
"default": "info",
|
|
186
|
+
"description": "Semantic tone applied to the badge."
|
|
187
|
+
},
|
|
188
|
+
"variant": {
|
|
189
|
+
"type": "string",
|
|
190
|
+
"values": [
|
|
191
|
+
"info",
|
|
192
|
+
"success",
|
|
193
|
+
"warning",
|
|
194
|
+
"danger",
|
|
195
|
+
"muted"
|
|
196
|
+
],
|
|
197
|
+
"description": "Alias for tone."
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
"children": {
|
|
201
|
+
"allowed": false,
|
|
202
|
+
"description": "This component does not render nested child components."
|
|
203
|
+
},
|
|
204
|
+
"examples": [
|
|
205
|
+
{
|
|
206
|
+
"id": "basic",
|
|
207
|
+
"title": "Basic usage",
|
|
208
|
+
"source": {
|
|
209
|
+
"slex": "0.1",
|
|
210
|
+
"namespace": "doc_badge_typical",
|
|
211
|
+
"layout": {
|
|
212
|
+
"row:badges": {
|
|
213
|
+
"badge:ready": {
|
|
214
|
+
"label": "ready",
|
|
215
|
+
"icon": "check-circle",
|
|
216
|
+
"tone": "success"
|
|
217
|
+
},
|
|
218
|
+
"badge:pending": {
|
|
219
|
+
"label": "pending",
|
|
220
|
+
"tone": "warning"
|
|
221
|
+
},
|
|
222
|
+
"badge:info": {
|
|
223
|
+
"label": "info",
|
|
224
|
+
"tone": "info"
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
],
|
|
231
|
+
"docs": {
|
|
232
|
+
"href": "/docs/components/badge",
|
|
233
|
+
"anchors": {
|
|
234
|
+
"api": "badge-api-reference",
|
|
235
|
+
"examples": "badge-canonical-example"
|
|
236
|
+
}
|
|
237
|
+
},
|
|
238
|
+
"jsonSchema": {
|
|
239
|
+
"type": "object",
|
|
240
|
+
"additionalProperties": true,
|
|
241
|
+
"properties": {
|
|
242
|
+
"label": {
|
|
243
|
+
"type": "string",
|
|
244
|
+
"description": "Badge text."
|
|
245
|
+
},
|
|
246
|
+
"$label": {
|
|
247
|
+
"type": "string",
|
|
248
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
249
|
+
"xSlexkitExpressionKind": "read"
|
|
250
|
+
},
|
|
251
|
+
"text": {
|
|
252
|
+
"type": "string",
|
|
253
|
+
"description": "Alias for label."
|
|
254
|
+
},
|
|
255
|
+
"$text": {
|
|
256
|
+
"type": "string",
|
|
257
|
+
"description": "Dynamic expression for 'text'. Evaluated with the Slex logic profile.",
|
|
258
|
+
"xSlexkitExpressionKind": "read"
|
|
259
|
+
},
|
|
260
|
+
"content": {
|
|
261
|
+
"type": "string",
|
|
262
|
+
"description": "Alias for label."
|
|
263
|
+
},
|
|
264
|
+
"$content": {
|
|
265
|
+
"type": "string",
|
|
266
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
267
|
+
"xSlexkitExpressionKind": "read"
|
|
268
|
+
},
|
|
269
|
+
"icon": {
|
|
270
|
+
"type": "string",
|
|
271
|
+
"description": "Icon name shown before the badge label."
|
|
272
|
+
},
|
|
273
|
+
"tone": {
|
|
274
|
+
"enum": [
|
|
275
|
+
"info",
|
|
276
|
+
"success",
|
|
277
|
+
"warning",
|
|
278
|
+
"danger",
|
|
279
|
+
"muted"
|
|
280
|
+
],
|
|
281
|
+
"description": "Semantic tone applied to the badge.",
|
|
282
|
+
"default": "info"
|
|
283
|
+
},
|
|
284
|
+
"variant": {
|
|
285
|
+
"enum": [
|
|
286
|
+
"info",
|
|
287
|
+
"success",
|
|
288
|
+
"warning",
|
|
289
|
+
"danger",
|
|
290
|
+
"muted"
|
|
291
|
+
],
|
|
292
|
+
"description": "Alias for tone."
|
|
293
|
+
}
|
|
294
|
+
},
|
|
295
|
+
"required": [],
|
|
296
|
+
"patternProperties": {
|
|
297
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
298
|
+
"$ref": "#/$defs/componentNode"
|
|
299
|
+
},
|
|
300
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
301
|
+
"type": "string",
|
|
302
|
+
"description": "Write-pipe event handler expression.",
|
|
303
|
+
"xSlexkitExpressionKind": "write"
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
},
|
|
307
|
+
"hash": "eece8f49"
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
"type": "button",
|
|
311
|
+
"category": "Action",
|
|
312
|
+
"status": "ready",
|
|
313
|
+
"state": "none",
|
|
314
|
+
"since": "0.1.0",
|
|
315
|
+
"title": "Button",
|
|
316
|
+
"summary": "Action trigger.",
|
|
317
|
+
"description": "Use button for explicit actions in interactive SlexKit layouts.",
|
|
318
|
+
"props": {
|
|
319
|
+
"label": {
|
|
320
|
+
"type": "string",
|
|
321
|
+
"dynamic": true,
|
|
322
|
+
"description": "Visible button text and accessible name."
|
|
323
|
+
},
|
|
324
|
+
"icon": {
|
|
325
|
+
"type": "string",
|
|
326
|
+
"description": "Icon name shown before the label."
|
|
327
|
+
},
|
|
328
|
+
"iconOnly": {
|
|
329
|
+
"type": "boolean",
|
|
330
|
+
"default": false,
|
|
331
|
+
"description": "Show only the icon while retaining label as the accessible name."
|
|
332
|
+
},
|
|
333
|
+
"variant": {
|
|
334
|
+
"type": "string",
|
|
335
|
+
"values": [
|
|
336
|
+
"primary",
|
|
337
|
+
"secondary",
|
|
338
|
+
"danger",
|
|
339
|
+
"ghost"
|
|
340
|
+
],
|
|
341
|
+
"default": "primary",
|
|
342
|
+
"description": "Semantic action variant."
|
|
343
|
+
},
|
|
344
|
+
"disabled": {
|
|
345
|
+
"type": "boolean",
|
|
346
|
+
"default": false,
|
|
347
|
+
"dynamic": true,
|
|
348
|
+
"description": "Disable the action."
|
|
349
|
+
},
|
|
350
|
+
"href": {
|
|
351
|
+
"type": "string",
|
|
352
|
+
"dynamic": true,
|
|
353
|
+
"description": "Render the button surface as a link to this URL."
|
|
354
|
+
},
|
|
355
|
+
"target": {
|
|
356
|
+
"type": "string",
|
|
357
|
+
"description": "Link target used when href is present."
|
|
358
|
+
},
|
|
359
|
+
"title": {
|
|
360
|
+
"type": "string",
|
|
361
|
+
"dynamic": true,
|
|
362
|
+
"description": "Tooltip and accessible-label fallback."
|
|
363
|
+
},
|
|
364
|
+
"selected": {
|
|
365
|
+
"type": "boolean",
|
|
366
|
+
"dynamic": true,
|
|
367
|
+
"description": "Render the icon in its selected visual state."
|
|
368
|
+
},
|
|
369
|
+
"active": {
|
|
370
|
+
"type": "boolean",
|
|
371
|
+
"dynamic": true,
|
|
372
|
+
"description": "Render the icon in its active visual state."
|
|
373
|
+
},
|
|
374
|
+
"pressed": {
|
|
375
|
+
"type": "boolean",
|
|
376
|
+
"dynamic": true,
|
|
377
|
+
"description": "Expose pressed state and render the selected icon style."
|
|
378
|
+
},
|
|
379
|
+
"onclick": {
|
|
380
|
+
"type": "write-expression",
|
|
381
|
+
"description": "Write expression invoked when the button is clicked."
|
|
382
|
+
}
|
|
383
|
+
},
|
|
384
|
+
"children": {
|
|
385
|
+
"allowed": false,
|
|
386
|
+
"description": "This component does not render nested child components."
|
|
387
|
+
},
|
|
388
|
+
"examples": [
|
|
389
|
+
{
|
|
390
|
+
"id": "basic",
|
|
391
|
+
"title": "Basic usage",
|
|
392
|
+
"source": {
|
|
393
|
+
"slex": "0.1",
|
|
394
|
+
"namespace": "doc_button_typical",
|
|
395
|
+
"layout": {
|
|
396
|
+
"row:actions": {
|
|
397
|
+
"button:save": {
|
|
398
|
+
"label": "Save",
|
|
399
|
+
"icon": "floppy-disk",
|
|
400
|
+
"variant": "primary"
|
|
401
|
+
},
|
|
402
|
+
"button:cancel": {
|
|
403
|
+
"label": "Cancel",
|
|
404
|
+
"variant": "secondary"
|
|
405
|
+
},
|
|
406
|
+
"button:delete": {
|
|
407
|
+
"label": "Delete",
|
|
408
|
+
"variant": "danger"
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
],
|
|
415
|
+
"docs": {
|
|
416
|
+
"href": "/docs/components/button",
|
|
417
|
+
"anchors": {
|
|
418
|
+
"api": "button-api-reference",
|
|
419
|
+
"examples": "button-canonical-example"
|
|
420
|
+
}
|
|
421
|
+
},
|
|
422
|
+
"jsonSchema": {
|
|
423
|
+
"type": "object",
|
|
424
|
+
"additionalProperties": true,
|
|
425
|
+
"properties": {
|
|
426
|
+
"label": {
|
|
427
|
+
"type": "string",
|
|
428
|
+
"description": "Visible button text and accessible name."
|
|
429
|
+
},
|
|
430
|
+
"$label": {
|
|
431
|
+
"type": "string",
|
|
432
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
433
|
+
"xSlexkitExpressionKind": "read"
|
|
434
|
+
},
|
|
435
|
+
"icon": {
|
|
436
|
+
"type": "string",
|
|
437
|
+
"description": "Icon name shown before the label."
|
|
438
|
+
},
|
|
439
|
+
"iconOnly": {
|
|
440
|
+
"type": "boolean",
|
|
441
|
+
"description": "Show only the icon while retaining label as the accessible name.",
|
|
442
|
+
"default": false
|
|
443
|
+
},
|
|
444
|
+
"variant": {
|
|
445
|
+
"enum": [
|
|
446
|
+
"primary",
|
|
447
|
+
"secondary",
|
|
448
|
+
"danger",
|
|
449
|
+
"ghost"
|
|
450
|
+
],
|
|
451
|
+
"description": "Semantic action variant.",
|
|
452
|
+
"default": "primary"
|
|
453
|
+
},
|
|
454
|
+
"disabled": {
|
|
455
|
+
"type": "boolean",
|
|
456
|
+
"description": "Disable the action.",
|
|
457
|
+
"default": false
|
|
458
|
+
},
|
|
459
|
+
"$disabled": {
|
|
460
|
+
"type": "string",
|
|
461
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
462
|
+
"xSlexkitExpressionKind": "read"
|
|
463
|
+
},
|
|
464
|
+
"href": {
|
|
465
|
+
"type": "string",
|
|
466
|
+
"description": "Render the button surface as a link to this URL."
|
|
467
|
+
},
|
|
468
|
+
"$href": {
|
|
469
|
+
"type": "string",
|
|
470
|
+
"description": "Dynamic expression for 'href'. Evaluated with the Slex logic profile.",
|
|
471
|
+
"xSlexkitExpressionKind": "read"
|
|
472
|
+
},
|
|
473
|
+
"target": {
|
|
474
|
+
"type": "string",
|
|
475
|
+
"description": "Link target used when href is present."
|
|
476
|
+
},
|
|
477
|
+
"title": {
|
|
478
|
+
"type": "string",
|
|
479
|
+
"description": "Tooltip and accessible-label fallback."
|
|
480
|
+
},
|
|
481
|
+
"$title": {
|
|
482
|
+
"type": "string",
|
|
483
|
+
"description": "Dynamic expression for 'title'. Evaluated with the Slex logic profile.",
|
|
484
|
+
"xSlexkitExpressionKind": "read"
|
|
485
|
+
},
|
|
486
|
+
"selected": {
|
|
487
|
+
"type": "boolean",
|
|
488
|
+
"description": "Render the icon in its selected visual state."
|
|
489
|
+
},
|
|
490
|
+
"$selected": {
|
|
491
|
+
"type": "string",
|
|
492
|
+
"description": "Dynamic expression for 'selected'. Evaluated with the Slex logic profile.",
|
|
493
|
+
"xSlexkitExpressionKind": "read"
|
|
494
|
+
},
|
|
495
|
+
"active": {
|
|
496
|
+
"type": "boolean",
|
|
497
|
+
"description": "Render the icon in its active visual state."
|
|
498
|
+
},
|
|
499
|
+
"$active": {
|
|
500
|
+
"type": "string",
|
|
501
|
+
"description": "Dynamic expression for 'active'. Evaluated with the Slex logic profile.",
|
|
502
|
+
"xSlexkitExpressionKind": "read"
|
|
503
|
+
},
|
|
504
|
+
"pressed": {
|
|
505
|
+
"type": "boolean",
|
|
506
|
+
"description": "Expose pressed state and render the selected icon style."
|
|
507
|
+
},
|
|
508
|
+
"$pressed": {
|
|
509
|
+
"type": "string",
|
|
510
|
+
"description": "Dynamic expression for 'pressed'. Evaluated with the Slex logic profile.",
|
|
511
|
+
"xSlexkitExpressionKind": "read"
|
|
512
|
+
},
|
|
513
|
+
"onclick": {
|
|
514
|
+
"type": "string",
|
|
515
|
+
"xSlexkitExpressionKind": "write",
|
|
516
|
+
"description": "Write expression invoked when the button is clicked."
|
|
517
|
+
}
|
|
518
|
+
},
|
|
519
|
+
"required": [],
|
|
520
|
+
"patternProperties": {
|
|
521
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
522
|
+
"$ref": "#/$defs/componentNode"
|
|
523
|
+
},
|
|
524
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
525
|
+
"type": "string",
|
|
526
|
+
"description": "Write-pipe event handler expression.",
|
|
527
|
+
"xSlexkitExpressionKind": "write"
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
},
|
|
531
|
+
"hash": "3bd71fe1"
|
|
532
|
+
},
|
|
533
|
+
{
|
|
534
|
+
"type": "callout",
|
|
535
|
+
"category": "Content",
|
|
536
|
+
"status": "ready",
|
|
537
|
+
"state": "readable",
|
|
538
|
+
"since": "0.1.0",
|
|
539
|
+
"title": "Callout",
|
|
540
|
+
"summary": "Highlighted contextual message.",
|
|
541
|
+
"description": "Use callout for notes, warnings, and other contextual blocks.",
|
|
542
|
+
"props": {
|
|
543
|
+
"title": {
|
|
544
|
+
"type": "string",
|
|
545
|
+
"dynamic": true,
|
|
546
|
+
"description": "Callout title."
|
|
547
|
+
},
|
|
548
|
+
"heading": {
|
|
549
|
+
"type": "string",
|
|
550
|
+
"dynamic": true,
|
|
551
|
+
"description": "Alias for title."
|
|
552
|
+
},
|
|
553
|
+
"label": {
|
|
554
|
+
"type": "string",
|
|
555
|
+
"dynamic": true,
|
|
556
|
+
"description": "Alias for title."
|
|
557
|
+
},
|
|
558
|
+
"icon": {
|
|
559
|
+
"type": "string",
|
|
560
|
+
"description": "Icon name shown before the title."
|
|
561
|
+
},
|
|
562
|
+
"text": {
|
|
563
|
+
"type": "string",
|
|
564
|
+
"dynamic": true,
|
|
565
|
+
"description": "Callout body text."
|
|
566
|
+
},
|
|
567
|
+
"message": {
|
|
568
|
+
"type": "string",
|
|
569
|
+
"dynamic": true,
|
|
570
|
+
"description": "Alias for text."
|
|
571
|
+
},
|
|
572
|
+
"content": {
|
|
573
|
+
"type": "string",
|
|
574
|
+
"dynamic": true,
|
|
575
|
+
"description": "Alias for text."
|
|
576
|
+
},
|
|
577
|
+
"tone": {
|
|
578
|
+
"type": "string",
|
|
579
|
+
"values": [
|
|
580
|
+
"info",
|
|
581
|
+
"success",
|
|
582
|
+
"warning",
|
|
583
|
+
"danger"
|
|
584
|
+
],
|
|
585
|
+
"default": "info",
|
|
586
|
+
"description": "Semantic tone for the callout."
|
|
587
|
+
}
|
|
588
|
+
},
|
|
589
|
+
"children": {
|
|
590
|
+
"allowed": true,
|
|
591
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
592
|
+
},
|
|
593
|
+
"examples": [
|
|
594
|
+
{
|
|
595
|
+
"id": "basic",
|
|
596
|
+
"title": "Basic usage",
|
|
597
|
+
"source": {
|
|
598
|
+
"slex": "0.1",
|
|
599
|
+
"namespace": "doc_callout_typical",
|
|
600
|
+
"layout": {
|
|
601
|
+
"callout:notice": {
|
|
602
|
+
"tone": "info",
|
|
603
|
+
"title": "Notice",
|
|
604
|
+
"icon": "info",
|
|
605
|
+
"text": "Use callout for information that should stand out."
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
],
|
|
611
|
+
"docs": {
|
|
612
|
+
"href": "/docs/components/callout",
|
|
613
|
+
"anchors": {
|
|
614
|
+
"api": "callout-api-reference",
|
|
615
|
+
"examples": "callout-canonical-example"
|
|
616
|
+
}
|
|
617
|
+
},
|
|
618
|
+
"jsonSchema": {
|
|
619
|
+
"type": "object",
|
|
620
|
+
"additionalProperties": true,
|
|
621
|
+
"properties": {
|
|
622
|
+
"title": {
|
|
623
|
+
"type": "string",
|
|
624
|
+
"description": "Callout title."
|
|
625
|
+
},
|
|
626
|
+
"$title": {
|
|
627
|
+
"type": "string",
|
|
628
|
+
"description": "Dynamic expression for 'title'. Evaluated with the Slex logic profile.",
|
|
629
|
+
"xSlexkitExpressionKind": "read"
|
|
630
|
+
},
|
|
631
|
+
"heading": {
|
|
632
|
+
"type": "string",
|
|
633
|
+
"description": "Alias for title."
|
|
634
|
+
},
|
|
635
|
+
"$heading": {
|
|
636
|
+
"type": "string",
|
|
637
|
+
"description": "Dynamic expression for 'heading'. Evaluated with the Slex logic profile.",
|
|
638
|
+
"xSlexkitExpressionKind": "read"
|
|
639
|
+
},
|
|
640
|
+
"label": {
|
|
641
|
+
"type": "string",
|
|
642
|
+
"description": "Alias for title."
|
|
643
|
+
},
|
|
644
|
+
"$label": {
|
|
645
|
+
"type": "string",
|
|
646
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
647
|
+
"xSlexkitExpressionKind": "read"
|
|
648
|
+
},
|
|
649
|
+
"icon": {
|
|
650
|
+
"type": "string",
|
|
651
|
+
"description": "Icon name shown before the title."
|
|
652
|
+
},
|
|
653
|
+
"text": {
|
|
654
|
+
"type": "string",
|
|
655
|
+
"description": "Callout body text."
|
|
656
|
+
},
|
|
657
|
+
"$text": {
|
|
658
|
+
"type": "string",
|
|
659
|
+
"description": "Dynamic expression for 'text'. Evaluated with the Slex logic profile.",
|
|
660
|
+
"xSlexkitExpressionKind": "read"
|
|
661
|
+
},
|
|
662
|
+
"message": {
|
|
663
|
+
"type": "string",
|
|
664
|
+
"description": "Alias for text."
|
|
665
|
+
},
|
|
666
|
+
"$message": {
|
|
667
|
+
"type": "string",
|
|
668
|
+
"description": "Dynamic expression for 'message'. Evaluated with the Slex logic profile.",
|
|
669
|
+
"xSlexkitExpressionKind": "read"
|
|
670
|
+
},
|
|
671
|
+
"content": {
|
|
672
|
+
"type": "string",
|
|
673
|
+
"description": "Alias for text."
|
|
674
|
+
},
|
|
675
|
+
"$content": {
|
|
676
|
+
"type": "string",
|
|
677
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
678
|
+
"xSlexkitExpressionKind": "read"
|
|
679
|
+
},
|
|
680
|
+
"tone": {
|
|
681
|
+
"enum": [
|
|
682
|
+
"info",
|
|
683
|
+
"success",
|
|
684
|
+
"warning",
|
|
685
|
+
"danger"
|
|
686
|
+
],
|
|
687
|
+
"description": "Semantic tone for the callout.",
|
|
688
|
+
"default": "info"
|
|
689
|
+
}
|
|
690
|
+
},
|
|
691
|
+
"required": [],
|
|
692
|
+
"patternProperties": {
|
|
693
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
694
|
+
"$ref": "#/$defs/componentNode"
|
|
695
|
+
},
|
|
696
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
697
|
+
"type": "string",
|
|
698
|
+
"description": "Write-pipe event handler expression.",
|
|
699
|
+
"xSlexkitExpressionKind": "write"
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
},
|
|
703
|
+
"hash": "0fee87ac"
|
|
704
|
+
},
|
|
705
|
+
{
|
|
706
|
+
"type": "card",
|
|
707
|
+
"category": "Layout",
|
|
708
|
+
"status": "ready",
|
|
709
|
+
"state": "none",
|
|
710
|
+
"since": "0.1.0",
|
|
711
|
+
"title": "Card",
|
|
712
|
+
"summary": "Grouping container for related content.",
|
|
713
|
+
"description": "Use card to group related content on a framed surface.",
|
|
714
|
+
"props": {
|
|
715
|
+
"title": {
|
|
716
|
+
"type": "string",
|
|
717
|
+
"dynamic": true,
|
|
718
|
+
"description": "Card title."
|
|
719
|
+
},
|
|
720
|
+
"icon": {
|
|
721
|
+
"type": "string",
|
|
722
|
+
"description": "Icon name shown before the title."
|
|
723
|
+
},
|
|
724
|
+
"tone": {
|
|
725
|
+
"type": "string",
|
|
726
|
+
"values": [
|
|
727
|
+
"info",
|
|
728
|
+
"success",
|
|
729
|
+
"warning",
|
|
730
|
+
"danger",
|
|
731
|
+
"muted"
|
|
732
|
+
],
|
|
733
|
+
"description": "Optional semantic tone for the card surface."
|
|
734
|
+
},
|
|
735
|
+
"variant": {
|
|
736
|
+
"type": "string",
|
|
737
|
+
"values": [
|
|
738
|
+
"tool"
|
|
739
|
+
],
|
|
740
|
+
"description": "Use tool for ToolHost input cards with compact chrome."
|
|
741
|
+
}
|
|
742
|
+
},
|
|
743
|
+
"children": {
|
|
744
|
+
"allowed": true,
|
|
745
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
746
|
+
},
|
|
747
|
+
"examples": [
|
|
748
|
+
{
|
|
749
|
+
"id": "basic",
|
|
750
|
+
"title": "Basic usage",
|
|
751
|
+
"source": {
|
|
752
|
+
"slex": "0.1",
|
|
753
|
+
"namespace": "doc_card_typical",
|
|
754
|
+
"layout": {
|
|
755
|
+
"card:metrics": {
|
|
756
|
+
"title": "Metrics",
|
|
757
|
+
"icon": "chart-bar",
|
|
758
|
+
"grid:items": {
|
|
759
|
+
"columns": 2,
|
|
760
|
+
"stat:requests": {
|
|
761
|
+
"label": "Requests",
|
|
762
|
+
"value": "1.2k",
|
|
763
|
+
"unit": "/min"
|
|
764
|
+
},
|
|
765
|
+
"stat:latency": {
|
|
766
|
+
"label": "Latency",
|
|
767
|
+
"value": "42",
|
|
768
|
+
"unit": "ms"
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
],
|
|
776
|
+
"docs": {
|
|
777
|
+
"href": "/docs/components/card",
|
|
778
|
+
"anchors": {
|
|
779
|
+
"api": "card-api-reference",
|
|
780
|
+
"examples": "card-canonical-example"
|
|
781
|
+
}
|
|
782
|
+
},
|
|
783
|
+
"jsonSchema": {
|
|
784
|
+
"type": "object",
|
|
785
|
+
"additionalProperties": true,
|
|
786
|
+
"properties": {
|
|
787
|
+
"title": {
|
|
788
|
+
"type": "string",
|
|
789
|
+
"description": "Card title."
|
|
790
|
+
},
|
|
791
|
+
"$title": {
|
|
792
|
+
"type": "string",
|
|
793
|
+
"description": "Dynamic expression for 'title'. Evaluated with the Slex logic profile.",
|
|
794
|
+
"xSlexkitExpressionKind": "read"
|
|
795
|
+
},
|
|
796
|
+
"icon": {
|
|
797
|
+
"type": "string",
|
|
798
|
+
"description": "Icon name shown before the title."
|
|
799
|
+
},
|
|
800
|
+
"tone": {
|
|
801
|
+
"enum": [
|
|
802
|
+
"info",
|
|
803
|
+
"success",
|
|
804
|
+
"warning",
|
|
805
|
+
"danger",
|
|
806
|
+
"muted"
|
|
807
|
+
],
|
|
808
|
+
"description": "Optional semantic tone for the card surface."
|
|
809
|
+
},
|
|
810
|
+
"variant": {
|
|
811
|
+
"enum": [
|
|
812
|
+
"tool"
|
|
813
|
+
],
|
|
814
|
+
"description": "Use tool for ToolHost input cards with compact chrome."
|
|
815
|
+
}
|
|
816
|
+
},
|
|
817
|
+
"required": [],
|
|
818
|
+
"patternProperties": {
|
|
819
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
820
|
+
"$ref": "#/$defs/componentNode"
|
|
821
|
+
},
|
|
822
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
823
|
+
"type": "string",
|
|
824
|
+
"description": "Write-pipe event handler expression.",
|
|
825
|
+
"xSlexkitExpressionKind": "write"
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
},
|
|
829
|
+
"hash": "7dc2e68e"
|
|
830
|
+
},
|
|
831
|
+
{
|
|
832
|
+
"type": "checkbox",
|
|
833
|
+
"category": "Input",
|
|
834
|
+
"status": "ready",
|
|
835
|
+
"state": "checked",
|
|
836
|
+
"since": "0.1.0",
|
|
837
|
+
"title": "Checkbox",
|
|
838
|
+
"summary": "Boolean checkbox input.",
|
|
839
|
+
"description": "Use checkbox for binary choices that can be toggled independently.",
|
|
840
|
+
"props": {
|
|
841
|
+
"checked": {
|
|
842
|
+
"type": "boolean",
|
|
843
|
+
"default": false,
|
|
844
|
+
"dynamic": true,
|
|
845
|
+
"description": "Checked state."
|
|
846
|
+
},
|
|
847
|
+
"label": {
|
|
848
|
+
"type": "string",
|
|
849
|
+
"dynamic": true,
|
|
850
|
+
"description": "Checkbox label."
|
|
851
|
+
},
|
|
852
|
+
"icon": {
|
|
853
|
+
"type": "string",
|
|
854
|
+
"description": "Icon name shown before the visible label."
|
|
855
|
+
},
|
|
856
|
+
"disabled": {
|
|
857
|
+
"type": "boolean",
|
|
858
|
+
"default": false,
|
|
859
|
+
"dynamic": true,
|
|
860
|
+
"description": "Disable the checkbox."
|
|
861
|
+
},
|
|
862
|
+
"haptic": {
|
|
863
|
+
"type": "boolean",
|
|
864
|
+
"default": true,
|
|
865
|
+
"description": "Enable vibration feedback on supported devices."
|
|
866
|
+
},
|
|
867
|
+
"haptics": {
|
|
868
|
+
"type": "boolean",
|
|
869
|
+
"default": true,
|
|
870
|
+
"description": "Alias for haptic."
|
|
871
|
+
},
|
|
872
|
+
"onchange": {
|
|
873
|
+
"type": "write-expression",
|
|
874
|
+
"description": "Write expression invoked when checked state changes."
|
|
875
|
+
}
|
|
876
|
+
},
|
|
877
|
+
"children": {
|
|
878
|
+
"allowed": false,
|
|
879
|
+
"description": "This component does not render nested child components."
|
|
880
|
+
},
|
|
881
|
+
"examples": [
|
|
882
|
+
{
|
|
883
|
+
"id": "basic",
|
|
884
|
+
"title": "Basic usage",
|
|
885
|
+
"source": {
|
|
886
|
+
"slex": "0.1",
|
|
887
|
+
"namespace": "doc_checkbox_typical",
|
|
888
|
+
"layout": {
|
|
889
|
+
"checkbox:agree": {
|
|
890
|
+
"checked": true,
|
|
891
|
+
"label": "I agree",
|
|
892
|
+
"icon": "handshake"
|
|
893
|
+
}
|
|
894
|
+
}
|
|
895
|
+
}
|
|
896
|
+
}
|
|
897
|
+
],
|
|
898
|
+
"docs": {
|
|
899
|
+
"href": "/docs/components/checkbox",
|
|
900
|
+
"anchors": {
|
|
901
|
+
"api": "checkbox-api-reference",
|
|
902
|
+
"examples": "checkbox-canonical-example"
|
|
903
|
+
}
|
|
904
|
+
},
|
|
905
|
+
"jsonSchema": {
|
|
906
|
+
"type": "object",
|
|
907
|
+
"additionalProperties": true,
|
|
908
|
+
"properties": {
|
|
909
|
+
"checked": {
|
|
910
|
+
"type": "boolean",
|
|
911
|
+
"description": "Checked state.",
|
|
912
|
+
"default": false
|
|
913
|
+
},
|
|
914
|
+
"$checked": {
|
|
915
|
+
"type": "string",
|
|
916
|
+
"description": "Dynamic expression for 'checked'. Evaluated with the Slex logic profile.",
|
|
917
|
+
"xSlexkitExpressionKind": "read"
|
|
918
|
+
},
|
|
919
|
+
"label": {
|
|
920
|
+
"type": "string",
|
|
921
|
+
"description": "Checkbox label."
|
|
922
|
+
},
|
|
923
|
+
"$label": {
|
|
924
|
+
"type": "string",
|
|
925
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
926
|
+
"xSlexkitExpressionKind": "read"
|
|
927
|
+
},
|
|
928
|
+
"icon": {
|
|
929
|
+
"type": "string",
|
|
930
|
+
"description": "Icon name shown before the visible label."
|
|
931
|
+
},
|
|
932
|
+
"disabled": {
|
|
933
|
+
"type": "boolean",
|
|
934
|
+
"description": "Disable the checkbox.",
|
|
935
|
+
"default": false
|
|
936
|
+
},
|
|
937
|
+
"$disabled": {
|
|
938
|
+
"type": "string",
|
|
939
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
940
|
+
"xSlexkitExpressionKind": "read"
|
|
941
|
+
},
|
|
942
|
+
"haptic": {
|
|
943
|
+
"type": "boolean",
|
|
944
|
+
"description": "Enable vibration feedback on supported devices.",
|
|
945
|
+
"default": true
|
|
946
|
+
},
|
|
947
|
+
"haptics": {
|
|
948
|
+
"type": "boolean",
|
|
949
|
+
"description": "Alias for haptic.",
|
|
950
|
+
"default": true
|
|
951
|
+
},
|
|
952
|
+
"onchange": {
|
|
953
|
+
"type": "string",
|
|
954
|
+
"xSlexkitExpressionKind": "write",
|
|
955
|
+
"description": "Write expression invoked when checked state changes."
|
|
956
|
+
}
|
|
957
|
+
},
|
|
958
|
+
"required": [],
|
|
959
|
+
"patternProperties": {
|
|
960
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
961
|
+
"$ref": "#/$defs/componentNode"
|
|
962
|
+
},
|
|
963
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
964
|
+
"type": "string",
|
|
965
|
+
"description": "Write-pipe event handler expression.",
|
|
966
|
+
"xSlexkitExpressionKind": "write"
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
},
|
|
970
|
+
"hash": "f02a8e1f"
|
|
971
|
+
},
|
|
972
|
+
{
|
|
973
|
+
"type": "code-block",
|
|
974
|
+
"category": "Content",
|
|
975
|
+
"status": "ready",
|
|
976
|
+
"state": "readable",
|
|
977
|
+
"since": "0.1.0",
|
|
978
|
+
"title": "Code Block",
|
|
979
|
+
"summary": "Formatted code or log block.",
|
|
980
|
+
"description": "Use code-block for static code samples, configuration snippets, and logs.",
|
|
981
|
+
"props": {
|
|
982
|
+
"code": {
|
|
983
|
+
"type": "string",
|
|
984
|
+
"dynamic": true,
|
|
985
|
+
"description": "Code text content."
|
|
986
|
+
},
|
|
987
|
+
"source": {
|
|
988
|
+
"type": "string",
|
|
989
|
+
"dynamic": true,
|
|
990
|
+
"description": "Alias for code."
|
|
991
|
+
},
|
|
992
|
+
"content": {
|
|
993
|
+
"type": "string",
|
|
994
|
+
"dynamic": true,
|
|
995
|
+
"description": "Alias for code."
|
|
996
|
+
},
|
|
997
|
+
"language": {
|
|
998
|
+
"type": "string",
|
|
999
|
+
"description": "Language label."
|
|
1000
|
+
},
|
|
1001
|
+
"title": {
|
|
1002
|
+
"type": "string",
|
|
1003
|
+
"description": "Code block title."
|
|
1004
|
+
},
|
|
1005
|
+
"icon": {
|
|
1006
|
+
"type": "string",
|
|
1007
|
+
"description": "Icon name shown before the title."
|
|
1008
|
+
},
|
|
1009
|
+
"lineNumbers": {
|
|
1010
|
+
"type": "boolean",
|
|
1011
|
+
"default": true,
|
|
1012
|
+
"description": "Show line numbers."
|
|
1013
|
+
}
|
|
1014
|
+
},
|
|
1015
|
+
"children": {
|
|
1016
|
+
"allowed": false,
|
|
1017
|
+
"description": "This component does not render nested child components."
|
|
1018
|
+
},
|
|
1019
|
+
"examples": [
|
|
1020
|
+
{
|
|
1021
|
+
"id": "basic",
|
|
1022
|
+
"title": "Basic usage",
|
|
1023
|
+
"source": {
|
|
1024
|
+
"slex": "0.1",
|
|
1025
|
+
"namespace": "doc_code_block_typical",
|
|
1026
|
+
"layout": {
|
|
1027
|
+
"code-block:config": {
|
|
1028
|
+
"title": "Config",
|
|
1029
|
+
"icon": "code",
|
|
1030
|
+
"language": "js",
|
|
1031
|
+
"code": "export const enabled = true;"
|
|
1032
|
+
}
|
|
1033
|
+
}
|
|
1034
|
+
}
|
|
1035
|
+
}
|
|
1036
|
+
],
|
|
1037
|
+
"docs": {
|
|
1038
|
+
"href": "/docs/components/code-block",
|
|
1039
|
+
"anchors": {
|
|
1040
|
+
"api": "code-block-api-reference",
|
|
1041
|
+
"examples": "code-block-canonical-example"
|
|
1042
|
+
}
|
|
1043
|
+
},
|
|
1044
|
+
"jsonSchema": {
|
|
1045
|
+
"type": "object",
|
|
1046
|
+
"additionalProperties": true,
|
|
1047
|
+
"properties": {
|
|
1048
|
+
"code": {
|
|
1049
|
+
"type": "string",
|
|
1050
|
+
"description": "Code text content."
|
|
1051
|
+
},
|
|
1052
|
+
"$code": {
|
|
1053
|
+
"type": "string",
|
|
1054
|
+
"description": "Dynamic expression for 'code'. Evaluated with the Slex logic profile.",
|
|
1055
|
+
"xSlexkitExpressionKind": "read"
|
|
1056
|
+
},
|
|
1057
|
+
"source": {
|
|
1058
|
+
"type": "string",
|
|
1059
|
+
"description": "Alias for code."
|
|
1060
|
+
},
|
|
1061
|
+
"$source": {
|
|
1062
|
+
"type": "string",
|
|
1063
|
+
"description": "Dynamic expression for 'source'. Evaluated with the Slex logic profile.",
|
|
1064
|
+
"xSlexkitExpressionKind": "read"
|
|
1065
|
+
},
|
|
1066
|
+
"content": {
|
|
1067
|
+
"type": "string",
|
|
1068
|
+
"description": "Alias for code."
|
|
1069
|
+
},
|
|
1070
|
+
"$content": {
|
|
1071
|
+
"type": "string",
|
|
1072
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
1073
|
+
"xSlexkitExpressionKind": "read"
|
|
1074
|
+
},
|
|
1075
|
+
"language": {
|
|
1076
|
+
"type": "string",
|
|
1077
|
+
"description": "Language label."
|
|
1078
|
+
},
|
|
1079
|
+
"title": {
|
|
1080
|
+
"type": "string",
|
|
1081
|
+
"description": "Code block title."
|
|
1082
|
+
},
|
|
1083
|
+
"icon": {
|
|
1084
|
+
"type": "string",
|
|
1085
|
+
"description": "Icon name shown before the title."
|
|
1086
|
+
},
|
|
1087
|
+
"lineNumbers": {
|
|
1088
|
+
"type": "boolean",
|
|
1089
|
+
"description": "Show line numbers.",
|
|
1090
|
+
"default": true
|
|
1091
|
+
}
|
|
1092
|
+
},
|
|
1093
|
+
"required": [],
|
|
1094
|
+
"patternProperties": {
|
|
1095
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1096
|
+
"$ref": "#/$defs/componentNode"
|
|
1097
|
+
},
|
|
1098
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1099
|
+
"type": "string",
|
|
1100
|
+
"description": "Write-pipe event handler expression.",
|
|
1101
|
+
"xSlexkitExpressionKind": "write"
|
|
1102
|
+
}
|
|
1103
|
+
}
|
|
1104
|
+
},
|
|
1105
|
+
"hash": "70ce858c"
|
|
1106
|
+
},
|
|
1107
|
+
{
|
|
1108
|
+
"type": "collapsible",
|
|
1109
|
+
"category": "Disclosure",
|
|
1110
|
+
"status": "ready",
|
|
1111
|
+
"state": "none",
|
|
1112
|
+
"since": "0.1.0",
|
|
1113
|
+
"title": "Collapsible",
|
|
1114
|
+
"summary": "Single expandable region.",
|
|
1115
|
+
"description": "Use collapsible to show or hide one related content region.",
|
|
1116
|
+
"props": {
|
|
1117
|
+
"open": {
|
|
1118
|
+
"type": "boolean",
|
|
1119
|
+
"default": false,
|
|
1120
|
+
"dynamic": true,
|
|
1121
|
+
"description": "Expanded state."
|
|
1122
|
+
},
|
|
1123
|
+
"trigger": {
|
|
1124
|
+
"type": "string",
|
|
1125
|
+
"dynamic": true,
|
|
1126
|
+
"description": "Trigger button text."
|
|
1127
|
+
},
|
|
1128
|
+
"icon": {
|
|
1129
|
+
"type": "string",
|
|
1130
|
+
"description": "Icon name shown before trigger text."
|
|
1131
|
+
},
|
|
1132
|
+
"content": {
|
|
1133
|
+
"type": "string",
|
|
1134
|
+
"dynamic": true,
|
|
1135
|
+
"description": "Static body content."
|
|
1136
|
+
},
|
|
1137
|
+
"onchange": {
|
|
1138
|
+
"type": "write-expression",
|
|
1139
|
+
"description": "Write expression invoked when open state changes."
|
|
1140
|
+
}
|
|
1141
|
+
},
|
|
1142
|
+
"children": {
|
|
1143
|
+
"allowed": true,
|
|
1144
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
1145
|
+
},
|
|
1146
|
+
"examples": [
|
|
1147
|
+
{
|
|
1148
|
+
"id": "basic",
|
|
1149
|
+
"title": "Basic usage",
|
|
1150
|
+
"source": {
|
|
1151
|
+
"slex": "0.1",
|
|
1152
|
+
"namespace": "doc_collapsible_typical",
|
|
1153
|
+
"layout": {
|
|
1154
|
+
"collapsible:more": {
|
|
1155
|
+
"open": true,
|
|
1156
|
+
"trigger": "Details",
|
|
1157
|
+
"icon": "caret-circle-down",
|
|
1158
|
+
"content": "This secondary content can be collapsed."
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
}
|
|
1162
|
+
}
|
|
1163
|
+
],
|
|
1164
|
+
"docs": {
|
|
1165
|
+
"href": "/docs/components/collapsible",
|
|
1166
|
+
"anchors": {
|
|
1167
|
+
"api": "collapsible-api-reference",
|
|
1168
|
+
"examples": "collapsible-canonical-example"
|
|
1169
|
+
}
|
|
1170
|
+
},
|
|
1171
|
+
"jsonSchema": {
|
|
1172
|
+
"type": "object",
|
|
1173
|
+
"additionalProperties": true,
|
|
1174
|
+
"properties": {
|
|
1175
|
+
"open": {
|
|
1176
|
+
"type": "boolean",
|
|
1177
|
+
"description": "Expanded state.",
|
|
1178
|
+
"default": false
|
|
1179
|
+
},
|
|
1180
|
+
"$open": {
|
|
1181
|
+
"type": "string",
|
|
1182
|
+
"description": "Dynamic expression for 'open'. Evaluated with the Slex logic profile.",
|
|
1183
|
+
"xSlexkitExpressionKind": "read"
|
|
1184
|
+
},
|
|
1185
|
+
"trigger": {
|
|
1186
|
+
"type": "string",
|
|
1187
|
+
"description": "Trigger button text."
|
|
1188
|
+
},
|
|
1189
|
+
"$trigger": {
|
|
1190
|
+
"type": "string",
|
|
1191
|
+
"description": "Dynamic expression for 'trigger'. Evaluated with the Slex logic profile.",
|
|
1192
|
+
"xSlexkitExpressionKind": "read"
|
|
1193
|
+
},
|
|
1194
|
+
"icon": {
|
|
1195
|
+
"type": "string",
|
|
1196
|
+
"description": "Icon name shown before trigger text."
|
|
1197
|
+
},
|
|
1198
|
+
"content": {
|
|
1199
|
+
"type": "string",
|
|
1200
|
+
"description": "Static body content."
|
|
1201
|
+
},
|
|
1202
|
+
"$content": {
|
|
1203
|
+
"type": "string",
|
|
1204
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
1205
|
+
"xSlexkitExpressionKind": "read"
|
|
1206
|
+
},
|
|
1207
|
+
"onchange": {
|
|
1208
|
+
"type": "string",
|
|
1209
|
+
"xSlexkitExpressionKind": "write",
|
|
1210
|
+
"description": "Write expression invoked when open state changes."
|
|
1211
|
+
}
|
|
1212
|
+
},
|
|
1213
|
+
"required": [],
|
|
1214
|
+
"patternProperties": {
|
|
1215
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1216
|
+
"$ref": "#/$defs/componentNode"
|
|
1217
|
+
},
|
|
1218
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1219
|
+
"type": "string",
|
|
1220
|
+
"description": "Write-pipe event handler expression.",
|
|
1221
|
+
"xSlexkitExpressionKind": "write"
|
|
1222
|
+
}
|
|
1223
|
+
}
|
|
1224
|
+
},
|
|
1225
|
+
"hash": "fbb14382"
|
|
1226
|
+
},
|
|
1227
|
+
{
|
|
1228
|
+
"type": "column",
|
|
1229
|
+
"category": "Layout",
|
|
1230
|
+
"status": "ready",
|
|
1231
|
+
"state": "none",
|
|
1232
|
+
"since": "0.1.0",
|
|
1233
|
+
"title": "Column",
|
|
1234
|
+
"summary": "Vertical layout container.",
|
|
1235
|
+
"description": "Use column to stack child components vertically in field order.",
|
|
1236
|
+
"props": {},
|
|
1237
|
+
"children": {
|
|
1238
|
+
"allowed": true,
|
|
1239
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
1240
|
+
},
|
|
1241
|
+
"examples": [
|
|
1242
|
+
{
|
|
1243
|
+
"id": "basic",
|
|
1244
|
+
"title": "Basic usage",
|
|
1245
|
+
"source": {
|
|
1246
|
+
"slex": "0.1",
|
|
1247
|
+
"namespace": "doc_column_typical",
|
|
1248
|
+
"layout": {
|
|
1249
|
+
"column:form": {
|
|
1250
|
+
"input:name": {
|
|
1251
|
+
"placeholder": "Name"
|
|
1252
|
+
},
|
|
1253
|
+
"input:email": {
|
|
1254
|
+
"placeholder": "Email"
|
|
1255
|
+
},
|
|
1256
|
+
"button:save": {
|
|
1257
|
+
"label": "Save"
|
|
1258
|
+
}
|
|
1259
|
+
}
|
|
1260
|
+
}
|
|
1261
|
+
}
|
|
1262
|
+
}
|
|
1263
|
+
],
|
|
1264
|
+
"docs": {
|
|
1265
|
+
"href": "/docs/components/column",
|
|
1266
|
+
"anchors": {
|
|
1267
|
+
"api": "column-api-reference",
|
|
1268
|
+
"examples": "column-canonical-example"
|
|
1269
|
+
}
|
|
1270
|
+
},
|
|
1271
|
+
"jsonSchema": {
|
|
1272
|
+
"type": "object",
|
|
1273
|
+
"additionalProperties": true,
|
|
1274
|
+
"properties": {},
|
|
1275
|
+
"required": [],
|
|
1276
|
+
"patternProperties": {
|
|
1277
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1278
|
+
"$ref": "#/$defs/componentNode"
|
|
1279
|
+
},
|
|
1280
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1281
|
+
"type": "string",
|
|
1282
|
+
"description": "Write-pipe event handler expression.",
|
|
1283
|
+
"xSlexkitExpressionKind": "write"
|
|
1284
|
+
}
|
|
1285
|
+
}
|
|
1286
|
+
},
|
|
1287
|
+
"hash": "764d30da"
|
|
1288
|
+
},
|
|
1289
|
+
{
|
|
1290
|
+
"type": "divider",
|
|
1291
|
+
"category": "Content",
|
|
1292
|
+
"status": "ready",
|
|
1293
|
+
"state": "readable",
|
|
1294
|
+
"since": "0.1.0",
|
|
1295
|
+
"title": "Divider",
|
|
1296
|
+
"summary": "Visual separator.",
|
|
1297
|
+
"description": "Use divider to separate related regions, optionally with a label.",
|
|
1298
|
+
"props": {
|
|
1299
|
+
"label": {
|
|
1300
|
+
"type": "string",
|
|
1301
|
+
"dynamic": true,
|
|
1302
|
+
"description": "Text shown in the divider."
|
|
1303
|
+
},
|
|
1304
|
+
"icon": {
|
|
1305
|
+
"type": "string",
|
|
1306
|
+
"description": "Icon name shown before the label."
|
|
1307
|
+
}
|
|
1308
|
+
},
|
|
1309
|
+
"children": {
|
|
1310
|
+
"allowed": false,
|
|
1311
|
+
"description": "This component does not render nested child components."
|
|
1312
|
+
},
|
|
1313
|
+
"examples": [
|
|
1314
|
+
{
|
|
1315
|
+
"id": "basic",
|
|
1316
|
+
"title": "Basic usage",
|
|
1317
|
+
"source": {
|
|
1318
|
+
"slex": "0.1",
|
|
1319
|
+
"namespace": "doc_divider_typical",
|
|
1320
|
+
"layout": {
|
|
1321
|
+
"column:content": {
|
|
1322
|
+
"text:top": {
|
|
1323
|
+
"text": "Above"
|
|
1324
|
+
},
|
|
1325
|
+
"divider:line": {
|
|
1326
|
+
"label": "Divider",
|
|
1327
|
+
"icon": "flag"
|
|
1328
|
+
},
|
|
1329
|
+
"text:bottom": {
|
|
1330
|
+
"text": "Below"
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
}
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
],
|
|
1337
|
+
"docs": {
|
|
1338
|
+
"href": "/docs/components/divider",
|
|
1339
|
+
"anchors": {
|
|
1340
|
+
"api": "divider-api-reference",
|
|
1341
|
+
"examples": "divider-canonical-example"
|
|
1342
|
+
}
|
|
1343
|
+
},
|
|
1344
|
+
"jsonSchema": {
|
|
1345
|
+
"type": "object",
|
|
1346
|
+
"additionalProperties": true,
|
|
1347
|
+
"properties": {
|
|
1348
|
+
"label": {
|
|
1349
|
+
"type": "string",
|
|
1350
|
+
"description": "Text shown in the divider."
|
|
1351
|
+
},
|
|
1352
|
+
"$label": {
|
|
1353
|
+
"type": "string",
|
|
1354
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
1355
|
+
"xSlexkitExpressionKind": "read"
|
|
1356
|
+
},
|
|
1357
|
+
"icon": {
|
|
1358
|
+
"type": "string",
|
|
1359
|
+
"description": "Icon name shown before the label."
|
|
1360
|
+
}
|
|
1361
|
+
},
|
|
1362
|
+
"required": [],
|
|
1363
|
+
"patternProperties": {
|
|
1364
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1365
|
+
"$ref": "#/$defs/componentNode"
|
|
1366
|
+
},
|
|
1367
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1368
|
+
"type": "string",
|
|
1369
|
+
"description": "Write-pipe event handler expression.",
|
|
1370
|
+
"xSlexkitExpressionKind": "write"
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
},
|
|
1374
|
+
"hash": "447bf44a"
|
|
1375
|
+
},
|
|
1376
|
+
{
|
|
1377
|
+
"type": "formula",
|
|
1378
|
+
"category": "Display",
|
|
1379
|
+
"status": "ready",
|
|
1380
|
+
"state": "none",
|
|
1381
|
+
"since": "0.1.0",
|
|
1382
|
+
"title": "Formula",
|
|
1383
|
+
"summary": "Reactive KaTeX formula display.",
|
|
1384
|
+
"description": "Use formula to render SlexKit state and computed values through KaTeX.",
|
|
1385
|
+
"props": {
|
|
1386
|
+
"tex": {
|
|
1387
|
+
"type": "string",
|
|
1388
|
+
"dynamic": true,
|
|
1389
|
+
"description": "KaTeX source to render."
|
|
1390
|
+
},
|
|
1391
|
+
"formula": {
|
|
1392
|
+
"type": "string",
|
|
1393
|
+
"dynamic": true,
|
|
1394
|
+
"description": "Alias for tex."
|
|
1395
|
+
},
|
|
1396
|
+
"value": {
|
|
1397
|
+
"type": "string",
|
|
1398
|
+
"dynamic": true,
|
|
1399
|
+
"description": "Alias for tex."
|
|
1400
|
+
},
|
|
1401
|
+
"displayMode": {
|
|
1402
|
+
"type": "boolean",
|
|
1403
|
+
"default": true,
|
|
1404
|
+
"description": "Render as display math when true; inline math when false."
|
|
1405
|
+
},
|
|
1406
|
+
"display": {
|
|
1407
|
+
"type": "boolean",
|
|
1408
|
+
"default": true,
|
|
1409
|
+
"description": "Alias for displayMode."
|
|
1410
|
+
},
|
|
1411
|
+
"block": {
|
|
1412
|
+
"type": "boolean",
|
|
1413
|
+
"default": true,
|
|
1414
|
+
"description": "Alias for displayMode."
|
|
1415
|
+
}
|
|
1416
|
+
},
|
|
1417
|
+
"children": {
|
|
1418
|
+
"allowed": false,
|
|
1419
|
+
"description": "This component does not render nested child components."
|
|
1420
|
+
},
|
|
1421
|
+
"examples": [
|
|
1422
|
+
{
|
|
1423
|
+
"id": "basic",
|
|
1424
|
+
"title": "Basic usage",
|
|
1425
|
+
"source": {
|
|
1426
|
+
"slex": "0.1",
|
|
1427
|
+
"namespace": "doc_formula_typical",
|
|
1428
|
+
"g": {
|
|
1429
|
+
"r": 10000,
|
|
1430
|
+
"c": 100,
|
|
1431
|
+
"fc": 159.15
|
|
1432
|
+
},
|
|
1433
|
+
"layout": {
|
|
1434
|
+
"formula:cutoff": {
|
|
1435
|
+
"$tex": "'f_c = \\\\frac{1}{2\\\\pi RC} = ' + g.fc + '\\\\text{ Hz}'"
|
|
1436
|
+
}
|
|
1437
|
+
}
|
|
1438
|
+
}
|
|
1439
|
+
}
|
|
1440
|
+
],
|
|
1441
|
+
"docs": {
|
|
1442
|
+
"href": "/docs/components/formula",
|
|
1443
|
+
"anchors": {
|
|
1444
|
+
"api": "formula-api-reference",
|
|
1445
|
+
"examples": "formula-canonical-example"
|
|
1446
|
+
}
|
|
1447
|
+
},
|
|
1448
|
+
"jsonSchema": {
|
|
1449
|
+
"type": "object",
|
|
1450
|
+
"additionalProperties": true,
|
|
1451
|
+
"properties": {
|
|
1452
|
+
"tex": {
|
|
1453
|
+
"type": "string",
|
|
1454
|
+
"description": "KaTeX source to render."
|
|
1455
|
+
},
|
|
1456
|
+
"$tex": {
|
|
1457
|
+
"type": "string",
|
|
1458
|
+
"description": "Dynamic expression for 'tex'. Evaluated with the Slex logic profile.",
|
|
1459
|
+
"xSlexkitExpressionKind": "read"
|
|
1460
|
+
},
|
|
1461
|
+
"formula": {
|
|
1462
|
+
"type": "string",
|
|
1463
|
+
"description": "Alias for tex."
|
|
1464
|
+
},
|
|
1465
|
+
"$formula": {
|
|
1466
|
+
"type": "string",
|
|
1467
|
+
"description": "Dynamic expression for 'formula'. Evaluated with the Slex logic profile.",
|
|
1468
|
+
"xSlexkitExpressionKind": "read"
|
|
1469
|
+
},
|
|
1470
|
+
"value": {
|
|
1471
|
+
"type": "string",
|
|
1472
|
+
"description": "Alias for tex."
|
|
1473
|
+
},
|
|
1474
|
+
"$value": {
|
|
1475
|
+
"type": "string",
|
|
1476
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
1477
|
+
"xSlexkitExpressionKind": "read"
|
|
1478
|
+
},
|
|
1479
|
+
"displayMode": {
|
|
1480
|
+
"type": "boolean",
|
|
1481
|
+
"description": "Render as display math when true; inline math when false.",
|
|
1482
|
+
"default": true
|
|
1483
|
+
},
|
|
1484
|
+
"display": {
|
|
1485
|
+
"type": "boolean",
|
|
1486
|
+
"description": "Alias for displayMode.",
|
|
1487
|
+
"default": true
|
|
1488
|
+
},
|
|
1489
|
+
"block": {
|
|
1490
|
+
"type": "boolean",
|
|
1491
|
+
"description": "Alias for displayMode.",
|
|
1492
|
+
"default": true
|
|
1493
|
+
}
|
|
1494
|
+
},
|
|
1495
|
+
"required": [],
|
|
1496
|
+
"patternProperties": {
|
|
1497
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1498
|
+
"$ref": "#/$defs/componentNode"
|
|
1499
|
+
},
|
|
1500
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1501
|
+
"type": "string",
|
|
1502
|
+
"description": "Write-pipe event handler expression.",
|
|
1503
|
+
"xSlexkitExpressionKind": "write"
|
|
1504
|
+
}
|
|
1505
|
+
}
|
|
1506
|
+
},
|
|
1507
|
+
"hash": "61a9d4ee"
|
|
1508
|
+
},
|
|
1509
|
+
{
|
|
1510
|
+
"type": "grid",
|
|
1511
|
+
"category": "Layout",
|
|
1512
|
+
"status": "ready",
|
|
1513
|
+
"state": "none",
|
|
1514
|
+
"since": "0.1.0",
|
|
1515
|
+
"title": "Grid",
|
|
1516
|
+
"summary": "Responsive grid container.",
|
|
1517
|
+
"description": "Use grid to arrange child components in responsive columns.",
|
|
1518
|
+
"props": {
|
|
1519
|
+
"columns": {
|
|
1520
|
+
"type": "number",
|
|
1521
|
+
"default": 1,
|
|
1522
|
+
"dynamic": true,
|
|
1523
|
+
"description": "Base column count."
|
|
1524
|
+
},
|
|
1525
|
+
"smColumns": {
|
|
1526
|
+
"type": "number",
|
|
1527
|
+
"dynamic": true,
|
|
1528
|
+
"description": "Column count at the small breakpoint."
|
|
1529
|
+
},
|
|
1530
|
+
"mdColumns": {
|
|
1531
|
+
"type": "number",
|
|
1532
|
+
"dynamic": true,
|
|
1533
|
+
"description": "Column count at the medium breakpoint."
|
|
1534
|
+
},
|
|
1535
|
+
"lgColumns": {
|
|
1536
|
+
"type": "number",
|
|
1537
|
+
"dynamic": true,
|
|
1538
|
+
"description": "Column count at the large breakpoint."
|
|
1539
|
+
},
|
|
1540
|
+
"xlColumns": {
|
|
1541
|
+
"type": "number",
|
|
1542
|
+
"dynamic": true,
|
|
1543
|
+
"description": "Column count at the extra-large breakpoint."
|
|
1544
|
+
},
|
|
1545
|
+
"gap": {
|
|
1546
|
+
"type": "string",
|
|
1547
|
+
"dynamic": true,
|
|
1548
|
+
"description": "Spacing between grid items."
|
|
1549
|
+
}
|
|
1550
|
+
},
|
|
1551
|
+
"children": {
|
|
1552
|
+
"allowed": true,
|
|
1553
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
1554
|
+
},
|
|
1555
|
+
"examples": [
|
|
1556
|
+
{
|
|
1557
|
+
"id": "basic",
|
|
1558
|
+
"title": "Basic usage",
|
|
1559
|
+
"source": {
|
|
1560
|
+
"slex": "0.1",
|
|
1561
|
+
"namespace": "doc_grid_typical",
|
|
1562
|
+
"layout": {
|
|
1563
|
+
"grid:stats": {
|
|
1564
|
+
"columns": 1,
|
|
1565
|
+
"mdColumns": 3,
|
|
1566
|
+
"stat:a": {
|
|
1567
|
+
"label": "Requests",
|
|
1568
|
+
"value": "1.2k"
|
|
1569
|
+
},
|
|
1570
|
+
"stat:b": {
|
|
1571
|
+
"label": "Success",
|
|
1572
|
+
"value": "98%"
|
|
1573
|
+
},
|
|
1574
|
+
"stat:c": {
|
|
1575
|
+
"label": "Errors",
|
|
1576
|
+
"value": "3"
|
|
1577
|
+
}
|
|
1578
|
+
}
|
|
1579
|
+
}
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1582
|
+
],
|
|
1583
|
+
"docs": {
|
|
1584
|
+
"href": "/docs/components/grid",
|
|
1585
|
+
"anchors": {
|
|
1586
|
+
"api": "grid-api-reference",
|
|
1587
|
+
"examples": "grid-canonical-example"
|
|
1588
|
+
}
|
|
1589
|
+
},
|
|
1590
|
+
"jsonSchema": {
|
|
1591
|
+
"type": "object",
|
|
1592
|
+
"additionalProperties": true,
|
|
1593
|
+
"properties": {
|
|
1594
|
+
"columns": {
|
|
1595
|
+
"type": "number",
|
|
1596
|
+
"description": "Base column count.",
|
|
1597
|
+
"default": 1
|
|
1598
|
+
},
|
|
1599
|
+
"$columns": {
|
|
1600
|
+
"type": "string",
|
|
1601
|
+
"description": "Dynamic expression for 'columns'. Evaluated with the Slex logic profile.",
|
|
1602
|
+
"xSlexkitExpressionKind": "read"
|
|
1603
|
+
},
|
|
1604
|
+
"smColumns": {
|
|
1605
|
+
"type": "number",
|
|
1606
|
+
"description": "Column count at the small breakpoint."
|
|
1607
|
+
},
|
|
1608
|
+
"$smColumns": {
|
|
1609
|
+
"type": "string",
|
|
1610
|
+
"description": "Dynamic expression for 'smColumns'. Evaluated with the Slex logic profile.",
|
|
1611
|
+
"xSlexkitExpressionKind": "read"
|
|
1612
|
+
},
|
|
1613
|
+
"mdColumns": {
|
|
1614
|
+
"type": "number",
|
|
1615
|
+
"description": "Column count at the medium breakpoint."
|
|
1616
|
+
},
|
|
1617
|
+
"$mdColumns": {
|
|
1618
|
+
"type": "string",
|
|
1619
|
+
"description": "Dynamic expression for 'mdColumns'. Evaluated with the Slex logic profile.",
|
|
1620
|
+
"xSlexkitExpressionKind": "read"
|
|
1621
|
+
},
|
|
1622
|
+
"lgColumns": {
|
|
1623
|
+
"type": "number",
|
|
1624
|
+
"description": "Column count at the large breakpoint."
|
|
1625
|
+
},
|
|
1626
|
+
"$lgColumns": {
|
|
1627
|
+
"type": "string",
|
|
1628
|
+
"description": "Dynamic expression for 'lgColumns'. Evaluated with the Slex logic profile.",
|
|
1629
|
+
"xSlexkitExpressionKind": "read"
|
|
1630
|
+
},
|
|
1631
|
+
"xlColumns": {
|
|
1632
|
+
"type": "number",
|
|
1633
|
+
"description": "Column count at the extra-large breakpoint."
|
|
1634
|
+
},
|
|
1635
|
+
"$xlColumns": {
|
|
1636
|
+
"type": "string",
|
|
1637
|
+
"description": "Dynamic expression for 'xlColumns'. Evaluated with the Slex logic profile.",
|
|
1638
|
+
"xSlexkitExpressionKind": "read"
|
|
1639
|
+
},
|
|
1640
|
+
"gap": {
|
|
1641
|
+
"type": "string",
|
|
1642
|
+
"description": "Spacing between grid items."
|
|
1643
|
+
},
|
|
1644
|
+
"$gap": {
|
|
1645
|
+
"type": "string",
|
|
1646
|
+
"description": "Dynamic expression for 'gap'. Evaluated with the Slex logic profile.",
|
|
1647
|
+
"xSlexkitExpressionKind": "read"
|
|
1648
|
+
}
|
|
1649
|
+
},
|
|
1650
|
+
"required": [],
|
|
1651
|
+
"patternProperties": {
|
|
1652
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1653
|
+
"$ref": "#/$defs/componentNode"
|
|
1654
|
+
},
|
|
1655
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1656
|
+
"type": "string",
|
|
1657
|
+
"description": "Write-pipe event handler expression.",
|
|
1658
|
+
"xSlexkitExpressionKind": "write"
|
|
1659
|
+
}
|
|
1660
|
+
}
|
|
1661
|
+
},
|
|
1662
|
+
"hash": "912458b7"
|
|
1663
|
+
},
|
|
1664
|
+
{
|
|
1665
|
+
"type": "icon",
|
|
1666
|
+
"category": "Component",
|
|
1667
|
+
"status": "ready",
|
|
1668
|
+
"state": "none",
|
|
1669
|
+
"since": "0.1.0",
|
|
1670
|
+
"title": "Icon",
|
|
1671
|
+
"summary": "Shared icon field capability.",
|
|
1672
|
+
"description": "Icon is a shared field capability, not an independent icon component type.",
|
|
1673
|
+
"props": {
|
|
1674
|
+
"icon": {
|
|
1675
|
+
"type": "string",
|
|
1676
|
+
"description": "Icon name resolved through the global icon manager."
|
|
1677
|
+
},
|
|
1678
|
+
"iconOnly": {
|
|
1679
|
+
"type": "boolean",
|
|
1680
|
+
"description": "Render only the icon while retaining an accessible label where supported."
|
|
1681
|
+
},
|
|
1682
|
+
"items[].icon": {
|
|
1683
|
+
"type": "string",
|
|
1684
|
+
"description": "Accordion item trigger icon."
|
|
1685
|
+
},
|
|
1686
|
+
"options[].icon": {
|
|
1687
|
+
"type": "string",
|
|
1688
|
+
"description": "Select or radio option icon."
|
|
1689
|
+
},
|
|
1690
|
+
"columns[].icon": {
|
|
1691
|
+
"type": "string",
|
|
1692
|
+
"description": "Table column header icon."
|
|
1693
|
+
},
|
|
1694
|
+
"tabs[].icon": {
|
|
1695
|
+
"type": "string",
|
|
1696
|
+
"description": "Tab trigger icon."
|
|
1697
|
+
},
|
|
1698
|
+
"tabs[].iconOnly": {
|
|
1699
|
+
"type": "boolean",
|
|
1700
|
+
"description": "Tab trigger icon-only mode."
|
|
1701
|
+
}
|
|
1702
|
+
},
|
|
1703
|
+
"children": {
|
|
1704
|
+
"allowed": false,
|
|
1705
|
+
"description": "This component does not render nested child components."
|
|
1706
|
+
},
|
|
1707
|
+
"examples": [
|
|
1708
|
+
{
|
|
1709
|
+
"id": "basic",
|
|
1710
|
+
"title": "Icon field usage",
|
|
1711
|
+
"source": {
|
|
1712
|
+
"slex": "0.1",
|
|
1713
|
+
"namespace": "spec_button_basic",
|
|
1714
|
+
"layout": {
|
|
1715
|
+
"button:demo": {
|
|
1716
|
+
"label": "Settings",
|
|
1717
|
+
"icon": "gear-six",
|
|
1718
|
+
"iconOnly": true,
|
|
1719
|
+
"variant": "ghost"
|
|
1720
|
+
}
|
|
1721
|
+
}
|
|
1722
|
+
}
|
|
1723
|
+
}
|
|
1724
|
+
],
|
|
1725
|
+
"docs": {
|
|
1726
|
+
"href": "/docs/components/icon",
|
|
1727
|
+
"anchors": {
|
|
1728
|
+
"api": "icon-api-reference",
|
|
1729
|
+
"examples": "icon-canonical-example"
|
|
1730
|
+
}
|
|
1731
|
+
},
|
|
1732
|
+
"jsonSchema": {
|
|
1733
|
+
"type": "object",
|
|
1734
|
+
"additionalProperties": true,
|
|
1735
|
+
"properties": {
|
|
1736
|
+
"icon": {
|
|
1737
|
+
"type": "string",
|
|
1738
|
+
"description": "Icon name resolved through the global icon manager."
|
|
1739
|
+
},
|
|
1740
|
+
"iconOnly": {
|
|
1741
|
+
"type": "boolean",
|
|
1742
|
+
"description": "Render only the icon while retaining an accessible label where supported."
|
|
1743
|
+
},
|
|
1744
|
+
"items[].icon": {
|
|
1745
|
+
"type": "string",
|
|
1746
|
+
"description": "Accordion item trigger icon."
|
|
1747
|
+
},
|
|
1748
|
+
"options[].icon": {
|
|
1749
|
+
"type": "string",
|
|
1750
|
+
"description": "Select or radio option icon."
|
|
1751
|
+
},
|
|
1752
|
+
"columns[].icon": {
|
|
1753
|
+
"type": "string",
|
|
1754
|
+
"description": "Table column header icon."
|
|
1755
|
+
},
|
|
1756
|
+
"tabs[].icon": {
|
|
1757
|
+
"type": "string",
|
|
1758
|
+
"description": "Tab trigger icon."
|
|
1759
|
+
},
|
|
1760
|
+
"tabs[].iconOnly": {
|
|
1761
|
+
"type": "boolean",
|
|
1762
|
+
"description": "Tab trigger icon-only mode."
|
|
1763
|
+
}
|
|
1764
|
+
},
|
|
1765
|
+
"required": [],
|
|
1766
|
+
"patternProperties": {
|
|
1767
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
1768
|
+
"$ref": "#/$defs/componentNode"
|
|
1769
|
+
},
|
|
1770
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
1771
|
+
"type": "string",
|
|
1772
|
+
"description": "Write-pipe event handler expression.",
|
|
1773
|
+
"xSlexkitExpressionKind": "write"
|
|
1774
|
+
}
|
|
1775
|
+
}
|
|
1776
|
+
},
|
|
1777
|
+
"hash": "0b7a18c9"
|
|
1778
|
+
},
|
|
1779
|
+
{
|
|
1780
|
+
"type": "input",
|
|
1781
|
+
"category": "Input",
|
|
1782
|
+
"status": "ready",
|
|
1783
|
+
"state": "value",
|
|
1784
|
+
"since": "0.1.0",
|
|
1785
|
+
"title": "Input",
|
|
1786
|
+
"summary": "Text or engineering-value input.",
|
|
1787
|
+
"description": "Use input for editable text and engineering numeric values.",
|
|
1788
|
+
"props": {
|
|
1789
|
+
"value": {
|
|
1790
|
+
"type": "string",
|
|
1791
|
+
"dynamic": true,
|
|
1792
|
+
"description": "Current input value."
|
|
1793
|
+
},
|
|
1794
|
+
"label": {
|
|
1795
|
+
"type": "string",
|
|
1796
|
+
"dynamic": true,
|
|
1797
|
+
"description": "Input label."
|
|
1798
|
+
},
|
|
1799
|
+
"unit": {
|
|
1800
|
+
"type": "string",
|
|
1801
|
+
"dynamic": true,
|
|
1802
|
+
"description": "Trailing unit text."
|
|
1803
|
+
},
|
|
1804
|
+
"description": {
|
|
1805
|
+
"type": "string",
|
|
1806
|
+
"dynamic": true,
|
|
1807
|
+
"description": "Assistive description below the input."
|
|
1808
|
+
},
|
|
1809
|
+
"help": {
|
|
1810
|
+
"type": "string",
|
|
1811
|
+
"dynamic": true,
|
|
1812
|
+
"description": "Alias for description."
|
|
1813
|
+
},
|
|
1814
|
+
"hint": {
|
|
1815
|
+
"type": "string",
|
|
1816
|
+
"dynamic": true,
|
|
1817
|
+
"description": "Alias for description."
|
|
1818
|
+
},
|
|
1819
|
+
"error": {
|
|
1820
|
+
"type": "string",
|
|
1821
|
+
"dynamic": true,
|
|
1822
|
+
"description": "Error text shown below the input and linked with aria-describedby."
|
|
1823
|
+
},
|
|
1824
|
+
"errorMessage": {
|
|
1825
|
+
"type": "string",
|
|
1826
|
+
"dynamic": true,
|
|
1827
|
+
"description": "Alias for error."
|
|
1828
|
+
},
|
|
1829
|
+
"invalid": {
|
|
1830
|
+
"type": "boolean",
|
|
1831
|
+
"default": false,
|
|
1832
|
+
"dynamic": true,
|
|
1833
|
+
"description": "Mark the input as invalid with aria-invalid and error styling."
|
|
1834
|
+
},
|
|
1835
|
+
"placeholder": {
|
|
1836
|
+
"type": "string",
|
|
1837
|
+
"description": "Placeholder text for empty values."
|
|
1838
|
+
},
|
|
1839
|
+
"type": {
|
|
1840
|
+
"type": "string",
|
|
1841
|
+
"default": "text",
|
|
1842
|
+
"description": "Input value kind; use engineering for parsed engineering values."
|
|
1843
|
+
},
|
|
1844
|
+
"disabled": {
|
|
1845
|
+
"type": "boolean",
|
|
1846
|
+
"default": false,
|
|
1847
|
+
"dynamic": true,
|
|
1848
|
+
"description": "Disable editing."
|
|
1849
|
+
},
|
|
1850
|
+
"readonly": {
|
|
1851
|
+
"type": "boolean",
|
|
1852
|
+
"default": false,
|
|
1853
|
+
"dynamic": true,
|
|
1854
|
+
"description": "Make the input read-only."
|
|
1855
|
+
},
|
|
1856
|
+
"readOnly": {
|
|
1857
|
+
"type": "boolean",
|
|
1858
|
+
"default": false,
|
|
1859
|
+
"dynamic": true,
|
|
1860
|
+
"description": "Alias for readonly."
|
|
1861
|
+
},
|
|
1862
|
+
"required": {
|
|
1863
|
+
"type": "boolean",
|
|
1864
|
+
"default": false,
|
|
1865
|
+
"dynamic": true,
|
|
1866
|
+
"description": "Mark the input as required."
|
|
1867
|
+
},
|
|
1868
|
+
"id": {
|
|
1869
|
+
"type": "string",
|
|
1870
|
+
"description": "Native input id; defaults to a stable id derived from the component name."
|
|
1871
|
+
},
|
|
1872
|
+
"name": {
|
|
1873
|
+
"type": "string",
|
|
1874
|
+
"description": "Native input name attribute."
|
|
1875
|
+
},
|
|
1876
|
+
"min": {
|
|
1877
|
+
"type": "string | number",
|
|
1878
|
+
"dynamic": true,
|
|
1879
|
+
"description": "Minimum value used by numeric input controls."
|
|
1880
|
+
},
|
|
1881
|
+
"max": {
|
|
1882
|
+
"type": "string | number",
|
|
1883
|
+
"dynamic": true,
|
|
1884
|
+
"description": "Maximum value used by numeric input controls."
|
|
1885
|
+
},
|
|
1886
|
+
"step": {
|
|
1887
|
+
"type": "string | number",
|
|
1888
|
+
"dynamic": true,
|
|
1889
|
+
"description": "Step size used by numeric input controls."
|
|
1890
|
+
},
|
|
1891
|
+
"onchange": {
|
|
1892
|
+
"type": "write-expression",
|
|
1893
|
+
"description": "Write expression invoked when the value changes."
|
|
1894
|
+
}
|
|
1895
|
+
},
|
|
1896
|
+
"children": {
|
|
1897
|
+
"allowed": false,
|
|
1898
|
+
"description": "This component does not render nested child components."
|
|
1899
|
+
},
|
|
1900
|
+
"examples": [
|
|
1901
|
+
{
|
|
1902
|
+
"id": "basic",
|
|
1903
|
+
"title": "Basic usage",
|
|
1904
|
+
"source": {
|
|
1905
|
+
"slex": "0.1",
|
|
1906
|
+
"namespace": "doc_input_typical",
|
|
1907
|
+
"layout": {
|
|
1908
|
+
"input:name": {
|
|
1909
|
+
"label": "Project",
|
|
1910
|
+
"value": "SlexKit",
|
|
1911
|
+
"placeholder": "Enter name",
|
|
1912
|
+
"description": "Visible labels keep form fields scannable."
|
|
1913
|
+
}
|
|
1914
|
+
}
|
|
1915
|
+
}
|
|
1916
|
+
}
|
|
1917
|
+
],
|
|
1918
|
+
"docs": {
|
|
1919
|
+
"href": "/docs/components/input",
|
|
1920
|
+
"anchors": {
|
|
1921
|
+
"api": "input-api-reference",
|
|
1922
|
+
"examples": "input-canonical-example"
|
|
1923
|
+
}
|
|
1924
|
+
},
|
|
1925
|
+
"jsonSchema": {
|
|
1926
|
+
"type": "object",
|
|
1927
|
+
"additionalProperties": true,
|
|
1928
|
+
"properties": {
|
|
1929
|
+
"value": {
|
|
1930
|
+
"type": "string",
|
|
1931
|
+
"description": "Current input value."
|
|
1932
|
+
},
|
|
1933
|
+
"$value": {
|
|
1934
|
+
"type": "string",
|
|
1935
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
1936
|
+
"xSlexkitExpressionKind": "read"
|
|
1937
|
+
},
|
|
1938
|
+
"label": {
|
|
1939
|
+
"type": "string",
|
|
1940
|
+
"description": "Input label."
|
|
1941
|
+
},
|
|
1942
|
+
"$label": {
|
|
1943
|
+
"type": "string",
|
|
1944
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
1945
|
+
"xSlexkitExpressionKind": "read"
|
|
1946
|
+
},
|
|
1947
|
+
"unit": {
|
|
1948
|
+
"type": "string",
|
|
1949
|
+
"description": "Trailing unit text."
|
|
1950
|
+
},
|
|
1951
|
+
"$unit": {
|
|
1952
|
+
"type": "string",
|
|
1953
|
+
"description": "Dynamic expression for 'unit'. Evaluated with the Slex logic profile.",
|
|
1954
|
+
"xSlexkitExpressionKind": "read"
|
|
1955
|
+
},
|
|
1956
|
+
"description": {
|
|
1957
|
+
"type": "string",
|
|
1958
|
+
"description": "Assistive description below the input."
|
|
1959
|
+
},
|
|
1960
|
+
"$description": {
|
|
1961
|
+
"type": "string",
|
|
1962
|
+
"description": "Dynamic expression for 'description'. Evaluated with the Slex logic profile.",
|
|
1963
|
+
"xSlexkitExpressionKind": "read"
|
|
1964
|
+
},
|
|
1965
|
+
"help": {
|
|
1966
|
+
"type": "string",
|
|
1967
|
+
"description": "Alias for description."
|
|
1968
|
+
},
|
|
1969
|
+
"$help": {
|
|
1970
|
+
"type": "string",
|
|
1971
|
+
"description": "Dynamic expression for 'help'. Evaluated with the Slex logic profile.",
|
|
1972
|
+
"xSlexkitExpressionKind": "read"
|
|
1973
|
+
},
|
|
1974
|
+
"hint": {
|
|
1975
|
+
"type": "string",
|
|
1976
|
+
"description": "Alias for description."
|
|
1977
|
+
},
|
|
1978
|
+
"$hint": {
|
|
1979
|
+
"type": "string",
|
|
1980
|
+
"description": "Dynamic expression for 'hint'. Evaluated with the Slex logic profile.",
|
|
1981
|
+
"xSlexkitExpressionKind": "read"
|
|
1982
|
+
},
|
|
1983
|
+
"error": {
|
|
1984
|
+
"type": "string",
|
|
1985
|
+
"description": "Error text shown below the input and linked with aria-describedby."
|
|
1986
|
+
},
|
|
1987
|
+
"$error": {
|
|
1988
|
+
"type": "string",
|
|
1989
|
+
"description": "Dynamic expression for 'error'. Evaluated with the Slex logic profile.",
|
|
1990
|
+
"xSlexkitExpressionKind": "read"
|
|
1991
|
+
},
|
|
1992
|
+
"errorMessage": {
|
|
1993
|
+
"type": "string",
|
|
1994
|
+
"description": "Alias for error."
|
|
1995
|
+
},
|
|
1996
|
+
"$errorMessage": {
|
|
1997
|
+
"type": "string",
|
|
1998
|
+
"description": "Dynamic expression for 'errorMessage'. Evaluated with the Slex logic profile.",
|
|
1999
|
+
"xSlexkitExpressionKind": "read"
|
|
2000
|
+
},
|
|
2001
|
+
"invalid": {
|
|
2002
|
+
"type": "boolean",
|
|
2003
|
+
"description": "Mark the input as invalid with aria-invalid and error styling.",
|
|
2004
|
+
"default": false
|
|
2005
|
+
},
|
|
2006
|
+
"$invalid": {
|
|
2007
|
+
"type": "string",
|
|
2008
|
+
"description": "Dynamic expression for 'invalid'. Evaluated with the Slex logic profile.",
|
|
2009
|
+
"xSlexkitExpressionKind": "read"
|
|
2010
|
+
},
|
|
2011
|
+
"placeholder": {
|
|
2012
|
+
"type": "string",
|
|
2013
|
+
"description": "Placeholder text for empty values."
|
|
2014
|
+
},
|
|
2015
|
+
"type": {
|
|
2016
|
+
"type": "string",
|
|
2017
|
+
"description": "Input value kind; use engineering for parsed engineering values.",
|
|
2018
|
+
"default": "text"
|
|
2019
|
+
},
|
|
2020
|
+
"disabled": {
|
|
2021
|
+
"type": "boolean",
|
|
2022
|
+
"description": "Disable editing.",
|
|
2023
|
+
"default": false
|
|
2024
|
+
},
|
|
2025
|
+
"$disabled": {
|
|
2026
|
+
"type": "string",
|
|
2027
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
2028
|
+
"xSlexkitExpressionKind": "read"
|
|
2029
|
+
},
|
|
2030
|
+
"readonly": {
|
|
2031
|
+
"type": "boolean",
|
|
2032
|
+
"description": "Make the input read-only.",
|
|
2033
|
+
"default": false
|
|
2034
|
+
},
|
|
2035
|
+
"$readonly": {
|
|
2036
|
+
"type": "string",
|
|
2037
|
+
"description": "Dynamic expression for 'readonly'. Evaluated with the Slex logic profile.",
|
|
2038
|
+
"xSlexkitExpressionKind": "read"
|
|
2039
|
+
},
|
|
2040
|
+
"readOnly": {
|
|
2041
|
+
"type": "boolean",
|
|
2042
|
+
"description": "Alias for readonly.",
|
|
2043
|
+
"default": false
|
|
2044
|
+
},
|
|
2045
|
+
"$readOnly": {
|
|
2046
|
+
"type": "string",
|
|
2047
|
+
"description": "Dynamic expression for 'readOnly'. Evaluated with the Slex logic profile.",
|
|
2048
|
+
"xSlexkitExpressionKind": "read"
|
|
2049
|
+
},
|
|
2050
|
+
"required": {
|
|
2051
|
+
"type": "boolean",
|
|
2052
|
+
"description": "Mark the input as required.",
|
|
2053
|
+
"default": false
|
|
2054
|
+
},
|
|
2055
|
+
"$required": {
|
|
2056
|
+
"type": "string",
|
|
2057
|
+
"description": "Dynamic expression for 'required'. Evaluated with the Slex logic profile.",
|
|
2058
|
+
"xSlexkitExpressionKind": "read"
|
|
2059
|
+
},
|
|
2060
|
+
"id": {
|
|
2061
|
+
"type": "string",
|
|
2062
|
+
"description": "Native input id; defaults to a stable id derived from the component name."
|
|
2063
|
+
},
|
|
2064
|
+
"name": {
|
|
2065
|
+
"type": "string",
|
|
2066
|
+
"description": "Native input name attribute."
|
|
2067
|
+
},
|
|
2068
|
+
"min": {
|
|
2069
|
+
"type": [
|
|
2070
|
+
"string",
|
|
2071
|
+
"number"
|
|
2072
|
+
],
|
|
2073
|
+
"description": "Minimum value used by numeric input controls."
|
|
2074
|
+
},
|
|
2075
|
+
"$min": {
|
|
2076
|
+
"type": "string",
|
|
2077
|
+
"description": "Dynamic expression for 'min'. Evaluated with the Slex logic profile.",
|
|
2078
|
+
"xSlexkitExpressionKind": "read"
|
|
2079
|
+
},
|
|
2080
|
+
"max": {
|
|
2081
|
+
"type": [
|
|
2082
|
+
"string",
|
|
2083
|
+
"number"
|
|
2084
|
+
],
|
|
2085
|
+
"description": "Maximum value used by numeric input controls."
|
|
2086
|
+
},
|
|
2087
|
+
"$max": {
|
|
2088
|
+
"type": "string",
|
|
2089
|
+
"description": "Dynamic expression for 'max'. Evaluated with the Slex logic profile.",
|
|
2090
|
+
"xSlexkitExpressionKind": "read"
|
|
2091
|
+
},
|
|
2092
|
+
"step": {
|
|
2093
|
+
"type": [
|
|
2094
|
+
"string",
|
|
2095
|
+
"number"
|
|
2096
|
+
],
|
|
2097
|
+
"description": "Step size used by numeric input controls."
|
|
2098
|
+
},
|
|
2099
|
+
"$step": {
|
|
2100
|
+
"type": "string",
|
|
2101
|
+
"description": "Dynamic expression for 'step'. Evaluated with the Slex logic profile.",
|
|
2102
|
+
"xSlexkitExpressionKind": "read"
|
|
2103
|
+
},
|
|
2104
|
+
"onchange": {
|
|
2105
|
+
"type": "string",
|
|
2106
|
+
"xSlexkitExpressionKind": "write",
|
|
2107
|
+
"description": "Write expression invoked when the value changes."
|
|
2108
|
+
}
|
|
2109
|
+
},
|
|
2110
|
+
"required": [],
|
|
2111
|
+
"patternProperties": {
|
|
2112
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2113
|
+
"$ref": "#/$defs/componentNode"
|
|
2114
|
+
},
|
|
2115
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2116
|
+
"type": "string",
|
|
2117
|
+
"description": "Write-pipe event handler expression.",
|
|
2118
|
+
"xSlexkitExpressionKind": "write"
|
|
2119
|
+
}
|
|
2120
|
+
}
|
|
2121
|
+
},
|
|
2122
|
+
"hash": "69ec164d"
|
|
2123
|
+
},
|
|
2124
|
+
{
|
|
2125
|
+
"type": "link",
|
|
2126
|
+
"category": "Content",
|
|
2127
|
+
"status": "ready",
|
|
2128
|
+
"state": "readable",
|
|
2129
|
+
"since": "0.1.0",
|
|
2130
|
+
"title": "Link",
|
|
2131
|
+
"summary": "Inline navigation link.",
|
|
2132
|
+
"description": "Use link to navigate to another page or resource.",
|
|
2133
|
+
"props": {
|
|
2134
|
+
"href": {
|
|
2135
|
+
"type": "string",
|
|
2136
|
+
"description": "Target URL."
|
|
2137
|
+
},
|
|
2138
|
+
"text": {
|
|
2139
|
+
"type": "string",
|
|
2140
|
+
"dynamic": true,
|
|
2141
|
+
"description": "Visible link text."
|
|
2142
|
+
},
|
|
2143
|
+
"label": {
|
|
2144
|
+
"type": "string",
|
|
2145
|
+
"dynamic": true,
|
|
2146
|
+
"description": "Alias for text."
|
|
2147
|
+
},
|
|
2148
|
+
"content": {
|
|
2149
|
+
"type": "string",
|
|
2150
|
+
"dynamic": true,
|
|
2151
|
+
"description": "Alias for text."
|
|
2152
|
+
},
|
|
2153
|
+
"icon": {
|
|
2154
|
+
"type": "string",
|
|
2155
|
+
"description": "Icon name shown before link text."
|
|
2156
|
+
},
|
|
2157
|
+
"target": {
|
|
2158
|
+
"type": "string",
|
|
2159
|
+
"description": "Native link target attribute."
|
|
2160
|
+
},
|
|
2161
|
+
"variant": {
|
|
2162
|
+
"type": "string",
|
|
2163
|
+
"values": [
|
|
2164
|
+
"default",
|
|
2165
|
+
"muted"
|
|
2166
|
+
],
|
|
2167
|
+
"default": "default",
|
|
2168
|
+
"description": "Link visual variant."
|
|
2169
|
+
}
|
|
2170
|
+
},
|
|
2171
|
+
"children": {
|
|
2172
|
+
"allowed": false,
|
|
2173
|
+
"description": "This component does not render nested child components."
|
|
2174
|
+
},
|
|
2175
|
+
"examples": [
|
|
2176
|
+
{
|
|
2177
|
+
"id": "basic",
|
|
2178
|
+
"title": "Basic usage",
|
|
2179
|
+
"source": {
|
|
2180
|
+
"slex": "0.1",
|
|
2181
|
+
"namespace": "doc_link_typical",
|
|
2182
|
+
"layout": {
|
|
2183
|
+
"column:links": {
|
|
2184
|
+
"link:docs": {
|
|
2185
|
+
"href": "/components",
|
|
2186
|
+
"icon": "arrow-square-out",
|
|
2187
|
+
"text": "View components"
|
|
2188
|
+
}
|
|
2189
|
+
}
|
|
2190
|
+
}
|
|
2191
|
+
}
|
|
2192
|
+
}
|
|
2193
|
+
],
|
|
2194
|
+
"docs": {
|
|
2195
|
+
"href": "/docs/components/link",
|
|
2196
|
+
"anchors": {
|
|
2197
|
+
"api": "link-api-reference",
|
|
2198
|
+
"examples": "link-canonical-example"
|
|
2199
|
+
}
|
|
2200
|
+
},
|
|
2201
|
+
"jsonSchema": {
|
|
2202
|
+
"type": "object",
|
|
2203
|
+
"additionalProperties": true,
|
|
2204
|
+
"properties": {
|
|
2205
|
+
"href": {
|
|
2206
|
+
"type": "string",
|
|
2207
|
+
"description": "Target URL."
|
|
2208
|
+
},
|
|
2209
|
+
"text": {
|
|
2210
|
+
"type": "string",
|
|
2211
|
+
"description": "Visible link text."
|
|
2212
|
+
},
|
|
2213
|
+
"$text": {
|
|
2214
|
+
"type": "string",
|
|
2215
|
+
"description": "Dynamic expression for 'text'. Evaluated with the Slex logic profile.",
|
|
2216
|
+
"xSlexkitExpressionKind": "read"
|
|
2217
|
+
},
|
|
2218
|
+
"label": {
|
|
2219
|
+
"type": "string",
|
|
2220
|
+
"description": "Alias for text."
|
|
2221
|
+
},
|
|
2222
|
+
"$label": {
|
|
2223
|
+
"type": "string",
|
|
2224
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
2225
|
+
"xSlexkitExpressionKind": "read"
|
|
2226
|
+
},
|
|
2227
|
+
"content": {
|
|
2228
|
+
"type": "string",
|
|
2229
|
+
"description": "Alias for text."
|
|
2230
|
+
},
|
|
2231
|
+
"$content": {
|
|
2232
|
+
"type": "string",
|
|
2233
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
2234
|
+
"xSlexkitExpressionKind": "read"
|
|
2235
|
+
},
|
|
2236
|
+
"icon": {
|
|
2237
|
+
"type": "string",
|
|
2238
|
+
"description": "Icon name shown before link text."
|
|
2239
|
+
},
|
|
2240
|
+
"target": {
|
|
2241
|
+
"type": "string",
|
|
2242
|
+
"description": "Native link target attribute."
|
|
2243
|
+
},
|
|
2244
|
+
"variant": {
|
|
2245
|
+
"enum": [
|
|
2246
|
+
"default",
|
|
2247
|
+
"muted"
|
|
2248
|
+
],
|
|
2249
|
+
"description": "Link visual variant.",
|
|
2250
|
+
"default": "default"
|
|
2251
|
+
}
|
|
2252
|
+
},
|
|
2253
|
+
"required": [],
|
|
2254
|
+
"patternProperties": {
|
|
2255
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2256
|
+
"$ref": "#/$defs/componentNode"
|
|
2257
|
+
},
|
|
2258
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2259
|
+
"type": "string",
|
|
2260
|
+
"description": "Write-pipe event handler expression.",
|
|
2261
|
+
"xSlexkitExpressionKind": "write"
|
|
2262
|
+
}
|
|
2263
|
+
}
|
|
2264
|
+
},
|
|
2265
|
+
"hash": "1404518b"
|
|
2266
|
+
},
|
|
2267
|
+
{
|
|
2268
|
+
"type": "playground",
|
|
2269
|
+
"category": "Tooling",
|
|
2270
|
+
"status": "ready",
|
|
2271
|
+
"state": "none",
|
|
2272
|
+
"since": "0.1.0",
|
|
2273
|
+
"title": "Playground",
|
|
2274
|
+
"summary": "Interactive source preview.",
|
|
2275
|
+
"description": "Use playground in documentation surfaces to render editable SlexKit or Markdown examples.",
|
|
2276
|
+
"props": {
|
|
2277
|
+
"source": {
|
|
2278
|
+
"type": "object | string",
|
|
2279
|
+
"description": "SlexKit or Markdown source to preview."
|
|
2280
|
+
},
|
|
2281
|
+
"sourceType": {
|
|
2282
|
+
"type": "string",
|
|
2283
|
+
"values": [
|
|
2284
|
+
"slex",
|
|
2285
|
+
"markdown",
|
|
2286
|
+
"auto-markdown"
|
|
2287
|
+
],
|
|
2288
|
+
"default": "slex",
|
|
2289
|
+
"description": "Source parser mode."
|
|
2290
|
+
},
|
|
2291
|
+
"title": {
|
|
2292
|
+
"type": "string",
|
|
2293
|
+
"description": "Playground title."
|
|
2294
|
+
},
|
|
2295
|
+
"previewAlign": {
|
|
2296
|
+
"type": "string",
|
|
2297
|
+
"values": [
|
|
2298
|
+
"center",
|
|
2299
|
+
"start"
|
|
2300
|
+
],
|
|
2301
|
+
"default": "center",
|
|
2302
|
+
"description": "Vertical preview alignment in render mode."
|
|
2303
|
+
},
|
|
2304
|
+
"alignPreview": {
|
|
2305
|
+
"type": "string",
|
|
2306
|
+
"values": [
|
|
2307
|
+
"center",
|
|
2308
|
+
"start"
|
|
2309
|
+
],
|
|
2310
|
+
"description": "Alias for previewAlign."
|
|
2311
|
+
},
|
|
2312
|
+
"previewPlacement": {
|
|
2313
|
+
"type": "string",
|
|
2314
|
+
"values": [
|
|
2315
|
+
"center",
|
|
2316
|
+
"start"
|
|
2317
|
+
],
|
|
2318
|
+
"description": "Alias for previewAlign."
|
|
2319
|
+
},
|
|
2320
|
+
"previewMinHeight": {
|
|
2321
|
+
"type": "string",
|
|
2322
|
+
"description": "Minimum preview area height."
|
|
2323
|
+
},
|
|
2324
|
+
"previewMaxWidth": {
|
|
2325
|
+
"type": "string",
|
|
2326
|
+
"description": "Maximum preview content width."
|
|
2327
|
+
},
|
|
2328
|
+
"themeToggle": {
|
|
2329
|
+
"type": "boolean",
|
|
2330
|
+
"default": false,
|
|
2331
|
+
"description": "Show the theme toggle action."
|
|
2332
|
+
},
|
|
2333
|
+
"showThemeToggle": {
|
|
2334
|
+
"type": "boolean",
|
|
2335
|
+
"default": false,
|
|
2336
|
+
"description": "Alias for themeToggle."
|
|
2337
|
+
},
|
|
2338
|
+
"enableThemeToggle": {
|
|
2339
|
+
"type": "boolean",
|
|
2340
|
+
"default": false,
|
|
2341
|
+
"description": "Alias for themeToggle."
|
|
2342
|
+
},
|
|
2343
|
+
"themeLabel": {
|
|
2344
|
+
"type": "string",
|
|
2345
|
+
"description": "Accessible label for the theme toggle action."
|
|
2346
|
+
},
|
|
2347
|
+
"themeToggleLabel": {
|
|
2348
|
+
"type": "string",
|
|
2349
|
+
"description": "Alias for themeLabel."
|
|
2350
|
+
},
|
|
2351
|
+
"sourceTypeLabel": {
|
|
2352
|
+
"type": "string",
|
|
2353
|
+
"description": "Accessible label for the source type selector."
|
|
2354
|
+
},
|
|
2355
|
+
"copyLabel": {
|
|
2356
|
+
"type": "string",
|
|
2357
|
+
"description": "Accessible label for the copy source action."
|
|
2358
|
+
},
|
|
2359
|
+
"openWebLabel": {
|
|
2360
|
+
"type": "string",
|
|
2361
|
+
"description": "Accessible label for opening the source in the standalone playground."
|
|
2362
|
+
},
|
|
2363
|
+
"webUrl": {
|
|
2364
|
+
"type": "string",
|
|
2365
|
+
"description": "Standalone playground URL used by the open action."
|
|
2366
|
+
},
|
|
2367
|
+
"playgroundUrl": {
|
|
2368
|
+
"type": "string",
|
|
2369
|
+
"description": "Alias for webUrl."
|
|
2370
|
+
}
|
|
2371
|
+
},
|
|
2372
|
+
"children": {
|
|
2373
|
+
"allowed": false,
|
|
2374
|
+
"description": "This component does not render nested child components."
|
|
2375
|
+
},
|
|
2376
|
+
"examples": [
|
|
2377
|
+
{
|
|
2378
|
+
"id": "basic",
|
|
2379
|
+
"title": "Basic usage",
|
|
2380
|
+
"source": {
|
|
2381
|
+
"slex": "0.1",
|
|
2382
|
+
"namespace": "doc_playground_typical",
|
|
2383
|
+
"layout": {
|
|
2384
|
+
"playground:demo": {
|
|
2385
|
+
"title": "Stat Playground",
|
|
2386
|
+
"previewMinHeight": "180px",
|
|
2387
|
+
"source": {
|
|
2388
|
+
"namespace": "inner_stat_demo",
|
|
2389
|
+
"layout": {
|
|
2390
|
+
"stat:value": {
|
|
2391
|
+
"label": "Requests",
|
|
2392
|
+
"value": "1.2k",
|
|
2393
|
+
"unit": "/min"
|
|
2394
|
+
}
|
|
2395
|
+
}
|
|
2396
|
+
}
|
|
2397
|
+
}
|
|
2398
|
+
}
|
|
2399
|
+
}
|
|
2400
|
+
}
|
|
2401
|
+
],
|
|
2402
|
+
"docs": {
|
|
2403
|
+
"href": "/docs/components/playground",
|
|
2404
|
+
"anchors": {
|
|
2405
|
+
"api": "playground-api-reference",
|
|
2406
|
+
"examples": "playground-canonical-example"
|
|
2407
|
+
}
|
|
2408
|
+
},
|
|
2409
|
+
"jsonSchema": {
|
|
2410
|
+
"type": "object",
|
|
2411
|
+
"additionalProperties": true,
|
|
2412
|
+
"properties": {
|
|
2413
|
+
"source": {
|
|
2414
|
+
"anyOf": [
|
|
2415
|
+
{
|
|
2416
|
+
"type": "object",
|
|
2417
|
+
"additionalProperties": true
|
|
2418
|
+
},
|
|
2419
|
+
{
|
|
2420
|
+
"type": "string"
|
|
2421
|
+
}
|
|
2422
|
+
],
|
|
2423
|
+
"description": "SlexKit or Markdown source to preview."
|
|
2424
|
+
},
|
|
2425
|
+
"sourceType": {
|
|
2426
|
+
"enum": [
|
|
2427
|
+
"slex",
|
|
2428
|
+
"markdown",
|
|
2429
|
+
"auto-markdown"
|
|
2430
|
+
],
|
|
2431
|
+
"description": "Source parser mode.",
|
|
2432
|
+
"default": "slex"
|
|
2433
|
+
},
|
|
2434
|
+
"title": {
|
|
2435
|
+
"type": "string",
|
|
2436
|
+
"description": "Playground title."
|
|
2437
|
+
},
|
|
2438
|
+
"previewAlign": {
|
|
2439
|
+
"enum": [
|
|
2440
|
+
"center",
|
|
2441
|
+
"start"
|
|
2442
|
+
],
|
|
2443
|
+
"description": "Vertical preview alignment in render mode.",
|
|
2444
|
+
"default": "center"
|
|
2445
|
+
},
|
|
2446
|
+
"alignPreview": {
|
|
2447
|
+
"enum": [
|
|
2448
|
+
"center",
|
|
2449
|
+
"start"
|
|
2450
|
+
],
|
|
2451
|
+
"description": "Alias for previewAlign."
|
|
2452
|
+
},
|
|
2453
|
+
"previewPlacement": {
|
|
2454
|
+
"enum": [
|
|
2455
|
+
"center",
|
|
2456
|
+
"start"
|
|
2457
|
+
],
|
|
2458
|
+
"description": "Alias for previewAlign."
|
|
2459
|
+
},
|
|
2460
|
+
"previewMinHeight": {
|
|
2461
|
+
"type": "string",
|
|
2462
|
+
"description": "Minimum preview area height."
|
|
2463
|
+
},
|
|
2464
|
+
"previewMaxWidth": {
|
|
2465
|
+
"type": "string",
|
|
2466
|
+
"description": "Maximum preview content width."
|
|
2467
|
+
},
|
|
2468
|
+
"themeToggle": {
|
|
2469
|
+
"type": "boolean",
|
|
2470
|
+
"description": "Show the theme toggle action.",
|
|
2471
|
+
"default": false
|
|
2472
|
+
},
|
|
2473
|
+
"showThemeToggle": {
|
|
2474
|
+
"type": "boolean",
|
|
2475
|
+
"description": "Alias for themeToggle.",
|
|
2476
|
+
"default": false
|
|
2477
|
+
},
|
|
2478
|
+
"enableThemeToggle": {
|
|
2479
|
+
"type": "boolean",
|
|
2480
|
+
"description": "Alias for themeToggle.",
|
|
2481
|
+
"default": false
|
|
2482
|
+
},
|
|
2483
|
+
"themeLabel": {
|
|
2484
|
+
"type": "string",
|
|
2485
|
+
"description": "Accessible label for the theme toggle action."
|
|
2486
|
+
},
|
|
2487
|
+
"themeToggleLabel": {
|
|
2488
|
+
"type": "string",
|
|
2489
|
+
"description": "Alias for themeLabel."
|
|
2490
|
+
},
|
|
2491
|
+
"sourceTypeLabel": {
|
|
2492
|
+
"type": "string",
|
|
2493
|
+
"description": "Accessible label for the source type selector."
|
|
2494
|
+
},
|
|
2495
|
+
"copyLabel": {
|
|
2496
|
+
"type": "string",
|
|
2497
|
+
"description": "Accessible label for the copy source action."
|
|
2498
|
+
},
|
|
2499
|
+
"openWebLabel": {
|
|
2500
|
+
"type": "string",
|
|
2501
|
+
"description": "Accessible label for opening the source in the standalone playground."
|
|
2502
|
+
},
|
|
2503
|
+
"webUrl": {
|
|
2504
|
+
"type": "string",
|
|
2505
|
+
"description": "Standalone playground URL used by the open action."
|
|
2506
|
+
},
|
|
2507
|
+
"playgroundUrl": {
|
|
2508
|
+
"type": "string",
|
|
2509
|
+
"description": "Alias for webUrl."
|
|
2510
|
+
}
|
|
2511
|
+
},
|
|
2512
|
+
"required": [],
|
|
2513
|
+
"patternProperties": {
|
|
2514
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2515
|
+
"$ref": "#/$defs/componentNode"
|
|
2516
|
+
},
|
|
2517
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2518
|
+
"type": "string",
|
|
2519
|
+
"description": "Write-pipe event handler expression.",
|
|
2520
|
+
"xSlexkitExpressionKind": "write"
|
|
2521
|
+
}
|
|
2522
|
+
}
|
|
2523
|
+
},
|
|
2524
|
+
"hash": "7d8e1d36"
|
|
2525
|
+
},
|
|
2526
|
+
{
|
|
2527
|
+
"type": "progress",
|
|
2528
|
+
"category": "Feedback",
|
|
2529
|
+
"status": "ready",
|
|
2530
|
+
"state": "readable",
|
|
2531
|
+
"since": "0.1.0",
|
|
2532
|
+
"title": "Progress",
|
|
2533
|
+
"summary": "Progress bar.",
|
|
2534
|
+
"description": "Use progress to show completion as a percentage.",
|
|
2535
|
+
"props": {
|
|
2536
|
+
"value": {
|
|
2537
|
+
"type": "number",
|
|
2538
|
+
"default": 0,
|
|
2539
|
+
"dynamic": true,
|
|
2540
|
+
"description": "Progress percentage from 0 to 100."
|
|
2541
|
+
},
|
|
2542
|
+
"label": {
|
|
2543
|
+
"type": "string",
|
|
2544
|
+
"dynamic": true,
|
|
2545
|
+
"description": "Progress label."
|
|
2546
|
+
},
|
|
2547
|
+
"icon": {
|
|
2548
|
+
"type": "string",
|
|
2549
|
+
"description": "Icon name shown before the label."
|
|
2550
|
+
},
|
|
2551
|
+
"indeterminate": {
|
|
2552
|
+
"type": "boolean",
|
|
2553
|
+
"default": false,
|
|
2554
|
+
"dynamic": true,
|
|
2555
|
+
"description": "Render an indeterminate progress state without aria-valuenow."
|
|
2556
|
+
}
|
|
2557
|
+
},
|
|
2558
|
+
"children": {
|
|
2559
|
+
"allowed": false,
|
|
2560
|
+
"description": "This component does not render nested child components."
|
|
2561
|
+
},
|
|
2562
|
+
"examples": [
|
|
2563
|
+
{
|
|
2564
|
+
"id": "basic",
|
|
2565
|
+
"title": "Basic usage",
|
|
2566
|
+
"source": {
|
|
2567
|
+
"slex": "0.1",
|
|
2568
|
+
"namespace": "doc_progress_typical",
|
|
2569
|
+
"layout": {
|
|
2570
|
+
"progress:build": {
|
|
2571
|
+
"label": "Build progress",
|
|
2572
|
+
"icon": "gear-six",
|
|
2573
|
+
"value": 64
|
|
2574
|
+
}
|
|
2575
|
+
}
|
|
2576
|
+
}
|
|
2577
|
+
}
|
|
2578
|
+
],
|
|
2579
|
+
"docs": {
|
|
2580
|
+
"href": "/docs/components/progress",
|
|
2581
|
+
"anchors": {
|
|
2582
|
+
"api": "progress-api-reference",
|
|
2583
|
+
"examples": "progress-canonical-example"
|
|
2584
|
+
}
|
|
2585
|
+
},
|
|
2586
|
+
"jsonSchema": {
|
|
2587
|
+
"type": "object",
|
|
2588
|
+
"additionalProperties": true,
|
|
2589
|
+
"properties": {
|
|
2590
|
+
"value": {
|
|
2591
|
+
"type": "number",
|
|
2592
|
+
"description": "Progress percentage from 0 to 100.",
|
|
2593
|
+
"default": 0
|
|
2594
|
+
},
|
|
2595
|
+
"$value": {
|
|
2596
|
+
"type": "string",
|
|
2597
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
2598
|
+
"xSlexkitExpressionKind": "read"
|
|
2599
|
+
},
|
|
2600
|
+
"label": {
|
|
2601
|
+
"type": "string",
|
|
2602
|
+
"description": "Progress label."
|
|
2603
|
+
},
|
|
2604
|
+
"$label": {
|
|
2605
|
+
"type": "string",
|
|
2606
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
2607
|
+
"xSlexkitExpressionKind": "read"
|
|
2608
|
+
},
|
|
2609
|
+
"icon": {
|
|
2610
|
+
"type": "string",
|
|
2611
|
+
"description": "Icon name shown before the label."
|
|
2612
|
+
},
|
|
2613
|
+
"indeterminate": {
|
|
2614
|
+
"type": "boolean",
|
|
2615
|
+
"description": "Render an indeterminate progress state without aria-valuenow.",
|
|
2616
|
+
"default": false
|
|
2617
|
+
},
|
|
2618
|
+
"$indeterminate": {
|
|
2619
|
+
"type": "string",
|
|
2620
|
+
"description": "Dynamic expression for 'indeterminate'. Evaluated with the Slex logic profile.",
|
|
2621
|
+
"xSlexkitExpressionKind": "read"
|
|
2622
|
+
}
|
|
2623
|
+
},
|
|
2624
|
+
"required": [],
|
|
2625
|
+
"patternProperties": {
|
|
2626
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2627
|
+
"$ref": "#/$defs/componentNode"
|
|
2628
|
+
},
|
|
2629
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2630
|
+
"type": "string",
|
|
2631
|
+
"description": "Write-pipe event handler expression.",
|
|
2632
|
+
"xSlexkitExpressionKind": "write"
|
|
2633
|
+
}
|
|
2634
|
+
}
|
|
2635
|
+
},
|
|
2636
|
+
"hash": "706fde5e"
|
|
2637
|
+
},
|
|
2638
|
+
{
|
|
2639
|
+
"type": "radio-group",
|
|
2640
|
+
"category": "Input",
|
|
2641
|
+
"status": "ready",
|
|
2642
|
+
"state": "value",
|
|
2643
|
+
"since": "0.1.0",
|
|
2644
|
+
"title": "Radio Group",
|
|
2645
|
+
"summary": "Single-choice option group.",
|
|
2646
|
+
"description": "Use radio-group for one-of-many choices.",
|
|
2647
|
+
"props": {
|
|
2648
|
+
"value": {
|
|
2649
|
+
"type": "string",
|
|
2650
|
+
"dynamic": true,
|
|
2651
|
+
"description": "Current selected value."
|
|
2652
|
+
},
|
|
2653
|
+
"label": {
|
|
2654
|
+
"type": "string",
|
|
2655
|
+
"dynamic": true,
|
|
2656
|
+
"description": "Group label."
|
|
2657
|
+
},
|
|
2658
|
+
"icon": {
|
|
2659
|
+
"type": "string",
|
|
2660
|
+
"description": "Icon name shown before the group label."
|
|
2661
|
+
},
|
|
2662
|
+
"options": {
|
|
2663
|
+
"type": "array",
|
|
2664
|
+
"description": "Options with label, value, and optional icon."
|
|
2665
|
+
},
|
|
2666
|
+
"options[].icon": {
|
|
2667
|
+
"type": "string",
|
|
2668
|
+
"description": "Icon name shown before a single option label."
|
|
2669
|
+
},
|
|
2670
|
+
"options[].description": {
|
|
2671
|
+
"type": "string",
|
|
2672
|
+
"description": "Secondary text shown below the option label."
|
|
2673
|
+
},
|
|
2674
|
+
"disabled": {
|
|
2675
|
+
"type": "boolean",
|
|
2676
|
+
"default": false,
|
|
2677
|
+
"dynamic": true,
|
|
2678
|
+
"description": "Disable every radio option in the group."
|
|
2679
|
+
},
|
|
2680
|
+
"orientation": {
|
|
2681
|
+
"type": "string",
|
|
2682
|
+
"values": [
|
|
2683
|
+
"vertical",
|
|
2684
|
+
"horizontal"
|
|
2685
|
+
],
|
|
2686
|
+
"default": "vertical",
|
|
2687
|
+
"description": "Radio option layout direction."
|
|
2688
|
+
},
|
|
2689
|
+
"variant": {
|
|
2690
|
+
"type": "string",
|
|
2691
|
+
"values": [
|
|
2692
|
+
"list"
|
|
2693
|
+
],
|
|
2694
|
+
"description": "Use list for full-row option surfaces in ToolHost decision cards."
|
|
2695
|
+
},
|
|
2696
|
+
"haptic": {
|
|
2697
|
+
"type": "boolean",
|
|
2698
|
+
"default": true,
|
|
2699
|
+
"description": "Enable vibration feedback on supported devices."
|
|
2700
|
+
},
|
|
2701
|
+
"haptics": {
|
|
2702
|
+
"type": "boolean",
|
|
2703
|
+
"default": true,
|
|
2704
|
+
"description": "Alias for haptic."
|
|
2705
|
+
},
|
|
2706
|
+
"name": {
|
|
2707
|
+
"type": "string",
|
|
2708
|
+
"description": "Native radio group name shared by options."
|
|
2709
|
+
},
|
|
2710
|
+
"onchange": {
|
|
2711
|
+
"type": "write-expression",
|
|
2712
|
+
"description": "Write expression invoked when selection changes."
|
|
2713
|
+
}
|
|
2714
|
+
},
|
|
2715
|
+
"children": {
|
|
2716
|
+
"allowed": false,
|
|
2717
|
+
"description": "This component does not render nested child components."
|
|
2718
|
+
},
|
|
2719
|
+
"examples": [
|
|
2720
|
+
{
|
|
2721
|
+
"id": "basic",
|
|
2722
|
+
"title": "Basic usage",
|
|
2723
|
+
"source": {
|
|
2724
|
+
"slex": "0.1",
|
|
2725
|
+
"namespace": "doc_radio_group_typical",
|
|
2726
|
+
"layout": {
|
|
2727
|
+
"radio-group:mode": {
|
|
2728
|
+
"label": "Mode",
|
|
2729
|
+
"icon": "sliders-horizontal",
|
|
2730
|
+
"value": "auto",
|
|
2731
|
+
"options": [
|
|
2732
|
+
{
|
|
2733
|
+
"label": "Auto",
|
|
2734
|
+
"value": "auto",
|
|
2735
|
+
"icon": "sparkle"
|
|
2736
|
+
},
|
|
2737
|
+
{
|
|
2738
|
+
"label": "Manual",
|
|
2739
|
+
"value": "manual",
|
|
2740
|
+
"icon": "wrench"
|
|
2741
|
+
}
|
|
2742
|
+
]
|
|
2743
|
+
}
|
|
2744
|
+
}
|
|
2745
|
+
}
|
|
2746
|
+
}
|
|
2747
|
+
],
|
|
2748
|
+
"docs": {
|
|
2749
|
+
"href": "/docs/components/radio-group",
|
|
2750
|
+
"anchors": {
|
|
2751
|
+
"api": "radio-group-api-reference",
|
|
2752
|
+
"examples": "radio-group-canonical-example"
|
|
2753
|
+
}
|
|
2754
|
+
},
|
|
2755
|
+
"jsonSchema": {
|
|
2756
|
+
"type": "object",
|
|
2757
|
+
"additionalProperties": true,
|
|
2758
|
+
"properties": {
|
|
2759
|
+
"value": {
|
|
2760
|
+
"type": "string",
|
|
2761
|
+
"description": "Current selected value."
|
|
2762
|
+
},
|
|
2763
|
+
"$value": {
|
|
2764
|
+
"type": "string",
|
|
2765
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
2766
|
+
"xSlexkitExpressionKind": "read"
|
|
2767
|
+
},
|
|
2768
|
+
"label": {
|
|
2769
|
+
"type": "string",
|
|
2770
|
+
"description": "Group label."
|
|
2771
|
+
},
|
|
2772
|
+
"$label": {
|
|
2773
|
+
"type": "string",
|
|
2774
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
2775
|
+
"xSlexkitExpressionKind": "read"
|
|
2776
|
+
},
|
|
2777
|
+
"icon": {
|
|
2778
|
+
"type": "string",
|
|
2779
|
+
"description": "Icon name shown before the group label."
|
|
2780
|
+
},
|
|
2781
|
+
"options": {
|
|
2782
|
+
"type": "array",
|
|
2783
|
+
"description": "Options with label, value, and optional icon."
|
|
2784
|
+
},
|
|
2785
|
+
"options[].icon": {
|
|
2786
|
+
"type": "string",
|
|
2787
|
+
"description": "Icon name shown before a single option label."
|
|
2788
|
+
},
|
|
2789
|
+
"options[].description": {
|
|
2790
|
+
"type": "string",
|
|
2791
|
+
"description": "Secondary text shown below the option label."
|
|
2792
|
+
},
|
|
2793
|
+
"disabled": {
|
|
2794
|
+
"type": "boolean",
|
|
2795
|
+
"description": "Disable every radio option in the group.",
|
|
2796
|
+
"default": false
|
|
2797
|
+
},
|
|
2798
|
+
"$disabled": {
|
|
2799
|
+
"type": "string",
|
|
2800
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
2801
|
+
"xSlexkitExpressionKind": "read"
|
|
2802
|
+
},
|
|
2803
|
+
"orientation": {
|
|
2804
|
+
"enum": [
|
|
2805
|
+
"vertical",
|
|
2806
|
+
"horizontal"
|
|
2807
|
+
],
|
|
2808
|
+
"description": "Radio option layout direction.",
|
|
2809
|
+
"default": "vertical"
|
|
2810
|
+
},
|
|
2811
|
+
"variant": {
|
|
2812
|
+
"enum": [
|
|
2813
|
+
"list"
|
|
2814
|
+
],
|
|
2815
|
+
"description": "Use list for full-row option surfaces in ToolHost decision cards."
|
|
2816
|
+
},
|
|
2817
|
+
"haptic": {
|
|
2818
|
+
"type": "boolean",
|
|
2819
|
+
"description": "Enable vibration feedback on supported devices.",
|
|
2820
|
+
"default": true
|
|
2821
|
+
},
|
|
2822
|
+
"haptics": {
|
|
2823
|
+
"type": "boolean",
|
|
2824
|
+
"description": "Alias for haptic.",
|
|
2825
|
+
"default": true
|
|
2826
|
+
},
|
|
2827
|
+
"name": {
|
|
2828
|
+
"type": "string",
|
|
2829
|
+
"description": "Native radio group name shared by options."
|
|
2830
|
+
},
|
|
2831
|
+
"onchange": {
|
|
2832
|
+
"type": "string",
|
|
2833
|
+
"xSlexkitExpressionKind": "write",
|
|
2834
|
+
"description": "Write expression invoked when selection changes."
|
|
2835
|
+
}
|
|
2836
|
+
},
|
|
2837
|
+
"required": [],
|
|
2838
|
+
"patternProperties": {
|
|
2839
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2840
|
+
"$ref": "#/$defs/componentNode"
|
|
2841
|
+
},
|
|
2842
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2843
|
+
"type": "string",
|
|
2844
|
+
"description": "Write-pipe event handler expression.",
|
|
2845
|
+
"xSlexkitExpressionKind": "write"
|
|
2846
|
+
}
|
|
2847
|
+
}
|
|
2848
|
+
},
|
|
2849
|
+
"hash": "e5ab8c91"
|
|
2850
|
+
},
|
|
2851
|
+
{
|
|
2852
|
+
"type": "row",
|
|
2853
|
+
"category": "Layout",
|
|
2854
|
+
"status": "ready",
|
|
2855
|
+
"state": "none",
|
|
2856
|
+
"since": "0.1.0",
|
|
2857
|
+
"title": "Row",
|
|
2858
|
+
"summary": "Horizontal layout container.",
|
|
2859
|
+
"description": "Use row to place child components horizontally in field order.",
|
|
2860
|
+
"props": {
|
|
2861
|
+
"justify": {
|
|
2862
|
+
"type": "string",
|
|
2863
|
+
"values": [
|
|
2864
|
+
"start",
|
|
2865
|
+
"center",
|
|
2866
|
+
"end",
|
|
2867
|
+
"space-between",
|
|
2868
|
+
"space-around"
|
|
2869
|
+
],
|
|
2870
|
+
"default": "start",
|
|
2871
|
+
"description": "Main-axis distribution."
|
|
2872
|
+
},
|
|
2873
|
+
"align": {
|
|
2874
|
+
"type": "string",
|
|
2875
|
+
"values": [
|
|
2876
|
+
"start",
|
|
2877
|
+
"center",
|
|
2878
|
+
"end",
|
|
2879
|
+
"baseline",
|
|
2880
|
+
"stretch"
|
|
2881
|
+
],
|
|
2882
|
+
"default": "center",
|
|
2883
|
+
"description": "Cross-axis alignment."
|
|
2884
|
+
},
|
|
2885
|
+
"gap": {
|
|
2886
|
+
"type": "string",
|
|
2887
|
+
"dynamic": true,
|
|
2888
|
+
"description": "Spacing between children."
|
|
2889
|
+
},
|
|
2890
|
+
"variant": {
|
|
2891
|
+
"type": "string",
|
|
2892
|
+
"values": [
|
|
2893
|
+
"actions"
|
|
2894
|
+
],
|
|
2895
|
+
"description": "Use actions for compact ToolHost action rows."
|
|
2896
|
+
}
|
|
2897
|
+
},
|
|
2898
|
+
"children": {
|
|
2899
|
+
"allowed": true,
|
|
2900
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
2901
|
+
},
|
|
2902
|
+
"examples": [
|
|
2903
|
+
{
|
|
2904
|
+
"id": "basic",
|
|
2905
|
+
"title": "Basic usage",
|
|
2906
|
+
"source": {
|
|
2907
|
+
"slex": "0.1",
|
|
2908
|
+
"namespace": "doc_row_typical",
|
|
2909
|
+
"layout": {
|
|
2910
|
+
"row:toolbar": {
|
|
2911
|
+
"justify": "space-between",
|
|
2912
|
+
"text:title": {
|
|
2913
|
+
"text": "Runtime status"
|
|
2914
|
+
},
|
|
2915
|
+
"button:refresh": {
|
|
2916
|
+
"label": "Refresh"
|
|
2917
|
+
}
|
|
2918
|
+
}
|
|
2919
|
+
}
|
|
2920
|
+
}
|
|
2921
|
+
}
|
|
2922
|
+
],
|
|
2923
|
+
"docs": {
|
|
2924
|
+
"href": "/docs/components/row",
|
|
2925
|
+
"anchors": {
|
|
2926
|
+
"api": "row-api-reference",
|
|
2927
|
+
"examples": "row-canonical-example"
|
|
2928
|
+
}
|
|
2929
|
+
},
|
|
2930
|
+
"jsonSchema": {
|
|
2931
|
+
"type": "object",
|
|
2932
|
+
"additionalProperties": true,
|
|
2933
|
+
"properties": {
|
|
2934
|
+
"justify": {
|
|
2935
|
+
"enum": [
|
|
2936
|
+
"start",
|
|
2937
|
+
"center",
|
|
2938
|
+
"end",
|
|
2939
|
+
"space-between",
|
|
2940
|
+
"space-around"
|
|
2941
|
+
],
|
|
2942
|
+
"description": "Main-axis distribution.",
|
|
2943
|
+
"default": "start"
|
|
2944
|
+
},
|
|
2945
|
+
"align": {
|
|
2946
|
+
"enum": [
|
|
2947
|
+
"start",
|
|
2948
|
+
"center",
|
|
2949
|
+
"end",
|
|
2950
|
+
"baseline",
|
|
2951
|
+
"stretch"
|
|
2952
|
+
],
|
|
2953
|
+
"description": "Cross-axis alignment.",
|
|
2954
|
+
"default": "center"
|
|
2955
|
+
},
|
|
2956
|
+
"gap": {
|
|
2957
|
+
"type": "string",
|
|
2958
|
+
"description": "Spacing between children."
|
|
2959
|
+
},
|
|
2960
|
+
"$gap": {
|
|
2961
|
+
"type": "string",
|
|
2962
|
+
"description": "Dynamic expression for 'gap'. Evaluated with the Slex logic profile.",
|
|
2963
|
+
"xSlexkitExpressionKind": "read"
|
|
2964
|
+
},
|
|
2965
|
+
"variant": {
|
|
2966
|
+
"enum": [
|
|
2967
|
+
"actions"
|
|
2968
|
+
],
|
|
2969
|
+
"description": "Use actions for compact ToolHost action rows."
|
|
2970
|
+
}
|
|
2971
|
+
},
|
|
2972
|
+
"required": [],
|
|
2973
|
+
"patternProperties": {
|
|
2974
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
2975
|
+
"$ref": "#/$defs/componentNode"
|
|
2976
|
+
},
|
|
2977
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
2978
|
+
"type": "string",
|
|
2979
|
+
"description": "Write-pipe event handler expression.",
|
|
2980
|
+
"xSlexkitExpressionKind": "write"
|
|
2981
|
+
}
|
|
2982
|
+
}
|
|
2983
|
+
},
|
|
2984
|
+
"hash": "4c0190e0"
|
|
2985
|
+
},
|
|
2986
|
+
{
|
|
2987
|
+
"type": "section",
|
|
2988
|
+
"category": "Content",
|
|
2989
|
+
"status": "ready",
|
|
2990
|
+
"state": "readable",
|
|
2991
|
+
"since": "0.1.0",
|
|
2992
|
+
"title": "Section",
|
|
2993
|
+
"summary": "Page section with optional heading chrome.",
|
|
2994
|
+
"description": "Use section to group page content with title, subtitle, and optional action link.",
|
|
2995
|
+
"props": {
|
|
2996
|
+
"title": {
|
|
2997
|
+
"type": "string",
|
|
2998
|
+
"dynamic": true,
|
|
2999
|
+
"description": "Section title."
|
|
3000
|
+
},
|
|
3001
|
+
"icon": {
|
|
3002
|
+
"type": "string",
|
|
3003
|
+
"description": "Icon name shown before the title."
|
|
3004
|
+
},
|
|
3005
|
+
"eyebrow": {
|
|
3006
|
+
"type": "string",
|
|
3007
|
+
"dynamic": true,
|
|
3008
|
+
"description": "Small label above the title."
|
|
3009
|
+
},
|
|
3010
|
+
"subtitle": {
|
|
3011
|
+
"type": "string",
|
|
3012
|
+
"dynamic": true,
|
|
3013
|
+
"description": "Subtitle text below the title."
|
|
3014
|
+
},
|
|
3015
|
+
"actionLabel": {
|
|
3016
|
+
"type": "string",
|
|
3017
|
+
"dynamic": true,
|
|
3018
|
+
"description": "Optional action link label."
|
|
3019
|
+
},
|
|
3020
|
+
"actionHref": {
|
|
3021
|
+
"type": "string",
|
|
3022
|
+
"description": "Optional action link target."
|
|
3023
|
+
}
|
|
3024
|
+
},
|
|
3025
|
+
"children": {
|
|
3026
|
+
"allowed": true,
|
|
3027
|
+
"description": "Nested component fields are rendered as child content in field order."
|
|
3028
|
+
},
|
|
3029
|
+
"examples": [
|
|
3030
|
+
{
|
|
3031
|
+
"id": "basic",
|
|
3032
|
+
"title": "Basic usage",
|
|
3033
|
+
"source": {
|
|
3034
|
+
"slex": "0.1",
|
|
3035
|
+
"namespace": "doc_section_typical",
|
|
3036
|
+
"layout": {
|
|
3037
|
+
"section:overview": {
|
|
3038
|
+
"eyebrow": "Dashboard",
|
|
3039
|
+
"title": "Runtime overview",
|
|
3040
|
+
"icon": "chart-bar",
|
|
3041
|
+
"subtitle": "This section groups the most important state.",
|
|
3042
|
+
"stat:latency": {
|
|
3043
|
+
"label": "Latency",
|
|
3044
|
+
"value": "42",
|
|
3045
|
+
"unit": "ms"
|
|
3046
|
+
}
|
|
3047
|
+
}
|
|
3048
|
+
}
|
|
3049
|
+
}
|
|
3050
|
+
}
|
|
3051
|
+
],
|
|
3052
|
+
"docs": {
|
|
3053
|
+
"href": "/docs/components/section",
|
|
3054
|
+
"anchors": {
|
|
3055
|
+
"api": "section-api-reference",
|
|
3056
|
+
"examples": "section-canonical-example"
|
|
3057
|
+
}
|
|
3058
|
+
},
|
|
3059
|
+
"jsonSchema": {
|
|
3060
|
+
"type": "object",
|
|
3061
|
+
"additionalProperties": true,
|
|
3062
|
+
"properties": {
|
|
3063
|
+
"title": {
|
|
3064
|
+
"type": "string",
|
|
3065
|
+
"description": "Section title."
|
|
3066
|
+
},
|
|
3067
|
+
"$title": {
|
|
3068
|
+
"type": "string",
|
|
3069
|
+
"description": "Dynamic expression for 'title'. Evaluated with the Slex logic profile.",
|
|
3070
|
+
"xSlexkitExpressionKind": "read"
|
|
3071
|
+
},
|
|
3072
|
+
"icon": {
|
|
3073
|
+
"type": "string",
|
|
3074
|
+
"description": "Icon name shown before the title."
|
|
3075
|
+
},
|
|
3076
|
+
"eyebrow": {
|
|
3077
|
+
"type": "string",
|
|
3078
|
+
"description": "Small label above the title."
|
|
3079
|
+
},
|
|
3080
|
+
"$eyebrow": {
|
|
3081
|
+
"type": "string",
|
|
3082
|
+
"description": "Dynamic expression for 'eyebrow'. Evaluated with the Slex logic profile.",
|
|
3083
|
+
"xSlexkitExpressionKind": "read"
|
|
3084
|
+
},
|
|
3085
|
+
"subtitle": {
|
|
3086
|
+
"type": "string",
|
|
3087
|
+
"description": "Subtitle text below the title."
|
|
3088
|
+
},
|
|
3089
|
+
"$subtitle": {
|
|
3090
|
+
"type": "string",
|
|
3091
|
+
"description": "Dynamic expression for 'subtitle'. Evaluated with the Slex logic profile.",
|
|
3092
|
+
"xSlexkitExpressionKind": "read"
|
|
3093
|
+
},
|
|
3094
|
+
"actionLabel": {
|
|
3095
|
+
"type": "string",
|
|
3096
|
+
"description": "Optional action link label."
|
|
3097
|
+
},
|
|
3098
|
+
"$actionLabel": {
|
|
3099
|
+
"type": "string",
|
|
3100
|
+
"description": "Dynamic expression for 'actionLabel'. Evaluated with the Slex logic profile.",
|
|
3101
|
+
"xSlexkitExpressionKind": "read"
|
|
3102
|
+
},
|
|
3103
|
+
"actionHref": {
|
|
3104
|
+
"type": "string",
|
|
3105
|
+
"description": "Optional action link target."
|
|
3106
|
+
}
|
|
3107
|
+
},
|
|
3108
|
+
"required": [],
|
|
3109
|
+
"patternProperties": {
|
|
3110
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3111
|
+
"$ref": "#/$defs/componentNode"
|
|
3112
|
+
},
|
|
3113
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3114
|
+
"type": "string",
|
|
3115
|
+
"description": "Write-pipe event handler expression.",
|
|
3116
|
+
"xSlexkitExpressionKind": "write"
|
|
3117
|
+
}
|
|
3118
|
+
}
|
|
3119
|
+
},
|
|
3120
|
+
"hash": "d2fe0297"
|
|
3121
|
+
},
|
|
3122
|
+
{
|
|
3123
|
+
"type": "select",
|
|
3124
|
+
"category": "Input",
|
|
3125
|
+
"status": "ready",
|
|
3126
|
+
"state": "value",
|
|
3127
|
+
"since": "0.1.0",
|
|
3128
|
+
"title": "Select",
|
|
3129
|
+
"summary": "Dropdown selection input.",
|
|
3130
|
+
"description": "Use select for compact single-choice selection from an option list.",
|
|
3131
|
+
"props": {
|
|
3132
|
+
"label": {
|
|
3133
|
+
"type": "string",
|
|
3134
|
+
"dynamic": true,
|
|
3135
|
+
"description": "Select label."
|
|
3136
|
+
},
|
|
3137
|
+
"icon": {
|
|
3138
|
+
"type": "string",
|
|
3139
|
+
"description": "Icon name shown before the top label."
|
|
3140
|
+
},
|
|
3141
|
+
"value": {
|
|
3142
|
+
"type": "string",
|
|
3143
|
+
"dynamic": true,
|
|
3144
|
+
"description": "Current selected value."
|
|
3145
|
+
},
|
|
3146
|
+
"options": {
|
|
3147
|
+
"type": "array",
|
|
3148
|
+
"description": "Options with label, value, and optional icon."
|
|
3149
|
+
},
|
|
3150
|
+
"options[].icon": {
|
|
3151
|
+
"type": "string",
|
|
3152
|
+
"description": "Icon name shown before an option label."
|
|
3153
|
+
},
|
|
3154
|
+
"placeholder": {
|
|
3155
|
+
"type": "string",
|
|
3156
|
+
"description": "Placeholder shown when no value is selected."
|
|
3157
|
+
},
|
|
3158
|
+
"disabled": {
|
|
3159
|
+
"type": "boolean",
|
|
3160
|
+
"default": false,
|
|
3161
|
+
"dynamic": true,
|
|
3162
|
+
"description": "Disable the select trigger and native select."
|
|
3163
|
+
},
|
|
3164
|
+
"required": {
|
|
3165
|
+
"type": "boolean",
|
|
3166
|
+
"default": false,
|
|
3167
|
+
"dynamic": true,
|
|
3168
|
+
"description": "Require a non-placeholder value in the native select."
|
|
3169
|
+
},
|
|
3170
|
+
"variant": {
|
|
3171
|
+
"type": "string",
|
|
3172
|
+
"values": [
|
|
3173
|
+
"default",
|
|
3174
|
+
"toolbar"
|
|
3175
|
+
],
|
|
3176
|
+
"default": "default",
|
|
3177
|
+
"description": "Select surface variant."
|
|
3178
|
+
},
|
|
3179
|
+
"onchange": {
|
|
3180
|
+
"type": "write-expression",
|
|
3181
|
+
"description": "Write expression invoked when selection changes."
|
|
3182
|
+
}
|
|
3183
|
+
},
|
|
3184
|
+
"children": {
|
|
3185
|
+
"allowed": false,
|
|
3186
|
+
"description": "This component does not render nested child components."
|
|
3187
|
+
},
|
|
3188
|
+
"examples": [
|
|
3189
|
+
{
|
|
3190
|
+
"id": "basic",
|
|
3191
|
+
"title": "Basic usage",
|
|
3192
|
+
"source": {
|
|
3193
|
+
"slex": "0.1",
|
|
3194
|
+
"namespace": "doc_select_typical",
|
|
3195
|
+
"layout": {
|
|
3196
|
+
"select:env": {
|
|
3197
|
+
"label": "Environment",
|
|
3198
|
+
"icon": "server",
|
|
3199
|
+
"value": "prod",
|
|
3200
|
+
"options": [
|
|
3201
|
+
{
|
|
3202
|
+
"label": "Development",
|
|
3203
|
+
"value": "dev",
|
|
3204
|
+
"icon": "code"
|
|
3205
|
+
},
|
|
3206
|
+
{
|
|
3207
|
+
"label": "Production",
|
|
3208
|
+
"value": "prod",
|
|
3209
|
+
"icon": "rocket-launch"
|
|
3210
|
+
}
|
|
3211
|
+
]
|
|
3212
|
+
}
|
|
3213
|
+
}
|
|
3214
|
+
}
|
|
3215
|
+
}
|
|
3216
|
+
],
|
|
3217
|
+
"docs": {
|
|
3218
|
+
"href": "/docs/components/select",
|
|
3219
|
+
"anchors": {
|
|
3220
|
+
"api": "select-api-reference",
|
|
3221
|
+
"examples": "select-canonical-example"
|
|
3222
|
+
}
|
|
3223
|
+
},
|
|
3224
|
+
"jsonSchema": {
|
|
3225
|
+
"type": "object",
|
|
3226
|
+
"additionalProperties": true,
|
|
3227
|
+
"properties": {
|
|
3228
|
+
"label": {
|
|
3229
|
+
"type": "string",
|
|
3230
|
+
"description": "Select label."
|
|
3231
|
+
},
|
|
3232
|
+
"$label": {
|
|
3233
|
+
"type": "string",
|
|
3234
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
3235
|
+
"xSlexkitExpressionKind": "read"
|
|
3236
|
+
},
|
|
3237
|
+
"icon": {
|
|
3238
|
+
"type": "string",
|
|
3239
|
+
"description": "Icon name shown before the top label."
|
|
3240
|
+
},
|
|
3241
|
+
"value": {
|
|
3242
|
+
"type": "string",
|
|
3243
|
+
"description": "Current selected value."
|
|
3244
|
+
},
|
|
3245
|
+
"$value": {
|
|
3246
|
+
"type": "string",
|
|
3247
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
3248
|
+
"xSlexkitExpressionKind": "read"
|
|
3249
|
+
},
|
|
3250
|
+
"options": {
|
|
3251
|
+
"type": "array",
|
|
3252
|
+
"description": "Options with label, value, and optional icon."
|
|
3253
|
+
},
|
|
3254
|
+
"options[].icon": {
|
|
3255
|
+
"type": "string",
|
|
3256
|
+
"description": "Icon name shown before an option label."
|
|
3257
|
+
},
|
|
3258
|
+
"placeholder": {
|
|
3259
|
+
"type": "string",
|
|
3260
|
+
"description": "Placeholder shown when no value is selected."
|
|
3261
|
+
},
|
|
3262
|
+
"disabled": {
|
|
3263
|
+
"type": "boolean",
|
|
3264
|
+
"description": "Disable the select trigger and native select.",
|
|
3265
|
+
"default": false
|
|
3266
|
+
},
|
|
3267
|
+
"$disabled": {
|
|
3268
|
+
"type": "string",
|
|
3269
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
3270
|
+
"xSlexkitExpressionKind": "read"
|
|
3271
|
+
},
|
|
3272
|
+
"required": {
|
|
3273
|
+
"type": "boolean",
|
|
3274
|
+
"description": "Require a non-placeholder value in the native select.",
|
|
3275
|
+
"default": false
|
|
3276
|
+
},
|
|
3277
|
+
"$required": {
|
|
3278
|
+
"type": "string",
|
|
3279
|
+
"description": "Dynamic expression for 'required'. Evaluated with the Slex logic profile.",
|
|
3280
|
+
"xSlexkitExpressionKind": "read"
|
|
3281
|
+
},
|
|
3282
|
+
"variant": {
|
|
3283
|
+
"enum": [
|
|
3284
|
+
"default",
|
|
3285
|
+
"toolbar"
|
|
3286
|
+
],
|
|
3287
|
+
"description": "Select surface variant.",
|
|
3288
|
+
"default": "default"
|
|
3289
|
+
},
|
|
3290
|
+
"onchange": {
|
|
3291
|
+
"type": "string",
|
|
3292
|
+
"xSlexkitExpressionKind": "write",
|
|
3293
|
+
"description": "Write expression invoked when selection changes."
|
|
3294
|
+
}
|
|
3295
|
+
},
|
|
3296
|
+
"required": [],
|
|
3297
|
+
"patternProperties": {
|
|
3298
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3299
|
+
"$ref": "#/$defs/componentNode"
|
|
3300
|
+
},
|
|
3301
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3302
|
+
"type": "string",
|
|
3303
|
+
"description": "Write-pipe event handler expression.",
|
|
3304
|
+
"xSlexkitExpressionKind": "write"
|
|
3305
|
+
}
|
|
3306
|
+
}
|
|
3307
|
+
},
|
|
3308
|
+
"hash": "0636d6dd"
|
|
3309
|
+
},
|
|
3310
|
+
{
|
|
3311
|
+
"type": "slider",
|
|
3312
|
+
"category": "Input",
|
|
3313
|
+
"status": "ready",
|
|
3314
|
+
"state": "value",
|
|
3315
|
+
"since": "0.1.0",
|
|
3316
|
+
"title": "Slider",
|
|
3317
|
+
"summary": "Numeric range input.",
|
|
3318
|
+
"description": "Use slider for bounded numeric adjustments such as volume, brightness, or thresholds.",
|
|
3319
|
+
"props": {
|
|
3320
|
+
"label": {
|
|
3321
|
+
"type": "string",
|
|
3322
|
+
"dynamic": true,
|
|
3323
|
+
"description": "Slider label."
|
|
3324
|
+
},
|
|
3325
|
+
"icon": {
|
|
3326
|
+
"type": "string",
|
|
3327
|
+
"description": "Icon name shown before the label."
|
|
3328
|
+
},
|
|
3329
|
+
"value": {
|
|
3330
|
+
"type": "number",
|
|
3331
|
+
"default": 0,
|
|
3332
|
+
"dynamic": true,
|
|
3333
|
+
"description": "Current numeric value."
|
|
3334
|
+
},
|
|
3335
|
+
"min": {
|
|
3336
|
+
"type": "number",
|
|
3337
|
+
"default": 0,
|
|
3338
|
+
"dynamic": true,
|
|
3339
|
+
"description": "Minimum value."
|
|
3340
|
+
},
|
|
3341
|
+
"max": {
|
|
3342
|
+
"type": "number",
|
|
3343
|
+
"default": 100,
|
|
3344
|
+
"dynamic": true,
|
|
3345
|
+
"description": "Maximum value."
|
|
3346
|
+
},
|
|
3347
|
+
"step": {
|
|
3348
|
+
"type": "number",
|
|
3349
|
+
"default": 1,
|
|
3350
|
+
"dynamic": true,
|
|
3351
|
+
"description": "Step interval."
|
|
3352
|
+
},
|
|
3353
|
+
"unit": {
|
|
3354
|
+
"type": "string",
|
|
3355
|
+
"dynamic": true,
|
|
3356
|
+
"description": "Unit shown after the value."
|
|
3357
|
+
},
|
|
3358
|
+
"disabled": {
|
|
3359
|
+
"type": "boolean",
|
|
3360
|
+
"default": false,
|
|
3361
|
+
"dynamic": true,
|
|
3362
|
+
"description": "Disable the range input."
|
|
3363
|
+
},
|
|
3364
|
+
"orientation": {
|
|
3365
|
+
"type": "string",
|
|
3366
|
+
"values": [
|
|
3367
|
+
"horizontal",
|
|
3368
|
+
"vertical"
|
|
3369
|
+
],
|
|
3370
|
+
"default": "horizontal",
|
|
3371
|
+
"description": "Slider orientation metadata used for styling."
|
|
3372
|
+
},
|
|
3373
|
+
"haptic": {
|
|
3374
|
+
"type": "boolean",
|
|
3375
|
+
"default": true,
|
|
3376
|
+
"description": "Enable vibration feedback on supported devices."
|
|
3377
|
+
},
|
|
3378
|
+
"haptics": {
|
|
3379
|
+
"type": "boolean",
|
|
3380
|
+
"default": true,
|
|
3381
|
+
"description": "Alias for haptic."
|
|
3382
|
+
},
|
|
3383
|
+
"onchange": {
|
|
3384
|
+
"type": "write-expression",
|
|
3385
|
+
"description": "Write expression invoked when the value changes."
|
|
3386
|
+
}
|
|
3387
|
+
},
|
|
3388
|
+
"children": {
|
|
3389
|
+
"allowed": false,
|
|
3390
|
+
"description": "This component does not render nested child components."
|
|
3391
|
+
},
|
|
3392
|
+
"examples": [
|
|
3393
|
+
{
|
|
3394
|
+
"id": "basic",
|
|
3395
|
+
"title": "Basic usage",
|
|
3396
|
+
"source": {
|
|
3397
|
+
"slex": "0.1",
|
|
3398
|
+
"namespace": "doc_slider_typical",
|
|
3399
|
+
"layout": {
|
|
3400
|
+
"slider:volume": {
|
|
3401
|
+
"label": "Volume",
|
|
3402
|
+
"icon": "speaker-high",
|
|
3403
|
+
"value": 42,
|
|
3404
|
+
"min": 0,
|
|
3405
|
+
"max": 100,
|
|
3406
|
+
"step": 1,
|
|
3407
|
+
"unit": "%"
|
|
3408
|
+
}
|
|
3409
|
+
}
|
|
3410
|
+
}
|
|
3411
|
+
}
|
|
3412
|
+
],
|
|
3413
|
+
"docs": {
|
|
3414
|
+
"href": "/docs/components/slider",
|
|
3415
|
+
"anchors": {
|
|
3416
|
+
"api": "slider-api-reference",
|
|
3417
|
+
"examples": "slider-canonical-example"
|
|
3418
|
+
}
|
|
3419
|
+
},
|
|
3420
|
+
"jsonSchema": {
|
|
3421
|
+
"type": "object",
|
|
3422
|
+
"additionalProperties": true,
|
|
3423
|
+
"properties": {
|
|
3424
|
+
"label": {
|
|
3425
|
+
"type": "string",
|
|
3426
|
+
"description": "Slider label."
|
|
3427
|
+
},
|
|
3428
|
+
"$label": {
|
|
3429
|
+
"type": "string",
|
|
3430
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
3431
|
+
"xSlexkitExpressionKind": "read"
|
|
3432
|
+
},
|
|
3433
|
+
"icon": {
|
|
3434
|
+
"type": "string",
|
|
3435
|
+
"description": "Icon name shown before the label."
|
|
3436
|
+
},
|
|
3437
|
+
"value": {
|
|
3438
|
+
"type": "number",
|
|
3439
|
+
"description": "Current numeric value.",
|
|
3440
|
+
"default": 0
|
|
3441
|
+
},
|
|
3442
|
+
"$value": {
|
|
3443
|
+
"type": "string",
|
|
3444
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
3445
|
+
"xSlexkitExpressionKind": "read"
|
|
3446
|
+
},
|
|
3447
|
+
"min": {
|
|
3448
|
+
"type": "number",
|
|
3449
|
+
"description": "Minimum value.",
|
|
3450
|
+
"default": 0
|
|
3451
|
+
},
|
|
3452
|
+
"$min": {
|
|
3453
|
+
"type": "string",
|
|
3454
|
+
"description": "Dynamic expression for 'min'. Evaluated with the Slex logic profile.",
|
|
3455
|
+
"xSlexkitExpressionKind": "read"
|
|
3456
|
+
},
|
|
3457
|
+
"max": {
|
|
3458
|
+
"type": "number",
|
|
3459
|
+
"description": "Maximum value.",
|
|
3460
|
+
"default": 100
|
|
3461
|
+
},
|
|
3462
|
+
"$max": {
|
|
3463
|
+
"type": "string",
|
|
3464
|
+
"description": "Dynamic expression for 'max'. Evaluated with the Slex logic profile.",
|
|
3465
|
+
"xSlexkitExpressionKind": "read"
|
|
3466
|
+
},
|
|
3467
|
+
"step": {
|
|
3468
|
+
"type": "number",
|
|
3469
|
+
"description": "Step interval.",
|
|
3470
|
+
"default": 1
|
|
3471
|
+
},
|
|
3472
|
+
"$step": {
|
|
3473
|
+
"type": "string",
|
|
3474
|
+
"description": "Dynamic expression for 'step'. Evaluated with the Slex logic profile.",
|
|
3475
|
+
"xSlexkitExpressionKind": "read"
|
|
3476
|
+
},
|
|
3477
|
+
"unit": {
|
|
3478
|
+
"type": "string",
|
|
3479
|
+
"description": "Unit shown after the value."
|
|
3480
|
+
},
|
|
3481
|
+
"$unit": {
|
|
3482
|
+
"type": "string",
|
|
3483
|
+
"description": "Dynamic expression for 'unit'. Evaluated with the Slex logic profile.",
|
|
3484
|
+
"xSlexkitExpressionKind": "read"
|
|
3485
|
+
},
|
|
3486
|
+
"disabled": {
|
|
3487
|
+
"type": "boolean",
|
|
3488
|
+
"description": "Disable the range input.",
|
|
3489
|
+
"default": false
|
|
3490
|
+
},
|
|
3491
|
+
"$disabled": {
|
|
3492
|
+
"type": "string",
|
|
3493
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
3494
|
+
"xSlexkitExpressionKind": "read"
|
|
3495
|
+
},
|
|
3496
|
+
"orientation": {
|
|
3497
|
+
"enum": [
|
|
3498
|
+
"horizontal",
|
|
3499
|
+
"vertical"
|
|
3500
|
+
],
|
|
3501
|
+
"description": "Slider orientation metadata used for styling.",
|
|
3502
|
+
"default": "horizontal"
|
|
3503
|
+
},
|
|
3504
|
+
"haptic": {
|
|
3505
|
+
"type": "boolean",
|
|
3506
|
+
"description": "Enable vibration feedback on supported devices.",
|
|
3507
|
+
"default": true
|
|
3508
|
+
},
|
|
3509
|
+
"haptics": {
|
|
3510
|
+
"type": "boolean",
|
|
3511
|
+
"description": "Alias for haptic.",
|
|
3512
|
+
"default": true
|
|
3513
|
+
},
|
|
3514
|
+
"onchange": {
|
|
3515
|
+
"type": "string",
|
|
3516
|
+
"xSlexkitExpressionKind": "write",
|
|
3517
|
+
"description": "Write expression invoked when the value changes."
|
|
3518
|
+
}
|
|
3519
|
+
},
|
|
3520
|
+
"required": [],
|
|
3521
|
+
"patternProperties": {
|
|
3522
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3523
|
+
"$ref": "#/$defs/componentNode"
|
|
3524
|
+
},
|
|
3525
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3526
|
+
"type": "string",
|
|
3527
|
+
"description": "Write-pipe event handler expression.",
|
|
3528
|
+
"xSlexkitExpressionKind": "write"
|
|
3529
|
+
}
|
|
3530
|
+
}
|
|
3531
|
+
},
|
|
3532
|
+
"hash": "490f7f36"
|
|
3533
|
+
},
|
|
3534
|
+
{
|
|
3535
|
+
"type": "stat",
|
|
3536
|
+
"category": "Display",
|
|
3537
|
+
"status": "ready",
|
|
3538
|
+
"state": "readable",
|
|
3539
|
+
"since": "0.1.0",
|
|
3540
|
+
"title": "Stat",
|
|
3541
|
+
"summary": "Metric display.",
|
|
3542
|
+
"description": "Use stat to present a labeled metric value with optional unit and semantic tone.",
|
|
3543
|
+
"props": {
|
|
3544
|
+
"label": {
|
|
3545
|
+
"type": "string",
|
|
3546
|
+
"dynamic": true,
|
|
3547
|
+
"description": "Metric label."
|
|
3548
|
+
},
|
|
3549
|
+
"icon": {
|
|
3550
|
+
"type": "string",
|
|
3551
|
+
"description": "Icon name shown before the label."
|
|
3552
|
+
},
|
|
3553
|
+
"value": {
|
|
3554
|
+
"type": "string | number",
|
|
3555
|
+
"dynamic": true,
|
|
3556
|
+
"description": "Metric value."
|
|
3557
|
+
},
|
|
3558
|
+
"unit": {
|
|
3559
|
+
"type": "string",
|
|
3560
|
+
"dynamic": true,
|
|
3561
|
+
"description": "Unit shown after the value."
|
|
3562
|
+
},
|
|
3563
|
+
"tone": {
|
|
3564
|
+
"type": "string",
|
|
3565
|
+
"values": [
|
|
3566
|
+
"info",
|
|
3567
|
+
"success",
|
|
3568
|
+
"warning",
|
|
3569
|
+
"danger",
|
|
3570
|
+
"muted"
|
|
3571
|
+
],
|
|
3572
|
+
"description": "Optional semantic tone."
|
|
3573
|
+
},
|
|
3574
|
+
"animateInitial": {
|
|
3575
|
+
"type": "boolean",
|
|
3576
|
+
"default": false,
|
|
3577
|
+
"description": "Animate the initial rendered value."
|
|
3578
|
+
}
|
|
3579
|
+
},
|
|
3580
|
+
"children": {
|
|
3581
|
+
"allowed": false,
|
|
3582
|
+
"description": "This component does not render nested child components."
|
|
3583
|
+
},
|
|
3584
|
+
"examples": [
|
|
3585
|
+
{
|
|
3586
|
+
"id": "basic",
|
|
3587
|
+
"title": "Basic usage",
|
|
3588
|
+
"source": {
|
|
3589
|
+
"slex": "0.1",
|
|
3590
|
+
"namespace": "doc_stat_typical",
|
|
3591
|
+
"layout": {
|
|
3592
|
+
"grid:stats": {
|
|
3593
|
+
"columns": 2,
|
|
3594
|
+
"stat:requests": {
|
|
3595
|
+
"label": "Requests",
|
|
3596
|
+
"icon": "activity",
|
|
3597
|
+
"value": "1.2k",
|
|
3598
|
+
"unit": "/min"
|
|
3599
|
+
},
|
|
3600
|
+
"stat:success": {
|
|
3601
|
+
"label": "Success",
|
|
3602
|
+
"icon": "check-circle",
|
|
3603
|
+
"value": "98.4",
|
|
3604
|
+
"unit": "%",
|
|
3605
|
+
"tone": "success"
|
|
3606
|
+
}
|
|
3607
|
+
}
|
|
3608
|
+
}
|
|
3609
|
+
}
|
|
3610
|
+
}
|
|
3611
|
+
],
|
|
3612
|
+
"docs": {
|
|
3613
|
+
"href": "/docs/components/stat",
|
|
3614
|
+
"anchors": {
|
|
3615
|
+
"api": "stat-api-reference",
|
|
3616
|
+
"examples": "stat-canonical-example"
|
|
3617
|
+
}
|
|
3618
|
+
},
|
|
3619
|
+
"jsonSchema": {
|
|
3620
|
+
"type": "object",
|
|
3621
|
+
"additionalProperties": true,
|
|
3622
|
+
"properties": {
|
|
3623
|
+
"label": {
|
|
3624
|
+
"type": "string",
|
|
3625
|
+
"description": "Metric label."
|
|
3626
|
+
},
|
|
3627
|
+
"$label": {
|
|
3628
|
+
"type": "string",
|
|
3629
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
3630
|
+
"xSlexkitExpressionKind": "read"
|
|
3631
|
+
},
|
|
3632
|
+
"icon": {
|
|
3633
|
+
"type": "string",
|
|
3634
|
+
"description": "Icon name shown before the label."
|
|
3635
|
+
},
|
|
3636
|
+
"value": {
|
|
3637
|
+
"type": [
|
|
3638
|
+
"string",
|
|
3639
|
+
"number"
|
|
3640
|
+
],
|
|
3641
|
+
"description": "Metric value."
|
|
3642
|
+
},
|
|
3643
|
+
"$value": {
|
|
3644
|
+
"type": "string",
|
|
3645
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
3646
|
+
"xSlexkitExpressionKind": "read"
|
|
3647
|
+
},
|
|
3648
|
+
"unit": {
|
|
3649
|
+
"type": "string",
|
|
3650
|
+
"description": "Unit shown after the value."
|
|
3651
|
+
},
|
|
3652
|
+
"$unit": {
|
|
3653
|
+
"type": "string",
|
|
3654
|
+
"description": "Dynamic expression for 'unit'. Evaluated with the Slex logic profile.",
|
|
3655
|
+
"xSlexkitExpressionKind": "read"
|
|
3656
|
+
},
|
|
3657
|
+
"tone": {
|
|
3658
|
+
"enum": [
|
|
3659
|
+
"info",
|
|
3660
|
+
"success",
|
|
3661
|
+
"warning",
|
|
3662
|
+
"danger",
|
|
3663
|
+
"muted"
|
|
3664
|
+
],
|
|
3665
|
+
"description": "Optional semantic tone."
|
|
3666
|
+
},
|
|
3667
|
+
"animateInitial": {
|
|
3668
|
+
"type": "boolean",
|
|
3669
|
+
"description": "Animate the initial rendered value.",
|
|
3670
|
+
"default": false
|
|
3671
|
+
}
|
|
3672
|
+
},
|
|
3673
|
+
"required": [],
|
|
3674
|
+
"patternProperties": {
|
|
3675
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3676
|
+
"$ref": "#/$defs/componentNode"
|
|
3677
|
+
},
|
|
3678
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3679
|
+
"type": "string",
|
|
3680
|
+
"description": "Write-pipe event handler expression.",
|
|
3681
|
+
"xSlexkitExpressionKind": "write"
|
|
3682
|
+
}
|
|
3683
|
+
}
|
|
3684
|
+
},
|
|
3685
|
+
"hash": "cd525fc5"
|
|
3686
|
+
},
|
|
3687
|
+
{
|
|
3688
|
+
"type": "switch",
|
|
3689
|
+
"category": "Input",
|
|
3690
|
+
"status": "ready",
|
|
3691
|
+
"state": "enabled",
|
|
3692
|
+
"since": "0.1.0",
|
|
3693
|
+
"title": "Switch",
|
|
3694
|
+
"summary": "Boolean switch input.",
|
|
3695
|
+
"description": "Use switch for an on/off setting.",
|
|
3696
|
+
"props": {
|
|
3697
|
+
"enabled": {
|
|
3698
|
+
"type": "boolean",
|
|
3699
|
+
"default": false,
|
|
3700
|
+
"dynamic": true,
|
|
3701
|
+
"description": "Enabled state."
|
|
3702
|
+
},
|
|
3703
|
+
"label": {
|
|
3704
|
+
"type": "string",
|
|
3705
|
+
"dynamic": true,
|
|
3706
|
+
"description": "Switch label."
|
|
3707
|
+
},
|
|
3708
|
+
"icon": {
|
|
3709
|
+
"type": "string",
|
|
3710
|
+
"description": "Icon name shown before the visible label."
|
|
3711
|
+
},
|
|
3712
|
+
"disabled": {
|
|
3713
|
+
"type": "boolean",
|
|
3714
|
+
"default": false,
|
|
3715
|
+
"dynamic": true,
|
|
3716
|
+
"description": "Disable the switch."
|
|
3717
|
+
},
|
|
3718
|
+
"haptic": {
|
|
3719
|
+
"type": "boolean",
|
|
3720
|
+
"default": true,
|
|
3721
|
+
"description": "Enable vibration feedback on supported devices."
|
|
3722
|
+
},
|
|
3723
|
+
"haptics": {
|
|
3724
|
+
"type": "boolean",
|
|
3725
|
+
"default": true,
|
|
3726
|
+
"description": "Alias for haptic."
|
|
3727
|
+
},
|
|
3728
|
+
"onchange": {
|
|
3729
|
+
"type": "write-expression",
|
|
3730
|
+
"description": "Write expression invoked when enabled state changes."
|
|
3731
|
+
}
|
|
3732
|
+
},
|
|
3733
|
+
"children": {
|
|
3734
|
+
"allowed": false,
|
|
3735
|
+
"description": "This component does not render nested child components."
|
|
3736
|
+
},
|
|
3737
|
+
"examples": [
|
|
3738
|
+
{
|
|
3739
|
+
"id": "basic",
|
|
3740
|
+
"title": "Basic usage",
|
|
3741
|
+
"source": {
|
|
3742
|
+
"slex": "0.1",
|
|
3743
|
+
"namespace": "doc_switch_typical",
|
|
3744
|
+
"layout": {
|
|
3745
|
+
"switch:feature": {
|
|
3746
|
+
"enabled": true,
|
|
3747
|
+
"label": "Enable sync",
|
|
3748
|
+
"icon": "arrows-clockwise"
|
|
3749
|
+
}
|
|
3750
|
+
}
|
|
3751
|
+
}
|
|
3752
|
+
}
|
|
3753
|
+
],
|
|
3754
|
+
"docs": {
|
|
3755
|
+
"href": "/docs/components/switch",
|
|
3756
|
+
"anchors": {
|
|
3757
|
+
"api": "switch-api-reference",
|
|
3758
|
+
"examples": "switch-canonical-example"
|
|
3759
|
+
}
|
|
3760
|
+
},
|
|
3761
|
+
"jsonSchema": {
|
|
3762
|
+
"type": "object",
|
|
3763
|
+
"additionalProperties": true,
|
|
3764
|
+
"properties": {
|
|
3765
|
+
"enabled": {
|
|
3766
|
+
"type": "boolean",
|
|
3767
|
+
"description": "Enabled state.",
|
|
3768
|
+
"default": false
|
|
3769
|
+
},
|
|
3770
|
+
"$enabled": {
|
|
3771
|
+
"type": "string",
|
|
3772
|
+
"description": "Dynamic expression for 'enabled'. Evaluated with the Slex logic profile.",
|
|
3773
|
+
"xSlexkitExpressionKind": "read"
|
|
3774
|
+
},
|
|
3775
|
+
"label": {
|
|
3776
|
+
"type": "string",
|
|
3777
|
+
"description": "Switch label."
|
|
3778
|
+
},
|
|
3779
|
+
"$label": {
|
|
3780
|
+
"type": "string",
|
|
3781
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
3782
|
+
"xSlexkitExpressionKind": "read"
|
|
3783
|
+
},
|
|
3784
|
+
"icon": {
|
|
3785
|
+
"type": "string",
|
|
3786
|
+
"description": "Icon name shown before the visible label."
|
|
3787
|
+
},
|
|
3788
|
+
"disabled": {
|
|
3789
|
+
"type": "boolean",
|
|
3790
|
+
"description": "Disable the switch.",
|
|
3791
|
+
"default": false
|
|
3792
|
+
},
|
|
3793
|
+
"$disabled": {
|
|
3794
|
+
"type": "string",
|
|
3795
|
+
"description": "Dynamic expression for 'disabled'. Evaluated with the Slex logic profile.",
|
|
3796
|
+
"xSlexkitExpressionKind": "read"
|
|
3797
|
+
},
|
|
3798
|
+
"haptic": {
|
|
3799
|
+
"type": "boolean",
|
|
3800
|
+
"description": "Enable vibration feedback on supported devices.",
|
|
3801
|
+
"default": true
|
|
3802
|
+
},
|
|
3803
|
+
"haptics": {
|
|
3804
|
+
"type": "boolean",
|
|
3805
|
+
"description": "Alias for haptic.",
|
|
3806
|
+
"default": true
|
|
3807
|
+
},
|
|
3808
|
+
"onchange": {
|
|
3809
|
+
"type": "string",
|
|
3810
|
+
"xSlexkitExpressionKind": "write",
|
|
3811
|
+
"description": "Write expression invoked when enabled state changes."
|
|
3812
|
+
}
|
|
3813
|
+
},
|
|
3814
|
+
"required": [],
|
|
3815
|
+
"patternProperties": {
|
|
3816
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3817
|
+
"$ref": "#/$defs/componentNode"
|
|
3818
|
+
},
|
|
3819
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3820
|
+
"type": "string",
|
|
3821
|
+
"description": "Write-pipe event handler expression.",
|
|
3822
|
+
"xSlexkitExpressionKind": "write"
|
|
3823
|
+
}
|
|
3824
|
+
}
|
|
3825
|
+
},
|
|
3826
|
+
"hash": "c5fd6169"
|
|
3827
|
+
},
|
|
3828
|
+
{
|
|
3829
|
+
"type": "table",
|
|
3830
|
+
"category": "Data",
|
|
3831
|
+
"status": "ready",
|
|
3832
|
+
"state": "readable",
|
|
3833
|
+
"since": "0.1.0",
|
|
3834
|
+
"title": "Table",
|
|
3835
|
+
"summary": "Simple data table.",
|
|
3836
|
+
"description": "Use table to render rows of keyed data against a column definition.",
|
|
3837
|
+
"props": {
|
|
3838
|
+
"columns": {
|
|
3839
|
+
"type": "array",
|
|
3840
|
+
"description": "Column definitions with key, label, and optional icon."
|
|
3841
|
+
},
|
|
3842
|
+
"columns[].icon": {
|
|
3843
|
+
"type": "string",
|
|
3844
|
+
"description": "Icon name shown before a column label."
|
|
3845
|
+
},
|
|
3846
|
+
"rows": {
|
|
3847
|
+
"type": "array",
|
|
3848
|
+
"description": "Row data objects keyed by column key."
|
|
3849
|
+
},
|
|
3850
|
+
"items": {
|
|
3851
|
+
"type": "array",
|
|
3852
|
+
"description": "Alias for rows."
|
|
3853
|
+
}
|
|
3854
|
+
},
|
|
3855
|
+
"children": {
|
|
3856
|
+
"allowed": false,
|
|
3857
|
+
"description": "This component does not render nested child components."
|
|
3858
|
+
},
|
|
3859
|
+
"examples": [
|
|
3860
|
+
{
|
|
3861
|
+
"id": "basic",
|
|
3862
|
+
"title": "Basic usage",
|
|
3863
|
+
"source": {
|
|
3864
|
+
"slex": "0.1",
|
|
3865
|
+
"namespace": "doc_table_typical",
|
|
3866
|
+
"layout": {
|
|
3867
|
+
"table:routes": {
|
|
3868
|
+
"columns": [
|
|
3869
|
+
{
|
|
3870
|
+
"key": "name",
|
|
3871
|
+
"label": "Name",
|
|
3872
|
+
"icon": "text-t"
|
|
3873
|
+
},
|
|
3874
|
+
{
|
|
3875
|
+
"key": "status",
|
|
3876
|
+
"label": "Status",
|
|
3877
|
+
"icon": "check-circle"
|
|
3878
|
+
}
|
|
3879
|
+
],
|
|
3880
|
+
"rows": [
|
|
3881
|
+
{
|
|
3882
|
+
"name": "Parse",
|
|
3883
|
+
"status": "ready"
|
|
3884
|
+
},
|
|
3885
|
+
{
|
|
3886
|
+
"name": "Publish",
|
|
3887
|
+
"status": "pending"
|
|
3888
|
+
}
|
|
3889
|
+
]
|
|
3890
|
+
}
|
|
3891
|
+
}
|
|
3892
|
+
}
|
|
3893
|
+
}
|
|
3894
|
+
],
|
|
3895
|
+
"docs": {
|
|
3896
|
+
"href": "/docs/components/table",
|
|
3897
|
+
"anchors": {
|
|
3898
|
+
"api": "table-api-reference",
|
|
3899
|
+
"examples": "table-canonical-example"
|
|
3900
|
+
}
|
|
3901
|
+
},
|
|
3902
|
+
"jsonSchema": {
|
|
3903
|
+
"type": "object",
|
|
3904
|
+
"additionalProperties": true,
|
|
3905
|
+
"properties": {
|
|
3906
|
+
"columns": {
|
|
3907
|
+
"type": "array",
|
|
3908
|
+
"description": "Column definitions with key, label, and optional icon."
|
|
3909
|
+
},
|
|
3910
|
+
"columns[].icon": {
|
|
3911
|
+
"type": "string",
|
|
3912
|
+
"description": "Icon name shown before a column label."
|
|
3913
|
+
},
|
|
3914
|
+
"rows": {
|
|
3915
|
+
"type": "array",
|
|
3916
|
+
"description": "Row data objects keyed by column key."
|
|
3917
|
+
},
|
|
3918
|
+
"items": {
|
|
3919
|
+
"type": "array",
|
|
3920
|
+
"description": "Alias for rows."
|
|
3921
|
+
}
|
|
3922
|
+
},
|
|
3923
|
+
"required": [],
|
|
3924
|
+
"patternProperties": {
|
|
3925
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
3926
|
+
"$ref": "#/$defs/componentNode"
|
|
3927
|
+
},
|
|
3928
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
3929
|
+
"type": "string",
|
|
3930
|
+
"description": "Write-pipe event handler expression.",
|
|
3931
|
+
"xSlexkitExpressionKind": "write"
|
|
3932
|
+
}
|
|
3933
|
+
}
|
|
3934
|
+
},
|
|
3935
|
+
"hash": "546ee458"
|
|
3936
|
+
},
|
|
3937
|
+
{
|
|
3938
|
+
"type": "tabs",
|
|
3939
|
+
"category": "Navigation",
|
|
3940
|
+
"status": "ready",
|
|
3941
|
+
"state": "value",
|
|
3942
|
+
"since": "0.1.0",
|
|
3943
|
+
"title": "Tabs",
|
|
3944
|
+
"summary": "Tabbed view switcher.",
|
|
3945
|
+
"description": "Use tabs to switch between named content panels.",
|
|
3946
|
+
"props": {
|
|
3947
|
+
"value": {
|
|
3948
|
+
"type": "string",
|
|
3949
|
+
"dynamic": true,
|
|
3950
|
+
"description": "Current active tab value."
|
|
3951
|
+
},
|
|
3952
|
+
"tabs": {
|
|
3953
|
+
"type": "array",
|
|
3954
|
+
"description": "Tab definitions with value, label, content, icon, and iconOnly."
|
|
3955
|
+
},
|
|
3956
|
+
"tabs[].icon": {
|
|
3957
|
+
"type": "string",
|
|
3958
|
+
"description": "Icon name shown before a tab trigger label."
|
|
3959
|
+
},
|
|
3960
|
+
"tabs[].iconOnly": {
|
|
3961
|
+
"type": "boolean",
|
|
3962
|
+
"description": "Show only the tab icon while retaining label as accessible text."
|
|
3963
|
+
},
|
|
3964
|
+
"orientation": {
|
|
3965
|
+
"type": "string",
|
|
3966
|
+
"values": [
|
|
3967
|
+
"horizontal",
|
|
3968
|
+
"vertical"
|
|
3969
|
+
],
|
|
3970
|
+
"default": "horizontal",
|
|
3971
|
+
"description": "Tab list orientation."
|
|
3972
|
+
},
|
|
3973
|
+
"onchange": {
|
|
3974
|
+
"type": "write-expression",
|
|
3975
|
+
"description": "Write expression invoked when the active tab changes."
|
|
3976
|
+
}
|
|
3977
|
+
},
|
|
3978
|
+
"children": {
|
|
3979
|
+
"allowed": false,
|
|
3980
|
+
"description": "This component does not render nested child components."
|
|
3981
|
+
},
|
|
3982
|
+
"examples": [
|
|
3983
|
+
{
|
|
3984
|
+
"id": "basic",
|
|
3985
|
+
"title": "Basic usage",
|
|
3986
|
+
"source": {
|
|
3987
|
+
"slex": "0.1",
|
|
3988
|
+
"namespace": "doc_tabs_typical",
|
|
3989
|
+
"layout": {
|
|
3990
|
+
"tabs:main": {
|
|
3991
|
+
"value": "overview",
|
|
3992
|
+
"tabs": [
|
|
3993
|
+
{
|
|
3994
|
+
"value": "overview",
|
|
3995
|
+
"label": "Overview"
|
|
3996
|
+
},
|
|
3997
|
+
{
|
|
3998
|
+
"value": "settings",
|
|
3999
|
+
"label": "Settings"
|
|
4000
|
+
}
|
|
4001
|
+
]
|
|
4002
|
+
}
|
|
4003
|
+
}
|
|
4004
|
+
}
|
|
4005
|
+
}
|
|
4006
|
+
],
|
|
4007
|
+
"docs": {
|
|
4008
|
+
"href": "/docs/components/tabs",
|
|
4009
|
+
"anchors": {
|
|
4010
|
+
"api": "tabs-api-reference",
|
|
4011
|
+
"examples": "tabs-canonical-example"
|
|
4012
|
+
}
|
|
4013
|
+
},
|
|
4014
|
+
"jsonSchema": {
|
|
4015
|
+
"type": "object",
|
|
4016
|
+
"additionalProperties": true,
|
|
4017
|
+
"properties": {
|
|
4018
|
+
"value": {
|
|
4019
|
+
"type": "string",
|
|
4020
|
+
"description": "Current active tab value."
|
|
4021
|
+
},
|
|
4022
|
+
"$value": {
|
|
4023
|
+
"type": "string",
|
|
4024
|
+
"description": "Dynamic expression for 'value'. Evaluated with the Slex logic profile.",
|
|
4025
|
+
"xSlexkitExpressionKind": "read"
|
|
4026
|
+
},
|
|
4027
|
+
"tabs": {
|
|
4028
|
+
"type": "array",
|
|
4029
|
+
"description": "Tab definitions with value, label, content, icon, and iconOnly."
|
|
4030
|
+
},
|
|
4031
|
+
"tabs[].icon": {
|
|
4032
|
+
"type": "string",
|
|
4033
|
+
"description": "Icon name shown before a tab trigger label."
|
|
4034
|
+
},
|
|
4035
|
+
"tabs[].iconOnly": {
|
|
4036
|
+
"type": "boolean",
|
|
4037
|
+
"description": "Show only the tab icon while retaining label as accessible text."
|
|
4038
|
+
},
|
|
4039
|
+
"orientation": {
|
|
4040
|
+
"enum": [
|
|
4041
|
+
"horizontal",
|
|
4042
|
+
"vertical"
|
|
4043
|
+
],
|
|
4044
|
+
"description": "Tab list orientation.",
|
|
4045
|
+
"default": "horizontal"
|
|
4046
|
+
},
|
|
4047
|
+
"onchange": {
|
|
4048
|
+
"type": "string",
|
|
4049
|
+
"xSlexkitExpressionKind": "write",
|
|
4050
|
+
"description": "Write expression invoked when the active tab changes."
|
|
4051
|
+
}
|
|
4052
|
+
},
|
|
4053
|
+
"required": [],
|
|
4054
|
+
"patternProperties": {
|
|
4055
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
4056
|
+
"$ref": "#/$defs/componentNode"
|
|
4057
|
+
},
|
|
4058
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
4059
|
+
"type": "string",
|
|
4060
|
+
"description": "Write-pipe event handler expression.",
|
|
4061
|
+
"xSlexkitExpressionKind": "write"
|
|
4062
|
+
}
|
|
4063
|
+
}
|
|
4064
|
+
},
|
|
4065
|
+
"hash": "e5cff5dc"
|
|
4066
|
+
},
|
|
4067
|
+
{
|
|
4068
|
+
"type": "text",
|
|
4069
|
+
"category": "Display",
|
|
4070
|
+
"status": "ready",
|
|
4071
|
+
"state": "readable",
|
|
4072
|
+
"since": "0.1.0",
|
|
4073
|
+
"title": "Text",
|
|
4074
|
+
"summary": "Plain text display.",
|
|
4075
|
+
"description": "Use text for short static or dynamic copy inside SlexKit layouts.",
|
|
4076
|
+
"props": {
|
|
4077
|
+
"text": {
|
|
4078
|
+
"type": "string",
|
|
4079
|
+
"dynamic": true,
|
|
4080
|
+
"description": "Displayed text."
|
|
4081
|
+
},
|
|
4082
|
+
"content": {
|
|
4083
|
+
"type": "string",
|
|
4084
|
+
"dynamic": true,
|
|
4085
|
+
"description": "Alias for text."
|
|
4086
|
+
},
|
|
4087
|
+
"label": {
|
|
4088
|
+
"type": "string",
|
|
4089
|
+
"dynamic": true,
|
|
4090
|
+
"description": "Alias for text."
|
|
4091
|
+
},
|
|
4092
|
+
"variant": {
|
|
4093
|
+
"type": "string",
|
|
4094
|
+
"values": [
|
|
4095
|
+
"default",
|
|
4096
|
+
"muted"
|
|
4097
|
+
],
|
|
4098
|
+
"default": "default",
|
|
4099
|
+
"description": "Text visual variant."
|
|
4100
|
+
},
|
|
4101
|
+
"color": {
|
|
4102
|
+
"type": "string",
|
|
4103
|
+
"dynamic": true,
|
|
4104
|
+
"description": "Optional CSS color for controlled previews."
|
|
4105
|
+
},
|
|
4106
|
+
"size": {
|
|
4107
|
+
"type": "string | number",
|
|
4108
|
+
"dynamic": true,
|
|
4109
|
+
"description": "Optional font size. Numbers are treated as px."
|
|
4110
|
+
},
|
|
4111
|
+
"class": {
|
|
4112
|
+
"type": "string",
|
|
4113
|
+
"description": "Additional host-controlled CSS class."
|
|
4114
|
+
}
|
|
4115
|
+
},
|
|
4116
|
+
"children": {
|
|
4117
|
+
"allowed": false,
|
|
4118
|
+
"description": "This component does not render nested child components."
|
|
4119
|
+
},
|
|
4120
|
+
"examples": [
|
|
4121
|
+
{
|
|
4122
|
+
"id": "basic",
|
|
4123
|
+
"title": "Basic usage",
|
|
4124
|
+
"source": {
|
|
4125
|
+
"slex": "0.1",
|
|
4126
|
+
"namespace": "doc_text_typical",
|
|
4127
|
+
"layout": {
|
|
4128
|
+
"text:status": {
|
|
4129
|
+
"text": "System is healthy"
|
|
4130
|
+
}
|
|
4131
|
+
}
|
|
4132
|
+
}
|
|
4133
|
+
}
|
|
4134
|
+
],
|
|
4135
|
+
"docs": {
|
|
4136
|
+
"href": "/docs/components/text",
|
|
4137
|
+
"anchors": {
|
|
4138
|
+
"api": "text-api-reference",
|
|
4139
|
+
"examples": "text-canonical-example"
|
|
4140
|
+
}
|
|
4141
|
+
},
|
|
4142
|
+
"jsonSchema": {
|
|
4143
|
+
"type": "object",
|
|
4144
|
+
"additionalProperties": true,
|
|
4145
|
+
"properties": {
|
|
4146
|
+
"text": {
|
|
4147
|
+
"type": "string",
|
|
4148
|
+
"description": "Displayed text."
|
|
4149
|
+
},
|
|
4150
|
+
"$text": {
|
|
4151
|
+
"type": "string",
|
|
4152
|
+
"description": "Dynamic expression for 'text'. Evaluated with the Slex logic profile.",
|
|
4153
|
+
"xSlexkitExpressionKind": "read"
|
|
4154
|
+
},
|
|
4155
|
+
"content": {
|
|
4156
|
+
"type": "string",
|
|
4157
|
+
"description": "Alias for text."
|
|
4158
|
+
},
|
|
4159
|
+
"$content": {
|
|
4160
|
+
"type": "string",
|
|
4161
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
4162
|
+
"xSlexkitExpressionKind": "read"
|
|
4163
|
+
},
|
|
4164
|
+
"label": {
|
|
4165
|
+
"type": "string",
|
|
4166
|
+
"description": "Alias for text."
|
|
4167
|
+
},
|
|
4168
|
+
"$label": {
|
|
4169
|
+
"type": "string",
|
|
4170
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
4171
|
+
"xSlexkitExpressionKind": "read"
|
|
4172
|
+
},
|
|
4173
|
+
"variant": {
|
|
4174
|
+
"enum": [
|
|
4175
|
+
"default",
|
|
4176
|
+
"muted"
|
|
4177
|
+
],
|
|
4178
|
+
"description": "Text visual variant.",
|
|
4179
|
+
"default": "default"
|
|
4180
|
+
},
|
|
4181
|
+
"color": {
|
|
4182
|
+
"type": "string",
|
|
4183
|
+
"description": "Optional CSS color for controlled previews."
|
|
4184
|
+
},
|
|
4185
|
+
"$color": {
|
|
4186
|
+
"type": "string",
|
|
4187
|
+
"description": "Dynamic expression for 'color'. Evaluated with the Slex logic profile.",
|
|
4188
|
+
"xSlexkitExpressionKind": "read"
|
|
4189
|
+
},
|
|
4190
|
+
"size": {
|
|
4191
|
+
"type": [
|
|
4192
|
+
"string",
|
|
4193
|
+
"number"
|
|
4194
|
+
],
|
|
4195
|
+
"description": "Optional font size. Numbers are treated as px."
|
|
4196
|
+
},
|
|
4197
|
+
"$size": {
|
|
4198
|
+
"type": "string",
|
|
4199
|
+
"description": "Dynamic expression for 'size'. Evaluated with the Slex logic profile.",
|
|
4200
|
+
"xSlexkitExpressionKind": "read"
|
|
4201
|
+
},
|
|
4202
|
+
"class": {
|
|
4203
|
+
"type": "string",
|
|
4204
|
+
"description": "Additional host-controlled CSS class."
|
|
4205
|
+
}
|
|
4206
|
+
},
|
|
4207
|
+
"required": [],
|
|
4208
|
+
"patternProperties": {
|
|
4209
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
4210
|
+
"$ref": "#/$defs/componentNode"
|
|
4211
|
+
},
|
|
4212
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
4213
|
+
"type": "string",
|
|
4214
|
+
"description": "Write-pipe event handler expression.",
|
|
4215
|
+
"xSlexkitExpressionKind": "write"
|
|
4216
|
+
}
|
|
4217
|
+
}
|
|
4218
|
+
},
|
|
4219
|
+
"hash": "c99b2de6"
|
|
4220
|
+
},
|
|
4221
|
+
{
|
|
4222
|
+
"type": "toast",
|
|
4223
|
+
"category": "Feedback",
|
|
4224
|
+
"status": "ready",
|
|
4225
|
+
"state": "none",
|
|
4226
|
+
"since": "0.1.0",
|
|
4227
|
+
"title": "Toast",
|
|
4228
|
+
"summary": "Transient notification.",
|
|
4229
|
+
"description": "Use toast to show an inline notification with semantic status.",
|
|
4230
|
+
"props": {
|
|
4231
|
+
"title": {
|
|
4232
|
+
"type": "string",
|
|
4233
|
+
"dynamic": true,
|
|
4234
|
+
"description": "Toast title."
|
|
4235
|
+
},
|
|
4236
|
+
"heading": {
|
|
4237
|
+
"type": "string",
|
|
4238
|
+
"dynamic": true,
|
|
4239
|
+
"description": "Alias for title."
|
|
4240
|
+
},
|
|
4241
|
+
"label": {
|
|
4242
|
+
"type": "string",
|
|
4243
|
+
"dynamic": true,
|
|
4244
|
+
"description": "Alias for title."
|
|
4245
|
+
},
|
|
4246
|
+
"icon": {
|
|
4247
|
+
"type": "string",
|
|
4248
|
+
"description": "Icon name shown at the left of the toast."
|
|
4249
|
+
},
|
|
4250
|
+
"description": {
|
|
4251
|
+
"type": "string",
|
|
4252
|
+
"dynamic": true,
|
|
4253
|
+
"description": "Toast body text."
|
|
4254
|
+
},
|
|
4255
|
+
"text": {
|
|
4256
|
+
"type": "string",
|
|
4257
|
+
"dynamic": true,
|
|
4258
|
+
"description": "Alias for description."
|
|
4259
|
+
},
|
|
4260
|
+
"message": {
|
|
4261
|
+
"type": "string",
|
|
4262
|
+
"dynamic": true,
|
|
4263
|
+
"description": "Alias for description."
|
|
4264
|
+
},
|
|
4265
|
+
"content": {
|
|
4266
|
+
"type": "string",
|
|
4267
|
+
"dynamic": true,
|
|
4268
|
+
"description": "Alias for description."
|
|
4269
|
+
},
|
|
4270
|
+
"type": {
|
|
4271
|
+
"type": "string",
|
|
4272
|
+
"values": [
|
|
4273
|
+
"info",
|
|
4274
|
+
"success",
|
|
4275
|
+
"warning",
|
|
4276
|
+
"danger"
|
|
4277
|
+
],
|
|
4278
|
+
"default": "info",
|
|
4279
|
+
"description": "Semantic notification type."
|
|
4280
|
+
},
|
|
4281
|
+
"tone": {
|
|
4282
|
+
"type": "string",
|
|
4283
|
+
"values": [
|
|
4284
|
+
"info",
|
|
4285
|
+
"success",
|
|
4286
|
+
"warning",
|
|
4287
|
+
"danger"
|
|
4288
|
+
],
|
|
4289
|
+
"default": "info",
|
|
4290
|
+
"description": "Alias for type."
|
|
4291
|
+
},
|
|
4292
|
+
"duration": {
|
|
4293
|
+
"type": "number",
|
|
4294
|
+
"description": "Auto-hide delay in milliseconds."
|
|
4295
|
+
},
|
|
4296
|
+
"dismissable": {
|
|
4297
|
+
"type": "boolean",
|
|
4298
|
+
"default": true,
|
|
4299
|
+
"description": "Show a close button."
|
|
4300
|
+
},
|
|
4301
|
+
"dismissible": {
|
|
4302
|
+
"type": "boolean",
|
|
4303
|
+
"default": true,
|
|
4304
|
+
"description": "Alias for dismissable."
|
|
4305
|
+
},
|
|
4306
|
+
"closeLabel": {
|
|
4307
|
+
"type": "string",
|
|
4308
|
+
"default": "Close notification",
|
|
4309
|
+
"description": "Accessible close button label."
|
|
4310
|
+
},
|
|
4311
|
+
"closeAriaLabel": {
|
|
4312
|
+
"type": "string",
|
|
4313
|
+
"description": "Alias for closeLabel."
|
|
4314
|
+
}
|
|
4315
|
+
},
|
|
4316
|
+
"children": {
|
|
4317
|
+
"allowed": false,
|
|
4318
|
+
"description": "This component does not render nested child components."
|
|
4319
|
+
},
|
|
4320
|
+
"examples": [
|
|
4321
|
+
{
|
|
4322
|
+
"id": "basic",
|
|
4323
|
+
"title": "Basic usage",
|
|
4324
|
+
"source": {
|
|
4325
|
+
"slex": "0.1",
|
|
4326
|
+
"namespace": "doc_toast_typical",
|
|
4327
|
+
"layout": {
|
|
4328
|
+
"toast:saved": {
|
|
4329
|
+
"type": "success",
|
|
4330
|
+
"title": "Saved",
|
|
4331
|
+
"icon": "check-circle",
|
|
4332
|
+
"description": "Changes have been written."
|
|
4333
|
+
}
|
|
4334
|
+
}
|
|
4335
|
+
}
|
|
4336
|
+
}
|
|
4337
|
+
],
|
|
4338
|
+
"docs": {
|
|
4339
|
+
"href": "/docs/components/toast",
|
|
4340
|
+
"anchors": {
|
|
4341
|
+
"api": "toast-api-reference",
|
|
4342
|
+
"examples": "toast-canonical-example"
|
|
4343
|
+
}
|
|
4344
|
+
},
|
|
4345
|
+
"jsonSchema": {
|
|
4346
|
+
"type": "object",
|
|
4347
|
+
"additionalProperties": true,
|
|
4348
|
+
"properties": {
|
|
4349
|
+
"title": {
|
|
4350
|
+
"type": "string",
|
|
4351
|
+
"description": "Toast title."
|
|
4352
|
+
},
|
|
4353
|
+
"$title": {
|
|
4354
|
+
"type": "string",
|
|
4355
|
+
"description": "Dynamic expression for 'title'. Evaluated with the Slex logic profile.",
|
|
4356
|
+
"xSlexkitExpressionKind": "read"
|
|
4357
|
+
},
|
|
4358
|
+
"heading": {
|
|
4359
|
+
"type": "string",
|
|
4360
|
+
"description": "Alias for title."
|
|
4361
|
+
},
|
|
4362
|
+
"$heading": {
|
|
4363
|
+
"type": "string",
|
|
4364
|
+
"description": "Dynamic expression for 'heading'. Evaluated with the Slex logic profile.",
|
|
4365
|
+
"xSlexkitExpressionKind": "read"
|
|
4366
|
+
},
|
|
4367
|
+
"label": {
|
|
4368
|
+
"type": "string",
|
|
4369
|
+
"description": "Alias for title."
|
|
4370
|
+
},
|
|
4371
|
+
"$label": {
|
|
4372
|
+
"type": "string",
|
|
4373
|
+
"description": "Dynamic expression for 'label'. Evaluated with the Slex logic profile.",
|
|
4374
|
+
"xSlexkitExpressionKind": "read"
|
|
4375
|
+
},
|
|
4376
|
+
"icon": {
|
|
4377
|
+
"type": "string",
|
|
4378
|
+
"description": "Icon name shown at the left of the toast."
|
|
4379
|
+
},
|
|
4380
|
+
"description": {
|
|
4381
|
+
"type": "string",
|
|
4382
|
+
"description": "Toast body text."
|
|
4383
|
+
},
|
|
4384
|
+
"$description": {
|
|
4385
|
+
"type": "string",
|
|
4386
|
+
"description": "Dynamic expression for 'description'. Evaluated with the Slex logic profile.",
|
|
4387
|
+
"xSlexkitExpressionKind": "read"
|
|
4388
|
+
},
|
|
4389
|
+
"text": {
|
|
4390
|
+
"type": "string",
|
|
4391
|
+
"description": "Alias for description."
|
|
4392
|
+
},
|
|
4393
|
+
"$text": {
|
|
4394
|
+
"type": "string",
|
|
4395
|
+
"description": "Dynamic expression for 'text'. Evaluated with the Slex logic profile.",
|
|
4396
|
+
"xSlexkitExpressionKind": "read"
|
|
4397
|
+
},
|
|
4398
|
+
"message": {
|
|
4399
|
+
"type": "string",
|
|
4400
|
+
"description": "Alias for description."
|
|
4401
|
+
},
|
|
4402
|
+
"$message": {
|
|
4403
|
+
"type": "string",
|
|
4404
|
+
"description": "Dynamic expression for 'message'. Evaluated with the Slex logic profile.",
|
|
4405
|
+
"xSlexkitExpressionKind": "read"
|
|
4406
|
+
},
|
|
4407
|
+
"content": {
|
|
4408
|
+
"type": "string",
|
|
4409
|
+
"description": "Alias for description."
|
|
4410
|
+
},
|
|
4411
|
+
"$content": {
|
|
4412
|
+
"type": "string",
|
|
4413
|
+
"description": "Dynamic expression for 'content'. Evaluated with the Slex logic profile.",
|
|
4414
|
+
"xSlexkitExpressionKind": "read"
|
|
4415
|
+
},
|
|
4416
|
+
"type": {
|
|
4417
|
+
"enum": [
|
|
4418
|
+
"info",
|
|
4419
|
+
"success",
|
|
4420
|
+
"warning",
|
|
4421
|
+
"danger"
|
|
4422
|
+
],
|
|
4423
|
+
"description": "Semantic notification type.",
|
|
4424
|
+
"default": "info"
|
|
4425
|
+
},
|
|
4426
|
+
"tone": {
|
|
4427
|
+
"enum": [
|
|
4428
|
+
"info",
|
|
4429
|
+
"success",
|
|
4430
|
+
"warning",
|
|
4431
|
+
"danger"
|
|
4432
|
+
],
|
|
4433
|
+
"description": "Alias for type.",
|
|
4434
|
+
"default": "info"
|
|
4435
|
+
},
|
|
4436
|
+
"duration": {
|
|
4437
|
+
"type": "number",
|
|
4438
|
+
"description": "Auto-hide delay in milliseconds."
|
|
4439
|
+
},
|
|
4440
|
+
"dismissable": {
|
|
4441
|
+
"type": "boolean",
|
|
4442
|
+
"description": "Show a close button.",
|
|
4443
|
+
"default": true
|
|
4444
|
+
},
|
|
4445
|
+
"dismissible": {
|
|
4446
|
+
"type": "boolean",
|
|
4447
|
+
"description": "Alias for dismissable.",
|
|
4448
|
+
"default": true
|
|
4449
|
+
},
|
|
4450
|
+
"closeLabel": {
|
|
4451
|
+
"type": "string",
|
|
4452
|
+
"description": "Accessible close button label.",
|
|
4453
|
+
"default": "Close notification"
|
|
4454
|
+
},
|
|
4455
|
+
"closeAriaLabel": {
|
|
4456
|
+
"type": "string",
|
|
4457
|
+
"description": "Alias for closeLabel."
|
|
4458
|
+
}
|
|
4459
|
+
},
|
|
4460
|
+
"required": [],
|
|
4461
|
+
"patternProperties": {
|
|
4462
|
+
"^[a-z][a-z0-9-]*:[A-Za-z0-9_$-]*$": {
|
|
4463
|
+
"$ref": "#/$defs/componentNode"
|
|
4464
|
+
},
|
|
4465
|
+
"^on[A-Za-z_$][\\w$-]*$": {
|
|
4466
|
+
"type": "string",
|
|
4467
|
+
"description": "Write-pipe event handler expression.",
|
|
4468
|
+
"xSlexkitExpressionKind": "write"
|
|
4469
|
+
}
|
|
4470
|
+
}
|
|
4471
|
+
},
|
|
4472
|
+
"hash": "cc0c6b05"
|
|
4473
|
+
}
|
|
4474
|
+
]
|
|
4475
|
+
}
|