astralyx-ui 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/registry/index.json +462 -1
- package/registry/items/ab-test-results.json +21 -0
- package/registry/items/attribution.json +19 -0
- package/registry/items/back-to-top.json +21 -0
- package/registry/items/bottom-nav.json +19 -0
- package/registry/items/box-plot.json +19 -0
- package/registry/items/cascader.json +23 -0
- package/registry/items/cookie-consent.json +20 -0
- package/registry/items/currency-input.json +19 -0
- package/registry/items/emoji-picker.json +21 -0
- package/registry/items/event-stream.json +22 -0
- package/registry/items/gantt.json +19 -0
- package/registry/items/image-cropper.json +20 -0
- package/registry/items/knowledge-graph.json +20 -0
- package/registry/items/lib-qr.json +14 -0
- package/registry/items/lib-styles.json +1 -1
- package/registry/items/lib-use-force-graph.json +14 -0
- package/registry/items/markdown-editor.json +23 -0
- package/registry/items/markdown.json +24 -0
- package/registry/items/note-graph.json +20 -0
- package/registry/items/org-chart.json +21 -0
- package/registry/items/pdf-viewer.json +22 -0
- package/registry/items/phone-input.json +19 -0
- package/registry/items/popconfirm.json +24 -0
- package/registry/items/qr-code.json +20 -0
- package/registry/items/radar-chart.json +19 -0
- package/registry/items/result.json +21 -0
- package/registry/items/retention-curve.json +19 -0
- package/registry/items/sankey.json +19 -0
- package/registry/items/scatter-plot.json +19 -0
- package/registry/items/scheduler.json +19 -0
- package/registry/items/segment-builder.json +23 -0
- package/registry/items/segmented-control.json +19 -0
- package/registry/items/select.json +1 -1
- package/registry/items/signature-pad.json +20 -0
- package/registry/items/transfer.json +22 -0
- package/registry/items/tree-select.json +23 -0
- package/registry/items/treemap.json +19 -0
package/package.json
CHANGED
package/registry/index.json
CHANGED
|
@@ -1,8 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "astralyx-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"homepage": "https://ui.astralyx.dev",
|
|
5
5
|
"items": [
|
|
6
|
+
{
|
|
7
|
+
"name": "ab-test-results",
|
|
8
|
+
"type": "registry:ui",
|
|
9
|
+
"title": "A/B Test Results",
|
|
10
|
+
"description": "Variants with lift, a confidence interval and a two-proportion z-test — plus the peeking warning, because stopping at the first significant reading is the failure that actually happens.",
|
|
11
|
+
"category": "Analytics",
|
|
12
|
+
"dependencies": [
|
|
13
|
+
"lucide-react@^1.39.0"
|
|
14
|
+
],
|
|
15
|
+
"registryDependencies": [
|
|
16
|
+
"lib-styles",
|
|
17
|
+
"lib-utils"
|
|
18
|
+
]
|
|
19
|
+
},
|
|
6
20
|
{
|
|
7
21
|
"name": "accordion",
|
|
8
22
|
"type": "registry:ui",
|
|
@@ -216,6 +230,18 @@
|
|
|
216
230
|
"progress"
|
|
217
231
|
]
|
|
218
232
|
},
|
|
233
|
+
{
|
|
234
|
+
"name": "attribution",
|
|
235
|
+
"type": "registry:ui",
|
|
236
|
+
"title": "Attribution",
|
|
237
|
+
"description": "Credit for a conversion split across touchpoints, with the model as a control rather than a buried setting — because the disagreement between models is the whole finding.",
|
|
238
|
+
"category": "Analytics",
|
|
239
|
+
"dependencies": [],
|
|
240
|
+
"registryDependencies": [
|
|
241
|
+
"lib-styles",
|
|
242
|
+
"lib-utils"
|
|
243
|
+
]
|
|
244
|
+
},
|
|
219
245
|
{
|
|
220
246
|
"name": "audio-player",
|
|
221
247
|
"type": "registry:ui",
|
|
@@ -264,6 +290,20 @@
|
|
|
264
290
|
"lib-utils"
|
|
265
291
|
]
|
|
266
292
|
},
|
|
293
|
+
{
|
|
294
|
+
"name": "back-to-top",
|
|
295
|
+
"type": "registry:ui",
|
|
296
|
+
"title": "Back To Top",
|
|
297
|
+
"description": "Appears once you have scrolled, driven by an IntersectionObserver sentinel rather than a scroll handler — and it moves focus, not just the viewport.",
|
|
298
|
+
"category": "Navigation",
|
|
299
|
+
"dependencies": [
|
|
300
|
+
"lucide-react@^1.39.0"
|
|
301
|
+
],
|
|
302
|
+
"registryDependencies": [
|
|
303
|
+
"lib-styles",
|
|
304
|
+
"lib-utils"
|
|
305
|
+
]
|
|
306
|
+
},
|
|
267
307
|
{
|
|
268
308
|
"name": "backup-list",
|
|
269
309
|
"type": "registry:ui",
|
|
@@ -355,6 +395,30 @@
|
|
|
355
395
|
"tooltip"
|
|
356
396
|
]
|
|
357
397
|
},
|
|
398
|
+
{
|
|
399
|
+
"name": "bottom-nav",
|
|
400
|
+
"type": "registry:ui",
|
|
401
|
+
"title": "Bottom Nav",
|
|
402
|
+
"description": "The mobile tab bar — three to five destinations, pinned to the bottom where thumbs are, with the home-indicator safe area accounted for.",
|
|
403
|
+
"category": "Navigation",
|
|
404
|
+
"dependencies": [],
|
|
405
|
+
"registryDependencies": [
|
|
406
|
+
"lib-styles",
|
|
407
|
+
"lib-utils"
|
|
408
|
+
]
|
|
409
|
+
},
|
|
410
|
+
{
|
|
411
|
+
"name": "box-plot",
|
|
412
|
+
"type": "registry:ui",
|
|
413
|
+
"title": "Box Plot",
|
|
414
|
+
"description": "Quartiles, Tukey whiskers and outliers — the distribution an average hides. Quartiles use linear interpolation, so they agree with what your analytics stack reports.",
|
|
415
|
+
"category": "Charts",
|
|
416
|
+
"dependencies": [],
|
|
417
|
+
"registryDependencies": [
|
|
418
|
+
"lib-styles",
|
|
419
|
+
"lib-utils"
|
|
420
|
+
]
|
|
421
|
+
},
|
|
358
422
|
{
|
|
359
423
|
"name": "branch-select",
|
|
360
424
|
"type": "registry:ui",
|
|
@@ -622,6 +686,22 @@
|
|
|
622
686
|
"lib-utils"
|
|
623
687
|
]
|
|
624
688
|
},
|
|
689
|
+
{
|
|
690
|
+
"name": "cascader",
|
|
691
|
+
"type": "registry:ui",
|
|
692
|
+
"title": "Cascader",
|
|
693
|
+
"description": "A regular hierarchy picked one level at a time, in side-by-side columns — so the path stays readable and the siblings you passed are still visible.",
|
|
694
|
+
"category": "Forms",
|
|
695
|
+
"dependencies": [
|
|
696
|
+
"lucide-react@^1.39.0"
|
|
697
|
+
],
|
|
698
|
+
"registryDependencies": [
|
|
699
|
+
"lib-styles",
|
|
700
|
+
"lib-utils",
|
|
701
|
+
"primitive-dismissable",
|
|
702
|
+
"primitive-popper"
|
|
703
|
+
]
|
|
704
|
+
},
|
|
625
705
|
{
|
|
626
706
|
"name": "chain-select",
|
|
627
707
|
"type": "registry:ui",
|
|
@@ -985,6 +1065,19 @@
|
|
|
985
1065
|
"lib-utils"
|
|
986
1066
|
]
|
|
987
1067
|
},
|
|
1068
|
+
{
|
|
1069
|
+
"name": "cookie-consent",
|
|
1070
|
+
"type": "registry:ui",
|
|
1071
|
+
"title": "Cookie Consent",
|
|
1072
|
+
"description": "A consent banner with reject as easy as accept, nothing pre-ticked, and no cookie written by the component itself — the arrangement regulators have repeatedly ruled is the compliant one.",
|
|
1073
|
+
"category": "Utility",
|
|
1074
|
+
"dependencies": [],
|
|
1075
|
+
"registryDependencies": [
|
|
1076
|
+
"button",
|
|
1077
|
+
"lib-styles",
|
|
1078
|
+
"lib-utils"
|
|
1079
|
+
]
|
|
1080
|
+
},
|
|
988
1081
|
{
|
|
989
1082
|
"name": "coordinate-input",
|
|
990
1083
|
"type": "registry:ui",
|
|
@@ -1096,6 +1189,18 @@
|
|
|
1096
1189
|
"code-block"
|
|
1097
1190
|
]
|
|
1098
1191
|
},
|
|
1192
|
+
{
|
|
1193
|
+
"name": "currency-input",
|
|
1194
|
+
"type": "registry:ui",
|
|
1195
|
+
"title": "Currency Input",
|
|
1196
|
+
"description": "A money field whose value is an integer number of minor units, formatted only while unfocused. Reads its decimal count from Intl, so zero-decimal currencies work without a special case.",
|
|
1197
|
+
"category": "Forms",
|
|
1198
|
+
"dependencies": [],
|
|
1199
|
+
"registryDependencies": [
|
|
1200
|
+
"lib-styles",
|
|
1201
|
+
"lib-utils"
|
|
1202
|
+
]
|
|
1203
|
+
},
|
|
1099
1204
|
{
|
|
1100
1205
|
"name": "data-grid",
|
|
1101
1206
|
"type": "registry:ui",
|
|
@@ -1345,6 +1450,20 @@
|
|
|
1345
1450
|
"upload-list"
|
|
1346
1451
|
]
|
|
1347
1452
|
},
|
|
1453
|
+
{
|
|
1454
|
+
"name": "emoji-picker",
|
|
1455
|
+
"type": "registry:ui",
|
|
1456
|
+
"title": "Emoji Picker",
|
|
1457
|
+
"description": "A grouped, searchable grid with recents, rendered as text rather than sprites. One tab stop with arrow-key movement, and it never touches localStorage.",
|
|
1458
|
+
"category": "Forms",
|
|
1459
|
+
"dependencies": [
|
|
1460
|
+
"lucide-react@^1.39.0"
|
|
1461
|
+
],
|
|
1462
|
+
"registryDependencies": [
|
|
1463
|
+
"lib-styles",
|
|
1464
|
+
"lib-utils"
|
|
1465
|
+
]
|
|
1466
|
+
},
|
|
1348
1467
|
{
|
|
1349
1468
|
"name": "empty",
|
|
1350
1469
|
"type": "registry:ui",
|
|
@@ -1451,6 +1570,21 @@
|
|
|
1451
1570
|
"lib-utils"
|
|
1452
1571
|
]
|
|
1453
1572
|
},
|
|
1573
|
+
{
|
|
1574
|
+
"name": "event-stream",
|
|
1575
|
+
"type": "registry:ui",
|
|
1576
|
+
"title": "Event Stream",
|
|
1577
|
+
"description": "A live tail of analytics events with their payloads — the tool for debugging the tracking itself. Autoscroll pauses when you scroll away and the list is capped rather than unbounded.",
|
|
1578
|
+
"category": "Analytics",
|
|
1579
|
+
"dependencies": [
|
|
1580
|
+
"lucide-react@^1.39.0"
|
|
1581
|
+
],
|
|
1582
|
+
"registryDependencies": [
|
|
1583
|
+
"button",
|
|
1584
|
+
"lib-styles",
|
|
1585
|
+
"lib-utils"
|
|
1586
|
+
]
|
|
1587
|
+
},
|
|
1454
1588
|
{
|
|
1455
1589
|
"name": "feature-flag",
|
|
1456
1590
|
"type": "registry:ui",
|
|
@@ -1625,6 +1759,18 @@
|
|
|
1625
1759
|
"lib-utils"
|
|
1626
1760
|
]
|
|
1627
1761
|
},
|
|
1762
|
+
{
|
|
1763
|
+
"name": "gantt",
|
|
1764
|
+
"type": "registry:ui",
|
|
1765
|
+
"title": "Gantt",
|
|
1766
|
+
"description": "Work on a timeline: bars for duration, a computed critical path, and dependency conflicts drawn as conflicts rather than quietly rendered backwards.",
|
|
1767
|
+
"category": "Views",
|
|
1768
|
+
"dependencies": [],
|
|
1769
|
+
"registryDependencies": [
|
|
1770
|
+
"lib-styles",
|
|
1771
|
+
"lib-utils"
|
|
1772
|
+
]
|
|
1773
|
+
},
|
|
1628
1774
|
{
|
|
1629
1775
|
"name": "gas-tracker",
|
|
1630
1776
|
"type": "registry:ui",
|
|
@@ -1764,6 +1910,19 @@
|
|
|
1764
1910
|
"lib-utils"
|
|
1765
1911
|
]
|
|
1766
1912
|
},
|
|
1913
|
+
{
|
|
1914
|
+
"name": "image-cropper",
|
|
1915
|
+
"type": "registry:ui",
|
|
1916
|
+
"title": "Image Cropper",
|
|
1917
|
+
"description": "The step between picking an image and saving it. The crop is stored in natural image coordinates and exported with toBlob, so it survives a resize and uploads directly.",
|
|
1918
|
+
"category": "Media",
|
|
1919
|
+
"dependencies": [],
|
|
1920
|
+
"registryDependencies": [
|
|
1921
|
+
"button",
|
|
1922
|
+
"lib-styles",
|
|
1923
|
+
"lib-utils"
|
|
1924
|
+
]
|
|
1925
|
+
},
|
|
1767
1926
|
{
|
|
1768
1927
|
"name": "image",
|
|
1769
1928
|
"type": "registry:ui",
|
|
@@ -1964,6 +2123,19 @@
|
|
|
1964
2123
|
"lib-utils"
|
|
1965
2124
|
]
|
|
1966
2125
|
},
|
|
2126
|
+
{
|
|
2127
|
+
"name": "knowledge-graph",
|
|
2128
|
+
"type": "registry:ui",
|
|
2129
|
+
"title": "Knowledge Graph",
|
|
2130
|
+
"description": "Entities and the named relations between them. Where a note graph answers what is connected, this answers how — and the edge label carries as much meaning as the nodes, so relations are labelled and directed.",
|
|
2131
|
+
"category": "Knowledge",
|
|
2132
|
+
"dependencies": [],
|
|
2133
|
+
"registryDependencies": [
|
|
2134
|
+
"lib-styles",
|
|
2135
|
+
"lib-use-force-graph",
|
|
2136
|
+
"lib-utils"
|
|
2137
|
+
]
|
|
2138
|
+
},
|
|
1967
2139
|
{
|
|
1968
2140
|
"name": "label-picker",
|
|
1969
2141
|
"type": "registry:ui",
|
|
@@ -2130,6 +2302,39 @@
|
|
|
2130
2302
|
"lib-utils"
|
|
2131
2303
|
]
|
|
2132
2304
|
},
|
|
2305
|
+
{
|
|
2306
|
+
"name": "markdown-editor",
|
|
2307
|
+
"type": "registry:ui",
|
|
2308
|
+
"title": "Markdown Editor",
|
|
2309
|
+
"description": "A real textarea, a toolbar that edits the selection through setRangeText — so the browser undo stack survives — and the Markdown component as its preview.",
|
|
2310
|
+
"category": "Knowledge",
|
|
2311
|
+
"dependencies": [
|
|
2312
|
+
"lucide-react@^1.39.0"
|
|
2313
|
+
],
|
|
2314
|
+
"registryDependencies": [
|
|
2315
|
+
"button",
|
|
2316
|
+
"lib-styles",
|
|
2317
|
+
"lib-utils",
|
|
2318
|
+
"markdown"
|
|
2319
|
+
]
|
|
2320
|
+
},
|
|
2321
|
+
{
|
|
2322
|
+
"name": "markdown",
|
|
2323
|
+
"type": "registry:ui",
|
|
2324
|
+
"title": "Markdown",
|
|
2325
|
+
"description": "Rendered markdown with a switch to the source. It builds React nodes and never sets innerHTML, so a document you did not write cannot execute — and the RAW toggle is there because rendered output hides exactly what you look at when it renders wrongly.",
|
|
2326
|
+
"category": "Knowledge",
|
|
2327
|
+
"dependencies": [
|
|
2328
|
+
"lucide-react@^1.39.0"
|
|
2329
|
+
],
|
|
2330
|
+
"registryDependencies": [
|
|
2331
|
+
"button",
|
|
2332
|
+
"code-block",
|
|
2333
|
+
"copy-button",
|
|
2334
|
+
"lib-styles",
|
|
2335
|
+
"lib-utils"
|
|
2336
|
+
]
|
|
2337
|
+
},
|
|
2133
2338
|
{
|
|
2134
2339
|
"name": "market-table",
|
|
2135
2340
|
"type": "registry:ui",
|
|
@@ -2575,6 +2780,19 @@
|
|
|
2575
2780
|
"lib-utils"
|
|
2576
2781
|
]
|
|
2577
2782
|
},
|
|
2783
|
+
{
|
|
2784
|
+
"name": "note-graph",
|
|
2785
|
+
"type": "registry:ui",
|
|
2786
|
+
"title": "Note Graph",
|
|
2787
|
+
"description": "A vault of linked notes laid out by force — the Obsidian-shaped view. Nodes are sized by how many links touch them, hovering dims everything outside the neighbourhood, and orphans are drawn hollow rather than hidden.",
|
|
2788
|
+
"category": "Knowledge",
|
|
2789
|
+
"dependencies": [],
|
|
2790
|
+
"registryDependencies": [
|
|
2791
|
+
"lib-styles",
|
|
2792
|
+
"lib-use-force-graph",
|
|
2793
|
+
"lib-utils"
|
|
2794
|
+
]
|
|
2795
|
+
},
|
|
2578
2796
|
{
|
|
2579
2797
|
"name": "notification-inbox",
|
|
2580
2798
|
"type": "registry:ui",
|
|
@@ -2669,6 +2887,20 @@
|
|
|
2669
2887
|
"lib-utils"
|
|
2670
2888
|
]
|
|
2671
2889
|
},
|
|
2890
|
+
{
|
|
2891
|
+
"name": "org-chart",
|
|
2892
|
+
"type": "registry:ui",
|
|
2893
|
+
"title": "Org Chart",
|
|
2894
|
+
"description": "A reporting hierarchy drawn top-down with connectors, built from flat { id, managerId } rows. Orphans and multiple roots are rendered rather than dropped; cycles are reported.",
|
|
2895
|
+
"category": "Views",
|
|
2896
|
+
"dependencies": [
|
|
2897
|
+
"lucide-react@^1.39.0"
|
|
2898
|
+
],
|
|
2899
|
+
"registryDependencies": [
|
|
2900
|
+
"lib-styles",
|
|
2901
|
+
"lib-utils"
|
|
2902
|
+
]
|
|
2903
|
+
},
|
|
2672
2904
|
{
|
|
2673
2905
|
"name": "page-header",
|
|
2674
2906
|
"type": "registry:ui",
|
|
@@ -2741,6 +2973,21 @@
|
|
|
2741
2973
|
"stepper"
|
|
2742
2974
|
]
|
|
2743
2975
|
},
|
|
2976
|
+
{
|
|
2977
|
+
"name": "pdf-viewer",
|
|
2978
|
+
"type": "registry:ui",
|
|
2979
|
+
"title": "PDF Viewer",
|
|
2980
|
+
"description": "A PDF in the browser’s own viewer with a toolbar around it. It delegates the rendering on purpose, and always shows a download link — because embedded PDFs fail routinely.",
|
|
2981
|
+
"category": "Media",
|
|
2982
|
+
"dependencies": [
|
|
2983
|
+
"lucide-react@^1.39.0"
|
|
2984
|
+
],
|
|
2985
|
+
"registryDependencies": [
|
|
2986
|
+
"button",
|
|
2987
|
+
"lib-styles",
|
|
2988
|
+
"lib-utils"
|
|
2989
|
+
]
|
|
2990
|
+
},
|
|
2744
2991
|
{
|
|
2745
2992
|
"name": "permission-matrix",
|
|
2746
2993
|
"type": "registry:ui",
|
|
@@ -2756,6 +3003,18 @@
|
|
|
2756
3003
|
"lib-utils"
|
|
2757
3004
|
]
|
|
2758
3005
|
},
|
|
3006
|
+
{
|
|
3007
|
+
"name": "phone-input",
|
|
3008
|
+
"type": "registry:ui",
|
|
3009
|
+
"title": "Phone Input",
|
|
3010
|
+
"description": "A country selector and a national number that together produce E.164 — the shape every telephony API wants. Honest about not being a validator.",
|
|
3011
|
+
"category": "Forms",
|
|
3012
|
+
"dependencies": [],
|
|
3013
|
+
"registryDependencies": [
|
|
3014
|
+
"lib-styles",
|
|
3015
|
+
"lib-utils"
|
|
3016
|
+
]
|
|
3017
|
+
},
|
|
2759
3018
|
{
|
|
2760
3019
|
"name": "pipeline",
|
|
2761
3020
|
"type": "registry:ui",
|
|
@@ -2772,6 +3031,23 @@
|
|
|
2772
3031
|
"spinner"
|
|
2773
3032
|
]
|
|
2774
3033
|
},
|
|
3034
|
+
{
|
|
3035
|
+
"name": "popconfirm",
|
|
3036
|
+
"type": "registry:ui",
|
|
3037
|
+
"title": "Popconfirm",
|
|
3038
|
+
"description": "A confirmation anchored to the control that triggered it, for reversible or single-item actions — so the row you are asking about stays visible.",
|
|
3039
|
+
"category": "Overlays",
|
|
3040
|
+
"dependencies": [
|
|
3041
|
+
"lucide-react@^1.39.0"
|
|
3042
|
+
],
|
|
3043
|
+
"registryDependencies": [
|
|
3044
|
+
"button",
|
|
3045
|
+
"lib-styles",
|
|
3046
|
+
"lib-utils",
|
|
3047
|
+
"primitive-dismissable",
|
|
3048
|
+
"primitive-popper"
|
|
3049
|
+
]
|
|
3050
|
+
},
|
|
2775
3051
|
{
|
|
2776
3052
|
"name": "popover",
|
|
2777
3053
|
"type": "registry:ui",
|
|
@@ -2991,6 +3267,19 @@
|
|
|
2991
3267
|
"lib-utils"
|
|
2992
3268
|
]
|
|
2993
3269
|
},
|
|
3270
|
+
{
|
|
3271
|
+
"name": "qr-code",
|
|
3272
|
+
"type": "registry:ui",
|
|
3273
|
+
"title": "QR Code",
|
|
3274
|
+
"description": "A QR code encoded in the browser and drawn as SVG. No dependency and no network round trip — which matters, because the two things people encode most are a TOTP secret and a wallet address.",
|
|
3275
|
+
"category": "Utility",
|
|
3276
|
+
"dependencies": [],
|
|
3277
|
+
"registryDependencies": [
|
|
3278
|
+
"lib-qr",
|
|
3279
|
+
"lib-styles",
|
|
3280
|
+
"lib-utils"
|
|
3281
|
+
]
|
|
3282
|
+
},
|
|
2994
3283
|
{
|
|
2995
3284
|
"name": "query-editor",
|
|
2996
3285
|
"type": "registry:ui",
|
|
@@ -3040,6 +3329,18 @@
|
|
|
3040
3329
|
"sparkline"
|
|
3041
3330
|
]
|
|
3042
3331
|
},
|
|
3332
|
+
{
|
|
3333
|
+
"name": "radar-chart",
|
|
3334
|
+
"type": "registry:ui",
|
|
3335
|
+
"title": "Radar Chart",
|
|
3336
|
+
"description": "Several measures for one subject on axes radiating from a centre. Good for recognising a profile’s shape; documented plainly as the wrong chart when the reader needs to compare values.",
|
|
3337
|
+
"category": "Charts",
|
|
3338
|
+
"dependencies": [],
|
|
3339
|
+
"registryDependencies": [
|
|
3340
|
+
"lib-styles",
|
|
3341
|
+
"lib-utils"
|
|
3342
|
+
]
|
|
3343
|
+
},
|
|
3043
3344
|
{
|
|
3044
3345
|
"name": "radio-group",
|
|
3045
3346
|
"type": "registry:ui",
|
|
@@ -3225,6 +3526,32 @@
|
|
|
3225
3526
|
"lib-utils"
|
|
3226
3527
|
]
|
|
3227
3528
|
},
|
|
3529
|
+
{
|
|
3530
|
+
"name": "result",
|
|
3531
|
+
"type": "registry:ui",
|
|
3532
|
+
"title": "Result",
|
|
3533
|
+
"description": "The whole-page outcome — not found, forbidden, server error, done. Announced on render, so a client-side route change to an error page is not silent for a screen reader.",
|
|
3534
|
+
"category": "Feedback",
|
|
3535
|
+
"dependencies": [
|
|
3536
|
+
"lucide-react@^1.39.0"
|
|
3537
|
+
],
|
|
3538
|
+
"registryDependencies": [
|
|
3539
|
+
"lib-styles",
|
|
3540
|
+
"lib-utils"
|
|
3541
|
+
]
|
|
3542
|
+
},
|
|
3543
|
+
{
|
|
3544
|
+
"name": "retention-curve",
|
|
3545
|
+
"type": "registry:ui",
|
|
3546
|
+
"title": "Retention Curve",
|
|
3547
|
+
"description": "What fraction of each cohort is still here, period by period — normalised so growth cannot hide churn. Later cohorts are drawn shorter, not padded with zeroes.",
|
|
3548
|
+
"category": "Analytics",
|
|
3549
|
+
"dependencies": [],
|
|
3550
|
+
"registryDependencies": [
|
|
3551
|
+
"lib-styles",
|
|
3552
|
+
"lib-utils"
|
|
3553
|
+
]
|
|
3554
|
+
},
|
|
3228
3555
|
{
|
|
3229
3556
|
"name": "retrieval-results",
|
|
3230
3557
|
"type": "registry:ui",
|
|
@@ -3388,6 +3715,42 @@
|
|
|
3388
3715
|
"switch"
|
|
3389
3716
|
]
|
|
3390
3717
|
},
|
|
3718
|
+
{
|
|
3719
|
+
"name": "sankey",
|
|
3720
|
+
"type": "registry:ui",
|
|
3721
|
+
"title": "Sankey",
|
|
3722
|
+
"description": "Flow between stages, where band width is the quantity moving. Nodes are layered by longest path so every link runs forward, and a cycle is reported rather than drawn as something plausible.",
|
|
3723
|
+
"category": "Charts",
|
|
3724
|
+
"dependencies": [],
|
|
3725
|
+
"registryDependencies": [
|
|
3726
|
+
"lib-styles",
|
|
3727
|
+
"lib-utils"
|
|
3728
|
+
]
|
|
3729
|
+
},
|
|
3730
|
+
{
|
|
3731
|
+
"name": "scatter-plot",
|
|
3732
|
+
"type": "registry:ui",
|
|
3733
|
+
"title": "Scatter Plot",
|
|
3734
|
+
"description": "Two measured variables plotted against each other, with an optional least-squares trend line and Pearson’s r. Points can carry a third dimension as area and a fourth as colour.",
|
|
3735
|
+
"category": "Charts",
|
|
3736
|
+
"dependencies": [],
|
|
3737
|
+
"registryDependencies": [
|
|
3738
|
+
"lib-styles",
|
|
3739
|
+
"lib-utils"
|
|
3740
|
+
]
|
|
3741
|
+
},
|
|
3742
|
+
{
|
|
3743
|
+
"name": "scheduler",
|
|
3744
|
+
"type": "registry:ui",
|
|
3745
|
+
"title": "Scheduler",
|
|
3746
|
+
"description": "A week of days with events laid out against the hours. Overlaps are split into columns rather than stacked, so a clash never hides the meeting you were about to miss.",
|
|
3747
|
+
"category": "Views",
|
|
3748
|
+
"dependencies": [],
|
|
3749
|
+
"registryDependencies": [
|
|
3750
|
+
"lib-styles",
|
|
3751
|
+
"lib-utils"
|
|
3752
|
+
]
|
|
3753
|
+
},
|
|
3391
3754
|
{
|
|
3392
3755
|
"name": "schema-form",
|
|
3393
3756
|
"type": "registry:ui",
|
|
@@ -3464,6 +3827,34 @@
|
|
|
3464
3827
|
"lib-utils"
|
|
3465
3828
|
]
|
|
3466
3829
|
},
|
|
3830
|
+
{
|
|
3831
|
+
"name": "segment-builder",
|
|
3832
|
+
"type": "registry:ui",
|
|
3833
|
+
"title": "Segment Builder",
|
|
3834
|
+
"description": "Build an audience from conditions, with precedence shown as nesting rather than implied by a word — and the output a structure, not a concatenated string.",
|
|
3835
|
+
"category": "Analytics",
|
|
3836
|
+
"dependencies": [
|
|
3837
|
+
"lucide-react@^1.39.0"
|
|
3838
|
+
],
|
|
3839
|
+
"registryDependencies": [
|
|
3840
|
+
"button",
|
|
3841
|
+
"lib-styles",
|
|
3842
|
+
"lib-utils",
|
|
3843
|
+
"select"
|
|
3844
|
+
]
|
|
3845
|
+
},
|
|
3846
|
+
{
|
|
3847
|
+
"name": "segmented-control",
|
|
3848
|
+
"type": "registry:ui",
|
|
3849
|
+
"title": "Segmented Control",
|
|
3850
|
+
"description": "A small set of mutually exclusive choices shown at once, built from real radio inputs in a fieldset — so arrow keys, form submission and screen-reader announcement all work without any script.",
|
|
3851
|
+
"category": "Forms",
|
|
3852
|
+
"dependencies": [],
|
|
3853
|
+
"registryDependencies": [
|
|
3854
|
+
"lib-styles",
|
|
3855
|
+
"lib-utils"
|
|
3856
|
+
]
|
|
3857
|
+
},
|
|
3467
3858
|
{
|
|
3468
3859
|
"name": "select",
|
|
3469
3860
|
"type": "registry:ui",
|
|
@@ -3569,6 +3960,19 @@
|
|
|
3569
3960
|
"tooltip"
|
|
3570
3961
|
]
|
|
3571
3962
|
},
|
|
3963
|
+
{
|
|
3964
|
+
"name": "signature-pad",
|
|
3965
|
+
"type": "registry:ui",
|
|
3966
|
+
"title": "Signature Pad",
|
|
3967
|
+
"description": "A canvas you sign with a finger, stylus or mouse. Strokes are kept as points and redrawn, so undo, resize and export all work — and stylus pressure varies the line.",
|
|
3968
|
+
"category": "Forms",
|
|
3969
|
+
"dependencies": [],
|
|
3970
|
+
"registryDependencies": [
|
|
3971
|
+
"button",
|
|
3972
|
+
"lib-styles",
|
|
3973
|
+
"lib-utils"
|
|
3974
|
+
]
|
|
3975
|
+
},
|
|
3572
3976
|
{
|
|
3573
3977
|
"name": "skeleton",
|
|
3574
3978
|
"type": "registry:ui",
|
|
@@ -4393,6 +4797,37 @@
|
|
|
4393
4797
|
"wallet-address"
|
|
4394
4798
|
]
|
|
4395
4799
|
},
|
|
4800
|
+
{
|
|
4801
|
+
"name": "transfer",
|
|
4802
|
+
"type": "registry:ui",
|
|
4803
|
+
"title": "Transfer",
|
|
4804
|
+
"description": "Two lists and the movement between them, for choosing a subset from a large pool. Both sides are searchable — filtering the target is what makes a 200-item selection usable.",
|
|
4805
|
+
"category": "Forms",
|
|
4806
|
+
"dependencies": [
|
|
4807
|
+
"lucide-react@^1.39.0"
|
|
4808
|
+
],
|
|
4809
|
+
"registryDependencies": [
|
|
4810
|
+
"button",
|
|
4811
|
+
"lib-styles",
|
|
4812
|
+
"lib-utils"
|
|
4813
|
+
]
|
|
4814
|
+
},
|
|
4815
|
+
{
|
|
4816
|
+
"name": "tree-select",
|
|
4817
|
+
"type": "registry:ui",
|
|
4818
|
+
"title": "Tree Select",
|
|
4819
|
+
"description": "A tree in a popover with real tri-state parents. Checking a branch checks its subtree, the value holds only leaves, and searching keeps the ancestors of every match.",
|
|
4820
|
+
"category": "Forms",
|
|
4821
|
+
"dependencies": [
|
|
4822
|
+
"lucide-react@^1.39.0"
|
|
4823
|
+
],
|
|
4824
|
+
"registryDependencies": [
|
|
4825
|
+
"lib-styles",
|
|
4826
|
+
"lib-utils",
|
|
4827
|
+
"primitive-dismissable",
|
|
4828
|
+
"primitive-popper"
|
|
4829
|
+
]
|
|
4830
|
+
},
|
|
4396
4831
|
{
|
|
4397
4832
|
"name": "tree",
|
|
4398
4833
|
"type": "registry:ui",
|
|
@@ -4407,6 +4842,18 @@
|
|
|
4407
4842
|
"lib-utils"
|
|
4408
4843
|
]
|
|
4409
4844
|
},
|
|
4845
|
+
{
|
|
4846
|
+
"name": "treemap",
|
|
4847
|
+
"type": "registry:ui",
|
|
4848
|
+
"title": "Treemap",
|
|
4849
|
+
"description": "Part-to-whole as nested rectangles sized by area, laid out with the squarify algorithm so tiles stay close to square instead of degenerating into slivers.",
|
|
4850
|
+
"category": "Charts",
|
|
4851
|
+
"dependencies": [],
|
|
4852
|
+
"registryDependencies": [
|
|
4853
|
+
"lib-styles",
|
|
4854
|
+
"lib-utils"
|
|
4855
|
+
]
|
|
4856
|
+
},
|
|
4410
4857
|
{
|
|
4411
4858
|
"name": "two-factor-setup",
|
|
4412
4859
|
"type": "registry:ui",
|
|
@@ -4747,6 +5194,13 @@
|
|
|
4747
5194
|
],
|
|
4748
5195
|
"registryDependencies": []
|
|
4749
5196
|
},
|
|
5197
|
+
{
|
|
5198
|
+
"name": "lib-qr",
|
|
5199
|
+
"type": "registry:lib",
|
|
5200
|
+
"title": "qr",
|
|
5201
|
+
"dependencies": [],
|
|
5202
|
+
"registryDependencies": []
|
|
5203
|
+
},
|
|
4750
5204
|
{
|
|
4751
5205
|
"name": "lib-styles",
|
|
4752
5206
|
"type": "registry:lib",
|
|
@@ -4761,6 +5215,13 @@
|
|
|
4761
5215
|
"dependencies": [],
|
|
4762
5216
|
"registryDependencies": []
|
|
4763
5217
|
},
|
|
5218
|
+
{
|
|
5219
|
+
"name": "lib-use-force-graph",
|
|
5220
|
+
"type": "registry:lib",
|
|
5221
|
+
"title": "use-force-graph",
|
|
5222
|
+
"dependencies": [],
|
|
5223
|
+
"registryDependencies": []
|
|
5224
|
+
},
|
|
4764
5225
|
{
|
|
4765
5226
|
"name": "lib-use-uploads",
|
|
4766
5227
|
"type": "registry:lib",
|