@almadar/patterns 2.30.5 → 2.30.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/component-mapping.json +6 -1
- package/dist/event-contracts.json +1 -1
- package/dist/index.d.ts +203 -0
- package/dist/index.js +162 -3
- package/dist/index.js.map +1 -1
- package/dist/patterns-registry.json +234 -80
- package/dist/registry.json +234 -80
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "1.0.0",
|
|
3
|
-
"exportedAt": "2026-05-
|
|
3
|
+
"exportedAt": "2026-05-22T00:36:20.394Z",
|
|
4
4
|
"patterns": {
|
|
5
5
|
"entity-table": {
|
|
6
6
|
"type": "entity-table",
|
|
@@ -1177,7 +1177,7 @@
|
|
|
1177
1177
|
"types": [
|
|
1178
1178
|
"string"
|
|
1179
1179
|
],
|
|
1180
|
-
"description": "Form mode
|
|
1180
|
+
"description": "Form mode \u2014 'create' for new records, 'edit' for updating existing. Accepts `string` so schema-driven callers (whose `config.mode` is typed as `string` per the trait's declared config block) compile cleanly. The runtime treats anything other than 'edit' as 'create'."
|
|
1181
1181
|
},
|
|
1182
1182
|
"fields": {
|
|
1183
1183
|
"types": [
|
|
@@ -1515,7 +1515,7 @@
|
|
|
1515
1515
|
"form-section": {
|
|
1516
1516
|
"type": "form-section",
|
|
1517
1517
|
"category": "form",
|
|
1518
|
-
"description": "Alias for form
|
|
1518
|
+
"description": "Alias for form \u2014 Complete form with fields and actions",
|
|
1519
1519
|
"suggestedFor": [
|
|
1520
1520
|
"create forms",
|
|
1521
1521
|
"edit forms",
|
|
@@ -1583,7 +1583,7 @@
|
|
|
1583
1583
|
"types": [
|
|
1584
1584
|
"string"
|
|
1585
1585
|
],
|
|
1586
|
-
"description": "Form mode
|
|
1586
|
+
"description": "Form mode \u2014 'create' for new records, 'edit' for updating existing. Accepts `string` so schema-driven callers (whose `config.mode` is typed as `string` per the trait's declared config block) compile cleanly. The runtime treats anything other than 'edit' as 'create'."
|
|
1587
1587
|
},
|
|
1588
1588
|
"fields": {
|
|
1589
1589
|
"types": [
|
|
@@ -2294,7 +2294,7 @@
|
|
|
2294
2294
|
"types": [
|
|
2295
2295
|
"string"
|
|
2296
2296
|
],
|
|
2297
|
-
"description": "Declarative tab change event
|
|
2297
|
+
"description": "Declarative tab change event \u2014 emits UI:{tabChangeEvent} with { tabId }",
|
|
2298
2298
|
"kind": "event-ref",
|
|
2299
2299
|
"emitPayloadSchema": [
|
|
2300
2300
|
{
|
|
@@ -2483,7 +2483,7 @@
|
|
|
2483
2483
|
"types": [
|
|
2484
2484
|
"string"
|
|
2485
2485
|
],
|
|
2486
|
-
"description": "Declarative step click event
|
|
2486
|
+
"description": "Declarative step click event \u2014 emits UI:{stepClickEvent} with { stepIndex }",
|
|
2487
2487
|
"kind": "event-ref",
|
|
2488
2488
|
"emitPayloadSchema": [
|
|
2489
2489
|
{
|
|
@@ -2569,7 +2569,7 @@
|
|
|
2569
2569
|
"types": [
|
|
2570
2570
|
"string"
|
|
2571
2571
|
],
|
|
2572
|
-
"description": "Event to emit on Back click
|
|
2572
|
+
"description": "Event to emit on Back click \u2014 emits UI:{onBack} with { currentStep, totalSteps }",
|
|
2573
2573
|
"kind": "event-ref",
|
|
2574
2574
|
"emitPayloadSchema": [
|
|
2575
2575
|
{
|
|
@@ -2589,7 +2589,7 @@
|
|
|
2589
2589
|
"types": [
|
|
2590
2590
|
"string"
|
|
2591
2591
|
],
|
|
2592
|
-
"description": "Event to emit on Next click
|
|
2592
|
+
"description": "Event to emit on Next click \u2014 emits UI:{onNext} with { currentStep, totalSteps }",
|
|
2593
2593
|
"kind": "event-ref",
|
|
2594
2594
|
"emitPayloadSchema": [
|
|
2595
2595
|
{
|
|
@@ -2609,7 +2609,7 @@
|
|
|
2609
2609
|
"types": [
|
|
2610
2610
|
"string"
|
|
2611
2611
|
],
|
|
2612
|
-
"description": "Event to emit on Complete click
|
|
2612
|
+
"description": "Event to emit on Complete click \u2014 emits UI:{onComplete} with { currentStep, totalSteps }",
|
|
2613
2613
|
"kind": "event-ref",
|
|
2614
2614
|
"emitPayloadSchema": [
|
|
2615
2615
|
{
|
|
@@ -3321,7 +3321,7 @@
|
|
|
3321
3321
|
"types": [
|
|
3322
3322
|
"string"
|
|
3323
3323
|
],
|
|
3324
|
-
"description": "Declarative page change event
|
|
3324
|
+
"description": "Declarative page change event \u2014 emits UI:{pageChangeEvent} with { page }",
|
|
3325
3325
|
"kind": "event-ref",
|
|
3326
3326
|
"emitPayloadSchema": [
|
|
3327
3327
|
{
|
|
@@ -3335,7 +3335,7 @@
|
|
|
3335
3335
|
"types": [
|
|
3336
3336
|
"string"
|
|
3337
3337
|
],
|
|
3338
|
-
"description": "Declarative page size change event
|
|
3338
|
+
"description": "Declarative page size change event \u2014 emits UI:{pageSizeChangeEvent} with { pageSize }",
|
|
3339
3339
|
"kind": "event-ref",
|
|
3340
3340
|
"emitPayloadSchema": [
|
|
3341
3341
|
{
|
|
@@ -3425,7 +3425,7 @@
|
|
|
3425
3425
|
"types": [
|
|
3426
3426
|
"string"
|
|
3427
3427
|
],
|
|
3428
|
-
"description": "Declarative action event
|
|
3428
|
+
"description": "Declarative action event \u2014 emits UI:{actionEvent} via eventBus when action button is clicked",
|
|
3429
3429
|
"kind": "event-ref",
|
|
3430
3430
|
"emitPayloadSchema": []
|
|
3431
3431
|
}
|
|
@@ -3506,7 +3506,7 @@
|
|
|
3506
3506
|
"types": [
|
|
3507
3507
|
"string"
|
|
3508
3508
|
],
|
|
3509
|
-
"description": "Declarative retry event
|
|
3509
|
+
"description": "Declarative retry event \u2014 emits UI:{retryEvent} via eventBus when retry button is clicked",
|
|
3510
3510
|
"kind": "event-ref",
|
|
3511
3511
|
"emitPayloadSchema": []
|
|
3512
3512
|
}
|
|
@@ -3602,7 +3602,7 @@
|
|
|
3602
3602
|
"types": [
|
|
3603
3603
|
"string"
|
|
3604
3604
|
],
|
|
3605
|
-
"description": "Declarative dismiss event
|
|
3605
|
+
"description": "Declarative dismiss event \u2014 emits UI:{dismissEvent} via eventBus when toast is dismissed",
|
|
3606
3606
|
"kind": "event-ref",
|
|
3607
3607
|
"emitPayloadSchema": []
|
|
3608
3608
|
},
|
|
@@ -3610,7 +3610,7 @@
|
|
|
3610
3610
|
"types": [
|
|
3611
3611
|
"string"
|
|
3612
3612
|
],
|
|
3613
|
-
"description": "Declarative action event
|
|
3613
|
+
"description": "Declarative action event \u2014 emits UI:{actionEvent} via eventBus when action button is clicked",
|
|
3614
3614
|
"kind": "event-ref",
|
|
3615
3615
|
"emitPayloadSchema": []
|
|
3616
3616
|
}
|
|
@@ -3750,7 +3750,7 @@
|
|
|
3750
3750
|
"types": [
|
|
3751
3751
|
"string"
|
|
3752
3752
|
],
|
|
3753
|
-
"description": "Declarative close event
|
|
3753
|
+
"description": "Declarative close event \u2014 emits UI:{closeEvent} via eventBus when modal should close",
|
|
3754
3754
|
"kind": "event-ref",
|
|
3755
3755
|
"emitPayloadSchema": []
|
|
3756
3756
|
},
|
|
@@ -3857,7 +3857,7 @@
|
|
|
3857
3857
|
"types": [
|
|
3858
3858
|
"string"
|
|
3859
3859
|
],
|
|
3860
|
-
"description": "Declarative close event
|
|
3860
|
+
"description": "Declarative close event \u2014 emits UI:{closeEvent} via eventBus when drawer should close",
|
|
3861
3861
|
"kind": "event"
|
|
3862
3862
|
}
|
|
3863
3863
|
}
|
|
@@ -4334,7 +4334,7 @@
|
|
|
4334
4334
|
"types": [
|
|
4335
4335
|
"string"
|
|
4336
4336
|
],
|
|
4337
|
-
"description": "Declarative event name
|
|
4337
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
4338
4338
|
"kind": "event"
|
|
4339
4339
|
},
|
|
4340
4340
|
"actionPayload": {
|
|
@@ -4347,7 +4347,7 @@
|
|
|
4347
4347
|
"types": [
|
|
4348
4348
|
"string"
|
|
4349
4349
|
],
|
|
4350
|
-
"description": "Declarative hover event
|
|
4350
|
+
"description": "Declarative hover event \u2014 emits UI:{hoverEvent} with { hovered: true/false } on mouseEnter/mouseLeave",
|
|
4351
4351
|
"kind": "event"
|
|
4352
4352
|
},
|
|
4353
4353
|
"maxWidth": {
|
|
@@ -4821,7 +4821,7 @@
|
|
|
4821
4821
|
"types": [
|
|
4822
4822
|
"string"
|
|
4823
4823
|
],
|
|
4824
|
-
"description": "Declarative event name
|
|
4824
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
4825
4825
|
"kind": "event"
|
|
4826
4826
|
},
|
|
4827
4827
|
"actionPayload": {
|
|
@@ -4896,13 +4896,27 @@
|
|
|
4896
4896
|
"string",
|
|
4897
4897
|
"number"
|
|
4898
4898
|
],
|
|
4899
|
-
"description": "Badge label text (alternative to children for schema-driven rendering). Numeric values are auto-coerced to string for rendering
|
|
4899
|
+
"description": "Badge label text (alternative to children for schema-driven rendering). Numeric values are auto-coerced to string for rendering \u2014 common case is unread counts, error counts, status codes, etc."
|
|
4900
4900
|
},
|
|
4901
4901
|
"icon": {
|
|
4902
4902
|
"types": [
|
|
4903
4903
|
"node"
|
|
4904
4904
|
],
|
|
4905
4905
|
"description": "Icon name (Lucide icon string) or React node"
|
|
4906
|
+
},
|
|
4907
|
+
"onRemove": {
|
|
4908
|
+
"types": [
|
|
4909
|
+
"function"
|
|
4910
|
+
],
|
|
4911
|
+
"description": "When set, renders a small X button on the right of the badge that invokes this handler \u2014 turns the badge into a removable chip. Used by the TagInput molecule and other \"list of removable values\" surfaces.",
|
|
4912
|
+
"kind": "callback",
|
|
4913
|
+
"callbackArgs": []
|
|
4914
|
+
},
|
|
4915
|
+
"removeLabel": {
|
|
4916
|
+
"types": [
|
|
4917
|
+
"string"
|
|
4918
|
+
],
|
|
4919
|
+
"description": "Accessible label for the remove button. Defaults to \"Remove\"."
|
|
4906
4920
|
}
|
|
4907
4921
|
}
|
|
4908
4922
|
},
|
|
@@ -4998,7 +5012,7 @@
|
|
|
4998
5012
|
"types": [
|
|
4999
5013
|
"string"
|
|
5000
5014
|
],
|
|
5001
|
-
"description": "Declarative event name
|
|
5015
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
5002
5016
|
"kind": "event"
|
|
5003
5017
|
},
|
|
5004
5018
|
"actionPayload": {
|
|
@@ -5810,7 +5824,7 @@
|
|
|
5810
5824
|
"types": [
|
|
5811
5825
|
"string"
|
|
5812
5826
|
],
|
|
5813
|
-
"description": "Declarative dismiss event
|
|
5827
|
+
"description": "Declarative dismiss event \u2014 emits UI:{dismissEvent} via eventBus when alert is dismissed",
|
|
5814
5828
|
"kind": "event"
|
|
5815
5829
|
}
|
|
5816
5830
|
}
|
|
@@ -6187,7 +6201,7 @@
|
|
|
6187
6201
|
"types": [
|
|
6188
6202
|
"string"
|
|
6189
6203
|
],
|
|
6190
|
-
"description": "Declarative toggle event
|
|
6204
|
+
"description": "Declarative toggle event \u2014 emits UI:{toggleEvent} with { itemId, isOpen }",
|
|
6191
6205
|
"kind": "event-ref",
|
|
6192
6206
|
"emitPayloadSchema": [
|
|
6193
6207
|
{
|
|
@@ -6727,7 +6741,7 @@
|
|
|
6727
6741
|
"types": [
|
|
6728
6742
|
"string"
|
|
6729
6743
|
],
|
|
6730
|
-
"description": "Declarative event name
|
|
6744
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
6731
6745
|
"kind": "event"
|
|
6732
6746
|
}
|
|
6733
6747
|
}
|
|
@@ -6884,7 +6898,7 @@
|
|
|
6884
6898
|
"types": [
|
|
6885
6899
|
"string"
|
|
6886
6900
|
],
|
|
6887
|
-
"description": "Declarative event name
|
|
6901
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
6888
6902
|
"kind": "event"
|
|
6889
6903
|
},
|
|
6890
6904
|
"actionPayload": {
|
|
@@ -6978,14 +6992,14 @@
|
|
|
6978
6992
|
"types": [
|
|
6979
6993
|
"string"
|
|
6980
6994
|
],
|
|
6981
|
-
"description": "Declarative event name
|
|
6995
|
+
"description": "Declarative event name \u2014 emits UI:{action} via eventBus on click",
|
|
6982
6996
|
"kind": "event"
|
|
6983
6997
|
},
|
|
6984
6998
|
"hoverEvent": {
|
|
6985
6999
|
"types": [
|
|
6986
7000
|
"string"
|
|
6987
7001
|
],
|
|
6988
|
-
"description": "Declarative hover event
|
|
7002
|
+
"description": "Declarative hover event \u2014 emits UI:{hoverEvent} with { hovered: true/false }",
|
|
6989
7003
|
"kind": "event"
|
|
6990
7004
|
}
|
|
6991
7005
|
}
|
|
@@ -7909,7 +7923,7 @@
|
|
|
7909
7923
|
"types": [
|
|
7910
7924
|
"string"
|
|
7911
7925
|
],
|
|
7912
|
-
"description": "Panel width as Tailwind class string. Default fills the viewport on mobile and snaps to `w-96` (384 px) at `sm:` and above so phones don't lose content to a fixed 384 px column. Consumers passing a custom value should include a `w-full` mobile fallback in the same string (e.g. `\"w-full sm:w-[480px]\"`)
|
|
7926
|
+
"description": "Panel width as Tailwind class string. Default fills the viewport on mobile and snaps to `w-96` (384 px) at `sm:` and above so phones don't lose content to a fixed 384 px column. Consumers passing a custom value should include a `w-full` mobile fallback in the same string (e.g. `\"w-full sm:w-[480px]\"`) \u2014 Tailwind's JIT can't see dynamically-concatenated class names. @default 'w-full sm:w-96'",
|
|
7913
7927
|
"default": "w-full sm:w-96"
|
|
7914
7928
|
},
|
|
7915
7929
|
"position": {
|
|
@@ -7940,7 +7954,7 @@
|
|
|
7940
7954
|
"types": [
|
|
7941
7955
|
"string"
|
|
7942
7956
|
],
|
|
7943
|
-
"description": "Declarative close event
|
|
7957
|
+
"description": "Declarative close event \u2014 emits UI:{closeEvent} via eventBus when panel should close",
|
|
7944
7958
|
"kind": "event-ref",
|
|
7945
7959
|
"emitPayloadSchema": []
|
|
7946
7960
|
}
|
|
@@ -9506,14 +9520,14 @@
|
|
|
9506
9520
|
"types": [
|
|
9507
9521
|
"boolean"
|
|
9508
9522
|
],
|
|
9509
|
-
"description": "Show the top-bar search box. Default `false`
|
|
9523
|
+
"description": "Show the top-bar search box. Default `false` \u2014 opt in by setting `searchEvent` (any truthy value implies showSearch) or this flag.",
|
|
9510
9524
|
"default": false
|
|
9511
9525
|
},
|
|
9512
9526
|
"searchEvent": {
|
|
9513
9527
|
"types": [
|
|
9514
9528
|
"string"
|
|
9515
9529
|
],
|
|
9516
|
-
"description": "Declarative search event
|
|
9530
|
+
"description": "Declarative search event \u2014 fires `UI:{searchEvent}` on the bus when the user submits the search box (Enter key). Setting this implies `showSearch=true`. Use `onSearchSubmit` for direct React usage instead.",
|
|
9517
9531
|
"kind": "event-ref",
|
|
9518
9532
|
"emitPayloadSchema": [
|
|
9519
9533
|
{
|
|
@@ -9540,7 +9554,7 @@
|
|
|
9540
9554
|
"types": [
|
|
9541
9555
|
"array"
|
|
9542
9556
|
],
|
|
9543
|
-
"description": "Generic top-bar action buttons rendered between the search bar and the notifications bell. Each entry: `{icon, label?, event, badge?, variant?}`. Domain-agnostic
|
|
9557
|
+
"description": "Generic top-bar action buttons rendered between the search bar and the notifications bell. Each entry: `{icon, label?, event, badge?, variant?}`. Domain-agnostic \u2014 consumers add a cart icon, profile button, help-bubble, or any other top-bar action by appending entries. Empty array (default) renders nothing.",
|
|
9544
9558
|
"kind": "event-list",
|
|
9545
9559
|
"eventField": "event",
|
|
9546
9560
|
"items": {
|
|
@@ -9597,7 +9611,7 @@
|
|
|
9597
9611
|
"types": [
|
|
9598
9612
|
"string"
|
|
9599
9613
|
],
|
|
9600
|
-
"description": "Declarative bell click event
|
|
9614
|
+
"description": "Declarative bell click event \u2014 fires `UI:{notificationClickEvent}` on the bus with an empty payload when the user clicks the bell.",
|
|
9601
9615
|
"kind": "event-ref",
|
|
9602
9616
|
"emitPayloadSchema": []
|
|
9603
9617
|
},
|
|
@@ -9613,14 +9627,14 @@
|
|
|
9613
9627
|
"types": [
|
|
9614
9628
|
"boolean"
|
|
9615
9629
|
],
|
|
9616
|
-
"description": "Show the theme toggle button in the header. Default `true`
|
|
9630
|
+
"description": "Show the theme toggle button in the header. Default `true` \u2014 universally useful for a11y / dark mode.",
|
|
9617
9631
|
"default": true
|
|
9618
9632
|
},
|
|
9619
9633
|
"sidebarFooter": {
|
|
9620
9634
|
"types": [
|
|
9621
9635
|
"node"
|
|
9622
9636
|
],
|
|
9623
|
-
"description": "Custom sidebar footer (optional). When omitted, the sidebar has no footer
|
|
9637
|
+
"description": "Custom sidebar footer (optional). When omitted, the sidebar has no footer \u2014 apps that need Settings/etc. add them via navItems."
|
|
9624
9638
|
},
|
|
9625
9639
|
"currentPath": {
|
|
9626
9640
|
"types": [
|
|
@@ -9784,7 +9798,7 @@
|
|
|
9784
9798
|
"game-shell": {
|
|
9785
9799
|
"type": "game-shell",
|
|
9786
9800
|
"category": "template",
|
|
9787
|
-
"description": "GameShell A full-screen layout wrapper for game applications. Replaces DashboardLayout for game clients
|
|
9801
|
+
"description": "GameShell A full-screen layout wrapper for game applications. Replaces DashboardLayout for game clients \u2014 no sidebar nav, just full-viewport rendering with an optional HUD overlay bar. Used as a React Router layout route element: <Route element={<GameShell appName=\"TraitWars\" />}> <Route index element={<WorldMapPage />} /> ... </Route>",
|
|
9788
9802
|
"suggestedFor": [
|
|
9789
9803
|
"game",
|
|
9790
9804
|
"shell",
|
|
@@ -10042,7 +10056,7 @@
|
|
|
10042
10056
|
"types": [
|
|
10043
10057
|
"boolean"
|
|
10044
10058
|
],
|
|
10045
|
-
"description": "Format X-axis labels as time (ISO date in
|
|
10059
|
+
"description": "Format X-axis labels as time (ISO date in \u2192 \"Mar 2026\"-style label out)",
|
|
10046
10060
|
"default": false
|
|
10047
10061
|
},
|
|
10048
10062
|
"drillEvent": {
|
|
@@ -11515,7 +11529,7 @@
|
|
|
11515
11529
|
"node",
|
|
11516
11530
|
"function"
|
|
11517
11531
|
],
|
|
11518
|
-
"description": "Fallback UI when an error is caught
|
|
11532
|
+
"description": "Fallback UI when an error is caught \u2014 ReactNode or render function"
|
|
11519
11533
|
},
|
|
11520
11534
|
"className": {
|
|
11521
11535
|
"types": [
|
|
@@ -11696,7 +11710,7 @@
|
|
|
11696
11710
|
"types": [
|
|
11697
11711
|
"function"
|
|
11698
11712
|
],
|
|
11699
|
-
"description": "GAP-51: called with the new code on every keystroke when `editable === true`. Consumers should debounce + parse downstream
|
|
11713
|
+
"description": "GAP-51: called with the new code on every keystroke when `editable === true`. Consumers should debounce + parse downstream \u2014 `CodeBlock` does not.",
|
|
11700
11714
|
"kind": "callback",
|
|
11701
11715
|
"callbackArgs": [
|
|
11702
11716
|
{
|
|
@@ -11709,14 +11723,14 @@
|
|
|
11709
11723
|
"types": [
|
|
11710
11724
|
"object"
|
|
11711
11725
|
],
|
|
11712
|
-
"description": "GAP-80: line-level error/warning highlights for editable mode. Map of 1-based line number
|
|
11726
|
+
"description": "GAP-80: line-level error/warning highlights for editable mode. Map of 1-based line number \u2192 severity. The overlay paints a colored background on each line: error = red, warning = yellow. Pass undefined (default) to disable. The consumer is responsible for computing the path \u2192 line map from the schema + validation results."
|
|
11713
11727
|
}
|
|
11714
11728
|
}
|
|
11715
11729
|
},
|
|
11716
11730
|
"markdown-content": {
|
|
11717
11731
|
"type": "markdown-content",
|
|
11718
11732
|
"category": "component",
|
|
11719
|
-
"description": "MarkdownContent Molecule Component Renders markdown content with support for GFM (GitHub Flavored Markdown), math equations (KaTeX), and raw HTML. Handles inline code only
|
|
11733
|
+
"description": "MarkdownContent Molecule Component Renders markdown content with support for GFM (GitHub Flavored Markdown), math equations (KaTeX), and raw HTML. Handles inline code only \u2014 fenced code blocks should be parsed out and rendered with CodeBlock component. Event Contract: - No events emitted (display-only component) - entityAware: false NOTE: react-markdown's `components` override API requires native HTML elements \u2014 this is the same library-boundary exception as `<iframe>` in DocumentViewer and `<svg>` in JazariStateMachine/StateMachineView.",
|
|
11720
11734
|
"suggestedFor": [
|
|
11721
11735
|
"markdown",
|
|
11722
11736
|
"content",
|
|
@@ -11842,7 +11856,7 @@
|
|
|
11842
11856
|
"types": [
|
|
11843
11857
|
"string"
|
|
11844
11858
|
],
|
|
11845
|
-
"description": "Raw content string
|
|
11859
|
+
"description": "Raw content string \u2014 auto-parsed into segments"
|
|
11846
11860
|
},
|
|
11847
11861
|
"segments": {
|
|
11848
11862
|
"types": [
|
|
@@ -11903,7 +11917,7 @@
|
|
|
11903
11917
|
"types": [
|
|
11904
11918
|
"object"
|
|
11905
11919
|
],
|
|
11906
|
-
"description": "Full schema
|
|
11920
|
+
"description": "Full schema \u2014 extracts first trait's state machine"
|
|
11907
11921
|
},
|
|
11908
11922
|
"trait": {
|
|
11909
11923
|
"types": [
|
|
@@ -11984,7 +11998,7 @@
|
|
|
11984
11998
|
"types": [
|
|
11985
11999
|
"function"
|
|
11986
12000
|
],
|
|
11987
|
-
"description": "Custom state node renderer
|
|
12001
|
+
"description": "Custom state node renderer \u2014 when provided, replaces the default circle nodes",
|
|
11988
12002
|
"kind": "callback",
|
|
11989
12003
|
"callbackArgs": [
|
|
11990
12004
|
{
|
|
@@ -12334,7 +12348,7 @@
|
|
|
12334
12348
|
"number",
|
|
12335
12349
|
"string"
|
|
12336
12350
|
],
|
|
12337
|
-
"description": "Override the viewport-driven day window. `'auto'` (default) tracks `window.innerWidth`
|
|
12351
|
+
"description": "Override the viewport-driven day window. `'auto'` (default) tracks `window.innerWidth` \u2014 1 day on mobile, 3 on tablet, 7 on laptop+. Pass an explicit number to force a fixed window (useful for print layouts or screenshot tests).",
|
|
12338
12352
|
"default": "auto"
|
|
12339
12353
|
}
|
|
12340
12354
|
}
|
|
@@ -12900,21 +12914,21 @@
|
|
|
12900
12914
|
"types": [
|
|
12901
12915
|
"boolean"
|
|
12902
12916
|
],
|
|
12903
|
-
"description": "Mark this container as the DnD root for its subtree
|
|
12917
|
+
"description": "Mark this container as the DnD root for its subtree \u2014 descendant zones share one DndContext (cross-container drag). Use on an outer container whose own items are not draggable."
|
|
12904
12918
|
},
|
|
12905
12919
|
"entity": {
|
|
12906
12920
|
"types": [
|
|
12907
12921
|
"object",
|
|
12908
12922
|
"array"
|
|
12909
12923
|
],
|
|
12910
|
-
"description": "Schema entity data
|
|
12924
|
+
"description": "Schema entity data \u2014 single record or collection, typed against `@almadar/core`'s `EntityRow` so the narrow type declared on the emitting trait's `Event { data : [X] }` flows through to the prop without widening. The generic `T` lets consumers pass a narrower entity (e.g. `CartItem`) and have the `children` render function receive cards typed to that exact shape.",
|
|
12911
12925
|
"required": true
|
|
12912
12926
|
},
|
|
12913
12927
|
"fields": {
|
|
12914
12928
|
"types": [
|
|
12915
12929
|
"array"
|
|
12916
12930
|
],
|
|
12917
|
-
"description": "Field definitions for rendering each card. The pattern contract in `@almadar/patterns` documents `columns` as the wire-format alias the compiler emits
|
|
12931
|
+
"description": "Field definitions for rendering each card. The pattern contract in `@almadar/patterns` documents `columns` as the wire-format alias the compiler emits \u2014 both names resolve to the same shape here. Pass either.",
|
|
12918
12932
|
"items": {
|
|
12919
12933
|
"types": [
|
|
12920
12934
|
"object"
|
|
@@ -12976,7 +12990,7 @@
|
|
|
12976
12990
|
"types": [
|
|
12977
12991
|
"array"
|
|
12978
12992
|
],
|
|
12979
|
-
"description": "Alias for `fields`
|
|
12993
|
+
"description": "Alias for `fields` \u2014 the compiler emits `columns` for field defs.",
|
|
12980
12994
|
"items": {
|
|
12981
12995
|
"types": [
|
|
12982
12996
|
"object"
|
|
@@ -13266,21 +13280,21 @@
|
|
|
13266
13280
|
"types": [
|
|
13267
13281
|
"boolean"
|
|
13268
13282
|
],
|
|
13269
|
-
"description": "Mark this container as the DnD root for its subtree
|
|
13283
|
+
"description": "Mark this container as the DnD root for its subtree \u2014 descendant zones share one DndContext (cross-container drag). Use on an outer container whose own items are not draggable."
|
|
13270
13284
|
},
|
|
13271
13285
|
"entity": {
|
|
13272
13286
|
"types": [
|
|
13273
13287
|
"object",
|
|
13274
13288
|
"array"
|
|
13275
13289
|
],
|
|
13276
|
-
"description": "Schema entity data
|
|
13290
|
+
"description": "Schema entity data \u2014 single record or collection, typed against `@almadar/core`'s `EntityRow` so the narrow type declared on the emitting trait's `Event { data : [X] }` flows through to the prop without widening. The generic `T` lets consumers pass a narrower entity (e.g. `CartItem`) and have the `children` render function receive items of that exact shape.",
|
|
13277
13291
|
"required": true
|
|
13278
13292
|
},
|
|
13279
13293
|
"fields": {
|
|
13280
13294
|
"types": [
|
|
13281
13295
|
"array"
|
|
13282
13296
|
],
|
|
13283
|
-
"description": "Field definitions for rendering each row. The pattern contract in `@almadar/patterns` documents `columns` as the wire-format alias the compiler emits
|
|
13297
|
+
"description": "Field definitions for rendering each row. The pattern contract in `@almadar/patterns` documents `columns` as the wire-format alias the compiler emits \u2014 both names resolve to the same shape here. Pass either.",
|
|
13284
13298
|
"items": {
|
|
13285
13299
|
"types": [
|
|
13286
13300
|
"object"
|
|
@@ -13337,7 +13351,7 @@
|
|
|
13337
13351
|
"types": [
|
|
13338
13352
|
"array"
|
|
13339
13353
|
],
|
|
13340
|
-
"description": "Alias for `fields`
|
|
13354
|
+
"description": "Alias for `fields` \u2014 the compiler emits `columns` for field defs.",
|
|
13341
13355
|
"items": {
|
|
13342
13356
|
"types": [
|
|
13343
13357
|
"object"
|
|
@@ -15096,7 +15110,7 @@
|
|
|
15096
15110
|
"types": [
|
|
15097
15111
|
"number"
|
|
15098
15112
|
],
|
|
15099
|
-
"description": "Signed delta vs previous period. >0 renders
|
|
15113
|
+
"description": "Signed delta vs previous period. >0 renders \u2191 green, <0 renders \u2193 red, 0 hides. Polarity reversal via `trendPolarity`."
|
|
15100
15114
|
},
|
|
15101
15115
|
"trendPolarity": {
|
|
15102
15116
|
"types": [
|
|
@@ -15113,7 +15127,7 @@
|
|
|
15113
15127
|
"types": [
|
|
15114
15128
|
"string"
|
|
15115
15129
|
],
|
|
15116
|
-
"description": "When `'percent'`, renders trend with a `%` suffix (e.g.
|
|
15130
|
+
"description": "When `'percent'`, renders trend with a `%` suffix (e.g. `\u2193 3.3%`); default is `'absolute'`.",
|
|
15117
15131
|
"enumValues": [
|
|
15118
15132
|
"absolute",
|
|
15119
15133
|
"percent"
|
|
@@ -15141,7 +15155,7 @@
|
|
|
15141
15155
|
"types": [
|
|
15142
15156
|
"string"
|
|
15143
15157
|
],
|
|
15144
|
-
"description": "Prefix prepended to the formatted value (e.g. \"
|
|
15158
|
+
"description": "Prefix prepended to the formatted value (e.g. \"\u2248 \")."
|
|
15145
15159
|
},
|
|
15146
15160
|
"suffix": {
|
|
15147
15161
|
"types": [
|
|
@@ -17996,14 +18010,14 @@
|
|
|
17996
18010
|
"boolean",
|
|
17997
18011
|
"object"
|
|
17998
18012
|
],
|
|
17999
|
-
"description": "Enable Suspense boundaries around each slot. When true, each inline slot is wrapped in `<ErrorBoundary><Suspense>` with Skeleton fallbacks. Opt-in
|
|
18013
|
+
"description": "Enable Suspense boundaries around each slot. When true, each inline slot is wrapped in `<ErrorBoundary><Suspense>` with Skeleton fallbacks. Opt-in \u2014 existing isLoading prop pattern still works."
|
|
18000
18014
|
}
|
|
18001
18015
|
}
|
|
18002
18016
|
},
|
|
18003
18017
|
"trait-frame": {
|
|
18004
18018
|
"type": "trait-frame",
|
|
18005
18019
|
"category": "component",
|
|
18006
|
-
"description": "TraitFrame
|
|
18020
|
+
"description": "TraitFrame \u2014 renders the current frame of a referenced trait. Resolves the `@trait.X[.slot]` binding at render time by looking up the referenced trait's last `render-ui` payload from the orbital's `UISlotManager`. Re-renders automatically when that trait transitions via the per-trait subscription channel (`subscribeTrait`). This is the single rendering primitive both runtime paths converge on: - **Interpreted path** \u2014 the trait-binding resolver in `renderer/trait-binding-resolver.ts` walks pattern trees at render time, substituting `\"@trait.X\"` string children with this component. - **Compiled path** \u2014 the TypeScript shell codegen in `orbital-shell-typescript/src/backend.rs::pattern_to_jsx_with_data` emits this component directly into generated JSX wherever a `@trait.*` string appears in a pattern tree. Embedding is passive: the referenced trait's state machine runs unchanged; TraitFrame is only a read-only lens on its current frame. Event propagation happens over the shared event bus, not through this component.",
|
|
18007
18021
|
"suggestedFor": [
|
|
18008
18022
|
"trait",
|
|
18009
18023
|
"frame",
|
|
@@ -18186,7 +18200,7 @@
|
|
|
18186
18200
|
"types": [
|
|
18187
18201
|
"function"
|
|
18188
18202
|
],
|
|
18189
|
-
"description": "Called when the user clicks the remove (
|
|
18203
|
+
"description": "Called when the user clicks the remove (\u00d7) button",
|
|
18190
18204
|
"kind": "callback",
|
|
18191
18205
|
"callbackArgs": []
|
|
18192
18206
|
},
|
|
@@ -18194,7 +18208,7 @@
|
|
|
18194
18208
|
"types": [
|
|
18195
18209
|
"boolean"
|
|
18196
18210
|
],
|
|
18197
|
-
"description": "Disable the remove button (renders without
|
|
18211
|
+
"description": "Disable the remove button (renders without \u00d7 control)",
|
|
18198
18212
|
"default": true
|
|
18199
18213
|
},
|
|
18200
18214
|
"onClick": {
|
|
@@ -18223,7 +18237,7 @@
|
|
|
18223
18237
|
"types": [
|
|
18224
18238
|
"string"
|
|
18225
18239
|
],
|
|
18226
|
-
"description": "Event name dispatched via event bus when the remove (
|
|
18240
|
+
"description": "Event name dispatched via event bus when the remove (\u00d7) button is clicked. Payload: { label }",
|
|
18227
18241
|
"kind": "event-ref",
|
|
18228
18242
|
"emitPayloadSchema": [
|
|
18229
18243
|
{
|
|
@@ -20333,7 +20347,7 @@
|
|
|
20333
20347
|
"state-indicator": {
|
|
20334
20348
|
"type": "state-indicator",
|
|
20335
20349
|
"category": "game",
|
|
20336
|
-
"description": "StateIndicator Component Displays a visual indicator for a game entity's current state. Generic
|
|
20350
|
+
"description": "StateIndicator Component Displays a visual indicator for a game entity's current state. Generic \u2014 not tied to any specific game. Projects can extend the state styles via the `stateStyles` prop.",
|
|
20337
20351
|
"suggestedFor": [
|
|
20338
20352
|
"state",
|
|
20339
20353
|
"indicator",
|
|
@@ -22104,7 +22118,7 @@
|
|
|
22104
22118
|
"combat-log": {
|
|
22105
22119
|
"type": "combat-log",
|
|
22106
22120
|
"category": "game",
|
|
22107
|
-
"description": "CombatLog Component Scrollable log of combat events with icons and colors. Generalized from Trait Wars
|
|
22121
|
+
"description": "CombatLog Component Scrollable log of combat events with icons and colors. Generalized from Trait Wars \u2014 removed asset manifest coupling.",
|
|
22108
22122
|
"suggestedFor": [
|
|
22109
22123
|
"combat",
|
|
22110
22124
|
"log",
|
|
@@ -23516,7 +23530,7 @@
|
|
|
23516
23530
|
"types": [
|
|
23517
23531
|
"function"
|
|
23518
23532
|
],
|
|
23519
|
-
"description": "--- Event handlers (legacy callbacks
|
|
23533
|
+
"description": "--- Event handlers (legacy callbacks \u2014 prefer declarative event string props below) ---",
|
|
23520
23534
|
"kind": "callback",
|
|
23521
23535
|
"callbackArgs": [
|
|
23522
23536
|
{
|
|
@@ -23775,7 +23789,7 @@
|
|
|
23775
23789
|
"types": [
|
|
23776
23790
|
"boolean"
|
|
23777
23791
|
],
|
|
23778
|
-
"description": "Whether there are active effects
|
|
23792
|
+
"description": "Whether there are active effects \u2014 keeps RAF loop alive",
|
|
23779
23793
|
"default": false
|
|
23780
23794
|
},
|
|
23781
23795
|
"assetBaseUrl": {
|
|
@@ -24803,7 +24817,7 @@
|
|
|
24803
24817
|
"object",
|
|
24804
24818
|
"string"
|
|
24805
24819
|
],
|
|
24806
|
-
"description": "Field name translation map
|
|
24820
|
+
"description": "Field name translation map \u2014 a BookFieldMap object or locale key (\"ar\")"
|
|
24807
24821
|
}
|
|
24808
24822
|
}
|
|
24809
24823
|
},
|
|
@@ -25685,7 +25699,7 @@
|
|
|
25685
25699
|
"types": [
|
|
25686
25700
|
"object"
|
|
25687
25701
|
],
|
|
25688
|
-
"description": "Sound manifest
|
|
25702
|
+
"description": "Sound manifest \u2014 keys mapped to SoundEntry definitions",
|
|
25689
25703
|
"required": true
|
|
25690
25704
|
},
|
|
25691
25705
|
"baseUrl": {
|
|
@@ -25964,7 +25978,7 @@
|
|
|
25964
25978
|
"types": [
|
|
25965
25979
|
"object"
|
|
25966
25980
|
],
|
|
25967
|
-
"description": "Category
|
|
25981
|
+
"description": "Category \u2192 color mapping"
|
|
25968
25982
|
},
|
|
25969
25983
|
"tooltipFrameUrl": {
|
|
25970
25984
|
"types": [
|
|
@@ -26612,7 +26626,7 @@
|
|
|
26612
26626
|
"simulation-canvas": {
|
|
26613
26627
|
"type": "simulation-canvas",
|
|
26614
26628
|
"category": "game",
|
|
26615
|
-
"description": "SimulationCanvas Self-contained 2D physics canvas for educational presets. Runs its own Euler integration loop
|
|
26629
|
+
"description": "SimulationCanvas Self-contained 2D physics canvas for educational presets. Runs its own Euler integration loop \u2014 no external physics hook needed.",
|
|
26616
26630
|
"suggestedFor": [
|
|
26617
26631
|
"simulation",
|
|
26618
26632
|
"canvas",
|
|
@@ -28247,7 +28261,7 @@
|
|
|
28247
28261
|
"types": [
|
|
28248
28262
|
"object"
|
|
28249
28263
|
],
|
|
28250
|
-
"description": "Category
|
|
28264
|
+
"description": "Category \u2192 color mapping"
|
|
28251
28265
|
},
|
|
28252
28266
|
"size": {
|
|
28253
28267
|
"types": [
|
|
@@ -28428,7 +28442,7 @@
|
|
|
28428
28442
|
"types": [
|
|
28429
28443
|
"object"
|
|
28430
28444
|
],
|
|
28431
|
-
"description": "Category
|
|
28445
|
+
"description": "Category \u2192 color mapping"
|
|
28432
28446
|
}
|
|
28433
28447
|
}
|
|
28434
28448
|
},
|
|
@@ -28447,7 +28461,7 @@
|
|
|
28447
28461
|
"types": [
|
|
28448
28462
|
"array"
|
|
28449
28463
|
],
|
|
28450
|
-
"description": "The current sequence (sparse
|
|
28464
|
+
"description": "The current sequence (sparse \u2014 undefined means empty slot)",
|
|
28451
28465
|
"required": true,
|
|
28452
28466
|
"items": {
|
|
28453
28467
|
"types": [
|
|
@@ -28512,7 +28526,7 @@
|
|
|
28512
28526
|
"types": [
|
|
28513
28527
|
"object"
|
|
28514
28528
|
],
|
|
28515
|
-
"description": "Category
|
|
28529
|
+
"description": "Category \u2192 color mapping"
|
|
28516
28530
|
},
|
|
28517
28531
|
"slotFeedback": {
|
|
28518
28532
|
"types": [
|
|
@@ -28778,7 +28792,7 @@
|
|
|
28778
28792
|
"types": [
|
|
28779
28793
|
"object"
|
|
28780
28794
|
],
|
|
28781
|
-
"description": "Category
|
|
28795
|
+
"description": "Category \u2192 color mapping"
|
|
28782
28796
|
},
|
|
28783
28797
|
"stepDurationMs": {
|
|
28784
28798
|
"types": [
|
|
@@ -30020,7 +30034,7 @@
|
|
|
30020
30034
|
"types": [
|
|
30021
30035
|
"string"
|
|
30022
30036
|
],
|
|
30023
|
-
"description": "Stroke color. `auto` (default): success when the series trends up (last
|
|
30037
|
+
"description": "Stroke color. `auto` (default): success when the series trends up (last \u2265 first), error when it trends down.",
|
|
30024
30038
|
"enumValues": [
|
|
30025
30039
|
"auto",
|
|
30026
30040
|
"primary",
|
|
@@ -30096,7 +30110,7 @@
|
|
|
30096
30110
|
"types": [
|
|
30097
30111
|
"string"
|
|
30098
30112
|
],
|
|
30099
|
-
"description": "Event name emitted as `UI:{event}` with payload `{ from, to }`. Optional
|
|
30113
|
+
"description": "Event name emitted as `UI:{event}` with payload `{ from, to }`. Optional \u2014 when omitted, only the `onChange` callback fires.",
|
|
30100
30114
|
"kind": "event-ref",
|
|
30101
30115
|
"emitPayloadSchema": [
|
|
30102
30116
|
{
|
|
@@ -30225,10 +30239,112 @@
|
|
|
30225
30239
|
}
|
|
30226
30240
|
}
|
|
30227
30241
|
},
|
|
30242
|
+
"tag-input": {
|
|
30243
|
+
"type": "tag-input",
|
|
30244
|
+
"category": "form",
|
|
30245
|
+
"description": "TagInput component",
|
|
30246
|
+
"suggestedFor": [
|
|
30247
|
+
"tag",
|
|
30248
|
+
"input",
|
|
30249
|
+
"tag input"
|
|
30250
|
+
],
|
|
30251
|
+
"typicalSize": "medium",
|
|
30252
|
+
"propsSchema": {
|
|
30253
|
+
"value": {
|
|
30254
|
+
"types": [
|
|
30255
|
+
"array"
|
|
30256
|
+
],
|
|
30257
|
+
"description": "Current list of tags.",
|
|
30258
|
+
"required": true,
|
|
30259
|
+
"items": {
|
|
30260
|
+
"types": [
|
|
30261
|
+
"string"
|
|
30262
|
+
]
|
|
30263
|
+
}
|
|
30264
|
+
},
|
|
30265
|
+
"onChange": {
|
|
30266
|
+
"types": [
|
|
30267
|
+
"function"
|
|
30268
|
+
],
|
|
30269
|
+
"description": "Direct callback emitted on every change. Stays as the Storybook / non-trait contract; trait-driven schemas should prefer the bus events below.",
|
|
30270
|
+
"kind": "callback",
|
|
30271
|
+
"callbackArgs": [
|
|
30272
|
+
{
|
|
30273
|
+
"name": "next",
|
|
30274
|
+
"type": "array"
|
|
30275
|
+
}
|
|
30276
|
+
]
|
|
30277
|
+
},
|
|
30278
|
+
"placeholder": {
|
|
30279
|
+
"types": [
|
|
30280
|
+
"string"
|
|
30281
|
+
],
|
|
30282
|
+
"description": "Placeholder for the entry input. Default: `\"Type and press Enter\u2026\"`."
|
|
30283
|
+
},
|
|
30284
|
+
"disabled": {
|
|
30285
|
+
"types": [
|
|
30286
|
+
"boolean"
|
|
30287
|
+
],
|
|
30288
|
+
"description": "Disable add + remove interactions.",
|
|
30289
|
+
"default": false
|
|
30290
|
+
},
|
|
30291
|
+
"variant": {
|
|
30292
|
+
"types": [
|
|
30293
|
+
"string"
|
|
30294
|
+
],
|
|
30295
|
+
"description": "Variant applied to each chip Badge. Default: `'default'`.",
|
|
30296
|
+
"enumValues": [
|
|
30297
|
+
"default",
|
|
30298
|
+
"primary",
|
|
30299
|
+
"secondary",
|
|
30300
|
+
"success",
|
|
30301
|
+
"warning",
|
|
30302
|
+
"danger",
|
|
30303
|
+
"error",
|
|
30304
|
+
"info",
|
|
30305
|
+
"neutral"
|
|
30306
|
+
],
|
|
30307
|
+
"default": "default"
|
|
30308
|
+
},
|
|
30309
|
+
"unique": {
|
|
30310
|
+
"types": [
|
|
30311
|
+
"boolean"
|
|
30312
|
+
],
|
|
30313
|
+
"description": "Suppress duplicate entries. Default: `true`.",
|
|
30314
|
+
"default": true
|
|
30315
|
+
},
|
|
30316
|
+
"helperText": {
|
|
30317
|
+
"types": [
|
|
30318
|
+
"string"
|
|
30319
|
+
],
|
|
30320
|
+
"description": "Helper text rendered under the input."
|
|
30321
|
+
},
|
|
30322
|
+
"className": {
|
|
30323
|
+
"types": [
|
|
30324
|
+
"string"
|
|
30325
|
+
],
|
|
30326
|
+
"description": "Additional CSS classes applied to the outer container."
|
|
30327
|
+
},
|
|
30328
|
+
"addEvent": {
|
|
30329
|
+
"types": [
|
|
30330
|
+
"string"
|
|
30331
|
+
],
|
|
30332
|
+
"description": "Event emitted when a tag is added: `UI:{addEvent}` with payload `{ tag: string, value: string[] }`.",
|
|
30333
|
+
"kind": "event"
|
|
30334
|
+
},
|
|
30335
|
+
"removeEvent": {
|
|
30336
|
+
"types": [
|
|
30337
|
+
"string"
|
|
30338
|
+
],
|
|
30339
|
+
"description": "Event emitted when a tag is removed: `UI:{removeEvent}` with payload `{ tag: string, index: number, value: string[] }`.",
|
|
30340
|
+
"kind": "event"
|
|
30341
|
+
}
|
|
30342
|
+
}
|
|
30343
|
+
},
|
|
30228
30344
|
"heading": {
|
|
30229
30345
|
"type": "heading",
|
|
30230
30346
|
"category": "component",
|
|
30231
|
-
"description": "Alias for typography
|
|
30347
|
+
"description": "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
|
|
30232
30348
|
"suggestedFor": [
|
|
30233
30349
|
"typography"
|
|
30234
30350
|
],
|
|
@@ -30382,7 +30498,7 @@
|
|
|
30382
30498
|
"text": {
|
|
30383
30499
|
"type": "text",
|
|
30384
30500
|
"category": "component",
|
|
30385
|
-
"description": "Alias for typography
|
|
30501
|
+
"description": "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
|
|
30386
30502
|
"suggestedFor": [
|
|
30387
30503
|
"typography"
|
|
30388
30504
|
],
|
|
@@ -30532,6 +30648,44 @@
|
|
|
30532
30648
|
"description": "Children elements"
|
|
30533
30649
|
}
|
|
30534
30650
|
}
|
|
30651
|
+
},
|
|
30652
|
+
"marketing-footer": {
|
|
30653
|
+
"type": "marketing-footer",
|
|
30654
|
+
"category": "navigation",
|
|
30655
|
+
"description": "Marketing footer with link columns, logo, and copyright",
|
|
30656
|
+
"suggestedFor": [
|
|
30657
|
+
"marketing sites",
|
|
30658
|
+
"landing pages",
|
|
30659
|
+
"product websites"
|
|
30660
|
+
],
|
|
30661
|
+
"typicalSize": "large",
|
|
30662
|
+
"propsSchema": {
|
|
30663
|
+
"columns": {
|
|
30664
|
+
"types": [
|
|
30665
|
+
"array"
|
|
30666
|
+
],
|
|
30667
|
+
"description": "Array of footer link column groups"
|
|
30668
|
+
},
|
|
30669
|
+
"copyright": {
|
|
30670
|
+
"types": [
|
|
30671
|
+
"string"
|
|
30672
|
+
],
|
|
30673
|
+
"description": "Copyright text"
|
|
30674
|
+
},
|
|
30675
|
+
"logo": {
|
|
30676
|
+
"types": [
|
|
30677
|
+
"object",
|
|
30678
|
+
"string"
|
|
30679
|
+
],
|
|
30680
|
+
"description": "Logo configuration"
|
|
30681
|
+
},
|
|
30682
|
+
"className": {
|
|
30683
|
+
"types": [
|
|
30684
|
+
"string"
|
|
30685
|
+
],
|
|
30686
|
+
"description": "Additional CSS classes"
|
|
30687
|
+
}
|
|
30688
|
+
}
|
|
30535
30689
|
}
|
|
30536
30690
|
},
|
|
30537
30691
|
"categories": [
|
|
@@ -30552,4 +30706,4 @@
|
|
|
30552
30706
|
"visualization",
|
|
30553
30707
|
"media"
|
|
30554
30708
|
]
|
|
30555
|
-
}
|
|
30709
|
+
}
|