@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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "1.0.0",
3
- "exportedAt": "2026-05-19T14:17:44.107Z",
3
+ "exportedAt": "2026-05-22T00:36:20.394Z",
4
4
  "mappings": {
5
5
  "page-header": {
6
6
  "component": "PageHeader",
@@ -1509,6 +1509,11 @@
1509
1509
  "importPath": "@/components/atoms/Dialog",
1510
1510
  "category": "container"
1511
1511
  },
1512
+ "tag-input": {
1513
+ "component": "TagInput",
1514
+ "importPath": "@/components/molecules/TagInput",
1515
+ "category": "form"
1516
+ },
1512
1517
  "heading": {
1513
1518
  "component": "Typography",
1514
1519
  "importPath": "@/components/atoms/Typography",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "1.0.0",
3
- "exportedAt": "2026-05-19T14:17:44.107Z",
3
+ "exportedAt": "2026-05-22T00:36:20.394Z",
4
4
  "contracts": {
5
5
  "form": {
6
6
  "emits": [
package/dist/index.d.ts CHANGED
@@ -3054,6 +3054,16 @@ export declare const registry: {
3054
3054
  types: string[];
3055
3055
  description: string;
3056
3056
  };
3057
+ onRemove: {
3058
+ types: string[];
3059
+ description: string;
3060
+ kind: string;
3061
+ callbackArgs: never[];
3062
+ };
3063
+ removeLabel: {
3064
+ types: string[];
3065
+ description: string;
3066
+ };
3057
3067
  };
3058
3068
  };
3059
3069
  avatar: {
@@ -19067,6 +19077,70 @@ export declare const registry: {
19067
19077
  };
19068
19078
  };
19069
19079
  };
19080
+ "tag-input": {
19081
+ type: string;
19082
+ category: string;
19083
+ description: string;
19084
+ suggestedFor: string[];
19085
+ typicalSize: string;
19086
+ propsSchema: {
19087
+ value: {
19088
+ types: string[];
19089
+ description: string;
19090
+ required: boolean;
19091
+ items: {
19092
+ types: string[];
19093
+ };
19094
+ };
19095
+ onChange: {
19096
+ types: string[];
19097
+ description: string;
19098
+ kind: string;
19099
+ callbackArgs: {
19100
+ name: string;
19101
+ type: string;
19102
+ }[];
19103
+ };
19104
+ placeholder: {
19105
+ types: string[];
19106
+ description: string;
19107
+ };
19108
+ disabled: {
19109
+ types: string[];
19110
+ description: string;
19111
+ default: boolean;
19112
+ };
19113
+ variant: {
19114
+ types: string[];
19115
+ description: string;
19116
+ enumValues: string[];
19117
+ default: string;
19118
+ };
19119
+ unique: {
19120
+ types: string[];
19121
+ description: string;
19122
+ default: boolean;
19123
+ };
19124
+ helperText: {
19125
+ types: string[];
19126
+ description: string;
19127
+ };
19128
+ className: {
19129
+ types: string[];
19130
+ description: string;
19131
+ };
19132
+ addEvent: {
19133
+ types: string[];
19134
+ description: string;
19135
+ kind: string;
19136
+ };
19137
+ removeEvent: {
19138
+ types: string[];
19139
+ description: string;
19140
+ kind: string;
19141
+ };
19142
+ };
19143
+ };
19070
19144
  heading: {
19071
19145
  type: string;
19072
19146
  category: string;
@@ -19217,6 +19291,31 @@ export declare const registry: {
19217
19291
  };
19218
19292
  };
19219
19293
  };
19294
+ "marketing-footer": {
19295
+ type: string;
19296
+ category: string;
19297
+ description: string;
19298
+ suggestedFor: string[];
19299
+ typicalSize: string;
19300
+ propsSchema: {
19301
+ columns: {
19302
+ types: string[];
19303
+ description: string;
19304
+ };
19305
+ copyright: {
19306
+ types: string[];
19307
+ description: string;
19308
+ };
19309
+ logo: {
19310
+ types: string[];
19311
+ description: string;
19312
+ };
19313
+ className: {
19314
+ types: string[];
19315
+ description: string;
19316
+ };
19317
+ };
19318
+ };
19220
19319
  };
19221
19320
  categories: string[];
19222
19321
  };
@@ -22270,6 +22369,16 @@ export declare const PATTERN_REGISTRY: {
22270
22369
  types: string[];
22271
22370
  description: string;
22272
22371
  };
22372
+ onRemove: {
22373
+ types: string[];
22374
+ description: string;
22375
+ kind: string;
22376
+ callbackArgs: never[];
22377
+ };
22378
+ removeLabel: {
22379
+ types: string[];
22380
+ description: string;
22381
+ };
22273
22382
  };
22274
22383
  };
22275
22384
  avatar: {
@@ -38283,6 +38392,70 @@ export declare const PATTERN_REGISTRY: {
38283
38392
  };
38284
38393
  };
38285
38394
  };
38395
+ "tag-input": {
38396
+ type: string;
38397
+ category: string;
38398
+ description: string;
38399
+ suggestedFor: string[];
38400
+ typicalSize: string;
38401
+ propsSchema: {
38402
+ value: {
38403
+ types: string[];
38404
+ description: string;
38405
+ required: boolean;
38406
+ items: {
38407
+ types: string[];
38408
+ };
38409
+ };
38410
+ onChange: {
38411
+ types: string[];
38412
+ description: string;
38413
+ kind: string;
38414
+ callbackArgs: {
38415
+ name: string;
38416
+ type: string;
38417
+ }[];
38418
+ };
38419
+ placeholder: {
38420
+ types: string[];
38421
+ description: string;
38422
+ };
38423
+ disabled: {
38424
+ types: string[];
38425
+ description: string;
38426
+ default: boolean;
38427
+ };
38428
+ variant: {
38429
+ types: string[];
38430
+ description: string;
38431
+ enumValues: string[];
38432
+ default: string;
38433
+ };
38434
+ unique: {
38435
+ types: string[];
38436
+ description: string;
38437
+ default: boolean;
38438
+ };
38439
+ helperText: {
38440
+ types: string[];
38441
+ description: string;
38442
+ };
38443
+ className: {
38444
+ types: string[];
38445
+ description: string;
38446
+ };
38447
+ addEvent: {
38448
+ types: string[];
38449
+ description: string;
38450
+ kind: string;
38451
+ };
38452
+ removeEvent: {
38453
+ types: string[];
38454
+ description: string;
38455
+ kind: string;
38456
+ };
38457
+ };
38458
+ };
38286
38459
  heading: {
38287
38460
  type: string;
38288
38461
  category: string;
@@ -38433,6 +38606,31 @@ export declare const PATTERN_REGISTRY: {
38433
38606
  };
38434
38607
  };
38435
38608
  };
38609
+ "marketing-footer": {
38610
+ type: string;
38611
+ category: string;
38612
+ description: string;
38613
+ suggestedFor: string[];
38614
+ typicalSize: string;
38615
+ propsSchema: {
38616
+ columns: {
38617
+ types: string[];
38618
+ description: string;
38619
+ };
38620
+ copyright: {
38621
+ types: string[];
38622
+ description: string;
38623
+ };
38624
+ logo: {
38625
+ types: string[];
38626
+ description: string;
38627
+ };
38628
+ className: {
38629
+ types: string[];
38630
+ description: string;
38631
+ };
38632
+ };
38633
+ };
38436
38634
  };
38437
38635
  categories: string[];
38438
38636
  };
@@ -40515,6 +40713,11 @@ export declare const COMPONENT_MAPPING: {
40515
40713
  importPath: string;
40516
40714
  category: string;
40517
40715
  };
40716
+ "tag-input": {
40717
+ component: string;
40718
+ importPath: string;
40719
+ category: string;
40720
+ };
40518
40721
  heading: {
40519
40722
  component: string;
40520
40723
  importPath: string;
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-19T14:17:44.107Z",
4
+ exportedAt: "2026-05-22T00:36:20.394Z",
5
5
  patterns: {
6
6
  "entity-table": {
7
7
  type: "entity-table",
@@ -4904,6 +4904,20 @@ var patterns_registry_default = {
4904
4904
  "node"
4905
4905
  ],
4906
4906
  description: "Icon name (Lucide icon string) or React node"
4907
+ },
4908
+ onRemove: {
4909
+ types: [
4910
+ "function"
4911
+ ],
4912
+ 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.',
4913
+ kind: "callback",
4914
+ callbackArgs: []
4915
+ },
4916
+ removeLabel: {
4917
+ types: [
4918
+ "string"
4919
+ ],
4920
+ description: 'Accessible label for the remove button. Defaults to "Remove".'
4907
4921
  }
4908
4922
  }
4909
4923
  },
@@ -30226,6 +30240,108 @@ var patterns_registry_default = {
30226
30240
  }
30227
30241
  }
30228
30242
  },
30243
+ "tag-input": {
30244
+ type: "tag-input",
30245
+ category: "form",
30246
+ description: "TagInput component",
30247
+ suggestedFor: [
30248
+ "tag",
30249
+ "input",
30250
+ "tag input"
30251
+ ],
30252
+ typicalSize: "medium",
30253
+ propsSchema: {
30254
+ value: {
30255
+ types: [
30256
+ "array"
30257
+ ],
30258
+ description: "Current list of tags.",
30259
+ required: true,
30260
+ items: {
30261
+ types: [
30262
+ "string"
30263
+ ]
30264
+ }
30265
+ },
30266
+ onChange: {
30267
+ types: [
30268
+ "function"
30269
+ ],
30270
+ description: "Direct callback emitted on every change. Stays as the Storybook / non-trait contract; trait-driven schemas should prefer the bus events below.",
30271
+ kind: "callback",
30272
+ callbackArgs: [
30273
+ {
30274
+ name: "next",
30275
+ type: "array"
30276
+ }
30277
+ ]
30278
+ },
30279
+ placeholder: {
30280
+ types: [
30281
+ "string"
30282
+ ],
30283
+ description: 'Placeholder for the entry input. Default: `"Type and press Enter\u2026"`.'
30284
+ },
30285
+ disabled: {
30286
+ types: [
30287
+ "boolean"
30288
+ ],
30289
+ description: "Disable add + remove interactions.",
30290
+ default: false
30291
+ },
30292
+ variant: {
30293
+ types: [
30294
+ "string"
30295
+ ],
30296
+ description: "Variant applied to each chip Badge. Default: `'default'`.",
30297
+ enumValues: [
30298
+ "default",
30299
+ "primary",
30300
+ "secondary",
30301
+ "success",
30302
+ "warning",
30303
+ "danger",
30304
+ "error",
30305
+ "info",
30306
+ "neutral"
30307
+ ],
30308
+ default: "default"
30309
+ },
30310
+ unique: {
30311
+ types: [
30312
+ "boolean"
30313
+ ],
30314
+ description: "Suppress duplicate entries. Default: `true`.",
30315
+ default: true
30316
+ },
30317
+ helperText: {
30318
+ types: [
30319
+ "string"
30320
+ ],
30321
+ description: "Helper text rendered under the input."
30322
+ },
30323
+ className: {
30324
+ types: [
30325
+ "string"
30326
+ ],
30327
+ description: "Additional CSS classes applied to the outer container."
30328
+ },
30329
+ addEvent: {
30330
+ types: [
30331
+ "string"
30332
+ ],
30333
+ description: "Event emitted when a tag is added: `UI:{addEvent}` with payload `{ tag: string, value: string[] }`.",
30334
+ kind: "event"
30335
+ },
30336
+ removeEvent: {
30337
+ types: [
30338
+ "string"
30339
+ ],
30340
+ description: "Event emitted when a tag is removed: `UI:{removeEvent}` with payload `{ tag: string, index: number, value: string[] }`.",
30341
+ kind: "event"
30342
+ }
30343
+ }
30344
+ },
30229
30345
  heading: {
30230
30346
  type: "heading",
30231
30347
  category: "component",
@@ -30533,6 +30649,44 @@ var patterns_registry_default = {
30533
30649
  description: "Children elements"
30534
30650
  }
30535
30651
  }
30652
+ },
30653
+ "marketing-footer": {
30654
+ type: "marketing-footer",
30655
+ category: "navigation",
30656
+ description: "Marketing footer with link columns, logo, and copyright",
30657
+ suggestedFor: [
30658
+ "marketing sites",
30659
+ "landing pages",
30660
+ "product websites"
30661
+ ],
30662
+ typicalSize: "large",
30663
+ propsSchema: {
30664
+ columns: {
30665
+ types: [
30666
+ "array"
30667
+ ],
30668
+ description: "Array of footer link column groups"
30669
+ },
30670
+ copyright: {
30671
+ types: [
30672
+ "string"
30673
+ ],
30674
+ description: "Copyright text"
30675
+ },
30676
+ logo: {
30677
+ types: [
30678
+ "object",
30679
+ "string"
30680
+ ],
30681
+ description: "Logo configuration"
30682
+ },
30683
+ className: {
30684
+ types: [
30685
+ "string"
30686
+ ],
30687
+ description: "Additional CSS classes"
30688
+ }
30689
+ }
30536
30690
  }
30537
30691
  },
30538
30692
  categories: [
@@ -31160,7 +31314,7 @@ var integrators_registry_default = {
31160
31314
  // src/component-mapping.json
31161
31315
  var component_mapping_default = {
31162
31316
  version: "1.0.0",
31163
- exportedAt: "2026-05-19T14:17:44.107Z",
31317
+ exportedAt: "2026-05-22T00:36:20.394Z",
31164
31318
  mappings: {
31165
31319
  "page-header": {
31166
31320
  component: "PageHeader",
@@ -32669,6 +32823,11 @@ var component_mapping_default = {
32669
32823
  importPath: "@/components/atoms/Dialog",
32670
32824
  category: "container"
32671
32825
  },
32826
+ "tag-input": {
32827
+ component: "TagInput",
32828
+ importPath: "@/components/molecules/TagInput",
32829
+ category: "form"
32830
+ },
32672
32831
  heading: {
32673
32832
  component: "Typography",
32674
32833
  importPath: "@/components/atoms/Typography",
@@ -32685,7 +32844,7 @@ var component_mapping_default = {
32685
32844
  // src/event-contracts.json
32686
32845
  var event_contracts_default = {
32687
32846
  version: "1.0.0",
32688
- exportedAt: "2026-05-19T14:17:44.107Z",
32847
+ exportedAt: "2026-05-22T00:36:20.394Z",
32689
32848
  contracts: {
32690
32849
  form: {
32691
32850
  emits: [