jsswift 1.0.45 → 1.0.47
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/dist/documentions/AI.md +85 -0
- package/dist/documentions/README.md +2 -0
- package/dist/documentions/ai-development.md +3 -1
- package/dist/documentions/components/alert.md +29 -493
- package/dist/documentions/components/app-shell.md +37 -524
- package/dist/documentions/components/avatar.md +47 -575
- package/dist/documentions/components/badge.md +27 -461
- package/dist/documentions/components/banner.md +35 -535
- package/dist/documentions/components/breadcrumbs.md +35 -518
- package/dist/documentions/components/btn.md +3 -21
- package/dist/documentions/components/button.md +3 -0
- package/dist/documentions/components/card-body.md +11 -328
- package/dist/documentions/components/card-footer.md +15 -367
- package/dist/documentions/components/card-header.md +15 -367
- package/dist/documentions/components/card.md +3 -19
- package/dist/documentions/components/checkbox.md +25 -456
- package/dist/documentions/components/chip.md +16 -393
- package/dist/documentions/components/col.md +57 -612
- package/dist/documentions/components/container.md +40 -535
- package/dist/documentions/components/context-menu.md +60 -696
- package/dist/documentions/components/date.md +56 -673
- package/dist/documentions/components/dialog.md +5 -21
- package/dist/documentions/components/drawer.md +48 -616
- package/dist/documentions/components/empty-state.md +28 -477
- package/dist/documentions/components/footer.md +42 -586
- package/dist/documentions/components/form-field.md +40 -568
- package/dist/documentions/components/form.md +7 -321
- package/dist/documentions/components/grid-col.md +42 -542
- package/dist/documentions/components/grid.md +40 -542
- package/dist/documentions/components/header.md +38 -547
- package/dist/documentions/components/icon.md +17 -370
- package/dist/documentions/components/input.md +4 -22
- package/dist/documentions/components/item.md +37 -533
- package/dist/documentions/components/kpi.md +34 -519
- package/dist/documentions/components/layout.md +81 -811
- package/dist/documentions/components/list.md +19 -405
- package/dist/documentions/components/loading-bar.md +58 -679
- package/dist/documentions/components/menu.md +62 -710
- package/dist/documentions/components/notify.md +34 -525
- package/dist/documentions/components/page.md +35 -526
- package/dist/documentions/components/pagination.md +3 -20
- package/dist/documentions/components/parallax.md +50 -633
- package/dist/documentions/components/popover.md +55 -661
- package/dist/documentions/components/progress.md +39 -554
- package/dist/documentions/components/radio.md +27 -470
- package/dist/documentions/components/rating.md +41 -574
- package/dist/documentions/components/route-tab.md +30 -491
- package/dist/documentions/components/row.md +35 -507
- package/dist/documentions/components/search.md +62 -723
- package/dist/documentions/components/select.md +17 -22
- package/dist/documentions/components/separator.md +7 -321
- package/dist/documentions/components/slider.md +49 -631
- package/dist/documentions/components/spacer.md +6 -314
- package/dist/documentions/components/spinner.md +25 -440
- package/dist/documentions/components/stat.md +32 -505
- package/dist/documentions/components/tab-panel.md +40 -563
- package/dist/documentions/components/table.md +3 -22
- package/dist/documentions/components/tabs.md +36 -538
- package/dist/documentions/components/time.md +29 -491
- package/dist/documentions/components/toggle.md +31 -498
- package/dist/documentions/components/toolbar.md +52 -640
- package/dist/documentions/components/tooltip.md +35 -535
- package/dist/documentions/knowledge-map.json +27 -2
- package/dist/documentions/reactivity.md +21 -7
- package/dist/documentions/ui/common-props.md +301 -0
- package/dist/jsswift.js +10544 -14103
- package/dist/jsswift.min.js +3 -3
- package/dist/min-jsswift.js +3 -3
- package/package.json +3 -2
|
@@ -1,546 +1,45 @@
|
|
|
1
1
|
# Tooltip
|
|
2
2
|
|
|
3
|
-
Exact JSswift UI
|
|
3
|
+
Exact JSswift UI contract. Shared definitions listed in `commonProps` are in [common props](../ui/common-props.md); all component-specific props, slots, events, and methods are below.
|
|
4
4
|
|
|
5
5
|
```json
|
|
6
6
|
{
|
|
7
7
|
"signature": "_.Tooltip(props, target?) | _.Tooltip(target, content)",
|
|
8
8
|
"props": {
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
},
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"success",
|
|
35
|
-
"warning",
|
|
36
|
-
"danger",
|
|
37
|
-
"info",
|
|
38
|
-
"light",
|
|
39
|
-
"dark"
|
|
40
|
-
],
|
|
41
|
-
"category": "style"
|
|
42
|
-
},
|
|
43
|
-
"outline": {
|
|
44
|
-
"type": "boolean",
|
|
45
|
-
"description": "Uses outlined visual style.",
|
|
46
|
-
"default": false,
|
|
47
|
-
"values": [
|
|
48
|
-
"number",
|
|
49
|
-
"CSS units",
|
|
50
|
-
"xxs",
|
|
51
|
-
"xs",
|
|
52
|
-
"sm",
|
|
53
|
-
"md",
|
|
54
|
-
"lg",
|
|
55
|
-
"xl",
|
|
56
|
-
"xxl",
|
|
57
|
-
"xxxl"
|
|
58
|
-
],
|
|
59
|
-
"category": "style"
|
|
60
|
-
},
|
|
61
|
-
"clickable": {
|
|
62
|
-
"type": "boolean",
|
|
63
|
-
"description": "Enables pointer/hover styles and click handling on the component.",
|
|
64
|
-
"default": false,
|
|
65
|
-
"values": null,
|
|
66
|
-
"category": "behavior"
|
|
67
|
-
},
|
|
68
|
-
"padding": {
|
|
69
|
-
"type": "string|number",
|
|
70
|
-
"description": "Padding applied to the component root element.",
|
|
71
|
-
"default": null,
|
|
72
|
-
"values": [
|
|
73
|
-
"number",
|
|
74
|
-
"CSS units",
|
|
75
|
-
"xxs",
|
|
76
|
-
"xs",
|
|
77
|
-
"sm",
|
|
78
|
-
"md",
|
|
79
|
-
"lg",
|
|
80
|
-
"xl",
|
|
81
|
-
"xxl",
|
|
82
|
-
"xxxl"
|
|
83
|
-
],
|
|
84
|
-
"category": "layout"
|
|
85
|
-
},
|
|
86
|
-
"margin": {
|
|
87
|
-
"type": "string|number",
|
|
88
|
-
"description": "Margin applied to the component root element.",
|
|
89
|
-
"default": null,
|
|
90
|
-
"values": [
|
|
91
|
-
"number",
|
|
92
|
-
"CSS units",
|
|
93
|
-
"xxs",
|
|
94
|
-
"xs",
|
|
95
|
-
"sm",
|
|
96
|
-
"md",
|
|
97
|
-
"lg",
|
|
98
|
-
"xl",
|
|
99
|
-
"xxl",
|
|
100
|
-
"xxxl"
|
|
101
|
-
],
|
|
102
|
-
"category": "layout"
|
|
103
|
-
},
|
|
104
|
-
"width": {
|
|
105
|
-
"type": "string|number",
|
|
106
|
-
"description": "Explicit width (number interpreted as px or CSS length).",
|
|
107
|
-
"default": null,
|
|
108
|
-
"values": [
|
|
109
|
-
"number",
|
|
110
|
-
"CSS units",
|
|
111
|
-
"xxs",
|
|
112
|
-
"xs",
|
|
113
|
-
"sm",
|
|
114
|
-
"md",
|
|
115
|
-
"lg",
|
|
116
|
-
"xl",
|
|
117
|
-
"xxl",
|
|
118
|
-
"xxxl"
|
|
119
|
-
],
|
|
120
|
-
"category": "layout"
|
|
121
|
-
},
|
|
122
|
-
"minWidth": {
|
|
123
|
-
"type": "string|number",
|
|
124
|
-
"description": "Minimum width constraint (number interpreted as px or CSS length).",
|
|
125
|
-
"default": null,
|
|
126
|
-
"values": [
|
|
127
|
-
"number",
|
|
128
|
-
"CSS units",
|
|
129
|
-
"xxs",
|
|
130
|
-
"xs",
|
|
131
|
-
"sm",
|
|
132
|
-
"md",
|
|
133
|
-
"lg",
|
|
134
|
-
"xl",
|
|
135
|
-
"xxl",
|
|
136
|
-
"xxxl"
|
|
137
|
-
],
|
|
138
|
-
"category": "layout"
|
|
139
|
-
},
|
|
140
|
-
"maxWidth": {
|
|
141
|
-
"type": "string|number",
|
|
142
|
-
"description": "Maximum width constraint (number interpreted as px or CSS length).",
|
|
143
|
-
"default": null,
|
|
144
|
-
"values": [
|
|
145
|
-
"number",
|
|
146
|
-
"CSS units",
|
|
147
|
-
"xxs",
|
|
148
|
-
"xs",
|
|
149
|
-
"sm",
|
|
150
|
-
"md",
|
|
151
|
-
"lg",
|
|
152
|
-
"xl",
|
|
153
|
-
"xxl",
|
|
154
|
-
"xxxl"
|
|
155
|
-
],
|
|
156
|
-
"category": "layout"
|
|
157
|
-
},
|
|
158
|
-
"height": {
|
|
159
|
-
"type": "string|number",
|
|
160
|
-
"description": "Explicit height (number interpreted as px or CSS length).",
|
|
161
|
-
"default": null,
|
|
162
|
-
"values": [
|
|
163
|
-
"number",
|
|
164
|
-
"CSS units",
|
|
165
|
-
"xxs",
|
|
166
|
-
"xs",
|
|
167
|
-
"sm",
|
|
168
|
-
"md",
|
|
169
|
-
"lg",
|
|
170
|
-
"xl",
|
|
171
|
-
"xxl",
|
|
172
|
-
"xxxl"
|
|
173
|
-
],
|
|
174
|
-
"category": "layout"
|
|
175
|
-
},
|
|
176
|
-
"minHeight": {
|
|
177
|
-
"type": "string|number",
|
|
178
|
-
"description": "Minimum height constraint (number interpreted as px or CSS length).",
|
|
179
|
-
"default": null,
|
|
180
|
-
"values": [
|
|
181
|
-
"number",
|
|
182
|
-
"CSS units",
|
|
183
|
-
"xxs",
|
|
184
|
-
"xs",
|
|
185
|
-
"sm",
|
|
186
|
-
"md",
|
|
187
|
-
"lg",
|
|
188
|
-
"xl",
|
|
189
|
-
"xxl",
|
|
190
|
-
"xxxl"
|
|
191
|
-
],
|
|
192
|
-
"category": "layout"
|
|
193
|
-
},
|
|
194
|
-
"maxHeight": {
|
|
195
|
-
"type": "string|number",
|
|
196
|
-
"description": "Maximum height constraint (number interpreted as px or CSS length).",
|
|
197
|
-
"default": null,
|
|
198
|
-
"values": [
|
|
199
|
-
"number",
|
|
200
|
-
"CSS units",
|
|
201
|
-
"xxs",
|
|
202
|
-
"xs",
|
|
203
|
-
"sm",
|
|
204
|
-
"md",
|
|
205
|
-
"lg",
|
|
206
|
-
"xl",
|
|
207
|
-
"xxl",
|
|
208
|
-
"xxxl"
|
|
209
|
-
],
|
|
210
|
-
"category": "layout"
|
|
211
|
-
},
|
|
212
|
-
"radius": {
|
|
213
|
-
"type": "string|number",
|
|
214
|
-
"description": "Border radius token or CSS length applied to the component.",
|
|
215
|
-
"default": null,
|
|
216
|
-
"values": [
|
|
217
|
-
"number",
|
|
218
|
-
"CSS units",
|
|
219
|
-
"xxs",
|
|
220
|
-
"xs",
|
|
221
|
-
"sm",
|
|
222
|
-
"md",
|
|
223
|
-
"lg",
|
|
224
|
-
"xl",
|
|
225
|
-
"xxl",
|
|
226
|
-
"xxxl"
|
|
227
|
-
],
|
|
228
|
-
"category": "style"
|
|
229
|
-
},
|
|
230
|
-
"borderRadius": {
|
|
231
|
-
"type": "string|number",
|
|
232
|
-
"description": "Border radius token or CSS length applied to the component.",
|
|
233
|
-
"default": null,
|
|
234
|
-
"values": [
|
|
235
|
-
"number",
|
|
236
|
-
"CSS units",
|
|
237
|
-
"xxs",
|
|
238
|
-
"xs",
|
|
239
|
-
"sm",
|
|
240
|
-
"md",
|
|
241
|
-
"lg",
|
|
242
|
-
"xl",
|
|
243
|
-
"xxl",
|
|
244
|
-
"xxxl"
|
|
245
|
-
],
|
|
246
|
-
"category": "style"
|
|
247
|
-
},
|
|
248
|
-
"shadow": {
|
|
249
|
-
"type": "string|boolean",
|
|
250
|
-
"description": "Shadow token or CSS box-shadow string applied to the component.",
|
|
251
|
-
"default": null,
|
|
252
|
-
"values": [
|
|
253
|
-
"none",
|
|
254
|
-
"xxs",
|
|
255
|
-
"xs",
|
|
256
|
-
"sm",
|
|
257
|
-
"md",
|
|
258
|
-
"lg",
|
|
259
|
-
"xl",
|
|
260
|
-
"xxl",
|
|
261
|
-
"xxxl"
|
|
262
|
-
],
|
|
263
|
-
"category": "style"
|
|
264
|
-
},
|
|
265
|
-
"mobile": {
|
|
266
|
-
"type": "object",
|
|
267
|
-
"description": "Responsive overrides applied at the base/mobile viewport.",
|
|
268
|
-
"default": null,
|
|
269
|
-
"values": null,
|
|
270
|
-
"category": "layout"
|
|
271
|
-
},
|
|
272
|
-
"tablet": {
|
|
273
|
-
"type": "object",
|
|
274
|
-
"description": "Responsive overrides applied from the tablet breakpoint upward.",
|
|
275
|
-
"default": null,
|
|
276
|
-
"values": null,
|
|
277
|
-
"category": "layout"
|
|
278
|
-
},
|
|
279
|
-
"pc": {
|
|
280
|
-
"type": "object",
|
|
281
|
-
"description": "Responsive overrides applied from the desktop breakpoint upward.",
|
|
282
|
-
"default": null,
|
|
283
|
-
"values": null,
|
|
284
|
-
"category": "layout"
|
|
285
|
-
},
|
|
286
|
-
"class": {
|
|
287
|
-
"type": "string",
|
|
288
|
-
"description": "Additional CSS classes applied to the component root element.",
|
|
289
|
-
"default": null,
|
|
290
|
-
"values": null,
|
|
291
|
-
"category": "style"
|
|
292
|
-
},
|
|
293
|
-
"style": {
|
|
294
|
-
"type": "object",
|
|
295
|
-
"description": "Inline styles applied to the component root element.",
|
|
296
|
-
"default": null,
|
|
297
|
-
"values": null,
|
|
298
|
-
"category": "style"
|
|
299
|
-
},
|
|
300
|
-
"title": {
|
|
301
|
-
"type": "String|Node|Function|Array",
|
|
302
|
-
"description": "Title text or node.",
|
|
303
|
-
"default": null,
|
|
304
|
-
"values": null,
|
|
305
|
-
"category": "general"
|
|
306
|
-
},
|
|
307
|
-
"content": {
|
|
308
|
-
"type": "String|Node|Function|Array",
|
|
309
|
-
"description": "Main content node(s) or render function for the component body.",
|
|
310
|
-
"default": null,
|
|
311
|
-
"values": null,
|
|
312
|
-
"category": "general"
|
|
313
|
-
},
|
|
314
|
-
"text": {
|
|
315
|
-
"type": "String|Node|Function|Array",
|
|
316
|
-
"description": "Text content for simple components.",
|
|
317
|
-
"default": null,
|
|
318
|
-
"values": null,
|
|
319
|
-
"category": "general"
|
|
320
|
-
},
|
|
321
|
-
"body": {
|
|
322
|
-
"type": "String|Node|Function|Array",
|
|
323
|
-
"description": "Component configuration for \"body\". When not handled internally, it is forwarded to the root element.",
|
|
324
|
-
"default": null,
|
|
325
|
-
"values": null,
|
|
326
|
-
"category": "general"
|
|
327
|
-
},
|
|
328
|
-
"footer": {
|
|
329
|
-
"type": "String|Node|Function|Array",
|
|
330
|
-
"description": "Footer content node(s) or render function.",
|
|
331
|
-
"default": null,
|
|
332
|
-
"values": null,
|
|
333
|
-
"category": "general"
|
|
334
|
-
},
|
|
335
|
-
"icon": {
|
|
336
|
-
"type": "String|Node|Function|Array",
|
|
337
|
-
"description": "Icon name or node rendered with the component.",
|
|
338
|
-
"default": null,
|
|
339
|
-
"values": [
|
|
340
|
-
"#name_tabler",
|
|
341
|
-
"name_material",
|
|
342
|
-
"class"
|
|
343
|
-
],
|
|
344
|
-
"category": "general"
|
|
345
|
-
},
|
|
346
|
-
"target": {
|
|
347
|
-
"type": "Node|Function|Array",
|
|
348
|
-
"description": "Target element or anchor used for positioning.",
|
|
349
|
-
"default": null,
|
|
350
|
-
"values": null,
|
|
351
|
-
"category": "general"
|
|
352
|
-
},
|
|
353
|
-
"trigger": {
|
|
354
|
-
"type": "\"hover focus\" | \"click\" | \"manual\" | Array",
|
|
355
|
-
"description": "Component configuration for \"trigger\". When not handled internally, it is forwarded to the root element.",
|
|
356
|
-
"default": null,
|
|
357
|
-
"values": null,
|
|
358
|
-
"category": "general"
|
|
359
|
-
},
|
|
360
|
-
"interactive": {
|
|
361
|
-
"type": "boolean",
|
|
362
|
-
"description": "Component configuration for \"interactive\". When not handled internally, it is forwarded to the root element.",
|
|
363
|
-
"default": null,
|
|
364
|
-
"values": null,
|
|
365
|
-
"category": "general"
|
|
366
|
-
},
|
|
367
|
-
"disabled": {
|
|
368
|
-
"type": "boolean",
|
|
369
|
-
"description": "Disables interaction and applies disabled styling/ARIA.",
|
|
370
|
-
"default": false,
|
|
371
|
-
"values": null,
|
|
372
|
-
"category": "state"
|
|
373
|
-
},
|
|
374
|
-
"open": {
|
|
375
|
-
"type": "boolean | reactive",
|
|
376
|
-
"description": "Controls open/visible state (controlled).",
|
|
377
|
-
"default": null,
|
|
378
|
-
"values": null,
|
|
379
|
-
"category": "general"
|
|
380
|
-
},
|
|
381
|
-
"placement": {
|
|
382
|
-
"type": "string",
|
|
383
|
-
"description": "Overlay placement relative to the target/anchor.",
|
|
384
|
-
"default": null,
|
|
385
|
-
"values": [
|
|
386
|
-
"top",
|
|
387
|
-
"bottom",
|
|
388
|
-
"left",
|
|
389
|
-
"right",
|
|
390
|
-
"top-start",
|
|
391
|
-
"top-end",
|
|
392
|
-
"bottom-start",
|
|
393
|
-
"bottom-end"
|
|
394
|
-
],
|
|
395
|
-
"category": "general"
|
|
396
|
-
},
|
|
397
|
-
"delay": {
|
|
398
|
-
"type": "number",
|
|
399
|
-
"description": "Delay in milliseconds before showing or hiding.",
|
|
400
|
-
"default": null,
|
|
401
|
-
"values": null,
|
|
402
|
-
"category": "general"
|
|
403
|
-
},
|
|
404
|
-
"hideDelay": {
|
|
405
|
-
"type": "number",
|
|
406
|
-
"description": "Component configuration for \"hideDelay\". When not handled internally, it is forwarded to the root element.",
|
|
407
|
-
"default": null,
|
|
408
|
-
"values": null,
|
|
409
|
-
"category": "general"
|
|
410
|
-
},
|
|
411
|
-
"offset": {
|
|
412
|
-
"type": "number (legacy)",
|
|
413
|
-
"description": "General offset for positioning.",
|
|
414
|
-
"default": null,
|
|
415
|
-
"values": null,
|
|
416
|
-
"category": "general"
|
|
417
|
-
},
|
|
418
|
-
"offsetX": {
|
|
419
|
-
"type": "number",
|
|
420
|
-
"description": "Horizontal offset for overlay placement in pixels.",
|
|
421
|
-
"default": null,
|
|
422
|
-
"values": null,
|
|
423
|
-
"category": "general"
|
|
424
|
-
},
|
|
425
|
-
"offsetY": {
|
|
426
|
-
"type": "number",
|
|
427
|
-
"description": "Vertical offset for overlay placement in pixels.",
|
|
428
|
-
"default": null,
|
|
429
|
-
"values": null,
|
|
430
|
-
"category": "general"
|
|
431
|
-
},
|
|
432
|
-
"closeOnOutside": {
|
|
433
|
-
"type": "boolean",
|
|
434
|
-
"description": "Closes the component when clicking outside its bounds.",
|
|
435
|
-
"default": null,
|
|
436
|
-
"values": null,
|
|
437
|
-
"category": "general"
|
|
438
|
-
},
|
|
439
|
-
"closeOnEsc": {
|
|
440
|
-
"type": "boolean",
|
|
441
|
-
"description": "Closes the component when the Escape key is pressed.",
|
|
442
|
-
"default": null,
|
|
443
|
-
"values": null,
|
|
444
|
-
"category": "general"
|
|
445
|
-
},
|
|
446
|
-
"slots": {
|
|
447
|
-
"type": "{ target?, icon?, title?, content?, footer?, default? }",
|
|
448
|
-
"description": "Named slots map for render overrides.",
|
|
449
|
-
"default": null,
|
|
450
|
-
"values": null,
|
|
451
|
-
"category": "general"
|
|
452
|
-
},
|
|
453
|
-
"panelClass": {
|
|
454
|
-
"type": "string",
|
|
455
|
-
"description": "Component configuration for \"panelClass\". When not handled internally, it is forwarded to the root element.",
|
|
456
|
-
"default": null,
|
|
457
|
-
"values": null,
|
|
458
|
-
"category": "general"
|
|
459
|
-
},
|
|
460
|
-
"wrapClass": {
|
|
461
|
-
"type": "string",
|
|
462
|
-
"description": "Additional CSS classes applied to the outer wrapper.",
|
|
463
|
-
"default": null,
|
|
464
|
-
"values": null,
|
|
465
|
-
"category": "general"
|
|
466
|
-
},
|
|
467
|
-
"targetStyle": {
|
|
468
|
-
"type": "object",
|
|
469
|
-
"description": "Component configuration for \"targetStyle\". When not handled internally, it is forwarded to the root element.",
|
|
470
|
-
"default": null,
|
|
471
|
-
"values": null,
|
|
472
|
-
"category": "general"
|
|
473
|
-
},
|
|
474
|
-
"children": {
|
|
475
|
-
"type": "Node|Array|Function",
|
|
476
|
-
"description": "Default child content (nodes, arrays, or render function).",
|
|
477
|
-
"default": null,
|
|
478
|
-
"values": null,
|
|
479
|
-
"category": "general"
|
|
480
|
-
},
|
|
481
|
-
"iconRight": {
|
|
482
|
-
"type": "String|Node|Function|Array",
|
|
483
|
-
"description": "Icon name or node rendered on the right side of the component.",
|
|
484
|
-
"default": null,
|
|
485
|
-
"values": [
|
|
486
|
-
"#name_tabler",
|
|
487
|
-
"name_material",
|
|
488
|
-
"class"
|
|
489
|
-
],
|
|
490
|
-
"category": "general"
|
|
491
|
-
}
|
|
9
|
+
"title": {"type": "String|Node|Function|Array", "description": "Title text or node.", "default": null, "values": null, "category": "general"},
|
|
10
|
+
"content": {"type": "String|Node|Function|Array", "description": "Main content node(s) or render function for the component body.", "default": null, "values": null, "category": "general"},
|
|
11
|
+
"text": {"type": "String|Node|Function|Array", "description": "Text content for simple components.", "default": null, "values": null, "category": "general"},
|
|
12
|
+
"body": {"type": "String|Node|Function|Array", "description": "Component configuration for \"body\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
13
|
+
"footer": {"type": "String|Node|Function|Array", "description": "Footer content node(s) or render function.", "default": null, "values": null, "category": "general"},
|
|
14
|
+
"icon": {"type": "String|Node|Function|Array", "description": "Icon name or node rendered with the component.", "default": null, "values": ["#name_tabler", "name_material", "class"], "category": "general"},
|
|
15
|
+
"target": {"type": "Node|Function|Array", "description": "Target element or anchor used for positioning.", "default": null, "values": null, "category": "general"},
|
|
16
|
+
"trigger": {"type": "\"hover focus\" | \"click\" | \"manual\" | Array", "description": "Component configuration for \"trigger\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
17
|
+
"interactive": {"type": "boolean", "description": "Component configuration for \"interactive\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
18
|
+
"disabled": {"type": "boolean", "description": "Disables interaction and applies disabled styling/ARIA.", "default": false, "values": null, "category": "state"},
|
|
19
|
+
"open": {"type": "boolean | reactive", "description": "Controls open/visible state (controlled).", "default": null, "values": null, "category": "general"},
|
|
20
|
+
"placement": {"type": "string", "description": "Overlay placement relative to the target/anchor.", "default": null, "values": ["top", "bottom", "left", "right", "top-start", "top-end", "bottom-start", "bottom-end"], "category": "general"},
|
|
21
|
+
"delay": {"type": "number", "description": "Delay in milliseconds before showing or hiding.", "default": null, "values": null, "category": "general"},
|
|
22
|
+
"hideDelay": {"type": "number", "description": "Component configuration for \"hideDelay\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
23
|
+
"offset": {"type": "number (legacy)", "description": "General offset for positioning.", "default": null, "values": null, "category": "general"},
|
|
24
|
+
"offsetX": {"type": "number", "description": "Horizontal offset for overlay placement in pixels.", "default": null, "values": null, "category": "general"},
|
|
25
|
+
"offsetY": {"type": "number", "description": "Vertical offset for overlay placement in pixels.", "default": null, "values": null, "category": "general"},
|
|
26
|
+
"closeOnOutside": {"type": "boolean", "description": "Closes the component when clicking outside its bounds.", "default": null, "values": null, "category": "general"},
|
|
27
|
+
"closeOnEsc": {"type": "boolean", "description": "Closes the component when the Escape key is pressed.", "default": null, "values": null, "category": "general"},
|
|
28
|
+
"slots": {"type": "{ target?, icon?, title?, content?, footer?, default? }", "description": "Named slots map for render overrides.", "default": null, "values": null, "category": "general"},
|
|
29
|
+
"panelClass": {"type": "string", "description": "Component configuration for \"panelClass\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
30
|
+
"wrapClass": {"type": "string", "description": "Additional CSS classes applied to the outer wrapper.", "default": null, "values": null, "category": "general"},
|
|
31
|
+
"targetStyle": {"type": "object", "description": "Component configuration for \"targetStyle\". When not handled internally, it is forwarded to the root element.", "default": null, "values": null, "category": "general"},
|
|
32
|
+
"children": {"type": "Node|Array|Function", "description": "Default child content (nodes, arrays, or render function).", "default": null, "values": null, "category": "general"},
|
|
33
|
+
"iconRight": {"type": "String|Node|Function|Array", "description": "Icon name or node rendered on the right side of the component.", "default": null, "values": ["#name_tabler", "name_material", "class"], "category": "general"}
|
|
492
34
|
},
|
|
493
35
|
"slots": {
|
|
494
|
-
"target": {
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
}
|
|
501
|
-
"icon": {
|
|
502
|
-
"type": "Tooltip icon content",
|
|
503
|
-
"description": "Slot for icon content.",
|
|
504
|
-
"default": null,
|
|
505
|
-
"values": [
|
|
506
|
-
"#name_tabler",
|
|
507
|
-
"name_material",
|
|
508
|
-
"class"
|
|
509
|
-
],
|
|
510
|
-
"category": "slot"
|
|
511
|
-
},
|
|
512
|
-
"title": {
|
|
513
|
-
"type": "Tooltip title content",
|
|
514
|
-
"description": "Slot for title content.",
|
|
515
|
-
"default": null,
|
|
516
|
-
"values": null,
|
|
517
|
-
"category": "slot"
|
|
518
|
-
},
|
|
519
|
-
"content": {
|
|
520
|
-
"type": "Tooltip body content ({ close, hide, isOpen, anchorEl })",
|
|
521
|
-
"description": "Slot for the main body content.",
|
|
522
|
-
"default": null,
|
|
523
|
-
"values": null,
|
|
524
|
-
"category": "slot"
|
|
525
|
-
},
|
|
526
|
-
"footer": {
|
|
527
|
-
"type": "Tooltip footer content ({ close, hide, isOpen, anchorEl })",
|
|
528
|
-
"description": "Slot for footer content.",
|
|
529
|
-
"default": null,
|
|
530
|
-
"values": null,
|
|
531
|
-
"category": "slot"
|
|
532
|
-
},
|
|
533
|
-
"default": {
|
|
534
|
-
"type": "Fallback tooltip body content",
|
|
535
|
-
"description": "Primary content for the component.",
|
|
536
|
-
"default": null,
|
|
537
|
-
"values": null,
|
|
538
|
-
"category": "slot"
|
|
539
|
-
},
|
|
540
|
-
"iconRight": {
|
|
541
|
-
"type": "Tooltip icon content",
|
|
542
|
-
"description": "Slot for right-aligned icon content."
|
|
543
|
-
}
|
|
36
|
+
"target": {"type": "Tooltip trigger content ({ open, show, hide, toggle, isOpen })", "description": "Slot for custom target/anchor element.", "default": null, "values": null, "category": "slot"},
|
|
37
|
+
"icon": {"type": "Tooltip icon content", "description": "Slot for icon content.", "default": null, "values": ["#name_tabler", "name_material", "class"], "category": "slot"},
|
|
38
|
+
"title": {"type": "Tooltip title content", "description": "Slot for title content.", "default": null, "values": null, "category": "slot"},
|
|
39
|
+
"content": {"type": "Tooltip body content ({ close, hide, isOpen, anchorEl })", "description": "Slot for the main body content.", "default": null, "values": null, "category": "slot"},
|
|
40
|
+
"footer": {"type": "Tooltip footer content ({ close, hide, isOpen, anchorEl })", "description": "Slot for footer content.", "default": null, "values": null, "category": "slot"},
|
|
41
|
+
"default": {"type": "Fallback tooltip body content", "description": "Primary content for the component.", "default": null, "values": null, "category": "slot"},
|
|
42
|
+
"iconRight": {"type": "Tooltip icon content", "description": "Slot for right-aligned icon content."}
|
|
544
43
|
},
|
|
545
44
|
"events": {
|
|
546
45
|
"onOpen": "(entry) => void",
|
|
@@ -548,6 +47,7 @@ Exact JSswift UI metadata contract. Use only the props, slots, events, and metho
|
|
|
548
47
|
"onTriggerClick": "(event) => void"
|
|
549
48
|
},
|
|
550
49
|
"returns": "Object { bind(), open(), show(), hide(), close(), toggle(), isOpen() } | HTMLSpanElement",
|
|
551
|
-
"description": "Anchored tooltip with hover/focus/click triggers, rich content, and imperative API."
|
|
50
|
+
"description": "Anchored tooltip with hover/focus/click triggers, rich content, and imperative API.",
|
|
51
|
+
"commonProps": {"path": "ui/common-props.md", "keys": ["size", "color", "outline", "clickable", "padding", "margin", "width", "minWidth", "maxWidth", "height", "minHeight", "maxHeight", "radius", "borderRadius", "shadow", "mobile", "tablet", "pc", "class", "style"]}
|
|
552
52
|
}
|
|
553
53
|
```
|
|
@@ -3,6 +3,24 @@
|
|
|
3
3
|
"scope": "application-development",
|
|
4
4
|
"entrypoint": "README.md",
|
|
5
5
|
"topics": [
|
|
6
|
+
{
|
|
7
|
+
"id": "ai-quick-start",
|
|
8
|
+
"title": "AI quick start and shared styling",
|
|
9
|
+
"keywords": [
|
|
10
|
+
"AI.md",
|
|
11
|
+
"quick start",
|
|
12
|
+
"percorso breve",
|
|
13
|
+
"esempi minimi",
|
|
14
|
+
"callback",
|
|
15
|
+
"common props",
|
|
16
|
+
"proprietà comuni",
|
|
17
|
+
"CSS"
|
|
18
|
+
],
|
|
19
|
+
"paths": [
|
|
20
|
+
"AI.md",
|
|
21
|
+
"ui/common-props.md"
|
|
22
|
+
]
|
|
23
|
+
},
|
|
6
24
|
{
|
|
7
25
|
"id": "getting-started",
|
|
8
26
|
"title": "First application or screen",
|
|
@@ -55,7 +73,11 @@
|
|
|
55
73
|
"_.effect",
|
|
56
74
|
"_.computed",
|
|
57
75
|
"_.untracked",
|
|
58
|
-
"_.batch"
|
|
76
|
+
"_.batch",
|
|
77
|
+
"rod",
|
|
78
|
+
"_.rod",
|
|
79
|
+
"bidirezionale",
|
|
80
|
+
"two-way binding"
|
|
59
81
|
],
|
|
60
82
|
"paths": [
|
|
61
83
|
"reactivity.md"
|
|
@@ -943,5 +965,8 @@
|
|
|
943
965
|
]
|
|
944
966
|
}
|
|
945
967
|
],
|
|
946
|
-
"
|
|
968
|
+
"documentAliases": {
|
|
969
|
+
"components/button.md": "components/btn.md"
|
|
970
|
+
},
|
|
971
|
+
"packageVersion": "1.0.47"
|
|
947
972
|
}
|
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
# Reactivity and models
|
|
2
2
|
|
|
3
|
-
`_.
|
|
3
|
+
Prefer `_.rod(initial)` for bidirectional control models. Pass the rod as `model`, read and update its public `.value`; do not manually mutate the control DOM.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
```js
|
|
6
|
+
const name = _.rod('');
|
|
7
|
+
const category = _.rod('');
|
|
8
|
+
const input = _.Input({ label: 'Nome prodotto', model: name });
|
|
9
|
+
const select = _.Select({ model: category, options: [
|
|
10
|
+
{ value: '', label: 'Seleziona' }, { value: 'Casa', label: 'Casa' }
|
|
11
|
+
] });
|
|
12
|
+
const save = _.Button({ onClick: () => console.log(name.value, category.value) }, 'Salva');
|
|
13
|
+
name.value = 'Prodotto 01';
|
|
14
|
+
// Choosing Casa in Select updates category.value; changing category.value updates Select.
|
|
15
|
+
```
|
|
6
16
|
|
|
7
|
-
|
|
17
|
+
Rod control notifications are scheduled through microtasks; wait for the control update before inspecting DOM after a programmatic assignment. Rod values themselves can be read immediately. Use `_.useForm()` for values, validation, touched/dirty flags and submit state; see [forms](ui/forms.md). Follow each component's documented model contract.
|
|
8
18
|
|
|
9
|
-
|
|
10
|
-
_.Button({ onClick: () => setCount(getCount() + 1) }, "Add");
|
|
11
|
-
_.Badge({ label: () => String(getCount()) });
|
|
19
|
+
`_.signal(initial)` remains supported and returns `[get, set, dispose]`. Use it when explicit getter/setter functions are useful. Pass the full tuple as `model` to a control supporting signals; `[get, set]` is also supported.
|
|
12
20
|
|
|
13
|
-
|
|
21
|
+
```js
|
|
22
|
+
const [getCount, setCount] = _.signal(0);
|
|
23
|
+
_.Button({ onClick: () => setCount(getCount() + 1) }, 'Add');
|
|
24
|
+
_.Badge({ label: () => String(getCount()) });
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Use `_.computed` for derived values, `_.effect` for side effects, `_.untracked` for a non-subscribing read, and `_.batch` for grouped updates. These direct aliases are exposed by the core runtime footer.
|