@almadar/patterns 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -494,7 +494,107 @@
494
494
  }
495
495
  }
496
496
  ]
497
+ },
498
+ "github": {
499
+ "name": "github",
500
+ "description": "GitHub integration - Git operations and GitHub REST API",
501
+ "category": "devtools",
502
+ "actions": [
503
+ {
504
+ "name": "cloneRepo",
505
+ "description": "Clone a repository",
506
+ "params": [
507
+ { "name": "repo", "type": "string", "required": true, "description": "Repository URL or owner/repo" },
508
+ { "name": "branch", "type": "string", "required": false, "description": "Branch to clone" }
509
+ ],
510
+ "responseShape": { "path": "string", "branch": "string" }
511
+ },
512
+ {
513
+ "name": "createBranch",
514
+ "description": "Create a new branch",
515
+ "params": [
516
+ { "name": "repo", "type": "string", "required": true, "description": "Local repo path" },
517
+ { "name": "branch", "type": "string", "required": true, "description": "Branch name" }
518
+ ],
519
+ "responseShape": { "branch": "string" }
520
+ },
521
+ {
522
+ "name": "commit",
523
+ "description": "Commit changes",
524
+ "params": [
525
+ { "name": "repo", "type": "string", "required": true, "description": "Local repo path" },
526
+ { "name": "message", "type": "string", "required": true, "description": "Commit message" },
527
+ { "name": "files", "type": "array", "required": false, "description": "Files to stage" }
528
+ ],
529
+ "responseShape": { "hash": "string", "message": "string" }
530
+ },
531
+ {
532
+ "name": "push",
533
+ "description": "Push commits to remote",
534
+ "params": [
535
+ { "name": "repo", "type": "string", "required": true, "description": "Local repo path" },
536
+ { "name": "branch", "type": "string", "required": false, "description": "Branch to push" }
537
+ ],
538
+ "responseShape": { "success": "boolean" }
539
+ },
540
+ {
541
+ "name": "createPR",
542
+ "description": "Create a pull request",
543
+ "params": [
544
+ { "name": "title", "type": "string", "required": true, "description": "PR title" },
545
+ { "name": "body", "type": "string", "required": false, "description": "PR description" },
546
+ { "name": "head", "type": "string", "required": true, "description": "Head branch" },
547
+ { "name": "base", "type": "string", "required": false, "description": "Base branch (default: main)" }
548
+ ],
549
+ "responseShape": { "number": "number", "url": "string" }
550
+ },
551
+ {
552
+ "name": "getPRComments",
553
+ "description": "Fetch pull request comments",
554
+ "params": [
555
+ { "name": "prNumber", "type": "number", "required": true, "description": "PR number" }
556
+ ],
557
+ "responseShape": { "comments": "array" }
558
+ },
559
+ {
560
+ "name": "listIssues",
561
+ "description": "List issues with optional filters",
562
+ "params": [
563
+ { "name": "state", "type": "string", "required": false, "description": "Issue state: open, closed, all" },
564
+ { "name": "labels", "type": "string", "required": false, "description": "Comma-separated label names" }
565
+ ],
566
+ "responseShape": { "issues": "array" }
567
+ },
568
+ {
569
+ "name": "getIssue",
570
+ "description": "Get a single issue",
571
+ "params": [
572
+ { "name": "issueNumber", "type": "number", "required": true, "description": "Issue number" }
573
+ ],
574
+ "responseShape": { "title": "string", "body": "string", "state": "string" }
575
+ }
576
+ ]
577
+ },
578
+ "cli": {
579
+ "name": "cli",
580
+ "description": "Almadar CLI integration - schema validation and compilation",
581
+ "category": "devtools",
582
+ "actions": [
583
+ {
584
+ "name": "validate",
585
+ "description": "Validate an orbital schema",
586
+ "params": [
587
+ { "name": "schema", "type": "string", "required": true, "description": "Schema content to validate" }
588
+ ],
589
+ "responseShape": {
590
+ "valid": "boolean",
591
+ "errors": "array",
592
+ "warnings": "array",
593
+ "summary": "string"
594
+ }
595
+ }
596
+ ]
497
597
  }
498
598
  },
499
- "categories": ["media", "payment", "messaging", "ai"]
599
+ "categories": ["media", "payment", "messaging", "ai", "devtools"]
500
600
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "1.0.0",
3
- "exportedAt": "2026-02-10T15:35:56.769Z",
3
+ "exportedAt": "2026-02-12T06:50:46.522Z",
4
4
  "patterns": {
5
5
  "entity-table": {
6
6
  "type": "entity-table",
@@ -1349,6 +1349,12 @@
1349
1349
  "string"
1350
1350
  ],
1351
1351
  "description": "Additional CSS classes"
1352
+ },
1353
+ "stepClickEvent": {
1354
+ "types": [
1355
+ "string"
1356
+ ],
1357
+ "description": "Declarative step click event — emits UI:{stepClickEvent} with { stepIndex }"
1352
1358
  }
1353
1359
  }
1354
1360
  },
@@ -1621,6 +1627,18 @@
1621
1627
  "string"
1622
1628
  ],
1623
1629
  "description": "Additional CSS classes"
1630
+ },
1631
+ "pageChangeEvent": {
1632
+ "types": [
1633
+ "string"
1634
+ ],
1635
+ "description": "Declarative page change event — emits UI:{pageChangeEvent} with { page }"
1636
+ },
1637
+ "pageSizeChangeEvent": {
1638
+ "types": [
1639
+ "string"
1640
+ ],
1641
+ "description": "Declarative page size change event — emits UI:{pageSizeChangeEvent} with { pageSize }"
1624
1642
  }
1625
1643
  }
1626
1644
  },
@@ -1688,6 +1706,12 @@
1688
1706
  "string"
1689
1707
  ],
1690
1708
  "description": "Variant for color styling"
1709
+ },
1710
+ "actionEvent": {
1711
+ "types": [
1712
+ "string"
1713
+ ],
1714
+ "description": "Declarative action event — emits UI:{actionEvent} via eventBus when action button is clicked"
1691
1715
  }
1692
1716
  }
1693
1717
  },
@@ -1759,6 +1783,12 @@
1759
1783
  "string"
1760
1784
  ],
1761
1785
  "description": "className prop"
1786
+ },
1787
+ "retryEvent": {
1788
+ "types": [
1789
+ "string"
1790
+ ],
1791
+ "description": "Declarative retry event — emits UI:{retryEvent} via eventBus when retry button is clicked"
1762
1792
  }
1763
1793
  }
1764
1794
  },
@@ -1834,6 +1864,18 @@
1834
1864
  "string"
1835
1865
  ],
1836
1866
  "description": "Additional CSS classes"
1867
+ },
1868
+ "dismissEvent": {
1869
+ "types": [
1870
+ "string"
1871
+ ],
1872
+ "description": "Declarative dismiss event — emits UI:{dismissEvent} via eventBus when toast is dismissed"
1873
+ },
1874
+ "actionEvent": {
1875
+ "types": [
1876
+ "string"
1877
+ ],
1878
+ "description": "Declarative action event — emits UI:{actionEvent} via eventBus when action button is clicked"
1837
1879
  }
1838
1880
  }
1839
1881
  },
@@ -2074,6 +2116,12 @@
2074
2116
  "string"
2075
2117
  ],
2076
2118
  "description": "className prop"
2119
+ },
2120
+ "closeEvent": {
2121
+ "types": [
2122
+ "string"
2123
+ ],
2124
+ "description": "Declarative close event — emits UI:{closeEvent} via eventBus when modal should close"
2077
2125
  }
2078
2126
  }
2079
2127
  },
@@ -2154,6 +2202,12 @@
2154
2202
  "string"
2155
2203
  ],
2156
2204
  "description": "Additional class name"
2205
+ },
2206
+ "closeEvent": {
2207
+ "types": [
2208
+ "string"
2209
+ ],
2210
+ "description": "Declarative close event — emits UI:{closeEvent} via eventBus when drawer should close"
2157
2211
  }
2158
2212
  }
2159
2213
  },
@@ -2426,6 +2480,24 @@
2426
2480
  "react.elementtype"
2427
2481
  ],
2428
2482
  "description": "HTML element to render as"
2483
+ },
2484
+ "action": {
2485
+ "types": [
2486
+ "string"
2487
+ ],
2488
+ "description": "Declarative event name — emits UI:{action} via eventBus on click"
2489
+ },
2490
+ "actionPayload": {
2491
+ "types": [
2492
+ "object"
2493
+ ],
2494
+ "description": "Payload to include with the action event"
2495
+ },
2496
+ "hoverEvent": {
2497
+ "types": [
2498
+ "string"
2499
+ ],
2500
+ "description": "Declarative hover event — emits UI:{hoverEvent} with { hovered: true/false } on mouseEnter/mouseLeave"
2429
2501
  }
2430
2502
  }
2431
2503
  },
@@ -2906,8 +2978,7 @@
2906
2978
  "types": [
2907
2979
  "function"
2908
2980
  ],
2909
- "description": "Called when a slot is selected",
2910
- "required": true
2981
+ "description": "Called when a slot is selected"
2911
2982
  },
2912
2983
  "onUseItem": {
2913
2984
  "types": [
@@ -2921,6 +2992,24 @@
2921
2992
  ],
2922
2993
  "description": "Called when an item is dropped"
2923
2994
  },
2995
+ "selectSlotEvent": {
2996
+ "types": [
2997
+ "string"
2998
+ ],
2999
+ "description": "Declarative event: emits UI:{selectSlotEvent} with { index } when a slot is selected"
3000
+ },
3001
+ "useItemEvent": {
3002
+ "types": [
3003
+ "string"
3004
+ ],
3005
+ "description": "Declarative event: emits UI:{useItemEvent} with { item } when an item is used"
3006
+ },
3007
+ "dropItemEvent": {
3008
+ "types": [
3009
+ "string"
3010
+ ],
3011
+ "description": "Declarative event: emits UI:{dropItemEvent} with { item } when an item is dropped"
3012
+ },
2924
3013
  "showTooltips": {
2925
3014
  "types": [
2926
3015
  "boolean"
@@ -2989,6 +3078,24 @@
2989
3078
  ],
2990
3079
  "description": "Called when dialogue is advanced (no choices)"
2991
3080
  },
3081
+ "completeEvent": {
3082
+ "types": [
3083
+ "string"
3084
+ ],
3085
+ "description": "Declarative event: emits UI:{completeEvent} when text animation completes"
3086
+ },
3087
+ "choiceEvent": {
3088
+ "types": [
3089
+ "string"
3090
+ ],
3091
+ "description": "Declarative event: emits UI:{choiceEvent} with { choice } when a choice is selected"
3092
+ },
3093
+ "advanceEvent": {
3094
+ "types": [
3095
+ "string"
3096
+ ],
3097
+ "description": "Declarative event: emits UI:{advanceEvent} when dialogue is advanced"
3098
+ },
2992
3099
  "className": {
2993
3100
  "types": [
2994
3101
  "string"
@@ -3080,6 +3187,24 @@
3080
3187
  "icon"
3081
3188
  ],
3082
3189
  "description": "Right icon as Lucide icon component (convenience prop)"
3190
+ },
3191
+ "action": {
3192
+ "types": [
3193
+ "string"
3194
+ ],
3195
+ "description": "Declarative event name — emits UI:{action} via eventBus on click"
3196
+ },
3197
+ "actionPayload": {
3198
+ "types": [
3199
+ "object"
3200
+ ],
3201
+ "description": "Payload to include with the action event"
3202
+ },
3203
+ "label": {
3204
+ "types": [
3205
+ "string"
3206
+ ],
3207
+ "description": "Button label text (alternative to children for schema-driven rendering)"
3083
3208
  }
3084
3209
  }
3085
3210
  },
@@ -3179,6 +3304,18 @@
3179
3304
  "function"
3180
3305
  ],
3181
3306
  "description": "Click handler"
3307
+ },
3308
+ "action": {
3309
+ "types": [
3310
+ "string"
3311
+ ],
3312
+ "description": "Declarative event name — emits UI:{action} via eventBus on click"
3313
+ },
3314
+ "actionPayload": {
3315
+ "types": [
3316
+ "object"
3317
+ ],
3318
+ "description": "Payload to include with the action event"
3182
3319
  }
3183
3320
  }
3184
3321
  },
@@ -3295,6 +3432,12 @@
3295
3432
  "string"
3296
3433
  ],
3297
3434
  "description": "Additional CSS classes"
3435
+ },
3436
+ "action": {
3437
+ "types": [
3438
+ "string"
3439
+ ],
3440
+ "description": "Declarative event name — emits UI:{action} via eventBus on card click"
3298
3441
  }
3299
3442
  }
3300
3443
  },
@@ -3719,6 +3862,12 @@
3719
3862
  "string"
3720
3863
  ],
3721
3864
  "description": "className prop"
3865
+ },
3866
+ "dismissEvent": {
3867
+ "types": [
3868
+ "string"
3869
+ ],
3870
+ "description": "Declarative dismiss event — emits UI:{dismissEvent} via eventBus when alert is dismissed"
3722
3871
  }
3723
3872
  }
3724
3873
  },
@@ -3922,6 +4071,12 @@
3922
4071
  "string"
3923
4072
  ],
3924
4073
  "description": "Additional CSS classes"
4074
+ },
4075
+ "toggleEvent": {
4076
+ "types": [
4077
+ "string"
4078
+ ],
4079
+ "description": "Declarative toggle event — emits UI:{toggleEvent} with { itemId, isOpen }"
3925
4080
  }
3926
4081
  }
3927
4082
  },
@@ -4266,6 +4421,12 @@
4266
4421
  "boolean"
4267
4422
  ],
4268
4423
  "description": "blur prop"
4424
+ },
4425
+ "action": {
4426
+ "types": [
4427
+ "string"
4428
+ ],
4429
+ "description": "Declarative event name — emits UI:{action} via eventBus on click"
4269
4430
  }
4270
4431
  }
4271
4432
  },
@@ -4367,6 +4528,18 @@
4367
4528
  "number"
4368
4529
  ],
4369
4530
  "description": "Tab index for focus management"
4531
+ },
4532
+ "action": {
4533
+ "types": [
4534
+ "string"
4535
+ ],
4536
+ "description": "Declarative event name — emits UI:{action} via eventBus on click"
4537
+ },
4538
+ "actionPayload": {
4539
+ "types": [
4540
+ "object"
4541
+ ],
4542
+ "description": "Payload to include with the action event"
4370
4543
  }
4371
4544
  }
4372
4545
  },
@@ -4381,6 +4554,13 @@
4381
4554
  ],
4382
4555
  "typicalSize": "small",
4383
4556
  "propsSchema": {
4557
+ "highlightType": {
4558
+ "types": [
4559
+ "highlighttype"
4560
+ ],
4561
+ "description": "Type of highlight (determines color)",
4562
+ "required": true
4563
+ },
4384
4564
  "isActive": {
4385
4565
  "types": [
4386
4566
  "boolean"
@@ -4424,12 +4604,17 @@
4424
4604
  "description": "Highlighted text content",
4425
4605
  "required": true
4426
4606
  },
4427
- "highlightType": {
4607
+ "action": {
4428
4608
  "types": [
4429
- "highlighttype"
4609
+ "string"
4430
4610
  ],
4431
- "description": "Type of highlight (determines color)",
4432
- "required": true
4611
+ "description": "Declarative event name emits UI:{action} via eventBus on click"
4612
+ },
4613
+ "hoverEvent": {
4614
+ "types": [
4615
+ "string"
4616
+ ],
4617
+ "description": "Declarative hover event — emits UI:{hoverEvent} with { hovered: true/false }"
4433
4618
  }
4434
4619
  }
4435
4620
  },
@@ -4612,6 +4797,18 @@
4612
4797
  ],
4613
4798
  "description": "Called when button is released"
4614
4799
  },
4800
+ "pressEvent": {
4801
+ "types": [
4802
+ "string"
4803
+ ],
4804
+ "description": "Declarative event name emitted on press via useEventBus"
4805
+ },
4806
+ "releaseEvent": {
4807
+ "types": [
4808
+ "string"
4809
+ ],
4810
+ "description": "Declarative event name emitted on release via useEventBus"
4811
+ },
4615
4812
  "pressed": {
4616
4813
  "types": [
4617
4814
  "boolean"
@@ -4843,6 +5040,12 @@
4843
5040
  "function"
4844
5041
  ],
4845
5042
  "description": "Optional onClick handler"
5043
+ },
5044
+ "action": {
5045
+ "types": [
5046
+ "string"
5047
+ ],
5048
+ "description": "Declarative event name emitted on click via useEventBus"
4846
5049
  }
4847
5050
  }
4848
5051
  },
@@ -5363,6 +5566,12 @@
5363
5566
  "string"
5364
5567
  ],
5365
5568
  "description": "Additional CSS classes"
5569
+ },
5570
+ "closeEvent": {
5571
+ "types": [
5572
+ "string"
5573
+ ],
5574
+ "description": "Declarative close event — emits UI:{closeEvent} via eventBus when panel should close"
5366
5575
  }
5367
5576
  }
5368
5577
  },
@@ -5444,8 +5653,13 @@
5444
5653
  "types": [
5445
5654
  "function"
5446
5655
  ],
5447
- "description": "Called when a button is pressed/released",
5448
- "required": true
5656
+ "description": "Called when a button is pressed/released"
5657
+ },
5658
+ "actionEvent": {
5659
+ "types": [
5660
+ "string"
5661
+ ],
5662
+ "description": "Declarative event name emitted on action via useEventBus"
5449
5663
  },
5450
5664
  "layout": {
5451
5665
  "types": [
@@ -5487,8 +5701,13 @@
5487
5701
  "types": [
5488
5702
  "function"
5489
5703
  ],
5490
- "description": "Called when a direction is pressed/released",
5491
- "required": true
5704
+ "description": "Called when a direction is pressed/released"
5705
+ },
5706
+ "directionEvent": {
5707
+ "types": [
5708
+ "string"
5709
+ ],
5710
+ "description": "Declarative event name emitted on direction press/release via useEventBus"
5492
5711
  },
5493
5712
  "size": {
5494
5713
  "types": [
@@ -8322,6 +8541,12 @@
8322
8541
  ],
8323
8542
  "description": "Callback when the effect animation completes"
8324
8543
  },
8544
+ "completeEvent": {
8545
+ "types": [
8546
+ "string"
8547
+ ],
8548
+ "description": "Declarative event: emits UI:{completeEvent} when the effect animation completes"
8549
+ },
8325
8550
  "className": {
8326
8551
  "types": [
8327
8552
  "string"
@@ -8473,6 +8698,30 @@
8473
8698
  ],
8474
8699
  "description": "Tile leave handler"
8475
8700
  },
8701
+ "tileClickEvent": {
8702
+ "types": [
8703
+ "string"
8704
+ ],
8705
+ "description": "--- Declarative event props ---"
8706
+ },
8707
+ "unitClickEvent": {
8708
+ "types": [
8709
+ "string"
8710
+ ],
8711
+ "description": "Declarative event: emits UI:{unitClickEvent} with { unitId } on unit click"
8712
+ },
8713
+ "tileHoverEvent": {
8714
+ "types": [
8715
+ "string"
8716
+ ],
8717
+ "description": "Declarative event: emits UI:{tileHoverEvent} with { x, y } on tile hover"
8718
+ },
8719
+ "tileLeaveEvent": {
8720
+ "types": [
8721
+ "string"
8722
+ ],
8723
+ "description": "Declarative event: emits UI:{tileLeaveEvent} with {} on tile leave"
8724
+ },
8476
8725
  "scale": {
8477
8726
  "types": [
8478
8727
  "number"