@almadar/core 10.89.0 → 10.90.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.
Files changed (36) hide show
  1. package/dist/builders.d.ts +3 -3
  2. package/dist/builders.js +9 -2
  3. package/dist/builders.js.map +1 -1
  4. package/dist/{effect-CdLBg9zL.d.ts → effect-7jQQxiIt.d.ts} +58 -42
  5. package/dist/{entityAccess-BmZHpQUv.d.ts → entityAccess-CpHfCQA3.d.ts} +1 -1
  6. package/dist/factory/index.d.ts +4 -4
  7. package/dist/factory/index.js +467 -9
  8. package/dist/factory/index.js.map +1 -1
  9. package/dist/factory-runtime/index.d.ts +3 -3
  10. package/dist/factory-runtime/index.js +9 -2
  11. package/dist/factory-runtime/index.js.map +1 -1
  12. package/dist/i18n/index.js +6 -0
  13. package/dist/i18n/index.js.map +1 -1
  14. package/dist/{index-CV_iM5Cm.d.ts → index-BresfHJy.d.ts} +63 -6
  15. package/dist/index.d.ts +34 -12
  16. package/dist/index.js +582 -17
  17. package/dist/index.js.map +1 -1
  18. package/dist/mock/index.d.ts +54 -5
  19. package/dist/mock/index.js +33 -3
  20. package/dist/mock/index.js.map +1 -1
  21. package/dist/patterns/component-mapping.json +6 -1
  22. package/dist/patterns/event-contracts.json +1 -1
  23. package/dist/patterns/index.d.ts +1160 -14
  24. package/dist/patterns/index.js +545 -12
  25. package/dist/patterns/index.js.map +1 -1
  26. package/dist/patterns/integrators-registry.json +72 -1
  27. package/dist/patterns/patterns-registry.json +461 -8
  28. package/dist/patterns/registry.json +461 -8
  29. package/dist/patterns/services-registry.json +150 -64
  30. package/dist/{schema-DYC_RnBX.d.ts → schema-C52juBr8.d.ts} +495 -323
  31. package/dist/{trait-DmWdtKlP.d.ts → trait-CFiL1YUN.d.ts} +98 -55
  32. package/dist/types/index.d.ts +5 -5
  33. package/dist/types/index.js +11 -6
  34. package/dist/types/index.js.map +1 -1
  35. package/dist/{types-DdK77hq2.d.ts → types-BgC8ETnl.d.ts} +2 -2
  36. package/package.json +1 -1
@@ -3,7 +3,7 @@ import { z } from 'zod';
3
3
  // src/patterns/patterns-registry.json
4
4
  var patterns_registry_default = {
5
5
  version: "1.0.0",
6
- exportedAt: "2026-09-08T23:56:00.442Z",
6
+ exportedAt: "2026-09-10T08:51:20.514Z",
7
7
  patterns: {
8
8
  "entity-table": {
9
9
  type: "entity-table",
@@ -8467,7 +8467,9 @@ var patterns_registry_default = {
8467
8467
  "function",
8468
8468
  "string"
8469
8469
  ],
8470
- description: "Callback or declarative event key when clear button is clicked"
8470
+ description: "Callback or declarative event key when clear button is clicked",
8471
+ kind: "event-ref",
8472
+ emitPayloadSchema: []
8471
8473
  },
8472
8474
  options: {
8473
8475
  types: [
@@ -8508,7 +8510,22 @@ var patterns_registry_default = {
8508
8510
  "function",
8509
8511
  "string"
8510
8512
  ],
8511
- description: "onChange handler or declarative event key for trait dispatch"
8513
+ description: "onChange handler or declarative event key for trait dispatch",
8514
+ kind: "event-ref",
8515
+ emitPayloadSchema: [
8516
+ {
8517
+ name: "value",
8518
+ type: "string",
8519
+ required: true,
8520
+ typeWhen: [
8521
+ {
8522
+ knob: "inputType",
8523
+ equals: "number",
8524
+ type: "number"
8525
+ }
8526
+ ]
8527
+ }
8528
+ ]
8512
8529
  }
8513
8530
  }
8514
8531
  },
@@ -8561,7 +8578,15 @@ var patterns_registry_default = {
8561
8578
  "function",
8562
8579
  "string"
8563
8580
  ],
8564
- description: "onChange handler or declarative event key for trait dispatch"
8581
+ description: "onChange handler or declarative event key for trait dispatch",
8582
+ kind: "event-ref",
8583
+ emitPayloadSchema: [
8584
+ {
8585
+ name: "value",
8586
+ type: "string",
8587
+ required: true
8588
+ }
8589
+ ]
8565
8590
  }
8566
8591
  }
8567
8592
  },
@@ -8731,7 +8756,26 @@ var patterns_registry_default = {
8731
8756
  "function",
8732
8757
  "string"
8733
8758
  ],
8734
- description: "onChange handler (native ChangeEvent) or declarative event key for trait dispatch"
8759
+ description: "onChange handler (native ChangeEvent) or declarative event key for trait dispatch",
8760
+ kind: "event-ref",
8761
+ emitPayloadSchema: [
8762
+ {
8763
+ name: "value",
8764
+ type: "string",
8765
+ required: true,
8766
+ schema: {
8767
+ types: [
8768
+ "string",
8769
+ "array"
8770
+ ],
8771
+ items: {
8772
+ types: [
8773
+ "string"
8774
+ ]
8775
+ }
8776
+ }
8777
+ }
8778
+ ]
8735
8779
  },
8736
8780
  onValueChange: {
8737
8781
  types: [
@@ -8784,7 +8828,15 @@ var patterns_registry_default = {
8784
8828
  "function",
8785
8829
  "string"
8786
8830
  ],
8787
- description: "onChange handler or declarative event key for trait dispatch"
8831
+ description: "onChange handler or declarative event key for trait dispatch",
8832
+ kind: "event-ref",
8833
+ emitPayloadSchema: [
8834
+ {
8835
+ name: "checked",
8836
+ type: "boolean",
8837
+ required: true
8838
+ }
8839
+ ]
8788
8840
  }
8789
8841
  }
8790
8842
  },
@@ -11405,7 +11457,9 @@ var patterns_registry_default = {
11405
11457
  "function",
11406
11458
  "string"
11407
11459
  ],
11408
- description: "Callback or declarative event key when clear button is clicked"
11460
+ description: "Callback or declarative event key when clear button is clicked",
11461
+ kind: "event-ref",
11462
+ emitPayloadSchema: []
11409
11463
  },
11410
11464
  options: {
11411
11465
  types: [
@@ -11445,7 +11499,22 @@ var patterns_registry_default = {
11445
11499
  "function",
11446
11500
  "string"
11447
11501
  ],
11448
- description: "onChange handler or declarative event key for trait dispatch"
11502
+ description: "onChange handler or declarative event key for trait dispatch",
11503
+ kind: "event-ref",
11504
+ emitPayloadSchema: [
11505
+ {
11506
+ name: "value",
11507
+ type: "string",
11508
+ required: true,
11509
+ typeWhen: [
11510
+ {
11511
+ knob: "inputType",
11512
+ equals: "number",
11513
+ type: "number"
11514
+ }
11515
+ ]
11516
+ }
11517
+ ]
11449
11518
  },
11450
11519
  leftAddon: {
11451
11520
  types: [
@@ -53728,6 +53797,390 @@ var patterns_registry_default = {
53728
53797
  default: "replace"
53729
53798
  }
53730
53799
  }
53800
+ },
53801
+ "draw-skinned-mesh": {
53802
+ type: "draw-skinned-mesh",
53803
+ category: "game",
53804
+ sourceFile: "components/game/atoms/DrawSkinnedMesh.tsx",
53805
+ tier: "atoms",
53806
+ family: "game",
53807
+ description: "DrawSkinnedMesh component",
53808
+ suggestedFor: [
53809
+ "draw",
53810
+ "skinned",
53811
+ "mesh",
53812
+ "draw skinned mesh"
53813
+ ],
53814
+ typicalSize: "small",
53815
+ propsSchema: {
53816
+ id: {
53817
+ types: [
53818
+ "string"
53819
+ ],
53820
+ description: "Optional source-tagged hit-test handle \u2014 the host indexes the drawable's ScenePos\u2192id so a pointer/raycast at that cell resolves to this id (unit/entity click). No id \u2192 the host emits only the coordinate (tile click)."
53821
+ },
53822
+ type: {
53823
+ types: [
53824
+ "string"
53825
+ ],
53826
+ description: "type prop",
53827
+ required: true,
53828
+ enumValues: [
53829
+ "draw-skinned-mesh"
53830
+ ]
53831
+ },
53832
+ position: {
53833
+ types: [
53834
+ "object"
53835
+ ],
53836
+ description: "Logical scene position; mesh local coords are world units relative to its projected top-left.",
53837
+ required: true,
53838
+ properties: {
53839
+ x: {
53840
+ types: [
53841
+ "number"
53842
+ ]
53843
+ },
53844
+ y: {
53845
+ types: [
53846
+ "number"
53847
+ ]
53848
+ },
53849
+ z: {
53850
+ types: [
53851
+ "number"
53852
+ ]
53853
+ }
53854
+ },
53855
+ propertyRequired: [
53856
+ "x",
53857
+ "y"
53858
+ ],
53859
+ scenePos: true
53860
+ },
53861
+ asset: {
53862
+ types: [
53863
+ "object"
53864
+ ],
53865
+ description: "The texture the mesh UVs cut into.",
53866
+ required: true,
53867
+ properties: {
53868
+ url: {
53869
+ types: [
53870
+ "asset"
53871
+ ]
53872
+ },
53873
+ role: {
53874
+ types: [
53875
+ "string"
53876
+ ]
53877
+ },
53878
+ category: {
53879
+ types: [
53880
+ "string"
53881
+ ]
53882
+ },
53883
+ animations: {
53884
+ types: [
53885
+ "array"
53886
+ ],
53887
+ items: {
53888
+ types: [
53889
+ "string"
53890
+ ]
53891
+ }
53892
+ },
53893
+ style: {
53894
+ types: [
53895
+ "string"
53896
+ ],
53897
+ enumValues: [
53898
+ "pixel",
53899
+ "vector",
53900
+ "hd",
53901
+ "1-bit",
53902
+ "isometric"
53903
+ ]
53904
+ },
53905
+ variant: {
53906
+ types: [
53907
+ "string"
53908
+ ]
53909
+ },
53910
+ dimension: {
53911
+ types: [
53912
+ "string"
53913
+ ],
53914
+ enumValues: [
53915
+ "2d",
53916
+ "3d"
53917
+ ]
53918
+ },
53919
+ aspect: {
53920
+ types: [
53921
+ "string"
53922
+ ],
53923
+ enumValues: [
53924
+ "1:1",
53925
+ "16:9",
53926
+ "5:7",
53927
+ "8:1"
53928
+ ]
53929
+ },
53930
+ atlas: {
53931
+ types: [
53932
+ "asset"
53933
+ ]
53934
+ },
53935
+ sprite: {
53936
+ types: [
53937
+ "string"
53938
+ ]
53939
+ },
53940
+ name: {
53941
+ types: [
53942
+ "string"
53943
+ ]
53944
+ },
53945
+ thumbnailUrl: {
53946
+ types: [
53947
+ "string"
53948
+ ]
53949
+ }
53950
+ },
53951
+ propertyRequired: [
53952
+ "url",
53953
+ "role",
53954
+ "category"
53955
+ ]
53956
+ },
53957
+ mesh: {
53958
+ types: [
53959
+ "object"
53960
+ ],
53961
+ description: "Inline bind mesh; wins over `meshUrl`.",
53962
+ properties: {
53963
+ vertices: {
53964
+ types: [
53965
+ "array"
53966
+ ],
53967
+ items: {
53968
+ types: [
53969
+ "object"
53970
+ ],
53971
+ properties: {
53972
+ x: {
53973
+ types: [
53974
+ "number"
53975
+ ]
53976
+ },
53977
+ y: {
53978
+ types: [
53979
+ "number"
53980
+ ]
53981
+ },
53982
+ u: {
53983
+ types: [
53984
+ "number"
53985
+ ]
53986
+ },
53987
+ v: {
53988
+ types: [
53989
+ "number"
53990
+ ]
53991
+ },
53992
+ weights: {
53993
+ types: [
53994
+ "array"
53995
+ ],
53996
+ items: {
53997
+ types: [
53998
+ "object"
53999
+ ],
54000
+ properties: {
54001
+ bone: {
54002
+ types: [
54003
+ "number"
54004
+ ]
54005
+ },
54006
+ w: {
54007
+ types: [
54008
+ "number"
54009
+ ]
54010
+ }
54011
+ },
54012
+ required: [
54013
+ "bone",
54014
+ "w"
54015
+ ]
54016
+ }
54017
+ }
54018
+ },
54019
+ required: [
54020
+ "x",
54021
+ "y",
54022
+ "u",
54023
+ "v",
54024
+ "weights"
54025
+ ]
54026
+ }
54027
+ },
54028
+ triangles: {
54029
+ types: [
54030
+ "array"
54031
+ ],
54032
+ items: {
54033
+ types: [
54034
+ "array"
54035
+ ],
54036
+ items: {
54037
+ types: [
54038
+ "number"
54039
+ ]
54040
+ }
54041
+ }
54042
+ }
54043
+ },
54044
+ propertyRequired: [
54045
+ "vertices",
54046
+ "triangles"
54047
+ ]
54048
+ },
54049
+ meshUrl: {
54050
+ types: [
54051
+ "string"
54052
+ ],
54053
+ description: "URL of a JSON `SkinMesh` (fetched + cached); used when `mesh` is absent."
54054
+ },
54055
+ bones: {
54056
+ types: [
54057
+ "array"
54058
+ ],
54059
+ description: "The skeleton (bind pose; FK chain via `parent` names).",
54060
+ required: true,
54061
+ items: {
54062
+ types: [
54063
+ "object"
54064
+ ],
54065
+ properties: {
54066
+ name: {
54067
+ types: [
54068
+ "string"
54069
+ ]
54070
+ },
54071
+ parent: {
54072
+ types: [
54073
+ "string"
54074
+ ]
54075
+ },
54076
+ pivot: {
54077
+ types: [
54078
+ "array"
54079
+ ],
54080
+ items: {
54081
+ types: [
54082
+ "number"
54083
+ ]
54084
+ }
54085
+ },
54086
+ tip: {
54087
+ types: [
54088
+ "array"
54089
+ ],
54090
+ items: {
54091
+ types: [
54092
+ "number"
54093
+ ]
54094
+ }
54095
+ }
54096
+ },
54097
+ required: [
54098
+ "name",
54099
+ "parent",
54100
+ "pivot",
54101
+ "tip"
54102
+ ]
54103
+ }
54104
+ },
54105
+ pose: {
54106
+ types: [
54107
+ "object"
54108
+ ],
54109
+ description: "Static pose (bone name \u2192 degrees relative to bind). Overridden by `clip` + `frame`.",
54110
+ mapValue: {
54111
+ types: [
54112
+ "number"
54113
+ ]
54114
+ }
54115
+ },
54116
+ clip: {
54117
+ types: [
54118
+ "object"
54119
+ ],
54120
+ description: "Pose animation clip; with `frame`, pose = `frames[frame % frames.length]`.",
54121
+ properties: {
54122
+ frames: {
54123
+ types: [
54124
+ "array"
54125
+ ],
54126
+ items: {
54127
+ types: [
54128
+ "object"
54129
+ ],
54130
+ mapValue: {
54131
+ types: [
54132
+ "number"
54133
+ ]
54134
+ }
54135
+ }
54136
+ }
54137
+ },
54138
+ propertyRequired: [
54139
+ "frames"
54140
+ ]
54141
+ },
54142
+ frame: {
54143
+ types: [
54144
+ "number"
54145
+ ],
54146
+ description: "Clip frame counter (host-driven paint clock frame)."
54147
+ },
54148
+ opacity: {
54149
+ types: [
54150
+ "number"
54151
+ ],
54152
+ description: "0..1 opacity."
54153
+ },
54154
+ weightsOverlay: {
54155
+ types: [
54156
+ "boolean"
54157
+ ],
54158
+ description: "Paint per-triangle dominant-bone colors instead of the texture (rig inspection)."
54159
+ },
54160
+ ghost: {
54161
+ types: [
54162
+ "object"
54163
+ ],
54164
+ description: "Onion skin: render the mesh at this clip frame underneath, at this opacity.",
54165
+ properties: {
54166
+ frame: {
54167
+ types: [
54168
+ "number"
54169
+ ]
54170
+ },
54171
+ opacity: {
54172
+ types: [
54173
+ "number"
54174
+ ]
54175
+ }
54176
+ },
54177
+ propertyRequired: [
54178
+ "frame",
54179
+ "opacity"
54180
+ ]
54181
+ }
54182
+ },
54183
+ drawable: true
53731
54184
  }
53732
54185
  },
53733
54186
  categories: [
@@ -53753,7 +54206,7 @@ var patterns_registry_default = {
53753
54206
  // src/patterns/integrators-registry.json
53754
54207
  var integrators_registry_default = {
53755
54208
  version: "1.0.0",
53756
- exportedAt: "2026-09-07T01:58:57.916Z",
54209
+ exportedAt: "2026-09-10T08:46:50.227Z",
53757
54210
  integrators: {
53758
54211
  github: {
53759
54212
  name: "github",
@@ -57336,6 +57789,77 @@ var integrators_registry_default = {
57336
57789
  }
57337
57790
  }
57338
57791
  ]
57792
+ },
57793
+ rigger: {
57794
+ name: "rigger",
57795
+ description: "Local rigger service (FastAPI) \u2014 mesh rigging build + render",
57796
+ category: "media",
57797
+ actions: [
57798
+ {
57799
+ name: "health",
57800
+ description: "Liveness probe of the local rigger service.",
57801
+ params: [],
57802
+ responseShape: {
57803
+ ok: "boolean"
57804
+ }
57805
+ },
57806
+ {
57807
+ name: "buildMesh",
57808
+ description: "Build a rigged mesh bundle from a source image via the local rigger service.",
57809
+ params: [
57810
+ {
57811
+ name: "imagePath",
57812
+ type: "string",
57813
+ required: true,
57814
+ description: "Path to the source image."
57815
+ },
57816
+ {
57817
+ name: "rig",
57818
+ type: "string",
57819
+ required: true,
57820
+ description: "Rig type to build (e.g. 'humanoid', 'quadruped')."
57821
+ }
57822
+ ],
57823
+ responseShape: {
57824
+ bundlePath: "string",
57825
+ boneCount: "number",
57826
+ vertexCount: "number",
57827
+ triangleCount: "number",
57828
+ clips: "string[]"
57829
+ }
57830
+ },
57831
+ {
57832
+ name: "render",
57833
+ description: "Render a rigged mesh bundle to output files via the local rigger service.",
57834
+ params: [
57835
+ {
57836
+ name: "imagePath",
57837
+ type: "string",
57838
+ required: true,
57839
+ description: "Path to the source image."
57840
+ },
57841
+ {
57842
+ name: "rig",
57843
+ type: "string",
57844
+ required: true,
57845
+ description: "Rig type."
57846
+ },
57847
+ {
57848
+ name: "preset",
57849
+ type: "string",
57850
+ required: true,
57851
+ description: "Render preset name."
57852
+ },
57853
+ {
57854
+ name: "outDir",
57855
+ type: "string",
57856
+ required: true,
57857
+ description: "Output directory for rendered files."
57858
+ }
57859
+ ],
57860
+ responseShape: {}
57861
+ }
57862
+ ]
57339
57863
  }
57340
57864
  },
57341
57865
  categories: [
@@ -57355,7 +57879,7 @@ var integrators_registry_default = {
57355
57879
  // src/patterns/component-mapping.json
57356
57880
  var component_mapping_default = {
57357
57881
  version: "1.0.0",
57358
- exportedAt: "2026-09-08T23:56:00.442Z",
57882
+ exportedAt: "2026-09-10T08:51:20.514Z",
57359
57883
  mappings: {
57360
57884
  "page-header": {
57361
57885
  component: "PageHeader",
@@ -58674,6 +59198,11 @@ var component_mapping_default = {
58674
59198
  importPath: "@/components/game/atoms/DrawSprite",
58675
59199
  category: "game"
58676
59200
  },
59201
+ "draw-skinned-mesh": {
59202
+ component: "DrawSkinnedMesh",
59203
+ importPath: "@/components/game/atoms/DrawSkinnedMesh",
59204
+ category: "game"
59205
+ },
58677
59206
  "draw-text": {
58678
59207
  component: "DrawText",
58679
59208
  importPath: "@/components/game/atoms/DrawText",
@@ -58800,7 +59329,7 @@ var component_mapping_default = {
58800
59329
  // src/patterns/event-contracts.json
58801
59330
  var event_contracts_default = {
58802
59331
  version: "1.0.0",
58803
- exportedAt: "2026-09-08T23:56:00.442Z",
59332
+ exportedAt: "2026-09-10T08:51:20.514Z",
58804
59333
  contracts: {
58805
59334
  form: {
58806
59335
  emits: [
@@ -60067,6 +60596,7 @@ var PATTERN_TYPES = [
60067
60596
  "draw-mesh",
60068
60597
  "draw-shape",
60069
60598
  "draw-shape-layer",
60599
+ "draw-skinned-mesh",
60070
60600
  "draw-sprite",
60071
60601
  "draw-sprite-layer",
60072
60602
  "draw-text",
@@ -60283,6 +60813,9 @@ function isMainSlotRenderUi(effect) {
60283
60813
  return Array.isArray(effect) && effect[0] === "render-ui" && effect[1] === "main";
60284
60814
  }
60285
60815
 
60816
+ // src/patterns/self-overlay.ts
60817
+ var SELF_OVERLAY_PATTERN_TYPES = /* @__PURE__ */ new Set(["modal", "confirm-dialog"]);
60818
+
60286
60819
  // src/patterns/helpers/prompt-helpers.ts
60287
60820
  function getPatternsGroupedByCategory() {
60288
60821
  const patterns = patterns_registry_default.patterns || {};
@@ -60780,6 +61313,6 @@ function propHostsDrawables(schema) {
60780
61313
  return false;
60781
61314
  }
60782
61315
 
60783
- export { COMPONENT_MAPPING, EVENT_CONTRACTS, INTEGRATORS_REGISTRY, PATTERN_REGISTRY, PATTERN_TYPES, buildRecommendationContext, collectRenderUiPatternTypes, component_mapping_default as componentMapping, event_contracts_default as eventContracts, eventKeyPropsOf, eventListPropsOf, findCompatiblePatterns, formatRecommendationsForPrompt, generatePatternDescription, getAllPatternTypes, getComponentForPattern, getEmittedEvents, getEntityCardinality, getOrbAllowedPatterns, getOrbAllowedPatternsCompact, getOrbAllowedPatternsFiltered, getOrbAllowedPatternsSlim, getPatternActionsRef, getPatternDefinition, getPatternFieldsContract, getPatternMetadata, getPatternPropsCompact, getPatternsGroupedByCategory, integrators_registry_default as integratorsRegistry, isContentBodyPattern, isContentBodyPatternType, isDrawHostPattern, isDrawablePattern, isEntityAwarePattern, isMainSlotRenderUi, isValidPatternType, isValueInputPattern, patterns_registry_default as patternsRegistry, recommendPatterns, registry, renderUiPatternTypesOf };
61316
+ export { COMPONENT_MAPPING, EVENT_CONTRACTS, INTEGRATORS_REGISTRY, PATTERN_REGISTRY, PATTERN_TYPES, SELF_OVERLAY_PATTERN_TYPES, buildRecommendationContext, collectRenderUiPatternTypes, component_mapping_default as componentMapping, event_contracts_default as eventContracts, eventKeyPropsOf, eventListPropsOf, findCompatiblePatterns, formatRecommendationsForPrompt, generatePatternDescription, getAllPatternTypes, getComponentForPattern, getEmittedEvents, getEntityCardinality, getOrbAllowedPatterns, getOrbAllowedPatternsCompact, getOrbAllowedPatternsFiltered, getOrbAllowedPatternsSlim, getPatternActionsRef, getPatternDefinition, getPatternFieldsContract, getPatternMetadata, getPatternPropsCompact, getPatternsGroupedByCategory, integrators_registry_default as integratorsRegistry, isContentBodyPattern, isContentBodyPatternType, isDrawHostPattern, isDrawablePattern, isEntityAwarePattern, isMainSlotRenderUi, isValidPatternType, isValueInputPattern, patterns_registry_default as patternsRegistry, recommendPatterns, registry, renderUiPatternTypesOf };
60784
61317
  //# sourceMappingURL=index.js.map
60785
61318
  //# sourceMappingURL=index.js.map