@almadar/patterns 2.23.1 → 2.25.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/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-05-07T06:31:44.696Z",
4
+ exportedAt: "2026-05-10T00:51:00.079Z",
5
5
  patterns: {
6
6
  "entity-table": {
7
7
  type: "entity-table",
@@ -15279,6 +15279,12 @@ var patterns_registry_default = {
15279
15279
  ],
15280
15280
  description: "Array of markers to display"
15281
15281
  },
15282
+ routes: {
15283
+ types: [
15284
+ "array"
15285
+ ],
15286
+ description: "Routes (polylines with optional popups) drawn over the tile layer"
15287
+ },
15282
15288
  centerLat: {
15283
15289
  types: [
15284
15290
  "number"
@@ -25810,12 +25816,14 @@ var patterns_registry_default = {
25810
25816
  }
25811
25817
  }
25812
25818
  },
25813
- heading: {
25814
- type: "heading",
25815
- category: "component",
25816
- description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
25819
+ "filter-pill": {
25820
+ type: "filter-pill",
25821
+ category: "filter",
25822
+ description: "FilterPill component",
25817
25823
  suggestedFor: [
25818
- "typography"
25824
+ "filter",
25825
+ "pill",
25826
+ "filter pill"
25819
25827
  ],
25820
25828
  typicalSize: "small",
25821
25829
  propsSchema: {
@@ -25823,274 +25831,1126 @@ var patterns_registry_default = {
25823
25831
  types: [
25824
25832
  "string"
25825
25833
  ],
25826
- description: "Typography variant",
25827
- enumValues: [
25828
- "h1",
25829
- "h2",
25830
- "h3",
25831
- "h4",
25832
- "h5",
25833
- "h6",
25834
- "heading",
25835
- "subheading",
25836
- "body1",
25837
- "body2",
25838
- "body",
25839
- "caption",
25840
- "overline",
25841
- "small",
25842
- "large",
25843
- "label"
25844
- ]
25845
- },
25846
- level: {
25847
- types: [
25848
- "number"
25849
- ],
25850
- description: "Heading level (1-6) - alternative to variant for headings"
25851
- },
25852
- color: {
25853
- types: [
25854
- "string"
25855
- ],
25856
- description: "Text color",
25834
+ description: "variant prop",
25857
25835
  enumValues: [
25836
+ "default",
25858
25837
  "primary",
25859
25838
  "secondary",
25860
- "muted",
25861
- "error",
25862
25839
  "success",
25863
25840
  "warning",
25864
- "inherit"
25865
- ]
25866
- },
25867
- align: {
25868
- types: [
25869
- "string"
25870
- ],
25871
- description: "Text alignment",
25872
- enumValues: [
25873
- "left",
25874
- "center",
25875
- "right"
25876
- ]
25877
- },
25878
- weight: {
25879
- types: [
25880
- "string"
25881
- ],
25882
- description: "Font weight override",
25883
- enumValues: [
25884
- "light",
25885
- "normal",
25886
- "medium",
25887
- "semibold",
25888
- "bold"
25841
+ "danger",
25842
+ "info",
25843
+ "neutral"
25889
25844
  ]
25890
25845
  },
25891
25846
  size: {
25892
25847
  types: [
25893
25848
  "string"
25894
25849
  ],
25895
- description: "Font size override",
25850
+ description: "size prop",
25896
25851
  enumValues: [
25897
- "xs",
25898
25852
  "sm",
25899
25853
  "md",
25900
- "lg",
25901
- "xl",
25902
- "2xl",
25903
- "3xl"
25904
- ]
25905
- },
25906
- truncate: {
25907
- types: [
25908
- "boolean"
25909
- ],
25910
- description: "Truncate with ellipsis (single line)"
25911
- },
25912
- overflow: {
25913
- types: [
25914
- "string"
25915
- ],
25916
- description: "Overflow handling mode",
25917
- enumValues: [
25918
- "visible",
25919
- "hidden",
25920
- "wrap",
25921
- "clamp-2",
25922
- "clamp-3"
25854
+ "lg"
25923
25855
  ]
25924
25856
  },
25925
- as: {
25926
- types: [
25927
- "unknown"
25928
- ],
25929
- description: "Custom HTML element"
25930
- },
25931
- id: {
25857
+ label: {
25932
25858
  types: [
25933
- "string"
25859
+ "string",
25860
+ "number"
25934
25861
  ],
25935
- description: "HTML id attribute"
25862
+ description: "Pill label text (alternative to children for schema-driven rendering)."
25936
25863
  },
25937
- className: {
25864
+ icon: {
25938
25865
  types: [
25939
- "string"
25866
+ "node"
25940
25867
  ],
25941
- description: "Additional class names"
25868
+ description: "Optional icon name (Lucide icon string) or React node"
25942
25869
  },
25943
- style: {
25870
+ onRemove: {
25944
25871
  types: [
25945
- "object"
25872
+ "function"
25946
25873
  ],
25947
- description: "Inline style"
25874
+ description: "Called when the user clicks the remove (\xD7) button",
25875
+ kind: "callback",
25876
+ callbackArgs: []
25948
25877
  },
25949
- content: {
25878
+ removable: {
25950
25879
  types: [
25951
- "node"
25880
+ "boolean"
25952
25881
  ],
25953
- description: "Text content (alternative to children)"
25882
+ description: "Disable the remove button (renders without \xD7 control)"
25954
25883
  },
25955
- children: {
25884
+ onClick: {
25956
25885
  types: [
25957
- "node"
25886
+ "function"
25958
25887
  ],
25959
- description: "Children elements"
25888
+ description: "Click handler for the body of the pill (filter toggle)",
25889
+ kind: "callback",
25890
+ callbackArgs: []
25960
25891
  }
25961
25892
  }
25962
25893
  },
25963
- text: {
25964
- type: "text",
25894
+ "likert-scale": {
25895
+ type: "likert-scale",
25965
25896
  category: "component",
25966
- description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
25897
+ description: "LikertScale component",
25967
25898
  suggestedFor: [
25968
- "typography"
25899
+ "likert",
25900
+ "scale",
25901
+ "likert scale"
25969
25902
  ],
25970
- typicalSize: "small",
25903
+ typicalSize: "medium",
25971
25904
  propsSchema: {
25972
- variant: {
25905
+ question: {
25973
25906
  types: [
25974
25907
  "string"
25975
25908
  ],
25976
- description: "Typography variant",
25977
- enumValues: [
25978
- "h1",
25979
- "h2",
25980
- "h3",
25981
- "h4",
25982
- "h5",
25983
- "h6",
25984
- "heading",
25985
- "subheading",
25986
- "body1",
25987
- "body2",
25988
- "body",
25989
- "caption",
25990
- "overline",
25991
- "small",
25992
- "large",
25993
- "label"
25994
- ]
25909
+ description: "Optional row prompt above the scale"
25995
25910
  },
25996
- level: {
25911
+ options: {
25997
25912
  types: [
25998
- "number"
25913
+ "array"
25999
25914
  ],
26000
- description: "Heading level (1-6) - alternative to variant for headings"
25915
+ description: "Scale points (defaults to a 5-point agree/disagree set)"
26001
25916
  },
26002
- color: {
25917
+ value: {
26003
25918
  types: [
25919
+ "number",
26004
25920
  "string"
26005
25921
  ],
26006
- description: "Text color",
26007
- enumValues: [
26008
- "primary",
26009
- "secondary",
26010
- "muted",
26011
- "error",
26012
- "success",
26013
- "warning",
26014
- "inherit"
26015
- ]
25922
+ description: "Selected value (controlled)"
26016
25923
  },
26017
- align: {
25924
+ onChange: {
26018
25925
  types: [
26019
- "string"
25926
+ "function"
26020
25927
  ],
26021
- description: "Text alignment",
26022
- enumValues: [
26023
- "left",
26024
- "center",
26025
- "right"
25928
+ description: "Change callback",
25929
+ kind: "callback",
25930
+ callbackArgs: [
25931
+ {
25932
+ name: "value",
25933
+ type: "number"
25934
+ }
26026
25935
  ]
26027
25936
  },
26028
- weight: {
25937
+ disabled: {
26029
25938
  types: [
26030
- "string"
25939
+ "boolean"
26031
25940
  ],
26032
- description: "Font weight override",
26033
- enumValues: [
26034
- "light",
26035
- "normal",
26036
- "medium",
26037
- "semibold",
26038
- "bold"
26039
- ]
25941
+ description: "Disabled state"
26040
25942
  },
26041
25943
  size: {
26042
25944
  types: [
26043
25945
  "string"
26044
25946
  ],
26045
- description: "Font size override",
25947
+ description: "Size variant",
26046
25948
  enumValues: [
26047
- "xs",
26048
25949
  "sm",
26049
25950
  "md",
26050
- "lg",
26051
- "xl",
26052
- "2xl",
26053
- "3xl"
25951
+ "lg"
26054
25952
  ]
26055
25953
  },
26056
- truncate: {
26057
- types: [
26058
- "boolean"
26059
- ],
26060
- description: "Truncate with ellipsis (single line)"
26061
- },
26062
- overflow: {
25954
+ variant: {
26063
25955
  types: [
26064
25956
  "string"
26065
25957
  ],
26066
- description: "Overflow handling mode",
25958
+ description: "Visual variant: classic radios or pill segmented buttons",
26067
25959
  enumValues: [
26068
- "visible",
26069
- "hidden",
26070
- "wrap",
26071
- "clamp-2",
26072
- "clamp-3"
25960
+ "radios",
25961
+ "buttons"
26073
25962
  ]
26074
25963
  },
26075
- as: {
25964
+ className: {
26076
25965
  types: [
26077
- "unknown"
25966
+ "string"
26078
25967
  ],
26079
- description: "Custom HTML element"
26080
- },
26081
- id: {
25968
+ description: "Additional CSS classes"
25969
+ }
25970
+ }
25971
+ },
25972
+ "matrix-question": {
25973
+ type: "matrix-question",
25974
+ category: "component",
25975
+ description: "MatrixQuestion component",
25976
+ suggestedFor: [
25977
+ "matrix",
25978
+ "question",
25979
+ "matrix question"
25980
+ ],
25981
+ typicalSize: "medium",
25982
+ propsSchema: {
25983
+ title: {
26082
25984
  types: [
26083
25985
  "string"
26084
25986
  ],
26085
- description: "HTML id attribute"
25987
+ description: "Optional title rendered above the matrix"
26086
25988
  },
26087
- className: {
25989
+ rows: {
26088
25990
  types: [
26089
- "string"
25991
+ "array"
26090
25992
  ],
26091
- description: "Additional class names"
25993
+ description: "Question rows",
25994
+ required: true
26092
25995
  },
26093
- style: {
25996
+ columns: {
25997
+ types: [
25998
+ "array"
25999
+ ],
26000
+ description: "Column definitions; defaults to 5-point Likert"
26001
+ },
26002
+ values: {
26003
+ types: [
26004
+ "object"
26005
+ ],
26006
+ description: "Selected value per row, keyed by rowId"
26007
+ },
26008
+ onChange: {
26009
+ types: [
26010
+ "function"
26011
+ ],
26012
+ description: "Change handler invoked with rowId and selected column value",
26013
+ kind: "callback",
26014
+ callbackArgs: [
26015
+ {
26016
+ name: "rowId",
26017
+ type: "string"
26018
+ },
26019
+ {
26020
+ name: "value",
26021
+ type: "number"
26022
+ }
26023
+ ]
26024
+ },
26025
+ disabled: {
26026
+ types: [
26027
+ "boolean"
26028
+ ],
26029
+ description: "Disable all inputs"
26030
+ },
26031
+ size: {
26032
+ types: [
26033
+ "string"
26034
+ ],
26035
+ description: "Visual size",
26036
+ enumValues: [
26037
+ "sm",
26038
+ "md"
26039
+ ]
26040
+ },
26041
+ className: {
26042
+ types: [
26043
+ "string"
26044
+ ],
26045
+ description: "Additional CSS classes"
26046
+ }
26047
+ }
26048
+ },
26049
+ "qr-scanner": {
26050
+ type: "qr-scanner",
26051
+ category: "component",
26052
+ description: "QrScanner component",
26053
+ suggestedFor: [
26054
+ "scanner",
26055
+ "qr scanner"
26056
+ ],
26057
+ typicalSize: "medium",
26058
+ propsSchema: {
26059
+ onScan: {
26060
+ types: [
26061
+ "function"
26062
+ ],
26063
+ description: "onScan prop",
26064
+ kind: "callback",
26065
+ callbackArgs: [
26066
+ {
26067
+ name: "result",
26068
+ type: "object"
26069
+ }
26070
+ ]
26071
+ },
26072
+ onError: {
26073
+ types: [
26074
+ "function"
26075
+ ],
26076
+ description: "onError prop",
26077
+ kind: "callback",
26078
+ callbackArgs: [
26079
+ {
26080
+ name: "error",
26081
+ type: "object"
26082
+ }
26083
+ ]
26084
+ },
26085
+ facingMode: {
26086
+ types: [
26087
+ "string"
26088
+ ],
26089
+ description: "facingMode prop",
26090
+ enumValues: [
26091
+ "environment",
26092
+ "user"
26093
+ ]
26094
+ },
26095
+ paused: {
26096
+ types: [
26097
+ "boolean"
26098
+ ],
26099
+ description: "paused prop"
26100
+ },
26101
+ showOverlay: {
26102
+ types: [
26103
+ "boolean"
26104
+ ],
26105
+ description: "showOverlay prop"
26106
+ },
26107
+ showCameraControls: {
26108
+ types: [
26109
+ "boolean"
26110
+ ],
26111
+ description: "showCameraControls prop"
26112
+ },
26113
+ fallback: {
26114
+ types: [
26115
+ "node"
26116
+ ],
26117
+ description: "fallback prop"
26118
+ },
26119
+ className: {
26120
+ types: [
26121
+ "string"
26122
+ ],
26123
+ description: "className prop"
26124
+ }
26125
+ }
26126
+ },
26127
+ "vote-stack": {
26128
+ type: "vote-stack",
26129
+ category: "component",
26130
+ description: "VoteStack component",
26131
+ suggestedFor: [
26132
+ "vote",
26133
+ "stack",
26134
+ "vote stack"
26135
+ ],
26136
+ typicalSize: "medium",
26137
+ propsSchema: {
26138
+ count: {
26139
+ types: [
26140
+ "number"
26141
+ ],
26142
+ description: "Current tally",
26143
+ required: true
26144
+ },
26145
+ userVote: {
26146
+ types: [
26147
+ "string"
26148
+ ],
26149
+ description: "Current user's vote (null = no vote cast)",
26150
+ enumValues: [
26151
+ "up",
26152
+ "down"
26153
+ ]
26154
+ },
26155
+ onVote: {
26156
+ types: [
26157
+ "function"
26158
+ ],
26159
+ description: "Toggle handler. Clicking the same arrow clears (emits null).",
26160
+ kind: "callback",
26161
+ callbackArgs: [
26162
+ {
26163
+ name: "next",
26164
+ type: "string"
26165
+ }
26166
+ ]
26167
+ },
26168
+ disabled: {
26169
+ types: [
26170
+ "boolean"
26171
+ ],
26172
+ description: "Disabled state"
26173
+ },
26174
+ size: {
26175
+ types: [
26176
+ "string"
26177
+ ],
26178
+ description: "Size variant",
26179
+ enumValues: [
26180
+ "sm",
26181
+ "md",
26182
+ "lg"
26183
+ ]
26184
+ },
26185
+ variant: {
26186
+ types: [
26187
+ "string"
26188
+ ],
26189
+ description: "Layout orientation. `vertical` = forum/Q&A column; `horizontal` = compact row.",
26190
+ enumValues: [
26191
+ "vertical",
26192
+ "horizontal"
26193
+ ]
26194
+ },
26195
+ className: {
26196
+ types: [
26197
+ "string"
26198
+ ],
26199
+ description: "Additional CSS classes"
26200
+ },
26201
+ label: {
26202
+ types: [
26203
+ "string"
26204
+ ],
26205
+ description: "Accessible label for the group"
26206
+ }
26207
+ }
26208
+ },
26209
+ "branching-logic-builder": {
26210
+ type: "branching-logic-builder",
26211
+ category: "display",
26212
+ description: "BranchingLogicBuilder component",
26213
+ suggestedFor: [
26214
+ "branching",
26215
+ "logic",
26216
+ "builder",
26217
+ "branching logic builder"
26218
+ ],
26219
+ typicalSize: "large",
26220
+ propsSchema: {
26221
+ questions: {
26222
+ types: [
26223
+ "array"
26224
+ ],
26225
+ description: "questions prop",
26226
+ required: true
26227
+ },
26228
+ rules: {
26229
+ types: [
26230
+ "array"
26231
+ ],
26232
+ description: "rules prop",
26233
+ required: true
26234
+ },
26235
+ onRulesChange: {
26236
+ types: [
26237
+ "function"
26238
+ ],
26239
+ description: "onRulesChange prop",
26240
+ kind: "callback",
26241
+ callbackArgs: [
26242
+ {
26243
+ name: "rules",
26244
+ type: "array"
26245
+ }
26246
+ ]
26247
+ },
26248
+ readOnly: {
26249
+ types: [
26250
+ "boolean"
26251
+ ],
26252
+ description: "readOnly prop"
26253
+ },
26254
+ className: {
26255
+ types: [
26256
+ "string"
26257
+ ],
26258
+ description: "className prop"
26259
+ }
26260
+ }
26261
+ },
26262
+ "reply-tree": {
26263
+ type: "reply-tree",
26264
+ category: "display",
26265
+ description: "ReplyTree component",
26266
+ suggestedFor: [
26267
+ "reply",
26268
+ "tree",
26269
+ "reply tree"
26270
+ ],
26271
+ typicalSize: "large",
26272
+ propsSchema: {
26273
+ nodes: {
26274
+ types: [
26275
+ "array"
26276
+ ],
26277
+ description: "nodes prop",
26278
+ required: true
26279
+ },
26280
+ maxDepth: {
26281
+ types: [
26282
+ "number"
26283
+ ],
26284
+ description: "maxDepth prop"
26285
+ },
26286
+ onVote: {
26287
+ types: [
26288
+ "function"
26289
+ ],
26290
+ description: "onVote prop",
26291
+ kind: "callback",
26292
+ callbackArgs: [
26293
+ {
26294
+ name: "nodeId",
26295
+ type: "string"
26296
+ },
26297
+ {
26298
+ name: "vote",
26299
+ type: "string"
26300
+ }
26301
+ ]
26302
+ },
26303
+ onReply: {
26304
+ types: [
26305
+ "function"
26306
+ ],
26307
+ description: "onReply prop",
26308
+ kind: "callback",
26309
+ callbackArgs: [
26310
+ {
26311
+ name: "parentNodeId",
26312
+ type: "string"
26313
+ }
26314
+ ]
26315
+ },
26316
+ onFlag: {
26317
+ types: [
26318
+ "function"
26319
+ ],
26320
+ description: "onFlag prop",
26321
+ kind: "callback",
26322
+ callbackArgs: [
26323
+ {
26324
+ name: "nodeId",
26325
+ type: "string"
26326
+ }
26327
+ ]
26328
+ },
26329
+ onContinueThread: {
26330
+ types: [
26331
+ "function"
26332
+ ],
26333
+ description: "onContinueThread prop",
26334
+ kind: "callback",
26335
+ callbackArgs: [
26336
+ {
26337
+ name: "nodeId",
26338
+ type: "string"
26339
+ }
26340
+ ]
26341
+ },
26342
+ showActions: {
26343
+ types: [
26344
+ "boolean"
26345
+ ],
26346
+ description: "showActions prop"
26347
+ },
26348
+ className: {
26349
+ types: [
26350
+ "string"
26351
+ ],
26352
+ description: "className prop"
26353
+ }
26354
+ }
26355
+ },
26356
+ "rich-block-editor": {
26357
+ type: "rich-block-editor",
26358
+ category: "display",
26359
+ description: "RichBlockEditor component",
26360
+ suggestedFor: [
26361
+ "rich",
26362
+ "block",
26363
+ "editor",
26364
+ "rich block editor"
26365
+ ],
26366
+ typicalSize: "large",
26367
+ propsSchema: {
26368
+ initialBlocks: {
26369
+ types: [
26370
+ "array"
26371
+ ],
26372
+ description: "initialBlocks prop"
26373
+ },
26374
+ onChange: {
26375
+ types: [
26376
+ "function"
26377
+ ],
26378
+ description: "onChange prop",
26379
+ kind: "callback",
26380
+ callbackArgs: [
26381
+ {
26382
+ name: "blocks",
26383
+ type: "array"
26384
+ }
26385
+ ]
26386
+ },
26387
+ readOnly: {
26388
+ types: [
26389
+ "boolean"
26390
+ ],
26391
+ description: "readOnly prop"
26392
+ },
26393
+ placeholder: {
26394
+ types: [
26395
+ "string"
26396
+ ],
26397
+ description: "placeholder prop"
26398
+ },
26399
+ showToolbar: {
26400
+ types: [
26401
+ "boolean"
26402
+ ],
26403
+ description: "showToolbar prop"
26404
+ },
26405
+ className: {
26406
+ types: [
26407
+ "string"
26408
+ ],
26409
+ description: "className prop"
26410
+ }
26411
+ }
26412
+ },
26413
+ "version-diff": {
26414
+ type: "version-diff",
26415
+ category: "display",
26416
+ description: "VersionDiff component",
26417
+ suggestedFor: [
26418
+ "version",
26419
+ "diff",
26420
+ "version diff"
26421
+ ],
26422
+ typicalSize: "large",
26423
+ propsSchema: {
26424
+ revisions: {
26425
+ types: [
26426
+ "array"
26427
+ ],
26428
+ description: "All available revisions (at least 2).",
26429
+ required: true
26430
+ },
26431
+ beforeId: {
26432
+ types: [
26433
+ "string"
26434
+ ],
26435
+ description: 'Currently selected "before" revision id.'
26436
+ },
26437
+ afterId: {
26438
+ types: [
26439
+ "string"
26440
+ ],
26441
+ description: 'Currently selected "after" revision id.'
26442
+ },
26443
+ view: {
26444
+ types: [
26445
+ "string"
26446
+ ],
26447
+ description: "Display mode.",
26448
+ enumValues: [
26449
+ "side-by-side",
26450
+ "inline"
26451
+ ]
26452
+ },
26453
+ onSelectBefore: {
26454
+ types: [
26455
+ "function"
26456
+ ],
26457
+ description: 'Called when the user picks a different "before" revision.',
26458
+ kind: "callback",
26459
+ callbackArgs: [
26460
+ {
26461
+ name: "id",
26462
+ type: "string"
26463
+ }
26464
+ ]
26465
+ },
26466
+ onSelectAfter: {
26467
+ types: [
26468
+ "function"
26469
+ ],
26470
+ description: 'Called when the user picks a different "after" revision.',
26471
+ kind: "callback",
26472
+ callbackArgs: [
26473
+ {
26474
+ name: "id",
26475
+ type: "string"
26476
+ }
26477
+ ]
26478
+ },
26479
+ onRevert: {
26480
+ types: [
26481
+ "function"
26482
+ ],
26483
+ description: 'Called when the user clicks the revert button (passes the "before" id).',
26484
+ kind: "callback",
26485
+ callbackArgs: [
26486
+ {
26487
+ name: "id",
26488
+ type: "string"
26489
+ }
26490
+ ]
26491
+ },
26492
+ language: {
26493
+ types: [
26494
+ "string"
26495
+ ],
26496
+ description: "Language label (informational)."
26497
+ },
26498
+ className: {
26499
+ types: [
26500
+ "string"
26501
+ ],
26502
+ description: "Additional CSS classes."
26503
+ }
26504
+ }
26505
+ },
26506
+ "option-constraint-group": {
26507
+ type: "option-constraint-group",
26508
+ category: "component",
26509
+ description: 'OptionConstraintGroup Molecule Component Generic constrained option selector (radio for "single", checkbox for "multi") with required/optional/multi constraints. Renders radio inputs for `single` constraint and checkboxes for `multi`. Reports validation errors inline when the current selection violates the constraint. **Atomic Design**: Composed using Typography atom and native form controls.',
26510
+ suggestedFor: [
26511
+ "option",
26512
+ "constraint",
26513
+ "group",
26514
+ "option constraint group"
26515
+ ],
26516
+ typicalSize: "medium",
26517
+ propsSchema: {
26518
+ groupId: {
26519
+ types: [
26520
+ "string"
26521
+ ],
26522
+ description: "groupId prop",
26523
+ required: true
26524
+ },
26525
+ title: {
26526
+ types: [
26527
+ "string"
26528
+ ],
26529
+ description: "title prop",
26530
+ required: true
26531
+ },
26532
+ description: {
26533
+ types: [
26534
+ "string"
26535
+ ],
26536
+ description: "description prop"
26537
+ },
26538
+ options: {
26539
+ types: [
26540
+ "array"
26541
+ ],
26542
+ description: "options prop",
26543
+ required: true
26544
+ },
26545
+ constraint: {
26546
+ types: [
26547
+ "object"
26548
+ ],
26549
+ description: "constraint prop",
26550
+ required: true
26551
+ },
26552
+ selected: {
26553
+ types: [
26554
+ "array"
26555
+ ],
26556
+ description: "selected prop"
26557
+ },
26558
+ onChange: {
26559
+ types: [
26560
+ "function"
26561
+ ],
26562
+ description: "onChange prop",
26563
+ kind: "callback",
26564
+ callbackArgs: [
26565
+ {
26566
+ name: "selected",
26567
+ type: "array"
26568
+ }
26569
+ ]
26570
+ },
26571
+ size: {
26572
+ types: [
26573
+ "string"
26574
+ ],
26575
+ description: "size prop",
26576
+ enumValues: [
26577
+ "sm",
26578
+ "md"
26579
+ ]
26580
+ },
26581
+ className: {
26582
+ types: [
26583
+ "string"
26584
+ ],
26585
+ description: "className prop"
26586
+ }
26587
+ }
26588
+ },
26589
+ "positioned-canvas": {
26590
+ type: "positioned-canvas",
26591
+ category: "game",
26592
+ description: "PositionedCanvas component",
26593
+ suggestedFor: [
26594
+ "positioned",
26595
+ "canvas",
26596
+ "positioned canvas"
26597
+ ],
26598
+ typicalSize: "medium",
26599
+ propsSchema: {
26600
+ items: {
26601
+ types: [
26602
+ "array"
26603
+ ],
26604
+ description: "items prop",
26605
+ required: true
26606
+ },
26607
+ width: {
26608
+ types: [
26609
+ "number"
26610
+ ],
26611
+ description: "width prop"
26612
+ },
26613
+ height: {
26614
+ types: [
26615
+ "number"
26616
+ ],
26617
+ description: "height prop"
26618
+ },
26619
+ selectedId: {
26620
+ types: [
26621
+ "string"
26622
+ ],
26623
+ description: "selectedId prop"
26624
+ },
26625
+ editable: {
26626
+ types: [
26627
+ "boolean"
26628
+ ],
26629
+ description: "editable prop"
26630
+ },
26631
+ onSelect: {
26632
+ types: [
26633
+ "function"
26634
+ ],
26635
+ description: "onSelect prop",
26636
+ kind: "callback",
26637
+ callbackArgs: [
26638
+ {
26639
+ name: "id",
26640
+ type: "string"
26641
+ }
26642
+ ]
26643
+ },
26644
+ onMove: {
26645
+ types: [
26646
+ "function"
26647
+ ],
26648
+ description: "onMove prop",
26649
+ kind: "callback",
26650
+ callbackArgs: [
26651
+ {
26652
+ name: "id",
26653
+ type: "string"
26654
+ },
26655
+ {
26656
+ name: "x",
26657
+ type: "number"
26658
+ },
26659
+ {
26660
+ name: "y",
26661
+ type: "number"
26662
+ }
26663
+ ]
26664
+ },
26665
+ className: {
26666
+ types: [
26667
+ "string"
26668
+ ],
26669
+ description: "className prop"
26670
+ }
26671
+ }
26672
+ },
26673
+ heading: {
26674
+ type: "heading",
26675
+ category: "component",
26676
+ description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
26677
+ suggestedFor: [
26678
+ "typography"
26679
+ ],
26680
+ typicalSize: "small",
26681
+ propsSchema: {
26682
+ variant: {
26683
+ types: [
26684
+ "string"
26685
+ ],
26686
+ description: "Typography variant",
26687
+ enumValues: [
26688
+ "h1",
26689
+ "h2",
26690
+ "h3",
26691
+ "h4",
26692
+ "h5",
26693
+ "h6",
26694
+ "heading",
26695
+ "subheading",
26696
+ "body1",
26697
+ "body2",
26698
+ "body",
26699
+ "caption",
26700
+ "overline",
26701
+ "small",
26702
+ "large",
26703
+ "label"
26704
+ ]
26705
+ },
26706
+ level: {
26707
+ types: [
26708
+ "number"
26709
+ ],
26710
+ description: "Heading level (1-6) - alternative to variant for headings"
26711
+ },
26712
+ color: {
26713
+ types: [
26714
+ "string"
26715
+ ],
26716
+ description: "Text color",
26717
+ enumValues: [
26718
+ "primary",
26719
+ "secondary",
26720
+ "muted",
26721
+ "error",
26722
+ "success",
26723
+ "warning",
26724
+ "inherit"
26725
+ ]
26726
+ },
26727
+ align: {
26728
+ types: [
26729
+ "string"
26730
+ ],
26731
+ description: "Text alignment",
26732
+ enumValues: [
26733
+ "left",
26734
+ "center",
26735
+ "right"
26736
+ ]
26737
+ },
26738
+ weight: {
26739
+ types: [
26740
+ "string"
26741
+ ],
26742
+ description: "Font weight override",
26743
+ enumValues: [
26744
+ "light",
26745
+ "normal",
26746
+ "medium",
26747
+ "semibold",
26748
+ "bold"
26749
+ ]
26750
+ },
26751
+ size: {
26752
+ types: [
26753
+ "string"
26754
+ ],
26755
+ description: "Font size override",
26756
+ enumValues: [
26757
+ "xs",
26758
+ "sm",
26759
+ "md",
26760
+ "lg",
26761
+ "xl",
26762
+ "2xl",
26763
+ "3xl"
26764
+ ]
26765
+ },
26766
+ truncate: {
26767
+ types: [
26768
+ "boolean"
26769
+ ],
26770
+ description: "Truncate with ellipsis (single line)"
26771
+ },
26772
+ overflow: {
26773
+ types: [
26774
+ "string"
26775
+ ],
26776
+ description: "Overflow handling mode",
26777
+ enumValues: [
26778
+ "visible",
26779
+ "hidden",
26780
+ "wrap",
26781
+ "clamp-2",
26782
+ "clamp-3"
26783
+ ]
26784
+ },
26785
+ as: {
26786
+ types: [
26787
+ "unknown"
26788
+ ],
26789
+ description: "Custom HTML element"
26790
+ },
26791
+ id: {
26792
+ types: [
26793
+ "string"
26794
+ ],
26795
+ description: "HTML id attribute"
26796
+ },
26797
+ className: {
26798
+ types: [
26799
+ "string"
26800
+ ],
26801
+ description: "Additional class names"
26802
+ },
26803
+ style: {
26804
+ types: [
26805
+ "object"
26806
+ ],
26807
+ description: "Inline style"
26808
+ },
26809
+ content: {
26810
+ types: [
26811
+ "node"
26812
+ ],
26813
+ description: "Text content (alternative to children)"
26814
+ },
26815
+ children: {
26816
+ types: [
26817
+ "node"
26818
+ ],
26819
+ description: "Children elements"
26820
+ }
26821
+ }
26822
+ },
26823
+ text: {
26824
+ type: "text",
26825
+ category: "component",
26826
+ description: "Alias for typography \u2014 Typography Atom Component Text elements following the KFlow design system with theme-aware styling.",
26827
+ suggestedFor: [
26828
+ "typography"
26829
+ ],
26830
+ typicalSize: "small",
26831
+ propsSchema: {
26832
+ variant: {
26833
+ types: [
26834
+ "string"
26835
+ ],
26836
+ description: "Typography variant",
26837
+ enumValues: [
26838
+ "h1",
26839
+ "h2",
26840
+ "h3",
26841
+ "h4",
26842
+ "h5",
26843
+ "h6",
26844
+ "heading",
26845
+ "subheading",
26846
+ "body1",
26847
+ "body2",
26848
+ "body",
26849
+ "caption",
26850
+ "overline",
26851
+ "small",
26852
+ "large",
26853
+ "label"
26854
+ ]
26855
+ },
26856
+ level: {
26857
+ types: [
26858
+ "number"
26859
+ ],
26860
+ description: "Heading level (1-6) - alternative to variant for headings"
26861
+ },
26862
+ color: {
26863
+ types: [
26864
+ "string"
26865
+ ],
26866
+ description: "Text color",
26867
+ enumValues: [
26868
+ "primary",
26869
+ "secondary",
26870
+ "muted",
26871
+ "error",
26872
+ "success",
26873
+ "warning",
26874
+ "inherit"
26875
+ ]
26876
+ },
26877
+ align: {
26878
+ types: [
26879
+ "string"
26880
+ ],
26881
+ description: "Text alignment",
26882
+ enumValues: [
26883
+ "left",
26884
+ "center",
26885
+ "right"
26886
+ ]
26887
+ },
26888
+ weight: {
26889
+ types: [
26890
+ "string"
26891
+ ],
26892
+ description: "Font weight override",
26893
+ enumValues: [
26894
+ "light",
26895
+ "normal",
26896
+ "medium",
26897
+ "semibold",
26898
+ "bold"
26899
+ ]
26900
+ },
26901
+ size: {
26902
+ types: [
26903
+ "string"
26904
+ ],
26905
+ description: "Font size override",
26906
+ enumValues: [
26907
+ "xs",
26908
+ "sm",
26909
+ "md",
26910
+ "lg",
26911
+ "xl",
26912
+ "2xl",
26913
+ "3xl"
26914
+ ]
26915
+ },
26916
+ truncate: {
26917
+ types: [
26918
+ "boolean"
26919
+ ],
26920
+ description: "Truncate with ellipsis (single line)"
26921
+ },
26922
+ overflow: {
26923
+ types: [
26924
+ "string"
26925
+ ],
26926
+ description: "Overflow handling mode",
26927
+ enumValues: [
26928
+ "visible",
26929
+ "hidden",
26930
+ "wrap",
26931
+ "clamp-2",
26932
+ "clamp-3"
26933
+ ]
26934
+ },
26935
+ as: {
26936
+ types: [
26937
+ "unknown"
26938
+ ],
26939
+ description: "Custom HTML element"
26940
+ },
26941
+ id: {
26942
+ types: [
26943
+ "string"
26944
+ ],
26945
+ description: "HTML id attribute"
26946
+ },
26947
+ className: {
26948
+ types: [
26949
+ "string"
26950
+ ],
26951
+ description: "Additional class names"
26952
+ },
26953
+ style: {
26094
26954
  types: [
26095
26955
  "object"
26096
26956
  ],
@@ -26736,7 +27596,7 @@ var integrators_registry_default = {
26736
27596
  // src/component-mapping.json
26737
27597
  var component_mapping_default = {
26738
27598
  version: "1.0.0",
26739
- exportedAt: "2026-05-07T06:31:44.696Z",
27599
+ exportedAt: "2026-05-10T00:51:00.079Z",
26740
27600
  mappings: {
26741
27601
  "page-header": {
26742
27602
  component: "PageHeader",
@@ -28531,6 +29391,61 @@ var component_mapping_default = {
28531
29391
  importPath: "@/components/organisms/AvlOrbitalsCosmicZoom",
28532
29392
  category: "display"
28533
29393
  },
29394
+ "filter-pill": {
29395
+ component: "FilterPill",
29396
+ importPath: "@/components/atoms/FilterPill",
29397
+ category: "filter"
29398
+ },
29399
+ "likert-scale": {
29400
+ component: "LikertScale",
29401
+ importPath: "@/components/molecules/LikertScale",
29402
+ category: "component"
29403
+ },
29404
+ "matrix-question": {
29405
+ component: "MatrixQuestion",
29406
+ importPath: "@/components/molecules/MatrixQuestion",
29407
+ category: "component"
29408
+ },
29409
+ "qr-scanner": {
29410
+ component: "QrScanner",
29411
+ importPath: "@/components/molecules/QrScanner",
29412
+ category: "component"
29413
+ },
29414
+ "vote-stack": {
29415
+ component: "VoteStack",
29416
+ importPath: "@/components/molecules/VoteStack",
29417
+ category: "component"
29418
+ },
29419
+ "branching-logic-builder": {
29420
+ component: "BranchingLogicBuilder",
29421
+ importPath: "@/components/organisms/BranchingLogicBuilder",
29422
+ category: "display"
29423
+ },
29424
+ "reply-tree": {
29425
+ component: "ReplyTree",
29426
+ importPath: "@/components/organisms/ReplyTree",
29427
+ category: "display"
29428
+ },
29429
+ "rich-block-editor": {
29430
+ component: "RichBlockEditor",
29431
+ importPath: "@/components/organisms/RichBlockEditor",
29432
+ category: "display"
29433
+ },
29434
+ "version-diff": {
29435
+ component: "VersionDiff",
29436
+ importPath: "@/components/organisms/VersionDiff",
29437
+ category: "display"
29438
+ },
29439
+ "option-constraint-group": {
29440
+ component: "OptionConstraintGroup",
29441
+ importPath: "@/components/molecules/OptionConstraintGroup",
29442
+ category: "component"
29443
+ },
29444
+ "positioned-canvas": {
29445
+ component: "PositionedCanvas",
29446
+ importPath: "@/components/molecules/PositionedCanvas",
29447
+ category: "game"
29448
+ },
28534
29449
  heading: {
28535
29450
  component: "Typography",
28536
29451
  importPath: "@/components/atoms/Typography",
@@ -28547,7 +29462,7 @@ var component_mapping_default = {
28547
29462
  // src/event-contracts.json
28548
29463
  var event_contracts_default = {
28549
29464
  version: "1.0.0",
28550
- exportedAt: "2026-05-07T06:31:44.696Z",
29465
+ exportedAt: "2026-05-10T00:51:00.079Z",
28551
29466
  contracts: {
28552
29467
  form: {
28553
29468
  emits: [