@almadar/ui 6.58.0 → 6.61.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 (94) hide show
  1. package/dist/BehaviorValueFrame-3ORZHPWQ.css +1252 -0
  2. package/dist/BehaviorValueFrame-QTD7BWOI.js +18 -0
  3. package/dist/{Canvas3DHost-BTvRPfsr.d.ts → Canvas3DHost-CNjANoaU.d.ts} +1 -1
  4. package/dist/{GameAudioProvider-kXbonWTv.d.ts → GameAudioProvider-Dv_L-PHt.d.ts} +1 -1
  5. package/dist/TraitValueFrame-2WMYJOA5.css +1252 -0
  6. package/dist/TraitValueFrame-WOXNLLMM.js +17 -0
  7. package/dist/Typography-BY4A2NBY.js +5 -0
  8. package/dist/{UISlotRenderer-N5DFYE6K.js → UISlotRenderer-EEOXSJCI.js} +10 -8
  9. package/dist/avl/index.cjs +31960 -27831
  10. package/dist/avl/index.d.ts +36 -13
  11. package/dist/avl/index.js +331 -6147
  12. package/dist/{avl-3d-context-BpBKZIbc.d.ts → avl-3d-context-Dxun3-ri.d.ts} +2 -0
  13. package/dist/{chunk-I2ZNE5TD.js → chunk-6PV4LASE.js} +9495 -639
  14. package/dist/{chunk-723MJUU3.js → chunk-6ZCU3BQN.js} +1 -1
  15. package/dist/{chunk-GZGDBS4S.js → chunk-7NIU5GDC.js} +2 -2
  16. package/dist/{chunk-YYYHH5BA.js → chunk-CB64IOYD.js} +0 -4
  17. package/dist/{chunk-MZIDOJMD.js → chunk-EIIQGOZW.js} +2 -1
  18. package/dist/chunk-F7NZ3KZQ.js +434 -0
  19. package/dist/{chunk-LZRW6GXG.js → chunk-FYX64CDL.js} +0 -2
  20. package/dist/{chunk-4ZGXIW3B.js → chunk-KZRAMPM6.js} +1 -1
  21. package/dist/{chunk-VHTJRS2N.js → chunk-L3MTZ3RH.js} +7 -0
  22. package/dist/chunk-LUREMDI3.js +49 -0
  23. package/dist/{chunk-HA7CJWQX.js → chunk-MGN6B6OQ.js} +1477 -1177
  24. package/dist/{chunk-Q47ZN2DW.js → chunk-N23SVGTH.js} +83 -1
  25. package/dist/{chunk-KJGVLXEN.js → chunk-N4IJS5DD.js} +50 -116
  26. package/dist/{chunk-I5QOYW2Z.js → chunk-UTSDPJUP.js} +205 -2
  27. package/dist/{chunk-V3FGTQUE.js → chunk-ZR45FGW3.js} +7 -1
  28. package/dist/{cn-DIql5232.d.ts → cn-CDIhHCUC.d.ts} +40 -16
  29. package/dist/components/index.cjs +14455 -4099
  30. package/dist/components/index.d.ts +165 -177
  31. package/dist/components/index.js +14 -15
  32. package/dist/context/index.cjs +16 -1
  33. package/dist/context/index.js +4 -2
  34. package/dist/hooks/index.cjs +79 -6
  35. package/dist/hooks/index.d.ts +43 -2
  36. package/dist/hooks/index.js +6 -7
  37. package/dist/lib/drawable/three/index.cjs +350 -26
  38. package/dist/lib/drawable/three/index.d.ts +5 -5
  39. package/dist/lib/drawable/three/index.js +28 -7
  40. package/dist/lib/index.cjs +90 -4
  41. package/dist/lib/index.d.ts +3 -3
  42. package/dist/lib/index.js +74 -6
  43. package/dist/locales/index.cjs +0 -6
  44. package/dist/locales/index.js +2 -2
  45. package/dist/{paintDispatch-BN8Vbzgs.d.ts → paintDispatch-Cp1_S93j.d.ts} +30 -2
  46. package/dist/providers/index.cjs +13853 -1075
  47. package/dist/providers/index.d.ts +38 -6
  48. package/dist/providers/index.js +40 -30
  49. package/dist/runtime/index.cjs +28369 -18287
  50. package/dist/runtime/index.d.ts +65 -3
  51. package/dist/runtime/index.js +13 -379
  52. package/dist/ssr/index.cjs +508 -133
  53. package/dist/ssr/index.d.cts +56 -4
  54. package/dist/ssr/index.d.ts +56 -4
  55. package/dist/ssr/index.js +446 -71
  56. package/dist/{verificationRegistry-CK76GUfH.d.ts → verificationRegistry-B5aGl7WF.d.ts} +3 -2
  57. package/locales/ar.json +0 -2
  58. package/locales/en.json +0 -2
  59. package/locales/sl.json +0 -2
  60. package/package.json +7 -7
  61. package/tailwind-preset.cjs +78 -8
  62. package/themes/_contract.md +6 -0
  63. package/themes/_fonts.css +4 -4
  64. package/themes/_foundation.css +11 -0
  65. package/themes/_presets.css +2 -0
  66. package/themes/almadar-website.css +10 -0
  67. package/themes/almadar.css +10 -0
  68. package/themes/atelier.css +10 -0
  69. package/themes/bauhaus.css +10 -0
  70. package/themes/bloomberg-dense.css +10 -0
  71. package/themes/clay.css +10 -0
  72. package/themes/corporate.css +10 -0
  73. package/themes/gazette.css +10 -0
  74. package/themes/glass.css +10 -0
  75. package/themes/kflow.css +5 -0
  76. package/themes/kiosk.css +10 -0
  77. package/themes/linear-clean.css +10 -0
  78. package/themes/material.css +10 -0
  79. package/themes/minimalist.css +10 -0
  80. package/themes/nata.css +304 -0
  81. package/themes/neon.css +10 -0
  82. package/themes/notion-editorial.css +10 -0
  83. package/themes/orb.css +10 -0
  84. package/themes/prism.css +10 -0
  85. package/themes/rawi.css +304 -0
  86. package/themes/retro.css +10 -0
  87. package/themes/risograph.css +10 -0
  88. package/themes/scandi.css +10 -0
  89. package/themes/solarpunk.css +10 -0
  90. package/themes/terminal.css +138 -128
  91. package/dist/Typography-LZTP72Y4.js +0 -5
  92. package/dist/chunk-D2E44ODB.js +0 -350
  93. package/dist/chunk-HB3D3HUJ.js +0 -2265
  94. package/dist/chunk-N7JIG57B.js +0 -138
@@ -827,6 +827,7 @@ function bindEventBus(eventBus) {
827
827
  eventLog.push({
828
828
  type: event.type,
829
829
  payload: event.payload,
830
+ ...event.source === void 0 ? {} : { source: event.source },
830
831
  timestamp: Date.now()
831
832
  });
832
833
  if (eventLog.length > MAX_EVENT_LOG) {
@@ -842,6 +843,18 @@ function bindEventBus(eventBus) {
842
843
  }
843
844
  }
844
845
  }
846
+ function bindConfigApplier(applyConfig) {
847
+ if (typeof window === "undefined") return () => {
848
+ };
849
+ exposeOnWindow();
850
+ const bridge = window.__orbitalVerification;
851
+ if (!bridge) return () => {
852
+ };
853
+ bridge.applyConfig = applyConfig;
854
+ return () => {
855
+ if (bridge.applyConfig === applyConfig) delete bridge.applyConfig;
856
+ };
857
+ }
845
858
  function bindTraitStateGetter(getter) {
846
859
  if (typeof window === "undefined") return;
847
860
  exposeOnWindow();
@@ -1031,7 +1044,6 @@ var en_default = {
1031
1044
  "aria.upvote": "Upvote",
1032
1045
  "aria.downvote": "Downvote",
1033
1046
  "aria.qrScanner": "QR scanner",
1034
- "aria.mockScanDev": "Mock scan (dev)",
1035
1047
  "aria.openMenu": "Open menu",
1036
1048
  "aria.closeMenu": "Close menu",
1037
1049
  "aria.openSidebar": "Open sidebar",
@@ -1229,7 +1241,6 @@ var en_default = {
1229
1241
  "qrScanner.pauseScanning": "Pause scanning",
1230
1242
  "qrScanner.switchToFrontCamera": "Switch to front camera",
1231
1243
  "qrScanner.switchToRearCamera": "Switch to rear camera",
1232
- "qrScanner.mockScan": "Mock Scan",
1233
1244
  "docSearch.placeholder": "Search documentation...",
1234
1245
  "stateMachine.loading": "Loading state machine\u2026",
1235
1246
  "stateMachine.noStateMachine": "No state machine to visualize",
@@ -3282,7 +3293,13 @@ var SURFACE_VARS = [
3282
3293
  { cssVar: "--surface-card-image", key: "cardImage" },
3283
3294
  { cssVar: "--surface-page-image", key: "pageImage" },
3284
3295
  { cssVar: "--surface-page-image-size", key: "pageImageSize" },
3285
- { cssVar: "--surface-diagram", key: "diagram" }
3296
+ { cssVar: "--surface-diagram", key: "diagram" },
3297
+ { cssVar: "--surface-edge-mask", key: "edgeMask" },
3298
+ { cssVar: "--surface-edge-height", key: "edgeHeight" },
3299
+ { cssVar: "--surface-texture-mask", key: "textureMask" },
3300
+ { cssVar: "--surface-texture-size", key: "textureSize" },
3301
+ { cssVar: "--surface-accent-image", key: "accentImage" },
3302
+ { cssVar: "--surface-scrim", key: "scrim" }
3286
3303
  ];
3287
3304
  var DIAGRAM_VARS = [
3288
3305
  { cssVar: "--diagram-stroke-thin", key: "strokeThin" },
@@ -3519,6 +3536,7 @@ var ICON_NATIVE_MAP = {
3519
3536
  "close": { sfSymbol: "xmark", materialSymbol: "close" },
3520
3537
  "check": { sfSymbol: "checkmark", materialSymbol: "check" },
3521
3538
  "check-circle": { sfSymbol: "checkmark.circle", materialSymbol: "check_circle" },
3539
+ "circle-check": { sfSymbol: "checkmark.circle", materialSymbol: "check_circle" },
3522
3540
  "check-square": { sfSymbol: "checkmark.square", materialSymbol: "check_box" },
3523
3541
  "x-circle": { sfSymbol: "xmark.circle", materialSymbol: "cancel" },
3524
3542
  "trash": { sfSymbol: "trash", materialSymbol: "delete" },
@@ -3567,6 +3585,9 @@ var ICON_NATIVE_MAP = {
3567
3585
  "file-text": { sfSymbol: "doc.text", materialSymbol: "description" },
3568
3586
  "file-plus": { sfSymbol: "doc.badge.plus", materialSymbol: "note_add" },
3569
3587
  "file-minus": { sfSymbol: "doc.badge.minus", materialSymbol: "note" },
3588
+ "file-code": { sfSymbol: "chevron.left.forwardslash.chevron.right", materialSymbol: "code" },
3589
+ "file-json": { sfSymbol: "curlybraces", materialSymbol: "data_object" },
3590
+ "file-warning": { sfSymbol: "exclamationmark.triangle", materialSymbol: "warning" },
3570
3591
  "folder": { sfSymbol: "folder", materialSymbol: "folder" },
3571
3592
  "folder-open": { sfSymbol: "folder", materialSymbol: "folder_open" },
3572
3593
  "paperclip": { sfSymbol: "paperclip", materialSymbol: "attach_file" },
@@ -3593,6 +3614,7 @@ var ICON_NATIVE_MAP = {
3593
3614
  "alert-triangle": { sfSymbol: "exclamationmark.triangle", materialSymbol: "warning" },
3594
3615
  "help-circle": { sfSymbol: "questionmark.circle", materialSymbol: "help" },
3595
3616
  "star": { sfSymbol: "star", materialSymbol: "star" },
3617
+ "star-half": { sfSymbol: "star.leadinghalf.filled", materialSymbol: "star_half" },
3596
3618
  "heart": { sfSymbol: "heart", materialSymbol: "favorite" },
3597
3619
  "flag": { sfSymbol: "flag", materialSymbol: "flag" },
3598
3620
  "tag": { sfSymbol: "tag", materialSymbol: "label" },
@@ -3624,6 +3646,10 @@ var ICON_NATIVE_MAP = {
3624
3646
  "italic": { sfSymbol: "italic", materialSymbol: "format_italic" },
3625
3647
  "underline": { sfSymbol: "underline", materialSymbol: "format_underlined" },
3626
3648
  "align-left": { sfSymbol: "text.alignleft", materialSymbol: "format_align_left" },
3649
+ "wrap-text": { sfSymbol: "text.append", materialSymbol: "wrap_text" },
3650
+ "columns": { sfSymbol: "rectangle.split.2x1", materialSymbol: "view_column" },
3651
+ "git-commit": { sfSymbol: "circle.and.line.horizontal", materialSymbol: "commit" },
3652
+ "diamond": { sfSymbol: "diamond", materialSymbol: "diamond" },
3627
3653
  "align-center": { sfSymbol: "text.aligncenter", materialSymbol: "format_align_center" },
3628
3654
  "align-right": { sfSymbol: "text.alignright", materialSymbol: "format_align_right" },
3629
3655
  "indent": { sfSymbol: "increase.indent", materialSymbol: "format_indent_increase" },
@@ -3637,7 +3663,66 @@ var ICON_NATIVE_MAP = {
3637
3663
  "moon": { sfSymbol: "moon", materialSymbol: "dark_mode" },
3638
3664
  "sun": { sfSymbol: "sun.max", materialSymbol: "light_mode" },
3639
3665
  "square": { sfSymbol: "square", materialSymbol: "crop_square" },
3640
- "circle": { sfSymbol: "circle", materialSymbol: "circle" }
3666
+ "circle": { sfSymbol: "circle", materialSymbol: "circle" },
3667
+ // --- behavior-registry vocabulary ---
3668
+ "book-open": { sfSymbol: "book", materialSymbol: "menu_book" },
3669
+ "calendar-clock": { sfSymbol: "calendar.badge.clock", materialSymbol: "event_note" },
3670
+ "circle-dot": { sfSymbol: "circle.inset.filled", materialSymbol: "radio_button_checked" },
3671
+ "dollar-sign": { sfSymbol: "dollarsign", materialSymbol: "attach_money" },
3672
+ "history": { sfSymbol: "clock.arrow.circlepath", materialSymbol: "history" },
3673
+ "image-plus": { sfSymbol: "photo.badge.plus", materialSymbol: "add_photo_alternate" },
3674
+ "layers": { sfSymbol: "square.3.layers.3d", materialSymbol: "layers" },
3675
+ "layout-dashboard": { sfSymbol: "rectangle.3.group", materialSymbol: "dashboard" },
3676
+ "message-square-plus": { sfSymbol: "plus.bubble", materialSymbol: "add_comment" },
3677
+ "messages-square": { sfSymbol: "bubble.left.and.bubble.right", materialSymbol: "forum" },
3678
+ "mouse-pointer-click": { sfSymbol: "cursorarrow.click", materialSymbol: "touch_app" },
3679
+ "package": { sfSymbol: "shippingbox", materialSymbol: "inventory_2" },
3680
+ // SF Symbols has no search-with-x glyph; `magnifyingglass` is the nearest.
3681
+ "search-x": { sfSymbol: "magnifyingglass", materialSymbol: "search_off" },
3682
+ "shield": { sfSymbol: "shield", materialSymbol: "shield" },
3683
+ "sparkles": { sfSymbol: "sparkles", materialSymbol: "auto_awesome" },
3684
+ "step-forward": { sfSymbol: "forward.end.fill", materialSymbol: "skip_next" },
3685
+ "thumbs-up": { sfSymbol: "hand.thumbsup", materialSymbol: "thumb_up" },
3686
+ "trending-down": { sfSymbol: "chart.line.downtrend.xyaxis", materialSymbol: "trending_down" },
3687
+ "trending-up": { sfSymbol: "chart.line.uptrend.xyaxis", materialSymbol: "trending_up" },
3688
+ "user-check": { sfSymbol: "person.crop.circle.badge.checkmark", materialSymbol: "how_to_reg" },
3689
+ // SF Symbols has no unlink glyph; `link` is the nearest (Material has `link_off`).
3690
+ "arrow-right-circle": { sfSymbol: "arrow.right.circle", materialSymbol: "arrow_circle_right" },
3691
+ "atom": { sfSymbol: "atom", materialSymbol: "science" },
3692
+ "ban": { sfSymbol: "nosign", materialSymbol: "block" },
3693
+ "bookmark-plus": { sfSymbol: "bookmark", materialSymbol: "bookmark_add" },
3694
+ "briefcase": { sfSymbol: "briefcase", materialSymbol: "work" },
3695
+ "building-2": { sfSymbol: "building.2", materialSymbol: "business" },
3696
+ "clipboard-check": { sfSymbol: "checklist", materialSymbol: "assignment_turned_in" },
3697
+ "dices": { sfSymbol: "dice", materialSymbol: "casino" },
3698
+ "dna": { sfSymbol: "cross.vial", materialSymbol: "biotech" },
3699
+ "door-open": { sfSymbol: "door.left.hand.open", materialSymbol: "meeting_room" },
3700
+ "feather": { sfSymbol: "pencil.line", materialSymbol: "draw" },
3701
+ "file-signature": { sfSymbol: "signature", materialSymbol: "history_edu" },
3702
+ "file-up": { sfSymbol: "arrow.up.doc", materialSymbol: "upload_file" },
3703
+ "flame": { sfSymbol: "flame", materialSymbol: "local_fire_department" },
3704
+ "flask-conical": { sfSymbol: "flask", materialSymbol: "science" },
3705
+ "gift": { sfSymbol: "gift", materialSymbol: "card_giftcard" },
3706
+ "handshake": { sfSymbol: "person.2", materialSymbol: "handshake" },
3707
+ "key-round": { sfSymbol: "key", materialSymbol: "vpn_key" },
3708
+ "languages": { sfSymbol: "globe", materialSymbol: "translate" },
3709
+ "leaf": { sfSymbol: "leaf", materialSymbol: "eco" },
3710
+ "lightbulb": { sfSymbol: "lightbulb", materialSymbol: "lightbulb" },
3711
+ "mail-plus": { sfSymbol: "envelope.badge", materialSymbol: "forward_to_inbox" },
3712
+ "maximize-2": { sfSymbol: "arrow.up.left.and.arrow.down.right", materialSymbol: "open_in_full" },
3713
+ "network": { sfSymbol: "network", materialSymbol: "hub" },
3714
+ "presentation": { sfSymbol: "play.rectangle", materialSymbol: "slideshow" },
3715
+ "repeat": { sfSymbol: "repeat", materialSymbol: "repeat" },
3716
+ "route": { sfSymbol: "point.topleft.down.to.point.bottomright.curvepath", materialSymbol: "route" },
3717
+ "ruler": { sfSymbol: "ruler", materialSymbol: "straighten" },
3718
+ "scale": { sfSymbol: "scalemass", materialSymbol: "balance" },
3719
+ "scroll": { sfSymbol: "scroll", materialSymbol: "receipt_long" },
3720
+ "shield-check": { sfSymbol: "checkmark.shield", materialSymbol: "verified_user" },
3721
+ "sigma": { sfSymbol: "sum", materialSymbol: "functions" },
3722
+ "sticky-note": { sfSymbol: "note.text", materialSymbol: "sticky_note_2" },
3723
+ "store": { sfSymbol: "storefront", materialSymbol: "store" },
3724
+ "target": { sfSymbol: "scope", materialSymbol: "gps_fixed" },
3725
+ "unlink": { sfSymbol: "link", materialSymbol: "link_off" }
3641
3726
  };
3642
3727
  var ICON_ALIASES = [
3643
3728
  "close",
@@ -3830,6 +3915,7 @@ exports.applyOperator = applyOperator;
3830
3915
  exports.arrowheadPath = arrowheadPath;
3831
3916
  exports.asEnterAnimation = asEnterAnimation;
3832
3917
  exports.bindCanvasCapture = bindCanvasCapture;
3918
+ exports.bindConfigApplier = bindConfigApplier;
3833
3919
  exports.bindEventBus = bindEventBus;
3834
3920
  exports.bindLastDrawables = bindLastDrawables;
3835
3921
  exports.bindTraitStateGetter = bindTraitStateGetter;
@@ -1,14 +1,14 @@
1
- export { A as ApplyOperatorInput, a as ApplyOperatorResult, C as ContentSegment, E as EDITOR_MOTIONS, b as EDITOR_OPERATORS, c as EditorMotion, d as EditorOperator, I as INDENT_UNIT, L as LessonSegment, e as applyMotion, f as applyOperator, g as cn, i as isEditorMotion, h as isEditorOperator, m as motionRange, p as parseContentSegments, j as parseLessonSegments, k as parseMarkdownWithCodeBlocks } from '../cn-DIql5232.js';
1
+ export { A as ApplyOperatorInput, a as ApplyOperatorResult, C as ContentSegment, E as EDITOR_MOTIONS, b as EDITOR_OPERATORS, c as EditorMotion, d as EditorOperator, I as INDENT_UNIT, L as LessonSegment, e as applyMotion, f as applyOperator, g as cn, i as isEditorMotion, h as isEditorOperator, m as motionRange, p as parseContentSegments, j as parseLessonSegments, k as parseMarkdownWithCodeBlocks } from '../cn-CDIhHCUC.js';
2
2
  import { FieldValue, EntityRow, EventKey, EnterAnimation } from '@almadar/core';
3
3
  export { AssetLoadStatus, BridgeHealth, CheckStatus, EffectTrace, EventLogEntry, OrbitalVerificationAPI, ServerResponseTrace, TraitStateSnapshot, TransitionTrace, VerificationCheck, VerificationSnapshot, VerificationSummary, getNestedValue } from '@almadar/core';
4
4
  export { p as profilerOnRender, u as usePerfBuffer } from '../perf-DaVdsbU0.js';
5
- export { T as TraitSnapshotGetter, b as bindCanvasCapture, a as bindEventBus, c as bindLastDrawables, d as bindTraitStateGetter, e as clearVerification, g as getAllChecks, f as getBridgeHealth, h as getSnapshot, i as getSummary, j as getTraitSnapshots, k as getTransitions, l as getTransitionsForTrait, r as recordOrbitalResponse, m as recordServerResponse, n as recordTransition, o as recordingTransport, p as registerCheck, q as registerTraitSnapshot, s as serverEffectTraces, t as subscribeToVerification, u as updateAssetStatus, v as updateBridgeHealth, w as updateCheck, x as waitForTransition } from '../verificationRegistry-CK76GUfH.js';
5
+ export { T as TraitSnapshotGetter, b as bindCanvasCapture, a as bindConfigApplier, c as bindEventBus, d as bindLastDrawables, e as bindTraitStateGetter, f as clearVerification, g as getAllChecks, h as getBridgeHealth, i as getSnapshot, j as getSummary, k as getTraitSnapshots, l as getTransitions, m as getTransitionsForTrait, r as recordOrbitalResponse, n as recordServerResponse, o as recordTransition, p as recordingTransport, q as registerCheck, s as registerTraitSnapshot, t as serverEffectTraces, u as subscribeToVerification, v as updateAssetStatus, w as updateBridgeHealth, x as updateCheck, y as waitForTransition } from '../verificationRegistry-B5aGl7WF.js';
6
6
  export { B as BooleanLabels, D as DEFAULT_CURRENCY, F as FormatContext, S as SortDirection, V as ValueFormat, c as compareCellValues, f as formatDate, a as formatDateTime, b as formatTime, d as formatValue, p as parseCalendarDate, s as sortRows, t as toDateInputValue, e as toDateTimeInputValue } from '../format-Czimj421.js';
7
7
  export { D as DENSITY_ELEMENT_VARS, a as DENSITY_SPACING_VARS, b as DIAGRAM_VARS, E as ELEVATION_VARS, F as FlatVarEntry, G as GEOMETRY_VARS, I as ICONOGRAPHY_VARS, L as LEGACY_PREFIXES, M as MOTION_DURATION_KEYS, c as MOTION_EASING_KEYS, d as MOTION_INTENT_VARS, e as MOTION_SHAPE_VARS, S as SCENE_VARS, f as SURFACE_VARS, g as StringValueKey, h as TYPE_FAMILY_VARS, i as TYPE_HEADING_VARS, j as TYPE_INTENT_VARS, k as TYPE_SIZE_KEYS, T as ThemeMode, l as enterKeyframe, r as resolveThemeForRuntime, t as themeTokensToCssVars } from '../themeTokens-D6MFwKrC.js';
8
8
  export { PERF_NAMESPACE, PerfEntry, clearPerf, perfEnd, perfGauge, perfStart, perfTime, perfTimeAsync } from '@almadar/runtime/ui';
9
9
  import 'react';
10
10
  import 'clsx';
11
- import '../paintDispatch-BN8Vbzgs.js';
11
+ import '../paintDispatch-Cp1_S93j.js';
12
12
  import 'lucide-react';
13
13
  import '@almadar/runtime';
14
14
 
package/dist/lib/index.js CHANGED
@@ -1,9 +1,9 @@
1
- export { EDITOR_MOTIONS, EDITOR_OPERATORS, ENTER_SLOT_CLASS, INDENT_UNIT, MAX_ENTER_DELAY, PERF_NAMESPACE, applyMotion, applyOperator, arrowheadPath, asEnterAnimation, brainIconPath, clearDebugEvents, clearEntityProvider, clearGuardHistory, clearPerf, clearTicks, clearTraits, computeLineDiff, debug, debugCollision, debugError, debugGameState, debugGroup, debugGroupEnd, debugInput, debugPhysics, debugTable, debugTime, debugTimeEnd, debugWarn, eightPointedStarPath, enterClassName, gearTeethPath, getAllTicks, getAllTraits, getDebugEvents, getEntitiesByType, getEntityById, getEntitySnapshot, getEventsBySource, getEventsByType, getGuardEvaluationsForTrait, getGuardHistory, getNestedValue, getRecentEvents, getRecentGuardEvaluations, getTick, getTrait, initDebugShortcut, isDebugEnabled, isEditorMotion, isEditorOperator, lockIconPath, logDebugEvent, logEffectExecuted, logError, logEventFired, logInfo, logStateChange, logWarning, motionRange, onDebugToggle, parseContentSegments, parseLessonSegments, parseMarkdownWithCodeBlocks2 as parseMarkdownWithCodeBlocks, perfEnd, perfGauge, perfStart, perfTime, perfTimeAsync, pipeIconPath, profilerOnRender, recordGuardEvaluation, registerTick, registerTrait, resolveImageUrl, setDebugEnabled, setEntityProvider, setTickActive, subscribeToDebugEvents, subscribeToGuardChanges, subscribeToTickChanges, subscribeToTraitChanges, toggleDebug, unregisterTick, unregisterTrait, updateGuardResult, updateTickExecution, updateTraitState, usePerfBuffer } from '../chunk-KJGVLXEN.js';
2
- export { bindCanvasCapture, bindEventBus, bindLastDrawables, bindTraitStateGetter, clearVerification, getAllChecks, getBridgeHealth, getSnapshot, getSummary, getTraitSnapshots, getTransitions, getTransitionsForTrait, isEditableTarget, keyMapCode, recordOrbitalResponse, recordServerResponse, recordTransition, recordingTransport, registerCheck, registerTraitSnapshot, resolveKeyMapEvent, serverEffectTraces, subscribeToVerification, updateAssetStatus, updateBridgeHealth, updateCheck, waitForTransition } from '../chunk-Q47ZN2DW.js';
1
+ export { DENSITY_ELEMENT_VARS, DENSITY_SPACING_VARS, DIAGRAM_VARS, ELEVATION_VARS, GEOMETRY_VARS, ICONOGRAPHY_VARS, LEGACY_PREFIXES, MOTION_DURATION_KEYS, MOTION_EASING_KEYS, MOTION_INTENT_VARS, MOTION_SHAPE_VARS, SCENE_VARS, SURFACE_VARS, TYPE_FAMILY_VARS, TYPE_HEADING_VARS, TYPE_INTENT_VARS, TYPE_SIZE_KEYS, enterKeyframe, resolveThemeForRuntime, themeTokensToCssVars } from '../chunk-ZR45FGW3.js';
2
+ export { EDITOR_MOTIONS, EDITOR_OPERATORS, ENTER_SLOT_CLASS, INDENT_UNIT, MAX_ENTER_DELAY, PERF_NAMESPACE, applyMotion, applyOperator, arrowheadPath, asEnterAnimation, brainIconPath, clearDebugEvents, clearEntityProvider, clearGuardHistory, clearPerf, clearTicks, clearTraits, computeLineDiff, debug, debugCollision, debugError, debugGameState, debugGroup, debugGroupEnd, debugInput, debugPhysics, debugTable, debugTime, debugTimeEnd, debugWarn, eightPointedStarPath, enterClassName, gearTeethPath, getAllTicks, getAllTraits, getDebugEvents, getEntitiesByType, getEntityById, getEntitySnapshot, getEventsBySource, getEventsByType, getGuardEvaluationsForTrait, getGuardHistory, getNestedValue, getRecentEvents, getRecentGuardEvaluations, getTick, getTrait, initDebugShortcut, isDebugEnabled, isEditorMotion, isEditorOperator, lockIconPath, logDebugEvent, logEffectExecuted, logError, logEventFired, logInfo, logStateChange, logWarning, motionRange, onDebugToggle, parseContentSegments, parseLessonSegments, parseMarkdownWithCodeBlocks2 as parseMarkdownWithCodeBlocks, perfEnd, perfGauge, perfStart, perfTime, perfTimeAsync, pipeIconPath, profilerOnRender, recordGuardEvaluation, registerTick, registerTrait, resolveImageUrl, setDebugEnabled, setEntityProvider, setTickActive, subscribeToDebugEvents, subscribeToGuardChanges, subscribeToTickChanges, subscribeToTraitChanges, toggleDebug, unregisterTick, unregisterTrait, updateGuardResult, updateTickExecution, updateTraitState, usePerfBuffer } from '../chunk-N4IJS5DD.js';
3
+ export { bindCanvasCapture, bindConfigApplier, bindEventBus, bindLastDrawables, bindTraitStateGetter, clearVerification, getAllChecks, getBridgeHealth, getSnapshot, getSummary, getTraitSnapshots, getTransitions, getTransitionsForTrait, isEditableTarget, keyMapCode, recordOrbitalResponse, recordServerResponse, recordTransition, recordingTransport, registerCheck, registerTraitSnapshot, resolveKeyMapEvent, serverEffectTraces, subscribeToVerification, updateAssetStatus, updateBridgeHealth, updateCheck, waitForTransition } from '../chunk-N23SVGTH.js';
3
4
  export { cn } from '../chunk-64WACXM7.js';
4
- export { DENSITY_ELEMENT_VARS, DENSITY_SPACING_VARS, DIAGRAM_VARS, ELEVATION_VARS, GEOMETRY_VARS, ICONOGRAPHY_VARS, LEGACY_PREFIXES, MOTION_DURATION_KEYS, MOTION_EASING_KEYS, MOTION_INTENT_VARS, MOTION_SHAPE_VARS, SCENE_VARS, SURFACE_VARS, TYPE_FAMILY_VARS, TYPE_HEADING_VARS, TYPE_INTENT_VARS, TYPE_SIZE_KEYS, enterKeyframe, resolveThemeForRuntime, themeTokensToCssVars } from '../chunk-V3FGTQUE.js';
5
- export { DEFAULT_CURRENCY, compareCellValues, formatDate, formatDateTime, formatTime, formatValue, parseCalendarDate, sortRows, toDateInputValue, toDateTimeInputValue } from '../chunk-723MJUU3.js';
6
- import '../chunk-LZRW6GXG.js';
5
+ export { DEFAULT_CURRENCY, compareCellValues, formatDate, formatDateTime, formatTime, formatValue, parseCalendarDate, sortRows, toDateInputValue, toDateTimeInputValue } from '../chunk-6ZCU3BQN.js';
6
+ import '../chunk-FYX64CDL.js';
7
7
  import { __publicField } from '../chunk-QPXIAUJD.js';
8
8
 
9
9
  // lib/api-client.ts
@@ -366,6 +366,7 @@ var ICON_NATIVE_MAP = {
366
366
  "close": { sfSymbol: "xmark", materialSymbol: "close" },
367
367
  "check": { sfSymbol: "checkmark", materialSymbol: "check" },
368
368
  "check-circle": { sfSymbol: "checkmark.circle", materialSymbol: "check_circle" },
369
+ "circle-check": { sfSymbol: "checkmark.circle", materialSymbol: "check_circle" },
369
370
  "check-square": { sfSymbol: "checkmark.square", materialSymbol: "check_box" },
370
371
  "x-circle": { sfSymbol: "xmark.circle", materialSymbol: "cancel" },
371
372
  "trash": { sfSymbol: "trash", materialSymbol: "delete" },
@@ -414,6 +415,9 @@ var ICON_NATIVE_MAP = {
414
415
  "file-text": { sfSymbol: "doc.text", materialSymbol: "description" },
415
416
  "file-plus": { sfSymbol: "doc.badge.plus", materialSymbol: "note_add" },
416
417
  "file-minus": { sfSymbol: "doc.badge.minus", materialSymbol: "note" },
418
+ "file-code": { sfSymbol: "chevron.left.forwardslash.chevron.right", materialSymbol: "code" },
419
+ "file-json": { sfSymbol: "curlybraces", materialSymbol: "data_object" },
420
+ "file-warning": { sfSymbol: "exclamationmark.triangle", materialSymbol: "warning" },
417
421
  "folder": { sfSymbol: "folder", materialSymbol: "folder" },
418
422
  "folder-open": { sfSymbol: "folder", materialSymbol: "folder_open" },
419
423
  "paperclip": { sfSymbol: "paperclip", materialSymbol: "attach_file" },
@@ -440,6 +444,7 @@ var ICON_NATIVE_MAP = {
440
444
  "alert-triangle": { sfSymbol: "exclamationmark.triangle", materialSymbol: "warning" },
441
445
  "help-circle": { sfSymbol: "questionmark.circle", materialSymbol: "help" },
442
446
  "star": { sfSymbol: "star", materialSymbol: "star" },
447
+ "star-half": { sfSymbol: "star.leadinghalf.filled", materialSymbol: "star_half" },
443
448
  "heart": { sfSymbol: "heart", materialSymbol: "favorite" },
444
449
  "flag": { sfSymbol: "flag", materialSymbol: "flag" },
445
450
  "tag": { sfSymbol: "tag", materialSymbol: "label" },
@@ -471,6 +476,10 @@ var ICON_NATIVE_MAP = {
471
476
  "italic": { sfSymbol: "italic", materialSymbol: "format_italic" },
472
477
  "underline": { sfSymbol: "underline", materialSymbol: "format_underlined" },
473
478
  "align-left": { sfSymbol: "text.alignleft", materialSymbol: "format_align_left" },
479
+ "wrap-text": { sfSymbol: "text.append", materialSymbol: "wrap_text" },
480
+ "columns": { sfSymbol: "rectangle.split.2x1", materialSymbol: "view_column" },
481
+ "git-commit": { sfSymbol: "circle.and.line.horizontal", materialSymbol: "commit" },
482
+ "diamond": { sfSymbol: "diamond", materialSymbol: "diamond" },
474
483
  "align-center": { sfSymbol: "text.aligncenter", materialSymbol: "format_align_center" },
475
484
  "align-right": { sfSymbol: "text.alignright", materialSymbol: "format_align_right" },
476
485
  "indent": { sfSymbol: "increase.indent", materialSymbol: "format_indent_increase" },
@@ -484,7 +493,66 @@ var ICON_NATIVE_MAP = {
484
493
  "moon": { sfSymbol: "moon", materialSymbol: "dark_mode" },
485
494
  "sun": { sfSymbol: "sun.max", materialSymbol: "light_mode" },
486
495
  "square": { sfSymbol: "square", materialSymbol: "crop_square" },
487
- "circle": { sfSymbol: "circle", materialSymbol: "circle" }
496
+ "circle": { sfSymbol: "circle", materialSymbol: "circle" },
497
+ // --- behavior-registry vocabulary ---
498
+ "book-open": { sfSymbol: "book", materialSymbol: "menu_book" },
499
+ "calendar-clock": { sfSymbol: "calendar.badge.clock", materialSymbol: "event_note" },
500
+ "circle-dot": { sfSymbol: "circle.inset.filled", materialSymbol: "radio_button_checked" },
501
+ "dollar-sign": { sfSymbol: "dollarsign", materialSymbol: "attach_money" },
502
+ "history": { sfSymbol: "clock.arrow.circlepath", materialSymbol: "history" },
503
+ "image-plus": { sfSymbol: "photo.badge.plus", materialSymbol: "add_photo_alternate" },
504
+ "layers": { sfSymbol: "square.3.layers.3d", materialSymbol: "layers" },
505
+ "layout-dashboard": { sfSymbol: "rectangle.3.group", materialSymbol: "dashboard" },
506
+ "message-square-plus": { sfSymbol: "plus.bubble", materialSymbol: "add_comment" },
507
+ "messages-square": { sfSymbol: "bubble.left.and.bubble.right", materialSymbol: "forum" },
508
+ "mouse-pointer-click": { sfSymbol: "cursorarrow.click", materialSymbol: "touch_app" },
509
+ "package": { sfSymbol: "shippingbox", materialSymbol: "inventory_2" },
510
+ // SF Symbols has no search-with-x glyph; `magnifyingglass` is the nearest.
511
+ "search-x": { sfSymbol: "magnifyingglass", materialSymbol: "search_off" },
512
+ "shield": { sfSymbol: "shield", materialSymbol: "shield" },
513
+ "sparkles": { sfSymbol: "sparkles", materialSymbol: "auto_awesome" },
514
+ "step-forward": { sfSymbol: "forward.end.fill", materialSymbol: "skip_next" },
515
+ "thumbs-up": { sfSymbol: "hand.thumbsup", materialSymbol: "thumb_up" },
516
+ "trending-down": { sfSymbol: "chart.line.downtrend.xyaxis", materialSymbol: "trending_down" },
517
+ "trending-up": { sfSymbol: "chart.line.uptrend.xyaxis", materialSymbol: "trending_up" },
518
+ "user-check": { sfSymbol: "person.crop.circle.badge.checkmark", materialSymbol: "how_to_reg" },
519
+ // SF Symbols has no unlink glyph; `link` is the nearest (Material has `link_off`).
520
+ "arrow-right-circle": { sfSymbol: "arrow.right.circle", materialSymbol: "arrow_circle_right" },
521
+ "atom": { sfSymbol: "atom", materialSymbol: "science" },
522
+ "ban": { sfSymbol: "nosign", materialSymbol: "block" },
523
+ "bookmark-plus": { sfSymbol: "bookmark", materialSymbol: "bookmark_add" },
524
+ "briefcase": { sfSymbol: "briefcase", materialSymbol: "work" },
525
+ "building-2": { sfSymbol: "building.2", materialSymbol: "business" },
526
+ "clipboard-check": { sfSymbol: "checklist", materialSymbol: "assignment_turned_in" },
527
+ "dices": { sfSymbol: "dice", materialSymbol: "casino" },
528
+ "dna": { sfSymbol: "cross.vial", materialSymbol: "biotech" },
529
+ "door-open": { sfSymbol: "door.left.hand.open", materialSymbol: "meeting_room" },
530
+ "feather": { sfSymbol: "pencil.line", materialSymbol: "draw" },
531
+ "file-signature": { sfSymbol: "signature", materialSymbol: "history_edu" },
532
+ "file-up": { sfSymbol: "arrow.up.doc", materialSymbol: "upload_file" },
533
+ "flame": { sfSymbol: "flame", materialSymbol: "local_fire_department" },
534
+ "flask-conical": { sfSymbol: "flask", materialSymbol: "science" },
535
+ "gift": { sfSymbol: "gift", materialSymbol: "card_giftcard" },
536
+ "handshake": { sfSymbol: "person.2", materialSymbol: "handshake" },
537
+ "key-round": { sfSymbol: "key", materialSymbol: "vpn_key" },
538
+ "languages": { sfSymbol: "globe", materialSymbol: "translate" },
539
+ "leaf": { sfSymbol: "leaf", materialSymbol: "eco" },
540
+ "lightbulb": { sfSymbol: "lightbulb", materialSymbol: "lightbulb" },
541
+ "mail-plus": { sfSymbol: "envelope.badge", materialSymbol: "forward_to_inbox" },
542
+ "maximize-2": { sfSymbol: "arrow.up.left.and.arrow.down.right", materialSymbol: "open_in_full" },
543
+ "network": { sfSymbol: "network", materialSymbol: "hub" },
544
+ "presentation": { sfSymbol: "play.rectangle", materialSymbol: "slideshow" },
545
+ "repeat": { sfSymbol: "repeat", materialSymbol: "repeat" },
546
+ "route": { sfSymbol: "point.topleft.down.to.point.bottomright.curvepath", materialSymbol: "route" },
547
+ "ruler": { sfSymbol: "ruler", materialSymbol: "straighten" },
548
+ "scale": { sfSymbol: "scalemass", materialSymbol: "balance" },
549
+ "scroll": { sfSymbol: "scroll", materialSymbol: "receipt_long" },
550
+ "shield-check": { sfSymbol: "checkmark.shield", materialSymbol: "verified_user" },
551
+ "sigma": { sfSymbol: "sum", materialSymbol: "functions" },
552
+ "sticky-note": { sfSymbol: "note.text", materialSymbol: "sticky_note_2" },
553
+ "store": { sfSymbol: "storefront", materialSymbol: "store" },
554
+ "target": { sfSymbol: "scope", materialSymbol: "gps_fixed" },
555
+ "unlink": { sfSymbol: "link", materialSymbol: "link_off" }
488
556
  };
489
557
  var ICON_ALIASES = [
490
558
  "close",
@@ -136,7 +136,6 @@ var en_default = {
136
136
  "aria.upvote": "Upvote",
137
137
  "aria.downvote": "Downvote",
138
138
  "aria.qrScanner": "QR scanner",
139
- "aria.mockScanDev": "Mock scan (dev)",
140
139
  "aria.openMenu": "Open menu",
141
140
  "aria.closeMenu": "Close menu",
142
141
  "aria.openSidebar": "Open sidebar",
@@ -334,7 +333,6 @@ var en_default = {
334
333
  "qrScanner.pauseScanning": "Pause scanning",
335
334
  "qrScanner.switchToFrontCamera": "Switch to front camera",
336
335
  "qrScanner.switchToRearCamera": "Switch to rear camera",
337
- "qrScanner.mockScan": "Mock Scan",
338
336
  "docSearch.placeholder": "Search documentation...",
339
337
  "stateMachine.loading": "Loading state machine\u2026",
340
338
  "stateMachine.noStateMachine": "No state machine to visualize",
@@ -1391,7 +1389,6 @@ var ar_default = {
1391
1389
  "aria.upvote": "\u062A\u0635\u0648\u064A\u062A \u0625\u064A\u062C\u0627\u0628\u064A",
1392
1390
  "aria.downvote": "\u062A\u0635\u0648\u064A\u062A \u0633\u0644\u0628\u064A",
1393
1391
  "aria.qrScanner": "\u0645\u0627\u0633\u062D QR",
1394
- "aria.mockScanDev": "\u0645\u0633\u062D \u062A\u062C\u0631\u064A\u0628\u064A (\u062A\u0637\u0648\u064A\u0631)",
1395
1392
  "aria.openMenu": "\u0641\u062A\u062D \u0627\u0644\u0642\u0627\u0626\u0645\u0629",
1396
1393
  "aria.closeMenu": "\u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0642\u0627\u0626\u0645\u0629",
1397
1394
  "aria.openSidebar": "\u0641\u062A\u062D \u0627\u0644\u0634\u0631\u064A\u0637 \u0627\u0644\u062C\u0627\u0646\u0628\u064A",
@@ -1589,7 +1586,6 @@ var ar_default = {
1589
1586
  "qrScanner.pauseScanning": "\u0625\u064A\u0642\u0627\u0641 \u0627\u0644\u0645\u0633\u062D \u0645\u0624\u0642\u062A\u064B\u0627",
1590
1587
  "qrScanner.switchToFrontCamera": "\u0627\u0644\u062A\u0628\u062F\u064A\u0644 \u0625\u0644\u0649 \u0627\u0644\u0643\u0627\u0645\u064A\u0631\u0627 \u0627\u0644\u0623\u0645\u0627\u0645\u064A\u0629",
1591
1588
  "qrScanner.switchToRearCamera": "\u0627\u0644\u062A\u0628\u062F\u064A\u0644 \u0625\u0644\u0649 \u0627\u0644\u0643\u0627\u0645\u064A\u0631\u0627 \u0627\u0644\u062E\u0644\u0641\u064A\u0629",
1592
- "qrScanner.mockScan": "\u0645\u0633\u062D \u062A\u062C\u0631\u064A\u0628\u064A",
1593
1589
  "docSearch.placeholder": "\u0627\u0644\u0628\u062D\u062B \u0641\u064A \u0627\u0644\u0648\u062B\u0627\u0626\u0642...",
1594
1590
  "stateMachine.loading": "\u062C\u0627\u0631\u064D \u062A\u062D\u0645\u064A\u0644 \u0622\u0644\u0629 \u0627\u0644\u062D\u0627\u0644\u0629\u2026",
1595
1591
  "stateMachine.noStateMachine": "\u0644\u0627 \u062A\u0648\u062C\u062F \u0622\u0644\u0629 \u062D\u0627\u0644\u0629 \u0644\u0639\u0631\u0636\u0647\u0627",
@@ -2650,7 +2646,6 @@ var sl_default = {
2650
2646
  "aria.upvote": "Glasuj za",
2651
2647
  "aria.downvote": "Glasuj proti",
2652
2648
  "aria.qrScanner": "QR skener",
2653
- "aria.mockScanDev": "Simuliraj skeniranje (dev)",
2654
2649
  "aria.openMenu": "Odpri meni",
2655
2650
  "aria.closeMenu": "Zapri meni",
2656
2651
  "aria.openSidebar": "Odpri stransko vrstico",
@@ -2848,7 +2843,6 @@ var sl_default = {
2848
2843
  "qrScanner.pauseScanning": "Za\u010Dasno ustavi skeniranje",
2849
2844
  "qrScanner.switchToFrontCamera": "Preklopi na sprednjo kamero",
2850
2845
  "qrScanner.switchToRearCamera": "Preklopi na zadnjo kamero",
2851
- "qrScanner.mockScan": "Preizkusno skeniranje",
2852
2846
  "docSearch.placeholder": "Iskanje po dokumentaciji...",
2853
2847
  "stateMachine.loading": "Nalaganje stanjskega stroja\u2026",
2854
2848
  "stateMachine.noStateMachine": "Ni stanjskega stroja za prikaz",
@@ -1,5 +1,5 @@
1
- import { sl_default, ar_default } from '../chunk-YYYHH5BA.js';
2
- import { en_default } from '../chunk-LZRW6GXG.js';
1
+ import { sl_default, ar_default } from '../chunk-CB64IOYD.js';
2
+ import { en_default } from '../chunk-FYX64CDL.js';
3
3
  import '../chunk-QPXIAUJD.js';
4
4
 
5
5
  // locales/index.ts
@@ -1,5 +1,5 @@
1
- import { A11yProps, Asset, AssetUrl, ScenePos } from '@almadar/core';
2
1
  import React__default from 'react';
2
+ import { A11yProps, Asset, AssetUrl, ScenePos } from '@almadar/core';
3
3
  import { LucideIcon } from 'lucide-react';
4
4
 
5
5
  type BadgeVariant = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral";
@@ -372,6 +372,10 @@ interface DrawShapeProps extends DrawableBase {
372
372
  /** 0..1 opacity. */
373
373
  opacity?: number;
374
374
  }
375
+ /** Registry/standalone stub — the host paints this atom; the DOM renders nothing.
376
+ * When composed as a React child of a draw-host (Canvas2D), registers its
377
+ * descriptor via context so the host paints it. */
378
+ declare function DrawShape(props: DrawShapeProps): React__default.JSX.Element | null;
375
379
 
376
380
  /**
377
381
  * `draw-sprite` — the neutral image/atlas-frame drawable atom (dimension-agnostic).
@@ -418,6 +422,8 @@ interface DrawSpriteProps extends DrawableBase {
418
422
  /** Drop shadow (e.g. a team-colored glow). */
419
423
  shadow?: DrawShapeShadow;
420
424
  }
425
+ /** Registry/standalone stub — the host paints this atom; the DOM renders nothing. */
426
+ declare function DrawSprite(_props: DrawSpriteProps): React__default.JSX.Element | null;
421
427
 
422
428
  /**
423
429
  * `draw-text` — the neutral text drawable atom (dimension-agnostic).
@@ -453,6 +459,8 @@ interface DrawTextProps extends DrawableBase {
453
459
  baseline?: DrawTextBaseline;
454
460
  opacity?: number;
455
461
  }
462
+ /** Registry/standalone stub — the host paints this atom; the DOM renders nothing. */
463
+ declare function DrawText(_props: DrawTextProps): React__default.JSX.Element | null;
456
464
 
457
465
  /**
458
466
  * `draw-mesh` — the volumetric 3D drawable atom (3D-canvas backend).
@@ -602,6 +610,10 @@ interface DrawMeshProps extends DrawableBase {
602
610
  /** 0..1 opacity; multiplies the material and enclosing group opacity. */
603
611
  opacity?: number;
604
612
  }
613
+ /** Registry/standalone stub — the 3D host renders this atom; the DOM renders nothing.
614
+ * When composed as a React child of a draw-host, registers its descriptor via
615
+ * context so the host paints it — same path as DrawShape. */
616
+ declare function DrawMesh(props: DrawMeshProps): React__default.JSX.Element | null;
605
617
 
606
618
  /**
607
619
  * `draw-group` — the drawable CONTAINER atom (dimension-agnostic).
@@ -647,6 +659,10 @@ interface DrawGroupProps extends DrawableBase {
647
659
  /** The grouped drawables, painted through the normal dispatch. */
648
660
  items: DrawableNode[];
649
661
  }
662
+ /** Registry/standalone stub — the host paints this atom; the DOM renders nothing.
663
+ * When composed as a React child of a draw-host (Canvas2D), registers its
664
+ * descriptor via context so the host paints it — same path as DrawShape. */
665
+ declare function DrawGroup(props: DrawGroupProps): React__default.JSX.Element | null;
650
666
 
651
667
  interface SkinWeight {
652
668
  /** Index into the drawable's `bones` array. */
@@ -725,6 +741,10 @@ interface DrawSkinnedMeshProps extends DrawableBase {
725
741
  opacity: number;
726
742
  };
727
743
  }
744
+ /** Registry/standalone stub — the host paints this atom; the DOM renders nothing.
745
+ * When composed as a React child of a draw-host (Canvas2D), registers its
746
+ * descriptor via context so the host paints it. */
747
+ declare function DrawSkinnedMesh(props: DrawSkinnedMeshProps): React__default.JSX.Element | null;
728
748
 
729
749
  /**
730
750
  * `draw-sprite-layer` — batch multiple sprites in one descriptor for O(layers) rendering.
@@ -740,6 +760,8 @@ interface DrawSpriteLayerProps extends DrawableBase {
740
760
  /** Sprites painted in array order; z-ordering is the caller's responsibility. */
741
761
  items: DrawSpriteProps[];
742
762
  }
763
+ /** Registry/standalone stub — the host paints this molecule; the DOM renders nothing. */
764
+ declare function DrawSpriteLayer(_props: DrawSpriteLayerProps): React__default.JSX.Element | null;
743
765
 
744
766
  /**
745
767
  * `draw-shape-layer` — batch of shapes in one descriptor for O(layers) perf.
@@ -753,6 +775,8 @@ interface DrawShapeLayerProps extends DrawableBase {
753
775
  type: 'draw-shape-layer';
754
776
  items: DrawShapeProps[];
755
777
  }
778
+ /** Registry/standalone stub — the host paints this molecule; the DOM renders nothing. */
779
+ declare function DrawShapeLayer(_props: DrawShapeLayerProps): React__default.JSX.Element | null;
756
780
 
757
781
  /**
758
782
  * `draw-text-layer` — batch of text labels in one descriptor for O(layers) perf.
@@ -769,6 +793,8 @@ interface DrawTextLayerProps extends DrawableBase {
769
793
  type: 'draw-text-layer';
770
794
  items: DrawTextProps[];
771
795
  }
796
+ /** Registry/standalone stub — the host paints this molecule; the DOM renders nothing. */
797
+ declare function DrawTextLayer(_props: DrawTextLayerProps): React__default.JSX.Element | null;
772
798
 
773
799
  /**
774
800
  * fx — the shared transient-effect contract (type-only module + pure helpers).
@@ -949,6 +975,8 @@ interface DrawFxLayerProps extends DrawableBase {
949
975
  /** Floating-message text color when an item declares none. Default `#ffe066`. */
950
976
  textColor?: string;
951
977
  }
978
+ /** Registry/standalone stub — the host paints this molecule; the DOM renders nothing. */
979
+ declare function DrawFxLayer(_props: DrawFxLayerProps): React__default.JSX.Element | null;
952
980
 
953
981
  /**
954
982
  * Drawable paint dispatch (2D) + the `DrawableNode` union.
@@ -964,4 +992,4 @@ interface DrawFxLayerProps extends DrawableBase {
964
992
  /** Every drawable descriptor. The host's `children` are a `DrawableNode[]`. */
965
993
  type DrawableNode = DrawSpriteProps | DrawShapeProps | DrawTextProps | DrawGroupProps | DrawMeshProps | DrawSkinnedMeshProps | DrawSpriteLayerProps | DrawShapeLayerProps | DrawTextLayerProps | DrawFxLayerProps;
966
994
 
967
- export { type BadgeColor as B, type ColorToken as C, type DrawableNode as D, type FxOverlayItem as F, type IconInput as I, type LinkAction as L, type MeshShapeKind as M, type Projector as P, type Rect as R, type UiError as U, type MeshMaterial as a, type DrawGroupProps as b, type DrawTextProps as c, type DrawMeshProps as d, type DisplayField as e, type DisplayFieldFormat as f, type BadgeVariant as g, Badge as h, type BadgeProps as i, type FxOverlayKind as j, Icon as k, type IconAnimation as l, type IconProps as m, type IconSize as n, type ImageSource as o, type Point as p };
995
+ export { type BadgeColor as B, type ColorToken as C, type DrawableNode as D, type FxOverlayItem as F, type IconInput as I, type LinkAction as L, type MeshShapeKind as M, type Projector as P, type Rect as R, type UiError as U, type MeshMaterial as a, type DrawGroupProps as b, type DrawTextProps as c, type DrawMeshProps as d, type DisplayField as e, type DisplayFieldFormat as f, type BadgeVariant as g, Badge as h, type BadgeProps as i, DrawFxLayer as j, DrawGroup as k, DrawMesh as l, DrawShape as m, DrawShapeLayer as n, DrawSkinnedMesh as o, DrawSprite as p, DrawSpriteLayer as q, DrawText as r, DrawTextLayer as s, type FxOverlayKind as t, Icon as u, type IconAnimation as v, type IconProps as w, type IconSize as x, type ImageSource as y, type Point as z };