juxscript 1.0.3 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +37 -92
  2. package/bin/cli.js +57 -56
  3. package/lib/components/alert.ts +240 -0
  4. package/lib/components/app.ts +216 -82
  5. package/lib/components/badge.ts +164 -0
  6. package/lib/components/button.ts +188 -53
  7. package/lib/components/card.ts +75 -61
  8. package/lib/components/chart.ts +17 -15
  9. package/lib/components/checkbox.ts +228 -0
  10. package/lib/components/code.ts +66 -152
  11. package/lib/components/container.ts +104 -208
  12. package/lib/components/data.ts +1 -3
  13. package/lib/components/datepicker.ts +226 -0
  14. package/lib/components/dialog.ts +258 -0
  15. package/lib/components/docs-data.json +1697 -388
  16. package/lib/components/dropdown.ts +244 -0
  17. package/lib/components/element.ts +271 -0
  18. package/lib/components/fileupload.ts +319 -0
  19. package/lib/components/footer.ts +37 -18
  20. package/lib/components/header.ts +53 -33
  21. package/lib/components/heading.ts +119 -0
  22. package/lib/components/helpers.ts +34 -0
  23. package/lib/components/hero.ts +57 -31
  24. package/lib/components/include.ts +292 -0
  25. package/lib/components/input.ts +166 -78
  26. package/lib/components/layout.ts +144 -18
  27. package/lib/components/list.ts +83 -74
  28. package/lib/components/loading.ts +263 -0
  29. package/lib/components/main.ts +43 -17
  30. package/lib/components/menu.ts +108 -24
  31. package/lib/components/modal.ts +50 -21
  32. package/lib/components/nav.ts +60 -18
  33. package/lib/components/paragraph.ts +111 -0
  34. package/lib/components/progress.ts +276 -0
  35. package/lib/components/radio.ts +236 -0
  36. package/lib/components/req.ts +300 -0
  37. package/lib/components/script.ts +33 -74
  38. package/lib/components/select.ts +247 -0
  39. package/lib/components/sidebar.ts +86 -36
  40. package/lib/components/style.ts +47 -70
  41. package/lib/components/switch.ts +261 -0
  42. package/lib/components/table.ts +47 -24
  43. package/lib/components/tabs.ts +105 -63
  44. package/lib/components/theme-toggle.ts +361 -0
  45. package/lib/components/token-calculator.ts +380 -0
  46. package/lib/components/tooltip.ts +244 -0
  47. package/lib/components/view.ts +36 -20
  48. package/lib/components/write.ts +284 -0
  49. package/lib/globals.d.ts +21 -0
  50. package/lib/jux.ts +172 -68
  51. package/lib/presets/notion.css +521 -0
  52. package/lib/presets/notion.jux +27 -0
  53. package/lib/reactivity/state.ts +364 -0
  54. package/machinery/compiler.js +126 -38
  55. package/machinery/generators/html.js +2 -3
  56. package/machinery/server.js +2 -2
  57. package/package.json +29 -3
  58. package/lib/components/import.ts +0 -430
  59. package/lib/components/node.ts +0 -200
  60. package/lib/components/reactivity.js +0 -104
  61. package/lib/components/theme.ts +0 -97
  62. package/lib/layouts/notion.css +0 -258
  63. package/lib/styles/base-theme.css +0 -186
  64. package/lib/styles/dark-theme.css +0 -144
  65. package/lib/styles/light-theme.css +0 -144
  66. package/lib/styles/tokens/dark.css +0 -86
  67. package/lib/styles/tokens/light.css +0 -86
  68. package/lib/templates/index.juxt +0 -33
  69. package/lib/themes/dark.css +0 -86
  70. package/lib/themes/light.css +0 -86
  71. /package/lib/{styles → presets}/global.css +0 -0
@@ -3,24 +3,24 @@
3
3
  {
4
4
  "name": "App",
5
5
  "category": "Core",
6
- "description": "App - Configure application-level settings",
7
- "constructor": "new App()",
6
+ "description": "App component options",
7
+ "constructor": "jux.app(id: string, options?: AppOptions)",
8
8
  "fluentMethods": [
9
9
  {
10
10
  "name": "title",
11
- "params": "(title)",
11
+ "params": "(value)",
12
12
  "returns": "this",
13
13
  "description": "Set title"
14
14
  },
15
15
  {
16
16
  "name": "theme",
17
- "params": "(theme)",
17
+ "params": "(value)",
18
18
  "returns": "this",
19
19
  "description": "Set theme"
20
20
  },
21
21
  {
22
22
  "name": "favicon",
23
- "params": "(url)",
23
+ "params": "(value)",
24
24
  "returns": "this",
25
25
  "description": "Set favicon"
26
26
  },
@@ -29,111 +29,66 @@
29
29
  "params": "(name, content)",
30
30
  "returns": "this",
31
31
  "description": "Set meta"
32
- }
33
- ],
34
- "example": "jux.app('id').render()"
35
- },
36
- {
37
- "name": "Import",
38
- "category": "Core",
39
- "description": "Import - Import external resources (CSS, JS, images, fonts, etc.)",
40
- "constructor": "jux.import(url: string, options?: ImportOptions)",
41
- "fluentMethods": [
42
- {
43
- "name": "type",
44
- "params": "(type)",
45
- "returns": "this",
46
- "description": "Set type"
47
32
  },
48
33
  {
49
- "name": "href",
34
+ "name": "addStylesheet",
50
35
  "params": "(url)",
51
36
  "returns": "this",
52
- "description": "Set href"
37
+ "description": "Set addStylesheet"
53
38
  },
54
39
  {
55
- "name": "src",
40
+ "name": "addScript",
56
41
  "params": "(url)",
57
42
  "returns": "this",
58
- "description": "Set src"
59
- },
60
- {
61
- "name": "as",
62
- "params": "(value)",
63
- "returns": "this",
64
- "description": "Set as"
65
- },
66
- {
67
- "name": "crossOrigin",
68
- "params": "(value)",
69
- "returns": "this",
70
- "description": "Set crossOrigin"
71
- },
72
- {
73
- "name": "integrity",
74
- "params": "(hash)",
75
- "returns": "this",
76
- "description": "Set integrity"
77
- },
78
- {
79
- "name": "async",
80
- "params": "(value)",
81
- "returns": "this",
82
- "description": "Set async"
83
- },
84
- {
85
- "name": "defer",
86
- "params": "(value)",
87
- "returns": "this",
88
- "description": "Set defer"
89
- },
90
- {
91
- "name": "module",
92
- "params": "(value)",
93
- "returns": "this",
94
- "description": "Set module"
43
+ "description": "Set addScript"
95
44
  },
96
45
  {
97
- "name": "location",
98
- "params": "(loc)",
46
+ "name": "setup",
47
+ "params": "(options)",
99
48
  "returns": "this",
100
- "description": "Set location"
49
+ "description": "Set setup"
101
50
  },
102
51
  {
103
52
  "name": "render",
104
53
  "params": "()",
105
54
  "returns": "this",
106
55
  "description": "Set render"
107
- },
108
- {
109
- "name": "remove",
110
- "params": "()",
111
- "returns": "this",
112
- "description": "Set remove"
113
56
  }
114
57
  ],
115
- "example": "jux.import('id').render()"
58
+ "example": "jux.app('myApp').setup({"
116
59
  },
117
60
  {
118
61
  "name": "Layout",
119
62
  "category": "Core",
120
- "description": "Layout - Load a JUX layout file",
121
- "constructor": "new Layout()",
63
+ "description": "Layout component interface",
64
+ "constructor": "jux.layout(...args: any[])",
122
65
  "fluentMethods": [
123
66
  {
124
67
  "name": "file",
125
68
  "params": "(juxFile)",
126
69
  "returns": "this",
127
70
  "description": "Set file"
71
+ },
72
+ {
73
+ "name": "add",
74
+ "params": "(component)",
75
+ "returns": "this",
76
+ "description": "Set add"
77
+ },
78
+ {
79
+ "name": "render",
80
+ "params": "(target?)",
81
+ "returns": "this",
82
+ "description": "Set render"
128
83
  }
129
84
  ],
130
- "example": "jux.layout('id').render()"
85
+ "example": "// As a composition function"
131
86
  },
132
87
  {
133
88
  "name": "Script",
134
89
  "category": "Core",
135
- "description": "Script - Inject JavaScript into the document",
136
- "constructor": "new Script()",
90
+ "description": "Script - Inject inline JavaScript into the document",
91
+ "constructor": "jux.script(content: string = '')",
137
92
  "fluentMethods": [
138
93
  {
139
94
  "name": "content",
@@ -142,28 +97,16 @@
142
97
  "description": "Set content"
143
98
  },
144
99
  {
145
- "name": "src",
146
- "params": "(url)",
147
- "returns": "this",
148
- "description": "Set src"
149
- },
150
- {
151
- "name": "async",
152
- "params": "(value)",
153
- "returns": "this",
154
- "description": "Set async"
155
- },
156
- {
157
- "name": "defer",
100
+ "name": "type",
158
101
  "params": "(value)",
159
102
  "returns": "this",
160
- "description": "Set defer"
103
+ "description": "Set type"
161
104
  },
162
105
  {
163
- "name": "type",
164
- "params": "(value)",
106
+ "name": "module",
107
+ "params": "()",
165
108
  "returns": "this",
166
- "description": "Set type"
109
+ "description": "Set module"
167
110
  },
168
111
  {
169
112
  "name": "render",
@@ -178,13 +121,13 @@
178
121
  "description": "Set remove"
179
122
  }
180
123
  ],
181
- "example": "jux.script('id').render()"
124
+ "example": "jux.script('console.log(\"Hello\")');"
182
125
  },
183
126
  {
184
127
  "name": "Style",
185
128
  "category": "Core",
186
- "description": "Style component",
187
- "constructor": "new Style()",
129
+ "description": "Style - Inject inline CSS into the document",
130
+ "constructor": "jux.style(content: string = '')",
188
131
  "fluentMethods": [
189
132
  {
190
133
  "name": "content",
@@ -192,12 +135,6 @@
192
135
  "returns": "this",
193
136
  "description": "Set content"
194
137
  },
195
- {
196
- "name": "url",
197
- "params": "(href)",
198
- "returns": "this",
199
- "description": "Set url"
200
- },
201
138
  {
202
139
  "name": "append",
203
140
  "params": "(css)",
@@ -223,28 +160,13 @@
223
160
  "description": "Set remove"
224
161
  }
225
162
  ],
226
- "example": "jux.style('id').render()"
227
- },
228
- {
229
- "name": "Theme",
230
- "category": "Core",
231
- "description": "Theme - Load and apply CSS themes",
232
- "constructor": "jux.theme(name: string)",
233
- "fluentMethods": [
234
- {
235
- "name": "load",
236
- "params": "(name)",
237
- "returns": "this",
238
- "description": "Set load"
239
- }
240
- ],
241
- "example": "jux.theme('dark'); // Load vendor theme from lib/themes/"
163
+ "example": "jux.style('body { margin: 0; }');"
242
164
  },
243
165
  {
244
166
  "name": "Chart",
245
167
  "category": "Data Components",
246
168
  "description": "Chart component options",
247
- "constructor": "jux.chart(componentId: string, options: ChartOptions = {})",
169
+ "constructor": "jux.chart(id: string, options: ChartOptions = {})",
248
170
  "fluentMethods": [
249
171
  {
250
172
  "name": "type",
@@ -291,7 +213,7 @@
291
213
  "name": "List",
292
214
  "category": "Data Components",
293
215
  "description": "List item interface",
294
- "constructor": "jux.list(componentId: string, options: ListOptions = {})",
216
+ "constructor": "jux.list(id: string, options: ListOptions = {})",
295
217
  "fluentMethods": [
296
218
  {
297
219
  "name": "items",
@@ -323,6 +245,18 @@
323
245
  "returns": "this",
324
246
  "description": "Set selectable"
325
247
  },
248
+ {
249
+ "name": "style",
250
+ "params": "(value)",
251
+ "returns": "this",
252
+ "description": "Set style"
253
+ },
254
+ {
255
+ "name": "class",
256
+ "params": "(value)",
257
+ "returns": "this",
258
+ "description": "Set class"
259
+ },
326
260
  {
327
261
  "name": "add",
328
262
  "params": "(item, index?)",
@@ -372,7 +306,7 @@
372
306
  "name": "Table",
373
307
  "category": "Data Components",
374
308
  "description": "Table column configuration",
375
- "constructor": "jux.table(componentId: string, options: TableOptions = {})",
309
+ "constructor": "jux.table(id: string, options: TableOptions = {})",
376
310
  "fluentMethods": [
377
311
  {
378
312
  "name": "columns",
@@ -410,6 +344,18 @@
410
344
  "returns": "this",
411
345
  "description": "Set allowHtml"
412
346
  },
347
+ {
348
+ "name": "style",
349
+ "params": "(value)",
350
+ "returns": "this",
351
+ "description": "Set style"
352
+ },
353
+ {
354
+ "name": "class",
355
+ "params": "(value)",
356
+ "returns": "this",
357
+ "description": "Set class"
358
+ },
413
359
  {
414
360
  "name": "render",
415
361
  "params": "(targetId?)",
@@ -426,16 +372,16 @@
426
372
  "example": "// Auto-generate columns from data"
427
373
  },
428
374
  {
429
- "name": "Button",
375
+ "name": "Alert",
430
376
  "category": "UI Components",
431
- "description": "Button component options",
432
- "constructor": "jux.button(componentId: string, options: ButtonOptions = {})",
377
+ "description": "Alert component options",
378
+ "constructor": "jux.alert(id: string, options: AlertOptions = {})",
433
379
  "fluentMethods": [
434
380
  {
435
- "name": "label",
381
+ "name": "message",
436
382
  "params": "(value)",
437
383
  "returns": "this",
438
- "description": "Set label"
384
+ "description": "Set message"
439
385
  },
440
386
  {
441
387
  "name": "variant",
@@ -443,33 +389,6 @@
443
389
  "returns": "this",
444
390
  "description": "Set variant"
445
391
  },
446
- {
447
- "name": "disabled",
448
- "params": "(value)",
449
- "returns": "this",
450
- "description": "Set disabled"
451
- },
452
- {
453
- "name": "render",
454
- "params": "(targetId?)",
455
- "returns": "this",
456
- "description": "Set render"
457
- },
458
- {
459
- "name": "renderTo",
460
- "params": "(juxComponent)",
461
- "returns": "this",
462
- "description": "Set renderTo"
463
- }
464
- ],
465
- "example": "const btn = jux.button('myButton', { label: 'Click Me', onClick: () => console.log('clicked') });"
466
- },
467
- {
468
- "name": "Card",
469
- "category": "UI Components",
470
- "description": "Action configuration for card actions",
471
- "constructor": "jux.card(componentId: string, options: CardOptions = {})",
472
- "fluentMethods": [
473
392
  {
474
393
  "name": "title",
475
394
  "params": "(value)",
@@ -477,34 +396,34 @@
477
396
  "description": "Set title"
478
397
  },
479
398
  {
480
- "name": "subtitle",
399
+ "name": "dismissible",
481
400
  "params": "(value)",
482
401
  "returns": "this",
483
- "description": "Set subtitle"
402
+ "description": "Set dismissible"
484
403
  },
485
404
  {
486
- "name": "content",
405
+ "name": "icon",
487
406
  "params": "(value)",
488
407
  "returns": "this",
489
- "description": "Set content"
408
+ "description": "Set icon"
490
409
  },
491
410
  {
492
- "name": "image",
411
+ "name": "style",
493
412
  "params": "(value)",
494
413
  "returns": "this",
495
- "description": "Set image"
414
+ "description": "Set style"
496
415
  },
497
416
  {
498
- "name": "actions",
417
+ "name": "class",
499
418
  "params": "(value)",
500
419
  "returns": "this",
501
- "description": "Set actions"
420
+ "description": "Set class"
502
421
  },
503
422
  {
504
- "name": "variant",
505
- "params": "(value)",
423
+ "name": "autoDismiss",
424
+ "params": "(delay)",
506
425
  "returns": "this",
507
- "description": "Set variant"
426
+ "description": "Set autoDismiss"
508
427
  },
509
428
  {
510
429
  "name": "render",
@@ -519,55 +438,49 @@
519
438
  "description": "Set renderTo"
520
439
  }
521
440
  ],
522
- "example": "const card = jux.card('myCard', {"
441
+ "example": "jux.alert('my-alert', {"
523
442
  },
524
443
  {
525
- "name": "Code",
444
+ "name": "Badge",
526
445
  "category": "UI Components",
527
- "description": "Code component options",
528
- "constructor": "jux.code(componentId: string, options: CodeOptions = {})",
446
+ "description": "Badge component options",
447
+ "constructor": "jux.badge(id: string, options: BadgeOptions = {})",
529
448
  "fluentMethods": [
530
449
  {
531
- "name": "code",
532
- "params": "(value)",
533
- "returns": "this",
534
- "description": "Set code"
535
- },
536
- {
537
- "name": "language",
450
+ "name": "text",
538
451
  "params": "(value)",
539
452
  "returns": "this",
540
- "description": "Set language"
453
+ "description": "Set text"
541
454
  },
542
455
  {
543
- "name": "title",
456
+ "name": "variant",
544
457
  "params": "(value)",
545
458
  "returns": "this",
546
- "description": "Set title"
459
+ "description": "Set variant"
547
460
  },
548
461
  {
549
- "name": "showLineNumbers",
462
+ "name": "size",
550
463
  "params": "(value)",
551
464
  "returns": "this",
552
- "description": "Set showLineNumbers"
465
+ "description": "Set size"
553
466
  },
554
467
  {
555
- "name": "highlightLines",
468
+ "name": "pill",
556
469
  "params": "(value)",
557
470
  "returns": "this",
558
- "description": "Set highlightLines"
471
+ "description": "Set pill"
559
472
  },
560
473
  {
561
- "name": "maxHeight",
474
+ "name": "style",
562
475
  "params": "(value)",
563
476
  "returns": "this",
564
- "description": "Set maxHeight"
477
+ "description": "Set style"
565
478
  },
566
479
  {
567
- "name": "wrap",
480
+ "name": "class",
568
481
  "params": "(value)",
569
482
  "returns": "this",
570
- "description": "Set wrap"
483
+ "description": "Set class"
571
484
  },
572
485
  {
573
486
  "name": "render",
@@ -582,88 +495,79 @@
582
495
  "description": "Set renderTo"
583
496
  }
584
497
  ],
585
- "example": "const codeBlock = jux.code('myCode', {"
498
+ "example": "jux.badge('status', {"
586
499
  },
587
500
  {
588
- "name": "Container",
501
+ "name": "Button",
589
502
  "category": "UI Components",
590
- "description": "Container options",
591
- "constructor": "jux.container(componentId: string, options: ContainerOptions = {})",
503
+ "description": "Button component options",
504
+ "constructor": "jux.button(id: string, options?: ButtonOptions)",
592
505
  "fluentMethods": [
593
506
  {
594
- "name": "direction",
507
+ "name": "label",
595
508
  "params": "(value)",
596
509
  "returns": "this",
597
- "description": "Set direction"
510
+ "description": "Set label"
598
511
  },
599
512
  {
600
- "name": "layout",
513
+ "name": "icon",
601
514
  "params": "(value)",
602
515
  "returns": "this",
603
- "description": "Set layout"
516
+ "description": "Set icon"
604
517
  },
605
518
  {
606
- "name": "minWidth",
519
+ "name": "variant",
607
520
  "params": "(value)",
608
521
  "returns": "this",
609
- "description": "Set minWidth"
522
+ "description": "Set variant"
610
523
  },
611
524
  {
612
- "name": "gap",
525
+ "name": "size",
613
526
  "params": "(value)",
614
527
  "returns": "this",
615
- "description": "Set gap"
528
+ "description": "Set size"
616
529
  },
617
530
  {
618
- "name": "justify",
531
+ "name": "disabled",
619
532
  "params": "(value)",
620
533
  "returns": "this",
621
- "description": "Set justify"
534
+ "description": "Set disabled"
622
535
  },
623
536
  {
624
- "name": "align",
537
+ "name": "loading",
625
538
  "params": "(value)",
626
539
  "returns": "this",
627
- "description": "Set align"
540
+ "description": "Set loading"
628
541
  },
629
542
  {
630
- "name": "wrap",
543
+ "name": "iconPosition",
631
544
  "params": "(value)",
632
545
  "returns": "this",
633
- "description": "Set wrap"
546
+ "description": "Set iconPosition"
634
547
  },
635
548
  {
636
- "name": "add",
637
- "params": "(component)",
549
+ "name": "fullWidth",
550
+ "params": "(value)",
638
551
  "returns": "this",
639
- "description": "Set add"
640
- }
641
- ],
642
- "example": "const container = jux.container('myContainer', {"
643
- },
644
- {
645
- "name": "Footer",
646
- "category": "UI Components",
647
- "description": "Footer component options",
648
- "constructor": "jux.footer(componentId: string, options: FooterOptions = {})",
649
- "fluentMethods": [
552
+ "description": "Set fullWidth"
553
+ },
650
554
  {
651
- "name": "content",
555
+ "name": "type",
652
556
  "params": "(value)",
653
557
  "returns": "this",
654
- "description": "Set content"
558
+ "description": "Set type"
655
559
  },
656
560
  {
657
- "name": "copyright",
561
+ "name": "style",
658
562
  "params": "(value)",
659
563
  "returns": "this",
660
- "description": "Set copyright"
564
+ "description": "Set style"
661
565
  },
662
566
  {
663
- "name": "links",
567
+ "name": "class",
664
568
  "params": "(value)",
665
569
  "returns": "this",
666
- "description": "Set links"
570
+ "description": "Set class"
667
571
  },
668
572
  {
669
573
  "name": "render",
@@ -678,13 +582,13 @@
678
582
  "description": "Set renderTo"
679
583
  }
680
584
  ],
681
- "example": "const footer = jux.footer('myFooter', {"
585
+ "example": "jux.button('myButton').label('Click Me').click(() => console.log('hi')).render();"
682
586
  },
683
587
  {
684
- "name": "Header",
588
+ "name": "Card",
685
589
  "category": "UI Components",
686
- "description": "Header component options",
687
- "constructor": "jux.header(componentId: string, options: HeaderOptions = {})",
590
+ "description": "Card component options",
591
+ "constructor": "jux.card(id: string, options: CardOptions = {})",
688
592
  "fluentMethods": [
689
593
  {
690
594
  "name": "title",
@@ -693,22 +597,46 @@
693
597
  "description": "Set title"
694
598
  },
695
599
  {
696
- "name": "logo",
600
+ "name": "subtitle",
697
601
  "params": "(value)",
698
602
  "returns": "this",
699
- "description": "Set logo"
603
+ "description": "Set subtitle"
700
604
  },
701
605
  {
702
- "name": "navigation",
606
+ "name": "content",
703
607
  "params": "(value)",
704
608
  "returns": "this",
705
- "description": "Set navigation"
609
+ "description": "Set content"
706
610
  },
707
611
  {
708
- "name": "sticky",
612
+ "name": "image",
709
613
  "params": "(value)",
710
614
  "returns": "this",
711
- "description": "Set sticky"
615
+ "description": "Set image"
616
+ },
617
+ {
618
+ "name": "variant",
619
+ "params": "(value)",
620
+ "returns": "this",
621
+ "description": "Set variant"
622
+ },
623
+ {
624
+ "name": "style",
625
+ "params": "(value)",
626
+ "returns": "this",
627
+ "description": "Set style"
628
+ },
629
+ {
630
+ "name": "class",
631
+ "params": "(value)",
632
+ "returns": "this",
633
+ "description": "Set class"
634
+ },
635
+ {
636
+ "name": "withActions",
637
+ "params": "()",
638
+ "returns": "this",
639
+ "description": "Set withActions"
712
640
  },
713
641
  {
714
642
  "name": "render",
@@ -723,49 +651,61 @@
723
651
  "description": "Set renderTo"
724
652
  }
725
653
  ],
726
- "example": "const header = jux.header('myHeader', {"
654
+ "example": "const card = jux.card('myCard', {"
727
655
  },
728
656
  {
729
- "name": "Hero",
657
+ "name": "Checkbox",
730
658
  "category": "UI Components",
731
- "description": "Hero component options",
732
- "constructor": "jux.hero(componentId: string, options: HeroOptions = {})",
659
+ "description": "Checkbox component options",
660
+ "constructor": "jux.checkbox(id: string, options: CheckboxOptions = {})",
733
661
  "fluentMethods": [
734
662
  {
735
- "name": "title",
663
+ "name": "label",
736
664
  "params": "(value)",
737
665
  "returns": "this",
738
- "description": "Set title"
666
+ "description": "Set label"
739
667
  },
740
668
  {
741
- "name": "subtitle",
669
+ "name": "checked",
742
670
  "params": "(value)",
743
671
  "returns": "this",
744
- "description": "Set subtitle"
672
+ "description": "Set checked"
745
673
  },
746
674
  {
747
- "name": "cta",
675
+ "name": "disabled",
748
676
  "params": "(value)",
749
677
  "returns": "this",
750
- "description": "Set cta"
678
+ "description": "Set disabled"
751
679
  },
752
680
  {
753
- "name": "ctaLink",
681
+ "name": "name",
754
682
  "params": "(value)",
755
683
  "returns": "this",
756
- "description": "Set ctaLink"
684
+ "description": "Set name"
757
685
  },
758
686
  {
759
- "name": "backgroundImage",
687
+ "name": "value",
760
688
  "params": "(value)",
761
689
  "returns": "this",
762
- "description": "Set backgroundImage"
690
+ "description": "Set value"
763
691
  },
764
692
  {
765
- "name": "variant",
693
+ "name": "style",
766
694
  "params": "(value)",
767
695
  "returns": "this",
768
- "description": "Set variant"
696
+ "description": "Set style"
697
+ },
698
+ {
699
+ "name": "class",
700
+ "params": "(value)",
701
+ "returns": "this",
702
+ "description": "Set class"
703
+ },
704
+ {
705
+ "name": "bind",
706
+ "params": "(stateObj)",
707
+ "returns": "this",
708
+ "description": "Set bind"
769
709
  },
770
710
  {
771
711
  "name": "render",
@@ -780,49 +720,49 @@
780
720
  "description": "Set renderTo"
781
721
  }
782
722
  ],
783
- "example": "const hero = jux.hero('myHero', {"
723
+ "example": "jux.checkbox('agree', {"
784
724
  },
785
725
  {
786
- "name": "Input",
726
+ "name": "Code",
787
727
  "category": "UI Components",
788
- "description": "Input component options",
789
- "constructor": "jux.input(componentId: string, options: InputOptions = {})",
728
+ "description": "Code component options",
729
+ "constructor": "jux.code(id: string, content?: string, language?: string)",
790
730
  "fluentMethods": [
791
731
  {
792
- "name": "type",
732
+ "name": "code",
793
733
  "params": "(value)",
794
734
  "returns": "this",
795
- "description": "Set type"
735
+ "description": "Set code"
796
736
  },
797
737
  {
798
- "name": "label",
738
+ "name": "language",
799
739
  "params": "(value)",
800
740
  "returns": "this",
801
- "description": "Set label"
741
+ "description": "Set language"
802
742
  },
803
743
  {
804
- "name": "placeholder",
744
+ "name": "lineNumbers",
805
745
  "params": "(value)",
806
746
  "returns": "this",
807
- "description": "Set placeholder"
747
+ "description": "Set lineNumbers"
808
748
  },
809
749
  {
810
- "name": "value",
750
+ "name": "highlight",
811
751
  "params": "(value)",
812
752
  "returns": "this",
813
- "description": "Set value"
753
+ "description": "Set highlight"
814
754
  },
815
755
  {
816
- "name": "required",
756
+ "name": "style",
817
757
  "params": "(value)",
818
758
  "returns": "this",
819
- "description": "Set required"
759
+ "description": "Set style"
820
760
  },
821
761
  {
822
- "name": "disabled",
762
+ "name": "class",
823
763
  "params": "(value)",
824
764
  "returns": "this",
825
- "description": "Set disabled"
765
+ "description": "Set class"
826
766
  },
827
767
  {
828
768
  "name": "render",
@@ -837,64 +777,118 @@
837
777
  "description": "Set renderTo"
838
778
  }
839
779
  ],
840
- "example": "const input = jux.input('myInput', {"
780
+ "example": "const code = jux.code('myCode', 'console.log(\"hello\")', 'javascript');"
841
781
  },
842
782
  {
843
- "name": "Main",
783
+ "name": "Container",
844
784
  "category": "UI Components",
845
- "description": "Main component options",
846
- "constructor": "jux.main(componentId: string, options: MainOptions = {})",
785
+ "description": "Container options",
786
+ "constructor": "jux.container(id: string, options: ContainerOptions = {})",
847
787
  "fluentMethods": [
848
788
  {
849
- "name": "content",
789
+ "name": "class",
850
790
  "params": "(value)",
851
791
  "returns": "this",
852
- "description": "Set content"
792
+ "description": "Set class"
853
793
  },
854
794
  {
855
- "name": "padding",
795
+ "name": "style",
856
796
  "params": "(value)",
857
797
  "returns": "this",
858
- "description": "Set padding"
798
+ "description": "Set style"
859
799
  },
860
800
  {
861
- "name": "render",
862
- "params": "(targetId?)",
801
+ "name": "direction",
802
+ "params": "(value)",
863
803
  "returns": "this",
864
- "description": "Set render"
804
+ "description": "Set direction"
865
805
  },
866
806
  {
867
- "name": "renderTo",
868
- "params": "(juxComponent)",
807
+ "name": "gap",
808
+ "params": "(value)",
869
809
  "returns": "this",
870
- "description": "Set renderTo"
810
+ "description": "Set gap"
811
+ },
812
+ {
813
+ "name": "align",
814
+ "params": "(value)",
815
+ "returns": "this",
816
+ "description": "Set align"
817
+ },
818
+ {
819
+ "name": "justify",
820
+ "params": "(value)",
821
+ "returns": "this",
822
+ "description": "Set justify"
823
+ },
824
+ {
825
+ "name": "render",
826
+ "params": "(targetId?)",
827
+ "returns": "this",
828
+ "description": "Set render"
871
829
  }
872
830
  ],
873
- "example": "const main = jux.main('myMain', {"
831
+ "example": "// Plain container"
874
832
  },
875
833
  {
876
- "name": "Menu",
834
+ "name": "Datepicker",
877
835
  "category": "UI Components",
878
- "description": "Menu item configuration",
879
- "constructor": "jux.menu(componentId: string, options: MenuOptions = {})",
836
+ "description": "DatePicker component options",
837
+ "constructor": "jux.datepicker(id: string, options: DatePickerOptions = {})",
880
838
  "fluentMethods": [
881
839
  {
882
- "name": "items",
840
+ "name": "value",
883
841
  "params": "(value)",
884
842
  "returns": "this",
885
- "description": "Set items"
843
+ "description": "Set value"
886
844
  },
887
845
  {
888
- "name": "addItem",
889
- "params": "(item)",
846
+ "name": "min",
847
+ "params": "(value)",
890
848
  "returns": "this",
891
- "description": "Set addItem"
849
+ "description": "Set min"
892
850
  },
893
851
  {
894
- "name": "orientation",
852
+ "name": "max",
895
853
  "params": "(value)",
896
854
  "returns": "this",
897
- "description": "Set orientation"
855
+ "description": "Set max"
856
+ },
857
+ {
858
+ "name": "placeholder",
859
+ "params": "(value)",
860
+ "returns": "this",
861
+ "description": "Set placeholder"
862
+ },
863
+ {
864
+ "name": "disabled",
865
+ "params": "(value)",
866
+ "returns": "this",
867
+ "description": "Set disabled"
868
+ },
869
+ {
870
+ "name": "name",
871
+ "params": "(value)",
872
+ "returns": "this",
873
+ "description": "Set name"
874
+ },
875
+ {
876
+ "name": "style",
877
+ "params": "(value)",
878
+ "returns": "this",
879
+ "description": "Set style"
880
+ },
881
+ {
882
+ "name": "class",
883
+ "params": "(value)",
884
+ "returns": "this",
885
+ "description": "Set class"
886
+ },
887
+ {
888
+ "name": "bind",
889
+ "params": "(stateObj)",
890
+ "returns": "this",
891
+ "description": "Set bind"
898
892
  },
899
893
  {
900
894
  "name": "render",
@@ -909,13 +903,13 @@
909
903
  "description": "Set renderTo"
910
904
  }
911
905
  ],
912
- "example": "const menu = jux.menu('myMenu', {"
906
+ "example": "jux.datepicker('start-date', {"
913
907
  },
914
908
  {
915
- "name": "Modal",
909
+ "name": "Dialog",
916
910
  "category": "UI Components",
917
- "description": "Modal component options",
918
- "constructor": "jux.modal(componentId: string, options: ModalOptions = {})",
911
+ "description": "Dialog component options",
912
+ "constructor": "jux.dialog(id: string, options: DialogOptions = {})",
919
913
  "fluentMethods": [
920
914
  {
921
915
  "name": "title",
@@ -924,40 +918,40 @@
924
918
  "description": "Set title"
925
919
  },
926
920
  {
927
- "name": "content",
921
+ "name": "message",
928
922
  "params": "(value)",
929
923
  "returns": "this",
930
- "description": "Set content"
924
+ "description": "Set message"
931
925
  },
932
926
  {
933
- "name": "showCloseButton",
927
+ "name": "confirmText",
934
928
  "params": "(value)",
935
929
  "returns": "this",
936
- "description": "Set showCloseButton"
930
+ "description": "Set confirmText"
937
931
  },
938
932
  {
939
- "name": "closeOnBackdropClick",
933
+ "name": "cancelText",
940
934
  "params": "(value)",
941
935
  "returns": "this",
942
- "description": "Set closeOnBackdropClick"
936
+ "description": "Set cancelText"
943
937
  },
944
938
  {
945
- "name": "size",
939
+ "name": "variant",
946
940
  "params": "(value)",
947
941
  "returns": "this",
948
- "description": "Set size"
942
+ "description": "Set variant"
949
943
  },
950
944
  {
951
- "name": "open",
952
- "params": "()",
945
+ "name": "style",
946
+ "params": "(value)",
953
947
  "returns": "this",
954
- "description": "Set open"
948
+ "description": "Set style"
955
949
  },
956
950
  {
957
- "name": "close",
958
- "params": "()",
951
+ "name": "class",
952
+ "params": "(value)",
959
953
  "returns": "this",
960
- "description": "Set close"
954
+ "description": "Set class"
961
955
  },
962
956
  {
963
957
  "name": "render",
@@ -972,13 +966,13 @@
972
966
  "description": "Set renderTo"
973
967
  }
974
968
  ],
975
- "example": "const modal = jux.modal('myModal', {"
969
+ "example": "jux.dialog('confirm-delete', {"
976
970
  },
977
971
  {
978
- "name": "Nav",
972
+ "name": "Dropdown",
979
973
  "category": "UI Components",
980
- "description": "Nav item configuration",
981
- "constructor": "jux.nav(componentId: string, options: NavOptions = {})",
974
+ "description": "Dropdown menu item",
975
+ "constructor": "jux.dropdown(id: string, options: DropdownOptions = {})",
982
976
  "fluentMethods": [
983
977
  {
984
978
  "name": "items",
@@ -993,10 +987,28 @@
993
987
  "description": "Set addItem"
994
988
  },
995
989
  {
996
- "name": "variant",
990
+ "name": "trigger",
997
991
  "params": "(value)",
998
992
  "returns": "this",
999
- "description": "Set variant"
993
+ "description": "Set trigger"
994
+ },
995
+ {
996
+ "name": "position",
997
+ "params": "(value)",
998
+ "returns": "this",
999
+ "description": "Set position"
1000
+ },
1001
+ {
1002
+ "name": "style",
1003
+ "params": "(value)",
1004
+ "returns": "this",
1005
+ "description": "Set style"
1006
+ },
1007
+ {
1008
+ "name": "class",
1009
+ "params": "(value)",
1010
+ "returns": "this",
1011
+ "description": "Set class"
1000
1012
  },
1001
1013
  {
1002
1014
  "name": "render",
@@ -1011,73 +1023,76 @@
1011
1023
  "description": "Set renderTo"
1012
1024
  }
1013
1025
  ],
1014
- "example": "const nav = jux.nav('myNav', {"
1026
+ "example": "jux.dropdown('actions', {"
1015
1027
  },
1016
1028
  {
1017
- "name": "Node",
1029
+ "name": "Element",
1018
1030
  "category": "UI Components",
1019
- "description": "Node component options",
1020
- "constructor": "jux.node(componentId: string, options: NodeOptions = {})",
1031
+ "description": "Element component options",
1032
+ "constructor": "jux.element(id: string, options: ElementOptions = {})",
1021
1033
  "fluentMethods": [
1022
1034
  {
1023
- "name": "tagType",
1024
- "params": "(value)",
1025
- "returns": "this",
1026
- "description": "Set tagType"
1027
- },
1035
+ "name": "render",
1036
+ "params": "(targetId?: string)",
1037
+ "returns": "Element",
1038
+ "description": "Render component to DOM"
1039
+ }
1040
+ ],
1041
+ "example": "const div = jux.element('myDiv', { tagType: 'div', className: 'container' });"
1042
+ },
1043
+ {
1044
+ "name": "Fileupload",
1045
+ "category": "UI Components",
1046
+ "description": "FileUpload component options",
1047
+ "constructor": "jux.fileupload(id: string, options: FileUploadOptions = {})",
1048
+ "fluentMethods": [
1028
1049
  {
1029
- "name": "className",
1050
+ "name": "accept",
1030
1051
  "params": "(value)",
1031
1052
  "returns": "this",
1032
- "description": "Set className"
1053
+ "description": "Set accept"
1033
1054
  },
1034
1055
  {
1035
- "name": "addClass",
1056
+ "name": "multiple",
1036
1057
  "params": "(value)",
1037
1058
  "returns": "this",
1038
- "description": "Set addClass"
1059
+ "description": "Set multiple"
1039
1060
  },
1040
1061
  {
1041
- "name": "removeClass",
1062
+ "name": "maxSize",
1042
1063
  "params": "(value)",
1043
1064
  "returns": "this",
1044
- "description": "Set removeClass"
1065
+ "description": "Set maxSize"
1045
1066
  },
1046
1067
  {
1047
- "name": "textContent",
1068
+ "name": "disabled",
1048
1069
  "params": "(value)",
1049
1070
  "returns": "this",
1050
- "description": "Set textContent"
1071
+ "description": "Set disabled"
1051
1072
  },
1052
1073
  {
1053
- "name": "innerHTML",
1074
+ "name": "text",
1054
1075
  "params": "(value)",
1055
1076
  "returns": "this",
1056
- "description": "Set innerHTML"
1057
- },
1058
- {
1059
- "name": "attr",
1060
- "params": "(name, value)",
1061
- "returns": "this",
1062
- "description": "Set attr"
1077
+ "description": "Set text"
1063
1078
  },
1064
1079
  {
1065
- "name": "attrs",
1066
- "params": "(attributes, string>)",
1080
+ "name": "dragText",
1081
+ "params": "(value)",
1067
1082
  "returns": "this",
1068
- "description": "Set attrs"
1083
+ "description": "Set dragText"
1069
1084
  },
1070
1085
  {
1071
1086
  "name": "style",
1072
- "params": "(property, value)",
1087
+ "params": "(value)",
1073
1088
  "returns": "this",
1074
1089
  "description": "Set style"
1075
1090
  },
1076
1091
  {
1077
- "name": "styles",
1078
- "params": "(styles, string>)",
1092
+ "name": "class",
1093
+ "params": "(value)",
1079
1094
  "returns": "this",
1080
- "description": "Set styles"
1095
+ "description": "Set class"
1081
1096
  },
1082
1097
  {
1083
1098
  "name": "render",
@@ -1092,49 +1107,43 @@
1092
1107
  "description": "Set renderTo"
1093
1108
  }
1094
1109
  ],
1095
- "example": "const div = jux.node('myDiv', { tagType: 'div', className: 'container' });"
1110
+ "example": "jux.fileupload('docs', {"
1096
1111
  },
1097
1112
  {
1098
- "name": "Sidebar",
1113
+ "name": "Footer",
1099
1114
  "category": "UI Components",
1100
- "description": "Sidebar component options",
1101
- "constructor": "jux.sidebar(componentId: string, options: SidebarOptions = {})",
1115
+ "description": "Footer component options",
1116
+ "constructor": "jux.footer(id: string, options: FooterOptions = {})",
1102
1117
  "fluentMethods": [
1103
1118
  {
1104
- "name": "title",
1119
+ "name": "content",
1105
1120
  "params": "(value)",
1106
1121
  "returns": "this",
1107
- "description": "Set title"
1122
+ "description": "Set content"
1108
1123
  },
1109
1124
  {
1110
- "name": "width",
1125
+ "name": "copyright",
1111
1126
  "params": "(value)",
1112
1127
  "returns": "this",
1113
- "description": "Set width"
1128
+ "description": "Set copyright"
1114
1129
  },
1115
1130
  {
1116
- "name": "position",
1131
+ "name": "links",
1117
1132
  "params": "(value)",
1118
1133
  "returns": "this",
1119
- "description": "Set position"
1134
+ "description": "Set links"
1120
1135
  },
1121
1136
  {
1122
- "name": "collapsible",
1137
+ "name": "class",
1123
1138
  "params": "(value)",
1124
1139
  "returns": "this",
1125
- "description": "Set collapsible"
1140
+ "description": "Set class"
1126
1141
  },
1127
1142
  {
1128
- "name": "collapsed",
1143
+ "name": "style",
1129
1144
  "params": "(value)",
1130
1145
  "returns": "this",
1131
- "description": "Set collapsed"
1132
- },
1133
- {
1134
- "name": "toggle",
1135
- "params": "()",
1136
- "returns": "this",
1137
- "description": "Set toggle"
1146
+ "description": "Set style"
1138
1147
  },
1139
1148
  {
1140
1149
  "name": "render",
@@ -1149,43 +1158,1298 @@
1149
1158
  "description": "Set renderTo"
1150
1159
  }
1151
1160
  ],
1152
- "example": "const sidebar = jux.sidebar('mySidebar', {"
1161
+ "example": "const footer = jux.footer('myFooter', {"
1153
1162
  },
1154
1163
  {
1155
- "name": "Tabs",
1164
+ "name": "Header",
1156
1165
  "category": "UI Components",
1157
- "description": "Tab configuration",
1158
- "constructor": "jux.tabs(componentId: string, options: TabsOptions = {})",
1166
+ "description": "Header component options",
1167
+ "constructor": "jux.header(id: string, options: HeaderOptions = {})",
1159
1168
  "fluentMethods": [
1160
1169
  {
1161
- "name": "tabs",
1170
+ "name": "title",
1162
1171
  "params": "(value)",
1163
1172
  "returns": "this",
1164
- "description": "Set tabs"
1173
+ "description": "Set title"
1165
1174
  },
1166
1175
  {
1167
- "name": "addTab",
1168
- "params": "(tab)",
1176
+ "name": "logo",
1177
+ "params": "(value)",
1169
1178
  "returns": "this",
1170
- "description": "Set addTab"
1179
+ "description": "Set logo"
1171
1180
  },
1172
1181
  {
1173
- "name": "activeTab",
1182
+ "name": "navigation",
1174
1183
  "params": "(value)",
1175
1184
  "returns": "this",
1176
- "description": "Set activeTab"
1177
- }
1178
- ],
1179
- "example": "const tabs = jux.tabs('myTabs', {"
1180
- },
1181
- {
1182
- "name": "View",
1183
- "category": "UI Components",
1184
- "description": "View component options",
1185
- "constructor": "jux.view(componentId: string, options: ViewOptions = {})",
1186
- "fluentMethods": [
1185
+ "description": "Set navigation"
1186
+ },
1187
1187
  {
1188
- "name": "title",
1188
+ "name": "sticky",
1189
+ "params": "(value)",
1190
+ "returns": "this",
1191
+ "description": "Set sticky"
1192
+ },
1193
+ {
1194
+ "name": "class",
1195
+ "params": "(value)",
1196
+ "returns": "this",
1197
+ "description": "Set class"
1198
+ },
1199
+ {
1200
+ "name": "style",
1201
+ "params": "(value)",
1202
+ "returns": "this",
1203
+ "description": "Set style"
1204
+ },
1205
+ {
1206
+ "name": "render",
1207
+ "params": "(targetId?)",
1208
+ "returns": "this",
1209
+ "description": "Set render"
1210
+ },
1211
+ {
1212
+ "name": "renderTo",
1213
+ "params": "(juxComponent)",
1214
+ "returns": "this",
1215
+ "description": "Set renderTo"
1216
+ }
1217
+ ],
1218
+ "example": "const header = jux.header('myHeader', {"
1219
+ },
1220
+ {
1221
+ "name": "Heading",
1222
+ "category": "UI Components",
1223
+ "description": "Heading options",
1224
+ "constructor": "jux.heading(id: string, options: HeadingOptions = {})",
1225
+ "fluentMethods": [
1226
+ {
1227
+ "name": "level",
1228
+ "params": "(value)",
1229
+ "returns": "this",
1230
+ "description": "Set level"
1231
+ },
1232
+ {
1233
+ "name": "text",
1234
+ "params": "(value)",
1235
+ "returns": "this",
1236
+ "description": "Set text"
1237
+ },
1238
+ {
1239
+ "name": "class",
1240
+ "params": "(value)",
1241
+ "returns": "this",
1242
+ "description": "Set class"
1243
+ },
1244
+ {
1245
+ "name": "style",
1246
+ "params": "(value)",
1247
+ "returns": "this",
1248
+ "description": "Set style"
1249
+ },
1250
+ {
1251
+ "name": "render",
1252
+ "params": "(targetId?)",
1253
+ "returns": "this",
1254
+ "description": "Set render"
1255
+ }
1256
+ ],
1257
+ "example": "jux.heading('title', { level: 1, text: 'Welcome' }).render('#app');"
1258
+ },
1259
+ {
1260
+ "name": "Helpers",
1261
+ "category": "UI Components",
1262
+ "description": "Component helper utilities",
1263
+ "constructor": "jux.helpers(id: string)",
1264
+ "fluentMethods": [],
1265
+ "example": "jux.helpers('id').render()"
1266
+ },
1267
+ {
1268
+ "name": "Hero",
1269
+ "category": "UI Components",
1270
+ "description": "Hero component options",
1271
+ "constructor": "jux.hero(id: string, options: HeroOptions = {})",
1272
+ "fluentMethods": [
1273
+ {
1274
+ "name": "title",
1275
+ "params": "(value)",
1276
+ "returns": "this",
1277
+ "description": "Set title"
1278
+ },
1279
+ {
1280
+ "name": "subtitle",
1281
+ "params": "(value)",
1282
+ "returns": "this",
1283
+ "description": "Set subtitle"
1284
+ },
1285
+ {
1286
+ "name": "cta",
1287
+ "params": "(value)",
1288
+ "returns": "this",
1289
+ "description": "Set cta"
1290
+ },
1291
+ {
1292
+ "name": "ctaLink",
1293
+ "params": "(value)",
1294
+ "returns": "this",
1295
+ "description": "Set ctaLink"
1296
+ },
1297
+ {
1298
+ "name": "backgroundImage",
1299
+ "params": "(value)",
1300
+ "returns": "this",
1301
+ "description": "Set backgroundImage"
1302
+ },
1303
+ {
1304
+ "name": "variant",
1305
+ "params": "(value)",
1306
+ "returns": "this",
1307
+ "description": "Set variant"
1308
+ },
1309
+ {
1310
+ "name": "style",
1311
+ "params": "(value)",
1312
+ "returns": "this",
1313
+ "description": "Set style"
1314
+ },
1315
+ {
1316
+ "name": "class",
1317
+ "params": "(value)",
1318
+ "returns": "this",
1319
+ "description": "Set class"
1320
+ },
1321
+ {
1322
+ "name": "render",
1323
+ "params": "(targetId?)",
1324
+ "returns": "this",
1325
+ "description": "Set render"
1326
+ },
1327
+ {
1328
+ "name": "renderTo",
1329
+ "params": "(juxComponent)",
1330
+ "returns": "this",
1331
+ "description": "Set renderTo"
1332
+ }
1333
+ ],
1334
+ "example": "const hero = jux.hero('myHero', {"
1335
+ },
1336
+ {
1337
+ "name": "Include",
1338
+ "category": "UI Components",
1339
+ "description": "Include - Include external resources (CSS, JS, images, fonts, etc.)",
1340
+ "constructor": "jux.include(urlOrFile: string)",
1341
+ "fluentMethods": [
1342
+ {
1343
+ "name": "withCss",
1344
+ "params": "()",
1345
+ "returns": "this",
1346
+ "description": "Set withCss"
1347
+ },
1348
+ {
1349
+ "name": "withJs",
1350
+ "params": "(options?)",
1351
+ "returns": "this",
1352
+ "description": "Set withJs"
1353
+ },
1354
+ {
1355
+ "name": "withModule",
1356
+ "params": "()",
1357
+ "returns": "this",
1358
+ "description": "Set withModule"
1359
+ },
1360
+ {
1361
+ "name": "withImage",
1362
+ "params": "()",
1363
+ "returns": "this",
1364
+ "description": "Set withImage"
1365
+ },
1366
+ {
1367
+ "name": "withFont",
1368
+ "params": "()",
1369
+ "returns": "this",
1370
+ "description": "Set withFont"
1371
+ },
1372
+ {
1373
+ "name": "withPreload",
1374
+ "params": "(as?)",
1375
+ "returns": "this",
1376
+ "description": "Set withPreload"
1377
+ },
1378
+ {
1379
+ "name": "withPrefetch",
1380
+ "params": "()",
1381
+ "returns": "this",
1382
+ "description": "Set withPrefetch"
1383
+ },
1384
+ {
1385
+ "name": "with",
1386
+ "params": "(options)",
1387
+ "returns": "this",
1388
+ "description": "Set with"
1389
+ },
1390
+ {
1391
+ "name": "inHead",
1392
+ "params": "()",
1393
+ "returns": "this",
1394
+ "description": "Set inHead"
1395
+ },
1396
+ {
1397
+ "name": "inBody",
1398
+ "params": "()",
1399
+ "returns": "this",
1400
+ "description": "Set inBody"
1401
+ },
1402
+ {
1403
+ "name": "async",
1404
+ "params": "()",
1405
+ "returns": "this",
1406
+ "description": "Set async"
1407
+ },
1408
+ {
1409
+ "name": "defer",
1410
+ "params": "()",
1411
+ "returns": "this",
1412
+ "description": "Set defer"
1413
+ },
1414
+ {
1415
+ "name": "crossOrigin",
1416
+ "params": "(value)",
1417
+ "returns": "this",
1418
+ "description": "Set crossOrigin"
1419
+ },
1420
+ {
1421
+ "name": "integrity",
1422
+ "params": "(hash)",
1423
+ "returns": "this",
1424
+ "description": "Set integrity"
1425
+ },
1426
+ {
1427
+ "name": "render",
1428
+ "params": "()",
1429
+ "returns": "this",
1430
+ "description": "Set render"
1431
+ },
1432
+ {
1433
+ "name": "remove",
1434
+ "params": "()",
1435
+ "returns": "this",
1436
+ "description": "Set remove"
1437
+ }
1438
+ ],
1439
+ "example": "jux.include('styles.css');"
1440
+ },
1441
+ {
1442
+ "name": "Input",
1443
+ "category": "UI Components",
1444
+ "description": "Input component options",
1445
+ "constructor": "jux.input(id: string, options: InputOptions = {})",
1446
+ "fluentMethods": [
1447
+ {
1448
+ "name": "type",
1449
+ "params": "(value)",
1450
+ "returns": "this",
1451
+ "description": "Set type"
1452
+ },
1453
+ {
1454
+ "name": "value",
1455
+ "params": "(value)",
1456
+ "returns": "this",
1457
+ "description": "Set value"
1458
+ },
1459
+ {
1460
+ "name": "placeholder",
1461
+ "params": "(value)",
1462
+ "returns": "this",
1463
+ "description": "Set placeholder"
1464
+ },
1465
+ {
1466
+ "name": "label",
1467
+ "params": "(value)",
1468
+ "returns": "this",
1469
+ "description": "Set label"
1470
+ },
1471
+ {
1472
+ "name": "required",
1473
+ "params": "(value)",
1474
+ "returns": "this",
1475
+ "description": "Set required"
1476
+ },
1477
+ {
1478
+ "name": "disabled",
1479
+ "params": "(value)",
1480
+ "returns": "this",
1481
+ "description": "Set disabled"
1482
+ },
1483
+ {
1484
+ "name": "name",
1485
+ "params": "(value)",
1486
+ "returns": "this",
1487
+ "description": "Set name"
1488
+ },
1489
+ {
1490
+ "name": "rows",
1491
+ "params": "(value)",
1492
+ "returns": "this",
1493
+ "description": "Set rows"
1494
+ },
1495
+ {
1496
+ "name": "style",
1497
+ "params": "(value)",
1498
+ "returns": "this",
1499
+ "description": "Set style"
1500
+ },
1501
+ {
1502
+ "name": "class",
1503
+ "params": "(value)",
1504
+ "returns": "this",
1505
+ "description": "Set class"
1506
+ },
1507
+ {
1508
+ "name": "bind",
1509
+ "params": "(stateObj)",
1510
+ "returns": "this",
1511
+ "description": "Set bind"
1512
+ },
1513
+ {
1514
+ "name": "render",
1515
+ "params": "(targetId?)",
1516
+ "returns": "this",
1517
+ "description": "Set render"
1518
+ },
1519
+ {
1520
+ "name": "renderTo",
1521
+ "params": "(juxComponent)",
1522
+ "returns": "this",
1523
+ "description": "Set renderTo"
1524
+ }
1525
+ ],
1526
+ "example": "jux.input('username')"
1527
+ },
1528
+ {
1529
+ "name": "Loading",
1530
+ "category": "UI Components",
1531
+ "description": "Loading component options",
1532
+ "constructor": "jux.loading(id: string, options: LoadingOptions = {})",
1533
+ "fluentMethods": [
1534
+ {
1535
+ "name": "variant",
1536
+ "params": "(value)",
1537
+ "returns": "this",
1538
+ "description": "Set variant"
1539
+ },
1540
+ {
1541
+ "name": "size",
1542
+ "params": "(value)",
1543
+ "returns": "this",
1544
+ "description": "Set size"
1545
+ },
1546
+ {
1547
+ "name": "text",
1548
+ "params": "(value)",
1549
+ "returns": "this",
1550
+ "description": "Set text"
1551
+ },
1552
+ {
1553
+ "name": "fullscreen",
1554
+ "params": "(value)",
1555
+ "returns": "this",
1556
+ "description": "Set fullscreen"
1557
+ },
1558
+ {
1559
+ "name": "style",
1560
+ "params": "(value)",
1561
+ "returns": "this",
1562
+ "description": "Set style"
1563
+ },
1564
+ {
1565
+ "name": "class",
1566
+ "params": "(value)",
1567
+ "returns": "this",
1568
+ "description": "Set class"
1569
+ },
1570
+ {
1571
+ "name": "render",
1572
+ "params": "(targetId?)",
1573
+ "returns": "this",
1574
+ "description": "Set render"
1575
+ },
1576
+ {
1577
+ "name": "renderTo",
1578
+ "params": "(juxComponent)",
1579
+ "returns": "this",
1580
+ "description": "Set renderTo"
1581
+ }
1582
+ ],
1583
+ "example": "jux.loading('my-spinner', {"
1584
+ },
1585
+ {
1586
+ "name": "Main",
1587
+ "category": "UI Components",
1588
+ "description": "Main component options",
1589
+ "constructor": "jux.main(id: string, options: MainOptions = {})",
1590
+ "fluentMethods": [
1591
+ {
1592
+ "name": "content",
1593
+ "params": "(value)",
1594
+ "returns": "this",
1595
+ "description": "Set content"
1596
+ },
1597
+ {
1598
+ "name": "padding",
1599
+ "params": "(value)",
1600
+ "returns": "this",
1601
+ "description": "Set padding"
1602
+ },
1603
+ {
1604
+ "name": "style",
1605
+ "params": "(value)",
1606
+ "returns": "this",
1607
+ "description": "Set style"
1608
+ },
1609
+ {
1610
+ "name": "class",
1611
+ "params": "(value)",
1612
+ "returns": "this",
1613
+ "description": "Set class"
1614
+ },
1615
+ {
1616
+ "name": "render",
1617
+ "params": "(targetId?)",
1618
+ "returns": "this",
1619
+ "description": "Set render"
1620
+ },
1621
+ {
1622
+ "name": "renderTo",
1623
+ "params": "(juxComponent)",
1624
+ "returns": "this",
1625
+ "description": "Set renderTo"
1626
+ }
1627
+ ],
1628
+ "example": "const main = jux.main('myMain', {"
1629
+ },
1630
+ {
1631
+ "name": "Menu",
1632
+ "category": "UI Components",
1633
+ "description": "Menu item configuration",
1634
+ "constructor": "jux.menu(id: string, options: MenuOptions = {})",
1635
+ "fluentMethods": [
1636
+ {
1637
+ "name": "items",
1638
+ "params": "(value)",
1639
+ "returns": "this",
1640
+ "description": "Set items"
1641
+ },
1642
+ {
1643
+ "name": "addItem",
1644
+ "params": "(item)",
1645
+ "returns": "this",
1646
+ "description": "Set addItem"
1647
+ },
1648
+ {
1649
+ "name": "orientation",
1650
+ "params": "(value)",
1651
+ "returns": "this",
1652
+ "description": "Set orientation"
1653
+ },
1654
+ {
1655
+ "name": "style",
1656
+ "params": "(value)",
1657
+ "returns": "this",
1658
+ "description": "Set style"
1659
+ },
1660
+ {
1661
+ "name": "class",
1662
+ "params": "(value)",
1663
+ "returns": "this",
1664
+ "description": "Set class"
1665
+ },
1666
+ {
1667
+ "name": "render",
1668
+ "params": "(targetId?)",
1669
+ "returns": "this",
1670
+ "description": "Set render"
1671
+ },
1672
+ {
1673
+ "name": "renderTo",
1674
+ "params": "(juxComponent)",
1675
+ "returns": "this",
1676
+ "description": "Set renderTo"
1677
+ }
1678
+ ],
1679
+ "example": "const menu = jux.menu('myMenu', {"
1680
+ },
1681
+ {
1682
+ "name": "Modal",
1683
+ "category": "UI Components",
1684
+ "description": "Modal component options",
1685
+ "constructor": "jux.modal(id: string, options: ModalOptions = {})",
1686
+ "fluentMethods": [
1687
+ {
1688
+ "name": "title",
1689
+ "params": "(value)",
1690
+ "returns": "this",
1691
+ "description": "Set title"
1692
+ },
1693
+ {
1694
+ "name": "content",
1695
+ "params": "(value)",
1696
+ "returns": "this",
1697
+ "description": "Set content"
1698
+ },
1699
+ {
1700
+ "name": "showCloseButton",
1701
+ "params": "(value)",
1702
+ "returns": "this",
1703
+ "description": "Set showCloseButton"
1704
+ },
1705
+ {
1706
+ "name": "closeOnBackdropClick",
1707
+ "params": "(value)",
1708
+ "returns": "this",
1709
+ "description": "Set closeOnBackdropClick"
1710
+ },
1711
+ {
1712
+ "name": "size",
1713
+ "params": "(value)",
1714
+ "returns": "this",
1715
+ "description": "Set size"
1716
+ },
1717
+ {
1718
+ "name": "style",
1719
+ "params": "(value)",
1720
+ "returns": "this",
1721
+ "description": "Set style"
1722
+ },
1723
+ {
1724
+ "name": "class",
1725
+ "params": "(value)",
1726
+ "returns": "this",
1727
+ "description": "Set class"
1728
+ },
1729
+ {
1730
+ "name": "open",
1731
+ "params": "()",
1732
+ "returns": "this",
1733
+ "description": "Set open"
1734
+ },
1735
+ {
1736
+ "name": "close",
1737
+ "params": "()",
1738
+ "returns": "this",
1739
+ "description": "Set close"
1740
+ },
1741
+ {
1742
+ "name": "render",
1743
+ "params": "(targetId?)",
1744
+ "returns": "this",
1745
+ "description": "Set render"
1746
+ },
1747
+ {
1748
+ "name": "renderTo",
1749
+ "params": "(juxComponent)",
1750
+ "returns": "this",
1751
+ "description": "Set renderTo"
1752
+ }
1753
+ ],
1754
+ "example": "const modal = jux.modal('myModal', {"
1755
+ },
1756
+ {
1757
+ "name": "Nav",
1758
+ "category": "UI Components",
1759
+ "description": "Nav item configuration",
1760
+ "constructor": "jux.nav(id: string, options: NavOptions = {})",
1761
+ "fluentMethods": [
1762
+ {
1763
+ "name": "items",
1764
+ "params": "(value)",
1765
+ "returns": "this",
1766
+ "description": "Set items"
1767
+ },
1768
+ {
1769
+ "name": "addItem",
1770
+ "params": "(item)",
1771
+ "returns": "this",
1772
+ "description": "Set addItem"
1773
+ },
1774
+ {
1775
+ "name": "variant",
1776
+ "params": "(value)",
1777
+ "returns": "this",
1778
+ "description": "Set variant"
1779
+ },
1780
+ {
1781
+ "name": "style",
1782
+ "params": "(value)",
1783
+ "returns": "this",
1784
+ "description": "Set style"
1785
+ },
1786
+ {
1787
+ "name": "class",
1788
+ "params": "(value)",
1789
+ "returns": "this",
1790
+ "description": "Set class"
1791
+ },
1792
+ {
1793
+ "name": "render",
1794
+ "params": "(targetId?)",
1795
+ "returns": "this",
1796
+ "description": "Set render"
1797
+ },
1798
+ {
1799
+ "name": "renderTo",
1800
+ "params": "(juxComponent)",
1801
+ "returns": "this",
1802
+ "description": "Set renderTo"
1803
+ }
1804
+ ],
1805
+ "example": "const nav = jux.nav('myNav', {"
1806
+ },
1807
+ {
1808
+ "name": "Paragraph",
1809
+ "category": "UI Components",
1810
+ "description": "Paragraph options",
1811
+ "constructor": "jux.paragraph(id: string, options: ParagraphOptions = {})",
1812
+ "fluentMethods": [
1813
+ {
1814
+ "name": "text",
1815
+ "params": "(value)",
1816
+ "returns": "this",
1817
+ "description": "Set text"
1818
+ },
1819
+ {
1820
+ "name": "class",
1821
+ "params": "(value)",
1822
+ "returns": "this",
1823
+ "description": "Set class"
1824
+ },
1825
+ {
1826
+ "name": "style",
1827
+ "params": "(value)",
1828
+ "returns": "this",
1829
+ "description": "Set style"
1830
+ },
1831
+ {
1832
+ "name": "render",
1833
+ "params": "(targetId?)",
1834
+ "returns": "this",
1835
+ "description": "Set render"
1836
+ }
1837
+ ],
1838
+ "example": "jux.paragraph('intro', { text: 'Welcome to JUX' }).render('#app');"
1839
+ },
1840
+ {
1841
+ "name": "Progress",
1842
+ "category": "UI Components",
1843
+ "description": "Progress component options",
1844
+ "constructor": "jux.progress(id: string, options: ProgressOptions = {})",
1845
+ "fluentMethods": [
1846
+ {
1847
+ "name": "value",
1848
+ "params": "(value)",
1849
+ "returns": "this",
1850
+ "description": "Set value"
1851
+ },
1852
+ {
1853
+ "name": "max",
1854
+ "params": "(value)",
1855
+ "returns": "this",
1856
+ "description": "Set max"
1857
+ },
1858
+ {
1859
+ "name": "label",
1860
+ "params": "(value)",
1861
+ "returns": "this",
1862
+ "description": "Set label"
1863
+ },
1864
+ {
1865
+ "name": "showPercentage",
1866
+ "params": "(value)",
1867
+ "returns": "this",
1868
+ "description": "Set showPercentage"
1869
+ },
1870
+ {
1871
+ "name": "variant",
1872
+ "params": "(value)",
1873
+ "returns": "this",
1874
+ "description": "Set variant"
1875
+ },
1876
+ {
1877
+ "name": "size",
1878
+ "params": "(value)",
1879
+ "returns": "this",
1880
+ "description": "Set size"
1881
+ },
1882
+ {
1883
+ "name": "striped",
1884
+ "params": "(value)",
1885
+ "returns": "this",
1886
+ "description": "Set striped"
1887
+ },
1888
+ {
1889
+ "name": "animated",
1890
+ "params": "(value)",
1891
+ "returns": "this",
1892
+ "description": "Set animated"
1893
+ },
1894
+ {
1895
+ "name": "style",
1896
+ "params": "(value)",
1897
+ "returns": "this",
1898
+ "description": "Set style"
1899
+ },
1900
+ {
1901
+ "name": "class",
1902
+ "params": "(value)",
1903
+ "returns": "this",
1904
+ "description": "Set class"
1905
+ },
1906
+ {
1907
+ "name": "bind",
1908
+ "params": "(stateObj)",
1909
+ "returns": "this",
1910
+ "description": "Set bind"
1911
+ },
1912
+ {
1913
+ "name": "render",
1914
+ "params": "(targetId?)",
1915
+ "returns": "this",
1916
+ "description": "Set render"
1917
+ },
1918
+ {
1919
+ "name": "renderTo",
1920
+ "params": "(juxComponent)",
1921
+ "returns": "this",
1922
+ "description": "Set renderTo"
1923
+ }
1924
+ ],
1925
+ "example": "jux.progress('upload', {"
1926
+ },
1927
+ {
1928
+ "name": "Radio",
1929
+ "category": "UI Components",
1930
+ "description": "Radio option",
1931
+ "constructor": "jux.radio(id: string, options: RadioOptions = {})",
1932
+ "fluentMethods": [
1933
+ {
1934
+ "name": "options",
1935
+ "params": "(value)",
1936
+ "returns": "this",
1937
+ "description": "Set options"
1938
+ },
1939
+ {
1940
+ "name": "addOption",
1941
+ "params": "(option)",
1942
+ "returns": "this",
1943
+ "description": "Set addOption"
1944
+ },
1945
+ {
1946
+ "name": "value",
1947
+ "params": "(value)",
1948
+ "returns": "this",
1949
+ "description": "Set value"
1950
+ },
1951
+ {
1952
+ "name": "name",
1953
+ "params": "(value)",
1954
+ "returns": "this",
1955
+ "description": "Set name"
1956
+ },
1957
+ {
1958
+ "name": "orientation",
1959
+ "params": "(value)",
1960
+ "returns": "this",
1961
+ "description": "Set orientation"
1962
+ },
1963
+ {
1964
+ "name": "style",
1965
+ "params": "(value)",
1966
+ "returns": "this",
1967
+ "description": "Set style"
1968
+ },
1969
+ {
1970
+ "name": "class",
1971
+ "params": "(value)",
1972
+ "returns": "this",
1973
+ "description": "Set class"
1974
+ },
1975
+ {
1976
+ "name": "bind",
1977
+ "params": "(stateObj)",
1978
+ "returns": "this",
1979
+ "description": "Set bind"
1980
+ },
1981
+ {
1982
+ "name": "render",
1983
+ "params": "(targetId?)",
1984
+ "returns": "this",
1985
+ "description": "Set render"
1986
+ },
1987
+ {
1988
+ "name": "renderTo",
1989
+ "params": "(juxComponent)",
1990
+ "returns": "this",
1991
+ "description": "Set renderTo"
1992
+ }
1993
+ ],
1994
+ "example": "jux.radio('size', {"
1995
+ },
1996
+ {
1997
+ "name": "Req",
1998
+ "category": "UI Components",
1999
+ "description": "Request information and utilities",
2000
+ "constructor": "jux.req()",
2001
+ "fluentMethods": [],
2002
+ "example": "jux.req('id').render()"
2003
+ },
2004
+ {
2005
+ "name": "Select",
2006
+ "category": "UI Components",
2007
+ "description": "Select option",
2008
+ "constructor": "jux.select(id: string, options: SelectOptions = {})",
2009
+ "fluentMethods": [
2010
+ {
2011
+ "name": "options",
2012
+ "params": "(value)",
2013
+ "returns": "this",
2014
+ "description": "Set options"
2015
+ },
2016
+ {
2017
+ "name": "addOption",
2018
+ "params": "(option)",
2019
+ "returns": "this",
2020
+ "description": "Set addOption"
2021
+ },
2022
+ {
2023
+ "name": "value",
2024
+ "params": "(value)",
2025
+ "returns": "this",
2026
+ "description": "Set value"
2027
+ },
2028
+ {
2029
+ "name": "placeholder",
2030
+ "params": "(value)",
2031
+ "returns": "this",
2032
+ "description": "Set placeholder"
2033
+ },
2034
+ {
2035
+ "name": "disabled",
2036
+ "params": "(value)",
2037
+ "returns": "this",
2038
+ "description": "Set disabled"
2039
+ },
2040
+ {
2041
+ "name": "name",
2042
+ "params": "(value)",
2043
+ "returns": "this",
2044
+ "description": "Set name"
2045
+ },
2046
+ {
2047
+ "name": "style",
2048
+ "params": "(value)",
2049
+ "returns": "this",
2050
+ "description": "Set style"
2051
+ },
2052
+ {
2053
+ "name": "class",
2054
+ "params": "(value)",
2055
+ "returns": "this",
2056
+ "description": "Set class"
2057
+ },
2058
+ {
2059
+ "name": "bind",
2060
+ "params": "(stateObj)",
2061
+ "returns": "this",
2062
+ "description": "Set bind"
2063
+ },
2064
+ {
2065
+ "name": "render",
2066
+ "params": "(targetId?)",
2067
+ "returns": "this",
2068
+ "description": "Set render"
2069
+ },
2070
+ {
2071
+ "name": "renderTo",
2072
+ "params": "(juxComponent)",
2073
+ "returns": "this",
2074
+ "description": "Set renderTo"
2075
+ }
2076
+ ],
2077
+ "example": "jux.select('country', {"
2078
+ },
2079
+ {
2080
+ "name": "Sidebar",
2081
+ "category": "UI Components",
2082
+ "description": "Sidebar component options",
2083
+ "constructor": "jux.sidebar(id: string, options: SidebarOptions = {})",
2084
+ "fluentMethods": [
2085
+ {
2086
+ "name": "title",
2087
+ "params": "(value)",
2088
+ "returns": "this",
2089
+ "description": "Set title"
2090
+ },
2091
+ {
2092
+ "name": "width",
2093
+ "params": "(value)",
2094
+ "returns": "this",
2095
+ "description": "Set width"
2096
+ },
2097
+ {
2098
+ "name": "position",
2099
+ "params": "(value)",
2100
+ "returns": "this",
2101
+ "description": "Set position"
2102
+ },
2103
+ {
2104
+ "name": "collapsible",
2105
+ "params": "(value)",
2106
+ "returns": "this",
2107
+ "description": "Set collapsible"
2108
+ },
2109
+ {
2110
+ "name": "collapsed",
2111
+ "params": "(value)",
2112
+ "returns": "this",
2113
+ "description": "Set collapsed"
2114
+ },
2115
+ {
2116
+ "name": "style",
2117
+ "params": "(value)",
2118
+ "returns": "this",
2119
+ "description": "Set style"
2120
+ },
2121
+ {
2122
+ "name": "class",
2123
+ "params": "(value)",
2124
+ "returns": "this",
2125
+ "description": "Set class"
2126
+ },
2127
+ {
2128
+ "name": "toggle",
2129
+ "params": "()",
2130
+ "returns": "this",
2131
+ "description": "Set toggle"
2132
+ },
2133
+ {
2134
+ "name": "render",
2135
+ "params": "(targetId?)",
2136
+ "returns": "this",
2137
+ "description": "Set render"
2138
+ },
2139
+ {
2140
+ "name": "renderTo",
2141
+ "params": "(juxComponent)",
2142
+ "returns": "this",
2143
+ "description": "Set renderTo"
2144
+ }
2145
+ ],
2146
+ "example": "const sidebar = jux.sidebar('mySidebar', {"
2147
+ },
2148
+ {
2149
+ "name": "Switch",
2150
+ "category": "UI Components",
2151
+ "description": "Switch component options",
2152
+ "constructor": "jux.switch(id: string, options: SwitchOptions = {})",
2153
+ "fluentMethods": [
2154
+ {
2155
+ "name": "label",
2156
+ "params": "(value)",
2157
+ "returns": "this",
2158
+ "description": "Set label"
2159
+ },
2160
+ {
2161
+ "name": "checked",
2162
+ "params": "(value)",
2163
+ "returns": "this",
2164
+ "description": "Set checked"
2165
+ },
2166
+ {
2167
+ "name": "disabled",
2168
+ "params": "(value)",
2169
+ "returns": "this",
2170
+ "description": "Set disabled"
2171
+ },
2172
+ {
2173
+ "name": "name",
2174
+ "params": "(value)",
2175
+ "returns": "this",
2176
+ "description": "Set name"
2177
+ },
2178
+ {
2179
+ "name": "style",
2180
+ "params": "(value)",
2181
+ "returns": "this",
2182
+ "description": "Set style"
2183
+ },
2184
+ {
2185
+ "name": "class",
2186
+ "params": "(value)",
2187
+ "returns": "this",
2188
+ "description": "Set class"
2189
+ },
2190
+ {
2191
+ "name": "bind",
2192
+ "params": "(stateObj)",
2193
+ "returns": "this",
2194
+ "description": "Set bind"
2195
+ },
2196
+ {
2197
+ "name": "toggle",
2198
+ "params": "()",
2199
+ "returns": "this",
2200
+ "description": "Set toggle"
2201
+ },
2202
+ {
2203
+ "name": "render",
2204
+ "params": "(targetId?)",
2205
+ "returns": "this",
2206
+ "description": "Set render"
2207
+ },
2208
+ {
2209
+ "name": "renderTo",
2210
+ "params": "(juxComponent)",
2211
+ "returns": "this",
2212
+ "description": "Set renderTo"
2213
+ }
2214
+ ],
2215
+ "example": "jux.switch('notifications', {"
2216
+ },
2217
+ {
2218
+ "name": "Tabs",
2219
+ "category": "UI Components",
2220
+ "description": "Tab configuration",
2221
+ "constructor": "jux.tabs(id: string, options: TabsOptions = {})",
2222
+ "fluentMethods": [
2223
+ {
2224
+ "name": "tabs",
2225
+ "params": "(value)",
2226
+ "returns": "this",
2227
+ "description": "Set tabs"
2228
+ },
2229
+ {
2230
+ "name": "addTab",
2231
+ "params": "(tab)",
2232
+ "returns": "this",
2233
+ "description": "Set addTab"
2234
+ },
2235
+ {
2236
+ "name": "activeTab",
2237
+ "params": "(value)",
2238
+ "returns": "this",
2239
+ "description": "Set activeTab"
2240
+ },
2241
+ {
2242
+ "name": "style",
2243
+ "params": "(value)",
2244
+ "returns": "this",
2245
+ "description": "Set style"
2246
+ },
2247
+ {
2248
+ "name": "class",
2249
+ "params": "(value)",
2250
+ "returns": "this",
2251
+ "description": "Set class"
2252
+ },
2253
+ {
2254
+ "name": "render",
2255
+ "params": "(targetId?)",
2256
+ "returns": "this",
2257
+ "description": "Set render"
2258
+ },
2259
+ {
2260
+ "name": "renderTo",
2261
+ "params": "(juxComponent)",
2262
+ "returns": "this",
2263
+ "description": "Set renderTo"
2264
+ }
2265
+ ],
2266
+ "example": "const tabs = jux.tabs('myTabs', {"
2267
+ },
2268
+ {
2269
+ "name": "Theme-toggle",
2270
+ "category": "UI Components",
2271
+ "description": "Theme configuration",
2272
+ "constructor": "jux.theme-toggle(id: string, options: ThemeToggleOptions = {})",
2273
+ "fluentMethods": [
2274
+ {
2275
+ "name": "setTheme",
2276
+ "params": "(themeId)",
2277
+ "returns": "this",
2278
+ "description": "Set setTheme"
2279
+ },
2280
+ {
2281
+ "name": "addTheme",
2282
+ "params": "(theme)",
2283
+ "returns": "this",
2284
+ "description": "Set addTheme"
2285
+ },
2286
+ {
2287
+ "name": "themes",
2288
+ "params": "(value)",
2289
+ "returns": "this",
2290
+ "description": "Set themes"
2291
+ },
2292
+ {
2293
+ "name": "variant",
2294
+ "params": "(value)",
2295
+ "returns": "this",
2296
+ "description": "Set variant"
2297
+ },
2298
+ {
2299
+ "name": "showLabel",
2300
+ "params": "(value)",
2301
+ "returns": "this",
2302
+ "description": "Set showLabel"
2303
+ },
2304
+ {
2305
+ "name": "style",
2306
+ "params": "(value)",
2307
+ "returns": "this",
2308
+ "description": "Set style"
2309
+ },
2310
+ {
2311
+ "name": "class",
2312
+ "params": "(value)",
2313
+ "returns": "this",
2314
+ "description": "Set class"
2315
+ },
2316
+ {
2317
+ "name": "render",
2318
+ "params": "(targetId?)",
2319
+ "returns": "this",
2320
+ "description": "Set render"
2321
+ },
2322
+ {
2323
+ "name": "renderTo",
2324
+ "params": "(juxComponent)",
2325
+ "returns": "this",
2326
+ "description": "Set renderTo"
2327
+ }
2328
+ ],
2329
+ "example": "// Simple light/dark toggle"
2330
+ },
2331
+ {
2332
+ "name": "Token-calculator",
2333
+ "category": "UI Components",
2334
+ "description": "Token Calculator component - Compare framework token costs",
2335
+ "constructor": "jux.token-calculator(id: string, options: TokenCalculatorOptions = {})",
2336
+ "fluentMethods": [
2337
+ {
2338
+ "name": "lines",
2339
+ "params": "(value)",
2340
+ "returns": "this",
2341
+ "description": "Set lines"
2342
+ },
2343
+ {
2344
+ "name": "multiplier",
2345
+ "params": "(framework, value)",
2346
+ "returns": "this",
2347
+ "description": "Set multiplier"
2348
+ },
2349
+ {
2350
+ "name": "tokensPerLine",
2351
+ "params": "(value)",
2352
+ "returns": "this",
2353
+ "description": "Set tokensPerLine"
2354
+ },
2355
+ {
2356
+ "name": "showComparison",
2357
+ "params": "(value)",
2358
+ "returns": "this",
2359
+ "description": "Set showComparison"
2360
+ },
2361
+ {
2362
+ "name": "animated",
2363
+ "params": "(value)",
2364
+ "returns": "this",
2365
+ "description": "Set animated"
2366
+ },
2367
+ {
2368
+ "name": "style",
2369
+ "params": "(value)",
2370
+ "returns": "this",
2371
+ "description": "Set style"
2372
+ },
2373
+ {
2374
+ "name": "class",
2375
+ "params": "(value)",
2376
+ "returns": "this",
2377
+ "description": "Set class"
2378
+ },
2379
+ {
2380
+ "name": "render",
2381
+ "params": "(targetId?)",
2382
+ "returns": "this",
2383
+ "description": "Set render"
2384
+ }
2385
+ ],
2386
+ "example": "jux.token-calculator('id').render()"
2387
+ },
2388
+ {
2389
+ "name": "Tooltip",
2390
+ "category": "UI Components",
2391
+ "description": "Tooltip component options",
2392
+ "constructor": "jux.tooltip(id: string, options: TooltipOptions = {})",
2393
+ "fluentMethods": [
2394
+ {
2395
+ "name": "text",
2396
+ "params": "(value)",
2397
+ "returns": "this",
2398
+ "description": "Set text"
2399
+ },
2400
+ {
2401
+ "name": "position",
2402
+ "params": "(value)",
2403
+ "returns": "this",
2404
+ "description": "Set position"
2405
+ },
2406
+ {
2407
+ "name": "trigger",
2408
+ "params": "(value)",
2409
+ "returns": "this",
2410
+ "description": "Set trigger"
2411
+ },
2412
+ {
2413
+ "name": "style",
2414
+ "params": "(value)",
2415
+ "returns": "this",
2416
+ "description": "Set style"
2417
+ },
2418
+ {
2419
+ "name": "class",
2420
+ "params": "(value)",
2421
+ "returns": "this",
2422
+ "description": "Set class"
2423
+ },
2424
+ {
2425
+ "name": "attachTo",
2426
+ "params": "(target)",
2427
+ "returns": "this",
2428
+ "description": "Set attachTo"
2429
+ },
2430
+ {
2431
+ "name": "render",
2432
+ "params": "(targetId?)",
2433
+ "returns": "this",
2434
+ "description": "Set render"
2435
+ },
2436
+ {
2437
+ "name": "renderTo",
2438
+ "params": "(juxComponent)",
2439
+ "returns": "this",
2440
+ "description": "Set renderTo"
2441
+ }
2442
+ ],
2443
+ "example": "// Attach to existing element"
2444
+ },
2445
+ {
2446
+ "name": "View",
2447
+ "category": "UI Components",
2448
+ "description": "View component options",
2449
+ "constructor": "jux.view(id: string, options: ViewOptions = {})",
2450
+ "fluentMethods": [
2451
+ {
2452
+ "name": "title",
1189
2453
  "params": "(value)",
1190
2454
  "returns": "this",
1191
2455
  "description": "Set title"
@@ -1204,8 +2468,53 @@
1204
2468
  }
1205
2469
  ],
1206
2470
  "example": "const view = jux.view('myView', {"
2471
+ },
2472
+ {
2473
+ "name": "Write",
2474
+ "category": "UI Components",
2475
+ "description": "Write - Simple content writer with no component tracking",
2476
+ "constructor": "jux.write(content: string, options: WriteOptions = {})",
2477
+ "fluentMethods": [
2478
+ {
2479
+ "name": "render",
2480
+ "params": "(targetSelector?)",
2481
+ "returns": "this",
2482
+ "description": "Set render"
2483
+ },
2484
+ {
2485
+ "name": "replace",
2486
+ "params": "(targetSelector?)",
2487
+ "returns": "this",
2488
+ "description": "Set replace"
2489
+ },
2490
+ {
2491
+ "name": "before",
2492
+ "params": "(targetSelector)",
2493
+ "returns": "this",
2494
+ "description": "Set before"
2495
+ },
2496
+ {
2497
+ "name": "after",
2498
+ "params": "(targetSelector)",
2499
+ "returns": "this",
2500
+ "description": "Set after"
2501
+ },
2502
+ {
2503
+ "name": "prepend",
2504
+ "params": "(targetSelector?)",
2505
+ "returns": "this",
2506
+ "description": "Set prepend"
2507
+ },
2508
+ {
2509
+ "name": "append",
2510
+ "params": "(targetSelector?)",
2511
+ "returns": "this",
2512
+ "description": "Set append"
2513
+ }
2514
+ ],
2515
+ "example": "// Write text (defaults to body)"
1207
2516
  }
1208
2517
  ],
1209
2518
  "version": "1.0.0",
1210
- "lastUpdated": "2026-01-16T23:06:56.674Z"
2519
+ "lastUpdated": "2026-01-20T15:24:57.688Z"
1211
2520
  }