@almadar/patterns 2.5.0 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/component-mapping.json +121 -1
- package/dist/event-contracts.json +2 -2
- package/dist/index.d.ts +8612 -5702
- package/dist/index.js +1405 -155
- package/dist/index.js.map +1 -1
- package/dist/patterns-registry.json +1203 -73
- package/dist/registry.json +1203 -73
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// src/patterns-registry.json
|
|
2
2
|
var patterns_registry_default = {
|
|
3
3
|
version: "1.0.0",
|
|
4
|
-
exportedAt: "2026-03-
|
|
4
|
+
exportedAt: "2026-03-11T04:10:55.563Z",
|
|
5
5
|
patterns: {
|
|
6
6
|
"entity-table": {
|
|
7
7
|
type: "entity-table",
|
|
@@ -8860,18 +8860,6 @@ var patterns_registry_default = {
|
|
|
8860
8860
|
],
|
|
8861
8861
|
typicalSize: "large",
|
|
8862
8862
|
propsSchema: {
|
|
8863
|
-
entity: {
|
|
8864
|
-
types: [
|
|
8865
|
-
"string"
|
|
8866
|
-
],
|
|
8867
|
-
description: "Entity name for schema-driven integration"
|
|
8868
|
-
},
|
|
8869
|
-
data: {
|
|
8870
|
-
types: [
|
|
8871
|
-
"array"
|
|
8872
|
-
],
|
|
8873
|
-
description: "Data array provided by the trait via render-ui"
|
|
8874
|
-
},
|
|
8875
8863
|
className: {
|
|
8876
8864
|
types: [
|
|
8877
8865
|
"string"
|
|
@@ -8886,63 +8874,15 @@ var patterns_registry_default = {
|
|
|
8886
8874
|
},
|
|
8887
8875
|
error: {
|
|
8888
8876
|
types: [
|
|
8889
|
-
"
|
|
8877
|
+
"error"
|
|
8890
8878
|
],
|
|
8891
8879
|
description: "Error state"
|
|
8892
8880
|
},
|
|
8893
|
-
sortBy: {
|
|
8894
|
-
types: [
|
|
8895
|
-
"string"
|
|
8896
|
-
],
|
|
8897
|
-
description: "Current sort field"
|
|
8898
|
-
},
|
|
8899
|
-
sortDirection: {
|
|
8900
|
-
types: [
|
|
8901
|
-
"string"
|
|
8902
|
-
],
|
|
8903
|
-
description: "Current sort direction"
|
|
8904
|
-
},
|
|
8905
|
-
searchValue: {
|
|
8906
|
-
types: [
|
|
8907
|
-
"string"
|
|
8908
|
-
],
|
|
8909
|
-
description: "Current search query value"
|
|
8910
|
-
},
|
|
8911
|
-
page: {
|
|
8912
|
-
types: [
|
|
8913
|
-
"number"
|
|
8914
|
-
],
|
|
8915
|
-
description: "Current page number"
|
|
8916
|
-
},
|
|
8917
|
-
pageSize: {
|
|
8918
|
-
types: [
|
|
8919
|
-
"number"
|
|
8920
|
-
],
|
|
8921
|
-
description: "Number of items per page"
|
|
8922
|
-
},
|
|
8923
|
-
totalCount: {
|
|
8924
|
-
types: [
|
|
8925
|
-
"number"
|
|
8926
|
-
],
|
|
8927
|
-
description: "Total number of items"
|
|
8928
|
-
},
|
|
8929
|
-
activeFilters: {
|
|
8930
|
-
types: [
|
|
8931
|
-
"object"
|
|
8932
|
-
],
|
|
8933
|
-
description: "Active filters"
|
|
8934
|
-
},
|
|
8935
|
-
selectedIds: {
|
|
8936
|
-
types: [
|
|
8937
|
-
"array"
|
|
8938
|
-
],
|
|
8939
|
-
description: "Currently selected item IDs"
|
|
8940
|
-
},
|
|
8941
8881
|
tiles: {
|
|
8942
8882
|
types: [
|
|
8943
8883
|
"array"
|
|
8944
8884
|
],
|
|
8945
|
-
description: "
|
|
8885
|
+
description: "--- Grid data ---"
|
|
8946
8886
|
},
|
|
8947
8887
|
units: {
|
|
8948
8888
|
types: [
|
|
@@ -8990,19 +8930,19 @@ var patterns_registry_default = {
|
|
|
8990
8930
|
types: [
|
|
8991
8931
|
"function"
|
|
8992
8932
|
],
|
|
8993
|
-
description: "
|
|
8933
|
+
description: "onUnitClick prop"
|
|
8994
8934
|
},
|
|
8995
8935
|
onTileHover: {
|
|
8996
8936
|
types: [
|
|
8997
8937
|
"function"
|
|
8998
8938
|
],
|
|
8999
|
-
description: "
|
|
8939
|
+
description: "onTileHover prop"
|
|
9000
8940
|
},
|
|
9001
8941
|
onTileLeave: {
|
|
9002
8942
|
types: [
|
|
9003
8943
|
"function"
|
|
9004
8944
|
],
|
|
9005
|
-
description: "
|
|
8945
|
+
description: "onTileLeave prop"
|
|
9006
8946
|
},
|
|
9007
8947
|
tileClickEvent: {
|
|
9008
8948
|
types: [
|
|
@@ -14383,7 +14323,7 @@ var patterns_registry_default = {
|
|
|
14383
14323
|
types: [
|
|
14384
14324
|
"platformerplayer"
|
|
14385
14325
|
],
|
|
14386
|
-
description: "Player
|
|
14326
|
+
description: "Player state data"
|
|
14387
14327
|
},
|
|
14388
14328
|
platforms: {
|
|
14389
14329
|
types: [
|
|
@@ -14480,12 +14420,6 @@ var patterns_registry_default = {
|
|
|
14480
14420
|
"string"
|
|
14481
14421
|
],
|
|
14482
14422
|
description: "Additional CSS classes"
|
|
14483
|
-
},
|
|
14484
|
-
entity: {
|
|
14485
|
-
types: [
|
|
14486
|
-
"object"
|
|
14487
|
-
],
|
|
14488
|
-
description: "Entity data (schema binding)"
|
|
14489
14423
|
}
|
|
14490
14424
|
}
|
|
14491
14425
|
},
|
|
@@ -15533,191 +15467,1387 @@ var patterns_registry_default = {
|
|
|
15533
15467
|
}
|
|
15534
15468
|
}
|
|
15535
15469
|
},
|
|
15536
|
-
|
|
15537
|
-
type: "
|
|
15470
|
+
"action-button": {
|
|
15471
|
+
type: "action-button",
|
|
15538
15472
|
category: "component",
|
|
15539
|
-
description: "
|
|
15473
|
+
description: "ActionButton component",
|
|
15540
15474
|
suggestedFor: [
|
|
15541
|
-
"
|
|
15475
|
+
"action",
|
|
15476
|
+
"button",
|
|
15477
|
+
"action button"
|
|
15542
15478
|
],
|
|
15543
15479
|
typicalSize: "small",
|
|
15544
15480
|
propsSchema: {
|
|
15545
|
-
|
|
15481
|
+
label: {
|
|
15546
15482
|
types: [
|
|
15547
|
-
"
|
|
15483
|
+
"string"
|
|
15548
15484
|
],
|
|
15549
|
-
description: "
|
|
15485
|
+
description: "Button label text",
|
|
15486
|
+
required: true
|
|
15550
15487
|
},
|
|
15551
|
-
|
|
15488
|
+
icon: {
|
|
15489
|
+
types: [
|
|
15490
|
+
"node"
|
|
15491
|
+
],
|
|
15492
|
+
description: "Icon displayed before the label"
|
|
15493
|
+
},
|
|
15494
|
+
cooldown: {
|
|
15552
15495
|
types: [
|
|
15553
15496
|
"number"
|
|
15554
15497
|
],
|
|
15555
|
-
description: "
|
|
15498
|
+
description: "Cooldown progress from 0 (ready) to 1 (full cooldown)"
|
|
15556
15499
|
},
|
|
15557
|
-
|
|
15500
|
+
disabled: {
|
|
15558
15501
|
types: [
|
|
15559
|
-
"
|
|
15502
|
+
"boolean"
|
|
15560
15503
|
],
|
|
15561
|
-
description: "
|
|
15504
|
+
description: "Whether the button is disabled"
|
|
15562
15505
|
},
|
|
15563
|
-
|
|
15506
|
+
hotkey: {
|
|
15564
15507
|
types: [
|
|
15565
15508
|
"string"
|
|
15566
15509
|
],
|
|
15567
|
-
description: "
|
|
15510
|
+
description: "Keyboard hotkey to display as a badge"
|
|
15568
15511
|
},
|
|
15569
|
-
|
|
15512
|
+
size: {
|
|
15570
15513
|
types: [
|
|
15571
15514
|
"string"
|
|
15572
15515
|
],
|
|
15573
|
-
description: "
|
|
15516
|
+
description: "Size variant"
|
|
15574
15517
|
},
|
|
15575
|
-
|
|
15518
|
+
variant: {
|
|
15576
15519
|
types: [
|
|
15577
|
-
"
|
|
15520
|
+
"string"
|
|
15578
15521
|
],
|
|
15579
|
-
description: "
|
|
15522
|
+
description: "Visual variant"
|
|
15580
15523
|
},
|
|
15581
|
-
|
|
15524
|
+
onClick: {
|
|
15582
15525
|
types: [
|
|
15583
|
-
"
|
|
15526
|
+
"function"
|
|
15584
15527
|
],
|
|
15585
|
-
description: "
|
|
15528
|
+
description: "Click handler"
|
|
15586
15529
|
},
|
|
15587
|
-
|
|
15530
|
+
className: {
|
|
15588
15531
|
types: [
|
|
15589
15532
|
"string"
|
|
15590
15533
|
],
|
|
15591
|
-
description: "
|
|
15592
|
-
}
|
|
15593
|
-
|
|
15534
|
+
description: "Additional CSS classes"
|
|
15535
|
+
}
|
|
15536
|
+
}
|
|
15537
|
+
},
|
|
15538
|
+
"choice-button": {
|
|
15539
|
+
type: "choice-button",
|
|
15540
|
+
category: "component",
|
|
15541
|
+
description: "ChoiceButton component",
|
|
15542
|
+
suggestedFor: [
|
|
15543
|
+
"choice",
|
|
15544
|
+
"button",
|
|
15545
|
+
"choice button"
|
|
15546
|
+
],
|
|
15547
|
+
typicalSize: "small",
|
|
15548
|
+
propsSchema: {
|
|
15549
|
+
text: {
|
|
15594
15550
|
types: [
|
|
15595
|
-
"
|
|
15551
|
+
"string"
|
|
15596
15552
|
],
|
|
15597
|
-
description: "
|
|
15553
|
+
description: "Choice text content",
|
|
15554
|
+
required: true
|
|
15598
15555
|
},
|
|
15599
|
-
|
|
15556
|
+
index: {
|
|
15600
15557
|
types: [
|
|
15601
|
-
"
|
|
15558
|
+
"number"
|
|
15602
15559
|
],
|
|
15603
|
-
description: "
|
|
15560
|
+
description: "Choice index number (displayed as prefix)"
|
|
15604
15561
|
},
|
|
15605
|
-
|
|
15562
|
+
disabled: {
|
|
15606
15563
|
types: [
|
|
15607
|
-
"
|
|
15564
|
+
"boolean"
|
|
15608
15565
|
],
|
|
15609
|
-
description: "
|
|
15566
|
+
description: "Whether the choice is disabled"
|
|
15610
15567
|
},
|
|
15611
|
-
|
|
15568
|
+
selected: {
|
|
15612
15569
|
types: [
|
|
15613
|
-
"
|
|
15570
|
+
"boolean"
|
|
15614
15571
|
],
|
|
15615
|
-
description: "
|
|
15572
|
+
description: "Whether the choice is currently selected"
|
|
15616
15573
|
},
|
|
15617
|
-
|
|
15574
|
+
onClick: {
|
|
15618
15575
|
types: [
|
|
15619
|
-
"
|
|
15576
|
+
"function"
|
|
15620
15577
|
],
|
|
15621
|
-
description: "
|
|
15578
|
+
description: "Click handler"
|
|
15622
15579
|
},
|
|
15623
|
-
|
|
15580
|
+
className: {
|
|
15624
15581
|
types: [
|
|
15625
|
-
"
|
|
15582
|
+
"string"
|
|
15626
15583
|
],
|
|
15627
|
-
description: "
|
|
15584
|
+
description: "Additional CSS classes"
|
|
15628
15585
|
}
|
|
15629
15586
|
}
|
|
15630
15587
|
},
|
|
15631
|
-
|
|
15632
|
-
type: "
|
|
15588
|
+
"combo-counter": {
|
|
15589
|
+
type: "combo-counter",
|
|
15633
15590
|
category: "component",
|
|
15634
|
-
description: "
|
|
15591
|
+
description: "ComboCounter component",
|
|
15635
15592
|
suggestedFor: [
|
|
15636
|
-
"
|
|
15593
|
+
"combo",
|
|
15594
|
+
"counter",
|
|
15595
|
+
"combo counter"
|
|
15637
15596
|
],
|
|
15638
15597
|
typicalSize: "small",
|
|
15639
15598
|
propsSchema: {
|
|
15640
|
-
|
|
15599
|
+
combo: {
|
|
15641
15600
|
types: [
|
|
15642
|
-
"
|
|
15601
|
+
"number"
|
|
15643
15602
|
],
|
|
15644
|
-
description: "
|
|
15603
|
+
description: "Current combo count",
|
|
15604
|
+
required: true
|
|
15645
15605
|
},
|
|
15646
|
-
|
|
15606
|
+
multiplier: {
|
|
15647
15607
|
types: [
|
|
15648
15608
|
"number"
|
|
15649
15609
|
],
|
|
15650
|
-
description: "
|
|
15610
|
+
description: "Score multiplier"
|
|
15651
15611
|
},
|
|
15652
|
-
|
|
15612
|
+
streak: {
|
|
15613
|
+
types: [
|
|
15614
|
+
"number"
|
|
15615
|
+
],
|
|
15616
|
+
description: "Current streak"
|
|
15617
|
+
},
|
|
15618
|
+
size: {
|
|
15653
15619
|
types: [
|
|
15654
15620
|
"string"
|
|
15655
15621
|
],
|
|
15656
|
-
description: "
|
|
15622
|
+
description: "Size variant"
|
|
15657
15623
|
},
|
|
15658
|
-
|
|
15624
|
+
className: {
|
|
15659
15625
|
types: [
|
|
15660
15626
|
"string"
|
|
15661
15627
|
],
|
|
15662
|
-
description: "
|
|
15628
|
+
description: "Additional CSS classes"
|
|
15629
|
+
}
|
|
15630
|
+
}
|
|
15631
|
+
},
|
|
15632
|
+
"damage-number": {
|
|
15633
|
+
type: "damage-number",
|
|
15634
|
+
category: "component",
|
|
15635
|
+
description: "DamageNumber component",
|
|
15636
|
+
suggestedFor: [
|
|
15637
|
+
"damage",
|
|
15638
|
+
"number",
|
|
15639
|
+
"damage number"
|
|
15640
|
+
],
|
|
15641
|
+
typicalSize: "small",
|
|
15642
|
+
propsSchema: {
|
|
15643
|
+
value: {
|
|
15644
|
+
types: [
|
|
15645
|
+
"number"
|
|
15646
|
+
],
|
|
15647
|
+
description: "The damage/heal value to display",
|
|
15648
|
+
required: true
|
|
15663
15649
|
},
|
|
15664
|
-
|
|
15650
|
+
type: {
|
|
15665
15651
|
types: [
|
|
15666
15652
|
"string"
|
|
15667
15653
|
],
|
|
15668
|
-
description: "
|
|
15654
|
+
description: "Type of number display"
|
|
15669
15655
|
},
|
|
15670
15656
|
size: {
|
|
15671
15657
|
types: [
|
|
15672
|
-
"
|
|
15658
|
+
"string"
|
|
15673
15659
|
],
|
|
15674
|
-
description: "
|
|
15660
|
+
description: "Size variant"
|
|
15675
15661
|
},
|
|
15676
|
-
|
|
15662
|
+
className: {
|
|
15677
15663
|
types: [
|
|
15678
|
-
"
|
|
15664
|
+
"string"
|
|
15679
15665
|
],
|
|
15680
|
-
description: "
|
|
15666
|
+
description: "Additional CSS classes"
|
|
15667
|
+
}
|
|
15668
|
+
}
|
|
15669
|
+
},
|
|
15670
|
+
"dialogue-bubble": {
|
|
15671
|
+
type: "dialogue-bubble",
|
|
15672
|
+
category: "game",
|
|
15673
|
+
description: "DialogueBubble component",
|
|
15674
|
+
suggestedFor: [
|
|
15675
|
+
"dialogue",
|
|
15676
|
+
"bubble",
|
|
15677
|
+
"dialogue bubble"
|
|
15678
|
+
],
|
|
15679
|
+
typicalSize: "small",
|
|
15680
|
+
propsSchema: {
|
|
15681
|
+
speaker: {
|
|
15682
|
+
types: [
|
|
15683
|
+
"string"
|
|
15684
|
+
],
|
|
15685
|
+
description: "Speaker name displayed at the top"
|
|
15681
15686
|
},
|
|
15682
|
-
|
|
15687
|
+
text: {
|
|
15683
15688
|
types: [
|
|
15684
15689
|
"string"
|
|
15685
15690
|
],
|
|
15686
|
-
description: "
|
|
15691
|
+
description: "Dialogue text content",
|
|
15692
|
+
required: true
|
|
15687
15693
|
},
|
|
15688
|
-
|
|
15694
|
+
portrait: {
|
|
15689
15695
|
types: [
|
|
15690
|
-
"
|
|
15696
|
+
"string"
|
|
15691
15697
|
],
|
|
15692
|
-
description: "
|
|
15698
|
+
description: "URL for the speaker portrait image"
|
|
15693
15699
|
},
|
|
15694
|
-
|
|
15700
|
+
position: {
|
|
15695
15701
|
types: [
|
|
15696
15702
|
"string"
|
|
15697
15703
|
],
|
|
15698
|
-
description: "
|
|
15704
|
+
description: "Position of the bubble on screen"
|
|
15699
15705
|
},
|
|
15700
15706
|
className: {
|
|
15701
15707
|
types: [
|
|
15702
15708
|
"string"
|
|
15703
15709
|
],
|
|
15704
|
-
description: "Additional
|
|
15710
|
+
description: "Additional CSS classes"
|
|
15711
|
+
}
|
|
15712
|
+
}
|
|
15713
|
+
},
|
|
15714
|
+
"item-slot": {
|
|
15715
|
+
type: "item-slot",
|
|
15716
|
+
category: "layout",
|
|
15717
|
+
description: "ItemSlot component",
|
|
15718
|
+
suggestedFor: [
|
|
15719
|
+
"item",
|
|
15720
|
+
"slot",
|
|
15721
|
+
"item slot"
|
|
15722
|
+
],
|
|
15723
|
+
typicalSize: "small",
|
|
15724
|
+
propsSchema: {
|
|
15725
|
+
icon: {
|
|
15726
|
+
types: [
|
|
15727
|
+
"node"
|
|
15728
|
+
],
|
|
15729
|
+
description: "Icon component or emoji"
|
|
15705
15730
|
},
|
|
15706
|
-
|
|
15731
|
+
label: {
|
|
15707
15732
|
types: [
|
|
15708
|
-
"
|
|
15733
|
+
"string"
|
|
15709
15734
|
],
|
|
15710
|
-
description: "
|
|
15735
|
+
description: "Item label"
|
|
15711
15736
|
},
|
|
15712
|
-
|
|
15737
|
+
quantity: {
|
|
15713
15738
|
types: [
|
|
15714
|
-
"
|
|
15739
|
+
"number"
|
|
15715
15740
|
],
|
|
15716
|
-
description: "
|
|
15741
|
+
description: "Stack quantity"
|
|
15717
15742
|
},
|
|
15718
|
-
|
|
15743
|
+
rarity: {
|
|
15719
15744
|
types: [
|
|
15720
|
-
"
|
|
15745
|
+
"string"
|
|
15746
|
+
],
|
|
15747
|
+
description: "Rarity tier affecting border color"
|
|
15748
|
+
},
|
|
15749
|
+
empty: {
|
|
15750
|
+
types: [
|
|
15751
|
+
"boolean"
|
|
15752
|
+
],
|
|
15753
|
+
description: "Whether the slot is empty"
|
|
15754
|
+
},
|
|
15755
|
+
size: {
|
|
15756
|
+
types: [
|
|
15757
|
+
"string"
|
|
15758
|
+
],
|
|
15759
|
+
description: "Size variant"
|
|
15760
|
+
},
|
|
15761
|
+
selected: {
|
|
15762
|
+
types: [
|
|
15763
|
+
"boolean"
|
|
15764
|
+
],
|
|
15765
|
+
description: "Whether the slot is selected"
|
|
15766
|
+
},
|
|
15767
|
+
onClick: {
|
|
15768
|
+
types: [
|
|
15769
|
+
"function"
|
|
15770
|
+
],
|
|
15771
|
+
description: "Click handler"
|
|
15772
|
+
},
|
|
15773
|
+
className: {
|
|
15774
|
+
types: [
|
|
15775
|
+
"string"
|
|
15776
|
+
],
|
|
15777
|
+
description: "Additional CSS classes"
|
|
15778
|
+
}
|
|
15779
|
+
}
|
|
15780
|
+
},
|
|
15781
|
+
"mini-map": {
|
|
15782
|
+
type: "mini-map",
|
|
15783
|
+
category: "component",
|
|
15784
|
+
description: "MiniMap component",
|
|
15785
|
+
suggestedFor: [
|
|
15786
|
+
"mini",
|
|
15787
|
+
"map",
|
|
15788
|
+
"mini map"
|
|
15789
|
+
],
|
|
15790
|
+
typicalSize: "small",
|
|
15791
|
+
propsSchema: {
|
|
15792
|
+
tiles: {
|
|
15793
|
+
types: [
|
|
15794
|
+
"array"
|
|
15795
|
+
],
|
|
15796
|
+
description: "Tile data: each tile renders as a 1px dot at (x,y) with the given color"
|
|
15797
|
+
},
|
|
15798
|
+
units: {
|
|
15799
|
+
types: [
|
|
15800
|
+
"array"
|
|
15801
|
+
],
|
|
15802
|
+
description: "Unit positions: each unit renders as a 2px dot"
|
|
15803
|
+
},
|
|
15804
|
+
width: {
|
|
15805
|
+
types: [
|
|
15806
|
+
"number"
|
|
15807
|
+
],
|
|
15808
|
+
description: "Canvas display width in pixels"
|
|
15809
|
+
},
|
|
15810
|
+
height: {
|
|
15811
|
+
types: [
|
|
15812
|
+
"number"
|
|
15813
|
+
],
|
|
15814
|
+
description: "Canvas display height in pixels"
|
|
15815
|
+
},
|
|
15816
|
+
mapWidth: {
|
|
15817
|
+
types: [
|
|
15818
|
+
"number"
|
|
15819
|
+
],
|
|
15820
|
+
description: "Logical map width (for coordinate scaling)"
|
|
15821
|
+
},
|
|
15822
|
+
mapHeight: {
|
|
15823
|
+
types: [
|
|
15824
|
+
"number"
|
|
15825
|
+
],
|
|
15826
|
+
description: "Logical map height (for coordinate scaling)"
|
|
15827
|
+
},
|
|
15828
|
+
viewportRect: {
|
|
15829
|
+
types: [
|
|
15830
|
+
"object"
|
|
15831
|
+
],
|
|
15832
|
+
description: "Viewport rectangle outline"
|
|
15833
|
+
},
|
|
15834
|
+
className: {
|
|
15835
|
+
types: [
|
|
15836
|
+
"string"
|
|
15837
|
+
],
|
|
15838
|
+
description: "Additional CSS classes"
|
|
15839
|
+
}
|
|
15840
|
+
}
|
|
15841
|
+
},
|
|
15842
|
+
"resource-counter": {
|
|
15843
|
+
type: "resource-counter",
|
|
15844
|
+
category: "component",
|
|
15845
|
+
description: "ResourceCounter component",
|
|
15846
|
+
suggestedFor: [
|
|
15847
|
+
"resource",
|
|
15848
|
+
"counter",
|
|
15849
|
+
"resource counter"
|
|
15850
|
+
],
|
|
15851
|
+
typicalSize: "small",
|
|
15852
|
+
propsSchema: {
|
|
15853
|
+
icon: {
|
|
15854
|
+
types: [
|
|
15855
|
+
"node"
|
|
15856
|
+
],
|
|
15857
|
+
description: "Icon component or emoji"
|
|
15858
|
+
},
|
|
15859
|
+
label: {
|
|
15860
|
+
types: [
|
|
15861
|
+
"string"
|
|
15862
|
+
],
|
|
15863
|
+
description: "Resource label",
|
|
15864
|
+
required: true
|
|
15865
|
+
},
|
|
15866
|
+
value: {
|
|
15867
|
+
types: [
|
|
15868
|
+
"number"
|
|
15869
|
+
],
|
|
15870
|
+
description: "Current value",
|
|
15871
|
+
required: true
|
|
15872
|
+
},
|
|
15873
|
+
max: {
|
|
15874
|
+
types: [
|
|
15875
|
+
"number"
|
|
15876
|
+
],
|
|
15877
|
+
description: "Maximum value"
|
|
15878
|
+
},
|
|
15879
|
+
color: {
|
|
15880
|
+
types: [
|
|
15881
|
+
"string"
|
|
15882
|
+
],
|
|
15883
|
+
description: "Accent color class (e.g. 'text-yellow-400')"
|
|
15884
|
+
},
|
|
15885
|
+
size: {
|
|
15886
|
+
types: [
|
|
15887
|
+
"string"
|
|
15888
|
+
],
|
|
15889
|
+
description: "Size variant"
|
|
15890
|
+
},
|
|
15891
|
+
className: {
|
|
15892
|
+
types: [
|
|
15893
|
+
"string"
|
|
15894
|
+
],
|
|
15895
|
+
description: "Additional CSS classes"
|
|
15896
|
+
}
|
|
15897
|
+
}
|
|
15898
|
+
},
|
|
15899
|
+
"status-effect": {
|
|
15900
|
+
type: "status-effect",
|
|
15901
|
+
category: "display",
|
|
15902
|
+
description: "StatusEffect component",
|
|
15903
|
+
suggestedFor: [
|
|
15904
|
+
"status",
|
|
15905
|
+
"effect",
|
|
15906
|
+
"status effect"
|
|
15907
|
+
],
|
|
15908
|
+
typicalSize: "small",
|
|
15909
|
+
propsSchema: {
|
|
15910
|
+
icon: {
|
|
15911
|
+
types: [
|
|
15912
|
+
"node"
|
|
15913
|
+
],
|
|
15914
|
+
description: "Icon to display for the effect",
|
|
15915
|
+
required: true
|
|
15916
|
+
},
|
|
15917
|
+
label: {
|
|
15918
|
+
types: [
|
|
15919
|
+
"string"
|
|
15920
|
+
],
|
|
15921
|
+
description: "Label describing the effect"
|
|
15922
|
+
},
|
|
15923
|
+
duration: {
|
|
15924
|
+
types: [
|
|
15925
|
+
"number"
|
|
15926
|
+
],
|
|
15927
|
+
description: "Remaining duration in seconds"
|
|
15928
|
+
},
|
|
15929
|
+
stacks: {
|
|
15930
|
+
types: [
|
|
15931
|
+
"number"
|
|
15932
|
+
],
|
|
15933
|
+
description: "Number of stacks"
|
|
15934
|
+
},
|
|
15935
|
+
variant: {
|
|
15936
|
+
types: [
|
|
15937
|
+
"string"
|
|
15938
|
+
],
|
|
15939
|
+
description: "Effect type"
|
|
15940
|
+
},
|
|
15941
|
+
size: {
|
|
15942
|
+
types: [
|
|
15943
|
+
"string"
|
|
15944
|
+
],
|
|
15945
|
+
description: "Size variant"
|
|
15946
|
+
},
|
|
15947
|
+
className: {
|
|
15948
|
+
types: [
|
|
15949
|
+
"string"
|
|
15950
|
+
],
|
|
15951
|
+
description: "Additional CSS classes"
|
|
15952
|
+
}
|
|
15953
|
+
}
|
|
15954
|
+
},
|
|
15955
|
+
"timer-display": {
|
|
15956
|
+
type: "timer-display",
|
|
15957
|
+
category: "component",
|
|
15958
|
+
description: "TimerDisplay component",
|
|
15959
|
+
suggestedFor: [
|
|
15960
|
+
"timer",
|
|
15961
|
+
"display",
|
|
15962
|
+
"timer display"
|
|
15963
|
+
],
|
|
15964
|
+
typicalSize: "small",
|
|
15965
|
+
propsSchema: {
|
|
15966
|
+
seconds: {
|
|
15967
|
+
types: [
|
|
15968
|
+
"number"
|
|
15969
|
+
],
|
|
15970
|
+
description: "Time in seconds",
|
|
15971
|
+
required: true
|
|
15972
|
+
},
|
|
15973
|
+
running: {
|
|
15974
|
+
types: [
|
|
15975
|
+
"boolean"
|
|
15976
|
+
],
|
|
15977
|
+
description: "Whether the timer is running"
|
|
15978
|
+
},
|
|
15979
|
+
format: {
|
|
15980
|
+
types: [
|
|
15981
|
+
"string"
|
|
15982
|
+
],
|
|
15983
|
+
description: "Display format"
|
|
15984
|
+
},
|
|
15985
|
+
size: {
|
|
15986
|
+
types: [
|
|
15987
|
+
"string"
|
|
15988
|
+
],
|
|
15989
|
+
description: "Size variant"
|
|
15990
|
+
},
|
|
15991
|
+
className: {
|
|
15992
|
+
types: [
|
|
15993
|
+
"string"
|
|
15994
|
+
],
|
|
15995
|
+
description: "Additional CSS classes"
|
|
15996
|
+
},
|
|
15997
|
+
lowThreshold: {
|
|
15998
|
+
types: [
|
|
15999
|
+
"number"
|
|
16000
|
+
],
|
|
16001
|
+
description: "Seconds below which to pulse red"
|
|
16002
|
+
}
|
|
16003
|
+
}
|
|
16004
|
+
},
|
|
16005
|
+
"turn-indicator": {
|
|
16006
|
+
type: "turn-indicator",
|
|
16007
|
+
category: "component",
|
|
16008
|
+
description: "TurnIndicator component",
|
|
16009
|
+
suggestedFor: [
|
|
16010
|
+
"turn",
|
|
16011
|
+
"indicator",
|
|
16012
|
+
"turn indicator"
|
|
16013
|
+
],
|
|
16014
|
+
typicalSize: "small",
|
|
16015
|
+
propsSchema: {
|
|
16016
|
+
currentTurn: {
|
|
16017
|
+
types: [
|
|
16018
|
+
"number"
|
|
16019
|
+
],
|
|
16020
|
+
description: "Current turn number",
|
|
16021
|
+
required: true
|
|
16022
|
+
},
|
|
16023
|
+
maxTurns: {
|
|
16024
|
+
types: [
|
|
16025
|
+
"number"
|
|
16026
|
+
],
|
|
16027
|
+
description: "Maximum number of turns"
|
|
16028
|
+
},
|
|
16029
|
+
activeTeam: {
|
|
16030
|
+
types: [
|
|
16031
|
+
"string"
|
|
16032
|
+
],
|
|
16033
|
+
description: "Name of the active team"
|
|
16034
|
+
},
|
|
16035
|
+
phase: {
|
|
16036
|
+
types: [
|
|
16037
|
+
"string"
|
|
16038
|
+
],
|
|
16039
|
+
description: "Current phase label"
|
|
16040
|
+
},
|
|
16041
|
+
size: {
|
|
16042
|
+
types: [
|
|
16043
|
+
"string"
|
|
16044
|
+
],
|
|
16045
|
+
description: "Size variant"
|
|
16046
|
+
},
|
|
16047
|
+
className: {
|
|
16048
|
+
types: [
|
|
16049
|
+
"string"
|
|
16050
|
+
],
|
|
16051
|
+
description: "Additional CSS classes"
|
|
16052
|
+
}
|
|
16053
|
+
}
|
|
16054
|
+
},
|
|
16055
|
+
"waypoint-marker": {
|
|
16056
|
+
type: "waypoint-marker",
|
|
16057
|
+
category: "component",
|
|
16058
|
+
description: "WaypointMarker component",
|
|
16059
|
+
suggestedFor: [
|
|
16060
|
+
"waypoint",
|
|
16061
|
+
"marker",
|
|
16062
|
+
"waypoint marker"
|
|
16063
|
+
],
|
|
16064
|
+
typicalSize: "small",
|
|
16065
|
+
propsSchema: {
|
|
16066
|
+
label: {
|
|
16067
|
+
types: [
|
|
16068
|
+
"string"
|
|
16069
|
+
],
|
|
16070
|
+
description: "Label text below the marker"
|
|
16071
|
+
},
|
|
16072
|
+
icon: {
|
|
16073
|
+
types: [
|
|
16074
|
+
"node"
|
|
16075
|
+
],
|
|
16076
|
+
description: "Custom icon to render inside the marker"
|
|
16077
|
+
},
|
|
16078
|
+
active: {
|
|
16079
|
+
types: [
|
|
16080
|
+
"boolean"
|
|
16081
|
+
],
|
|
16082
|
+
description: "Whether this waypoint is currently active"
|
|
16083
|
+
},
|
|
16084
|
+
completed: {
|
|
16085
|
+
types: [
|
|
16086
|
+
"boolean"
|
|
16087
|
+
],
|
|
16088
|
+
description: "Whether this waypoint has been completed"
|
|
16089
|
+
},
|
|
16090
|
+
size: {
|
|
16091
|
+
types: [
|
|
16092
|
+
"string"
|
|
16093
|
+
],
|
|
16094
|
+
description: "Size variant"
|
|
16095
|
+
},
|
|
16096
|
+
className: {
|
|
16097
|
+
types: [
|
|
16098
|
+
"string"
|
|
16099
|
+
],
|
|
16100
|
+
description: "Additional CSS classes"
|
|
16101
|
+
}
|
|
16102
|
+
}
|
|
16103
|
+
},
|
|
16104
|
+
"x-p-bar": {
|
|
16105
|
+
type: "x-p-bar",
|
|
16106
|
+
category: "component",
|
|
16107
|
+
description: "XPBar component",
|
|
16108
|
+
suggestedFor: [
|
|
16109
|
+
"bar",
|
|
16110
|
+
"x p bar"
|
|
16111
|
+
],
|
|
16112
|
+
typicalSize: "small",
|
|
16113
|
+
propsSchema: {
|
|
16114
|
+
current: {
|
|
16115
|
+
types: [
|
|
16116
|
+
"number"
|
|
16117
|
+
],
|
|
16118
|
+
description: "Current XP value",
|
|
16119
|
+
required: true
|
|
16120
|
+
},
|
|
16121
|
+
max: {
|
|
16122
|
+
types: [
|
|
16123
|
+
"number"
|
|
16124
|
+
],
|
|
16125
|
+
description: "XP needed for next level",
|
|
16126
|
+
required: true
|
|
16127
|
+
},
|
|
16128
|
+
level: {
|
|
16129
|
+
types: [
|
|
16130
|
+
"number"
|
|
16131
|
+
],
|
|
16132
|
+
description: "Current level"
|
|
16133
|
+
},
|
|
16134
|
+
showLabel: {
|
|
16135
|
+
types: [
|
|
16136
|
+
"boolean"
|
|
16137
|
+
],
|
|
16138
|
+
description: "Whether to show the XP label"
|
|
16139
|
+
},
|
|
16140
|
+
size: {
|
|
16141
|
+
types: [
|
|
16142
|
+
"string"
|
|
16143
|
+
],
|
|
16144
|
+
description: "Size variant"
|
|
16145
|
+
},
|
|
16146
|
+
animated: {
|
|
16147
|
+
types: [
|
|
16148
|
+
"boolean"
|
|
16149
|
+
],
|
|
16150
|
+
description: "Animate the fill bar"
|
|
16151
|
+
},
|
|
16152
|
+
className: {
|
|
16153
|
+
types: [
|
|
16154
|
+
"string"
|
|
16155
|
+
],
|
|
16156
|
+
description: "Additional CSS classes"
|
|
16157
|
+
}
|
|
16158
|
+
}
|
|
16159
|
+
},
|
|
16160
|
+
"crafting-recipe": {
|
|
16161
|
+
type: "crafting-recipe",
|
|
16162
|
+
category: "component",
|
|
16163
|
+
description: "CraftingRecipe component",
|
|
16164
|
+
suggestedFor: [
|
|
16165
|
+
"crafting",
|
|
16166
|
+
"recipe",
|
|
16167
|
+
"crafting recipe"
|
|
16168
|
+
],
|
|
16169
|
+
typicalSize: "medium",
|
|
16170
|
+
propsSchema: {
|
|
16171
|
+
inputs: {
|
|
16172
|
+
types: [
|
|
16173
|
+
"array"
|
|
16174
|
+
],
|
|
16175
|
+
description: "Input ingredients for the recipe",
|
|
16176
|
+
required: true
|
|
16177
|
+
},
|
|
16178
|
+
output: {
|
|
16179
|
+
types: [
|
|
16180
|
+
"object"
|
|
16181
|
+
],
|
|
16182
|
+
description: "Output item produced by the recipe",
|
|
16183
|
+
required: true
|
|
16184
|
+
},
|
|
16185
|
+
canCraft: {
|
|
16186
|
+
types: [
|
|
16187
|
+
"boolean"
|
|
16188
|
+
],
|
|
16189
|
+
description: "Whether the player has enough ingredients to craft"
|
|
16190
|
+
},
|
|
16191
|
+
onCraft: {
|
|
16192
|
+
types: [
|
|
16193
|
+
"function"
|
|
16194
|
+
],
|
|
16195
|
+
description: "Callback when the craft button is clicked"
|
|
16196
|
+
},
|
|
16197
|
+
craftEvent: {
|
|
16198
|
+
types: [
|
|
16199
|
+
"string"
|
|
16200
|
+
],
|
|
16201
|
+
description: "Event bus event name for crafting"
|
|
16202
|
+
},
|
|
16203
|
+
className: {
|
|
16204
|
+
types: [
|
|
16205
|
+
"string"
|
|
16206
|
+
],
|
|
16207
|
+
description: "Additional CSS classes"
|
|
16208
|
+
}
|
|
16209
|
+
}
|
|
16210
|
+
},
|
|
16211
|
+
"enemy-plate": {
|
|
16212
|
+
type: "enemy-plate",
|
|
16213
|
+
category: "component",
|
|
16214
|
+
description: "EnemyPlate component",
|
|
16215
|
+
suggestedFor: [
|
|
16216
|
+
"enemy",
|
|
16217
|
+
"plate",
|
|
16218
|
+
"enemy plate"
|
|
16219
|
+
],
|
|
16220
|
+
typicalSize: "medium",
|
|
16221
|
+
propsSchema: {
|
|
16222
|
+
name: {
|
|
16223
|
+
types: [
|
|
16224
|
+
"string"
|
|
16225
|
+
],
|
|
16226
|
+
description: "Enemy name",
|
|
16227
|
+
required: true
|
|
16228
|
+
},
|
|
16229
|
+
health: {
|
|
16230
|
+
types: [
|
|
16231
|
+
"number"
|
|
16232
|
+
],
|
|
16233
|
+
description: "Current health",
|
|
16234
|
+
required: true
|
|
16235
|
+
},
|
|
16236
|
+
maxHealth: {
|
|
16237
|
+
types: [
|
|
16238
|
+
"number"
|
|
16239
|
+
],
|
|
16240
|
+
description: "Maximum health",
|
|
16241
|
+
required: true
|
|
16242
|
+
},
|
|
16243
|
+
level: {
|
|
16244
|
+
types: [
|
|
16245
|
+
"number"
|
|
16246
|
+
],
|
|
16247
|
+
description: "Enemy level"
|
|
16248
|
+
},
|
|
16249
|
+
effects: {
|
|
16250
|
+
types: [
|
|
16251
|
+
"array"
|
|
16252
|
+
],
|
|
16253
|
+
description: "Active status effects"
|
|
16254
|
+
},
|
|
16255
|
+
className: {
|
|
16256
|
+
types: [
|
|
16257
|
+
"string"
|
|
16258
|
+
],
|
|
16259
|
+
description: "Additional CSS classes"
|
|
16260
|
+
}
|
|
16261
|
+
}
|
|
16262
|
+
},
|
|
16263
|
+
"game-canvas2-d": {
|
|
16264
|
+
type: "game-canvas2-d",
|
|
16265
|
+
category: "game",
|
|
16266
|
+
description: "GameCanvas2D component",
|
|
16267
|
+
suggestedFor: [
|
|
16268
|
+
"game",
|
|
16269
|
+
"canvas2",
|
|
16270
|
+
"game canvas2 d"
|
|
16271
|
+
],
|
|
16272
|
+
typicalSize: "medium",
|
|
16273
|
+
propsSchema: {
|
|
16274
|
+
width: {
|
|
16275
|
+
types: [
|
|
16276
|
+
"number"
|
|
16277
|
+
],
|
|
16278
|
+
description: "Canvas width in pixels"
|
|
16279
|
+
},
|
|
16280
|
+
height: {
|
|
16281
|
+
types: [
|
|
16282
|
+
"number"
|
|
16283
|
+
],
|
|
16284
|
+
description: "Canvas height in pixels"
|
|
16285
|
+
},
|
|
16286
|
+
onDraw: {
|
|
16287
|
+
types: [
|
|
16288
|
+
"function"
|
|
16289
|
+
],
|
|
16290
|
+
description: "Called each frame with the 2D context and current frame count"
|
|
16291
|
+
},
|
|
16292
|
+
onTick: {
|
|
16293
|
+
types: [
|
|
16294
|
+
"function"
|
|
16295
|
+
],
|
|
16296
|
+
description: "Called each tick with delta time in seconds"
|
|
16297
|
+
},
|
|
16298
|
+
fps: {
|
|
16299
|
+
types: [
|
|
16300
|
+
"number"
|
|
16301
|
+
],
|
|
16302
|
+
description: "Target frames per second"
|
|
16303
|
+
},
|
|
16304
|
+
className: {
|
|
16305
|
+
types: [
|
|
16306
|
+
"string"
|
|
16307
|
+
],
|
|
16308
|
+
description: "Additional CSS classes"
|
|
16309
|
+
}
|
|
16310
|
+
}
|
|
16311
|
+
},
|
|
16312
|
+
"health-panel": {
|
|
16313
|
+
type: "health-panel",
|
|
16314
|
+
category: "component",
|
|
16315
|
+
description: "HealthPanel component",
|
|
16316
|
+
suggestedFor: [
|
|
16317
|
+
"health",
|
|
16318
|
+
"panel",
|
|
16319
|
+
"health panel"
|
|
16320
|
+
],
|
|
16321
|
+
typicalSize: "medium",
|
|
16322
|
+
propsSchema: {
|
|
16323
|
+
current: {
|
|
16324
|
+
types: [
|
|
16325
|
+
"number"
|
|
16326
|
+
],
|
|
16327
|
+
description: "Current health value",
|
|
16328
|
+
required: true
|
|
16329
|
+
},
|
|
16330
|
+
max: {
|
|
16331
|
+
types: [
|
|
16332
|
+
"number"
|
|
16333
|
+
],
|
|
16334
|
+
description: "Maximum health value",
|
|
16335
|
+
required: true
|
|
16336
|
+
},
|
|
16337
|
+
shield: {
|
|
16338
|
+
types: [
|
|
16339
|
+
"number"
|
|
16340
|
+
],
|
|
16341
|
+
description: "Shield/armor points"
|
|
16342
|
+
},
|
|
16343
|
+
label: {
|
|
16344
|
+
types: [
|
|
16345
|
+
"string"
|
|
16346
|
+
],
|
|
16347
|
+
description: "Label shown above the bar"
|
|
16348
|
+
},
|
|
16349
|
+
effects: {
|
|
16350
|
+
types: [
|
|
16351
|
+
"array"
|
|
16352
|
+
],
|
|
16353
|
+
description: "Active status effects displayed as small badges"
|
|
16354
|
+
},
|
|
16355
|
+
showNumbers: {
|
|
16356
|
+
types: [
|
|
16357
|
+
"boolean"
|
|
16358
|
+
],
|
|
16359
|
+
description: "Whether to display numeric HP values"
|
|
16360
|
+
},
|
|
16361
|
+
size: {
|
|
16362
|
+
types: [
|
|
16363
|
+
"string"
|
|
16364
|
+
],
|
|
16365
|
+
description: "Size variant"
|
|
16366
|
+
},
|
|
16367
|
+
className: {
|
|
16368
|
+
types: [
|
|
16369
|
+
"string"
|
|
16370
|
+
],
|
|
16371
|
+
description: "Additional CSS classes"
|
|
16372
|
+
}
|
|
16373
|
+
}
|
|
16374
|
+
},
|
|
16375
|
+
"inventory-grid": {
|
|
16376
|
+
type: "inventory-grid",
|
|
16377
|
+
category: "game",
|
|
16378
|
+
description: "InventoryGrid component",
|
|
16379
|
+
suggestedFor: [
|
|
16380
|
+
"inventory",
|
|
16381
|
+
"grid",
|
|
16382
|
+
"inventory grid"
|
|
16383
|
+
],
|
|
16384
|
+
typicalSize: "medium",
|
|
16385
|
+
propsSchema: {
|
|
16386
|
+
items: {
|
|
16387
|
+
types: [
|
|
16388
|
+
"array"
|
|
16389
|
+
],
|
|
16390
|
+
description: "Array of items to display in the grid",
|
|
16391
|
+
required: true
|
|
16392
|
+
},
|
|
16393
|
+
columns: {
|
|
16394
|
+
types: [
|
|
16395
|
+
"number"
|
|
16396
|
+
],
|
|
16397
|
+
description: "Number of columns in the grid"
|
|
16398
|
+
},
|
|
16399
|
+
totalSlots: {
|
|
16400
|
+
types: [
|
|
16401
|
+
"number"
|
|
16402
|
+
],
|
|
16403
|
+
description: "Total number of slots (empty slots fill remaining space)"
|
|
16404
|
+
},
|
|
16405
|
+
selectedId: {
|
|
16406
|
+
types: [
|
|
16407
|
+
"string"
|
|
16408
|
+
],
|
|
16409
|
+
description: "Currently selected item ID"
|
|
16410
|
+
},
|
|
16411
|
+
onSelect: {
|
|
16412
|
+
types: [
|
|
16413
|
+
"function"
|
|
16414
|
+
],
|
|
16415
|
+
description: "Callback when an item is selected"
|
|
16416
|
+
},
|
|
16417
|
+
selectEvent: {
|
|
16418
|
+
types: [
|
|
16419
|
+
"string"
|
|
16420
|
+
],
|
|
16421
|
+
description: "Event bus event name for selection"
|
|
16422
|
+
},
|
|
16423
|
+
size: {
|
|
16424
|
+
types: [
|
|
16425
|
+
"string"
|
|
16426
|
+
],
|
|
16427
|
+
description: "Size variant for all item slots"
|
|
16428
|
+
},
|
|
16429
|
+
className: {
|
|
16430
|
+
types: [
|
|
16431
|
+
"string"
|
|
16432
|
+
],
|
|
16433
|
+
description: "Additional CSS classes"
|
|
16434
|
+
}
|
|
16435
|
+
}
|
|
16436
|
+
},
|
|
16437
|
+
"powerup-slots": {
|
|
16438
|
+
type: "powerup-slots",
|
|
16439
|
+
category: "layout",
|
|
16440
|
+
description: "PowerupSlots component",
|
|
16441
|
+
suggestedFor: [
|
|
16442
|
+
"powerup",
|
|
16443
|
+
"slots",
|
|
16444
|
+
"powerup slots"
|
|
16445
|
+
],
|
|
16446
|
+
typicalSize: "medium",
|
|
16447
|
+
propsSchema: {
|
|
16448
|
+
active: {
|
|
16449
|
+
types: [
|
|
16450
|
+
"array"
|
|
16451
|
+
],
|
|
16452
|
+
description: "Array of active powerups",
|
|
16453
|
+
required: true
|
|
16454
|
+
},
|
|
16455
|
+
maxSlots: {
|
|
16456
|
+
types: [
|
|
16457
|
+
"number"
|
|
16458
|
+
],
|
|
16459
|
+
description: "Maximum number of powerup slots"
|
|
16460
|
+
},
|
|
16461
|
+
className: {
|
|
16462
|
+
types: [
|
|
16463
|
+
"string"
|
|
16464
|
+
],
|
|
16465
|
+
description: "Additional CSS classes"
|
|
16466
|
+
}
|
|
16467
|
+
}
|
|
16468
|
+
},
|
|
16469
|
+
"quest-tracker": {
|
|
16470
|
+
type: "quest-tracker",
|
|
16471
|
+
category: "component",
|
|
16472
|
+
description: "QuestTracker component",
|
|
16473
|
+
suggestedFor: [
|
|
16474
|
+
"quest",
|
|
16475
|
+
"tracker",
|
|
16476
|
+
"quest tracker"
|
|
16477
|
+
],
|
|
16478
|
+
typicalSize: "medium",
|
|
16479
|
+
propsSchema: {
|
|
16480
|
+
quests: {
|
|
16481
|
+
types: [
|
|
16482
|
+
"array"
|
|
16483
|
+
],
|
|
16484
|
+
description: "Array of quests to display",
|
|
16485
|
+
required: true
|
|
16486
|
+
},
|
|
16487
|
+
activeQuestId: {
|
|
16488
|
+
types: [
|
|
16489
|
+
"string"
|
|
16490
|
+
],
|
|
16491
|
+
description: "ID of the currently active quest"
|
|
16492
|
+
},
|
|
16493
|
+
className: {
|
|
16494
|
+
types: [
|
|
16495
|
+
"string"
|
|
16496
|
+
],
|
|
16497
|
+
description: "Additional CSS classes"
|
|
16498
|
+
}
|
|
16499
|
+
}
|
|
16500
|
+
},
|
|
16501
|
+
"resource-bar": {
|
|
16502
|
+
type: "resource-bar",
|
|
16503
|
+
category: "component",
|
|
16504
|
+
description: "ResourceBar component",
|
|
16505
|
+
suggestedFor: [
|
|
16506
|
+
"resource",
|
|
16507
|
+
"bar",
|
|
16508
|
+
"resource bar"
|
|
16509
|
+
],
|
|
16510
|
+
typicalSize: "medium",
|
|
16511
|
+
propsSchema: {
|
|
16512
|
+
resources: {
|
|
16513
|
+
types: [
|
|
16514
|
+
"array"
|
|
16515
|
+
],
|
|
16516
|
+
description: "Resources to display",
|
|
16517
|
+
required: true
|
|
16518
|
+
},
|
|
16519
|
+
size: {
|
|
16520
|
+
types: [
|
|
16521
|
+
"string"
|
|
16522
|
+
],
|
|
16523
|
+
description: "Size variant"
|
|
16524
|
+
},
|
|
16525
|
+
className: {
|
|
16526
|
+
types: [
|
|
16527
|
+
"string"
|
|
16528
|
+
],
|
|
16529
|
+
description: "Additional CSS classes"
|
|
16530
|
+
}
|
|
16531
|
+
}
|
|
16532
|
+
},
|
|
16533
|
+
"score-board": {
|
|
16534
|
+
type: "score-board",
|
|
16535
|
+
category: "game",
|
|
16536
|
+
description: "ScoreBoard component",
|
|
16537
|
+
suggestedFor: [
|
|
16538
|
+
"score",
|
|
16539
|
+
"board",
|
|
16540
|
+
"score board"
|
|
16541
|
+
],
|
|
16542
|
+
typicalSize: "medium",
|
|
16543
|
+
propsSchema: {
|
|
16544
|
+
score: {
|
|
16545
|
+
types: [
|
|
16546
|
+
"number"
|
|
16547
|
+
],
|
|
16548
|
+
description: "Current score",
|
|
16549
|
+
required: true
|
|
16550
|
+
},
|
|
16551
|
+
highScore: {
|
|
16552
|
+
types: [
|
|
16553
|
+
"number"
|
|
16554
|
+
],
|
|
16555
|
+
description: "All-time high score"
|
|
16556
|
+
},
|
|
16557
|
+
combo: {
|
|
16558
|
+
types: [
|
|
16559
|
+
"number"
|
|
16560
|
+
],
|
|
16561
|
+
description: "Current combo count"
|
|
16562
|
+
},
|
|
16563
|
+
multiplier: {
|
|
16564
|
+
types: [
|
|
16565
|
+
"number"
|
|
16566
|
+
],
|
|
16567
|
+
description: "Score multiplier"
|
|
16568
|
+
},
|
|
16569
|
+
level: {
|
|
16570
|
+
types: [
|
|
16571
|
+
"number"
|
|
16572
|
+
],
|
|
16573
|
+
description: "Current level"
|
|
16574
|
+
},
|
|
16575
|
+
className: {
|
|
16576
|
+
types: [
|
|
16577
|
+
"string"
|
|
16578
|
+
],
|
|
16579
|
+
description: "Additional CSS classes"
|
|
16580
|
+
}
|
|
16581
|
+
}
|
|
16582
|
+
},
|
|
16583
|
+
"turn-panel": {
|
|
16584
|
+
type: "turn-panel",
|
|
16585
|
+
category: "component",
|
|
16586
|
+
description: "TurnPanel component",
|
|
16587
|
+
suggestedFor: [
|
|
16588
|
+
"turn",
|
|
16589
|
+
"panel",
|
|
16590
|
+
"turn panel"
|
|
16591
|
+
],
|
|
16592
|
+
typicalSize: "medium",
|
|
16593
|
+
propsSchema: {
|
|
16594
|
+
currentTurn: {
|
|
16595
|
+
types: [
|
|
16596
|
+
"number"
|
|
16597
|
+
],
|
|
16598
|
+
description: "Current turn number",
|
|
16599
|
+
required: true
|
|
16600
|
+
},
|
|
16601
|
+
maxTurns: {
|
|
16602
|
+
types: [
|
|
16603
|
+
"number"
|
|
16604
|
+
],
|
|
16605
|
+
description: "Maximum number of turns"
|
|
16606
|
+
},
|
|
16607
|
+
phase: {
|
|
16608
|
+
types: [
|
|
16609
|
+
"string"
|
|
16610
|
+
],
|
|
16611
|
+
description: "Current phase label"
|
|
16612
|
+
},
|
|
16613
|
+
activeTeam: {
|
|
16614
|
+
types: [
|
|
16615
|
+
"string"
|
|
16616
|
+
],
|
|
16617
|
+
description: "Active team name"
|
|
16618
|
+
},
|
|
16619
|
+
actions: {
|
|
16620
|
+
types: [
|
|
16621
|
+
"array"
|
|
16622
|
+
],
|
|
16623
|
+
description: "Action buttons to display"
|
|
16624
|
+
},
|
|
16625
|
+
className: {
|
|
16626
|
+
types: [
|
|
16627
|
+
"string"
|
|
16628
|
+
],
|
|
16629
|
+
description: "Additional CSS classes"
|
|
16630
|
+
}
|
|
16631
|
+
}
|
|
16632
|
+
},
|
|
16633
|
+
"unit-command-bar": {
|
|
16634
|
+
type: "unit-command-bar",
|
|
16635
|
+
category: "component",
|
|
16636
|
+
description: "UnitCommandBar component",
|
|
16637
|
+
suggestedFor: [
|
|
16638
|
+
"unit",
|
|
16639
|
+
"command",
|
|
16640
|
+
"bar",
|
|
16641
|
+
"unit command bar"
|
|
16642
|
+
],
|
|
16643
|
+
typicalSize: "medium",
|
|
16644
|
+
propsSchema: {
|
|
16645
|
+
commands: {
|
|
16646
|
+
types: [
|
|
16647
|
+
"array"
|
|
16648
|
+
],
|
|
16649
|
+
description: "Available commands",
|
|
16650
|
+
required: true
|
|
16651
|
+
},
|
|
16652
|
+
selectedUnitId: {
|
|
16653
|
+
types: [
|
|
16654
|
+
"string"
|
|
16655
|
+
],
|
|
16656
|
+
description: "ID of the currently selected unit"
|
|
16657
|
+
},
|
|
16658
|
+
className: {
|
|
16659
|
+
types: [
|
|
16660
|
+
"string"
|
|
16661
|
+
],
|
|
16662
|
+
description: "Additional CSS classes"
|
|
16663
|
+
}
|
|
16664
|
+
}
|
|
16665
|
+
},
|
|
16666
|
+
heading: {
|
|
16667
|
+
type: "heading",
|
|
16668
|
+
category: "component",
|
|
16669
|
+
description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
|
|
16670
|
+
suggestedFor: [
|
|
16671
|
+
"typography"
|
|
16672
|
+
],
|
|
16673
|
+
typicalSize: "small",
|
|
16674
|
+
propsSchema: {
|
|
16675
|
+
variant: {
|
|
16676
|
+
types: [
|
|
16677
|
+
"typographyvariant"
|
|
16678
|
+
],
|
|
16679
|
+
description: "Typography variant"
|
|
16680
|
+
},
|
|
16681
|
+
level: {
|
|
16682
|
+
types: [
|
|
16683
|
+
"number"
|
|
16684
|
+
],
|
|
16685
|
+
description: "Heading level (1-6) - alternative to variant for headings"
|
|
16686
|
+
},
|
|
16687
|
+
color: {
|
|
16688
|
+
types: [
|
|
16689
|
+
"string"
|
|
16690
|
+
],
|
|
16691
|
+
description: "Text color"
|
|
16692
|
+
},
|
|
16693
|
+
align: {
|
|
16694
|
+
types: [
|
|
16695
|
+
"string"
|
|
16696
|
+
],
|
|
16697
|
+
description: "Text alignment"
|
|
16698
|
+
},
|
|
16699
|
+
weight: {
|
|
16700
|
+
types: [
|
|
16701
|
+
"string"
|
|
16702
|
+
],
|
|
16703
|
+
description: "Font weight override"
|
|
16704
|
+
},
|
|
16705
|
+
size: {
|
|
16706
|
+
types: [
|
|
16707
|
+
"typographysize"
|
|
16708
|
+
],
|
|
16709
|
+
description: "Font size override"
|
|
16710
|
+
},
|
|
16711
|
+
truncate: {
|
|
16712
|
+
types: [
|
|
16713
|
+
"boolean"
|
|
16714
|
+
],
|
|
16715
|
+
description: "Truncate with ellipsis (single line)"
|
|
16716
|
+
},
|
|
16717
|
+
overflow: {
|
|
16718
|
+
types: [
|
|
16719
|
+
"string"
|
|
16720
|
+
],
|
|
16721
|
+
description: "Overflow handling mode"
|
|
16722
|
+
},
|
|
16723
|
+
as: {
|
|
16724
|
+
types: [
|
|
16725
|
+
"unknown"
|
|
16726
|
+
],
|
|
16727
|
+
description: "Custom HTML element"
|
|
16728
|
+
},
|
|
16729
|
+
id: {
|
|
16730
|
+
types: [
|
|
16731
|
+
"string"
|
|
16732
|
+
],
|
|
16733
|
+
description: "HTML id attribute"
|
|
16734
|
+
},
|
|
16735
|
+
className: {
|
|
16736
|
+
types: [
|
|
16737
|
+
"string"
|
|
16738
|
+
],
|
|
16739
|
+
description: "Additional class names"
|
|
16740
|
+
},
|
|
16741
|
+
style: {
|
|
16742
|
+
types: [
|
|
16743
|
+
"object"
|
|
16744
|
+
],
|
|
16745
|
+
description: "Inline style"
|
|
16746
|
+
},
|
|
16747
|
+
content: {
|
|
16748
|
+
types: [
|
|
16749
|
+
"node"
|
|
16750
|
+
],
|
|
16751
|
+
description: "Text content (alternative to children)"
|
|
16752
|
+
},
|
|
16753
|
+
children: {
|
|
16754
|
+
types: [
|
|
16755
|
+
"node"
|
|
16756
|
+
],
|
|
16757
|
+
description: "Children elements"
|
|
16758
|
+
}
|
|
16759
|
+
}
|
|
16760
|
+
},
|
|
16761
|
+
text: {
|
|
16762
|
+
type: "text",
|
|
16763
|
+
category: "component",
|
|
16764
|
+
description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
|
|
16765
|
+
suggestedFor: [
|
|
16766
|
+
"typography"
|
|
16767
|
+
],
|
|
16768
|
+
typicalSize: "small",
|
|
16769
|
+
propsSchema: {
|
|
16770
|
+
variant: {
|
|
16771
|
+
types: [
|
|
16772
|
+
"typographyvariant"
|
|
16773
|
+
],
|
|
16774
|
+
description: "Typography variant"
|
|
16775
|
+
},
|
|
16776
|
+
level: {
|
|
16777
|
+
types: [
|
|
16778
|
+
"number"
|
|
16779
|
+
],
|
|
16780
|
+
description: "Heading level (1-6) - alternative to variant for headings"
|
|
16781
|
+
},
|
|
16782
|
+
color: {
|
|
16783
|
+
types: [
|
|
16784
|
+
"string"
|
|
16785
|
+
],
|
|
16786
|
+
description: "Text color"
|
|
16787
|
+
},
|
|
16788
|
+
align: {
|
|
16789
|
+
types: [
|
|
16790
|
+
"string"
|
|
16791
|
+
],
|
|
16792
|
+
description: "Text alignment"
|
|
16793
|
+
},
|
|
16794
|
+
weight: {
|
|
16795
|
+
types: [
|
|
16796
|
+
"string"
|
|
16797
|
+
],
|
|
16798
|
+
description: "Font weight override"
|
|
16799
|
+
},
|
|
16800
|
+
size: {
|
|
16801
|
+
types: [
|
|
16802
|
+
"typographysize"
|
|
16803
|
+
],
|
|
16804
|
+
description: "Font size override"
|
|
16805
|
+
},
|
|
16806
|
+
truncate: {
|
|
16807
|
+
types: [
|
|
16808
|
+
"boolean"
|
|
16809
|
+
],
|
|
16810
|
+
description: "Truncate with ellipsis (single line)"
|
|
16811
|
+
},
|
|
16812
|
+
overflow: {
|
|
16813
|
+
types: [
|
|
16814
|
+
"string"
|
|
16815
|
+
],
|
|
16816
|
+
description: "Overflow handling mode"
|
|
16817
|
+
},
|
|
16818
|
+
as: {
|
|
16819
|
+
types: [
|
|
16820
|
+
"unknown"
|
|
16821
|
+
],
|
|
16822
|
+
description: "Custom HTML element"
|
|
16823
|
+
},
|
|
16824
|
+
id: {
|
|
16825
|
+
types: [
|
|
16826
|
+
"string"
|
|
16827
|
+
],
|
|
16828
|
+
description: "HTML id attribute"
|
|
16829
|
+
},
|
|
16830
|
+
className: {
|
|
16831
|
+
types: [
|
|
16832
|
+
"string"
|
|
16833
|
+
],
|
|
16834
|
+
description: "Additional class names"
|
|
16835
|
+
},
|
|
16836
|
+
style: {
|
|
16837
|
+
types: [
|
|
16838
|
+
"object"
|
|
16839
|
+
],
|
|
16840
|
+
description: "Inline style"
|
|
16841
|
+
},
|
|
16842
|
+
content: {
|
|
16843
|
+
types: [
|
|
16844
|
+
"node"
|
|
16845
|
+
],
|
|
16846
|
+
description: "Text content (alternative to children)"
|
|
16847
|
+
},
|
|
16848
|
+
children: {
|
|
16849
|
+
types: [
|
|
16850
|
+
"node"
|
|
15721
16851
|
],
|
|
15722
16852
|
description: "Children elements"
|
|
15723
16853
|
}
|
|
@@ -16349,7 +17479,7 @@ var integrators_registry_default = {
|
|
|
16349
17479
|
// src/component-mapping.json
|
|
16350
17480
|
var component_mapping_default = {
|
|
16351
17481
|
version: "1.0.0",
|
|
16352
|
-
exportedAt: "2026-03-
|
|
17482
|
+
exportedAt: "2026-03-11T04:10:55.563Z",
|
|
16353
17483
|
mappings: {
|
|
16354
17484
|
"page-header": {
|
|
16355
17485
|
component: "PageHeader",
|
|
@@ -17439,6 +18569,126 @@ var component_mapping_default = {
|
|
|
17439
18569
|
importPath: "@/components/molecules/SwipeableRow",
|
|
17440
18570
|
category: "component"
|
|
17441
18571
|
},
|
|
18572
|
+
"action-button": {
|
|
18573
|
+
component: "ActionButton",
|
|
18574
|
+
importPath: "@/components/atoms/ActionButton",
|
|
18575
|
+
category: "component"
|
|
18576
|
+
},
|
|
18577
|
+
"choice-button": {
|
|
18578
|
+
component: "ChoiceButton",
|
|
18579
|
+
importPath: "@/components/atoms/ChoiceButton",
|
|
18580
|
+
category: "component"
|
|
18581
|
+
},
|
|
18582
|
+
"combo-counter": {
|
|
18583
|
+
component: "ComboCounter",
|
|
18584
|
+
importPath: "@/components/atoms/ComboCounter",
|
|
18585
|
+
category: "component"
|
|
18586
|
+
},
|
|
18587
|
+
"damage-number": {
|
|
18588
|
+
component: "DamageNumber",
|
|
18589
|
+
importPath: "@/components/atoms/DamageNumber",
|
|
18590
|
+
category: "component"
|
|
18591
|
+
},
|
|
18592
|
+
"dialogue-bubble": {
|
|
18593
|
+
component: "DialogueBubble",
|
|
18594
|
+
importPath: "@/components/atoms/DialogueBubble",
|
|
18595
|
+
category: "game"
|
|
18596
|
+
},
|
|
18597
|
+
"item-slot": {
|
|
18598
|
+
component: "ItemSlot",
|
|
18599
|
+
importPath: "@/components/atoms/ItemSlot",
|
|
18600
|
+
category: "layout"
|
|
18601
|
+
},
|
|
18602
|
+
"mini-map": {
|
|
18603
|
+
component: "MiniMap",
|
|
18604
|
+
importPath: "@/components/atoms/MiniMap",
|
|
18605
|
+
category: "component"
|
|
18606
|
+
},
|
|
18607
|
+
"resource-counter": {
|
|
18608
|
+
component: "ResourceCounter",
|
|
18609
|
+
importPath: "@/components/atoms/ResourceCounter",
|
|
18610
|
+
category: "component"
|
|
18611
|
+
},
|
|
18612
|
+
"status-effect": {
|
|
18613
|
+
component: "StatusEffect",
|
|
18614
|
+
importPath: "@/components/atoms/StatusEffect",
|
|
18615
|
+
category: "display"
|
|
18616
|
+
},
|
|
18617
|
+
"timer-display": {
|
|
18618
|
+
component: "TimerDisplay",
|
|
18619
|
+
importPath: "@/components/atoms/TimerDisplay",
|
|
18620
|
+
category: "component"
|
|
18621
|
+
},
|
|
18622
|
+
"turn-indicator": {
|
|
18623
|
+
component: "TurnIndicator",
|
|
18624
|
+
importPath: "@/components/atoms/TurnIndicator",
|
|
18625
|
+
category: "component"
|
|
18626
|
+
},
|
|
18627
|
+
"waypoint-marker": {
|
|
18628
|
+
component: "WaypointMarker",
|
|
18629
|
+
importPath: "@/components/atoms/WaypointMarker",
|
|
18630
|
+
category: "component"
|
|
18631
|
+
},
|
|
18632
|
+
"x-p-bar": {
|
|
18633
|
+
component: "XPBar",
|
|
18634
|
+
importPath: "@/components/atoms/XPBar",
|
|
18635
|
+
category: "component"
|
|
18636
|
+
},
|
|
18637
|
+
"crafting-recipe": {
|
|
18638
|
+
component: "CraftingRecipe",
|
|
18639
|
+
importPath: "@/components/molecules/CraftingRecipe",
|
|
18640
|
+
category: "component"
|
|
18641
|
+
},
|
|
18642
|
+
"enemy-plate": {
|
|
18643
|
+
component: "EnemyPlate",
|
|
18644
|
+
importPath: "@/components/molecules/EnemyPlate",
|
|
18645
|
+
category: "component"
|
|
18646
|
+
},
|
|
18647
|
+
"game-canvas2-d": {
|
|
18648
|
+
component: "GameCanvas2D",
|
|
18649
|
+
importPath: "@/components/molecules/GameCanvas2D",
|
|
18650
|
+
category: "game"
|
|
18651
|
+
},
|
|
18652
|
+
"health-panel": {
|
|
18653
|
+
component: "HealthPanel",
|
|
18654
|
+
importPath: "@/components/molecules/HealthPanel",
|
|
18655
|
+
category: "component"
|
|
18656
|
+
},
|
|
18657
|
+
"inventory-grid": {
|
|
18658
|
+
component: "InventoryGrid",
|
|
18659
|
+
importPath: "@/components/molecules/InventoryGrid",
|
|
18660
|
+
category: "game"
|
|
18661
|
+
},
|
|
18662
|
+
"powerup-slots": {
|
|
18663
|
+
component: "PowerupSlots",
|
|
18664
|
+
importPath: "@/components/molecules/PowerupSlots",
|
|
18665
|
+
category: "layout"
|
|
18666
|
+
},
|
|
18667
|
+
"quest-tracker": {
|
|
18668
|
+
component: "QuestTracker",
|
|
18669
|
+
importPath: "@/components/molecules/QuestTracker",
|
|
18670
|
+
category: "component"
|
|
18671
|
+
},
|
|
18672
|
+
"resource-bar": {
|
|
18673
|
+
component: "ResourceBar",
|
|
18674
|
+
importPath: "@/components/molecules/ResourceBar",
|
|
18675
|
+
category: "component"
|
|
18676
|
+
},
|
|
18677
|
+
"score-board": {
|
|
18678
|
+
component: "ScoreBoard",
|
|
18679
|
+
importPath: "@/components/molecules/ScoreBoard",
|
|
18680
|
+
category: "game"
|
|
18681
|
+
},
|
|
18682
|
+
"turn-panel": {
|
|
18683
|
+
component: "TurnPanel",
|
|
18684
|
+
importPath: "@/components/molecules/TurnPanel",
|
|
18685
|
+
category: "component"
|
|
18686
|
+
},
|
|
18687
|
+
"unit-command-bar": {
|
|
18688
|
+
component: "UnitCommandBar",
|
|
18689
|
+
importPath: "@/components/molecules/UnitCommandBar",
|
|
18690
|
+
category: "component"
|
|
18691
|
+
},
|
|
17442
18692
|
heading: {
|
|
17443
18693
|
component: "Typography",
|
|
17444
18694
|
importPath: "@/components/atoms/Typography",
|
|
@@ -17455,7 +18705,7 @@ var component_mapping_default = {
|
|
|
17455
18705
|
// src/event-contracts.json
|
|
17456
18706
|
var event_contracts_default = {
|
|
17457
18707
|
version: "1.0.0",
|
|
17458
|
-
exportedAt: "2026-03-
|
|
18708
|
+
exportedAt: "2026-03-11T04:10:55.563Z",
|
|
17459
18709
|
contracts: {
|
|
17460
18710
|
form: {
|
|
17461
18711
|
emits: [
|
|
@@ -18587,7 +19837,7 @@ var event_contracts_default = {
|
|
|
18587
19837
|
}
|
|
18588
19838
|
],
|
|
18589
19839
|
requires: [],
|
|
18590
|
-
entityAware:
|
|
19840
|
+
entityAware: false
|
|
18591
19841
|
},
|
|
18592
19842
|
"trait-slot": {
|
|
18593
19843
|
emits: [
|