@number10/jsx-pixi 5.0.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 (63) hide show
  1. package/LICENSE +667 -0
  2. package/README.md +46 -0
  3. package/dist/appliers/pixi-background.d.ts +13 -0
  4. package/dist/appliers/pixi-background.d.ts.map +1 -0
  5. package/dist/appliers/pixi-base.d.ts +10 -0
  6. package/dist/appliers/pixi-base.d.ts.map +1 -0
  7. package/dist/appliers/pixi-gesture.d.ts +17 -0
  8. package/dist/appliers/pixi-gesture.d.ts.map +1 -0
  9. package/dist/appliers/pixi-node.d.ts +59 -0
  10. package/dist/appliers/pixi-node.d.ts.map +1 -0
  11. package/dist/appliers/pixi-particles.d.ts +86 -0
  12. package/dist/appliers/pixi-particles.d.ts.map +1 -0
  13. package/dist/appliers/pixi-text.d.ts +16 -0
  14. package/dist/appliers/pixi-text.d.ts.map +1 -0
  15. package/dist/appliers/pixi-tooltip.d.ts +6 -0
  16. package/dist/appliers/pixi-tooltip.d.ts.map +1 -0
  17. package/dist/appliers/pixi-vector-draw.d.ts +11 -0
  18. package/dist/appliers/pixi-vector-draw.d.ts.map +1 -0
  19. package/dist/custom/Particles.d.ts +5 -0
  20. package/dist/custom/Particles.d.ts.map +1 -0
  21. package/dist/index.cjs +8317 -0
  22. package/dist/index.cjs.map +1 -0
  23. package/dist/index.d.ts +30 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +8208 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/jsx-dev-runtime.cjs +9 -0
  28. package/dist/jsx-dev-runtime.d.ts +7 -0
  29. package/dist/jsx-dev-runtime.d.ts.map +1 -0
  30. package/dist/jsx-dev-runtime.js +2 -0
  31. package/dist/jsx-runtime.cjs +21 -0
  32. package/dist/jsx-runtime.d.ts +7 -0
  33. package/dist/jsx-runtime.d.ts.map +1 -0
  34. package/dist/jsx-runtime.js +2 -0
  35. package/dist/jsx-types.d.ts +10 -0
  36. package/dist/jsx-types.d.ts.map +1 -0
  37. package/dist/mount-pixi.d.ts +23 -0
  38. package/dist/mount-pixi.d.ts.map +1 -0
  39. package/dist/pixi-debug-snapshot.d.ts +37 -0
  40. package/dist/pixi-debug-snapshot.d.ts.map +1 -0
  41. package/dist/pixi-effects-bridge.d.ts +2 -0
  42. package/dist/pixi-effects-bridge.d.ts.map +1 -0
  43. package/dist/pixi-gesture-manager.d.ts +42 -0
  44. package/dist/pixi-gesture-manager.d.ts.map +1 -0
  45. package/dist/pixi-host-adapter.d.ts +21 -0
  46. package/dist/pixi-host-adapter.d.ts.map +1 -0
  47. package/dist/pixi-layout-bridge.d.ts +8 -0
  48. package/dist/pixi-layout-bridge.d.ts.map +1 -0
  49. package/dist/pixi-scene-backgrounds.d.ts +68 -0
  50. package/dist/pixi-scene-backgrounds.d.ts.map +1 -0
  51. package/dist/pixi-scheduler.d.ts +23 -0
  52. package/dist/pixi-scheduler.d.ts.map +1 -0
  53. package/dist/pixi-surface-adapter.d.ts +77 -0
  54. package/dist/pixi-surface-adapter.d.ts.map +1 -0
  55. package/dist/pixi-vdom-runtime.d.ts +2 -0
  56. package/dist/pixi-vdom-runtime.d.ts.map +1 -0
  57. package/dist/utils/normalize-size.d.ts +17 -0
  58. package/dist/utils/normalize-size.d.ts.map +1 -0
  59. package/dist/vector/PixiVectorDrawContext.d.ts +35 -0
  60. package/dist/vector/PixiVectorDrawContext.d.ts.map +1 -0
  61. package/dist/vector/index.d.ts +2 -0
  62. package/dist/vector/index.d.ts.map +1 -0
  63. package/package.json +95 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["c","l","u","d","f","p","n","e","e","n","e","n","e","n","e","n","t","e","m","n","h","g","_","r","e","t","a","e","g","_","v","y","b","r","n","t","e","u","d","y","b","x","S","C","w","T","a","r","i","g","t","n","e","f","p","m","h","g","ee","te","_","n","t","e","p","m","n","t","h","g","r","e","o","s","c","l","u","d","t","e","p","m","d","f","p","r","t","e","n","l","n","e","t","l","n","e","t","e","f","p","n","t","e","e","t","c","e","t","f","v","O","i","n","r","t","e","f","p","m","h","n","g","e","_","v","y","t","b","l","x","e","t","ee","y","b","x","S","C","v","i","r","n","e","f","h","g","_","v","y","b","x","S","r","n","t","e","l","u","d","f","n","e","t","f","_","v","a","t","e","r","i","n","d","f","n","t","r","e","f","p","m","h","g","_","v","y","n","r","t","l","e","h","_","v","b","x","C","a","r","f","e","t","i","n","m","h","i","r","n","t","e","n","e","n"],"sources":["../../components/dist/theme-defaults.js","../../components/dist/primitives/Sprite.js","../../components/dist/primitives/Text.js","../../components/dist/primitives/VectorDrawContent.js","../../components/dist/primitives/View.js","../../components/dist/primitives/Image.js","../../components/dist/Accordion.js","../../components/dist/Button.js","../../components/dist/Portal.js","../../components/dist/useOverlayPresence.js","../../components/dist/Modal.js","../../components/dist/Dialog.js","../../components/dist/WrapText.js","../../components/dist/AlertDialog.js","../../components/dist/DebugPanel.js","../../components/dist/Popover.js","../../components/dist/TextInput.js","../../components/dist/ActivityIndicator.js","../../components/dist/Badge.js","../../components/dist/Checkbox.js","../../components/dist/RadioButton.js","../../components/dist/RadioGroup.js","../../components/dist/Divider.js","../../components/dist/ScrollSlider.js","../../components/dist/Image.js","../../components/dist/Joystick.js","../../components/dist/MenuButton.js","../../components/dist/NineSlice.js","../../components/dist/NineSliceButton.js","../../components/dist/NumberInput.js","../../components/dist/PalettePicker.js","../../components/dist/ProgressBar.js","../../components/dist/ProgressView.js","../../components/dist/RatingBar.js","../../components/dist/SegmentedControl.js","../../components/dist/Toolbar.js","../../components/dist/Toggle.js","../../components/dist/TransformOriginView.js","../../components/dist/index.js","../src/pixi-layout-bridge.ts","../src/appliers/pixi-node.ts","../src/pixi-effects-bridge.ts","../src/pixi-gesture-manager.ts","../src/appliers/pixi-gesture.ts","../src/appliers/pixi-tooltip.ts","../src/pixi-surface-adapter.ts","../src/pixi-debug-snapshot.ts","../src/vector/PixiVectorDrawContext.ts","../src/appliers/pixi-background.ts","../src/appliers/pixi-base.ts","../src/appliers/pixi-particles.ts","../src/utils/normalize-size.ts","../src/appliers/pixi-text.ts","../src/appliers/pixi-vector-draw.ts","../src/pixi-scheduler.ts","../src/pixi-host-adapter.ts","../src/pixi-vdom-runtime.ts","../src/custom/Particles.tsx","../src/mount-pixi.ts","../src/pixi-scene-backgrounds.ts","../src/index.ts"],"sourcesContent":["import { createTextStyleTokens as e, ensureContrast as t, getContrastRatio as n, getPresetWithMode as r, numberToHex as i, registerComponentThemeDefaults as a, resolveContrastTextColor as o, resolveContrastTintColor as s } from \"@number10/jsx-core\";\n//#region src/theme-defaults.ts\nfunction c(e, r, i = 4.5) {\n\tfor (let t of r) if (n(t, e) >= i) return t;\n\treturn [\n\t\t...r.map((n) => t(n, e, i)),\n\t\tt(0, e, i),\n\t\tt(16777215, e, i)\n\t].reduce((t, r) => n(r, e) > n(t, e) ? r : t);\n}\nfunction l(e, t, n = 4.5) {\n\treturn i(c(e, t, n));\n}\nfunction u(t) {\n\tlet n = t, r = e(n.text.DEFAULT.toString()), i = [\n\t\tn.text.lightest.toNumber(),\n\t\t16777215,\n\t\tn.text.light.toNumber(),\n\t\tn.text.dark.toNumber(),\n\t\tn.text.darkest.toNumber(),\n\t\t0\n\t], a = [\n\t\tn.text.dark.toNumber(),\n\t\tn.text.darkest.toNumber(),\n\t\t0,\n\t\tn.text.DEFAULT.toNumber(),\n\t\tn.text.light.toNumber(),\n\t\t16777215\n\t], u = {\n\t\talpha: 1,\n\t\tvisible: !0\n\t}, d = {\n\t\ttext: \"\",\n\t\talpha: 1,\n\t\tvisible: !0,\n\t\tstyle: r.DEFAULT\n\t}, f = {\n\t\tsize: 24,\n\t\ttint: n.border.dark.toNumber()\n\t}, p = {\n\t\talpha: 1,\n\t\tvisible: !0\n\t}, m = {\n\t\talpha: 1,\n\t\tvisible: !0\n\t}, h = {\n\t\tvariant: \"spinner\",\n\t\tsize: \"medium\",\n\t\tcolor: n.primary.DEFAULT.toNumber(),\n\t\ttrackColor: n.primary.DEFAULT.toNumber(),\n\t\tanimationSpeed: 2.4,\n\t\tgap: 8,\n\t\tdotCount: 3,\n\t\tdotSize: 7,\n\t\tpulseScale: 1,\n\t\tlabelStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: n.text.light.toString()\n\t\t},\n\t\tlabels: { loading: \"\" }\n\t}, g = {\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tpadding: 14,\n\t\tgap: 18,\n\t\tpreviewSize: 116,\n\t\tpreviewGap: 10,\n\t\tpreviewBorderWidth: 2,\n\t\tpreviewCornerRadius: 8,\n\t\ttrackLength: 280,\n\t\ttrackHeight: 14,\n\t\tgradientSteps: 32,\n\t\tcontrolGap: 12,\n\t\tcontrolBackgroundColor: n.surface.medium.toNumber(),\n\t\tcontrolBackgroundAlpha: .65,\n\t\tcloseButtonSize: 24,\n\t\tcloseButtonCornerRadius: 5,\n\t\tthumbSize: 18,\n\t\tthumbBorderColor: 16777215,\n\t\tswatchSize: 18,\n\t\tswatchGap: 6,\n\t\tswatchCornerRadius: 4,\n\t\tlabelStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"12px\"\n\t\t},\n\t\tvalueStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"12px\"\n\t\t},\n\t\ttitleStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"16px\",\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\thexStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tlabels: {\n\t\t\ttitle: \"Color Picker\",\n\t\t\ttone: \"Tone\",\n\t\t\tvivid: \"Vivid\",\n\t\t\tmuted: \"Muted\",\n\t\t\thue: \"Hue\",\n\t\t\tsaturation: \"Saturation\",\n\t\t\tlightness: \"Lightness\",\n\t\t\tclose: \"X\"\n\t\t}\n\t}, _ = {\n\t\tcheckedColor: n.primary.DEFAULT.toNumber(),\n\t\tindeterminateColor: n.primary.medium.toNumber(),\n\t\tcolor: n.border.medium.toNumber(),\n\t\tgap: 10,\n\t\tsize: 20,\n\t\tdisabledAlpha: .5,\n\t\tlabelPosition: \"right\",\n\t\tlabelStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"14px\"\n\t\t}\n\t}, v = {\n\t\tanimated: !1,\n\t\tmaxHeight: 200,\n\t\tanimationConfig: \"gentle\",\n\t\tdirection: \"column\",\n\t\teffect: \"none\",\n\t\teffectConfig: {\n\t\t\tmagnitude: .02,\n\t\t\ttime: 150\n\t\t},\n\t\theaderStyle: {\n\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\tpadding: 10,\n\t\t\tgap: 10,\n\t\t\tcornerRadius: 5,\n\t\t\twidth: \"fill\"\n\t\t},\n\t\tcontentStyle: {\n\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\tpadding: 10,\n\t\t\tcornerRadius: 5,\n\t\t\twidth: \"fill\"\n\t\t},\n\t\tIcon: { size: 24 },\n\t\ttextStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"18px\"\n\t\t}\n\t}, y = {\n\t\ttone: \"neutral\",\n\t\tvariant: \"solid\",\n\t\tsize: \"medium\",\n\t\tmaxCount: 99,\n\t\tdisabledAlpha: .5,\n\t\ttextStyle: { fontFamily: \"Arial\" }\n\t}, b = {\n\t\ttone: \"neutral\",\n\t\tvariant: \"soft\",\n\t\tsize: \"medium\",\n\t\tdisabledAlpha: .5,\n\t\ttextStyle: { fontFamily: \"Arial\" },\n\t\tcloseSize: 16\n\t}, x = n.primary.dark.toNumber(), S = o(n, \"text/on-brand\", x), C = s(n, \"icon/on-brand\", x, 3), w = n.surface.lightest.toNumber(), T = l(w, a), E = c(w, a, 3), D = n.error.dark.toNumber(), O = o(n, \"text/on-danger\", D), k = s(n, \"icon/on-danger\", D, 3), A = {\n\t\tvariant: \"primary\",\n\t\tsize: \"medium\",\n\t\tbackgroundColor: x,\n\t\tbackgroundAlpha: 1,\n\t\tborderColor: n.primary.darkest.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tgap: 8,\n\t\tpadding: {\n\t\t\ttop: 8,\n\t\t\tbottom: 8,\n\t\t\tleft: 16,\n\t\t\tright: 16\n\t\t},\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\teffect: \"press\",\n\t\teffectConfig: {\n\t\t\tintensity: .94,\n\t\t\ttime: 140\n\t\t},\n\t\ticonSize: 18,\n\t\theight: 40,\n\t\tdisabledColor: n.surface.medium.toNumber(),\n\t\tdisabledTextColor: n.text.light.toString(),\n\t\tdisabledIconTint: n.text.light.toNumber(),\n\t\tdisabledAlpha: .48,\n\t\ttextStyle: {\n\t\t\tcolor: S,\n\t\t\tfontFamily: \"Arial\",\n\t\t\tfontSize: \"16px\",\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tText: { style: {\n\t\t\tcolor: S,\n\t\t\tfontFamily: \"Arial\",\n\t\t\tfontSize: \"16px\",\n\t\t\tfontStyle: \"bold\"\n\t\t} },\n\t\tIcon: {\n\t\t\tsize: 18,\n\t\t\ttint: C\n\t\t},\n\t\tprimary: {\n\t\t\tbackgroundColor: x,\n\t\t\tborderColor: n.primary.darkest.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\tcolor: S,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: C }\n\t\t},\n\t\tsecondary: {\n\t\t\tbackgroundColor: w,\n\t\t\tbackgroundAlpha: .92,\n\t\t\tborderColor: n.border.light.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: T,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: E }\n\t\t},\n\t\toutline: {\n\t\t\tbackgroundColor: n.primary.dark.toNumber(),\n\t\t\tbackgroundAlpha: .08,\n\t\t\tborderColor: n.primary.light.toNumber(),\n\t\t\tborderWidth: 2,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: n.primary.light.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: n.primary.light.toNumber() }\n\t\t},\n\t\tghost: {\n\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\tbackgroundAlpha: .18,\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderAlpha: .35,\n\t\t\tborderWidth: 1,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: n.text.light.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: n.text.light.toNumber() }\n\t\t},\n\t\tdanger: {\n\t\t\tbackgroundColor: D,\n\t\t\tborderColor: n.error.darkest.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\tcolor: O,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: k }\n\t\t},\n\t\tsmall: {\n\t\t\theight: 32,\n\t\t\tpadding: {\n\t\t\t\ttop: 6,\n\t\t\t\tbottom: 6,\n\t\t\t\tleft: 12,\n\t\t\t\tright: 12\n\t\t\t},\n\t\t\tcornerRadius: 6,\n\t\t\tgap: 6,\n\t\t\ticonSize: 15,\n\t\t\ttextStyle: { fontSize: \"12px\" },\n\t\t\tIcon: { size: 15 }\n\t\t},\n\t\tmedium: {\n\t\t\theight: 40,\n\t\t\tpadding: {\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8,\n\t\t\t\tleft: 16,\n\t\t\t\tright: 16\n\t\t\t},\n\t\t\tcornerRadius: 8,\n\t\t\tgap: 8,\n\t\t\ticonSize: 18,\n\t\t\tIcon: { size: 18 }\n\t\t},\n\t\tlarge: {\n\t\t\theight: 48,\n\t\t\tpadding: {\n\t\t\t\ttop: 10,\n\t\t\t\tbottom: 10,\n\t\t\t\tleft: 20,\n\t\t\t\tright: 20\n\t\t\t},\n\t\t\tcornerRadius: 10,\n\t\t\tgap: 10,\n\t\t\ticonSize: 22,\n\t\t\ttextStyle: { fontSize: \"18px\" },\n\t\t\tIcon: { size: 22 }\n\t\t}\n\t}, j = {\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tbackgroundAlpha: .95,\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tpadding: 2,\n\t\titemHeight: 36,\n\t\titemGap: 1,\n\t\titemPadding: {\n\t\t\tleft: 12,\n\t\t\tright: 12,\n\t\t\ttop: 6,\n\t\t\tbottom: 6\n\t\t},\n\t\titemCornerRadius: 5,\n\t\titemStyle: {\n\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\tbackgroundAlpha: 0,\n\t\t\tborderWidth: 0\n\t\t},\n\t\titemHoverStyle: {\n\t\t\tbackgroundColor: n.surface.medium.toNumber(),\n\t\t\tbackgroundAlpha: .55\n\t\t},\n\t\titemSelectedStyle: {\n\t\t\tbackgroundColor: n.primary.dark.toNumber(),\n\t\t\tbackgroundAlpha: 1,\n\t\t\tborderColor: n.primary.dark.toNumber(),\n\t\t\tborderWidth: 1\n\t\t},\n\t\titemDisabledStyle: { alpha: .45 },\n\t\tdisabledAlpha: .5,\n\t\ttextStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: l(n.surface.dark.toNumber(), a)\n\t\t},\n\t\tselectedTextStyle: {\n\t\t\tcolor: l(n.primary.dark.toNumber(), i),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tdisabledTextStyle: { color: n.text.light.toString() },\n\t\temptyStyle: {\n\t\t\tcolor: l(n.surface.dark.toNumber(), a),\n\t\t\tfontSize: \"14px\"\n\t\t},\n\t\tlabels: { empty: \"No items\" }\n\t}, M = {\n\t\tbuttonVariant: \"secondary\",\n\t\tbuttonSize: \"medium\",\n\t\tplacement: \"bottom-start\",\n\t\twidth: 220,\n\t\tgap: 6,\n\t\ticonGap: 8\n\t}, N = {\n\t\tbackdropColor: 0,\n\t\tbackdropOpacity: .5,\n\t\topenDuration: 320,\n\t\tcloseDuration: 260\n\t}, P = {\n\t\tgap: 10,\n\t\tpadding: 0,\n\t\tvalueWidth: 78,\n\t\tcontrolHeight: 34,\n\t\tcontrolGap: 0,\n\t\tbuttonControlSize: 34,\n\t\tbuttonGap: 0,\n\t\tbuttonPlacement: \"split\",\n\t\tbuttonDirection: \"row\",\n\t\tbuttonVariant: \"secondary\",\n\t\tbuttonSize: \"small\",\n\t\tbuttonTextStyle: {\n\t\t\t...r.DEFAULT,\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tbuttonIndicatorColor: n.text.DEFAULT.toNumber(),\n\t\tbuttonIndicatorActiveColor: n.surface.DEFAULT.toNumber(),\n\t\tlabelPosition: \"left\",\n\t\tvalueBackgroundColor: n.surface.light.toNumber(),\n\t\tvalueBackgroundAlpha: 1,\n\t\tvalueBorderColor: n.border.medium.toNumber(),\n\t\tvalueBorderWidth: 1,\n\t\tvalueCornerRadius: 0,\n\t\tvaluePadding: {\n\t\t\tleft: 6,\n\t\t\tright: 6,\n\t\t\ttop: 4,\n\t\t\tbottom: 4\n\t\t},\n\t\tdisabledAlpha: .5,\n\t\trepeatOnHold: !0,\n\t\tholdDelay: 350,\n\t\trepeatInterval: 90,\n\t\tlabelStyle: {\n\t\t\t...r.medium,\n\t\t\tcolor: n.text.DEFAULT.toString()\n\t\t},\n\t\tvalueStyle: {\n\t\t\t...r.medium,\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tlabels: {\n\t\t\tdecrement: \"-\",\n\t\t\tincrement: \"+\",\n\t\t\tvalue: \"Value\"\n\t\t},\n\t\tButton: {\n\t\t\tminWidth: 34,\n\t\t\twidth: 34,\n\t\t\theight: 34,\n\t\t\tpadding: 0,\n\t\t\tcornerRadius: 0,\n\t\t\tbackgroundColor: n.primary.dark.toNumber(),\n\t\t\tborderColor: n.primary.dark.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\ttextStyle: {\n\t\t\t\t...r.DEFAULT,\n\t\t\t\tfontStyle: \"bold\",\n\t\t\t\tcolor: o(n, \"text/on-brand\", n.primary.dark.toNumber())\n\t\t\t}\n\t\t}\n\t}, F = {\n\t\tcolumns: 6,\n\t\tswatchSize: 28,\n\t\tswatchGap: 8,\n\t\trowGap: 8,\n\t\titemWidth: 28,\n\t\tswatchCornerRadius: 5,\n\t\tswatchBorderColor: n.border.medium.toNumber(),\n\t\tswatchBorderWidth: 1,\n\t\tswatchSelectedBorderColor: n.surface.lightest.toNumber(),\n\t\tswatchSelectedBorderWidth: 3,\n\t\tswatchDisabledAlpha: .45,\n\t\tselectedCheckColor: n.surface.lightest.toNumber(),\n\t\tdisabledAlpha: .5,\n\t\tshowTitle: !0,\n\t\tshowHex: !1,\n\t\tpadding: 0,\n\t\tgap: 10,\n\t\ttitleStyle: {\n\t\t\t...r.medium,\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\temptyStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: n.text.light.toString()\n\t\t},\n\t\thexStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: n.text.light.toString()\n\t\t},\n\t\tlabels: {\n\t\t\ttitle: \"Palette\",\n\t\t\tempty: \"No colors\"\n\t\t}\n\t}, I = {\n\t\twidth: 240,\n\t\theight: 22,\n\t\torientation: \"horizontal\",\n\t\tlabelPosition: \"right\",\n\t\ttrackColor: n.surface.dark.toNumber(),\n\t\tfillColor: n.success.DEFAULT.toNumber(),\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 11,\n\t\tgap: 8,\n\t\tdisabledAlpha: .5,\n\t\tlabelStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"13px\"\n\t\t}\n\t}, L = {\n\t\twidth: \"fill\",\n\t\tbarHeight: 24,\n\t\tgap: 8,\n\t\tlabelStyle: {\n\t\t\tcolor: \"#e0e7ff\",\n\t\t\tfontSize: \"14px\"\n\t\t},\n\t\tpercentageStyle: {\n\t\t\tcolor: \"#9fb3c8\",\n\t\t\tfontSize: \"13px\"\n\t\t},\n\t\tcancelButtonSize: \"small\",\n\t\tlabels: {\n\t\t\tcancel: \"Cancel\",\n\t\t\tloading: \"Loading...\"\n\t\t}\n\t}, R = {\n\t\ttrackColor: n.surface.dark.toNumber(),\n\t\ttrackFilledColor: n.primary.dark.toNumber(),\n\t\ttrackHeight: 6,\n\t\ttrackBorderRadius: 3,\n\t\ttrackLength: 200,\n\t\ttrackHoverColor: n.surface.dark.toNumber(),\n\t\tthumbColor: n.primary.light.toNumber(),\n\t\tthumbSize: 20,\n\t\tthumbBorderColor: n.border.light.toNumber(),\n\t\tthumbBorderWidth: 2,\n\t\tthumbHoverColor: n.primary.light.toNumber(),\n\t\tthumbActiveColor: n.primary.dark.toNumber(),\n\t\tthumbDragScale: 1.1,\n\t\tmarkColor: n.border.medium.toNumber(),\n\t\tmarkHeight: 8,\n\t\tmarkWidth: 2,\n\t\tlabelStyle: r.small,\n\t\tlabelOffset: 10,\n\t\tvalueLabel: {\n\t\t\tbackgroundColor: n.background.dark.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\t...r.small,\n\t\t\t\tcolor: n.text.light.toString()\n\t\t\t},\n\t\t\tpadding: {\n\t\t\t\tleft: 6,\n\t\t\t\tright: 6,\n\t\t\t\ttop: 4,\n\t\t\t\tbottom: 4\n\t\t\t},\n\t\t\tcornerRadius: 4,\n\t\t\toffset: 8\n\t\t},\n\t\tminDistance: 0,\n\t\tdisabledAlpha: .4\n\t}, z = {\n\t\tselectedColor: n.primary.DEFAULT.toNumber(),\n\t\tcolor: n.border.dark.toNumber(),\n\t\tborderWidth: 2,\n\t\tgap: 8,\n\t\tsize: 18,\n\t\tinnerSize: 8,\n\t\tdisabledAlpha: .5,\n\t\tlabelPosition: \"right\",\n\t\tlabelStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"14px\"\n\t\t}\n\t}, ee = {\n\t\tdirection: \"column\",\n\t\tgap: 8\n\t}, B = {\n\t\tsize: \"medium\",\n\t\tgap: 4,\n\t\ticonSize: 24,\n\t\tfilledColor: \"#fbbf24\",\n\t\temptyColor: \"#475569\",\n\t\tdisabledAlpha: .5,\n\t\tlabelStyle: {\n\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\tfontSize: \"13px\"\n\t\t},\n\t\tlabels: { rating: \"\" }\n\t}, V = {\n\t\tvariant: \"solid\",\n\t\tsize: \"md\",\n\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\tbackgroundAlpha: 1,\n\t\tpadding: 16,\n\t\tgap: 8,\n\t\tdividerColor: n.border.light.toNumber(),\n\t\titemGap: 8,\n\t\tsectionGap: 10,\n\t\theaderStyle: {\n\t\t\tgap: 10,\n\t\t\tpadding: {\n\t\t\t\ttop: 0,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: 6,\n\t\t\t\tleft: 0\n\t\t\t},\n\t\t\twidth: \"fill\"\n\t\t},\n\t\tfooterStyle: {\n\t\t\tgap: 8,\n\t\t\tpadding: {\n\t\t\t\ttop: 6,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: 0,\n\t\t\t\tleft: 0\n\t\t\t},\n\t\t\twidth: \"fill\"\n\t\t},\n\t\tsectionStyle: {\n\t\t\tgap: 8,\n\t\t\tpadding: {\n\t\t\t\ttop: 4,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: 8,\n\t\t\t\tleft: 0\n\t\t\t},\n\t\t\twidth: \"fill\",\n\t\t\ttitleStyle: {\n\t\t\t\t...r.medium,\n\t\t\t\tcolor: n.text.dark.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t}\n\t\t},\n\t\titemStyle: {\n\t\t\tgap: 8,\n\t\t\tpadding: {\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8,\n\t\t\t\tleft: 10,\n\t\t\t\tright: 10\n\t\t\t},\n\t\t\twidth: \"fill\",\n\t\t\tcornerRadius: 8,\n\t\t\tbackgroundColor: n.surface.lightest.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\t...r.medium,\n\t\t\t\tcolor: n.text.dark.toString()\n\t\t\t},\n\t\t\tactive: {\n\t\t\t\tbackgroundColor: n.primary.lightest.toNumber(),\n\t\t\t\tborderColor: n.primary.light.toNumber(),\n\t\t\t\tborderWidth: 1,\n\t\t\t\tbackgroundAlpha: .9\n\t\t\t},\n\t\t\tdisabledAlpha: .5\n\t\t},\n\t\tbadgeStyle: {\n\t\t\tbackgroundColor: n.primary.light.toNumber(),\n\t\t\tbackgroundAlpha: .15,\n\t\t\tcornerRadius: 6,\n\t\t\tpadding: {\n\t\t\t\ttop: 4,\n\t\t\t\tbottom: 4,\n\t\t\t\tleft: 8,\n\t\t\t\tright: 8\n\t\t\t},\n\t\t\ttextStyle: {\n\t\t\t\t...r.small,\n\t\t\t\tcolor: o(n, \"text/strong\", n.primary.light.toNumber()),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t}\n\t\t},\n\t\tvariants: {\n\t\t\tsolid: {\n\t\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\t\tborderColor: n.border.light.toNumber(),\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\tmuted: {\n\t\t\t\tbackgroundColor: n.surface.medium.toNumber(),\n\t\t\t\tbackgroundAlpha: .85,\n\t\t\t\tborderColor: n.border.light.toNumber(),\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\tghost: {\n\t\t\t\tbackgroundColor: n.background.lightest.toNumber(),\n\t\t\t\tbackgroundAlpha: .6,\n\t\t\t\tborderWidth: 0\n\t\t\t},\n\t\t\tinset: {\n\t\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\t\tbackgroundAlpha: 1,\n\t\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\t\tborderWidth: 1\n\t\t\t}\n\t\t},\n\t\tsizes: {\n\t\t\tsm: {\n\t\t\t\tpadding: 10,\n\t\t\t\tgap: 6\n\t\t\t},\n\t\t\tmd: {\n\t\t\t\tpadding: 16,\n\t\t\t\tgap: 8\n\t\t\t},\n\t\t\tlg: {\n\t\t\t\tpadding: {\n\t\t\t\t\ttop: 20,\n\t\t\t\t\tbottom: 20,\n\t\t\t\t\tleft: 16,\n\t\t\t\t\tright: 16\n\t\t\t\t},\n\t\t\t\tgap: 12\n\t\t\t}\n\t\t}\n\t}, H = {\n\t\ttabListStyle: {\n\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\tpadding: {\n\t\t\t\tleft: 8,\n\t\t\t\tright: 8,\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 0\n\t\t\t},\n\t\t\tcornerRadius: {\n\t\t\t\ttl: 6,\n\t\t\t\ttr: 6,\n\t\t\t\tbl: 0,\n\t\t\t\tbr: 0\n\t\t\t},\n\t\t\twidth: \"fill\",\n\t\t\tgap: 10,\n\t\t\talignItems: \"end\",\n\t\t\tjustifyContent: \"start\"\n\t\t},\n\t\ttabStyle: {\n\t\t\tbackgroundColor: n.surface.medium.toNumber(),\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tpadding: {\n\t\t\t\tleft: 8,\n\t\t\t\tright: 8,\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 3\n\t\t\t},\n\t\t\tcornerRadius: {\n\t\t\t\ttl: 6,\n\t\t\t\ttr: 6,\n\t\t\t\tbl: 0,\n\t\t\t\tbr: 0\n\t\t\t}\n\t\t},\n\t\ttabActiveStyle: {\n\t\t\tpadding: {\n\t\t\t\tleft: 8,\n\t\t\t\tright: 8,\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8\n\t\t\t},\n\t\t\tbackgroundColor: n.primary.DEFAULT.toNumber(),\n\t\t\tborderColor: n.primary.dark.toNumber(),\n\t\t\tborderWidth: 2\n\t\t},\n\t\ttabDisabledStyle: { alpha: .4 },\n\t\tpanelStyle: {\n\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tpadding: 10,\n\t\t\tcornerRadius: {\n\t\t\t\ttl: 0,\n\t\t\t\ttr: 0,\n\t\t\t\tbl: 6,\n\t\t\t\tbr: 6\n\t\t\t},\n\t\t\twidth: \"fill\"\n\t\t}\n\t}, U = {\n\t\tvariant: \"info\",\n\t\twidth: 320,\n\t\tminHeight: 58,\n\t\tgap: 10,\n\t\tcontentGap: 2,\n\t\taccentWidth: 4,\n\t\tprefixWidth: 24,\n\t\tpadding: {\n\t\t\tleft: 10,\n\t\t\tright: 10,\n\t\t\ttop: 9,\n\t\t\tbottom: 9\n\t\t},\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tbackgroundAlpha: .98,\n\t\tborderColor: n.border.dark.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tcloseButtonSize: 24,\n\t\ttitleStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: o(n, \"text/strong\", n.surface.dark.toNumber()),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tmessageStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: o(n, \"text/muted\", n.surface.dark.toNumber())\n\t\t},\n\t\tcloseTextStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: o(n, \"text/muted\", n.surface.dark.toNumber()),\n\t\t\tfontStyle: \"normal\"\n\t\t},\n\t\tlabels: { close: \"x\" },\n\t\tvariants: {\n\t\t\tinfo: {\n\t\t\t\taccentColor: n.info.DEFAULT.toNumber(),\n\t\t\t\tborderColor: n.info.dark.toNumber()\n\t\t\t},\n\t\t\tsuccess: {\n\t\t\t\taccentColor: n.success.DEFAULT.toNumber(),\n\t\t\t\tborderColor: n.success.dark.toNumber()\n\t\t\t},\n\t\t\twarning: {\n\t\t\t\taccentColor: n.warning.DEFAULT.toNumber(),\n\t\t\t\tborderColor: n.warning.dark.toNumber()\n\t\t\t},\n\t\t\terror: {\n\t\t\t\taccentColor: n.error.DEFAULT.toNumber(),\n\t\t\t\tborderColor: n.error.dark.toNumber()\n\t\t\t}\n\t\t},\n\t\tButton: { ghost: {\n\t\t\tpadding: 0,\n\t\t\tbackgroundAlpha: 0,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: n.text.light.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t}\n\t\t} }\n\t}, W = {\n\t\tposition: \"top-right\",\n\t\twidth: 320,\n\t\tgap: 8,\n\t\toffset: 16,\n\t\tduration: 4e3,\n\t\tdepth: 1200\n\t}, G = {\n\t\twrap: !0,\n\t\tpaddingOffset: 0,\n\t\ttextStyle: r.DEFAULT\n\t}, K = {\n\t\tborderColor: n.border.medium.toNumber(),\n\t\ttrackColor: n.surface.dark.toNumber(),\n\t\ttrackCornerRadius: 0,\n\t\tthumbColor: n.primary.DEFAULT.toNumber(),\n\t\tthumbActiveColor: n.primary.dark.toNumber(),\n\t\tthumbBorderColor: n.primary.light.toNumber(),\n\t\tthumbBorderWidth: 1,\n\t\tthumbCornerRadius: 0,\n\t\tborderWidth: 1,\n\t\tcornerRadius: 0,\n\t\tminThumbSize: 30,\n\t\tsize: 24\n\t}, q = {\n\t\tshowVerticalSlider: \"auto\",\n\t\tshowHorizontalSlider: \"auto\"\n\t}, J = {\n\t\trowTextStyle: r.small,\n\t\tvalueTextStyle: r.small,\n\t\trowGap: 4,\n\t\tcolumnGap: 8\n\t}, Y = {\n\t\tbackgroundColor: n.surface.DEFAULT.toNumber(),\n\t\tcornerRadius: 8,\n\t\tmaxWidth: 600,\n\t\tshowClose: !0,\n\t\tHeader: {\n\t\t\tpadding: {\n\t\t\t\tleft: 24,\n\t\t\t\tright: 24,\n\t\t\t\ttop: 20,\n\t\t\t\tbottom: 16\n\t\t\t},\n\t\t\tgap: 12,\n\t\t\tborderColor: n.border.light.toNumber(),\n\t\t\tcloseButton: {\n\t\t\t\tsize: 32,\n\t\t\t\tcornerRadius: 4,\n\t\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\t\tborderColor: n.border.light.toNumber(),\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\ttextStyle: r.heading\n\t\t},\n\t\tContent: {\n\t\t\tpadding: {\n\t\t\t\tleft: 24,\n\t\t\t\tright: 24,\n\t\t\t\ttop: 16,\n\t\t\t\tbottom: 16\n\t\t\t},\n\t\t\tgap: 12\n\t\t},\n\t\tActions: {\n\t\t\tpadding: {\n\t\t\t\tleft: 24,\n\t\t\t\tright: 24,\n\t\t\t\ttop: 16,\n\t\t\t\tbottom: 20\n\t\t\t},\n\t\t\tgap: 12,\n\t\t\tjustifyContent: \"end\",\n\t\t\tborderColor: n.border.light.toNumber()\n\t\t}\n\t}, X = {\n\t\tmaxWidth: 500,\n\t\tvariants: {\n\t\t\tinfo: {},\n\t\t\twarning: {},\n\t\t\tdestructive: {},\n\t\t\tsuccess: {}\n\t\t}\n\t}, Z = {\n\t\tbackdropAlpha: .5,\n\t\tbackdropColor: 0,\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tbackgroundAlpha: 1,\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tpanelCornerRadius: 16,\n\t\thandleWidth: 36,\n\t\thandleHeight: 5,\n\t\thandleColor: n.border.dark.toNumber()\n\t}, Q = {\n\t\tplacement: \"bottom\",\n\t\toffset: 8,\n\t\tdepth: 1100,\n\t\tcloseOnOutside: !0,\n\t\tcloseOnEscape: !0,\n\t\tviewportPadding: 8,\n\t\topenDuration: 120,\n\t\tcloseDuration: 100,\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tpadding: 10,\n\t\tgap: 8\n\t}, $ = {\n\t\twidth: 220,\n\t\titemHeight: 34,\n\t\titemGap: 8,\n\t\titemPadding: {\n\t\t\tleft: 10,\n\t\t\tright: 10,\n\t\t\ttop: 6,\n\t\t\tbottom: 6\n\t\t},\n\t\titemCornerRadius: 5,\n\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tpadding: 6,\n\t\tgap: 2,\n\t\ttextStyle: {\n\t\t\t...r.small,\n\t\t\tcolor: n.text.medium.toString()\n\t\t},\n\t\tdisabledTextColor: n.text.lightest.toString(),\n\t\tdangerTextColor: n.error.darkest.toString(),\n\t\tdangerBackgroundColor: n.error.dark.toNumber()\n\t}, te = {\n\t\torientation: \"horizontal\",\n\t\tthickness: 1,\n\t\tcolor: n.border.medium.toNumber()\n\t}, ne = {\n\t\ttrigger: {\n\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tcornerRadius: 7,\n\t\t\tpadding: {\n\t\t\t\tleft: 12,\n\t\t\t\tright: 10,\n\t\t\t\ttop: 9,\n\t\t\t\tbottom: 9\n\t\t\t},\n\t\t\twidth: \"fill\",\n\t\t\tgap: 8\n\t\t},\n\t\ttriggerHover: { borderColor: n.primary.DEFAULT.toNumber() },\n\t\ttriggerOpen: {\n\t\t\tborderColor: n.primary.DEFAULT.toNumber(),\n\t\t\tborderWidth: 2,\n\t\t\tbackgroundColor: n.surface.lightest.toNumber()\n\t\t},\n\t\ttriggerDisabled: {\n\t\t\tbackgroundColor: n.surface.light.toNumber(),\n\t\t\talpha: .5\n\t\t},\n\t\tarrow: {\n\t\t\tcolor: n.text.dark.toString(),\n\t\t\tsize: 12\n\t\t},\n\t\tselectionIndicator: {\n\t\t\tcolor: n.primary.dark.toString(),\n\t\t\tsize: 16\n\t\t},\n\t\toverlay: {\n\t\t\tbackgroundColor: n.surface.lightest.toNumber(),\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tcornerRadius: 7,\n\t\t\tmaxHeight: 300,\n\t\t\tpadding: 6\n\t\t},\n\t\toption: {\n\t\t\tpadding: {\n\t\t\t\tleft: 10,\n\t\t\t\tright: 10,\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8\n\t\t\t},\n\t\t\tcornerRadius: 5,\n\t\t\tgap: 8\n\t\t},\n\t\toptionSelected: {\n\t\t\tbackgroundColor: n.primary.lightest.toNumber(),\n\t\t\tborderColor: n.primary.light.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tbackgroundAlpha: .9\n\t\t},\n\t\toptionDisabled: { alpha: .3 },\n\t\toptionGap: 2,\n\t\tfilterInput: {\n\t\t\tbackgroundColor: n.surface.lightest.toNumber(),\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tcornerRadius: 6,\n\t\t\tpadding: {\n\t\t\t\tleft: 10,\n\t\t\t\tright: 10,\n\t\t\t\ttop: 6,\n\t\t\t\tbottom: 6\n\t\t\t},\n\t\t\twidth: \"calc(100% - 20px)\"\n\t\t},\n\t\ttextStyle: {\n\t\t\t...r.DEFAULT,\n\t\t\tcolor: n.text.DEFAULT.toString()\n\t\t},\n\t\tplaceholderStyle: {\n\t\t\t...r.DEFAULT,\n\t\t\tcolor: n.text.light.toString()\n\t\t},\n\t\tanimationConfig: \"stiff\"\n\t}, re = {\n\t\tcharSpacing: 2,\n\t\tcursorColor: n.secondary.DEFAULT.toNumber(),\n\t\tcursorWidth: 3,\n\t\tcursorBlinkSpeed: 530,\n\t\tselectionColor: n.accent.DEFAULT.toNumber(),\n\t\tselectionAlpha: .75,\n\t\tlineHeight: 1.2,\n\t\twordWrap: !1,\n\t\tdisabledBackgroundColor: n.surface.medium.toNumber(),\n\t\tdisabledBorderColor: n.border.light.toNumber(),\n\t\tdisabledAlpha: .6,\n\t\tfocusedBorderColor: n.primary.DEFAULT.toNumber(),\n\t\tbackgroundColor: n.surface.lightest.toNumber(),\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 7,\n\t\tpadding: 10,\n\t\ttextStyle: {\n\t\t\t...r.DEFAULT,\n\t\t\tcolor: n.text.dark.toString()\n\t\t},\n\t\tplaceholderStyle: {\n\t\t\t...r.DEFAULT,\n\t\t\tcolor: n.text.light.toString()\n\t\t}\n\t}, ie = {\n\t\tposition: \"top\",\n\t\tshowDelay: 1e3,\n\t\thideDelay: 500,\n\t\toffset: 8,\n\t\ttextStyle: {\n\t\t\tfontSize: \"12px\",\n\t\t\tfontFamily: \"Arial\",\n\t\t\tcolor: n.text.dark.toString(),\n\t\t\tbackgroundColor: n.warning.medium.toString(),\n\t\t\tpadding: {\n\t\t\t\tx: 2,\n\t\t\t\ty: 2\n\t\t\t}\n\t\t},\n\t\tcornerRadius: 8,\n\t\tanimation: {\n\t\t\tfadeIn: 200,\n\t\t\tfadeOut: 200,\n\t\t\tmove: {\n\t\t\t\tdx: 0,\n\t\t\t\tdy: -20\n\t\t\t},\n\t\t\tpulse: !1,\n\t\t\tpulseScale: [.75, 1.25]\n\t\t}\n\t}, ae = {\n\t\tsize: \"medium\",\n\t\ttextColor: n.text.light.toString(),\n\t\toverlayAlpha: .85,\n\t\tbackgroundColor: n.surface.darkest.toNumber(),\n\t\tbackgroundAlpha: .95,\n\t\tborderColor: n.border.medium.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\titemHeight: 40,\n\t\tvisibleItems: 5,\n\t\titemPadding: {\n\t\t\tleft: 12,\n\t\t\tright: 12\n\t\t},\n\t\tdisabledAlpha: .5,\n\t\ttextStyle: {\n\t\t\t...r.medium,\n\t\t\tcolor: l(n.surface.darkest.toNumber(), a)\n\t\t},\n\t\tselectedTextStyle: {\n\t\t\t...r.medium,\n\t\t\tcolor: l(n.surface.darkest.toNumber(), a),\n\t\t\tfontStyle: \"bold\"\n\t\t},\n\t\tdisabledTextStyle: { color: n.text.lightest.toString() },\n\t\tlabels: { empty: \"No items\" }\n\t};\n\treturn {\n\t\tView: u,\n\t\tText: d,\n\t\tIcon: f,\n\t\tImage: p,\n\t\tSprite: m,\n\t\tActivityIndicator: h,\n\t\tAccordion: v,\n\t\tAlertDialog: X,\n\t\tBadge: y,\n\t\tTag: b,\n\t\tBottomSheet: Z,\n\t\tButton: A,\n\t\tCheckbox: _,\n\t\tColorPicker: g,\n\t\tContextMenu: $,\n\t\tDebugPanel: J,\n\t\tDialog: Y,\n\t\tDivider: te,\n\t\tDropdown: ne,\n\t\tListBox: j,\n\t\tMenuButton: M,\n\t\tModal: N,\n\t\tNumberInput: P,\n\t\tPalettePicker: F,\n\t\tPopover: Q,\n\t\tProgressBar: I,\n\t\tProgressView: L,\n\t\tRadioButton: z,\n\t\tRadioGroup: ee,\n\t\tRatingBar: B,\n\t\tSidebar: V,\n\t\tNotificationStack: W,\n\t\tTabs: H,\n\t\tTextInput: re,\n\t\tToast: U,\n\t\tToolbar: {\n\t\t\torientation: \"horizontal\",\n\t\t\tdensity: \"normal\",\n\t\t\titemWidth: 42,\n\t\t\titemHeight: 36,\n\t\t\tcompactItemWidth: 38,\n\t\t\tcompactItemHeight: 38,\n\t\t\titemGap: 6,\n\t\t\ticonSize: 18,\n\t\t\tcompactIconSize: 16,\n\t\t\tbuttonSize: \"small\",\n\t\t\tcompactButtonSize: \"small\",\n\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\tbackgroundAlpha: .92,\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tcornerRadius: 8,\n\t\t\tpadding: 4,\n\t\t\tgap: 6,\n\t\t\tseparatorColor: n.border.medium.toNumber(),\n\t\t\tseparatorThickness: 1,\n\t\t\tseparatorLength: 26,\n\t\t\tdisabledAlpha: .55,\n\t\t\ttextStyle: {\n\t\t\t\t...r.small,\n\t\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tactiveTextStyle: {\n\t\t\t\tcolor: n.text.DEFAULT.toString(),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tdisabledTextStyle: { color: n.text.lightest.toString() },\n\t\t\tmenuIndicatorStyle: {\n\t\t\t\t...r.small,\n\t\t\t\tcolor: n.text.light.toString()\n\t\t\t},\n\t\t\tlabels: {\n\t\t\t\toverflow: \"More\",\n\t\t\t\tmenuIndicator: \"v\"\n\t\t\t},\n\t\t\tIcon: { tint: n.text.DEFAULT.toNumber() },\n\t\t\tButton: {\n\t\t\t\tminWidth: 0,\n\t\t\t\tpadding: {\n\t\t\t\t\tleft: 8,\n\t\t\t\t\tright: 8,\n\t\t\t\t\ttop: 4,\n\t\t\t\t\tbottom: 4\n\t\t\t\t},\n\t\t\t\tcornerRadius: 5,\n\t\t\t\tgap: 6\n\t\t\t}\n\t\t},\n\t\tWrapText: G,\n\t\tWheelPicker: ae,\n\t\tScrollSlider: K,\n\t\tScrollView: q,\n\t\tSegmentedControl: {\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"medium\",\n\t\t\tvariant: \"solid\",\n\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\tbackgroundAlpha: .95,\n\t\t\tborderColor: n.border.medium.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\tcornerRadius: 8,\n\t\t\tpadding: 3,\n\t\t\tgap: 8,\n\t\t\tsegmentGap: 0,\n\t\t\tsegmentWidth: 92,\n\t\t\tsegmentHeight: 34,\n\t\t\tsegmentPadding: {\n\t\t\t\tleft: 10,\n\t\t\t\tright: 10,\n\t\t\t\ttop: 6,\n\t\t\t\tbottom: 6\n\t\t\t},\n\t\t\tsegmentCornerRadius: 6,\n\t\t\tsegmentStyle: {\n\t\t\t\tbackgroundColor: n.surface.dark.toNumber(),\n\t\t\t\tbackgroundAlpha: 0,\n\t\t\t\tborderWidth: 0\n\t\t\t},\n\t\t\tsegmentHoverStyle: {\n\t\t\t\tbackgroundColor: n.surface.medium.toNumber(),\n\t\t\t\tbackgroundAlpha: .55\n\t\t\t},\n\t\t\tsegmentSelectedStyle: {\n\t\t\t\tbackgroundColor: n.primary.dark.toNumber(),\n\t\t\t\tbackgroundAlpha: 1,\n\t\t\t\tborderColor: n.primary.dark.toNumber(),\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\tsegmentDisabledStyle: { alpha: .45 },\n\t\t\ticonGap: 6,\n\t\t\ticonSize: 16,\n\t\t\tdisabledAlpha: .5,\n\t\t\tlabelPosition: \"none\",\n\t\t\tlabelStyle: {\n\t\t\t\t...r.medium,\n\t\t\t\tcolor: n.text.DEFAULT.toString()\n\t\t\t},\n\t\t\ttextStyle: {\n\t\t\t\t...r.small,\n\t\t\t\tcolor: o(n, \"text/default\", n.surface.dark.toNumber()),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tselectedTextStyle: {\n\t\t\t\tcolor: o(n, \"text/on-brand\", n.primary.dark.toNumber()),\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tdisabledTextStyle: { color: n.text.lightest.toString() },\n\t\t\tlabels: { group: \"Options\" }\n\t\t},\n\t\tSlider: R,\n\t\tTooltip: ie,\n\t\tToggle: {\n\t\t\twidth: 50,\n\t\t\theight: 28,\n\t\t\tthumbSize: 24,\n\t\t\ttrackColorOff: n.surface.dark.toNumber(),\n\t\t\ttrackColorOn: n.primary.DEFAULT.toNumber(),\n\t\t\ttrackBorderColorOff: n.border.medium.toNumber(),\n\t\t\ttrackBorderColorOn: n.primary.dark.toNumber(),\n\t\t\ttrackBorderWidth: 1,\n\t\t\tthumbColor: n.surface.lightest.toNumber(),\n\t\t\tthumbBorderColor: n.border.light.toNumber(),\n\t\t\tthumbBorderWidth: 1,\n\t\t\tdisabledColor: n.border.medium.toNumber(),\n\t\t\tdisabledAlpha: .5,\n\t\t\tpadding: 2,\n\t\t\tduration: 200,\n\t\t\tgap: 8,\n\t\t\tlabelStyle: r.DEFAULT,\n\t\t\tlabelPosition: \"right\"\n\t\t}\n\t};\n}\nfunction d(e = \"oceanBlue\", t = \"light\") {\n\treturn u(r(e, t).colors);\n}\nvar f = d();\nfunction p() {\n\tfor (let e of Object.keys(f)) a(e, (t) => u(t)[e]);\n}\n//#endregion\nexport { u as buildPortableThemeDefaults, d as createPortableThemeDefaults, p as registerPortableDefaults };\n","import { PRIMITIVE_NODES as e, jsx as t } from \"@number10/jsx-core\";\n//#region src/primitives/Sprite.ts\nfunction n(n) {\n\treturn t(e.Sprite, n);\n}\n//#endregion\nexport { n as Sprite };\n","import { PRIMITIVE_NODES as e, jsx as t, normalizeTextColor as n } from \"@number10/jsx-core\";\n//#region src/primitives/Text.ts\nfunction r(r) {\n\tlet i = { ...r.style ?? {} };\n\tif (i.color !== void 0) {\n\t\tlet e = n(i.color);\n\t\te !== void 0 && (i.color = e);\n\t}\n\treturn t(e.Text, {\n\t\t...r,\n\t\tstyle: i\n\t});\n}\n//#endregion\nexport { r as Text };\n","import { PRIMITIVE_NODES as e, jsx as t } from \"@number10/jsx-core\";\n//#region src/primitives/VectorDrawContent.ts\nfunction n(n) {\n\treturn t(e.VectorDrawContent, n);\n}\n//#endregion\nexport { n as VectorDrawContent };\n","import { PRIMITIVE_NODES as e, jsx as t } from \"@number10/jsx-core\";\n//#region src/primitives/View.ts\nfunction n(n) {\n\treturn t(e.View, n);\n}\n//#endregion\nexport { n as View };\n","import { PRIMITIVE_NODES as e, jsx as t } from \"@number10/jsx-core\";\n//#region src/primitives/Image.ts\nfunction n(n) {\n\treturn t(e.Image, n);\n}\n//#endregion\nexport { n as Image };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, applyEffect as r, getGlobalThemeDefaults as i, resolveComponentTheme as a, resolveEffect as o, useForceRedraw as s, useLayoutEffect as c, useRef as l, useSpring as u, useState as d, useTheme as f } from \"@number10/jsx-core\";\nimport { jsx as p, jsxs as m } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Accordion.tsx\nfunction h(h) {\n\tlet g = f(), { props: _, nestedTheme: v } = a({\n\t\tcomponentName: \"Accordion\",\n\t\tglobalTheme: i(),\n\t\tlocalTheme: g,\n\t\tknownComponents: n\n\t}), [y, b] = d(h.defaultOpen ?? !1), x = h.isOpen === void 0 ? y : h.isOpen, S = l(null), C = l(null), w = h.animated ?? _.animated ?? !1, T = h.autoHeight ?? _.autoHeight ?? w, E = h.maxHeight ?? _.maxHeight ?? 200, D = h.animationConfig ?? _.animationConfig ?? \"gentle\", [O, k] = d(E);\n\tc(() => {\n\t\tif (T && x && C.current) {\n\t\t\tlet e = C.current.height ?? E;\n\t\t\tk(e), j(e);\n\t\t}\n\t}, [x, T]);\n\tlet [A, j] = u(x ? T ? O : E : 0, D, h.onAnimationEnd);\n\tw && s(20, A);\n\tlet M = Math.max(0, A.value), N = w ? M : x ? void 0 : 0, P = w ? M > .5 : x, F = () => {\n\t\tlet e = !x;\n\t\tb(e), w && j(e ? T ? O : E : 0), h.onToggle?.(e);\n\t\tlet t = o(h, _);\n\t\tr(S.current, t.effect, t.effectConfig);\n\t}, I = _.headerStyle ?? {}, L = _.contentStyle ?? {}, R = _.textStyle;\n\treturn /* @__PURE__ */ m(t, {\n\t\twidth: h.width,\n\t\theight: h.height,\n\t\tdirection: \"column\",\n\t\t..._,\n\t\ttheme: v,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ p(t, {\n\t\t\t\tref: S,\n\t\t\t\tdirection: \"row\",\n\t\t\t\talignItems: \"center\",\n\t\t\t\tenableGestures: !0,\n\t\t\t\tonTouch: F,\n\t\t\t\t...I,\n\t\t\t\tchildren: typeof h.title == \"string\" ? /* @__PURE__ */ p(e, {\n\t\t\t\t\ttext: h.title,\n\t\t\t\t\t...R && { style: R }\n\t\t\t\t}) : h.title\n\t\t\t}),\n\t\t\tT && /* @__PURE__ */ p(t, {\n\t\t\t\tvisible: !1,\n\t\t\t\tdirection: \"stack\",\n\t\t\t\theadless: !0,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t\tchildren: /* @__PURE__ */ p(t, {\n\t\t\t\t\tref: C,\n\t\t\t\t\t...L,\n\t\t\t\t\tchildren: h.children\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ p(t, {\n\t\t\t\tdirection: \"column\",\n\t\t\t\theight: N,\n\t\t\t\toverflow: \"hidden\",\n\t\t\t\tvisible: P,\n\t\t\t\t...L,\n\t\t\t\tchildren: h.children\n\t\t\t})\n\t\t]\n\t}, h.key);\n}\n//#endregion\nexport { h as Accordion };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { HexColor as n, KNOWN_COMPONENTS as r, applyEffect as i, getGlobalThemeDefaults as a, getPresetWithMode as o, mergeThemes as s, registerComponentDefaultsIfMissing as c, resolveComponentTheme as l, resolveEffect as u, useRef as d, useTheme as f } from \"@number10/jsx-core\";\nimport { jsx as p } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Button.tsx\nfunction m() {\n\tlet e = o(\"oceanBlue\", \"light\").colors, t = e.primary.dark.toNumber(), r = e.text.lightest.toNumber(), i = e.surface.lightest.toNumber(), a = e.text.dark.toNumber(), s = e.surface.medium.toNumber(), c = e.text.light.toNumber(), l = e.primary.light.toNumber(), u = e.text.light.toNumber(), d = e.error.dark.toNumber(), f = e.text.lightest.toNumber(), p = { medium: {\n\t\tfontSize: \"16px\",\n\t\tfontFamily: \"Arial\",\n\t\tfontStyle: \"bold\"\n\t} };\n\treturn {\n\t\tvariant: \"primary\",\n\t\tsize: \"medium\",\n\t\tdisabledColor: s,\n\t\tdisabledTextColor: \"#\" + new n(c.toString(16).padStart(6, \"0\")).toString(),\n\t\tdisabledIconTint: c,\n\t\tdisabledAlpha: .48,\n\t\theight: 40,\n\t\tbackgroundColor: t,\n\t\tbackgroundAlpha: 1,\n\t\tborderColor: e.primary.darkest.toNumber(),\n\t\tborderWidth: 1,\n\t\tcornerRadius: 8,\n\t\tgap: 8,\n\t\tpadding: {\n\t\t\ttop: 8,\n\t\t\tbottom: 8,\n\t\t\tleft: 16,\n\t\t\tright: 16\n\t\t},\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\teffect: \"press\",\n\t\teffectConfig: {\n\t\t\tintensity: .94,\n\t\t\ttime: 140\n\t\t},\n\t\ticonSize: 18,\n\t\ttextStyle: {\n\t\t\t...p.medium,\n\t\t\tcolor: `#${r.toString(16).padStart(6, \"0\")}`\n\t\t},\n\t\tText: { style: {\n\t\t\t...p.medium,\n\t\t\tcolor: `#${r.toString(16).padStart(6, \"0\")}`\n\t\t} },\n\t\tIcon: {\n\t\t\tsize: 18,\n\t\t\ttint: r\n\t\t},\n\t\tprimary: {\n\t\t\tbackgroundColor: t,\n\t\t\tborderColor: e.primary.darkest.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\tcolor: `#${r.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: r }\n\t\t},\n\t\tsecondary: {\n\t\t\tbackgroundColor: i,\n\t\t\tbackgroundAlpha: .92,\n\t\t\tborderColor: e.border.light.toNumber(),\n\t\t\tborderWidth: 1,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: `#${a.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: a }\n\t\t},\n\t\toutline: {\n\t\t\tbackgroundColor: e.primary.dark.toNumber(),\n\t\t\tbackgroundAlpha: .08,\n\t\t\tborderColor: l,\n\t\t\tborderWidth: 2,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: `#${l.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: l }\n\t\t},\n\t\tghost: {\n\t\t\tbackgroundColor: e.surface.light.toNumber(),\n\t\t\tbackgroundAlpha: .18,\n\t\t\tborderColor: e.border.medium.toNumber(),\n\t\t\tborderAlpha: .35,\n\t\t\tborderWidth: 1,\n\t\t\ttextStyle: {\n\t\t\t\tcolor: `#${u.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: u }\n\t\t},\n\t\tdanger: {\n\t\t\tbackgroundColor: d,\n\t\t\tborderColor: e.error.darkest.toNumber(),\n\t\t\ttextStyle: {\n\t\t\t\tcolor: `#${f.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\tIcon: { tint: f }\n\t\t},\n\t\tsmall: {\n\t\t\theight: 32,\n\t\t\tpadding: {\n\t\t\t\ttop: 6,\n\t\t\t\tbottom: 6,\n\t\t\t\tleft: 12,\n\t\t\t\tright: 12\n\t\t\t},\n\t\t\tcornerRadius: 6,\n\t\t\tgap: 6,\n\t\t\ticonSize: 15,\n\t\t\ttextStyle: { fontSize: \"12px\" },\n\t\t\tIcon: { size: 15 }\n\t\t},\n\t\tmedium: {\n\t\t\theight: 40,\n\t\t\tpadding: {\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8,\n\t\t\t\tleft: 16,\n\t\t\t\tright: 16\n\t\t\t},\n\t\t\tcornerRadius: 8,\n\t\t\tgap: 8,\n\t\t\ticonSize: 18,\n\t\t\tIcon: { size: 18 }\n\t\t},\n\t\tlarge: {\n\t\t\theight: 48,\n\t\t\tpadding: {\n\t\t\t\ttop: 10,\n\t\t\t\tbottom: 10,\n\t\t\t\tleft: 20,\n\t\t\t\tright: 20\n\t\t\t},\n\t\t\tcornerRadius: 10,\n\t\t\tgap: 10,\n\t\t\ticonSize: 22,\n\t\t\ttextStyle: { fontSize: \"18px\" },\n\t\t\tIcon: { size: 22 }\n\t\t}\n\t};\n}\nc(\"Button\", m());\nfunction h(e, t) {\n\treturn t ? {\n\t\t...e,\n\t\t...t,\n\t\ttextStyle: e.textStyle || t.textStyle ? {\n\t\t\t...e.textStyle ?? {},\n\t\t\t...t.textStyle ?? {}\n\t\t} : void 0,\n\t\tText: e.Text || t.Text ? {\n\t\t\t...e.Text ?? {},\n\t\t\t...t.Text ?? {},\n\t\t\tstyle: e.Text?.style || t.Text?.style ? {\n\t\t\t\t...e.Text?.style ?? {},\n\t\t\t\t...t.Text?.style ?? {}\n\t\t\t} : void 0\n\t\t} : void 0,\n\t\tIcon: e.Icon || t.Icon ? {\n\t\t\t...e.Icon ?? {},\n\t\t\t...t.Icon ?? {}\n\t\t} : void 0\n\t} : e;\n}\nfunction g(e, t, n) {\n\tif (!n) return;\n\tlet r = e[t], i = e[n];\n\treturn {\n\t\t...r?.[n] ?? {},\n\t\t...i ?? {}\n\t};\n}\nfunction _(e) {\n\tlet t = e.Text ?? {}, n = e.Icon ?? {}, r = e.textStyle || t.style ? {\n\t\t...t.style ?? {},\n\t\t...e.textStyle ?? {}\n\t} : void 0;\n\treturn {\n\t\tText: r ? {\n\t\t\t...t,\n\t\t\tstyle: r\n\t\t} : t,\n\t\tIcon: {\n\t\t\t...n,\n\t\t\t...e.iconSize === void 0 ? {} : { size: e.iconSize }\n\t\t}\n\t};\n}\nfunction v(n) {\n\tlet { children: o, label: c, text: m, onClick: v, disabled: y = !1, variant: b, size: x, width: S, height: C, textStyle: w, iconSize: T, disabledAlpha: E, alpha: D, theme: O, onTouch: k, effect: A, effectConfig: j, ...M } = n, N = f(), P = O ? s(N ?? {}, O) : N, { props: F, nestedTheme: I } = l({\n\t\tcomponentName: \"Button\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: P,\n\t\texplicitProps: M,\n\t\tknownComponents: r\n\t}), L = d(null), R = b ?? F.variant ?? \"primary\", z = x ?? F.size ?? \"medium\", B = h(h({ ...F }, g(F, \"variants\", R)), g(F, \"sizes\", z)), V = B.textStyle || w ? {\n\t\t...B.textStyle ?? {},\n\t\t...w ?? {}\n\t} : void 0, H = T ?? B.iconSize, U = E ?? B.disabledAlpha ?? .5, W = B.disabledTextColor ?? F.disabledTextColor ?? V?.color, G = B.disabledIconTint ?? F.disabledIconTint ?? B.iconTint, K = y && W ? {\n\t\t...V ?? {},\n\t\tcolor: W\n\t} : V, q = {\n\t\t...K ? { textStyle: K } : {},\n\t\t...H === void 0 ? {} : { iconSize: H },\n\t\t...y && G !== void 0 ? { Icon: {\n\t\t\t...B.Icon ?? {},\n\t\t\ttint: G\n\t\t} } : {}\n\t}, J = y ? {\n\t\t...B,\n\t\tbackgroundColor: B.disabledColor ?? F.disabledColor ?? B.backgroundColor,\n\t\tbackgroundAlpha: U,\n\t\t...D === void 0 ? {} : { alpha: D },\n\t\t...q\n\t} : {\n\t\t...B,\n\t\t...D === void 0 ? {} : { alpha: D },\n\t\t...q\n\t}, Y = y ? void 0 : (e) => {\n\t\tlet t = u({\n\t\t\teffect: A,\n\t\t\teffectConfig: j\n\t\t}, J);\n\t\ti(L.current, t.effect, t.effectConfig), k?.(e), v?.();\n\t}, X = c ?? m, Z = o ?? (X === void 0 ? null : /* @__PURE__ */ p(e, {\n\t\ttext: `${X}`,\n\t\t...K ? { style: K } : {}\n\t})), Q = s(I, _(J)), { disabledColor: ee, disabledTextColor: te, disabledIconTint: ne, disabledAlpha: re, effect: ie, effectConfig: ae, textStyle: oe, iconSize: se, variant: ce, size: le, variants: ue, sizes: de, Text: fe, Icon: pe, primary: me, secondary: he, outline: ge, ghost: _e, danger: ve, small: ye, medium: be, large: xe, iconTint: Se, ...$ } = J;\n\treturn /* @__PURE__ */ p(t, {\n\t\tref: L,\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tenableGestures: !0,\n\t\t...Y ? { onTouch: Y } : {},\n\t\ttheme: Q,\n\t\t...$,\n\t\twidth: S,\n\t\theight: C,\n\t\t...M,\n\t\tchildren: Z\n\t});\n}\n//#endregion\nexport { v as Button };\n","import { DeferredLayoutQueue as e, useEffect as t, useMemo as n, usePortalSurface as r, useRef as i } from \"@number10/jsx-core\";\n//#region src/Portal.tsx\nfunction a(a) {\n\tlet o = a.depth ?? 1e3, s = a.blockEvents ?? !0, { surface: c, error: l, update: u, vdom: d } = r({\n\t\tdepth: o,\n\t\tid: n(() => a.id ?? `portal-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`, [a.id]),\n\t\tblockEvents: s\n\t}), f = i([]), p = i([]), m = i(!1), h = (e) => {\n\t\tc && c.context.adapter?.syncPortalEventBlocking?.(c, e);\n\t}, g = (t) => {\n\t\tc && e.defer(() => {\n\t\t\th(t);\n\t\t});\n\t}, _ = (e) => e ? (Array.isArray(e) ? e.flat(Infinity) : [e]).filter((e) => !!e && typeof e == \"object\" && \"type\" in e) : [];\n\treturn t(() => {\n\t\tif (!c || !d) return;\n\t\tlet { mount: e } = d, t = c.root, n = _(a.children), r = [];\n\t\tfor (let i of n) if (i) {\n\t\t\tlet n = e(t, i);\n\t\t\tn && r.push(n);\n\t\t}\n\t\tf.current = r, p.current = n, m.current = !0, g(s);\n\t}, [\n\t\tc,\n\t\td,\n\t\ts\n\t]), t(() => {\n\t\tif (!c || !d) return;\n\t\tlet e = _(a.children), t = p.current;\n\t\tif (m.current) {\n\t\t\tm.current = !1;\n\t\t\treturn;\n\t\t}\n\t\tlet { patchVNode: n, mount: r, unmount: i } = d, l = c.root, h = Math.max(t.length, e.length);\n\t\tfor (let a = 0; a < h; a++) {\n\t\t\tlet o = t[a], s = e[a];\n\t\t\tif (o && s) n(l, o, s);\n\t\t\telse if (!o && s) {\n\t\t\t\tlet e = r(l, s);\n\t\t\t\te && f.current.push(e);\n\t\t\t} else o && !s && i(o);\n\t\t}\n\t\tp.current = e, o !== c.zIndex && u({ depth: o }), g(s);\n\t}, [\n\t\ta.children,\n\t\to,\n\t\tc,\n\t\td,\n\t\tu,\n\t\ts\n\t]), t(() => {\n\t\tif (c) {\n\t\t\tif (!s) {\n\t\t\t\th(!1);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treturn g(!0), () => {\n\t\t\t\th(!1);\n\t\t\t};\n\t\t}\n\t}, [c, s]), l && console.error(`[Portal] ${l}`), null;\n}\n//#endregion\nexport { a as Portal };\n","import { useCallback as e, useEffect as t, useRef as n, useState as r } from \"@number10/jsx-core\";\n//#region src/useOverlayPresence.ts\nfunction i(i) {\n\tlet [a, o] = r(i), [s, c] = r(i ? \"entering\" : \"exited\"), l = n(i), u = i || a;\n\treturn t(() => {\n\t\ti ? (o(!0), l.current || c(\"entering\")) : l.current && c(\"exiting\"), l.current = i;\n\t}, [i]), {\n\t\tisPresent: u,\n\t\tphase: s,\n\t\tfinishEnter: e(() => {\n\t\t\tc((e) => e === \"entering\" ? \"entered\" : e);\n\t\t}, []),\n\t\tfinishExit: e(() => {\n\t\t\to(!1), c(\"exited\");\n\t\t}, [])\n\t};\n}\n//#endregion\nexport { i as useOverlayPresence };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Portal as t } from \"./Portal.js\";\nimport { useOverlayPresence as n } from \"./useOverlayPresence.js\";\nimport { KNOWN_COMPONENTS as r, applyEffect as i, getGlobalThemeDefaults as a, registerComponentDefaultsIfMissing as o, resolveComponentTheme as s, stopAnimationEffect as c, useCallback as l, useEffect as u, useRef as d, useTheme as f, useViewportSize as p } from \"@number10/jsx-core\";\nimport { Fragment as m, jsx as h, jsxs as g } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Modal.tsx\nfunction _(e, t) {\n\tif (!e || typeof e != \"object\") return;\n\tlet n = e;\n\tif (typeof n.setVisible == \"function\") {\n\t\tn.setVisible(t);\n\t\treturn;\n\t}\n\t\"visible\" in n && (n.visible = t);\n}\no(\"Modal\", {\n\tbackdropColor: 0,\n\tbackdropOpacity: .5,\n\topenDuration: 320,\n\tcloseDuration: 260\n});\nfunction v(t) {\n\tlet n = p(), r = d(null), a = d(null), o = d(!1), s = d(!1), f = d(0), v = d(null), y = d(null), b = d(t.onOpen), x = d(t.onClosed), S = d(t.onRequestClose), C = l((e) => {\n\t\tr.current = e;\n\t}, []), w = l((e) => {\n\t\ta.current = e;\n\t}, []), T = l(() => {\n\t\tv.current !== null && (window.clearTimeout(v.current), v.current = null);\n\t}, []), E = l(() => {\n\t\ty.current !== null && (window.clearTimeout(y.current), y.current = null);\n\t}, []), D = l((e) => {\n\t\te && typeof e == \"object\" && c(e);\n\t}, []);\n\treturn u(() => {\n\t\tb.current = t.onOpen, x.current = t.onClosed, S.current = t.onRequestClose;\n\t}, [\n\t\tt.onClosed,\n\t\tt.onOpen,\n\t\tt.onRequestClose\n\t]), u(() => {\n\t\tt.show || (o.current = !1, s.current = !1);\n\t}, [t.show]), u(() => {\n\t\tlet e = r.current, n = a.current;\n\t\tif (!e || !n) return;\n\t\tT(), E(), D(n), D(e);\n\t\tlet c = () => {\n\t\t\tlet r = ++f.current;\n\t\t\to.current = !0, s.current = !1, t.closeRequestedRef.current = !1, _(e, !0), _(n, !0), b.current?.();\n\t\t\tlet a = () => {\n\t\t\t\tr === f.current && (T(), t.finishEnter());\n\t\t\t};\n\t\t\treturn v.current = window.setTimeout(() => {\n\t\t\t\ta();\n\t\t\t}, t.openDurationMs), i(n, t.viewOpenEffect, {\n\t\t\t\ttime: t.openDurationMs,\n\t\t\t\tonComplete: a\n\t\t\t}), i(e, \"fadeIn\", { time: t.openDurationMs }), () => {\n\t\t\t\tr === f.current && T();\n\t\t\t};\n\t\t};\n\t\tif (t.show && t.phase === \"entering\" && !o.current) return c();\n\t\tif (t.show && t.phase === \"entered\" && !o.current) return console.warn(\"[Modal] starting enter animation on entered phase (likely async portal timing)\"), c();\n\t\tif (!t.show && t.phase === \"exiting\" && !s.current) {\n\t\t\tlet r = ++f.current;\n\t\t\ts.current = !0, _(e, !0), _(n, !0);\n\t\t\tlet a = () => {\n\t\t\t\tr === f.current && (E(), _(e, !1), _(n, !1), t.finishExit(), (S.current !== void 0 || !t.closeRequestedRef.current) && x.current?.(), t.closeRequestedRef.current = !1);\n\t\t\t};\n\t\t\treturn y.current = window.setTimeout(() => {\n\t\t\t\ta();\n\t\t\t}, t.closeDurationMs), i(n, t.viewCloseEffect, {\n\t\t\t\ttime: t.closeDurationMs,\n\t\t\t\tonComplete: a\n\t\t\t}), i(e, \"fadeOut\", { time: t.closeDurationMs }), () => {\n\t\t\t\tr === f.current && E();\n\t\t\t};\n\t\t}\n\t}, [\n\t\tE,\n\t\tT,\n\t\tt.closeDurationMs,\n\t\tt.closeRequestedRef,\n\t\tt.finishEnter,\n\t\tt.finishExit,\n\t\tt.openDurationMs,\n\t\tt.phase,\n\t\tt.show,\n\t\tt.viewCloseEffect,\n\t\tt.viewOpenEffect,\n\t\tD\n\t]), u(() => () => {\n\t\tT(), E(), D(a.current), D(r.current);\n\t}, [\n\t\tE,\n\t\tT,\n\t\tD\n\t]), /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(e, {\n\t\tref: C,\n\t\twidth: n.width,\n\t\theight: n.height,\n\t\tbackgroundColor: t.themedModal.backdropColor ?? 0,\n\t\talpha: t.themedModal.backdropOpacity ?? .5,\n\t\tonTouch: (e) => {\n\t\t\te.stopPropagation(), t.closeOnBackdrop && t.requestClose();\n\t\t},\n\t\tonTouchMove: (e) => {\n\t\t\te.stopPropagation();\n\t\t}\n\t}), /* @__PURE__ */ h(e, {\n\t\twidth: n.width,\n\t\theight: n.height,\n\t\tdirection: \"row\",\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tchildren: /* @__PURE__ */ h(e, {\n\t\t\tref: w,\n\t\t\tonTouch: (e) => e.stopPropagation(),\n\t\t\tonTouchMove: (e) => e.stopPropagation(),\n\t\t\ttheme: t.nestedTheme,\n\t\t\tchildren: t.children\n\t\t})\n\t})] });\n}\nfunction y(e) {\n\tlet i = f(), { props: o, nestedTheme: c } = s({\n\t\tcomponentName: \"Modal\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: i,\n\t\tknownComponents: r\n\t}), p = o, m = e.closeOnBackdrop ?? !0, g = e.closeOnEscape ?? !0, _ = p.openDuration ?? 320, y = p.closeDuration ?? 260, b = n(e.show), x = d(!1), S = e.viewOpenEffect ?? \"fadeIn\", C = e.viewCloseEffect ?? \"fadeOut\", w = l(() => {\n\t\tif (x.current = !0, e.onRequestClose) {\n\t\t\te.onRequestClose();\n\t\t\treturn;\n\t\t}\n\t\te.onClosed?.();\n\t}, [e.onClosed, e.onRequestClose]);\n\treturn u(() => {\n\t\tif (!g || !e.show) return;\n\t\tlet t = (e) => {\n\t\t\te.key === \"Escape\" && w();\n\t\t};\n\t\treturn window.addEventListener(\"keydown\", t), () => window.removeEventListener(\"keydown\", t);\n\t}, [\n\t\tg,\n\t\te.show,\n\t\tw\n\t]), b.isPresent ? /* @__PURE__ */ h(t, {\n\t\t...e.key && { key: e.key },\n\t\tdepth: e.depth ?? 1e3,\n\t\tblockEvents: !1,\n\t\tchildren: /* @__PURE__ */ h(v, {\n\t\t\tshow: e.show,\n\t\t\tphase: b.phase,\n\t\t\tfinishEnter: b.finishEnter,\n\t\t\tfinishExit: b.finishExit,\n\t\t\tcloseOnBackdrop: m,\n\t\t\tthemedModal: p,\n\t\t\tnestedTheme: c,\n\t\t\topenDurationMs: _,\n\t\t\tcloseDurationMs: y,\n\t\t\tviewOpenEffect: S,\n\t\t\tviewCloseEffect: C,\n\t\t\tonOpen: e.onOpen,\n\t\t\tonClosed: e.onClosed,\n\t\t\tonRequestClose: e.onRequestClose,\n\t\t\trequestClose: w,\n\t\t\tcloseRequestedRef: x,\n\t\t\tchildren: e.children\n\t\t})\n\t}) : null;\n}\n//#endregion\nexport { y as Modal };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Modal as n } from \"./Modal.js\";\nimport { KNOWN_COMPONENTS as r, getGlobalThemeDefaults as i, registerComponentDefaultsIfMissing as a, resolveComponentTheme as o, useRef as s, useTheme as c } from \"@number10/jsx-core\";\nimport { jsx as l, jsxs as u } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Dialog.tsx\na(\"Dialog\", {\n\tbackgroundColor: 16777215,\n\tcornerRadius: 8,\n\tmaxWidth: 600,\n\tshowClose: !0,\n\tHeader: {\n\t\tpadding: {\n\t\t\tleft: 24,\n\t\t\tright: 24,\n\t\t\ttop: 20,\n\t\t\tbottom: 16\n\t\t},\n\t\tgap: 12,\n\t\tborderColor: 14737632,\n\t\tcloseButton: {\n\t\t\tsize: 32,\n\t\t\tcornerRadius: 4\n\t\t}\n\t},\n\tContent: {\n\t\tpadding: {\n\t\t\tleft: 24,\n\t\t\tright: 24,\n\t\t\ttop: 16,\n\t\t\tbottom: 16\n\t\t},\n\t\tgap: 12\n\t},\n\tActions: {\n\t\tpadding: {\n\t\t\tleft: 24,\n\t\t\tright: 24,\n\t\t\ttop: 16,\n\t\t\tbottom: 20\n\t\t},\n\t\tgap: 12,\n\t\tjustifyContent: \"end\",\n\t\tborderColor: 14737632\n\t}\n});\nfunction d(a) {\n\tlet d = c(), { props: f, nestedTheme: p } = o({\n\t\tcomponentName: \"Dialog\",\n\t\tglobalTheme: i(),\n\t\tlocalTheme: d,\n\t\tknownComponents: r\n\t}), m = s(null), h = a.showClose ?? f.showClose ?? !0, g = a.maxWidth ?? f.maxWidth ?? 600, _ = a.prefix ?? f.prefix, v = f.backgroundColor ?? 16777215, y = f.cornerRadius ?? 8, b = f.Header, x = b?.gap ?? 12, S = b?.padding ?? 16, C = b?.borderColor ?? 14737632, w = b?.textStyle, T = b?.closeButton, E = T?.size ?? 32, D = T?.cornerRadius ?? 4, O = T?.backgroundColor, k = T?.borderColor, A = T?.borderWidth, j = f.closeIcon, M = f.Content, N = M?.padding ?? 16, P = M?.gap ?? 12, F = f.Actions, I = F?.borderColor ?? 14737632, L = F?.justifyContent ?? \"end\", R = F?.gap ?? 8, z = F?.padding ?? 16, B = (e) => {\n\t\tm.current = e, a.forwardRef?.(e);\n\t};\n\treturn /* @__PURE__ */ l(n, {\n\t\t...a.key && { key: a.key },\n\t\tshow: a.isOpen,\n\t\tonClosed: a.onClose,\n\t\tcloseOnBackdrop: a.closeOnBackdrop,\n\t\tcloseOnEscape: a.closeOnEscape,\n\t\tdepth: a.depth,\n\t\tchildren: /* @__PURE__ */ u(t, {\n\t\t\tref: B,\n\t\t\twidth: g,\n\t\t\tmaxWidth: g,\n\t\t\tbackgroundColor: v,\n\t\t\tcornerRadius: y,\n\t\t\tpadding: 0,\n\t\t\tdirection: \"column\",\n\t\t\ttheme: p,\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ u(t, {\n\t\t\t\t\tdirection: \"column\",\n\t\t\t\t\tgap: 0,\n\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ u(t, {\n\t\t\t\t\t\tdirection: \"row\",\n\t\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\tgap: x,\n\t\t\t\t\t\tpadding: S,\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t_ && _,\n\t\t\t\t\t\t\t/* @__PURE__ */ l(t, {\n\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ l(e, {\n\t\t\t\t\t\t\t\t\ttext: a.title,\n\t\t\t\t\t\t\t\t\tstyle: w\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\th && a.onClose && /* @__PURE__ */ l(t, {\n\t\t\t\t\t\t\t\twidth: E,\n\t\t\t\t\t\t\t\theight: E,\n\t\t\t\t\t\t\t\tjustifyContent: \"center\",\n\t\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\t\tcornerRadius: D,\n\t\t\t\t\t\t\t\tbackgroundColor: O,\n\t\t\t\t\t\t\t\tborderColor: k,\n\t\t\t\t\t\t\t\tborderWidth: A,\n\t\t\t\t\t\t\t\tonTouch: (e) => {\n\t\t\t\t\t\t\t\t\te.stopPropagation(), a.onClose?.();\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tchildren: j ?? /* @__PURE__ */ l(e, { text: \"X\" })\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}), /* @__PURE__ */ l(t, {\n\t\t\t\t\t\theight: 1,\n\t\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\t\tbackgroundColor: C\n\t\t\t\t\t})]\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ l(t, {\n\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\tpadding: N,\n\t\t\t\t\tdirection: \"column\",\n\t\t\t\t\tgap: P,\n\t\t\t\t\tchildren: a.children\n\t\t\t\t}),\n\t\t\t\ta.actions && /* @__PURE__ */ u(t, {\n\t\t\t\t\tdirection: \"column\",\n\t\t\t\t\tgap: 0,\n\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\tchildren: [/* @__PURE__ */ l(t, {\n\t\t\t\t\t\theight: 1,\n\t\t\t\t\t\twidth: \"fill\",\n\t\t\t\t\t\tbackgroundColor: I\n\t\t\t\t\t}), /* @__PURE__ */ l(t, {\n\t\t\t\t\t\tdirection: \"row\",\n\t\t\t\t\t\tjustifyContent: L,\n\t\t\t\t\t\tgap: R,\n\t\t\t\t\t\tpadding: z,\n\t\t\t\t\t\tchildren: a.actions\n\t\t\t\t\t})]\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t});\n}\n//#endregion\nexport { d as Dialog };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { DeferredLayoutQueue as n, KNOWN_COMPONENTS as r, getGlobalThemeDefaults as i, normalizeEdgeInsets as a, normalizePadding as o, resolveComponentTheme as s, useCallback as c, useEffect as l, useLayoutEffect as u, useRef as d, useState as f, useTheme as p, useViewportSize as m } from \"@number10/jsx-core\";\nimport { jsx as h } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/WrapText.tsx\nvar g = /* @__PURE__ */ new Map();\nfunction _(e) {\n\tif (e.__layoutParent && typeof e.__layoutParent == \"object\") return e.__layoutParent;\n\tif (e.parent) return e.parent;\n\tlet t = e.parentContainer;\n\treturn t && typeof t == \"object\" ? t : null;\n}\nfunction v(e) {\n\treturn e ? (e.__getLayoutSize?.() ?? e.__cachedLayoutSize)?.width ?? 0 : 0;\n}\nfunction y(e) {\n\tlet t = v(e), n = _(e);\n\tfor (; n;) {\n\t\tlet e = v(n);\n\t\tif (t <= 0 && e > 0 && (t = e), n.__layoutProps?.width !== void 0 && e > 0) {\n\t\t\tlet t = o(n.__layoutProps.padding);\n\t\t\treturn Math.max(0, e - t.left - t.right);\n\t\t}\n\t\tn = _(n);\n\t}\n\treturn t;\n}\nfunction b(o) {\n\tlet _ = p(), { props: v, nestedTheme: b } = s({\n\t\tcomponentName: \"WrapText\",\n\t\tglobalTheme: i(),\n\t\tlocalTheme: _,\n\t\tknownComponents: r\n\t}), x = m(), S = o.wrap ?? v.wrap ?? !0, C = v.paddingOffset ?? 0, w = typeof o.text == \"string\" ? o.text : null, T = null;\n\ttypeof o.cacheKey == \"string\" ? T = o.cacheKey : typeof o.key == \"string\" ? T = w ? `${o.key}::${w}` : o.key : w && (T = w);\n\tlet E = T ? g.get(T) ?? 0 : 0, [D, O] = f(E), k = d(E), A = d(null), j = d(null), M = c((e) => {\n\t\tif (!S) return;\n\t\tlet t = () => {\n\t\t\tlet t = y(e);\n\t\t\tt > 0 && t !== k.current && t !== D && (k.current = t, T && g.set(T, t), O(t));\n\t\t};\n\t\tj.current === null && (j.current = 1, n.defer(() => {\n\t\t\tj.current = null, t();\n\t\t}));\n\t}, [\n\t\tT,\n\t\tD,\n\t\tS\n\t]), N = c((e) => {\n\t\tlet t = e;\n\t\tA.current !== t && (A.current = t, !(!t || !S || D > 0) && M(t));\n\t}, [\n\t\tD,\n\t\tM,\n\t\tS\n\t]);\n\tl(() => {\n\t\tif (!S || D > 0) return;\n\t\tlet e = A.current;\n\t\te && M(e);\n\t}, [\n\t\tD,\n\t\tM,\n\t\tS\n\t]), u(() => {\n\t\tS && A.current && (k.current = 0, O(0), n.defer(() => {\n\t\t\tA.current && M(A.current);\n\t\t}));\n\t}, [x.width, x.height]), l(() => () => {\n\t\tj.current = null;\n\t}, []);\n\tlet P = D > 0 ? D : k.current, F = a(o.padding), I = (F.left ?? 0) + (F.right ?? 0), L = Math.max(0, (P > C ? P - C : 0) - I), R = {\n\t\t...v.textStyle ?? {},\n\t\t...o.style ?? {}\n\t}, z = S && L > 0, B = {};\n\treturn o.backgroundColor !== void 0 && (B.backgroundColor = o.backgroundColor), o.cornerRadius !== void 0 && (B.cornerRadius = o.cornerRadius), o.borderWidth !== void 0 && (B.borderWidth = o.borderWidth), o.borderColor !== void 0 && (B.borderColor = o.borderColor), o.borderAlpha !== void 0 && (B.borderAlpha = o.borderAlpha), o.enableGestures !== void 0 && (B.enableGestures = o.enableGestures), o.onTouch !== void 0 && (B.onTouch = o.onTouch), o.onTouchOutside !== void 0 && (B.onTouchOutside = o.onTouchOutside), o.onTouchMove !== void 0 && (B.onTouchMove = o.onTouchMove), o.onDoubleTap !== void 0 && (B.onDoubleTap = o.onDoubleTap), o.onLongPress !== void 0 && (B.onLongPress = o.onLongPress), o.onWheel !== void 0 && (B.onWheel = o.onWheel), o.longPressDuration !== void 0 && (B.longPressDuration = o.longPressDuration), o.doubleTapDelay !== void 0 && (B.doubleTapDelay = o.doubleTapDelay), o.maxTouchDuration !== void 0 && (B.maxTouchDuration = o.maxTouchDuration), o.margin !== void 0 && (B.margin = o.margin), o.padding !== void 0 && (B.padding = o.padding), o.visible !== void 0 && (B.visible = o.visible), /* @__PURE__ */ h(t, {\n\t\tref: N,\n\t\twidth: \"fill\",\n\t\ttheme: b,\n\t\t...B,\n\t\tchildren: /* @__PURE__ */ h(e, {\n\t\t\ttext: o.text,\n\t\t\tstyle: R,\n\t\t\t...z && { maxWidth: L },\n\t\t\t...o.alpha !== void 0 && { alpha: o.alpha },\n\t\t\t...o.x !== void 0 && { x: o.x },\n\t\t\t...o.y !== void 0 && { y: o.y }\n\t\t})\n\t});\n}\n//#endregion\nexport { b as WrapText };\n","import { Text as e } from \"./primitives/Text.js\";\nimport \"./primitives.js\";\nimport { Button as t } from \"./Button.js\";\nimport { Dialog as n } from \"./Dialog.js\";\nimport { WrapText as r } from \"./WrapText.js\";\nimport { KNOWN_COMPONENTS as i, getGlobalThemeDefaults as a, registerComponentDefaultsIfMissing as o, resolveComponentTheme as s, useCallback as c, useEffect as l, useMemo as u, useState as d, useTheme as f } from \"@number10/jsx-core\";\nimport { Fragment as p, jsx as m, jsxs as h } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/AlertDialog.tsx\no(\"AlertDialog\", {\n\tmaxWidth: 500,\n\tvariants: {\n\t\tinfo: {},\n\t\twarning: {},\n\t\tdestructive: {},\n\t\tsuccess: {}\n\t}\n});\nfunction g(o) {\n\tlet g = f(), { props: _ } = s({\n\t\tcomponentName: \"AlertDialog\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: g,\n\t\tknownComponents: i\n\t}), [v, y] = d(!1), b = o.showCancel ?? !0, x = o.closeOnConfirm ?? !0, S = o.loading ?? v, C = _.maxWidth ?? 400, w = _.variants, T = o.variant ? w?.[o.variant] : void 0, E = o.prefix ?? T?.prefix, D = T?.buttonVariant, O = c(async () => {\n\t\tif (o.onConfirm) try {\n\t\t\ty(!0);\n\t\t\tlet e = o.onConfirm();\n\t\t\te instanceof Promise && await e, x && o.onClose?.();\n\t\t} catch (e) {\n\t\t\tconsole.error(\"AlertDialog confirm error:\", e);\n\t\t} finally {\n\t\t\ty(!1);\n\t\t}\n\t}, [\n\t\to.onConfirm,\n\t\tx,\n\t\to.onClose\n\t]);\n\tl(() => {\n\t\to.isOpen || y(!1);\n\t}, [o.isOpen]);\n\tlet k = u(() => /* @__PURE__ */ h(p, { children: [b && /* @__PURE__ */ m(t, {\n\t\tonClick: () => setTimeout(() => o.onClose?.(), 200),\n\t\tdisabled: S,\n\t\tchildren: /* @__PURE__ */ m(e, { text: o.cancelText ?? \"Cancel\" })\n\t}), o.onConfirm && /* @__PURE__ */ m(t, {\n\t\tvariant: D,\n\t\tonClick: () => setTimeout(() => O(), 200),\n\t\tdisabled: S,\n\t\tchildren: /* @__PURE__ */ m(e, { text: o.confirmText ?? \"OK\" })\n\t})] }), [\n\t\tb,\n\t\to.onClose,\n\t\to.cancelText,\n\t\tS,\n\t\to.onConfirm,\n\t\tD,\n\t\tO,\n\t\to.confirmText\n\t]), A = u(() => o.description ? /* @__PURE__ */ m(r, { text: o.description }) : null, [o.description]);\n\treturn /* @__PURE__ */ m(n, {\n\t\t...o.key && { key: o.key },\n\t\tisOpen: o.isOpen,\n\t\tonClose: o.onClose,\n\t\ttitle: o.title,\n\t\tprefix: E,\n\t\tmaxWidth: C,\n\t\tshowClose: !0,\n\t\tactions: k,\n\t\tcloseOnBackdrop: !1,\n\t\tcloseOnEscape: !1,\n\t\tchildren: A\n\t});\n}\n//#endregion\nexport { g as AlertDialog };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, resolveComponentTheme as r, useTheme as i, useThemeTokens as a } from \"@number10/jsx-core\";\nimport { jsx as o, jsxs as s } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/DebugPanel.tsx\nvar c = {\n\tfps: [\"fps\", \"frameMs\"],\n\tperf: [\n\t\t\"fps\",\n\t\t\"frameMs\",\n\t\t\"renderer\",\n\t\t\"viewport\"\n\t],\n\tvdom: [\n\t\t\"mountsTotal\",\n\t\t\"mountsByType\",\n\t\t\"mountsByParent\",\n\t\t\"mountsByKey\"\n\t],\n\ttextures: [\"textureCount\"],\n\tfull: [\n\t\t\"fps\",\n\t\t\"frameMs\",\n\t\t\"phaserVersion\",\n\t\t\"renderer\",\n\t\t\"viewport\",\n\t\t\"textureCount\",\n\t\t\"mountsTotal\",\n\t\t\"mountsByType\",\n\t\t\"mountsByParent\",\n\t\t\"mountsByKey\",\n\t\t\"debugFlags\"\n\t]\n}, l = {\n\tfps: \"FPS\",\n\tframeMs: \"Frame ms\",\n\tphaserVersion: \"Phaser\",\n\trenderer: \"Renderer\",\n\tviewport: \"Viewport\",\n\ttextureCount: \"Textures\",\n\tmountsTotal: \"Mounts\",\n\tmountsByType: \"Mounts/type\",\n\tmountsByParent: \"Mounts/parent\",\n\tmountsByKey: \"Mounts/key\",\n\tdebugFlags: \"Debug flags\"\n};\nfunction u(e) {\n\tif (typeof e == \"string\") return e;\n\tif (typeof e == \"number\" || typeof e == \"boolean\") return String(e);\n\tif (e === null) return \"null\";\n\tif (e === void 0) return \"undefined\";\n\tif (typeof e == \"object\") {\n\t\tlet t = e;\n\t\tif (typeof t.name == \"string\" && t.name.length > 0) return t.name;\n\t\tif (typeof t.type == \"string\") return t.type;\n\t\tif (typeof t.label == \"string\") return t.label;\n\t\tlet n = t.constructor;\n\t\tif (n?.name && n.name !== \"Object\") return n.name;\n\t}\n\treturn String(e);\n}\nfunction d(e, t = 3) {\n\treturn Array.from(e.entries()).sort((e, t) => t[1] - e[1]).slice(0, t).map(([e, t]) => `${u(e)}:${t}`).join(\" | \") || \"-\";\n}\nfunction f(e) {\n\treturn typeof e == \"number\" ? String(e) : e;\n}\nfunction p(u) {\n\tlet d = i(), { props: p } = r({\n\t\tcomponentName: \"DebugPanel\",\n\t\tlocalTheme: u.theme ?? d,\n\t\tknownComponents: n\n\t}), m = a(), { snapshot: h, preset: g = \"fps\", metrics: _, compact: v = !1, maxRows: y, labels: b, formatters: x, innerProps: S, theme: C, ...w } = u, T = (() => {\n\t\tlet e = _ && _.length > 0 ? _ : c[g];\n\t\treturn Array.from(new Set(e));\n\t})(), E = p.rowTextStyle ?? m?.textStyles.small, D = p.valueTextStyle ?? m?.textStyles.small, O = T.map((e) => {\n\t\tlet t = h[e], n = b?.[e] ?? l[e], r = x?.[e];\n\t\treturn {\n\t\t\tmetric: e,\n\t\t\tlabel: n,\n\t\t\tvalue: r ? r(t) : f(t)\n\t\t};\n\t}), k = typeof y == \"number\" ? O.slice(0, Math.max(1, y)) : O;\n\tif (v) {\n\t\tlet n = k.map((e) => `${e.label} ${e.value}`).join(\" | \");\n\t\treturn /* @__PURE__ */ o(t, {\n\t\t\t...w,\n\t\t\t...p,\n\t\t\tchildren: /* @__PURE__ */ o(e, {\n\t\t\t\ttext: n,\n\t\t\t\tstyle: D\n\t\t\t})\n\t\t});\n\t}\n\treturn /* @__PURE__ */ o(t, {\n\t\tdirection: \"column\",\n\t\tgap: p.rowGap ?? 4,\n\t\t...w,\n\t\t...p,\n\t\tchildren: k.map((n) => /* @__PURE__ */ s(t, {\n\t\t\tdirection: \"row\",\n\t\t\tgap: 8,\n\t\t\t...S,\n\t\t\tchildren: [/* @__PURE__ */ o(e, {\n\t\t\t\ttext: `${n.label}:`,\n\t\t\t\tstyle: E\n\t\t\t}), /* @__PURE__ */ o(e, {\n\t\t\t\ttext: n.value,\n\t\t\t\tstyle: D\n\t\t\t})]\n\t\t}, `debug-${n.metric}`))\n\t});\n}\n//#endregion\nexport { l as DEFAULT_LABELS, p as DebugPanel, c as PRESET_METRICS, f as formatDefault, d as summarizeMap };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Portal as n } from \"./Portal.js\";\nimport { useOverlayPresence as r } from \"./useOverlayPresence.js\";\nimport { DeferredLayoutQueue as i, KNOWN_COMPONENTS as a, applyEffect as o, getGlobalThemeDefaults as s, mergeThemes as c, resolveComponentTheme as l, stopEffect as u, useEffect as d, useRef as f, useState as p, useTheme as m, useViewportSize as h } from \"@number10/jsx-core\";\nimport { Fragment as g, jsx as _, jsxs as v } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Popover.tsx\nfunction y(e) {\n\treturn e.split(\"-\")[0];\n}\nfunction b(e) {\n\treturn e.split(\"-\")[1] ?? \"center\";\n}\nfunction x(e) {\n\tlet { anchor: t, content: n, placement: r, offset: i } = e, a = y(r), o = b(r), s, c;\n\ta === \"top\" || a === \"bottom\" ? (c = a === \"top\" ? t.y - n.height - i : t.y + t.height + i, s = o === \"start\" ? t.x : o === \"end\" ? t.x + t.width - n.width : t.x + (t.width - n.width) / 2) : (s = a === \"left\" ? t.x - n.width - i : t.x + t.width + i, c = o === \"start\" ? t.y : o === \"end\" ? t.y + t.height - n.height : t.y + (t.height - n.height) / 2);\n\tlet l = e.viewport;\n\tif (l) {\n\t\tlet t = e.viewportPadding ?? 8;\n\t\ts = Math.min(Math.max(t, s), Math.max(t, l.width - n.width - t)), c = Math.min(Math.max(t, c), Math.max(t, l.height - n.height - t));\n\t}\n\treturn {\n\t\tx: s,\n\t\ty: c,\n\t\tplacement: r\n\t};\n}\nfunction S(e) {\n\treturn e?.__getLayoutSize?.() ?? e?.__cachedLayoutSize ?? {\n\t\twidth: 0,\n\t\theight: 0\n\t};\n}\nfunction C(e) {\n\tlet t = e;\n\tif (typeof t.getAbsolutePosition == \"function\") {\n\t\tlet e = t.getAbsolutePosition();\n\t\treturn {\n\t\t\tx: e.x,\n\t\t\ty: e.y\n\t\t};\n\t}\n\tlet n = e;\n\tif (typeof n.getGlobalPosition == \"function\") {\n\t\tlet e = n.getGlobalPosition();\n\t\treturn {\n\t\t\tx: e.x,\n\t\t\ty: e.y\n\t\t};\n\t}\n\tlet r = e.x ?? 0, i = e.y ?? 0, a = e.parent;\n\tfor (; a;) r += a.x ?? 0, i += a.y ?? 0, a = a.parent;\n\treturn {\n\t\tx: r,\n\t\ty: i\n\t};\n}\nfunction w(e) {\n\tif (!e) return {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t};\n\tlet t = S(e), n = C(e);\n\treturn {\n\t\tx: n.x,\n\t\ty: n.y,\n\t\twidth: t.width,\n\t\theight: t.height\n\t};\n}\nvar T = {\n\twidth: 220,\n\theight: 120\n};\nfunction E(e, t) {\n\tif (e) {\n\t\tif (typeof e == \"function\") {\n\t\t\te(t);\n\t\t\treturn;\n\t\t}\n\t\te.current = t;\n\t}\n}\nfunction D(e) {\n\tlet y = m(), b = e.theme ? c(y ?? {}, e.theme) : y, { props: C, nestedTheme: D } = l({\n\t\tcomponentName: \"Popover\",\n\t\tglobalTheme: s(),\n\t\tlocalTheme: b,\n\t\tknownComponents: a\n\t}), O = f(null), k = f(null), [A, j] = p(null), [ee, te] = p(e.defaultOpen ?? !1), M = e.isOpen !== void 0, N = M ? e.isOpen === !0 : ee, P = r(N), ne = e.placement ?? C.placement ?? \"bottom\", re = e.offset ?? C.offset ?? 8, ie = e.depth ?? C.depth ?? 1100, ae = e.closeOnOutside ?? C.closeOnOutside ?? !0, F = e.closeOnEscape ?? C.closeOnEscape ?? !0, I = e.viewportPadding ?? C.viewportPadding ?? 8, oe = e.openEffect ?? C.openEffect ?? \"fadeIn\", se = e.closeEffect ?? C.closeEffect ?? \"fadeOut\", L = e.openDuration ?? C.openDuration ?? 120, R = e.closeDuration ?? C.closeDuration ?? 100, z = e.contentWidth ?? C.contentWidth, B = e.contentHeight ?? C.contentHeight, V = h(), [H, U] = p(w(O.current)), W = A?.width ?? T.width, G = A?.height ?? T.height, K = z === void 0 || B === void 0, q = !K || A !== null, J = e.matchTriggerWidth ? Math.max(H.width, z ?? W) : z ?? W, Y = x({\n\t\tanchor: H,\n\t\tcontent: {\n\t\t\twidth: J,\n\t\t\theight: B ?? G\n\t\t},\n\t\tplacement: ne,\n\t\toffset: re,\n\t\tviewport: V,\n\t\tviewportPadding: I\n\t}), X = (t) => {\n\t\te.disabled && t || (M || te(t), e.onOpenChange?.(t));\n\t}, ce = (e) => {\n\t\te.stopPropagation(), X(!N);\n\t}, le = (e) => {\n\t\te?.stopPropagation(), X(!1);\n\t}, Z = e.contentProps ?? {}, ue = Z.ref, Q = Z.alpha, de = (e) => {\n\t\tlet t = e;\n\t\tk.current = t, E(ue, t);\n\t}, $ = P.phase === \"entered\" || P.phase === \"exiting\" ? Q : 0;\n\treturn d(() => {\n\t\tif (!F || !N) return;\n\t\tlet e = (e) => {\n\t\t\te.key === \"Escape\" && X(!1);\n\t\t};\n\t\treturn window.addEventListener(\"keydown\", e), () => window.removeEventListener(\"keydown\", e);\n\t}, [F, N]), d(() => {\n\t\tif (!P.isPresent) return;\n\t\tlet e = !1, t = () => {\n\t\t\tif (e) return;\n\t\t\tlet n = w(O.current);\n\t\t\tU((e) => Math.abs(e.x - n.x) < .5 && Math.abs(e.y - n.y) < .5 && Math.abs(e.width - n.width) < .5 && Math.abs(e.height - n.height) < .5 ? e : n), i.defer(t);\n\t\t};\n\t\treturn i.defer(t), () => {\n\t\t\te = !0;\n\t\t};\n\t}, [P.isPresent]), d(() => {\n\t\tif (!P.isPresent || !K) return;\n\t\tlet e = !1, t = () => {\n\t\t\tif (e) return;\n\t\t\tlet n = S(k.current);\n\t\t\tn.width > 0 && n.height > 0 && j((e) => e && Math.abs(e.width - n.width) < .5 && Math.abs(e.height - n.height) < .5 ? e : {\n\t\t\t\twidth: n.width,\n\t\t\t\theight: n.height\n\t\t\t}), i.defer(t);\n\t\t};\n\t\treturn i.defer(t), () => {\n\t\t\te = !0;\n\t\t};\n\t}, [\n\t\tP.isPresent,\n\t\tK,\n\t\te.children,\n\t\tz,\n\t\tB\n\t]), d(() => {\n\t\tlet e = k.current;\n\t\tif (!(!e || !P.isPresent)) if (P.phase === \"entering\") {\n\t\t\tif (!q) return;\n\t\t\tu(e), e.setVisible?.(!0), o(e, oe, {\n\t\t\t\ttime: L,\n\t\t\t\tonComplete: P.finishEnter\n\t\t\t});\n\t\t} else P.phase === \"exiting\" && (u(e), o(e, se, {\n\t\t\ttime: R,\n\t\t\tonComplete: () => {\n\t\t\t\tk.current?.setVisible?.(!1), j(null), P.finishExit();\n\t\t\t}\n\t\t}));\n\t}, [\n\t\tP.phase,\n\t\tP.isPresent,\n\t\tq,\n\t\tL,\n\t\tR\n\t]), /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(t, {\n\t\t...e.triggerProps ?? {},\n\t\tref: O,\n\t\tenableGestures: !e.disabled,\n\t\tonTouch: ce,\n\t\tchildren: e.trigger\n\t}), P.isPresent && /* @__PURE__ */ v(n, {\n\t\tdepth: ie,\n\t\tblockEvents: !1,\n\t\tchildren: [ae && /* @__PURE__ */ _(t, {\n\t\t\twidth: V.width,\n\t\t\theight: V.height,\n\t\t\tbackgroundColor: 0,\n\t\t\tbackgroundAlpha: 0,\n\t\t\tonTouch: le,\n\t\t\tonTouchMove: (e) => e.stopPropagation()\n\t\t}), /* @__PURE__ */ _(t, {\n\t\t\tdirection: \"column\",\n\t\t\tbackgroundColor: C.backgroundColor ?? 1120295,\n\t\t\tborderColor: C.borderColor ?? 3359061,\n\t\t\tborderWidth: C.borderWidth ?? 1,\n\t\t\tcornerRadius: C.cornerRadius ?? 8,\n\t\t\tpadding: C.padding ?? 10,\n\t\t\tgap: C.gap ?? 8,\n\t\t\t...Z,\n\t\t\tref: de,\n\t\t\tx: Y.x,\n\t\t\ty: Y.y,\n\t\t\t...e.matchTriggerWidth || z !== void 0 ? { width: J } : {},\n\t\t\t...$ === void 0 ? {} : { alpha: $ },\n\t\t\tonTouch: (e) => e.stopPropagation(),\n\t\t\ttheme: D,\n\t\t\tchildren: e.children\n\t\t})]\n\t})] });\n}\nfunction O(n) {\n\tlet { items: r, width: i, onSelect: o, isOpen: u, defaultOpen: d, onOpenChange: f, ...h } = n, g = m(), y = n.theme ? c(g ?? {}, n.theme) : g, { props: b, nestedTheme: x } = l({\n\t\tcomponentName: \"ContextMenu\",\n\t\tglobalTheme: s(),\n\t\tlocalTheme: y,\n\t\tknownComponents: a\n\t}), [S, C] = p(d ?? !1), w = u !== void 0, T = w ? u === !0 : S, E = i ?? b.width ?? 220, O = b.itemHeight ?? 34, k = (e) => {\n\t\tw || C(e), f?.(e);\n\t}, A = (e) => {\n\t\te.disabled || (e.onSelect?.(), o?.(e), k(!1));\n\t};\n\treturn /* @__PURE__ */ _(D, {\n\t\t...h,\n\t\tisOpen: T,\n\t\tonOpenChange: k,\n\t\tcontentWidth: E,\n\t\tcontentHeight: Math.max(1, r.length) * O + 20,\n\t\tcontentProps: {\n\t\t\tpadding: b.padding ?? 6,\n\t\t\tgap: b.gap ?? 2,\n\t\t\tbackgroundColor: b.backgroundColor,\n\t\t\tborderColor: b.borderColor,\n\t\t\tborderWidth: b.borderWidth,\n\t\t\tcornerRadius: b.cornerRadius,\n\t\t\ttheme: x\n\t\t},\n\t\tchildren: r.map((n) => {\n\t\t\tlet r = b.textStyle, i = n.disabled ? b.disabledTextColor ?? \"#64748b\" : n.danger ? b.dangerTextColor ?? \"#fecaca\" : r?.color ?? \"#f8fafc\";\n\t\t\treturn /* @__PURE__ */ v(t, {\n\t\t\t\twidth: \"fill\",\n\t\t\t\theight: O,\n\t\t\t\tdirection: \"row\",\n\t\t\t\talignItems: \"center\",\n\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\tbackgroundColor: n.disabled ? void 0 : b.itemBackgroundColor,\n\t\t\t\tborderColor: n.disabled ? void 0 : b.itemBorderColor,\n\t\t\t\tcornerRadius: b.itemCornerRadius ?? 4,\n\t\t\t\tpadding: b.itemPadding ?? {\n\t\t\t\t\tleft: 10,\n\t\t\t\t\tright: 10\n\t\t\t\t},\n\t\t\t\tenableGestures: !n.disabled,\n\t\t\t\tonTouch: (e) => {\n\t\t\t\t\te.stopPropagation(), A(n);\n\t\t\t\t},\n\t\t\t\ttheme: x,\n\t\t\t\tchildren: [/* @__PURE__ */ v(t, {\n\t\t\t\t\tdirection: \"row\",\n\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\tgap: b.itemGap ?? 8,\n\t\t\t\t\tchildren: [n.prefix, /* @__PURE__ */ _(e, {\n\t\t\t\t\t\ttext: n.label,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tcolor: i,\n\t\t\t\t\t\t\tfontSize: \"14px\"\n\t\t\t\t\t\t}\n\t\t\t\t\t})]\n\t\t\t\t}), n.suffix]\n\t\t\t}, n.id);\n\t\t})\n\t});\n}\n//#endregion\nexport { O as ContextMenu, D as Popover, x as calculateOverlayPosition };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useEffect as o, useRef as s, useState as c, useTheme as l } from \"@number10/jsx-core\";\nimport { jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/TextInput.tsx\nvar f = null;\nfunction p() {\n\tif (f ||= document.createElement(\"canvas\").getContext(\"2d\") ?? null, !f) throw Error(\"Canvas 2D context unavailable\");\n\treturn f;\n}\nfunction m(e, t) {\n\tlet n = t?.fontFamily ?? \"Arial, sans-serif\", r = t?.fontSize ?? \"16px\";\n\te.font = [\n\t\tt?.fontStyle ?? \"\",\n\t\tt?.fontWeight ?? \"\",\n\t\tr,\n\t\tn\n\t].filter(Boolean).join(\" \");\n}\nfunction h(e, t) {\n\tlet n = p();\n\tm(n, t);\n\tlet r = [];\n\tfor (let t = 0; t < e.length; t++) {\n\t\tlet i = e.charAt(t);\n\t\ti === \"\\n\" ? r.push({\n\t\t\tchar: i,\n\t\t\twidth: 0\n\t\t}) : r.push({\n\t\t\tchar: i,\n\t\t\twidth: n.measureText(i).width\n\t\t});\n\t}\n\treturn r;\n}\nfunction g(e, t = 1.2) {\n\tlet n = e?.fontSize ?? \"16px\", r = typeof n == \"number\" ? `${n}px` : n;\n\treturn Math.round((parseFloat(r) || 16) * t);\n}\nfunction ee(e, t, n, r, i, a, o) {\n\tlet s = h(e, n), c = g(n, o), l = [], u = 0, d = 0, f = 0, p = [], m = () => {\n\t\tfor (let e of p) {\n\t\t\tlet t = l[e.layoutIdx];\n\t\t\tt && (t.y = d);\n\t\t}\n\t\tp = [], u = 0, d += c, f++;\n\t};\n\tfor (let e = 0; e < s.length; e++) {\n\t\tlet n = s[e];\n\t\tif (!n) continue;\n\t\tif (n.char === \"\\n\") {\n\t\t\tl.push({\n\t\t\t\tchar: n.char,\n\t\t\t\tx: u,\n\t\t\t\ty: d,\n\t\t\t\twidth: 0,\n\t\t\t\theight: c,\n\t\t\t\tlineIndex: f\n\t\t\t}), m();\n\t\t\tcontinue;\n\t\t}\n\t\tif (i && p.length > 0 && u + n.width > t) if (a) {\n\t\t\tlet e = -1;\n\t\t\tfor (let t = p.length - 1; t >= 0; t--) if (p[t]?.m.char === \" \") {\n\t\t\t\te = t;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (e >= 0) {\n\t\t\t\tlet t = p.slice(0, e + 1), n = p.slice(e + 1);\n\t\t\t\tp = t, m(), u = 0;\n\t\t\t\tfor (let e of n) {\n\t\t\t\t\tlet t = l[e.layoutIdx];\n\t\t\t\t\tt && (t.x = u, t.lineIndex = f), u += e.m.width + r, p.push(e);\n\t\t\t\t}\n\t\t\t} else m();\n\t\t} else m();\n\t\tlet o = l.length;\n\t\tl.push({\n\t\t\tchar: n.char,\n\t\t\tx: u,\n\t\t\ty: d,\n\t\t\twidth: n.width,\n\t\t\theight: c,\n\t\t\tlineIndex: f\n\t\t}), p.push({\n\t\t\tm: n,\n\t\t\tlayoutIdx: o\n\t\t}), u += n.width + r;\n\t}\n\tfor (let e of p) {\n\t\tlet t = l[e.layoutIdx];\n\t\tt && (t.y = d);\n\t}\n\treturn l;\n}\nfunction te() {\n\tlet e = document.createElement(\"input\");\n\treturn e.type = \"text\", e.setAttribute(\"autocomplete\", \"off\"), e.setAttribute(\"autocorrect\", \"off\"), e.setAttribute(\"autocapitalize\", \"off\"), e.setAttribute(\"spellcheck\", \"false\"), Object.assign(e.style, {\n\t\tposition: \"fixed\",\n\t\ttop: \"-9999px\",\n\t\tleft: \"-9999px\",\n\t\twidth: \"1px\",\n\t\theight: \"1px\",\n\t\topacity: \"0\",\n\t\tpointerEvents: \"none\"\n\t}), document.body.appendChild(e), e;\n}\nfunction _(f) {\n\tlet p = l(), m = f.theme ? i(p ?? {}, f.theme) : p, { props: h, nestedTheme: _ } = a({\n\t\tcomponentName: \"TextInput\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: m,\n\t\tknownComponents: n\n\t}), v = f.placeholder ?? h.placeholder, y = f.disabled ?? !1, b = f.maxLength ?? h.maxLength, x = f.multiline ?? h.multiline ?? !1, S = f.textStyle ?? h.textStyle ?? {\n\t\tfontFamily: \"Arial, sans-serif\",\n\t\tfontSize: \"16px\",\n\t\tcolor: \"#ffffff\"\n\t}, ne = f.placeholderStyle ?? h.placeholderStyle ?? {\n\t\t...S,\n\t\tcolor: \"#666666\"\n\t}, C = f.charSpacing ?? h.charSpacing ?? 0, w = f.lineHeight ?? h.lineHeight ?? 1.2, T = f.maxLines ?? h.maxLines, re = f.textOverflow ?? h.textOverflow ?? \"clip\", ie = f.wordWrap ?? h.wordWrap ?? !0, ae = f.cursorColor ?? h.cursorColor ?? 16777215, oe = f.cursorWidth ?? h.cursorWidth ?? 2, se = f.cursorBlinkSpeed ?? h.cursorBlinkSpeed ?? 530, ce = f.selectionColor ?? h.selectionColor ?? 4886754, le = f.selectionAlpha ?? h.selectionAlpha ?? .3, ue = f.focusedBorderColor ?? h.focusedBorderColor, de = f.disabledBackgroundColor ?? h.disabledBackgroundColor, fe = f.disabledBorderColor ?? h.disabledBorderColor, pe = f.disabledAlpha ?? h.disabledAlpha ?? .6, me = f.password ?? !1, he = f.passwordChar ?? \"•\", E = f.value !== void 0, [ge, _e] = c(f.value ?? \"\"), D = E ? f.value ?? \"\" : ge, [O, k] = c(D.length), [A, j] = c(-1), [M, N] = c(!1), [ve, P] = c(!0), F = s(D), I = s(O), L = s(A), ye = s(M);\n\tF.current = D, I.current = O, L.current = A, ye.current = M;\n\tlet R = s(null), be = s(null);\n\to(() => {\n\t\tif (!M) {\n\t\t\tP(!1);\n\t\t\treturn;\n\t\t}\n\t\tP(!0);\n\t\tlet e = setInterval(() => {\n\t\t\tP((e) => !e);\n\t\t}, se);\n\t\treturn () => clearInterval(e);\n\t}, [M, se]), o(() => {\n\t\tlet e = te();\n\t\treturn R.current = e, () => {\n\t\t\te.remove(), R.current = null;\n\t\t};\n\t}, []), o(() => {\n\t\tlet e = R.current;\n\t\tif (!e) return;\n\t\tlet t = (e) => {\n\t\t\tif (e.key === \"Enter\") {\n\t\t\t\tif (e.preventDefault(), !x || e.ctrlKey || e.metaKey) {\n\t\t\t\t\tf.onSubmit?.(F.current);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (x) {\n\t\t\t\t\tV(\"\\n\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (e.key === \"Backspace\") {\n\t\t\t\te.preventDefault(), xe();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"Delete\") {\n\t\t\t\te.preventDefault(), Se();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ((e.ctrlKey || e.metaKey) && e.key === \"c\") {\n\t\t\t\te.preventDefault(), Te();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ((e.ctrlKey || e.metaKey) && e.key === \"x\") {\n\t\t\t\te.preventDefault(), Ee();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ((e.ctrlKey || e.metaKey) && e.key === \"v\") {\n\t\t\t\te.preventDefault(), De();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"ArrowLeft\") {\n\t\t\t\te.preventDefault(), H(-1, e.shiftKey);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"ArrowRight\") {\n\t\t\t\te.preventDefault(), H(1, e.shiftKey);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"ArrowUp\") {\n\t\t\t\te.preventDefault(), Ce(-1, e.shiftKey);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"ArrowDown\") {\n\t\t\t\te.preventDefault(), Ce(1, e.shiftKey);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"Home\") {\n\t\t\t\te.preventDefault(), P(!0), I.current = 0, k(0), e.shiftKey || (L.current = -1, j(-1));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"End\") {\n\t\t\t\te.preventDefault(), P(!0);\n\t\t\t\tlet t = F.current.length;\n\t\t\t\tI.current = t, k(t), e.shiftKey || (L.current = -1, j(-1));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === \"a\" && (e.ctrlKey || e.metaKey)) {\n\t\t\t\te.preventDefault(), P(!0), L.current = 0, j(0);\n\t\t\t\tlet t = F.current.length;\n\t\t\t\tI.current = t, k(t);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\te.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey && (e.preventDefault(), V(e.key));\n\t\t}, n = () => {\n\t\t\tN(!0), f.onFocus?.();\n\t\t}, r = () => {\n\t\t\tN(!1), j(-1), f.onBlur?.();\n\t\t};\n\t\treturn e.addEventListener(\"keydown\", t), e.addEventListener(\"focus\", n), e.addEventListener(\"blur\", r), () => {\n\t\t\te.removeEventListener(\"keydown\", t), e.removeEventListener(\"focus\", n), e.removeEventListener(\"blur\", r);\n\t\t};\n\t}, [x]);\n\tlet z = (e) => {\n\t\tE || _e(e), f.onChange?.(e);\n\t}, B = (e, t, n = -1) => {\n\t\tI.current = t, L.current = n, k(t), j(n), z(e);\n\t}, V = (e) => {\n\t\tlet t = F.current, n = I.current, r = L.current;\n\t\tif (P(!0), r >= 0) {\n\t\t\tlet i = Math.min(r, n), a = Math.max(r, n), o = t.slice(0, i) + e + t.slice(a);\n\t\t\tif (b !== void 0 && o.length > b || e === \"\\n\" && T !== void 0 && o.split(\"\\n\").length > T) return;\n\t\t\tB(o, i + 1);\n\t\t} else {\n\t\t\tlet r = t.slice(0, n) + e + t.slice(n);\n\t\t\tif (b !== void 0 && r.length > b || e === \"\\n\" && T !== void 0 && r.split(\"\\n\").length > T) return;\n\t\t\tB(r, n + 1);\n\t\t}\n\t}, xe = () => {\n\t\tlet e = F.current, t = I.current, n = L.current;\n\t\tif (n >= 0) {\n\t\t\tlet r = Math.min(n, t), i = Math.max(n, t);\n\t\t\tB(e.slice(0, r) + e.slice(i), r);\n\t\t} else t > 0 && B(e.slice(0, t - 1) + e.slice(t), t - 1);\n\t}, Se = () => {\n\t\tlet e = F.current, t = I.current, n = L.current;\n\t\tif (n >= 0) {\n\t\t\tlet r = Math.min(n, t), i = Math.max(n, t);\n\t\t\tB(e.slice(0, r) + e.slice(i), r);\n\t\t} else t < e.length && z(e.slice(0, t) + e.slice(t + 1));\n\t}, H = (e, t) => {\n\t\tlet n = I.current, r = L.current, i = F.current.length;\n\t\tif (P(!0), t) {\n\t\t\tr < 0 && (j(n), L.current = n);\n\t\t\tlet t = Math.max(0, Math.min(i, n + e));\n\t\t\tI.current = t, k(t);\n\t\t} else {\n\t\t\tL.current = -1, j(-1);\n\t\t\tlet t = Math.max(0, Math.min(i, n + e));\n\t\t\tI.current = t, k(t);\n\t\t}\n\t}, Ce = (e, t) => {\n\t\tlet n = I.current, r = L.current, i = F.current.length, { visibleChars: a, charLayout: o, totalLines: s, charSpacing: c } = Fe.current, l = n <= 0 ? 0 : n >= a.length ? s - 1 : a[n]?.lineIndex ?? 0, u = Math.max(0, Math.min(s - 1, l + e));\n\t\tif (u === l) return;\n\t\tP(!0);\n\t\tlet d = n > 0 && n <= a.length ? a[n - 1] : void 0, f = d && d.char !== \"\\n\" ? d.x + d.width + c : 0, p = a.filter((e) => e.char !== \"\\n\" && e.lineIndex === u), m;\n\t\tif (p.length === 0) {\n\t\t\tm = 0;\n\t\t\tfor (let e = 0; e < a.length; e++) {\n\t\t\t\tlet t = a[e];\n\t\t\t\tif (t && t.lineIndex >= u) {\n\t\t\t\t\tm = e;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tm = e + 1;\n\t\t\t}\n\t\t} else {\n\t\t\tlet e = 0, t = Infinity;\n\t\t\tfor (let n = 0; n <= p.length; n++) {\n\t\t\t\tlet r = n < p.length ? p[n] : void 0, i = p[p.length - 1], a = r ? r.x + r.width / 2 : i ? i.x + i.width + c : 0, o = Math.abs(f - a);\n\t\t\t\to < t && (t = o, e = n);\n\t\t\t}\n\t\t\tlet n = e < p.length ? p[e] : void 0, r = p[p.length - 1], a = n ? o.indexOf(n) : r ? o.indexOf(r) + 1 : 0;\n\t\t\tm = Math.min(a, i);\n\t\t}\n\t\tt ? r < 0 && (j(n), L.current = n) : (L.current = -1, j(-1)), I.current = m, k(m);\n\t}, we = () => {\n\t\tlet e = L.current, t = I.current;\n\t\tif (e < 0) return \"\";\n\t\tlet n = Math.min(e, t), r = Math.max(e, t);\n\t\treturn F.current.slice(n, r);\n\t}, Te = () => {\n\t\tlet e = we();\n\t\te && navigator.clipboard.writeText(e).catch(() => {});\n\t}, Ee = () => {\n\t\tlet e = we();\n\t\tif (e) {\n\t\t\tnavigator.clipboard.writeText(e).catch(() => {});\n\t\t\tlet t = L.current, n = I.current, r = Math.min(t, n), i = Math.max(t, n), a = F.current;\n\t\t\tB(a.slice(0, r) + a.slice(i), r);\n\t\t}\n\t}, De = () => {\n\t\tnavigator.clipboard.readText().then((e) => {\n\t\t\tif (!e) return;\n\t\t\tlet t = x ? e.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\") : e.replace(/[\\r\\n]/g, \" \"), n = F.current, r = I.current, i = L.current, a, o;\n\t\t\tif (i >= 0) {\n\t\t\t\tlet e = Math.min(i, r), t = Math.max(i, r);\n\t\t\t\ta = e, o = n.slice(0, e) + n.slice(t);\n\t\t\t} else a = r, o = n;\n\t\t\tlet s = t;\n\t\t\tif (b !== void 0) {\n\t\t\t\tlet e = b - o.length;\n\t\t\t\tif (e <= 0) return;\n\t\t\t\ts = s.slice(0, e);\n\t\t\t}\n\t\t\tB(o.slice(0, a) + s + o.slice(a), a + s.length);\n\t\t}).catch(() => {});\n\t}, Oe = h.paddingLeft ?? h.padding ?? 12, ke = f.width ?? h.width ?? 300, U = D.length === 0 && !!v && !M, W = U ? v ?? \"\" : D, Ae = me && !U ? he.repeat(W.length) : W, G = U ? ne : S, je = h.paddingRight ?? h.padding ?? 12, Me = Math.max(1, typeof ke == \"number\" ? ke - Oe - je : 280), K = ee(Ae, Math.max(1, Me), G, C, x, ie, w), q = K;\n\tif (T !== void 0 && !U && ((K.length > 0 ? K[K.length - 1] : void 0)?.lineIndex ?? 0) >= T && (q = K.filter((e) => e.lineIndex < T), re === \"ellipsis\" && q.length > 0 && W.length > q.length)) {\n\t\tlet e = Math.max(0, q.length - 3);\n\t\tq = [\n\t\t\t...q.slice(0, e),\n\t\t\t{\n\t\t\t\tchar: \".\",\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t\tlineIndex: T - 1\n\t\t\t},\n\t\t\t{\n\t\t\t\tchar: \".\",\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t\tlineIndex: T - 1\n\t\t\t},\n\t\t\t{\n\t\t\t\tchar: \".\",\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t\tlineIndex: T - 1\n\t\t\t}\n\t\t];\n\t}\n\tlet J = g(G, w), Y = q.length > 0 ? q[q.length - 1] : void 0, Ne = Y?.char === \"\\n\", X = Y ? Y.lineIndex + 1 + +!!Ne : 1, Pe = X * J, Fe = s({\n\t\tvisibleChars: q,\n\t\tcharLayout: K,\n\t\ttotalLines: X,\n\t\tcharSpacing: C,\n\t\tlineH: J\n\t});\n\tFe.current = {\n\t\tvisibleChars: q,\n\t\tcharLayout: K,\n\t\ttotalLines: X,\n\t\tcharSpacing: C,\n\t\tlineH: J\n\t};\n\tlet Ie = (O < q.length ? q[O] : void 0)?.lineIndex ?? X - 1, Z = O > 0 && O <= q.length ? q[O - 1] : void 0, Le = Z?.char === \"\\n\" ? 0 : Z ? Z.x + Z.width + C : 0, Q = A >= 0 ? Math.min(A, O) : -1, $ = A >= 0 ? Math.max(A, O) : -1, Re = () => {\n\t\ty || (P(!0), R.current?.focus());\n\t};\n\treturn /* @__PURE__ */ u(t, {\n\t\tref: be,\n\t\tdirection: \"row\",\n\t\talignItems: \"start\",\n\t\twidth: f.width ?? h.width ?? 300,\n\t\theight: f.height ?? h.height,\n\t\tbackgroundColor: f.backgroundColor ?? (y ? de ?? h.backgroundColor : h.backgroundColor),\n\t\tborderColor: f.borderColor ?? (M ? ue ?? h.focusedBorderColor ?? h.borderColor : y ? fe ?? h.borderColor : h.borderColor),\n\t\tborderWidth: f.borderWidth ?? (M ? Math.max(2, h.borderWidth ?? 1) : h.borderWidth),\n\t\tcornerRadius: f.cornerRadius ?? h.cornerRadius ?? 4,\n\t\tpadding: f.padding ?? h.padding ?? 8,\n\t\talpha: f.alpha ?? (y ? pe : 1),\n\t\tenableGestures: !y,\n\t\tonTouch: (e) => {\n\t\t\tif (y) return;\n\t\t\tif (Re(), P(!0), U) {\n\t\t\t\tI.current = 0, L.current = -1, k(0), j(-1);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet t = e.localX - Oe, n = e.localY - (h.padding ?? 8), r = Math.max(0, Math.min(X - 1, Math.floor(n / J))), i = q.filter((e) => e.char !== \"\\n\" && e.lineIndex === r);\n\t\t\tif (i.length === 0) {\n\t\t\t\tlet e = 0;\n\t\t\t\tfor (let t = 0; t < q.length; t++) {\n\t\t\t\t\tlet n = q[t];\n\t\t\t\t\tif (n && n.lineIndex >= r) {\n\t\t\t\t\t\te = t;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\te = t + 1;\n\t\t\t\t}\n\t\t\t\tI.current = e, L.current = -1, k(e), j(-1);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet a = 0, o = Infinity;\n\t\t\tfor (let e = 0; e <= i.length; e++) {\n\t\t\t\tlet n = e < i.length ? i[e] : void 0, r = i[i.length - 1], s = n ? n.x + n.width / 2 : r ? r.x + r.width + C : 0, c = Math.abs(t - s);\n\t\t\t\tc < o && (o = c, a = e);\n\t\t\t}\n\t\t\tlet s = a < i.length ? i[a] : void 0, c = i[i.length - 1], l = s ? K.indexOf(s) : c ? K.indexOf(c) + 1 : 0, u = Math.min(l, D.length);\n\t\t\tI.current = u, L.current = -1, k(u), j(-1);\n\t\t},\n\t\toverflow: \"hidden\",\n\t\ttheme: _,\n\t\tchildren: /* @__PURE__ */ d(t, {\n\t\t\twidth: Me,\n\t\t\theight: Pe,\n\t\t\toverflow: \"hidden\",\n\t\t\tdirection: \"stack\",\n\t\t\tchildren: [\n\t\t\t\tq.filter((e) => e.char !== \"\\n\").map((t, n) => /* @__PURE__ */ u(e, {\n\t\t\t\t\tx: t.x,\n\t\t\t\t\ty: t.y,\n\t\t\t\t\ttext: t.char,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tcolor: G.color ?? \"#ffffff\",\n\t\t\t\t\t\t...G.fontSize === void 0 ? {} : { fontSize: G.fontSize },\n\t\t\t\t\t\t...G.fontFamily === void 0 ? {} : { fontFamily: G.fontFamily },\n\t\t\t\t\t\t...G.fontStyle === void 0 ? {} : { fontStyle: G.fontStyle }\n\t\t\t\t\t}\n\t\t\t\t}, `c-${n}`)),\n\t\t\t\tQ >= 0 && $ > Q && q.filter((e) => e.char !== \"\\n\").map((e, n) => {\n\t\t\t\t\tlet r = K.indexOf(e);\n\t\t\t\t\treturn r < Q || r >= $ ? null : /* @__PURE__ */ u(t, {\n\t\t\t\t\t\tx: e.x,\n\t\t\t\t\t\ty: e.y,\n\t\t\t\t\t\twidth: e.width + 2,\n\t\t\t\t\t\theight: J,\n\t\t\t\t\t\tbackgroundColor: ce,\n\t\t\t\t\t\tbackgroundAlpha: le\n\t\t\t\t\t}, `sel-${n}`);\n\t\t\t\t}),\n\t\t\t\tM && ve && /* @__PURE__ */ u(t, {\n\t\t\t\t\tx: Le,\n\t\t\t\t\ty: Ie * J,\n\t\t\t\t\twidth: oe,\n\t\t\t\t\theight: J,\n\t\t\t\t\tbackgroundColor: ae\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t});\n}\n//#endregion\nexport { _ as TextInput };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { VectorDrawContent as t } from \"./primitives/VectorDrawContent.js\";\nimport { View as n } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as r, getGlobalThemeDefaults as i, mergeThemes as a, resolveComponentTheme as o, useEffect as s, useState as c, useSurface as l, useTheme as u } from \"@number10/jsx-core\";\nimport { jsx as d, jsxs as f } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/ActivityIndicator.tsx\nfunction p(e) {\n\tswitch (e) {\n\t\tcase \"small\": return {\n\t\t\tcontainerSize: 20,\n\t\t\tlineWidth: 2,\n\t\t\tdotSize: 4,\n\t\t\tdotCount: 3\n\t\t};\n\t\tcase \"large\": return {\n\t\t\tcontainerSize: 48,\n\t\t\tlineWidth: 4,\n\t\t\tdotSize: 8,\n\t\t\tdotCount: 3\n\t\t};\n\t\tdefault: return {\n\t\t\tcontainerSize: 32,\n\t\t\tlineWidth: 3,\n\t\t\tdotSize: 6,\n\t\t\tdotCount: 3\n\t\t};\n\t}\n}\nfunction m(e) {\n\tlet r = e.size / 2, i = e.size / 2, a = (e.size - e.lineWidth) / 2, o = e.tick * e.speed * .025, s = Math.PI * .75;\n\treturn /* @__PURE__ */ d(n, {\n\t\twidth: e.size,\n\t\theight: e.size,\n\t\tchildren: /* @__PURE__ */ d(t, {\n\t\t\tonDraw: (t) => {\n\t\t\t\tt.lineStyle(e.lineWidth, e.trackColor, .25), t.beginPath(), t.arc(r, i, a, 0, Math.PI * 2), t.strokePath(), t.lineStyle(e.lineWidth, e.color, 1), t.beginPath(), t.arc(r, i, a, o, o + s), t.strokePath();\n\t\t\t},\n\t\t\tdependencies: [\n\t\t\t\te.tick,\n\t\t\t\te.color,\n\t\t\t\te.trackColor\n\t\t\t]\n\t\t})\n\t});\n}\nfunction h(e) {\n\tlet r = e.dotSize / 2, i = e.dotSize * 2.2, a = e.dotCount * i, o = Math.floor(e.tick * e.speed / 10 % e.dotCount);\n\treturn /* @__PURE__ */ d(n, {\n\t\twidth: a,\n\t\theight: e.dotSize,\n\t\tchildren: /* @__PURE__ */ d(t, {\n\t\t\tonDraw: (t) => {\n\t\t\t\tfor (let n = 0; n < e.dotCount; n++) {\n\t\t\t\t\tlet a = n === o ? 1 : .3;\n\t\t\t\t\tt.fillStyle(e.color, a), t.fillCircle(n * i + e.dotSize / 2, r, e.dotSize / 2);\n\t\t\t\t}\n\t\t\t},\n\t\t\tdependencies: [e.tick, e.color]\n\t\t})\n\t});\n}\nfunction g(e) {\n\tlet r = e.size / 2, i = e.size / 2, a = e.size / 2, o = e.tick * e.speed * .01 % 1;\n\treturn /* @__PURE__ */ d(n, {\n\t\twidth: e.size,\n\t\theight: e.size,\n\t\tchildren: /* @__PURE__ */ d(t, {\n\t\t\tonDraw: (t) => {\n\t\t\t\tt.lineStyle(2, e.color, .2), t.beginPath(), t.arc(r, i, a - 1, 0, Math.PI * 2), t.strokePath();\n\t\t\t\tlet n = a * .5 * (.5 + .5 * Math.sin(o * Math.PI * 2)), s = .3 + .7 * Math.abs(Math.cos(o * Math.PI));\n\t\t\t\tt.fillStyle(e.color, s), t.fillCircle(r, i, n);\n\t\t\t},\n\t\t\tdependencies: [e.tick, e.color]\n\t\t})\n\t});\n}\nfunction _(t) {\n\tlet { variant: _, size: v, color: y, trackColor: b, label: x, labels: S, theme: C } = t, w = u(), T = C ? a(w ?? {}, C) : w, { props: E } = o({\n\t\tcomponentName: \"ActivityIndicator\",\n\t\tglobalTheme: i(),\n\t\tlocalTheme: T,\n\t\tknownComponents: r\n\t}), D = l()?.scheduler, [O, k] = c(0), A = _ ?? E.variant ?? \"spinner\", { containerSize: j, lineWidth: M, dotSize: N, dotCount: P } = p(v ?? E.size ?? \"medium\"), F = y ?? E.color ?? 6333946, I = b ?? E.trackColor ?? F, L = (E.animationSpeed ?? 2.4) * (A === \"dots\" ? .25 : 1), R = {\n\t\t...E.labels ?? {},\n\t\t...S ?? {}\n\t}, z = x ?? R.loading, B = E.labelStyle ?? {\n\t\tcolor: \"#9fb3c8\",\n\t\tfontSize: \"13px\"\n\t};\n\treturn s(() => {\n\t\tif (!D) return;\n\t\tlet e = D.setInterval(() => k((e) => e + 1), 1e3 / 60);\n\t\treturn () => e.cancel();\n\t}, [D]), /* @__PURE__ */ f(n, {\n\t\tdirection: \"column\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tgap: E.gap ?? 8,\n\t\twidth: t.width ?? E.width,\n\t\theight: t.height ?? E.height,\n\t\tchildren: [(() => {\n\t\t\tswitch (A) {\n\t\t\t\tcase \"dots\": return /* @__PURE__ */ d(h, {\n\t\t\t\t\tdotSize: N,\n\t\t\t\t\tdotCount: P,\n\t\t\t\t\tcolor: F,\n\t\t\t\t\ttick: O,\n\t\t\t\t\tspeed: L\n\t\t\t\t});\n\t\t\t\tcase \"pulse\": return /* @__PURE__ */ d(g, {\n\t\t\t\t\tsize: j,\n\t\t\t\t\tcolor: F,\n\t\t\t\t\ttick: O,\n\t\t\t\t\tspeed: L\n\t\t\t\t});\n\t\t\t\tdefault: return /* @__PURE__ */ d(m, {\n\t\t\t\t\tsize: j,\n\t\t\t\t\tlineWidth: M,\n\t\t\t\t\tcolor: F,\n\t\t\t\t\ttrackColor: I,\n\t\t\t\t\ttick: O,\n\t\t\t\t\tspeed: L\n\t\t\t\t});\n\t\t\t}\n\t\t})(), z ? /* @__PURE__ */ d(e, {\n\t\t\ttext: z,\n\t\t\tstyle: B\n\t\t}) : null]\n\t});\n}\n//#endregion\nexport { _ as ActivityIndicator };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { resolveComponentTheme as n, useTheme as r } from \"@number10/jsx-core\";\nimport { jsx as i, jsxs as a } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Badge.tsx\nvar o = {\n\tneutral: {\n\t\tbackgroundColor: 4674921,\n\t\tsoftBackgroundColor: 1976635,\n\t\tborderColor: 6583435,\n\t\ttextColor: \"#ffffff\",\n\t\toutlineTextColor: \"#cbd5e1\"\n\t},\n\tprimary: {\n\t\tbackgroundColor: 2450411,\n\t\tsoftBackgroundColor: 1981066,\n\t\tborderColor: 6333946,\n\t\ttextColor: \"#ffffff\",\n\t\toutlineTextColor: \"#93c5fd\"\n\t},\n\tsuccess: {\n\t\tbackgroundColor: 1483594,\n\t\tsoftBackgroundColor: 1332013,\n\t\tborderColor: 4906624,\n\t\ttextColor: \"#ffffff\",\n\t\toutlineTextColor: \"#86efac\"\n\t},\n\twarning: {\n\t\tbackgroundColor: 16096779,\n\t\tsoftBackgroundColor: 7877903,\n\t\tborderColor: 16498468,\n\t\ttextColor: \"#111827\",\n\t\toutlineTextColor: \"#fde68a\"\n\t},\n\tdanger: {\n\t\tbackgroundColor: 14427686,\n\t\tsoftBackgroundColor: 8330525,\n\t\tborderColor: 16281969,\n\t\ttextColor: \"#ffffff\",\n\t\toutlineTextColor: \"#fecaca\"\n\t},\n\tinfo: {\n\t\tbackgroundColor: 561586,\n\t\tsoftBackgroundColor: 1461859,\n\t\tborderColor: 2282478,\n\t\ttextColor: \"#ffffff\",\n\t\toutlineTextColor: \"#a5f3fc\"\n\t}\n}, s = {\n\tsmall: {\n\t\theight: 22,\n\t\tpadding: {\n\t\t\tleft: 8,\n\t\t\tright: 8,\n\t\t\ttop: 3,\n\t\t\tbottom: 3\n\t\t},\n\t\tfontSize: 12,\n\t\tcornerRadius: 11,\n\t\tgap: 5,\n\t\tdotSize: 8\n\t},\n\tmedium: {\n\t\theight: 26,\n\t\tpadding: {\n\t\t\tleft: 10,\n\t\t\tright: 10,\n\t\t\ttop: 4,\n\t\t\tbottom: 4\n\t\t},\n\t\tfontSize: 14,\n\t\tcornerRadius: 13,\n\t\tgap: 6,\n\t\tdotSize: 10\n\t},\n\tlarge: {\n\t\theight: 32,\n\t\tpadding: {\n\t\t\tleft: 13,\n\t\t\tright: 13,\n\t\t\ttop: 5,\n\t\t\tbottom: 5\n\t\t},\n\t\tfontSize: 18,\n\t\tcornerRadius: 16,\n\t\tgap: 8,\n\t\tdotSize: 12\n\t}\n}, c = new Set([\n\t\"View\",\n\t\"Text\",\n\t\"Image\",\n\t\"Sprite\",\n\t\"Badge\",\n\t\"Tag\",\n\t\"Icon\"\n]);\nfunction l({ count: e, maxCount: t = 99 }) {\n\tif (!Number.isFinite(e)) return \"0\";\n\tlet n = Math.max(0, Math.floor(e ?? 0)), r = Math.max(0, Math.floor(t));\n\treturn n > r ? `${r}+` : `${n}`;\n}\nfunction u(e, t) {\n\tlet n = o[e];\n\treturn t === \"outline\" ? {\n\t\tbg: 0,\n\t\tbgAlpha: 0,\n\t\tborder: n.borderColor,\n\t\tborderW: 1,\n\t\ttextColor: n.outlineTextColor\n\t} : t === \"soft\" ? {\n\t\tbg: n.softBackgroundColor,\n\t\tbgAlpha: 1,\n\t\tborder: n.borderColor,\n\t\tborderW: 1,\n\t\ttextColor: n.outlineTextColor\n\t} : {\n\t\tbg: n.backgroundColor,\n\t\tbgAlpha: 1,\n\t\tborder: n.borderColor,\n\t\tborderW: 0,\n\t\ttextColor: n.textColor\n\t};\n}\nfunction d(e) {\n\treturn s[e];\n}\nfunction f(a) {\n\tlet { children: o, label: s, count: f, maxCount: p, dot: m = !1, tone: h, variant: g, size: _, style: v, disabled: y = !1, disabledAlpha: b, theme: x, width: S, height: C, ...w } = a, T = r(), { props: E } = n({\n\t\tcomponentName: \"Badge\",\n\t\tlocalTheme: x ?? T,\n\t\texplicitProps: {\n\t\t\ttone: h,\n\t\t\tvariant: g,\n\t\t\tsize: _\n\t\t},\n\t\tknownComponents: c\n\t}), D = h ?? E.tone ?? \"neutral\", O = g ?? E.variant ?? \"solid\", k = d(_ ?? E.size ?? \"medium\"), A = u(D, O), j = b ?? E.disabledAlpha ?? .5, M = p ?? E.maxCount ?? 99, N = f === void 0 ? s === void 0 ? \"\" : `${s}` : l({\n\t\tcount: f,\n\t\tmaxCount: M\n\t}), P = {\n\t\tcolor: A.textColor,\n\t\tfontSize: k.fontSize\n\t};\n\tif (m) {\n\t\tlet e = k.dotSize;\n\t\treturn /* @__PURE__ */ i(t, {\n\t\t\twidth: S ?? e,\n\t\t\theight: C ?? e,\n\t\t\tbackgroundColor: A.bg,\n\t\t\tbackgroundAlpha: A.bgAlpha,\n\t\t\tborderColor: A.border,\n\t\t\tborderWidth: A.borderW,\n\t\t\tcornerRadius: e / 2,\n\t\t\t...y ? { alpha: j } : {},\n\t\t\t...w\n\t\t});\n\t}\n\treturn /* @__PURE__ */ i(t, {\n\t\twidth: S ?? \"auto\",\n\t\theight: C ?? k.height,\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tgap: k.gap,\n\t\tpadding: k.padding,\n\t\tbackgroundColor: A.bg,\n\t\tbackgroundAlpha: A.bgAlpha,\n\t\tborderColor: A.border,\n\t\tborderWidth: A.borderW,\n\t\tcornerRadius: k.cornerRadius,\n\t\t...y ? { alpha: j } : {},\n\t\t...w,\n\t\tchildren: o ?? (N ? /* @__PURE__ */ i(e, {\n\t\t\ttext: N,\n\t\t\tstyle: {\n\t\t\t\t...P,\n\t\t\t\t...v\n\t\t\t}\n\t\t}) : null)\n\t});\n}\nfunction p(e) {\n\treturn e.count === void 0 ? e.label === void 0 ? \"\" : `${e.label}` : l(e);\n}\nfunction m(o) {\n\tlet { selected: s = !1, onRemove: l, closeLabel: f = \"×\", tone: p, variant: m, size: h, style: g, theme: _, children: v, label: y, disabled: b = !1, disabledAlpha: x, ...S } = o, C = r(), { props: w } = n({\n\t\tcomponentName: \"Tag\",\n\t\tlocalTheme: _ ?? C,\n\t\tknownComponents: c\n\t}), T = p ?? w.tone ?? (s ? \"primary\" : \"neutral\"), E = m ?? w.variant ?? (s ? \"solid\" : \"soft\"), D = d(h ?? w.size ?? \"medium\"), O = u(T, E), k = x ?? w.disabledAlpha ?? .5, A = y === void 0 ? \"\" : `${y}`, j = {\n\t\tcolor: O.textColor,\n\t\tfontSize: D.fontSize,\n\t\t...g\n\t};\n\treturn /* @__PURE__ */ a(t, {\n\t\twidth: \"auto\",\n\t\theight: D.height,\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tgap: D.gap,\n\t\tpadding: D.padding,\n\t\tbackgroundColor: O.bg,\n\t\tbackgroundAlpha: O.bgAlpha,\n\t\tborderColor: O.border,\n\t\tborderWidth: O.borderW,\n\t\tcornerRadius: D.cornerRadius,\n\t\t...b ? { alpha: k } : {},\n\t\t...S,\n\t\tchildren: [\n\t\t\ty ? /* @__PURE__ */ i(e, {\n\t\t\t\ttext: A,\n\t\t\t\tstyle: j\n\t\t\t}) : null,\n\t\t\tv,\n\t\t\tl ? /* @__PURE__ */ i(t, {\n\t\t\t\twidth: 16,\n\t\t\t\theight: 16,\n\t\t\t\tjustifyContent: \"center\",\n\t\t\t\talignItems: \"center\",\n\t\t\t\tcornerRadius: 16 / 2,\n\t\t\t\tenableGestures: !0,\n\t\t\t\tonTouch: () => l(),\n\t\t\t\tchildren: /* @__PURE__ */ i(e, {\n\t\t\t\t\ttext: f,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...j,\n\t\t\t\t\t\tfontSize: 16 * .7\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}) : null\n\t\t]\n\t});\n}\n//#endregion\nexport { f as Badge, m as Tag, l as formatBadgeCount, p as getBadgeText };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useEffect as o, useState as s, useTheme as c } from \"@number10/jsx-core\";\nimport { jsx as l, jsxs as u } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Checkbox.tsx\nfunction d(e, t) {\n\treturn t ? e === !1 ? !0 : e === !0 ? \"indeterminate\" : !1 : e !== !0;\n}\nfunction f(e, t) {\n\treturn e === \"indeterminate\" && !t ? !1 : e;\n}\nfunction p(n) {\n\tlet { checked: r, disabled: i, size: a, color: o, checkedColor: s, indeterminateColor: c } = n, u = Math.max(2, Math.round(a * .1)), d = Math.max(4, Math.round(a * .22)), f = Math.max(2, Math.round(a * .15)), p = i ? .45 : 1;\n\treturn /* @__PURE__ */ l(t, {\n\t\twidth: a,\n\t\theight: a,\n\t\tborderColor: r === !1 ? o : r === !0 ? s : c,\n\t\tborderWidth: u,\n\t\tbackgroundAlpha: 0,\n\t\tcornerRadius: f,\n\t\talpha: p,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tchildren: r === !0 ? /* @__PURE__ */ l(e, {\n\t\t\ttext: \"✓\",\n\t\t\tstyle: {\n\t\t\t\tcolor: `#${s.toString(16).padStart(6, \"0\")}`,\n\t\t\t\tfontSize: `${Math.round(a * .7)}px`,\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t},\n\t\t\talpha: p\n\t\t}) : r === \"indeterminate\" ? /* @__PURE__ */ l(t, {\n\t\t\twidth: a - d * 2,\n\t\t\theight: u + 1,\n\t\t\tbackgroundColor: c,\n\t\t\tbackgroundAlpha: p,\n\t\t\tcornerRadius: 1\n\t\t}) : null\n\t});\n}\nfunction m(m) {\n\tlet h = c(), g = m.theme ? i(h ?? {}, m.theme) : h, { props: _, nestedTheme: v } = a({\n\t\tcomponentName: \"Checkbox\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: g,\n\t\tknownComponents: n\n\t}), y = _.size ?? 20, b = _.gap ?? 8, x = m.labelPosition ?? _.labelPosition ?? \"right\", S = m.disabled ?? !1, C = _.disabledAlpha ?? .5, w = m.tristate ?? !1, [T, E] = s(f(m.checked ?? m.defaultChecked ?? !1, w));\n\to(() => {\n\t\tm.checked !== void 0 && E(f(m.checked, w));\n\t}, [m.checked, w]);\n\tlet D = {\n\t\tchecked: T,\n\t\tdisabled: S,\n\t\tsize: y,\n\t\tcolor: _.color ?? 7829367,\n\t\tcheckedColor: _.checkedColor ?? 5025616,\n\t\tindeterminateColor: _.indeterminateColor ?? _.checkedColor ?? 5025616\n\t}, O = () => {\n\t\tif (S) return;\n\t\tlet e = d(T, w);\n\t\tm.checked === void 0 && E(e), m.onChange?.(e);\n\t}, k = m.indicator ?? m.renderIndicator?.(D) ?? /* @__PURE__ */ l(p, { ...D }), A = m.label && x !== \"none\" ? /* @__PURE__ */ l(e, {\n\t\ttext: m.label,\n\t\tstyle: _.labelStyle,\n\t\talpha: S ? C : 1\n\t}) : null;\n\treturn /* @__PURE__ */ u(t, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tenableGestures: !S,\n\t\tonTouch: O,\n\t\ttheme: v,\n\t\tgap: b,\n\t\talpha: S ? C : 1,\n\t\tchildren: [\n\t\t\tx === \"left\" && A,\n\t\t\tk,\n\t\t\tx !== \"left\" && A\n\t\t]\n\t}, m.key);\n}\n//#endregion\nexport { m as Checkbox, d as getNextCheckedState, f as normalizeCheckedState };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useTheme as o } from \"@number10/jsx-core\";\nimport { jsx as s, jsxs as c } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/RadioButton.tsx\nfunction l(l) {\n\tlet u = o(), d = l.theme ? i(u ?? {}, l.theme) : u, { props: f, nestedTheme: p } = a({\n\t\tcomponentName: \"RadioButton\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: d,\n\t\tknownComponents: n\n\t}), m = f.size ?? 18, h = f.innerSize ?? Math.max(6, Math.round(m * .45)), g = h * .5, _ = f.borderWidth ?? Math.max(2, Math.round(m * .11)), v = l.selected ?? !1, y = l.disabled ?? !1, b = f.disabledAlpha ?? .5, x = l.labelPosition ?? f.labelPosition ?? \"right\", S = f.selectedColor ?? 2201331, C = f.color ?? 7697781, w = v ? S : C, T = f.backgroundColor, E = f.gap ?? 8, D = x === \"none\" ? null : /* @__PURE__ */ s(e, {\n\t\ttext: l.label,\n\t\tstyle: f.labelStyle,\n\t\talpha: y ? b : 1\n\t});\n\treturn /* @__PURE__ */ c(t, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tenableGestures: !y,\n\t\tonTouch: () => {\n\t\t\ty || l.onClick?.();\n\t\t},\n\t\ttheme: p,\n\t\tgap: E,\n\t\talpha: y ? b : 1,\n\t\tchildren: [\n\t\t\tx === \"left\" && D,\n\t\t\t/* @__PURE__ */ s(t, {\n\t\t\t\twidth: m,\n\t\t\t\theight: m,\n\t\t\t\t...T === void 0 ? {} : { backgroundColor: T },\n\t\t\t\tborderColor: w,\n\t\t\t\tborderWidth: _,\n\t\t\t\talignItems: \"center\",\n\t\t\t\tjustifyContent: \"center\",\n\t\t\t\tpadding: 0,\n\t\t\t\tcornerRadius: m * .5,\n\t\t\t\tchildren: /* @__PURE__ */ s(t, {\n\t\t\t\t\twidth: h,\n\t\t\t\t\theight: h,\n\t\t\t\t\tbackgroundColor: S,\n\t\t\t\t\tvisible: v,\n\t\t\t\t\tcornerRadius: g\n\t\t\t\t})\n\t\t\t}),\n\t\t\tx === \"right\" ? D : null\n\t\t]\n\t}, l.key);\n}\n//#endregion\nexport { l as RadioButton };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { RadioButton as t } from \"./RadioButton.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useState as o, useTheme as s } from \"@number10/jsx-core\";\nimport { jsx as c } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/RadioGroup.tsx\nfunction l(l) {\n\tlet u = s(), d = l.theme ? i(u ?? {}, l.theme) : u, { props: f, nestedTheme: p } = a({\n\t\tcomponentName: \"RadioGroup\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: d,\n\t\tknownComponents: n\n\t}), [m, h] = o(l.value ?? l.defaultValue ?? \"\"), g = l.value ?? m, _ = (e) => {\n\t\tl.disabled || (l.value === void 0 && h(e), l.onChange?.(e));\n\t};\n\treturn /* @__PURE__ */ c(e, {\n\t\tdirection: l.direction ?? f.direction ?? \"column\",\n\t\ttheme: p,\n\t\tgap: f.gap ?? 8,\n\t\tchildren: l.options.map((e) => {\n\t\t\tlet n = g === e.value;\n\t\t\treturn /* @__PURE__ */ c(t, {\n\t\t\t\tlabel: e.label,\n\t\t\t\tselected: n,\n\t\t\t\tdisabled: l.disabled ?? !1,\n\t\t\t\tonClick: () => _(e.value)\n\t\t\t}, e.value);\n\t\t})\n\t});\n}\n//#endregion\nexport { l as RadioGroup };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport \"@number10/jsx-core\";\nimport { jsx as t } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Divider.tsx\nfunction n(n) {\n\tlet { orientation: r = \"horizontal\", thickness: i = 1, color: a = 13421772, length: o } = n, s = r === \"horizontal\";\n\treturn /* @__PURE__ */ t(e, {\n\t\twidth: s ? o ?? \"100%\" : i,\n\t\theight: s ? i : o ?? \"100%\",\n\t\tbackgroundColor: a\n\t});\n}\n//#endregion\nexport { n as Divider };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Easing as t, KNOWN_COMPONENTS as n, createTween as r, getGlobalThemeDefaults as i, resolveComponentTheme as a, useRef as o, useState as s, useSurface as c, useTheme as l } from \"@number10/jsx-core\";\nimport { jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/ScrollSlider.tsx\nfunction f(e, t) {\n\tlet n = t ?? i().ScrollSlider ?? {}, r = e === \"large\" ? 1.25 : e === \"small\" ? .75 : e === \"tiny\" ? .5 : e === \"micro\" ? .25 : e === \"nano\" ? .125 : 1, a = (n.borderWidth ?? 1) * r, o = (n.size ?? 24) * r;\n\treturn {\n\t\tborder: a,\n\t\touter: o,\n\t\tdimension: o - a * 2\n\t};\n}\nfunction p(p) {\n\tlet { direction: m, scrollPosition: h, viewportSize: g, contentSize: _, onScroll: v, momentum: y = !0, onMomentumEnd: b } = p, x = l(), { props: S } = a({\n\t\tcomponentName: \"ScrollSlider\",\n\t\tglobalTheme: i(),\n\t\tlocalTheme: x,\n\t\tknownComponents: n\n\t}), C = o(null), w = o(!1), [T, E] = s(!1), D = o(null), O = o(0), k = o(0), A = o(null), j = c()?.scheduler ?? null, M = o(j);\n\tj && M.current !== j && (M.current = j);\n\tlet N = m === \"vertical\", { border: P, outer: F, dimension: I } = f(p.size, S), L = F / (S.size ?? 24), R = Math.min((S.thumbBorderWidth ?? 1) * L, Math.max(0, I / 3)), z = S.cornerRadius ?? F / 2, B = S.trackCornerRadius ?? I / 2, V = S.thumbCornerRadius ?? I / 2, H = D.current?.__getLayoutSize?.(), U = (H && (N ? H.height > 0 : H.width > 0) ? N ? H.height : H.width : Math.max(0, g)) - P * 2, W = S.minThumbSize ?? 20, G = Math.max(0, _ - g), K = _ > 0 ? g / _ : 1, q = Math.max(W, U * K), J = U - q, Y = G > 0 ? h / G * J : 0, X = (e) => {\n\t\tif (e.stopPropagation(), e.state === \"start\") {\n\t\t\tw.current = !0, E(!0), O.current = 0, k.current = Date.now(), A.current &&= (A.current.stop(), null);\n\t\t\treturn;\n\t\t}\n\t\tif (e.state === \"end\") {\n\t\t\tw.current = !1, E(!1), y && Math.abs(O.current) > .1 ? Z(h) : b && b();\n\t\t\treturn;\n\t\t}\n\t\tif (!w.current) return;\n\t\tlet t = N ? e.dy ?? 0 : e.dx ?? 0, n = Date.now(), r = n - k.current;\n\t\tr > 0 && (O.current = t / r * 1e3, k.current = n);\n\t\tlet i = Math.max(0, Math.min(J, Y + t));\n\t\tv(J > 0 ? i / J * G : 0);\n\t}, Z = (e) => {\n\t\tif (!M.current) return;\n\t\tlet n = Math.min(1e3, Math.max(200, Math.abs(O.current))), i = Math.max(0, Math.min(G, e + O.current * (n / 1e3)));\n\t\tA.current = r({ pos: e }, {\n\t\t\tto: { pos: i },\n\t\t\tduration: n,\n\t\t\tease: t.quadOut,\n\t\t\tonUpdate: (e) => v(e.pos),\n\t\t\tonComplete: () => {\n\t\t\t\tA.current = null, b && b();\n\t\t\t}\n\t\t}, M.current);\n\t};\n\treturn /* @__PURE__ */ u(e, {\n\t\tref: D,\n\t\twidth: N ? F : \"100%\",\n\t\theight: N ? \"100%\" : F,\n\t\tbackgroundColor: S.borderColor ?? 0,\n\t\tcornerRadius: z,\n\t\tpadding: P,\n\t\tchildren: /* @__PURE__ */ d(e, {\n\t\t\tref: C,\n\t\t\twidth: N ? I : \"100%\",\n\t\t\theight: N ? \"100%\" : I,\n\t\t\tbackgroundColor: S.trackColor ?? 14540253,\n\t\t\tcornerRadius: B,\n\t\t\tdirection: \"stack\",\n\t\t\tpadding: 0,\n\t\t\tchildren: [/* @__PURE__ */ u(e, {\n\t\t\t\twidth: N ? I : \"100%\",\n\t\t\t\theight: N ? \"100%\" : I,\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\tbackgroundColor: S.trackColor ?? 11184810,\n\t\t\t\tcornerRadius: B,\n\t\t\t\tenableGestures: !0,\n\t\t\t\tonTouch: (e) => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\tlet t = N ? e.localY ?? 0 : e.localX ?? 0, n = Math.max(q / 2, Math.min(U - q / 2, t)) - q / 2, r = J > 0 ? n / J * G : 0;\n\t\t\t\t\tv(Math.max(0, Math.min(G, r)));\n\t\t\t\t}\n\t\t\t}), /* @__PURE__ */ u(e, {\n\t\t\t\twidth: N ? I : q,\n\t\t\t\theight: N ? q : I,\n\t\t\t\tx: N ? 0 : Y,\n\t\t\t\ty: N ? Y : 0,\n\t\t\t\tbackgroundColor: T ? S.thumbActiveColor ?? S.thumbColor ?? 15658683 : S.thumbColor ?? 15658683,\n\t\t\t\tborderColor: S.thumbBorderColor,\n\t\t\t\tborderWidth: R,\n\t\t\t\tcornerRadius: V,\n\t\t\t\tenableGestures: !0,\n\t\t\t\tonTouchMove: X\n\t\t\t})]\n\t\t})\n\t});\n}\n//#endregion\nexport { p as ScrollSlider, f as calculateSliderSize };\n","import { KNOWN_COMPONENTS as e, PRIMITIVE_NODES as t, getGlobalThemeDefaults as n, jsx as r, mergeThemes as i, resolveComponentTheme as a, useTheme as o } from \"@number10/jsx-core\";\n//#region src/Image.tsx\nfunction s(s) {\n\tlet { theme: c, key: l, ...u } = s, d = o(), f = c ? i(d ?? {}, c) : d, { props: p, nestedTheme: m } = a({\n\t\tcomponentName: \"Image\",\n\t\tglobalTheme: n(),\n\t\tlocalTheme: f,\n\t\tknownComponents: e\n\t}), h = {\n\t\tkey: l,\n\t\ttheme: m\n\t};\n\th.texture = u.texture;\n\tfor (let [e, t] of Object.entries(u)) t !== void 0 && (h[e] = t);\n\treturn h.displayWidth === void 0 && typeof h.width == \"number\" && (h.displayWidth = h.width), h.displayHeight === void 0 && typeof h.height == \"number\" && (h.displayHeight = h.height), h.alpha === void 0 && p.alpha !== void 0 && (h.alpha = p.alpha), r(t.Image, h);\n}\n//#endregion\nexport { s as Image };\n","import { VectorDrawContent as e } from \"./primitives/VectorDrawContent.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { createTween as n, useRef as r, useState as i, useSurface as a } from \"@number10/jsx-core\";\nimport { jsx as o, jsxs as s } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Joystick.tsx\nfunction c(t, n) {\n\tfunction r(t, n = 65280) {\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(n, .1).fillCircle(0, 0, t + 10), e.fillStyle(0, .4).fillCircle(0, 0, t), e.lineStyle(3, n, 1).strokeCircle(0, 0, t), e.lineStyle(1, n, .5).strokeCircle(0, 0, t - 5);\n\t\t\tfor (let r = 0; r < 4; r++) {\n\t\t\t\tlet i = r * 90 * Math.PI / 180;\n\t\t\t\te.lineStyle(2, n, .7).lineBetween(Math.cos(i) * (t - 15), Math.sin(i) * (t - 15), Math.cos(i) * (t - 5), Math.sin(i) * (t - 5));\n\t\t\t}\n\t\t} });\n\t}\n\tfunction i(t, n = 65280) {\n\t\tlet r = t * .4;\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(n, .2).fillCircle(0, 0, r + 5), e.fillStyle(n, .8).fillCircle(0, 0, r), e.lineStyle(2, n, 1).strokeCircle(0, 0, r), e.lineStyle(2, 0, .8), e.moveTo(0, -r * .6).lineTo(0, r * .6), e.moveTo(-r * .6, 0).lineTo(r * .6, 0), e.strokePath();\n\t\t} });\n\t}\n\tfunction a(t, n = 16711680) {\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(0, .3).fillCircle(0, 0, t);\n\t\t\tfor (let r = 0; r < 3; r++) e.lineStyle(2, n, .6 - r * .15).strokeCircle(0, 0, t - r * 20);\n\t\t\te.lineStyle(1, n, .5), e.moveTo(-t, 0).lineTo(t, 0), e.moveTo(0, -t).lineTo(0, t), e.strokePath(), e.fillStyle(n, .8).fillCircle(0, 0, 5);\n\t\t} });\n\t}\n\tfunction s(t, n = 16711680) {\n\t\tlet r = t * .35;\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(n, .7).fillCircle(0, 0, r), e.fillStyle(16777215, .9).fillCircle(0, 0, r * .5), e.fillStyle(n, 1).fillCircle(0, 0, r * .2), e.lineStyle(3, n, 1), e.beginPath(), e.moveTo(0, -r).lineTo(r * .3, -r * .6).lineTo(-r * .3, -r * .6), e.closePath().fillPath();\n\t\t} });\n\t}\n\tfunction c(t, n = 16777215) {\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(n, .15).fillCircle(0, 0, t), e.fillStyle(n, .3).fillCircle(-t * .3, -t * .3, t * .4), e.lineStyle(2, n, .5).strokeCircle(0, 0, t), e.lineStyle(1, n, .3).strokeCircle(0, 0, t - 3);\n\t\t} });\n\t}\n\tfunction l(t, n = 16777215) {\n\t\tlet r = t * .4;\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(0, .2).fillCircle(r * .1, r * .1, r), e.fillStyle(n, .4).fillCircle(0, 0, r), e.fillStyle(n, .6).fillCircle(-r * .3, -r * .3, r * .4), e.lineStyle(2, n, .7).strokeCircle(0, 0, r);\n\t\t} });\n\t}\n\tfunction u(t, n = 65280) {\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(1710618, .8).fillCircle(0, 0, t), e.lineStyle(1, n, .3);\n\t\t\tfor (let n = -t; n <= t; n += 20) e.moveTo(-t, n).lineTo(t, n), e.moveTo(n, -t).lineTo(n, t);\n\t\t\te.strokePath(), e.lineStyle(2, n, .6), e.strokeCircle(0, 0, t), e.strokeCircle(0, 0, t * .66), e.strokeCircle(0, 0, t * .33);\n\t\t\tlet r = [-t * .7, t * .7];\n\t\t\te.lineStyle(3, n, .8), r.forEach((t) => r.forEach((n) => {\n\t\t\t\te.moveTo(t - 10, n).lineTo(t + 10, n), e.moveTo(t, n - 10).lineTo(t, n + 10);\n\t\t\t})), e.strokePath();\n\t\t} });\n\t}\n\tfunction d(t, n = 65280) {\n\t\tlet r = t * .3;\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(n, .9).fillCircle(0, 0, r), e.fillStyle(0, 1), e.beginPath(), e.moveTo(0, -r).lineTo(r * .5, r * .3).lineTo(-r * .5, r * .3), e.closePath().fillPath(), e.lineStyle(2, 0, .8).strokeCircle(0, 0, r);\n\t\t} });\n\t}\n\tfunction f(t, n = 65280) {\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.fillStyle(0, .25).lineStyle(1, n), e.fillCircle(0, 0, t).strokeCircle(0, 0, t);\n\t\t} });\n\t}\n\tfunction p(t, n = 65280) {\n\t\tlet r = t * .2;\n\t\treturn /* @__PURE__ */ o(e, { onDraw: (e) => {\n\t\t\te.lineStyle(2, 0, 1), e.moveTo(0, -r).lineTo(0, r), e.moveTo(-r, 0).lineTo(r, 0), e.strokePath(), e.lineStyle(2, n, .75).strokeCircle(0, 0, r * 1.1);\n\t\t} });\n\t}\n\tlet m = t == null ? \"default\" : t.theme, h = (t == null ? 65280 : t.tint) ?? 65280;\n\tswitch (m) {\n\t\tcase \"neon\": return {\n\t\t\tbase: r(n, h),\n\t\t\tthumb: i(n, h),\n\t\t\trotateThumb: !1\n\t\t};\n\t\tcase \"target\": return {\n\t\t\tbase: a(n, h),\n\t\t\tthumb: s(n, h),\n\t\t\trotateThumb: !0\n\t\t};\n\t\tcase \"glass\": return {\n\t\t\tbase: c(n, h),\n\t\t\tthumb: l(n, h),\n\t\t\trotateThumb: !1\n\t\t};\n\t\tcase \"military\": return {\n\t\t\tbase: u(n, h),\n\t\t\tthumb: d(n, h),\n\t\t\trotateThumb: !0\n\t\t};\n\t\tdefault: return {\n\t\t\tbase: f(n, h),\n\t\t\tthumb: p(n, h),\n\t\t\trotateThumb: !1\n\t\t};\n\t}\n}\nfunction l(e) {\n\tlet [l, u] = i({\n\t\tx: 0,\n\t\ty: 0\n\t}), [d, f] = i(0), [p, m] = i({\n\t\twidth: 0,\n\t\theight: 0\n\t}), h = r(!1), g = r(null), _ = r(!1), v = r(null), y = a()?.scheduler, b = typeof e.width == \"number\" ? e.width : 200, x = typeof e.height == \"number\" ? e.height : 200, S = {\n\t\tx: b / 2,\n\t\ty: x / 2\n\t}, C = Math.min(b, x) / 2;\n\tp.width === 0 && Promise.resolve().then(() => {\n\t\tm({\n\t\t\twidth: b,\n\t\t\theight: x\n\t\t}), u(S);\n\t});\n\tlet w = e.base != null && e.thumb ? {\n\t\tbase: e.base,\n\t\tthumb: e.thumb,\n\t\trotateThumb: e.rotateThumb ?? !1\n\t} : c(e.joystickTheme, C), T = (e) => {\n\t\tlet t = e;\n\t\treturn t ? t.pointerId ?? t.id ?? null : null;\n\t}, E = (t) => {\n\t\tt.stopPropagation();\n\t\tlet r = T(t.pointer);\n\t\tif (_.current && r !== v.current) return;\n\t\tif (t.state === \"start\" && (h.current = !1, _.current = !0, v.current = r), t.state === \"end\") {\n\t\t\t_.current = !1, v.current = null, g.current &&= (g.current.stop(), null), y ? g.current = n({\n\t\t\t\tx: l.x,\n\t\t\t\ty: l.y,\n\t\t\t\tangle: d\n\t\t\t}, {\n\t\t\t\tto: {\n\t\t\t\t\tx: S.x,\n\t\t\t\t\ty: S.y,\n\t\t\t\t\tangle: 0\n\t\t\t\t},\n\t\t\t\tduration: 150,\n\t\t\t\tonUpdate: (e) => {\n\t\t\t\t\tu({\n\t\t\t\t\t\tx: e.x,\n\t\t\t\t\t\ty: e.y\n\t\t\t\t\t}), f(e.angle ?? 0);\n\t\t\t\t},\n\t\t\t\tonComplete: () => {\n\t\t\t\t\tg.current = null, e.onMove?.(!1, 0, 0);\n\t\t\t\t}\n\t\t\t}, y) : (u(S), f(0), e.onMove?.(!1, 0, 0));\n\t\t\treturn;\n\t\t}\n\t\tif (!_.current) return;\n\t\tlet i = t.localX - S.x, a = t.localY - S.y, o = Math.sqrt(i * i + a * a), s = C * .6, c = Math.min(o, s), p = Math.atan2(a, i), m = (p * 180 / Math.PI + 360) % 360, b = o > 0 ? Math.min(o / s, 1) : 0;\n\t\tu({\n\t\t\tx: S.x + (o > 0 ? c / o * i : 0),\n\t\t\ty: S.y + (o > 0 ? c / o * a : 0)\n\t\t}), (e.rotateThumb ?? w.rotateThumb) && f(p);\n\t\tlet x = e.minForce ?? .1;\n\t\tb > x && (h.current = !0), e.onMove?.(b > x || h.current, m, b);\n\t};\n\treturn /* @__PURE__ */ s(t, {\n\t\twidth: e.width,\n\t\theight: e.height,\n\t\tdirection: \"stack\",\n\t\tenableGestures: !0,\n\t\tonTouchMove: E,\n\t\tonTouchOutside: E,\n\t\tchildren: [/* @__PURE__ */ o(t, {\n\t\t\tx: S.x,\n\t\t\ty: S.y,\n\t\t\tchildren: w.base\n\t\t}), /* @__PURE__ */ o(t, {\n\t\t\tx: l.x,\n\t\t\ty: l.y,\n\t\t\t...w.rotateThumb ? { rotation: d } : {},\n\t\t\tchildren: w.thumb\n\t\t})]\n\t});\n}\n//#endregion\nexport { l as Joystick };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Button as n } from \"./Button.js\";\nimport { ContextMenu as r } from \"./Popover.js\";\nimport { KNOWN_COMPONENTS as i, getGlobalThemeDefaults as a, mergeThemes as o, resolveComponentTheme as s, useState as c, useTheme as l } from \"@number10/jsx-core\";\nimport { jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/MenuButton.tsx\nfunction f(f) {\n\tlet { items: p, onSelect: m, children: h, label: g, icon: _, trigger: v, open: y, defaultOpen: b, onOpenChange: x, placement: S, width: C, buttonVariant: w, buttonSize: T, buttonProps: E, disabled: D = !1, theme: O, ...k } = f, A = l(), j = O ? o(A ?? {}, O) : A, { props: M, nestedTheme: N } = s({\n\t\tcomponentName: \"MenuButton\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: j,\n\t\tknownComponents: i\n\t}), [P, F] = c(b ?? !1), I = y !== void 0, L = I ? y : P, R = (e) => {\n\t\tI || F(e), x?.(e);\n\t}, z = (e) => {\n\t\tm?.(e);\n\t}, B = () => {\n\t\tif (v) return v({\n\t\t\tisOpen: L,\n\t\t\tdisabled: D\n\t\t});\n\t\tif (h !== void 0) return /* @__PURE__ */ u(n, {\n\t\t\t...E,\n\t\t\tvariant: w ?? M.buttonVariant ?? \"secondary\",\n\t\t\tsize: T ?? M.buttonSize ?? \"medium\",\n\t\t\tdisabled: D,\n\t\t\ttheme: N,\n\t\t\tchildren: h\n\t\t});\n\t\tlet r = _ !== void 0, i = g !== void 0;\n\t\treturn /* @__PURE__ */ u(n, {\n\t\t\t...E,\n\t\t\tvariant: w ?? M.buttonVariant ?? \"secondary\",\n\t\t\tsize: T ?? M.buttonSize ?? \"medium\",\n\t\t\tdisabled: D,\n\t\t\tlabel: r ? void 0 : g,\n\t\t\ttheme: N,\n\t\t\tchildren: r && /* @__PURE__ */ d(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\talignItems: \"center\",\n\t\t\t\tjustifyContent: \"center\",\n\t\t\t\tgap: M.iconGap ?? 8,\n\t\t\t\tchildren: [_, i && /* @__PURE__ */ u(e, { text: String(g) })]\n\t\t\t})\n\t\t});\n\t}, V = C ?? M.width;\n\treturn /* @__PURE__ */ u(r, {\n\t\t...k,\n\t\titems: p,\n\t\tonSelect: z,\n\t\tisOpen: L,\n\t\tonOpenChange: R,\n\t\tplacement: S ?? M.placement ?? \"bottom-start\",\n\t\t...V === void 0 ? {} : { width: V },\n\t\tdisabled: D,\n\t\ttheme: N,\n\t\ttrigger: B()\n\t});\n}\n//#endregion\nexport { f as MenuButton };\n","import { Image as e } from \"./primitives/Image.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { PRIMITIVE_NODES as n, computeSourceSlices as r, createElement as i, getCurrentOrThrow as a, jsx as o, useEffect as s, useMemo as c, useState as l } from \"@number10/jsx-core\";\nimport { jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/NineSlice.tsx\nfunction f(e, t, n, i, a, o) {\n\treturn r(e, t, n, i, a, o).map((e) => ({ ...e }));\n}\nfunction p() {\n\treturn a().surface?.capabilities?.has(\"nineslice\") === !0;\n}\nfunction m(e, t = !0) {\n\treturn !(e === \"fallback\" || !p() || !t);\n}\nfunction h(e, t, r) {\n\tlet i = {\n\t\t...e,\n\t\t...t === void 0 ? {} : { key: t },\n\t\t...r === void 0 ? {} : { theme: r }\n\t};\n\treturn o(n.NineSlice, i);\n}\nfunction g(t, n, r, i, a, o, s, c, l, d, f) {\n\tif (m(i)) return h({\n\t\ttexture: t,\n\t\tframe: n,\n\t\ttint: r,\n\t\twidth: o,\n\t\theight: s,\n\t\tleftWidth: c,\n\t\trightWidth: l,\n\t\ttopHeight: d,\n\t\tbottomHeight: f,\n\t\tdepth: 0\n\t});\n\tlet p = Math.max(0, o - c - l), g = Math.max(0, s - d - f), _ = d === 0 && f === 0, v = (i, a, o, s, c, l) => /* @__PURE__ */ u(e, {\n\t\theadless: !0,\n\t\tdepth: 0,\n\t\tx: o,\n\t\ty: s,\n\t\toriginX: 0,\n\t\toriginY: 0,\n\t\ttexture: t,\n\t\tframe: n,\n\t\ttint: r,\n\t\tsourceRect: a,\n\t\twidth: c,\n\t\theight: l,\n\t\tdisplayWidth: c,\n\t\tdisplayHeight: l\n\t}, i);\n\tif (_) {\n\t\tlet e = a[3], t = a[4], n = a[5];\n\t\treturn [\n\t\t\tv(\"l\", e, 0, 0, c, s),\n\t\t\tv(\"c\", t, c, 0, p, s),\n\t\t\tv(\"r\", n, o - l, 0, l, s)\n\t\t];\n\t}\n\tlet y = a[0], b = a[1], x = a[2], S = a[3], C = a[4], w = a[5], T = a[6], E = a[7], D = a[8];\n\treturn [\n\t\tv(\"tl\", y, 0, 0, c, d),\n\t\tv(\"t\", b, c, 0, p, d),\n\t\tv(\"tr\", x, o - l, 0, l, d),\n\t\tv(\"l\", S, 0, d, c, g),\n\t\tv(\"c\", C, c, d, p, g),\n\t\tv(\"r\", w, o - l, d, l, g),\n\t\tv(\"bl\", T, 0, s - f, c, f),\n\t\tv(\"b\", E, c, s - f, p, f),\n\t\tv(\"br\", D, o - l, s - f, l, f)\n\t];\n}\nfunction _(e, t) {\n\tlet n = a().surface?.textureLoader, [r, i] = l(null);\n\treturn s(() => {\n\t\tif (!n) return;\n\t\tlet r;\n\t\tif (t) {\n\t\t\tlet i = n.getFrameRect(e, t);\n\t\t\ti && (r = {\n\t\t\t\tw: i.width,\n\t\t\t\th: i.height\n\t\t\t});\n\t\t}\n\t\tif (!r) {\n\t\t\tlet t = n.getTextureSize(e);\n\t\t\tt && (r = {\n\t\t\t\tw: t.width,\n\t\t\t\th: t.height\n\t\t\t});\n\t\t}\n\t\ti(r ?? null);\n\t}, [\n\t\te,\n\t\tt,\n\t\tn\n\t]), r;\n}\nfunction v(e) {\n\tlet { texture: t, frame: n, leftWidth: r, rightWidth: i, topHeight: a, bottomHeight: o, width: s, height: c, tint: l, theme: u, key: d } = e;\n\treturn h({\n\t\ttexture: t,\n\t\tframe: n,\n\t\ttint: l,\n\t\tleftWidth: r,\n\t\trightWidth: i,\n\t\ttopHeight: a,\n\t\tbottomHeight: o,\n\t\twidth: s,\n\t\theight: c\n\t}, d, u);\n}\nfunction y(n) {\n\tif (m(n.renderMode, n.width !== void 0 && n.height !== void 0)) return /* @__PURE__ */ u(v, { ...n });\n\tlet { texture: r, frame: a, leftWidth: o, rightWidth: s, topHeight: l, bottomHeight: p, width: h, height: g, tint: y, theme: b, key: x } = n, S = l === 0 && p === 0, C = _(r, a), w = c(() => C ? f(C.w, C.h, o, s, l, p) : null, [\n\t\tC,\n\t\to,\n\t\ts,\n\t\tl,\n\t\tp\n\t]);\n\tif (!w) return /* @__PURE__ */ u(t, {\n\t\twidth: h,\n\t\theight: g,\n\t\ttheme: b\n\t}, x);\n\tlet T = typeof h == \"number\" ? h : void 0, E = typeof g == \"number\" ? g : void 0, D = T == null ? void 0 : T - o - s, O = E == null ? void 0 : E - l - p, k = (e, t, n) => ({\n\t\ttexture: r,\n\t\tframe: a,\n\t\ttint: y,\n\t\tsourceRect: e,\n\t\t...t == null ? {} : { displayWidth: t },\n\t\t...n == null ? {} : { displayHeight: n }\n\t});\n\tif (S) {\n\t\tlet n = w[3], r = w[4], a = w[5];\n\t\treturn /* @__PURE__ */ d(t, {\n\t\t\tdirection: \"row\",\n\t\t\twidth: h,\n\t\t\theight: g,\n\t\t\ttheme: b,\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t...k(n, o, E),\n\t\t\t\t\twidth: o,\n\t\t\t\t\theight: \"100%\",\n\t\t\t\t\tkey: \"l\"\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t...k(r, D, E),\n\t\t\t\t\tflex: 1,\n\t\t\t\t\theight: \"100%\",\n\t\t\t\t\tkey: \"c\"\n\t\t\t\t}),\n\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t...k(a, s, E),\n\t\t\t\t\twidth: s,\n\t\t\t\t\theight: \"100%\",\n\t\t\t\t\tkey: \"r\"\n\t\t\t\t})\n\t\t\t]\n\t\t}, x);\n\t}\n\tlet A = w[0], j = w[1], M = w[2], N = w[3], P = w[4], F = w[5], I = w[6], L = w[7], R = w[8];\n\treturn /* @__PURE__ */ d(t, {\n\t\tdirection: \"column\",\n\t\twidth: h,\n\t\theight: g,\n\t\ttheme: b,\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ d(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\twidth: \"fill\",\n\t\t\t\theight: l,\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(A, o, l),\n\t\t\t\t\t\twidth: o,\n\t\t\t\t\t\theight: l,\n\t\t\t\t\t\tkey: \"tl\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(j, D, l),\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\theight: l,\n\t\t\t\t\t\tkey: \"t\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(M, s, l),\n\t\t\t\t\t\twidth: s,\n\t\t\t\t\t\theight: l,\n\t\t\t\t\t\tkey: \"tr\"\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}, \"row-t\"),\n\t\t\t/* @__PURE__ */ d(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\twidth: \"fill\",\n\t\t\t\tflex: 1,\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(N, o, O),\n\t\t\t\t\t\twidth: o,\n\t\t\t\t\t\theight: \"100%\",\n\t\t\t\t\t\tkey: \"l\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(P, D, O),\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\theight: \"100%\",\n\t\t\t\t\t\tkey: \"c\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(F, s, O),\n\t\t\t\t\t\twidth: s,\n\t\t\t\t\t\theight: \"100%\",\n\t\t\t\t\t\tkey: \"r\"\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}, \"row-m\"),\n\t\t\t/* @__PURE__ */ d(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\twidth: \"fill\",\n\t\t\t\theight: p,\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(I, o, p),\n\t\t\t\t\t\twidth: o,\n\t\t\t\t\t\theight: p,\n\t\t\t\t\t\tkey: \"bl\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(L, D, p),\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\theight: p,\n\t\t\t\t\t\tkey: \"b\"\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ i(e, {\n\t\t\t\t\t\t...k(R, s, p),\n\t\t\t\t\t\twidth: s,\n\t\t\t\t\t\theight: p,\n\t\t\t\t\t\tkey: \"br\"\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}, \"row-b\")\n\t\t]\n\t}, x);\n}\nfunction b(e) {\n\tlet { texture: n, frame: r, leftWidth: i, rightWidth: a, topHeight: o, bottomHeight: s, width: l, height: p, tint: m, children: h, renderMode: v, alignItems: y = \"start\", justifyContent: b = \"start\", gap: x, padding: S, theme: C, key: w } = e, T = _(n, r), E = c(() => T ? f(T.w, T.h, i, a, o, s) : null, [\n\t\tT,\n\t\ti,\n\t\ta,\n\t\to,\n\t\ts\n\t]), D = {\n\t\tleft: i + (S?.left ?? 0),\n\t\tright: a + (S?.right ?? 0),\n\t\ttop: o + (S?.top ?? 0),\n\t\tbottom: s + (S?.bottom ?? 0)\n\t};\n\treturn /* @__PURE__ */ d(t, {\n\t\tdirection: \"stack\",\n\t\twidth: l,\n\t\theight: p,\n\t\ttheme: C,\n\t\tchildren: [E ? g(n, r, m, v, E, l, p, i, a, o, s) : null, /* @__PURE__ */ u(t, {\n\t\t\tdirection: \"column\",\n\t\t\tdepth: 1,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\talignItems: y,\n\t\t\tjustifyContent: b,\n\t\t\tgap: x,\n\t\t\tpadding: D,\n\t\t\tchildren: h\n\t\t})]\n\t}, w);\n}\nfunction x(e) {\n\treturn e.children === void 0 ? /* @__PURE__ */ u(y, {\n\t\ttexture: e.texture,\n\t\tframe: e.frame,\n\t\tleftWidth: e.leftWidth,\n\t\trightWidth: e.rightWidth,\n\t\ttopHeight: e.topHeight ?? 0,\n\t\tbottomHeight: e.bottomHeight ?? 0,\n\t\twidth: e.width,\n\t\theight: e.height,\n\t\ttint: e.tint,\n\t\trenderMode: e.renderMode,\n\t\ttheme: e.theme\n\t}, e.key) : /* @__PURE__ */ u(b, {\n\t\ttexture: e.texture,\n\t\tframe: e.frame,\n\t\tleftWidth: e.leftWidth,\n\t\trightWidth: e.rightWidth,\n\t\ttopHeight: e.topHeight ?? 0,\n\t\tbottomHeight: e.bottomHeight ?? 0,\n\t\twidth: e.width,\n\t\theight: e.height,\n\t\ttint: e.tint,\n\t\trenderMode: e.renderMode,\n\t\tchildren: e.children,\n\t\talignItems: e.alignItems,\n\t\tjustifyContent: e.justifyContent,\n\t\tgap: e.gap,\n\t\tpadding: e.padding,\n\t\ttheme: e.theme\n\t}, e.key);\n}\n//#endregion\nexport { x as NineSlice };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { NineSlice as t } from \"./NineSlice.js\";\nimport { applyEffect as n, createElement as r, resolveEffect as i, useEffect as a, useRef as o, useState as s } from \"@number10/jsx-core\";\nimport { jsx as c } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/NineSliceButton.tsx\nfunction l(l) {\n\tlet { texture: u, frame: d, leftWidth: f, rightWidth: p, topHeight: m = 0, bottomHeight: h = 0, width: g, height: _, tint: v, onClick: y, disabled: b, children: x, alignItems: S = \"center\", justifyContent: C = \"center\", gap: w, padding: T, renderMode: E, theme: D, key: O, effect: k, effectConfig: A } = l, j = o(null), [M, N] = s(!1);\n\ta(() => {\n\t\tN(!0);\n\t}, []);\n\tlet P = b ? void 0 : (e) => {\n\t\tlet t = i({\n\t\t\teffect: k,\n\t\t\teffectConfig: A\n\t\t}, {});\n\t\tn(j.current, t.effect, t.effectConfig), y?.();\n\t}, F = P ? { onTouch: P } : {}, I = x != null && x !== !1;\n\treturn /* @__PURE__ */ r(e, {\n\t\tref: j,\n\t\tdirection: \"stack\",\n\t\twidth: g,\n\t\theight: _,\n\t\tvisible: M,\n\t\tenableGestures: !b,\n\t\t...F,\n\t\tkey: O,\n\t\ttheme: D\n\t}, I ? /* @__PURE__ */ c(t, {\n\t\ttexture: u,\n\t\tframe: d,\n\t\tleftWidth: f,\n\t\trightWidth: p,\n\t\ttopHeight: m,\n\t\tbottomHeight: h,\n\t\twidth: g,\n\t\theight: _,\n\t\ttint: v,\n\t\trenderMode: E,\n\t\talignItems: S,\n\t\tjustifyContent: C,\n\t\tgap: w,\n\t\tpadding: T,\n\t\ttheme: D,\n\t\tchildren: x\n\t}) : /* @__PURE__ */ c(t, {\n\t\ttexture: u,\n\t\tframe: d,\n\t\tleftWidth: f,\n\t\trightWidth: p,\n\t\ttopHeight: m,\n\t\tbottomHeight: h,\n\t\twidth: g,\n\t\theight: _,\n\t\ttint: v,\n\t\trenderMode: E,\n\t\ttheme: D\n\t}));\n}\n//#endregion\nexport { l as NineSliceButton };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { VectorDrawContent as t } from \"./primitives/VectorDrawContent.js\";\nimport { View as n } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Button as r } from \"./Button.js\";\nimport { KNOWN_COMPONENTS as i, getGlobalThemeDefaults as a, mergeThemes as o, resolveComponentTheme as s, useEffect as c, useRef as l, useState as u, useTheme as d } from \"@number10/jsx-core\";\nimport { Fragment as f, jsx as p, jsxs as m } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/NumberInput.tsx\nvar ee = {\n\tdecrement: \"-\",\n\tincrement: \"+\",\n\tvalue: \"Value\"\n};\nfunction h(e) {\n\treturn e === \"decrement\" ? \"left\" : \"right\";\n}\nfunction g(e, t, n) {\n\tlet r = n / 2, i = n * .32, a = n * .68, o = n * .3, s = n * .7;\n\te.beginPath(), t === \"left\" ? e.moveTo(a, o).lineTo(i, r).lineTo(a, s) : t === \"right\" ? e.moveTo(i, o).lineTo(a, r).lineTo(i, s) : t === \"up\" ? e.moveTo(i, s).lineTo(r, o).lineTo(a, s) : e.moveTo(i, o).lineTo(r, s).lineTo(a, o), e.strokePath();\n}\nfunction _(e, t, n) {\n\tlet r = n / 2, i = n * .3, a = n * .7;\n\te.beginPath().moveTo(i, r).lineTo(a, r).strokePath(), t === \"increment\" && e.beginPath().moveTo(r, i).lineTo(r, a).strokePath();\n}\nfunction v(e) {\n\tlet { variant: n = \"sign\", action: r = \"increment\", direction: i, size: a = 24, color: o = 16777215, activeColor: s = o, disabled: c = !1, framed: l = !1, backgroundAlpha: u = .12, borderAlpha: d = 1, ...f } = e, m = i ?? h(r);\n\treturn /* @__PURE__ */ p(t, {\n\t\t...f,\n\t\twidth: a,\n\t\theight: a,\n\t\tdependencies: [\n\t\t\tn,\n\t\t\tr,\n\t\t\tm,\n\t\t\ta,\n\t\t\to,\n\t\t\ts,\n\t\t\tc,\n\t\t\tl,\n\t\t\tu,\n\t\t\td\n\t\t],\n\t\tonDraw: (e) => {\n\t\t\tlet t = c ? .45 : 1, i = Math.max(3, Math.round(a * .16)), f = Math.max(2, Math.round(a * .12)), p = c ? o : s;\n\t\t\te.clear(), l && e.fillStyle(p, u * t).lineStyle(2, p, d * t).fillRoundedRect(i, i, a - i * 2, a - i * 2, a * .18).strokeRoundedRect(i, i, a - i * 2, a - i * 2, a * .18), e.lineStyle(f, p, t), n === \"chevron\" ? g(e, m, a) : _(e, r, a);\n\t\t}\n\t});\n}\nfunction y(e) {\n\treturn typeof e == \"number\" && Number.isFinite(e);\n}\nfunction b(e, t) {\n\tlet n = y(e) ? e : -Infinity, r = y(t) ? t : Infinity;\n\treturn {\n\t\tmin: Math.min(n, r),\n\t\tmax: Math.max(n, r)\n\t};\n}\nfunction x(e) {\n\tif (!Number.isFinite(e) || Number.isInteger(e)) return 0;\n\tlet [, t = \"\"] = e.toString().split(\".\");\n\treturn t.length;\n}\nfunction S(e = 1, t) {\n\treturn y(t) && t >= 0 ? Math.floor(t) : x(Math.abs(e));\n}\nfunction C(e, t = {}) {\n\tlet { min: n, max: r } = b(t.min, t.max), i = Number.isFinite(n) ? n : Number.isFinite(r) ? r : 0, a = y(e) ? e : i, o = Math.max(n, Math.min(r, a)), s = 10 ** S(t.step, t.precision);\n\treturn Math.round(o * s) / s;\n}\nfunction w(e, t, n = {}) {\n\treturn C(e + (y(n.step) && n.step > 0 ? n.step : 1) * t, n);\n}\nfunction T(t) {\n\tlet { value: h, defaultValue: g, onChange: _, min: v, max: y, step: b = 1, precision: x, label: S, labelPosition: T, formatValue: te, renderValue: ne, labels: re, decrementContent: ie, incrementContent: ae, renderButtonContent: oe, disabled: E = !1, buttonPlacement: se, buttonDirection: ce, buttonVariant: le, buttonSize: ue, buttonTextStyle: de, buttonIndicatorColor: fe, buttonIndicatorActiveColor: pe, repeatOnHold: me, holdDelay: he, repeatInterval: ge, valueWidth: _e, controlHeight: ve, theme: D, ...O } = t, k = d(), ye = D ? o(k ?? {}, D) : k, { props: A, nestedTheme: j } = s({\n\t\tcomponentName: \"NumberInput\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: ye,\n\t\tknownComponents: i\n\t}), M = {\n\t\t...v === void 0 ? {} : { min: v },\n\t\t...y === void 0 ? {} : { max: y },\n\t\tstep: b,\n\t\t...x === void 0 ? {} : { precision: x }\n\t}, N = C(g ?? h ?? v ?? 0, M), [P, F] = u(N), I = l(N), L = l(null), R = h !== void 0, z = C(R ? h : P, M);\n\tI.current = z;\n\tlet B = () => {\n\t\tL.current &&= (clearInterval(L.current), null);\n\t};\n\tc(() => {\n\t\t!R && P !== z && F(z);\n\t}, [\n\t\tR,\n\t\tP,\n\t\tz\n\t]), c(() => () => B(), []);\n\tlet V = {\n\t\t...ee,\n\t\t...A.labels ?? {},\n\t\t...re ?? {}\n\t}, H = T ?? A.labelPosition ?? \"left\", U = se ?? A.buttonPlacement ?? \"split\", be = ce ?? A.buttonDirection ?? \"row\", xe = le ?? A.buttonVariant ?? \"secondary\", Se = ue ?? A.buttonSize ?? \"small\", Ce = de ?? A.buttonTextStyle ?? {\n\t\tcolor: \"#111827\",\n\t\tfontSize: \"16px\"\n\t}, W = fe ?? A.buttonIndicatorColor ?? 16777215, we = pe ?? A.buttonIndicatorActiveColor ?? W, Te = me ?? A.repeatOnHold ?? !0, Ee = he ?? A.holdDelay ?? 350, De = ge ?? A.repeatInterval ?? 90, G = _e ?? A.valueWidth ?? 78, K = ve ?? A.controlHeight ?? 34, Oe = A.labelStyle ?? {\n\t\tcolor: \"#ffffff\",\n\t\tfontSize: \"14px\"\n\t}, ke = A.valueStyle ?? {\n\t\tcolor: \"#ffffff\",\n\t\tfontSize: \"14px\"\n\t}, q = A.buttonControlSize ?? K, J = te?.(z) ?? `${z}`, Ae = S ?? V.value, je = H !== \"none\" && Ae.length > 0, Me = w(z, -1, M), Ne = w(z, 1, M), Pe = Me !== z, Y = Ne !== z, Fe = ne?.({\n\t\tvalue: z,\n\t\tdisplayText: J,\n\t\t...v === void 0 ? {} : { min: v },\n\t\t...y === void 0 ? {} : { max: y },\n\t\tstep: b,\n\t\tdisabled: E,\n\t\tcanDecrement: Pe,\n\t\tcanIncrement: Y,\n\t\tvalueWidth: G,\n\t\tcontrolHeight: K\n\t}), Ie = (e) => {\n\t\tlet t = C(e, M);\n\t\tt !== I.current && (I.current = t, R || F(t), _?.(t));\n\t}, X = (e) => {\n\t\tIe(w(I.current, e, M));\n\t}, Le = (e) => {\n\t\t!Te || E || (B(), X(e), L.current = setInterval(() => {\n\t\t\tX(e);\n\t\t}, De));\n\t}, Re = (e) => {\n\t\te.state === \"end\" && B();\n\t}, Z = (e) => {\n\t\tlet t = e === -1, n = t ? \"decrement\" : \"increment\", i = t ? Pe : Y, a = t ? ie : ae, o = t ? V.decrement : V.increment, s = t ? Me : Ne, c = E || !i, l = a ?? oe?.({\n\t\t\taction: n,\n\t\t\tdisabled: c,\n\t\t\tvalue: z,\n\t\t\tnextValue: s,\n\t\t\tsize: q,\n\t\t\tcolor: W,\n\t\t\tactiveColor: we\n\t\t});\n\t\treturn /* @__PURE__ */ p(r, {\n\t\t\tlabel: l ? void 0 : o,\n\t\t\twidth: q,\n\t\t\theight: q,\n\t\t\tpadding: 0,\n\t\t\tvariant: xe,\n\t\t\tsize: Se,\n\t\t\ttextStyle: Ce,\n\t\t\tdisabled: c,\n\t\t\tonClick: () => X(e),\n\t\t\tonLongPress: () => Le(e),\n\t\t\tonTouchMove: Re,\n\t\t\tlongPressDuration: Ee,\n\t\t\tchildren: l\n\t\t}, t ? \"decrement\" : \"increment\");\n\t}, ze = /* @__PURE__ */ m(n, {\n\t\tdirection: be,\n\t\talignItems: \"center\",\n\t\tgap: A.buttonGap ?? A.controlGap ?? 0,\n\t\ttheme: j,\n\t\tchildren: [Z(-1), Z(1)]\n\t}), Q = /* @__PURE__ */ p(n, {\n\t\twidth: G,\n\t\theight: K,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tbackgroundColor: A.valueBackgroundColor ?? 0,\n\t\tbackgroundAlpha: A.valueBackgroundAlpha ?? .12,\n\t\tborderColor: A.valueBorderColor ?? A.borderColor,\n\t\tborderWidth: A.valueBorderWidth ?? 1,\n\t\tcornerRadius: A.valueCornerRadius ?? A.cornerRadius ?? 6,\n\t\tpadding: A.valuePadding ?? {\n\t\t\tleft: 8,\n\t\t\tright: 8,\n\t\t\ttop: 4,\n\t\t\tbottom: 4\n\t\t},\n\t\ttheme: j,\n\t\tchildren: Fe ?? /* @__PURE__ */ p(e, {\n\t\t\ttext: J,\n\t\t\tstyle: ke\n\t\t})\n\t}), Be = U === \"left\" ? /* @__PURE__ */ m(n, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: A.controlGap ?? 0,\n\t\ttheme: j,\n\t\tchildren: [ze, Q]\n\t}) : U === \"right\" ? /* @__PURE__ */ m(n, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: A.controlGap ?? 0,\n\t\ttheme: j,\n\t\tchildren: [Q, ze]\n\t}) : /* @__PURE__ */ m(n, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: A.controlGap ?? 0,\n\t\ttheme: j,\n\t\tchildren: [\n\t\t\tZ(-1),\n\t\t\tQ,\n\t\t\tZ(1)\n\t\t]\n\t}), Ve = je ? /* @__PURE__ */ p(e, {\n\t\ttext: Ae,\n\t\tstyle: Oe\n\t}) : null, He = H === \"top\" || H === \"bottom\", $ = E ? A.disabledAlpha ?? .5 : O.alpha, Ue = H === \"right\" || H === \"bottom\" ? /* @__PURE__ */ m(f, { children: [Be, Ve] }) : /* @__PURE__ */ m(f, { children: [Ve, Be] });\n\treturn /* @__PURE__ */ p(n, {\n\t\t...O,\n\t\tdirection: He ? \"column\" : \"row\",\n\t\talignItems: \"center\",\n\t\tgap: A.gap ?? 10,\n\t\tpadding: A.padding ?? 0,\n\t\t...$ === void 0 ? {} : { alpha: $ },\n\t\ttheme: j,\n\t\tchildren: Ue\n\t});\n}\n//#endregion\nexport { T as NumberInput, v as NumberInputIndicator, w as getNextNumberInputValue, S as getNumberInputPrecision, C as normalizeNumberInputValue };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { VectorDrawContent as t } from \"./primitives/VectorDrawContent.js\";\nimport { View as n } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as r, ensureContrast as i, getGlobalThemeDefaults as a, mergeThemes as o, normalizeColorNumber as s, numberToHex as c, resolveComponentTheme as l, useEffect as u, useState as d, useTheme as f } from \"@number10/jsx-core\";\nimport { jsx as p, jsxs as m } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/PalettePicker.tsx\nvar h = {\n\ttitle: \"Palette\",\n\tempty: \"No colors\"\n};\nfunction g(e) {\n\tlet t = typeof e == \"number\" ? { value: e } : e, n = s(t.value);\n\treturn {\n\t\t...t,\n\t\tvalue: n,\n\t\thex: c(n).toUpperCase()\n\t};\n}\nfunction _(e) {\n\treturn e.map(g);\n}\nfunction v(e, t, n) {\n\tif (t !== void 0) {\n\t\tlet n = s(t);\n\t\treturn e.some((e) => e.value === n) ? n : void 0;\n\t}\n\tif (n !== void 0) {\n\t\tlet t = s(n), r = e.find((e) => e.value === t);\n\t\tif (r) return r.value;\n\t}\n\treturn e.find((e) => !e.disabled)?.value ?? e[0]?.value;\n}\nfunction y(e, t) {\n\tlet n = Math.max(1, Math.floor(t)), r = [];\n\tfor (let t = 0; t < e.length; t += n) r.push(e.slice(t, t + n));\n\treturn r;\n}\nfunction b(e, t = 16777215) {\n\treturn i(t, e, 4.5);\n}\nfunction x(e, t) {\n\treturn !t && !e.disabled;\n}\nfunction S(e, t, n) {\n\te.clear().lineStyle(Math.max(2, Math.round(t * .09)), n, 1).beginPath().moveTo(t * .25, t * .52).lineTo(t * .43, t * .7).lineTo(t * .77, t * .3).strokePath();\n}\nfunction C(s) {\n\tlet { colors: c, value: g, defaultValue: C, onChange: w, columns: T, swatchSize: ee, showTitle: E, showHex: D, labels: O, disabled: k = !1, renderSwatch: A, theme: j, alpha: M, ...N } = s, P = f(), F = j ? o(P ?? {}, j) : P, { props: I, nestedTheme: L } = l({\n\t\tcomponentName: \"PalettePicker\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: F,\n\t\tknownComponents: r\n\t}), R = _(c), z = g !== void 0, [B, V] = d(v(R, g, C)), H = z ? v(R, g) : v(R, B);\n\tu(() => {\n\t\t!z && B !== H && V(H);\n\t}, [\n\t\tz,\n\t\tB,\n\t\tH\n\t]);\n\tlet U = {\n\t\t...h,\n\t\t...I.labels ?? {},\n\t\t...O ?? {}\n\t}, W = Math.max(1, Math.floor(T ?? I.columns ?? 6)), G = ee ?? I.swatchSize ?? 28, K = E ?? I.showTitle ?? !0, q = D ?? I.showHex ?? !1, J = I.swatchGap ?? 8, Y = I.rowGap ?? J, X = I.itemWidth ?? (q ? Math.max(56, G) : G), Z = I.titleStyle ?? {\n\t\tcolor: \"#ffffff\",\n\t\tfontSize: \"14px\",\n\t\tfontStyle: \"bold\"\n\t}, Q = I.emptyStyle ?? {\n\t\tcolor: \"#9fb3c8\",\n\t\tfontSize: \"13px\"\n\t}, te = I.hexStyle ?? {\n\t\tcolor: \"#9fb3c8\",\n\t\tfontSize: \"11px\"\n\t}, $ = k ? I.disabledAlpha ?? .5 : M, ne = y(R, W), re = (e) => {\n\t\tx(e, k) && (z || V(e.value), w?.(e.value, e));\n\t}, ie = (e) => /* @__PURE__ */ p(n, {\n\t\twidth: e.size,\n\t\theight: e.size,\n\t\tbackgroundColor: e.color,\n\t\tborderColor: e.selected ? e.selectedBorderColor : I.swatchBorderColor,\n\t\tborderWidth: e.selected ? I.swatchSelectedBorderWidth ?? 3 : I.swatchBorderWidth ?? 1,\n\t\tcornerRadius: I.swatchCornerRadius ?? 5,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\talpha: e.disabled ? I.swatchDisabledAlpha ?? .45 : 1,\n\t\ttheme: L,\n\t\tchildren: e.selected ? /* @__PURE__ */ p(t, {\n\t\t\twidth: e.size,\n\t\t\theight: e.size,\n\t\t\tdependencies: [e.size, e.checkColor],\n\t\t\tonDraw: (t) => S(t, e.size, e.checkColor)\n\t\t}) : null\n\t}), ae = (t, r) => {\n\t\tlet a = H === t.value, o = k || !!t.disabled, s = x(t, k), c = i(I.swatchSelectedBorderColor ?? 16777215, t.value, 3), l = b(t.value, I.selectedCheckColor ?? 16777215), u = {\n\t\t\toption: t,\n\t\t\tcolor: t.value,\n\t\t\thex: t.hex,\n\t\t\tselected: a,\n\t\t\tdisabled: o,\n\t\t\tindex: r,\n\t\t\tsize: G,\n\t\t\tselectedBorderColor: c,\n\t\t\tcheckColor: l\n\t\t}, d = A?.(u) ?? ie(u), f = U.formatHex?.(t.value) ?? t.hex;\n\t\treturn /* @__PURE__ */ m(n, {\n\t\t\twidth: X,\n\t\t\talignItems: \"center\",\n\t\t\tgap: 4,\n\t\t\tenableGestures: s,\n\t\t\t...s ? { onTouch: () => re(t) } : {},\n\t\t\ttheme: L,\n\t\t\tchildren: [d, q ? /* @__PURE__ */ p(e, {\n\t\t\t\ttext: f,\n\t\t\t\tstyle: te\n\t\t\t}) : null]\n\t\t}, `${t.value}-${r}`);\n\t};\n\treturn /* @__PURE__ */ m(n, {\n\t\t...N,\n\t\tdirection: \"column\",\n\t\tgap: I.gap ?? 10,\n\t\tpadding: I.padding ?? 0,\n\t\t...I.backgroundColor === void 0 ? {} : { backgroundColor: I.backgroundColor },\n\t\t...I.backgroundAlpha === void 0 ? {} : { backgroundAlpha: I.backgroundAlpha },\n\t\t...I.borderColor === void 0 ? {} : { borderColor: I.borderColor },\n\t\t...I.borderWidth === void 0 ? {} : { borderWidth: I.borderWidth },\n\t\t...I.cornerRadius === void 0 ? {} : { cornerRadius: I.cornerRadius },\n\t\t...$ === void 0 ? {} : { alpha: $ },\n\t\ttheme: L,\n\t\tchildren: [K ? /* @__PURE__ */ p(e, {\n\t\t\ttext: U.title,\n\t\t\tstyle: Z\n\t\t}) : null, R.length === 0 ? /* @__PURE__ */ p(e, {\n\t\t\ttext: U.empty,\n\t\t\tstyle: Q\n\t\t}) : /* @__PURE__ */ p(n, {\n\t\t\tdirection: \"column\",\n\t\t\tgap: Y,\n\t\t\ttheme: L,\n\t\t\tchildren: ne.map((e, t) => /* @__PURE__ */ p(n, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\tgap: J,\n\t\t\t\ttheme: L,\n\t\t\t\tchildren: e.map((e, n) => ae(e, t * W + n))\n\t\t\t}, `row-${t}`))\n\t\t})]\n\t});\n}\n//#endregion\nexport { C as PalettePicker, y as chunkPalettePickerColors, b as getPalettePickerContrastColor, g as normalizePalettePickerColor, _ as normalizePalettePickerColors, v as resolvePalettePickerValue };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useTheme as o } from \"@number10/jsx-core\";\nimport { jsx as s, jsxs as c } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/ProgressBar.tsx\nfunction l(e, t, n) {\n\treturn Number.isFinite(e) ? Math.min(Math.max(e, t), n) : t;\n}\nfunction u(e, t, n) {\n\tif (!Number.isFinite(t) || !Number.isFinite(n) || t === n) return 0;\n\tlet r = Math.min(t, n), i = Math.max(t, n);\n\treturn (l(e, r, i) - r) / (i - r);\n}\nfunction d(e) {\n\treturn `${Math.round(e.percent)}%`;\n}\nfunction f(l) {\n\tlet { value: f, min: p = 0, max: m = 100, orientation: h, label: g, showValue: _, labelPosition: v, formatValue: y, trackColor: b, fillColor: x, borderColor: S, borderWidth: C, cornerRadius: w, labelStyle: T, disabled: E = !1, disabledAlpha: ee, theme: D, width: O, height: k, alpha: A, ...j } = l, M = o(), N = D ? i(M ?? {}, D) : M, { props: P, nestedTheme: F } = a({\n\t\tcomponentName: \"ProgressBar\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: N,\n\t\tknownComponents: n\n\t}), I = h ?? P.orientation ?? \"horizontal\", L = u(f, p, m), R = L * 100, z = v ?? P.labelPosition ?? (_ || g ? \"right\" : \"none\"), B = z !== \"none\" && !!(_ || g), V = B ? [g, _ ? (y ?? d)({\n\t\tvalue: f,\n\t\tmin: p,\n\t\tmax: m,\n\t\tratio: L,\n\t\tpercent: R\n\t}) : void 0].filter(Boolean).join(\" \") : \"\", H = O ?? P.width ?? (I === \"horizontal\" ? 240 : 24), U = k ?? P.height ?? (I === \"horizontal\" ? 22 : 160), W = b ?? P.trackColor ?? 2042167, G = x ?? P.fillColor ?? 2278750, K = S ?? P.borderColor ?? 3359061, q = C ?? P.borderWidth ?? 1, J = w ?? P.cornerRadius ?? (I === \"horizontal\" ? 11 : 8), Y = T ?? P.labelStyle ?? {\n\t\tcolor: \"#ffffff\",\n\t\tfontSize: \"12px\"\n\t}, X = ee ?? P.disabledAlpha ?? .5, Z = E ? X : A, Q = z === \"left\" || z === \"right\" ? \"row\" : \"column\", $ = B ? /* @__PURE__ */ s(e, {\n\t\ttext: V,\n\t\tstyle: Y\n\t}) : null, te = I === \"horizontal\" ? {\n\t\twidth: `${R}%`,\n\t\theight: \"fill\"\n\t} : {\n\t\twidth: \"fill\",\n\t\theight: `${R}%`\n\t}, ne = /* @__PURE__ */ c(t, {\n\t\twidth: H,\n\t\theight: U,\n\t\tdirection: I === \"horizontal\" ? \"stack\" : \"column\",\n\t\tjustifyContent: I === \"vertical\" ? \"end\" : \"start\",\n\t\tbackgroundColor: W,\n\t\tborderColor: K,\n\t\tborderWidth: q,\n\t\tcornerRadius: J,\n\t\toverflow: \"hidden\",\n\t\ttheme: F,\n\t\tchildren: [/* @__PURE__ */ s(t, {\n\t\t\t...te,\n\t\t\tbackgroundColor: G,\n\t\t\tcornerRadius: J\n\t\t}), z === \"inside\" && B && /* @__PURE__ */ s(t, {\n\t\t\twidth: \"fill\",\n\t\t\theight: \"fill\",\n\t\t\tjustifyContent: \"center\",\n\t\t\talignItems: \"center\",\n\t\t\tchildren: $\n\t\t})]\n\t});\n\treturn /* @__PURE__ */ c(t, {\n\t\t...j,\n\t\tdirection: Q,\n\t\talignItems: \"center\",\n\t\tgap: P.gap ?? 8,\n\t\t...Z === void 0 ? {} : { alpha: Z },\n\t\ttheme: F,\n\t\tchildren: [\n\t\t\tz === \"top\" || z === \"left\" ? $ : null,\n\t\t\tne,\n\t\t\tz !== \"inside\" && (z === \"bottom\" || z === \"right\") ? $ : null\n\t\t]\n\t});\n}\n//#endregion\nexport { f as ProgressBar, l as clampProgressValue, u as getProgressRatio };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Button as n } from \"./Button.js\";\nimport { ActivityIndicator as r } from \"./ActivityIndicator.js\";\nimport { ProgressBar as i } from \"./ProgressBar.js\";\nimport { KNOWN_COMPONENTS as a, getGlobalThemeDefaults as o, mergeThemes as s, resolveComponentTheme as c, useTheme as l } from \"@number10/jsx-core\";\nimport { jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/ProgressView.tsx\nfunction f(f) {\n\tlet { value: p, min: m = 0, max: h = 100, indeterminate: g = !1, label: _, showPercentage: v = !1, showCancel: y = !1, onCancel: b, labels: x, progressBarProps: S, theme: C, ...w } = f, T = l(), E = C ? s(T ?? {}, C) : T, { props: D, nestedTheme: O } = c({\n\t\tcomponentName: \"ProgressView\",\n\t\tglobalTheme: o(),\n\t\tlocalTheme: E,\n\t\tknownComponents: a\n\t}), k = {\n\t\t...D.labels ?? {},\n\t\t...x ?? {}\n\t}, A = D.gap ?? 8, j = D.barHeight ?? 24, M = D.labelStyle ?? {\n\t\tcolor: \"#e0e7ff\",\n\t\tfontSize: \"14px\"\n\t}, N = D.percentageStyle ?? {\n\t\tcolor: \"#9fb3c8\",\n\t\tfontSize: \"13px\"\n\t}, P = p === void 0 ? void 0 : Math.round((p - m) / (h - m) * 100);\n\treturn /* @__PURE__ */ d(t, {\n\t\tdirection: \"column\",\n\t\tgap: A,\n\t\twidth: D.width ?? \"fill\",\n\t\t...w,\n\t\ttheme: O,\n\t\tchildren: [\n\t\t\t(_ || v) && !g ? /* @__PURE__ */ d(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\twidth: \"fill\",\n\t\t\t\tchildren: [_ ? /* @__PURE__ */ u(e, {\n\t\t\t\t\ttext: _,\n\t\t\t\t\tstyle: M\n\t\t\t\t}) : /* @__PURE__ */ u(t, {}), v && P !== void 0 ? /* @__PURE__ */ u(e, {\n\t\t\t\t\ttext: `${P}%`,\n\t\t\t\t\tstyle: N\n\t\t\t\t}) : null]\n\t\t\t}) : null,\n\t\t\tg ? /* @__PURE__ */ u(r, {\n\t\t\t\t..._ || k.loading ? { label: _ ?? k.loading } : {},\n\t\t\t\ttheme: O\n\t\t\t}) : /* @__PURE__ */ u(i, {\n\t\t\t\tvalue: p ?? 0,\n\t\t\t\tmin: m,\n\t\t\t\tmax: h,\n\t\t\t\theight: j,\n\t\t\t\twidth: \"fill\",\n\t\t\t\t...S,\n\t\t\t\ttheme: O\n\t\t\t}),\n\t\t\ty && b ? /* @__PURE__ */ u(t, {\n\t\t\t\talignItems: \"center\",\n\t\t\t\twidth: \"fill\",\n\t\t\t\tchildren: /* @__PURE__ */ u(n, {\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tsize: D.cancelButtonSize ?? \"small\",\n\t\t\t\t\tonClick: b,\n\t\t\t\t\tchildren: /* @__PURE__ */ u(e, { text: k.cancel ?? \"Cancel\" })\n\t\t\t\t})\n\t\t\t}) : null\n\t\t]\n\t});\n}\n//#endregion\nexport { f as ProgressView };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useEffect as o, useState as s, useTheme as c } from \"@number10/jsx-core\";\nimport { jsx as l, jsxs as u } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/RatingBar.tsx\nfunction d(e) {\n\tswitch (e) {\n\t\tcase \"small\": return {\n\t\t\ticonSize: 16,\n\t\t\tfontSize: \"16px\"\n\t\t};\n\t\tcase \"large\": return {\n\t\t\ticonSize: 32,\n\t\t\tfontSize: \"32px\"\n\t\t};\n\t\tdefault: return {\n\t\t\ticonSize: 24,\n\t\t\tfontSize: \"24px\"\n\t\t};\n\t}\n}\nfunction f(e, t) {\n\treturn Math.max(0, Math.min(t, Math.round(e)));\n}\nfunction p(p) {\n\tlet { value: m, defaultValue: h = 0, max: g = 5, onChange: _, size: v, renderIcon: y, labels: b, disabled: x = !1, theme: S, alpha: C, ...w } = p, T = c(), E = S ? i(T ?? {}, S) : T, { props: D, nestedTheme: O } = a({\n\t\tcomponentName: \"RatingBar\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: E,\n\t\tknownComponents: n\n\t}), k = v ?? D.size ?? \"medium\", A = d(k), j = D.iconSize ?? A.iconSize, M = D.gap ?? 4, N = m !== void 0, [P, F] = s(f(m ?? h, g)), I = N ? f(m ?? 0, g) : P;\n\to(() => {\n\t\tN && F(f(m ?? 0, g));\n\t}, [\n\t\tN,\n\t\tm,\n\t\tg\n\t]);\n\tlet L = {\n\t\t...D.labels ?? {},\n\t\t...b ?? {}\n\t}, R = D.filledColor ?? \"#fbbf24\", z = D.emptyColor ?? \"#475569\", B = x ? D.disabledAlpha ?? .5 : C, V = (e) => {\n\t\tif (x) return;\n\t\tlet t = f(e, g);\n\t\tN || F(t), _?.(t);\n\t}, H = Array.from({ length: g }, (e, t) => t);\n\treturn /* @__PURE__ */ u(t, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: M,\n\t\t...w,\n\t\t...B === void 0 ? {} : { alpha: B },\n\t\ttheme: O,\n\t\tchildren: [H.map((n) => {\n\t\t\tlet r = n < I, i = y?.({\n\t\t\t\tfilled: r,\n\t\t\t\tindex: n,\n\t\t\t\tsize: k\n\t\t\t});\n\t\t\treturn /* @__PURE__ */ l(t, {\n\t\t\t\twidth: j,\n\t\t\t\theight: j,\n\t\t\t\talignItems: \"center\",\n\t\t\t\tjustifyContent: \"center\",\n\t\t\t\tenableGestures: !x,\n\t\t\t\tonTouch: () => V(n + 1),\n\t\t\t\ttheme: O,\n\t\t\t\tchildren: i ?? /* @__PURE__ */ l(e, {\n\t\t\t\t\ttext: r ? \"★\" : \"☆\",\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tcolor: r ? R : z,\n\t\t\t\t\t\tfontSize: A.fontSize\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}, n);\n\t\t}), L.rating ? /* @__PURE__ */ l(e, {\n\t\t\ttext: L.rating,\n\t\t\tstyle: D.labelStyle\n\t\t}) : null]\n\t});\n}\n//#endregion\nexport { p as RatingBar };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { KNOWN_COMPONENTS as n, getGlobalThemeDefaults as r, mergeThemes as i, resolveComponentTheme as a, useEffect as o, useState as s, useTheme as c } from \"@number10/jsx-core\";\nimport { Fragment as l, jsx as u, jsxs as d } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/SegmentedControl.tsx\nfunction f(e, t) {\n\tif (t !== void 0) return e.find((e) => e.value === t);\n}\nfunction p(e, t, n) {\n\tif (t !== void 0) return f(e, t)?.value ?? \"\";\n\tlet r = f(e, n);\n\treturn r ? r.value : e.find((e) => !e.disabled)?.value ?? e[0]?.value ?? \"\";\n}\nfunction m(e, t, n = !1) {\n\treturn !n && !e.disabled && e.value !== t;\n}\nfunction h(...e) {\n\treturn Object.assign({}, ...e.filter(Boolean));\n}\nfunction g(...e) {\n\tlet t = Object.assign({}, ...e.filter(Boolean));\n\treturn Object.keys(t).length > 0 ? t : void 0;\n}\nfunction _(e) {\n\tlet { orientation: t, size: n, variant: r, segmentWidth: i, segmentHeight: a, segmentGap: o, segmentPadding: s, segmentCornerRadius: c, segmentStyle: l, segmentHoverStyle: u, segmentSelectedStyle: d, segmentDisabledStyle: f, textStyle: p, selectedTextStyle: m, disabledTextStyle: h, labelStyle: g, iconGap: _, iconSize: v, disabledAlpha: y, labelPosition: b, labels: x, ...S } = e;\n\treturn S;\n}\nfunction v(e) {\n\tswitch (e) {\n\t\tcase \"small\": return {\n\t\t\tsegmentWidth: 72,\n\t\t\tsegmentHeight: 28,\n\t\t\tsegmentPadding: {\n\t\t\t\tleft: 8,\n\t\t\t\tright: 8,\n\t\t\t\ttop: 4,\n\t\t\t\tbottom: 4\n\t\t\t},\n\t\t\ticonSize: 14,\n\t\t\ttextStyle: { fontSize: \"12px\" }\n\t\t};\n\t\tcase \"large\": return {\n\t\t\tsegmentWidth: 108,\n\t\t\tsegmentHeight: 40,\n\t\t\tsegmentPadding: {\n\t\t\t\tleft: 14,\n\t\t\t\tright: 14,\n\t\t\t\ttop: 8,\n\t\t\t\tbottom: 8\n\t\t\t},\n\t\t\ticonSize: 20,\n\t\t\ttextStyle: { fontSize: \"16px\" }\n\t\t};\n\t\tdefault: return {};\n\t}\n}\nfunction y(e) {\n\tswitch (e) {\n\t\tcase \"soft\": return {\n\t\t\tbackgroundColor: 988970,\n\t\t\tbackgroundAlpha: .78,\n\t\t\tborderColor: 3359061,\n\t\t\tsegmentStyle: {\n\t\t\t\tbackgroundColor: 1976635,\n\t\t\t\tbackgroundAlpha: 0,\n\t\t\t\tborderWidth: 0\n\t\t\t},\n\t\t\tsegmentHoverStyle: {\n\t\t\t\tbackgroundColor: 3359061,\n\t\t\t\tbackgroundAlpha: .7\n\t\t\t},\n\t\t\tsegmentSelectedStyle: {\n\t\t\t\tbackgroundColor: 3359061,\n\t\t\t\tbackgroundAlpha: 1,\n\t\t\t\tborderColor: 6583435,\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\ttextStyle: { color: \"#cbd5e1\" },\n\t\t\tselectedTextStyle: {\n\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t}\n\t\t};\n\t\tcase \"outline\": return {\n\t\t\tbackgroundColor: 0,\n\t\t\tbackgroundAlpha: 0,\n\t\t\tborderColor: 6333946,\n\t\t\tborderWidth: 1,\n\t\t\tsegmentStyle: {\n\t\t\t\tbackgroundColor: 0,\n\t\t\t\tbackgroundAlpha: 0,\n\t\t\t\tborderColor: 6333946,\n\t\t\t\tborderWidth: 0\n\t\t\t},\n\t\t\tsegmentHoverStyle: {\n\t\t\t\tbackgroundColor: 1920728,\n\t\t\t\tbackgroundAlpha: .12\n\t\t\t},\n\t\t\tsegmentSelectedStyle: {\n\t\t\t\tbackgroundColor: 1920728,\n\t\t\t\tbackgroundAlpha: .2,\n\t\t\t\tborderColor: 9684477,\n\t\t\t\tborderWidth: 1\n\t\t\t},\n\t\t\ttextStyle: { color: \"#bfdbfe\" },\n\t\t\tselectedTextStyle: {\n\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\tfontStyle: \"bold\"\n\t\t\t}\n\t\t};\n\t\tdefault: return {};\n\t}\n}\nfunction b(b) {\n\tlet { options: x, value: S, defaultValue: C, onChange: ee, orientation: te, size: ne, variant: w, label: T, labelPosition: E, labels: D, disabled: O = !1, segmentWidth: k, segmentHeight: A, renderOption: j, theme: M, alpha: N, ...re } = b, P = c(), ie = M ? i(P ?? {}, M) : P, { props: F, nestedTheme: I } = a({\n\t\tcomponentName: \"SegmentedControl\",\n\t\tglobalTheme: r(),\n\t\tlocalTheme: ie,\n\t\tknownComponents: n\n\t}), L = S !== void 0, [R, z] = s(p(x, S, C)), [B, V] = s(void 0), H = L ? p(x, S) : p(x, R);\n\to(() => {\n\t\t!L && R !== H && z(H);\n\t}, [\n\t\tL,\n\t\tR,\n\t\tH\n\t]);\n\tlet U = {\n\t\t...F.labels ?? {},\n\t\t...D ?? {}\n\t}, W = te ?? F.orientation ?? \"horizontal\", G = ne ?? F.size ?? \"medium\", K = w ?? F.variant ?? \"solid\", q = v(G), J = y(K), Y = E ?? F.labelPosition ?? \"none\", ae = k ?? q.segmentWidth ?? F.segmentWidth, oe = A ?? q.segmentHeight ?? F.segmentHeight, X = T ?? U.group, se = Y !== \"none\" && X !== void 0, ce = h(_(F), _(J)), Z = Y === \"left\" ? \"row\" : \"column\", le = W === \"horizontal\" ? \"row\" : \"column\", ue = F.segmentGap ?? 0, Q = g({\n\t\tcolor: \"#dbeafe\",\n\t\tfontSize: \"13px\"\n\t}, F.textStyle, J.textStyle, q.textStyle), de = g(Q, F.selectedTextStyle, J.selectedTextStyle), fe = g(Q, F.disabledTextStyle), pe = F.labelStyle ?? {\n\t\tcolor: \"#9fb3c8\",\n\t\tfontSize: \"13px\"\n\t}, $ = O ? F.disabledAlpha ?? .5 : N, me = (e) => {\n\t\tlet t = f(x, e);\n\t\t!t || !m(t, H, O) || (L || z(e), ee?.(e));\n\t}, he = (n, r) => {\n\t\tlet a = n.value === H, o = O || !!n.disabled, s = B === n.value, c = m(n, H, O), f = n.label ?? (n.icon ? void 0 : n.value), p = h({\n\t\t\theight: oe,\n\t\t\twidth: ae,\n\t\t\tpadding: q.segmentPadding ?? F.segmentPadding,\n\t\t\tcornerRadius: F.segmentCornerRadius\n\t\t}, F.segmentStyle, J.segmentStyle, s && !a && !o ? F.segmentHoverStyle : void 0, s && !a && !o ? J.segmentHoverStyle : void 0, a ? F.segmentSelectedStyle : void 0, a ? J.segmentSelectedStyle : void 0, o ? F.segmentDisabledStyle : void 0), g = o ? fe : a ? de : Q, _ = q.iconSize ?? F.iconSize, v = i(I, {\n\t\t\tText: g ? { style: g } : {},\n\t\t\tIcon: { ..._ === void 0 ? {} : { size: _ } }\n\t\t}), y = j?.({\n\t\t\toption: n,\n\t\t\tselected: a,\n\t\t\tdisabled: o,\n\t\t\thovered: s,\n\t\t\tindex: r,\n\t\t\tsize: G,\n\t\t\tvariant: K,\n\t\t\torientation: W,\n\t\t\t...g ? { textStyle: g } : {},\n\t\t\t..._ === void 0 ? {} : { iconSize: _ }\n\t\t}) ?? n.children, b = c && (F.segmentHoverStyle || J.segmentHoverStyle) ? {\n\t\t\tonHoverStart: () => V(n.value),\n\t\t\tonHoverEnd: () => V((e) => e === n.value ? void 0 : e)\n\t\t} : {};\n\t\treturn /* @__PURE__ */ u(t, {\n\t\t\tdirection: \"row\",\n\t\t\talignItems: \"center\",\n\t\t\tjustifyContent: \"center\",\n\t\t\tgap: F.iconGap ?? 6,\n\t\t\t...p,\n\t\t\tenableGestures: c,\n\t\t\tonTouch: () => me(n.value),\n\t\t\t...b,\n\t\t\ttheme: v,\n\t\t\tchildren: y ?? /* @__PURE__ */ d(l, { children: [n.icon, f === void 0 ? null : /* @__PURE__ */ u(e, {\n\t\t\t\ttext: f,\n\t\t\t\t...g ? { style: g } : {}\n\t\t\t})] })\n\t\t}, n.value);\n\t}, ge = /* @__PURE__ */ u(t, {\n\t\t...ce,\n\t\tdirection: le,\n\t\tgap: ue,\n\t\t...$ === void 0 ? {} : { alpha: $ },\n\t\ttheme: I,\n\t\tchildren: x.map(he)\n\t});\n\treturn /* @__PURE__ */ d(t, {\n\t\t...re,\n\t\tdirection: Z,\n\t\talignItems: \"center\",\n\t\tgap: F.gap ?? 8,\n\t\ttheme: I,\n\t\tchildren: [se ? /* @__PURE__ */ u(e, {\n\t\t\ttext: X,\n\t\t\tstyle: pe\n\t\t}) : null, ge]\n\t});\n}\n//#endregion\nexport { b as SegmentedControl, f as findSegmentedControlOption, m as isSegmentedControlOptionSelectable, p as resolveSegmentedControlValue };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { View as t } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Button as n } from \"./Button.js\";\nimport { Divider as r } from \"./Divider.js\";\nimport { MenuButton as i } from \"./MenuButton.js\";\nimport { KNOWN_COMPONENTS as a, getGlobalThemeDefaults as o, mergeThemes as s, resolveComponentTheme as c, useEffect as l, useState as u, useTheme as d } from \"@number10/jsx-core\";\nimport { Fragment as f, jsx as p, jsxs as m } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Toolbar.tsx\nfunction h(e) {\n\treturn e.type === \"separator\";\n}\nfunction g(e) {\n\treturn e.type === \"toggle\";\n}\nfunction _(e) {\n\treturn e.type === \"menu\";\n}\nfunction v(e, t) {\n\treturn h(e) ? e.id ?? `separator-${t}` : e.id;\n}\nfunction y(e, t) {\n\tif (t) return e.some((e) => !h(e) && e.id === t) ? t : void 0;\n}\nfunction b(e) {\n\treturn e.find((e) => g(e) && !!e.defaultPressed)?.id;\n}\nfunction x(...e) {\n\tlet t = Object.assign({}, ...e.filter(Boolean));\n\treturn Object.keys(t).length > 0 ? t : void 0;\n}\nfunction S(e) {\n\tif (Array.isArray(e)) return e.map((e) => S(e));\n\tif (!e || typeof e != \"object\" || !(\"type\" in e)) return e;\n\tlet t = e, n = { type: t.type };\n\treturn t.props !== void 0 && (n.props = { ...t.props }), t.children !== void 0 && (n.children = t.children.map((e) => S(e))), t.__key !== void 0 && (n.__key = t.__key), t.__addConfig !== void 0 && (n.__addConfig = { ...t.__addConfig }), t.__memo !== void 0 && (n.__memo = t.__memo), t.__theme !== void 0 && (n.__theme = t.__theme), t.__staticChildren !== void 0 && (n.__staticChildren = t.__staticChildren), n;\n}\nfunction C(C) {\n\tlet { items: w, activeId: T, defaultActiveId: E, onSelect: D, onToggle: ee, orientation: te, density: ne, showLabels: re, disabled: O = !1, labels: ie, theme: k, alpha: ae } = C, A = d(), j = k ? s(A ?? {}, k) : A, { props: M, nestedTheme: N } = c({\n\t\tcomponentName: \"Toolbar\",\n\t\tglobalTheme: o(),\n\t\tlocalTheme: j,\n\t\tknownComponents: a\n\t}), P = T !== void 0, [F, I] = u(y(w, T ?? E) ?? b(w)), L = P ? y(w, T) : y(w, F);\n\tl(() => {\n\t\t!P && F !== L && I(L);\n\t}, [\n\t\tP,\n\t\tF,\n\t\tL\n\t]);\n\tlet R = {\n\t\t...M.labels ?? {},\n\t\t...ie ?? {}\n\t}, z = te ?? M.orientation ?? \"horizontal\", B = ne ?? M.density ?? \"normal\", V = M[B === \"compact\" ? \"compactItemWidth\" : \"itemWidth\"] ?? M.itemWidth ?? 42, H = M[B === \"compact\" ? \"compactItemHeight\" : \"itemHeight\"] ?? M.itemHeight ?? 36, U = (B === \"compact\" ? M.compactButtonSize : void 0) ?? M.buttonSize ?? \"small\", W = (B === \"compact\" ? M.compactIconSize : void 0) ?? M.iconSize ?? 18, G = re ?? B !== \"compact\", K = G ? void 0 : V, q = O ? M.disabledAlpha ?? .55 : ae, J = M.textStyle ?? {\n\t\tcolor: \"#e2e8f0\",\n\t\tfontSize: \"13px\"\n\t}, Y = x(J, M.activeTextStyle), X = x(J, M.disabledTextStyle), Z = M.menuIndicatorStyle ?? {\n\t\tcolor: \"#94a3b8\",\n\t\tfontSize: \"10px\"\n\t}, oe = z === \"horizontal\" ? \"row\" : \"column\", Q = z === \"horizontal\" ? \"vertical\" : \"horizontal\", se = M.separatorLength ?? (z === \"horizontal\" ? H : V), ce = (e) => {\n\t\tif (!(O || e.disabled)) {\n\t\t\tif (g(e)) {\n\t\t\t\tlet t = !((e.pressed ?? L === e.id) && e.allowDeselect);\n\t\t\t\t!P && e.pressed === void 0 && I(t ? e.id : void 0), e.onToggle?.(t, e.id), ee?.(e.id, t, e);\n\t\t\t}\n\t\t\te.onSelect?.(e.id), D?.(e.id, e);\n\t\t}\n\t}, $ = (t, n, r) => {\n\t\tif (t.children) return S(t.children);\n\t\tlet i = t.showLabel ?? G, a = r ? X : n ? Y : J;\n\t\treturn /* @__PURE__ */ m(f, { children: [\n\t\t\tt.icon ? S(t.icon) : null,\n\t\t\ti && t.label ? /* @__PURE__ */ p(e, {\n\t\t\t\ttext: t.label,\n\t\t\t\t...a ? { style: a } : {}\n\t\t\t}) : null,\n\t\t\t_(t) ? /* @__PURE__ */ p(e, {\n\t\t\t\ttext: R.menuIndicator ?? \"v\",\n\t\t\t\t...Z ? { style: Z } : {}\n\t\t\t}) : null\n\t\t] });\n\t}, le = (e, a) => {\n\t\tlet o = v(e, a);\n\t\tif (h(e)) return /* @__PURE__ */ p(t, {\n\t\t\talignItems: \"center\",\n\t\t\tjustifyContent: \"center\",\n\t\t\ttheme: N,\n\t\t\tchildren: /* @__PURE__ */ p(r, {\n\t\t\t\torientation: Q,\n\t\t\t\tlength: e.length ?? se,\n\t\t\t\tthickness: e.thickness ?? M.separatorThickness ?? 1,\n\t\t\t\tcolor: M.separatorColor ?? 4674921\n\t\t\t})\n\t\t}, o);\n\t\tlet c = O || !!e.disabled, l = g(e) ? e.pressed ?? L === e.id : L === e.id, u = e.buttonVariant ?? (l ? M.activeButtonVariant ?? \"primary\" : _(e) ? M.menuButtonVariant ?? M.buttonVariant ?? \"secondary\" : M.buttonVariant ?? \"secondary\"), d = c ? X : l ? Y : J, f = s(N, { Button: {\n\t\t\t...d ? { textStyle: d } : {},\n\t\t\t...W === void 0 ? {} : { iconSize: W }\n\t\t} });\n\t\treturn _(e) ? /* @__PURE__ */ p(i, {\n\t\t\titems: e.items ?? [],\n\t\t\tonSelect: () => {\n\t\t\t\te.onSelect?.(e.id), D?.(e.id, e);\n\t\t\t},\n\t\t\tplacement: z === \"horizontal\" ? \"bottom-start\" : \"right-start\",\n\t\t\tdisabled: c,\n\t\t\ttheme: f,\n\t\t\ttrigger: ({ isOpen: r }) => /* @__PURE__ */ p(n, {\n\t\t\t\tvariant: u,\n\t\t\t\tsize: e.buttonSize ?? U,\n\t\t\t\tdisabled: c,\n\t\t\t\twidth: K,\n\t\t\t\theight: H,\n\t\t\t\ttheme: f,\n\t\t\t\tchildren: /* @__PURE__ */ p(t, {\n\t\t\t\t\tdirection: \"row\",\n\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\tjustifyContent: \"center\",\n\t\t\t\t\tgap: M.gap ?? 6,\n\t\t\t\t\tchildren: $(e, r, c)\n\t\t\t\t})\n\t\t\t})\n\t\t}, o) : /* @__PURE__ */ p(n, {\n\t\t\twidth: K,\n\t\t\theight: H,\n\t\t\tvariant: u,\n\t\t\tsize: e.buttonSize ?? U,\n\t\t\tdisabled: c,\n\t\t\tonClick: () => ce(e),\n\t\t\ttheme: f,\n\t\t\tchildren: /* @__PURE__ */ p(t, {\n\t\t\t\tdirection: \"row\",\n\t\t\t\talignItems: \"center\",\n\t\t\t\tjustifyContent: \"center\",\n\t\t\t\tgap: M.gap ?? 6,\n\t\t\t\tchildren: $(e, l, c)\n\t\t\t})\n\t\t}, o);\n\t};\n\treturn /* @__PURE__ */ p(t, {\n\t\tdirection: oe,\n\t\talignItems: \"center\",\n\t\tgap: M.itemGap ?? 6,\n\t\tpadding: M.padding ?? 4,\n\t\tbackgroundColor: M.backgroundColor,\n\t\tbackgroundAlpha: M.backgroundAlpha,\n\t\tborderColor: M.borderColor,\n\t\tborderWidth: M.borderWidth,\n\t\tcornerRadius: M.cornerRadius,\n\t\t...q === void 0 ? {} : { alpha: q },\n\t\ttheme: N,\n\t\tchildren: w.map(le)\n\t});\n}\nfunction w(e) {\n\treturn /* @__PURE__ */ p(C, { ...e });\n}\n//#endregion\nexport { w as ToolButtonGroup, C as Toolbar, v as getToolbarItemId, _ as isToolbarMenuItem, h as isToolbarSeparatorItem, g as isToolbarToggleItem, y as resolveToolbarActiveId };\n","import { Text as e } from \"./primitives/Text.js\";\nimport { VectorDrawContent as t } from \"./primitives/VectorDrawContent.js\";\nimport { View as n } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Easing as r, KNOWN_COMPONENTS as i, createTween as ee, getGlobalThemeDefaults as a, mergeThemes as o, numberToRgb as s, resolveComponentTheme as te, rgbToNumber as c, useEffect as l, useRef as u, useState as d, useSurface as ne, useTheme as re } from \"@number10/jsx-core\";\nimport { jsx as f, jsxs as p } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/Toggle.tsx\nfunction m(e, t, n) {\n\tlet r = s(e), i = s(t);\n\treturn c(Math.round(r.r + (i.r - r.r) * n), Math.round(r.g + (i.g - r.g) * n), Math.round(r.b + (i.b - r.b) * n));\n}\nfunction h(s) {\n\tlet c = re(), h = s.theme ? o(c ?? {}, s.theme) : c, { props: g, nestedTheme: _ } = te({\n\t\tcomponentName: \"Toggle\",\n\t\tglobalTheme: a(),\n\t\tlocalTheme: h,\n\t\tknownComponents: i\n\t}), v = g.width ?? 50, y = g.height ?? 28, b = g.thumbSize ?? 24, ie = g.trackColorOff ?? 10066329, x = g.trackColorOn ?? 5025616, ae = g.trackBorderColorOff ?? 7829367, oe = g.trackBorderColorOn ?? x, S = g.trackBorderWidth ?? 1, C = g.thumbColor ?? 16777215, w = g.thumbBorderColor ?? 13751771, T = g.thumbBorderWidth ?? 1, se = g.disabledColor ?? 6710886, E = g.disabledAlpha ?? .5, D = g.padding ?? 2, O = g.duration ?? 200, k = g.gap ?? 8, A = s.labelPosition ?? g.labelPosition ?? \"right\", j = b / 2, M = y / 2, N = D + j, P = v - D - j, F = s.checked ?? !1, [I, ce] = d(F), L = u(F), [R, z] = d(!1), [B, V] = d(F ? P : N), H = u(F ? P : N), [U, W] = d(+!!F), G = u(+!!F), K = u(null), q = ne()?.scheduler ?? null, J = u(q);\n\tq && J.current !== q && (J.current = q), l(() => {\n\t\tL.current = I;\n\t}, [I]), l(() => {\n\t\tH.current = B;\n\t}, [B]), l(() => {\n\t\tG.current = U;\n\t}, [U]), l(() => {\n\t\ts.checked !== void 0 && s.checked !== L.current && Y(s.checked);\n\t}, [\n\t\ts.checked,\n\t\tN,\n\t\tP,\n\t\tO\n\t]), l(() => {\n\t\tR || (V(I ? P : N), W(+!!I));\n\t}, [\n\t\tI,\n\t\tN,\n\t\tP,\n\t\tR\n\t]), l(() => () => {\n\t\tK.current?.stop(), K.current = null;\n\t}, []);\n\tlet Y = (e) => {\n\t\tlet t = J.current, n = G.current, i = H.current, a = +!!e, o = e ? P : N;\n\t\tif (K.current?.stop(), K.current = null, z(!0), ce(e), !t) {\n\t\t\tW(a), V(o), z(!1);\n\t\t\treturn;\n\t\t}\n\t\tK.current = ee({\n\t\t\tprogress: n,\n\t\t\tx: i\n\t\t}, {\n\t\t\tto: {\n\t\t\t\tprogress: a,\n\t\t\t\tx: o\n\t\t\t},\n\t\t\tduration: O,\n\t\t\tease: r.cubicOut,\n\t\t\tonUpdate: (e) => {\n\t\t\t\tW(e.progress), V(e.x);\n\t\t\t},\n\t\t\tonComplete: () => {\n\t\t\t\tW(a), V(o), z(!1), K.current = null;\n\t\t\t}\n\t\t}, t);\n\t}, le = () => {\n\t\tif (s.disabled || R) return;\n\t\tlet e = !L.current;\n\t\tY(e), s.onChange?.(e);\n\t}, X = s.disabled ? m(se, x, U) : m(ie, x, U), Z = m(ae, oe, U), Q = /* @__PURE__ */ p(n, {\n\t\tdirection: \"stack\",\n\t\twidth: v,\n\t\theight: y,\n\t\tenableGestures: !s.disabled,\n\t\tonTouch: le,\n\t\talpha: s.disabled ? E : 1,\n\t\tchildren: [/* @__PURE__ */ f(t, {\n\t\t\twidth: v,\n\t\t\theight: y,\n\t\t\tdependencies: [\n\t\t\t\tv,\n\t\t\t\ty,\n\t\t\t\tX,\n\t\t\t\tZ,\n\t\t\t\tS\n\t\t\t],\n\t\t\tonDraw: (e) => {\n\t\t\t\tlet t = S / 2;\n\t\t\t\te.clear(), e.fillStyle(X, 1).fillRoundedRect(0, 0, v, y, M), S > 0 && e.lineStyle(S, Z, 1).strokeRoundedRect(t, t, v - S, y - S, Math.max(0, M - t));\n\t\t\t}\n\t\t}), /* @__PURE__ */ f(t, {\n\t\t\twidth: b,\n\t\t\theight: b,\n\t\t\tx: B,\n\t\t\ty: y / 2,\n\t\t\tdependencies: [\n\t\t\t\tb,\n\t\t\t\tC,\n\t\t\t\tw,\n\t\t\t\tT\n\t\t\t],\n\t\t\tonDraw: (e) => {\n\t\t\t\te.clear().fillStyle(C, 1).fillCircle(0, 0, j), T > 0 && e.lineStyle(T, w, 1).strokeCircle(0, 0, Math.max(0, j - T / 2));\n\t\t\t}\n\t\t})]\n\t}), $ = s.label && A !== \"none\" ? /* @__PURE__ */ f(e, {\n\t\ttext: s.label,\n\t\tstyle: g.labelStyle,\n\t\talpha: s.disabled ? E : 1\n\t}) : null;\n\treturn !s.label || A === \"none\" ? /* @__PURE__ */ p(n, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: k,\n\t\ttheme: _,\n\t\tchildren: [\n\t\t\ts.prefix,\n\t\t\tQ,\n\t\t\ts.suffix\n\t\t]\n\t}) : /* @__PURE__ */ p(n, {\n\t\tdirection: \"row\",\n\t\talignItems: \"center\",\n\t\tgap: k,\n\t\ttheme: _,\n\t\tchildren: [\n\t\t\tA === \"left\" && $,\n\t\t\ts.prefix,\n\t\t\tQ,\n\t\t\ts.suffix,\n\t\t\tA === \"right\" && $\n\t\t]\n\t});\n}\n//#endregion\nexport { h as Toggle };\n","import { View as e } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { jsx as t } from \"@number10/jsx-core/jsx-runtime\";\n//#region src/TransformOriginView.tsx\nfunction n({ originX: n = .5, originY: r = .5, width: i, height: a, x: o = 0, y: s = 0, children: c, rotation: l, scale: u, scaleX: d, scaleY: f, backgroundColor: p, backgroundAlpha: m, cornerRadius: h, borderWidth: g, borderColor: _, borderAlpha: v, ...y }) {\n\tif (typeof i != \"number\" || typeof a != \"number\") throw Error(\"TransformOriginView requires numeric width and height\");\n\tlet b = i * n, x = a * r, S = {};\n\treturn l !== void 0 && (S.rotation = l), u !== void 0 && (S.scale = u), d !== void 0 && (S.scaleX = d), f !== void 0 && (S.scaleY = f), p !== void 0 && (S.backgroundColor = p), m !== void 0 && (S.backgroundAlpha = m), h !== void 0 && (S.cornerRadius = h), g !== void 0 && (S.borderWidth = g), _ !== void 0 && (S.borderColor = _), v !== void 0 && (S.borderAlpha = v), /* @__PURE__ */ t(e, {\n\t\tx: o,\n\t\ty: s,\n\t\twidth: i,\n\t\theight: a,\n\t\tpadding: 0,\n\t\tdirection: \"stack\",\n\t\t...y,\n\t\tchildren: /* @__PURE__ */ t(e, {\n\t\t\tx: b,\n\t\t\ty: x,\n\t\t\twidth: i,\n\t\t\theight: a,\n\t\t\tpadding: 0,\n\t\t\tdirection: \"stack\",\n\t\t\t...S,\n\t\t\tchildren: /* @__PURE__ */ t(e, {\n\t\t\t\tx: -b,\n\t\t\t\ty: -x,\n\t\t\t\twidth: i,\n\t\t\t\theight: a,\n\t\t\t\tpadding: 0,\n\t\t\t\tdirection: \"stack\",\n\t\t\t\tbackgroundAlpha: 0,\n\t\t\t\tchildren: c\n\t\t\t})\n\t\t})\n\t});\n}\n//#endregion\nexport { n as TransformOriginView };\n","import { buildPortableThemeDefaults as e, createPortableThemeDefaults as t, registerPortableDefaults as n } from \"./theme-defaults.js\";\nimport { Sprite as r } from \"./primitives/Sprite.js\";\nimport { Text as i } from \"./primitives/Text.js\";\nimport { VectorDrawContent as a } from \"./primitives/VectorDrawContent.js\";\nimport { View as o } from \"./primitives/View.js\";\nimport \"./primitives.js\";\nimport { Accordion as s } from \"./Accordion.js\";\nimport { Button as c } from \"./Button.js\";\nimport { Portal as l } from \"./Portal.js\";\nimport { useOverlayPresence as u } from \"./useOverlayPresence.js\";\nimport { Modal as d } from \"./Modal.js\";\nimport { Dialog as f } from \"./Dialog.js\";\nimport { WrapText as p } from \"./WrapText.js\";\nimport { AlertDialog as m } from \"./AlertDialog.js\";\nimport { DEFAULT_LABELS as h, DebugPanel as g, PRESET_METRICS as _, formatDefault as v, summarizeMap as y } from \"./DebugPanel.js\";\nimport { ContextMenu as b, Popover as x, calculateOverlayPosition as S } from \"./Popover.js\";\nimport { TextInput as C } from \"./TextInput.js\";\nimport { ActivityIndicator as w } from \"./ActivityIndicator.js\";\nimport { Badge as T, Tag as E, formatBadgeCount as D, getBadgeText as O } from \"./Badge.js\";\nimport { BottomSheet as k, BottomSheetDepth as A, BottomSheetHandle as j } from \"./BottomSheet.js\";\nimport { Checkbox as M, getNextCheckedState as N, normalizeCheckedState as P } from \"./Checkbox.js\";\nimport { RadioButton as F } from \"./RadioButton.js\";\nimport { RadioGroup as I } from \"./RadioGroup.js\";\nimport { RangeSlider as L, Slider as R } from \"./Slider.js\";\nimport { ColorPicker as z } from \"./ColorPicker.js\";\nimport { Divider as B } from \"./Divider.js\";\nimport { Dropdown as V } from \"./Dropdown.js\";\nimport { Image as H } from \"./Image.js\";\nimport { Icon as U, createIconComponent as W, useIconPreload as G } from \"./Icon.js\";\nimport { Joystick as K } from \"./Joystick.js\";\nimport { ScrollSlider as q, calculateSliderSize as J } from \"./ScrollSlider.js\";\nimport { ScrollView as Y, resolveScrollViewLayout as X } from \"./ScrollView.js\";\nimport { ListBox as Z, findListBoxItem as Q, resolveListBoxValue as $ } from \"./ListBox.js\";\nimport { MenuButton as ee } from \"./MenuButton.js\";\nimport { NineSlice as te } from \"./NineSlice.js\";\nimport { NineSliceButton as ne } from \"./NineSliceButton.js\";\nimport { NumberInput as re, NumberInputIndicator as ie, getNextNumberInputValue as ae, getNumberInputPrecision as oe, normalizeNumberInputValue as se } from \"./NumberInput.js\";\nimport { PalettePicker as ce, chunkPalettePickerColors as le, getPalettePickerContrastColor as ue, normalizePalettePickerColor as de, normalizePalettePickerColors as fe, resolvePalettePickerValue as pe } from \"./PalettePicker.js\";\nimport { ProgressBar as me, clampProgressValue as he, getProgressRatio as ge } from \"./ProgressBar.js\";\nimport { ProgressView as _e } from \"./ProgressView.js\";\nimport { RatingBar as ve } from \"./RatingBar.js\";\nimport { SegmentedControl as ye, findSegmentedControlOption as be, isSegmentedControlOptionSelectable as xe, resolveSegmentedControlValue as Se } from \"./SegmentedControl.js\";\nimport { Sidebar as Ce } from \"./Sidebar.js\";\nimport { Tab as we, TabPanel as Te, Tabs as Ee } from \"./Tabs.js\";\nimport { NotificationStack as De, Toast as Oe, getToastAutoDismissDuration as ke, getToastContentWidth as Ae, resolveNotificationStackAlignment as je } from \"./Toast.js\";\nimport { WheelPicker as Me } from \"./WheelPicker.js\";\nimport { ToolButtonGroup as Ne, Toolbar as Pe, getToolbarItemId as Fe, isToolbarMenuItem as Ie, isToolbarSeparatorItem as Le, isToolbarToggleItem as Re, resolveToolbarActiveId as ze } from \"./Toolbar.js\";\nimport { Toggle as Be } from \"./Toggle.js\";\nimport { TransformOriginView as Ve } from \"./TransformOriginView.js\";\nimport { useAtlas as He, useState as Ue, useTexture as We, useThemeTokens as Ge } from \"@number10/jsx-core\";\n//#region src/index.ts\nn();\n//#endregion\nexport { s as Accordion, w as ActivityIndicator, m as AlertDialog, T as Badge, k as BottomSheet, A as BottomSheetDepth, j as BottomSheetHandle, c as Button, M as Checkbox, z as ColorPicker, b as ContextMenu, h as DEFAULT_LABELS, g as DebugPanel, f as Dialog, B as Divider, V as Dropdown, U as Icon, H as Image, K as Joystick, Z as ListBox, ee as MenuButton, d as Modal, te as NineSlice, ne as NineSliceButton, De as NotificationStack, re as NumberInput, ie as NumberInputIndicator, _ as PRESET_METRICS, ce as PalettePicker, x as Popover, l as Portal, me as ProgressBar, _e as ProgressView, F as RadioButton, I as RadioGroup, L as RangeSlider, ve as RatingBar, q as ScrollSlider, Y as ScrollView, ye as SegmentedControl, Ce as Sidebar, R as Slider, r as Sprite, we as Tab, Te as TabPanel, Ee as Tabs, E as Tag, i as Text, C as TextInput, Oe as Toast, Be as Toggle, Ne as ToolButtonGroup, Pe as Toolbar, Ve as TransformOriginView, a as VectorDrawContent, o as View, Me as WheelPicker, p as WrapText, e as buildPortableThemeDefaults, S as calculateOverlayPosition, J as calculateSliderSize, le as chunkPalettePickerColors, he as clampProgressValue, W as createIconComponent, t as createPortableThemeDefaults, Q as findListBoxItem, be as findSegmentedControlOption, D as formatBadgeCount, v as formatDefault, O as getBadgeText, N as getNextCheckedState, ae as getNextNumberInputValue, oe as getNumberInputPrecision, ue as getPalettePickerContrastColor, ge as getProgressRatio, ke as getToastAutoDismissDuration, Ae as getToastContentWidth, Fe as getToolbarItemId, xe as isSegmentedControlOptionSelectable, Ie as isToolbarMenuItem, Le as isToolbarSeparatorItem, Re as isToolbarToggleItem, P as normalizeCheckedState, se as normalizeNumberInputValue, de as normalizePalettePickerColor, fe as normalizePalettePickerColors, n as registerPortableDefaults, $ as resolveListBoxValue, je as resolveNotificationStackAlignment, pe as resolvePalettePickerValue, X as resolveScrollViewLayout, Se as resolveSegmentedControlValue, ze as resolveToolbarActiveId, y as summarizeMap, He as useAtlas, G as useIconPreload, u as useOverlayPresence, Ue as useState, We as useTexture, Ge as useThemeTokens };\n","/**\n * PixiJS layout bridge — wires renderer-specific callbacks into the core layout engine.\n *\n * Must be imported before any layout operations (usually in the package index).\n * Mirrors @number10/jsx-phaser's phaser-layout-bridge.ts.\n */\n\nimport type { ApplyOverflowClip, LayoutContainer, LayoutProps } from '@number10/jsx-core'\nimport { DebugLogger, registerApplyOverflowClip } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\n\n// ---------------------------------------------------------------------------\n// Overflow clipping via PIXI.Graphics mask\n// ---------------------------------------------------------------------------\n\ntype PixiMaskedContainer = PIXI.Container & { __overflowMask?: PIXI.Graphics }\n\n/**\n * Normalize cornerRadius to a single number (max of all corners).\n */\nfunction normalizeCornerRadius(\n cr: number | { tl?: number; tr?: number; bl?: number; br?: number } | undefined\n): number {\n if (cr === undefined) return 0\n if (typeof cr === 'number') return cr\n return Math.max(cr.tl ?? 0, cr.tr ?? 0, cr.bl ?? 0, cr.br ?? 0)\n}\n\nconst pixiClip: ApplyOverflowClip = (\n container: LayoutContainer,\n containerProps: LayoutProps & {\n cornerRadius?: number | { tl?: number; tr?: number; bl?: number; br?: number }\n },\n width: number,\n height: number\n): void => {\n // Skip non-Pixi containers in multi-renderer setups\n if (!(container instanceof PIXI.Container)) return\n\n const pixiContainer = container as PixiMaskedContainer\n\n if (containerProps.overflow === 'hidden' && width > 0 && height > 0) {\n const radius = normalizeCornerRadius(containerProps.cornerRadius)\n\n if (!pixiContainer.__overflowMask) {\n const mask = new PIXI.Graphics()\n if (radius > 0) {\n mask.roundRect(0, 0, width, height, radius)\n } else {\n mask.rect(0, 0, width, height)\n }\n mask.fill({ color: 0xffffff })\n mask.eventMode = 'none' // Mask should not intercept events\n // Mask must be in the display list for PIXI to compute its transform\n pixiContainer.addChildAt(mask, 0)\n pixiContainer.mask = mask\n pixiContainer.__overflowMask = mask\n DebugLogger.log('overflowMask', 'Created Pixi graphics mask')\n } else {\n // Update existing mask\n const mask = pixiContainer.__overflowMask\n mask.clear()\n if (radius > 0) {\n mask.roundRect(0, 0, width, height, radius)\n } else {\n mask.rect(0, 0, width, height)\n }\n mask.fill({ color: 0xffffff })\n DebugLogger.log('overflowMask', 'Updated Pixi graphics mask')\n }\n } else if (pixiContainer.__overflowMask) {\n pixiContainer.mask = null\n pixiContainer.removeChild(pixiContainer.__overflowMask)\n pixiContainer.__overflowMask.destroy()\n delete pixiContainer.__overflowMask\n DebugLogger.log('overflowMask', 'Removed Pixi graphics mask')\n }\n}\n\nregisterApplyOverflowClip(pixiClip)\n","/**\n * PixiJS node types and layout helpers.\n *\n * Shared types (PixiNode, PixiTextNode) and utilities used by the host adapter\n * and its appliers.\n */\nimport type {\n BackgroundProps,\n EffectTransformOrigin,\n HostNode,\n HostParent,\n LayoutProps,\n SurfaceContext,\n TransformProps,\n} from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\n\n// ---------------------------------------------------------------------------\n// Node types\n// ---------------------------------------------------------------------------\n\nexport type PixiNode = PIXI.Container & {\n __pixiHostNode?: true\n __pixiNode?: { destroyed: boolean }\n __effectContainer?: PIXI.Container\n __effectOrigin?: EffectTransformOrigin\n __layoutBox?: { width: number; height: number }\n __cachedLayoutSize?: { width: number; height: number }\n __getLayoutSize?: () => { width: number; height: number }\n __layoutProps?: Partial<LayoutProps & BackgroundProps & TransformProps>\n __layoutParent?: unknown\n __backgroundGraphics?: PIXI.Graphics | undefined\n __surfaceContext?: SurfaceContext\n __layoutAccessorsInstalled?: true\n __signalEffects?: Map<string, () => void>\n __lastPropValues?: Record<string, unknown>\n __sprite?: PIXI.Sprite | undefined\n __nineSliceSprite?: PIXI.NineSliceSprite | undefined\n list?: unknown[]\n setPosition?: (x: number, y: number) => PixiNode\n setSize?: (width: number, height: number) => PixiNode\n}\n\nexport type PixiTextNode = PixiNode & {\n __textBackgroundGraphics?: PIXI.Graphics | undefined\n __textDisplay: PIXI.Text\n __textStyleSource?: Record<string, unknown>\n}\n\n// ---------------------------------------------------------------------------\n// Type guards\n// ---------------------------------------------------------------------------\n\n/** Cast a HostNode to PIXI.Container. */\nexport function asContainer(node: HostNode): PIXI.Container {\n return node as PIXI.Container\n}\n\n/** Check whether a node has been destroyed. */\nexport function isDestroyed(node: HostNode | HostParent): boolean {\n const c = node as PixiNode\n return c.destroyed === true || c.__pixiNode?.destroyed === true\n}\n\n/** Check whether a PixiNode is a text node (has __textDisplay). */\nexport function isTextNode(node: PixiNode): node is PixiTextNode {\n return '__textDisplay' in node\n}\n\n/** Check whether a display object is a host node wrapper. */\nexport function isHostNodeContainer(value: unknown): value is PixiNode {\n return value instanceof PIXI.Container && (value as PixiNode).__pixiHostNode === true\n}\n\n/** Get the animatable/content container for a host node. */\nexport function getContentContainer(node: HostNode | HostParent | PixiNode): PIXI.Container {\n const container = node as PixiNode\n return container.__effectContainer ?? (node as PIXI.Container)\n}\n\n// ---------------------------------------------------------------------------\n// Layout API\n// ---------------------------------------------------------------------------\n\n/** Set the layout box dimensions. Only stores numeric pixel values. */\nexport function setLayoutSize(node: PixiNode, width: number, height: number): void {\n const w =\n typeof width === 'number' && Number.isFinite(width) ? width : (node.__layoutBox?.width ?? 0)\n const h =\n typeof height === 'number' && Number.isFinite(height) ? height : (node.__layoutBox?.height ?? 0)\n node.__layoutBox = { width: w, height: h }\n syncEffectContainerOrigin(node, node.__effectOrigin ?? 'top-left')\n}\n\n/** Set the active transform origin for the effect container. */\nexport function setEffectTransformOrigin(node: PixiNode, origin: EffectTransformOrigin): void {\n node.__effectOrigin = origin\n syncEffectContainerOrigin(node, origin)\n}\n\n/** Get measured size — prefers text local bounds, falls back to __layoutBox. */\nexport function getMeasuredSize(node: PixiNode): { width: number; height: number } {\n if (isTextNode(node)) {\n const bounds = node.__textDisplay.getLocalBounds()\n if (bounds.width > 0 || bounds.height > 0) {\n return { width: bounds.width, height: bounds.height }\n }\n return sanitizeLayoutBox(node.__layoutBox)\n }\n if (node.__layoutBox) {\n return sanitizeLayoutBox(node.__layoutBox)\n }\n const bounds = getContentContainer(node).getLocalBounds()\n return { width: bounds.width, height: bounds.height }\n}\n\nfunction sanitizeLayoutBox(box: { width: number; height: number } | undefined): {\n width: number\n height: number\n} {\n if (!box) return { width: 0, height: 0 }\n return {\n width: Number.isFinite(box.width) ? box.width : 0,\n height: Number.isFinite(box.height) ? box.height : 0,\n }\n}\n\nfunction syncEffectContainerOrigin(node: PixiNode, origin: EffectTransformOrigin): void {\n const effectContainer = node.__effectContainer\n const layoutBox = node.__layoutBox\n if (!effectContainer || !layoutBox || isDestroyed(effectContainer)) {\n return\n }\n\n // Guard against containers whose pivot/position were nullified after destroy()\n if (!effectContainer.pivot || !effectContainer.position) {\n return\n }\n\n const centerX = layoutBox.width / 2\n\n switch (origin) {\n case 'center':\n effectContainer.pivot.set(centerX, layoutBox.height / 2)\n effectContainer.position.set(centerX, layoutBox.height / 2)\n break\n case 'top-center':\n effectContainer.pivot.set(centerX, 0)\n effectContainer.position.set(centerX, 0)\n break\n case 'top-left':\n default:\n effectContainer.pivot.set(0, 0)\n effectContainer.position.set(0, 0)\n break\n }\n}\n","/**\n * Pixi effects bridge — connects Core effect engine to PIXI nodes.\n *\n * Layout, hit areas, and host tree stay on the outer host node. Temporary effect\n * transforms run on the inner `__effectContainer` so layout updates do not fight\n * with animation. The Core engine handles all effect definitions, step sequencing,\n * easing, and loop management. Pixi only applies values to native nodes.\n */\nimport {\n EFFECT_DEFINITIONS,\n registerEffectRunner,\n registerEffectStopRunner,\n resolveEffectTransformOrigin,\n runEffect,\n stopAnimationEffect as stopEngineEffect,\n type EffectConfig,\n type EffectName,\n type EffectTarget,\n type HostScheduler,\n} from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { setEffectTransformOrigin, type PixiNode } from './appliers/pixi-node'\n\n// ---------------------------------------------------------------------------\n// createPixiTarget — wraps a PIXI node as an EffectTarget\n// ---------------------------------------------------------------------------\n\nfunction createPixiTarget(node: PIXI.Container): EffectTarget {\n // Effect runs on the inner __effectContainer if it exists, else on the node itself\n const target =\n ((node as unknown as Record<string, unknown>).__effectContainer as\n | PIXI.Container\n | undefined) ?? node\n\n return {\n onUpdate(values) {\n if (target.destroyed) return\n if (values.x !== undefined) target.x = values.x\n if (values.y !== undefined) target.y = values.y\n if (values.scaleX !== undefined) target.scale.x = values.scaleX\n if (values.scaleY !== undefined) target.scale.y = values.scaleY\n if (values.rotation !== undefined) target.rotation = values.rotation\n if (values.alpha !== undefined) target.alpha = values.alpha\n },\n\n getSnapshot() {\n return {\n x: target.x,\n y: target.y,\n scaleX: target.scale.x,\n scaleY: target.scale.y,\n rotation: target.rotation,\n alpha: target.alpha,\n }\n },\n\n getScheduler() {\n let current: PIXI.Container | null = target\n while (current) {\n const ctx = (current as unknown as Record<string, unknown>).__surfaceContext as\n | { scheduler?: HostScheduler }\n | undefined\n if (ctx?.scheduler) return ctx.scheduler\n current = current.parent\n }\n throw new Error('No HostScheduler found in Pixi node tree')\n },\n }\n}\n\n// ---------------------------------------------------------------------------\n// Transitional runner — registered with Core, delegates to central engine\n// ---------------------------------------------------------------------------\n\nconst pixiEffectRunner = (node: unknown, effect: EffectName, config?: EffectConfig): void => {\n if (!(node instanceof PIXI.Container) || node.destroyed) return\n\n const hostNode = node as PixiNode\n setEffectTransformOrigin(hostNode, resolveEffectTransformOrigin(effect))\n\n const def = EFFECT_DEFINITIONS[effect]\n if (!def) return\n\n const target = createPixiTarget(node)\n runEffect(node, target, def, config ?? {})\n}\n\nconst pixiEffectStopRunner = (node: unknown): void => {\n if (!(node instanceof PIXI.Container) || node.destroyed) return\n stopEngineEffect(node)\n}\n\nregisterEffectRunner(pixiEffectRunner)\nregisterEffectStopRunner(pixiEffectStopRunner)\n","/**\n * PixiGestureManager — gesture system for PIXI-based renderers.\n *\n * Mirrors @number10/jsx-phaser's GestureManager but uses PIXI's FederatedEvent system\n * instead of Phaser's input system. Uses renderer-agnostic types from @number10/jsx-core.\n */\nimport type {\n GestureEventData,\n GestureProps,\n TouchMoveState,\n WheelEventData,\n} from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\ninterface GestureCallbacks {\n onTouch?: ((data: GestureEventData<PIXI.FederatedPointerEvent>) => void) | undefined\n onTouchOutside?: ((data: GestureEventData<PIXI.FederatedPointerEvent>) => void) | undefined\n onTouchMove?: ((data: GestureEventData<PIXI.FederatedPointerEvent>) => void) | undefined\n onDoubleTap?: ((data: GestureEventData<PIXI.FederatedPointerEvent>) => void) | undefined\n onLongPress?: ((data: GestureEventData<PIXI.FederatedPointerEvent>) => void) | undefined\n onWheel?: ((data: WheelEventData<PIXI.FederatedPointerEvent, WheelEvent>) => void) | undefined\n}\n\ninterface GestureConfig {\n longPressDuration: number\n doubleTapDelay: number\n maxTouchDuration: number\n}\n\ninterface GestureEntry {\n container: PIXI.Container\n callbacks: GestureCallbacks\n config: GestureConfig\n hitArea: { x: number; y: number; width: number; height: number }\n lastTapTime: number\n longPressTimer?: ReturnType<typeof setTimeout> | undefined\n longPressTriggered?: boolean | undefined\n pointerDownTime?: number | undefined\n}\n\n// ---------------------------------------------------------------------------\n// PixiGestureManager\n// ---------------------------------------------------------------------------\n\nexport class PixiGestureManager {\n private entries: GestureEntry[] = []\n private app: PIXI.Application\n private isListening = false\n private lastMoveX = 0\n private lastMoveY = 0\n private activeMoveEntry: GestureEntry | null = null\n private readonly onWheelDomEvent = (event: WheelEvent) => this.onWheel(event)\n\n constructor(app: PIXI.Application) {\n this.app = app\n }\n\n private getLayoutBox(container: PIXI.Container): { width: number; height: number } | null {\n const layoutBox = container as PIXI.Container & {\n __layoutBox?: { width: number; height: number }\n }\n\n const width = layoutBox.__layoutBox?.width ?? 0\n const height = layoutBox.__layoutBox?.height ?? 0\n\n if (width <= 0 || height <= 0) {\n return null\n }\n\n return { width, height }\n }\n\n private isPointInRect(\n x: number,\n y: number,\n rect: { x: number; y: number; width: number; height: number }\n ): boolean {\n return x >= rect.x && x <= rect.x + rect.width && y >= rect.y && y <= rect.y + rect.height\n }\n\n private resolveContainerWorldRect(container: PIXI.Container): {\n x: number\n y: number\n width: number\n height: number\n } {\n const layoutBox = this.getLayoutBox(container)\n if (layoutBox) {\n const { width, height } = layoutBox\n // Use all four corners. Two opposite corners are not enough once the\n // container is rotated or mirrored; at 45deg a square can collapse to a\n // near-line if we only compare top-left and bottom-right.\n const corners = [\n container.toGlobal(new PIXI.Point(0, 0)),\n container.toGlobal(new PIXI.Point(width, 0)),\n container.toGlobal(new PIXI.Point(0, height)),\n container.toGlobal(new PIXI.Point(width, height)),\n ]\n const xs = corners.map((point) => point.x)\n const ys = corners.map((point) => point.y)\n const minX = Math.min(...xs)\n const maxX = Math.max(...xs)\n const minY = Math.min(...ys)\n const maxY = Math.max(...ys)\n\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY,\n }\n }\n\n const bounds = container.getBounds()\n return { x: bounds.x, y: bounds.y, width: bounds.width, height: bounds.height }\n }\n\n private resolveClipRect(container: PIXI.Container): {\n x: number\n y: number\n width: number\n height: number\n } | null {\n const layoutContainer = container as PIXI.Container & {\n __layoutProps?: { overflow?: string }\n __layoutBox?: { width: number; height: number }\n __getLayoutSize?: () => { width: number; height: number }\n }\n\n if (layoutContainer.__layoutProps?.overflow === 'hidden') {\n const layoutSize = layoutContainer.__getLayoutSize?.() ?? layoutContainer.__layoutBox\n const width = Math.max(0, layoutSize?.width ?? 0)\n const height = Math.max(0, layoutSize?.height ?? 0)\n if (width > 0 && height > 0) {\n const bounds = this.resolveContainerWorldRect(container)\n return {\n x: bounds.x,\n y: bounds.y,\n width,\n height,\n }\n }\n }\n\n const maskedContainer = container as PIXI.Container & {\n __overflowMask?: PIXI.Container\n mask?: PIXI.Container | null\n }\n\n const mask = maskedContainer.__overflowMask ?? maskedContainer.mask\n if (!mask || typeof mask.getBounds !== 'function') {\n return null\n }\n\n const bounds = mask.getBounds()\n if (bounds.width <= 0 || bounds.height <= 0) {\n return null\n }\n\n return { x: bounds.x, y: bounds.y, width: bounds.width, height: bounds.height }\n }\n\n private intersectRects(\n a: { x: number; y: number; width: number; height: number },\n b: { x: number; y: number; width: number; height: number }\n ): { x: number; y: number; width: number; height: number } | null {\n const left = Math.max(a.x, b.x)\n const top = Math.max(a.y, b.y)\n const right = Math.min(a.x + a.width, b.x + b.width)\n const bottom = Math.min(a.y + a.height, b.y + b.height)\n\n if (right <= left || bottom <= top) {\n return null\n }\n\n return {\n x: left,\n y: top,\n width: right - left,\n height: bottom - top,\n }\n }\n\n private resolveWorldHitArea(container: PIXI.Container): {\n x: number\n y: number\n width: number\n height: number\n } {\n let hitArea = this.resolveContainerWorldRect(container)\n let current = container.parent\n\n while (current) {\n const clipRect = this.resolveClipRect(current)\n if (clipRect) {\n const clipped = this.intersectRects(hitArea, clipRect)\n if (!clipped) {\n return { x: 0, y: 0, width: 0, height: 0 }\n }\n hitArea = clipped\n }\n current = current.parent\n }\n\n return hitArea\n }\n\n private resolveEntryMetrics(\n entry: GestureEntry,\n globalX: number,\n globalY: number\n ): { localX: number; localY: number; width: number; height: number } {\n const layoutBox = this.getLayoutBox(entry.container)\n if (layoutBox) {\n const localPoint = entry.container.toLocal(new PIXI.Point(globalX, globalY))\n return {\n localX: localPoint.x,\n localY: localPoint.y,\n width: layoutBox.width,\n height: layoutBox.height,\n }\n }\n\n const hitArea = entry.hitArea\n return {\n localX: globalX - hitArea.x,\n localY: globalY - hitArea.y,\n width: hitArea.width,\n height: hitArea.height,\n }\n }\n\n private containsPoint(entry: GestureEntry, globalX: number, globalY: number): boolean {\n entry.hitArea = this.resolveWorldHitArea(entry.container)\n if (!this.isPointInRect(globalX, globalY, entry.hitArea)) {\n return false\n }\n\n const layoutBox = this.getLayoutBox(entry.container)\n if (!layoutBox) {\n return entry.hitArea.width > 0 && entry.hitArea.height > 0\n }\n\n const localPoint = entry.container.toLocal(new PIXI.Point(globalX, globalY))\n return (\n localPoint.x >= 0 &&\n localPoint.x <= layoutBox.width &&\n localPoint.y >= 0 &&\n localPoint.y <= layoutBox.height\n )\n }\n\n // -----------------------------------------------------------------------\n // Registration\n // -----------------------------------------------------------------------\n\n registerContainer(\n container: PIXI.Container,\n props: GestureProps<PIXI.FederatedPointerEvent>\n ): void {\n this.unregisterContainer(container)\n\n const callbacks: GestureCallbacks = {\n onTouch: props.onTouch,\n onTouchOutside: props.onTouchOutside,\n onTouchMove: props.onTouchMove,\n onDoubleTap: props.onDoubleTap,\n onLongPress: props.onLongPress,\n onWheel: props.onWheel,\n }\n\n const config: GestureConfig = {\n longPressDuration: props.longPressDuration ?? 500,\n doubleTapDelay: props.doubleTapDelay ?? 300,\n maxTouchDuration: props.maxTouchDuration ?? 500,\n }\n\n const hitArea = this.resolveWorldHitArea(container)\n\n this.entries.push({\n container,\n callbacks,\n config,\n hitArea,\n lastTapTime: 0,\n longPressTriggered: false,\n })\n this.ensureListening()\n }\n\n hasContainer(container: PIXI.Container): boolean {\n return this.entries.some((entry) => entry.container === container)\n }\n\n unregisterContainer(container: PIXI.Container): void {\n const idx = this.entries.findIndex((e) => e.container === container)\n if (idx >= 0) {\n const entry = this.entries[idx]\n if (entry?.longPressTimer) {\n clearTimeout(entry.longPressTimer)\n }\n this.entries.splice(idx, 1)\n }\n\n if (this.entries.length === 0) {\n this.stopListening()\n }\n }\n\n updateContainer(\n container: PIXI.Container,\n props: GestureProps<PIXI.FederatedPointerEvent>\n ): void {\n const entry = this.entries.find((e) => e.container === container)\n if (!entry) return\n\n entry.callbacks = {\n onTouch: props.onTouch,\n onTouchOutside: props.onTouchOutside,\n onTouchMove: props.onTouchMove,\n onDoubleTap: props.onDoubleTap,\n onLongPress: props.onLongPress,\n onWheel: props.onWheel,\n }\n entry.config = {\n longPressDuration: props.longPressDuration ?? 500,\n doubleTapDelay: props.doubleTapDelay ?? 300,\n maxTouchDuration: props.maxTouchDuration ?? 500,\n }\n\n entry.hitArea = this.resolveWorldHitArea(container)\n }\n\n updateHitArea(container: PIXI.Container): void {\n const entry = this.entries.find((e) => e.container === container)\n if (!entry) return\n entry.hitArea = this.resolveWorldHitArea(container)\n }\n\n // -----------------------------------------------------------------------\n // Event handling\n // -----------------------------------------------------------------------\n\n private ensureListening(): void {\n if (this.isListening || this.entries.length === 0) return\n this.isListening = true\n\n const stage = this.app.stage\n stage.eventMode = 'static'\n stage.hitArea = this.app.screen\n\n stage.on('pointerdown', this.onPointerDown, this)\n stage.on('pointermove', this.onPointerMove, this)\n stage.on('pointerup', this.onPointerUp, this)\n stage.on('pointerupoutside', this.onPointerUpOutside, this)\n this.app.canvas.addEventListener('wheel', this.onWheelDomEvent, { passive: false })\n }\n\n private stopListening(): void {\n if (!this.isListening) return\n\n this.isListening = false\n\n const stage = this.app.stage\n stage.off('pointerdown', this.onPointerDown, this)\n stage.off('pointermove', this.onPointerMove, this)\n stage.off('pointerup', this.onPointerUp, this)\n stage.off('pointerupoutside', this.onPointerUpOutside, this)\n this.app.canvas.removeEventListener('wheel', this.onWheelDomEvent)\n }\n\n private onPointerDown(event: PIXI.FederatedPointerEvent): void {\n const globalPoint = event.global.clone()\n const hitEntries = this.hitTest(globalPoint.x, globalPoint.y)\n\n if (hitEntries.length === 0) return\n\n this.lastMoveX = globalPoint.x\n this.lastMoveY = globalPoint.y\n\n const topEntry =\n hitEntries.find((entry) => entry.callbacks.onTouchMove) ?? hitEntries[0] ?? null\n this.activeMoveEntry = topEntry\n const now = Date.now()\n for (const entry of hitEntries) {\n entry.pointerDownTime = now\n entry.longPressTriggered = false\n }\n\n if (this.activeMoveEntry) {\n // Fire onTouchMove with state='start' on hit entries (bubbling)\n for (const entry of hitEntries) {\n if (entry.callbacks.onTouchMove) {\n const data = this.createEventData(\n entry,\n globalPoint.x,\n globalPoint.y,\n 0,\n 0,\n 'start',\n true\n )\n entry.callbacks.onTouchMove(data)\n if (data.isPropagationStopped()) break\n }\n }\n }\n\n // Start long press timer for topmost container with onLongPress\n for (const entry of hitEntries) {\n if (entry.callbacks.onLongPress) {\n // Capture pointer position at press time for the event data\n const pressX = globalPoint.x\n const pressY = globalPoint.y\n const targetEntry = entry\n entry.longPressTimer = setTimeout(() => {\n targetEntry.longPressTimer = undefined as unknown as ReturnType<typeof setTimeout>\n targetEntry.longPressTriggered = true\n if (targetEntry.callbacks.onLongPress) {\n const data = this.createEventData(targetEntry, pressX, pressY, 0, 0, undefined, true)\n targetEntry.callbacks.onLongPress(data)\n }\n }, entry.config.longPressDuration)\n break\n }\n }\n }\n\n private onPointerMove(event: PIXI.FederatedPointerEvent): void {\n const globalPoint = event.global.clone()\n const dx = globalPoint.x - this.lastMoveX\n const dy = globalPoint.y - this.lastMoveY\n this.lastMoveX = globalPoint.x\n this.lastMoveY = globalPoint.y\n\n if (!this.activeMoveEntry) return\n\n const hitEntries = this.hitTest(globalPoint.x, globalPoint.y)\n const isInside = hitEntries.some((entry) => entry.container === this.activeMoveEntry?.container)\n\n if (this.activeMoveEntry.callbacks.onTouchMove) {\n const data = this.createEventData(\n this.activeMoveEntry,\n globalPoint.x,\n globalPoint.y,\n dx,\n dy,\n 'move',\n isInside\n )\n this.activeMoveEntry.callbacks.onTouchMove(data)\n }\n }\n\n private onPointerUp(event: PIXI.FederatedPointerEvent): void {\n const globalPoint = event.global.clone()\n this.handlePointerUp(globalPoint.x, globalPoint.y)\n }\n\n private onPointerUpOutside(event: PIXI.FederatedPointerEvent): void {\n const globalPoint = event.global.clone()\n this.handlePointerUp(globalPoint.x, globalPoint.y)\n }\n\n private onWheel(event: WheelEvent): void {\n const globalPoint = this.getWheelGlobalPoint(event)\n if (!globalPoint) return\n\n const hitEntries = this.hitTest(globalPoint.x, globalPoint.y)\n let shouldPreventDefault = false\n\n for (const entry of hitEntries) {\n if (!entry.callbacks.onWheel) {\n continue\n }\n\n const data = this.createWheelEventData(entry, globalPoint.x, globalPoint.y, event)\n entry.callbacks.onWheel(data)\n\n if (data.__defaultPrevented) {\n shouldPreventDefault = true\n }\n\n if (data.isPropagationStopped()) {\n break\n }\n }\n\n if (shouldPreventDefault) {\n event.preventDefault()\n }\n }\n\n private handlePointerUp(x: number, y: number): void {\n const hitEntries = this.hitTest(x, y)\n const now = Date.now()\n const activeEntry = this.activeMoveEntry\n\n // Clear ALL long press timers — ensures no stale timer fires\n for (const entry of this.entries) {\n if (entry.longPressTimer) {\n clearTimeout(entry.longPressTimer)\n entry.longPressTimer = undefined as unknown as ReturnType<typeof setTimeout>\n }\n }\n\n if (activeEntry) {\n if (activeEntry.callbacks.onTouchMove) {\n const data = this.createEventData(\n activeEntry,\n x,\n y,\n 0,\n 0,\n 'end',\n hitEntries.some((entry) => entry.container === activeEntry.container)\n )\n activeEntry.callbacks.onTouchMove(data)\n }\n }\n\n if (hitEntries.length > 0) {\n for (const entry of hitEntries) {\n const touchDuration = entry.pointerDownTime ? now - entry.pointerDownTime : 0\n const shouldFireTouch =\n !entry.longPressTriggered && touchDuration <= entry.config.maxTouchDuration\n\n if (!entry.callbacks.onTouch || !shouldFireTouch) {\n continue\n }\n\n const data = this.createEventData(entry, x, y, 0, 0, undefined, true)\n entry.callbacks.onTouch(data)\n if (data.isPropagationStopped()) {\n break\n }\n }\n\n for (const entry of hitEntries) {\n const touchDuration = entry.pointerDownTime ? now - entry.pointerDownTime : 0\n const shouldFireTouch =\n !entry.longPressTriggered && touchDuration <= entry.config.maxTouchDuration\n\n if (!entry.callbacks.onDoubleTap || !shouldFireTouch) {\n continue\n }\n\n if (now - entry.lastTapTime <= entry.config.doubleTapDelay) {\n const data = this.createEventData(entry, x, y, 0, 0, undefined, true)\n entry.callbacks.onDoubleTap(data)\n entry.lastTapTime = 0\n if (data.isPropagationStopped()) {\n break\n }\n } else {\n entry.lastTapTime = now\n }\n }\n }\n\n // Fire onTouchOutside for entries that didn't get hit\n for (const entry of this.entries) {\n if (!hitEntries.includes(entry) && entry.callbacks.onTouchOutside) {\n const data = this.createEventData(entry, x, y, 0, 0, undefined, false)\n entry.callbacks.onTouchOutside(data)\n }\n }\n\n if (activeEntry) {\n activeEntry.pointerDownTime = undefined\n activeEntry.longPressTriggered = false\n this.activeMoveEntry = null\n }\n }\n\n // -----------------------------------------------------------------------\n // Hit testing (z-order aware)\n // -----------------------------------------------------------------------\n\n private hitTest(x: number, y: number): GestureEntry[] {\n const hits: { entry: GestureEntry; surfaceZIndex: number }[] = []\n for (const entry of this.entries) {\n if (!entry.container.visible) continue\n if (!this.isContainerVisible(entry.container)) continue\n if (entry.container.destroyed) continue\n if (!this.containsPoint(entry, x, y)) continue\n const surfaceZIndex = this.getSurfaceZIndex(entry.container)\n hits.push({ entry, surfaceZIndex })\n }\n\n hits.sort((a, b) => {\n if (a.surfaceZIndex !== b.surfaceZIndex) {\n return b.surfaceZIndex - a.surfaceZIndex\n }\n return this.compareDisplayOrder(a.entry.container, b.entry.container)\n })\n\n return hits.map((h) => h.entry)\n }\n\n private getSurfaceZIndex(container: PIXI.Container): number {\n let current: PIXI.Container | null = container\n let zIndex = 0\n\n while (current) {\n const surfaceZIndex = (current as PIXI.Container & { __surfaceZIndex?: number })\n .__surfaceZIndex\n if (surfaceZIndex !== undefined) {\n zIndex = surfaceZIndex\n }\n current = current.parent\n }\n\n return zIndex\n }\n\n private compareDisplayOrder(a: PIXI.Container, b: PIXI.Container): number {\n if (a === b) return 0\n\n const aPath: PIXI.Container[] = []\n const bPath: PIXI.Container[] = []\n\n let currentA: PIXI.Container | null = a\n while (currentA) {\n aPath.push(currentA)\n currentA = currentA.parent\n }\n\n let currentB: PIXI.Container | null = b\n while (currentB) {\n bPath.push(currentB)\n currentB = currentB.parent\n }\n\n aPath.reverse()\n bPath.reverse()\n\n const sharedLength = Math.min(aPath.length, bPath.length)\n for (let i = 0; i < sharedLength; i++) {\n const aNode = aPath[i]\n const bNode = bPath[i]\n if (!aNode || !bNode) return 0\n if (aNode === bNode) continue\n\n const parent = aPath[i - 1]\n if (!parent) return 0\n\n return parent.getChildIndex(bNode) - parent.getChildIndex(aNode)\n }\n\n // If one path is a strict prefix of the other, the descendant renders above\n // the ancestor's own visuals and should win hit testing.\n return bPath.length - aPath.length\n }\n\n private isContainerVisible(container: PIXI.Container): boolean {\n let current: PIXI.Container | null = container\n while (current) {\n if (!current.visible || current.alpha <= 0) return false\n current = current.parent\n }\n return true\n }\n\n private getWheelGlobalPoint(event: WheelEvent): PIXI.Point | null {\n const rect = this.app.canvas.getBoundingClientRect()\n if (rect.width <= 0 || rect.height <= 0) {\n return null\n }\n\n const x = ((event.clientX - rect.left) / rect.width) * this.app.screen.width\n const y = ((event.clientY - rect.top) / rect.height) * this.app.screen.height\n\n return new PIXI.Point(x, y)\n }\n\n // -----------------------------------------------------------------------\n // Event data factory\n // -----------------------------------------------------------------------\n\n private createEventData(\n entry: GestureEntry,\n globalX: number,\n globalY: number,\n dx: number,\n dy: number,\n state: TouchMoveState | undefined,\n isInside: boolean\n ): GestureEventData<PIXI.FederatedPointerEvent> {\n const metrics = this.resolveEntryMetrics(entry, globalX, globalY)\n\n let stopped = false\n\n return {\n pointer: {} as PIXI.FederatedPointerEvent,\n localX: metrics.localX,\n localY: metrics.localY,\n dx,\n dy,\n width: metrics.width,\n height: metrics.height,\n isInside,\n state: state as TouchMoveState,\n stopPropagation() {\n stopped = true\n },\n isPropagationStopped() {\n return stopped\n },\n }\n }\n\n private createWheelEventData(\n entry: GestureEntry,\n globalX: number,\n globalY: number,\n event: WheelEvent\n ): WheelEventData<PIXI.FederatedPointerEvent, WheelEvent> & { __defaultPrevented: boolean } {\n const metrics = this.resolveEntryMetrics(entry, globalX, globalY)\n\n let stopped = false\n let defaultPrevented = false\n\n return {\n pointer: {} as PIXI.FederatedPointerEvent,\n localX: metrics.localX,\n localY: metrics.localY,\n deltaX: event.deltaX,\n deltaY: event.deltaY,\n deltaZ: event.deltaZ,\n deltaMode: event.deltaMode,\n width: metrics.width,\n height: metrics.height,\n originalEvent: event,\n stopPropagation() {\n stopped = true\n },\n isPropagationStopped() {\n return stopped\n },\n preventDefault() {\n defaultPrevented = true\n },\n get __defaultPrevented() {\n return defaultPrevented\n },\n }\n }\n}\n\n// ---------------------------------------------------------------------------\n// Singleton per PIXI Application\n// ---------------------------------------------------------------------------\n\nconst managers = new WeakMap<PIXI.Application, PixiGestureManager>()\n\nexport function getPixiGestureManager(app: PIXI.Application): PixiGestureManager {\n let mgr = managers.get(app)\n if (!mgr) {\n mgr = new PixiGestureManager(app)\n managers.set(app, mgr)\n }\n return mgr\n}\n","/**\n * Gesture applier — registers/unregisters Pixi containers with the gesture manager.\n *\n * Called during patch() when gesture props change.\n */\nimport type { GestureProps } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { getPixiGestureManager } from '../pixi-gesture-manager'\n\nfunction resolveLocalHitArea(container: PIXI.Container): PIXI.Rectangle | null {\n const layoutBox = container as PIXI.Container & {\n __layoutBox?: { width: number; height: number }\n }\n\n const width = layoutBox.__layoutBox?.width ?? 0\n const height = layoutBox.__layoutBox?.height ?? 0\n if (width > 0 && height > 0) {\n return new PIXI.Rectangle(0, 0, width, height)\n }\n\n const bounds = container.getLocalBounds()\n if (bounds.width <= 0 || bounds.height <= 0) {\n return null\n }\n\n return new PIXI.Rectangle(bounds.x, bounds.y, bounds.width, bounds.height)\n}\n\n/**\n * Apply gesture props to a Pixi container.\n * Registers, updates, or unregisters the container with the PixiGestureManager.\n * @param container - Target PIXI container\n * @param app - PIXI Application (needed to get the gesture manager singleton)\n * @param props - Gesture props from the component\n */\nexport function applyGestureProps(\n container: PIXI.Container,\n app: PIXI.Application,\n props: Partial<GestureProps<PIXI.FederatedPointerEvent>>\n): void {\n const manager = getPixiGestureManager(app)\n const hasGestures = !!(\n props.onTouch ||\n props.onTouchMove ||\n props.onDoubleTap ||\n props.onLongPress ||\n props.onTouchOutside ||\n props.onWheel\n )\n const enabled = props.enableGestures !== false\n\n if (hasGestures && enabled) {\n const hitArea = resolveLocalHitArea(container)\n container.eventMode = 'static'\n if (hitArea) {\n container.hitArea = hitArea\n }\n if (manager.hasContainer(container)) {\n manager.updateContainer(container, props as GestureProps<PIXI.FederatedPointerEvent>)\n } else {\n manager.registerContainer(container, props as GestureProps<PIXI.FederatedPointerEvent>)\n }\n } else {\n container.eventMode = 'passive'\n container.hitArea = null\n manager.unregisterContainer(container)\n }\n}\n\n/**\n * Update gesture hit area after layout recalculation.\n * @param container - Target PIXI container\n * @param app - PIXI Application\n */\nexport function updateGestureHitArea(container: PIXI.Container, app: PIXI.Application): void {\n const hitArea = resolveLocalHitArea(container)\n if (hitArea) {\n container.hitArea = hitArea\n }\n const manager = getPixiGestureManager(app)\n manager.updateHitArea(container)\n}\n","/**\n * Tooltip applier for Pixi containers.\n * Keeps the tooltip API portable while rendering natively in Pixi.\n */\nimport type { TooltipAnimation, TooltipCallback, TooltipConfig } from '@number10/jsx-core'\nimport { themeRegistry } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport type { TooltipTheme } from '@number10/jsx-components'\n\ntype TooltipState = {\n tooltip: PIXI.Container | null\n currentConfig: TooltipConfig | null\n callback: TooltipCallback | undefined\n showTimer: ReturnType<typeof setTimeout> | null\n hideTimer: ReturnType<typeof setTimeout> | null\n autoDismissTimer: ReturnType<typeof setTimeout> | null\n cancelAnimation: (() => void) | null\n cancelPulse: (() => void) | null\n hovered: boolean\n onStagePointerMove: ((event: PIXI.FederatedPointerEvent) => void) | null\n onCanvasLeave: (() => void) | null\n}\n\nconst tooltipStates = new Map<PIXI.Container, TooltipState>()\n\nfunction getTooltipTheme(): TooltipTheme {\n return (themeRegistry.getComponentTheme('Tooltip') as TooltipTheme | undefined) ?? {}\n}\n\nfunction getState(container: PIXI.Container): TooltipState {\n let state = tooltipStates.get(container)\n if (!state) {\n state = {\n tooltip: null,\n currentConfig: null,\n callback: undefined,\n showTimer: null,\n hideTimer: null,\n autoDismissTimer: null,\n cancelAnimation: null,\n cancelPulse: null,\n hovered: false,\n onStagePointerMove: null,\n onCanvasLeave: null,\n }\n tooltipStates.set(container, state)\n }\n return state\n}\n\nfunction clearTimers(state: TooltipState): void {\n if (state.showTimer) clearTimeout(state.showTimer)\n if (state.hideTimer) clearTimeout(state.hideTimer)\n if (state.autoDismissTimer) clearTimeout(state.autoDismissTimer)\n state.showTimer = null\n state.hideTimer = null\n state.autoDismissTimer = null\n}\n\nfunction stopAnimation(state: TooltipState): void {\n state.cancelAnimation?.()\n state.cancelAnimation = null\n state.cancelPulse?.()\n state.cancelPulse = null\n}\n\nfunction destroyTooltip(state: TooltipState): void {\n stopAnimation(state)\n if (state.tooltip?.parent) {\n state.tooltip.parent.removeChild(state.tooltip)\n }\n state.tooltip?.destroy({ children: true })\n state.tooltip = null\n}\n\nfunction resolveLocalHitArea(container: PIXI.Container): PIXI.Rectangle | null {\n const layoutBox = container as PIXI.Container & {\n __layoutBox?: { width: number; height: number }\n }\n\n const width = layoutBox.__layoutBox?.width ?? 0\n const height = layoutBox.__layoutBox?.height ?? 0\n if (width > 0 && height > 0) {\n return new PIXI.Rectangle(0, 0, width, height)\n }\n\n const bounds = container.getLocalBounds()\n if (bounds.width <= 0 || bounds.height <= 0) {\n return null\n }\n\n return new PIXI.Rectangle(bounds.x, bounds.y, bounds.width, bounds.height)\n}\n\nfunction getLayoutBox(container: PIXI.Container): { width: number; height: number } | null {\n const layoutBox = container as PIXI.Container & {\n __layoutBox?: { width: number; height: number }\n }\n\n const width = layoutBox.__layoutBox?.width ?? 0\n const height = layoutBox.__layoutBox?.height ?? 0\n\n if (width <= 0 || height <= 0) {\n return null\n }\n\n return { width, height }\n}\n\nfunction isPointerInsideContainer(\n container: PIXI.Container,\n globalX: number,\n globalY: number\n): boolean {\n const layoutBox = getLayoutBox(container)\n if (layoutBox) {\n const localPoint = container.toLocal(new PIXI.Point(globalX, globalY))\n return (\n localPoint.x >= 0 &&\n localPoint.x <= layoutBox.width &&\n localPoint.y >= 0 &&\n localPoint.y <= layoutBox.height\n )\n }\n\n const bounds = container.getBounds()\n return (\n bounds.width > 0 &&\n bounds.height > 0 &&\n globalX >= bounds.x &&\n globalX <= bounds.x + bounds.width &&\n globalY >= bounds.y &&\n globalY <= bounds.y + bounds.height\n )\n}\n\nexport function updateTooltipHitArea(container: PIXI.Container): void {\n const state = tooltipStates.get(container)\n if (!state) {\n return\n }\n container.hitArea = resolveLocalHitArea(container)\n}\n\nfunction parseColor(\n value: string | number | undefined,\n fallback: number\n): { color: number; alpha: number } {\n if (typeof value === 'number') {\n return { color: value, alpha: 1 }\n }\n\n if (typeof value !== 'string' || !value.startsWith('#')) {\n return { color: fallback, alpha: 1 }\n }\n\n const hex = value.slice(1)\n if (hex.length === 8) {\n return {\n color: parseInt(hex.slice(0, 6), 16),\n alpha: parseInt(hex.slice(6, 8), 16) / 255,\n }\n }\n if (hex.length === 6) {\n return { color: parseInt(hex, 16), alpha: 1 }\n }\n return { color: fallback, alpha: 1 }\n}\n\nfunction getPadding(value: number | { x?: number; y?: number } | undefined): {\n x: number\n y: number\n} {\n if (typeof value === 'number') {\n return { x: value, y: value }\n }\n return {\n x: value?.x ?? 8,\n y: value?.y ?? 4,\n }\n}\n\nfunction calculateTooltipPosition(\n app: PIXI.Application,\n targetBounds: PIXI.Bounds,\n config: TooltipConfig,\n tooltipWidth: number,\n tooltipHeight: number\n): { x: number; y: number } {\n const theme = getTooltipTheme()\n const position = config.position ?? theme.position ?? 'top'\n const offset = config.offset ?? theme.offset ?? 8\n const viewportWidth = app.screen.width\n const viewportHeight = app.screen.height\n\n let x = 0\n let y = 0\n\n switch (position) {\n case 'top':\n x = targetBounds.x + targetBounds.width / 2 - tooltipWidth / 2\n y = targetBounds.y - tooltipHeight - offset\n break\n case 'bottom':\n x = targetBounds.x + targetBounds.width / 2 - tooltipWidth / 2\n y = targetBounds.y + targetBounds.height + offset\n break\n case 'left':\n x = targetBounds.x - tooltipWidth - offset\n y = targetBounds.y + targetBounds.height / 2 - tooltipHeight / 2\n break\n case 'right':\n x = targetBounds.x + targetBounds.width + offset\n y = targetBounds.y + targetBounds.height / 2 - tooltipHeight / 2\n break\n }\n\n return {\n x: Math.max(8, Math.min(x, viewportWidth - tooltipWidth - 8)),\n y: Math.max(8, Math.min(y, viewportHeight - tooltipHeight - 8)),\n }\n}\n\nfunction animateTooltip(\n state: TooltipState,\n tooltip: PIXI.Container,\n from: { alpha: number; x: number; y: number },\n to: { alpha: number; x: number; y: number },\n duration: number,\n onComplete?: () => void\n): void {\n stopAnimation(state)\n\n if (duration <= 0) {\n tooltip.alpha = to.alpha\n tooltip.position.set(to.x, to.y)\n onComplete?.()\n return\n }\n\n tooltip.alpha = from.alpha\n tooltip.position.set(from.x, from.y)\n\n let cancelled = false\n const start = performance.now()\n\n const tick = (now: number) => {\n if (cancelled) return\n const t = Math.min(1, (now - start) / duration)\n const eased = 1 - Math.pow(1 - t, 3)\n\n tooltip.alpha = from.alpha + (to.alpha - from.alpha) * eased\n tooltip.x = from.x + (to.x - from.x) * eased\n tooltip.y = from.y + (to.y - from.y) * eased\n\n if (t < 1) {\n requestAnimationFrame(tick)\n return\n }\n\n state.cancelAnimation = null\n onComplete?.()\n }\n\n state.cancelAnimation = () => {\n cancelled = true\n }\n\n requestAnimationFrame(tick)\n}\n\nfunction startPulseAnimation(\n state: TooltipState,\n tooltip: PIXI.Container,\n pulseScale: [number, number]\n): void {\n const ticker = PIXI.Ticker.shared\n const [from, to] = pulseScale\n let time = 0\n\n const update = () => {\n time += ticker.deltaMS\n const phase = (Math.sin((time / 600) * Math.PI * 2) + 1) / 2\n const scale = from + (to - from) * phase\n tooltip.scale.set(scale, scale)\n }\n\n ticker.add(update)\n state.cancelPulse = () => {\n ticker.remove(update)\n tooltip.scale.set(1, 1)\n }\n}\n\nfunction buildTooltipContainer(\n app: PIXI.Application,\n target: PIXI.Container,\n config: TooltipConfig\n): PIXI.Container {\n const theme = getTooltipTheme()\n const style = theme.textStyle ?? {}\n const padding = getPadding(style.padding)\n const fill = (style.color as string | number | undefined) ?? '#ffffff'\n const fontSize =\n typeof style.fontSize === 'number'\n ? style.fontSize\n : parseFloat(`${style.fontSize ?? 14}`) || 14\n const fontFamily = style.fontFamily ?? 'Arial'\n const fontStyle = style.fontStyle?.includes('italic') ? 'italic' : 'normal'\n const fontWeight = style.fontWeight ?? (style.fontStyle?.includes('bold') ? 'bold' : 'normal')\n const textStyleOptions: Record<string, unknown> = {\n fill,\n fontSize,\n fontFamily,\n fontStyle,\n fontWeight,\n align: style.align,\n lineHeight: style.lineHeight,\n }\n\n const text = new PIXI.Text({\n text: config.content,\n style: new PIXI.TextStyle(textStyleOptions as never),\n })\n text.eventMode = 'none'\n\n const bounds = text.getLocalBounds()\n const width = Math.ceil(bounds.width + padding.x * 2)\n const height = Math.ceil(bounds.height + padding.y * 2)\n const { color, alpha } = parseColor(style.backgroundColor, 0x000000)\n const cornerRadius = theme.cornerRadius ?? 6\n\n const background = new PIXI.Graphics()\n if (cornerRadius > 0) {\n background.roundRect(0, 0, width, height, cornerRadius)\n } else {\n background.rect(0, 0, width, height)\n }\n background.fill({ color, alpha })\n background.eventMode = 'none'\n\n text.x = padding.x\n text.y = padding.y\n\n const tooltip = new PIXI.Container()\n tooltip.eventMode = 'none'\n tooltip.zIndex = 10000\n tooltip.sortableChildren = true\n tooltip.addChild(background, text)\n\n const pos = calculateTooltipPosition(app, target.getBounds(), config, width, height)\n tooltip.position.set(pos.x, pos.y)\n return tooltip\n}\n\nfunction showTooltip(\n app: PIXI.Application,\n container: PIXI.Container,\n state: TooltipState,\n config: TooltipConfig\n): void {\n destroyTooltip(state)\n\n const tooltip = buildTooltipContainer(app, container, config)\n app.stage.sortableChildren = true\n app.stage.addChild(tooltip)\n state.tooltip = tooltip\n state.currentConfig = config\n\n const theme = getTooltipTheme()\n const animation: TooltipAnimation = {\n ...(theme.animation ?? {}),\n ...(config.animation ?? {}),\n }\n const fadeIn = animation.fadeIn ?? 200\n const move = animation.move ?? { dx: 0, dy: 0 }\n\n animateTooltip(\n state,\n tooltip,\n { alpha: 0, x: tooltip.x - (move.dx ?? 0), y: tooltip.y - (move.dy ?? 0) },\n { alpha: 1, x: tooltip.x, y: tooltip.y },\n fadeIn\n )\n\n if (animation.pulse) {\n startPulseAnimation(state, tooltip, animation.pulseScale ?? [0.75, 1.25])\n }\n\n if (config.autoDismiss && config.autoDismiss > 0) {\n state.autoDismissTimer = setTimeout(() => hideTooltip(state), config.autoDismiss)\n }\n}\n\nfunction handlePointerEnter(\n app: PIXI.Application,\n container: PIXI.Container,\n state: TooltipState\n): void {\n clearTimers(state)\n const result = state.callback?.()\n if (!result) {\n destroyTooltip(state)\n state.currentConfig = null\n return\n }\n\n const config = typeof result === 'string' ? { content: result } : result\n if (config.disabled) {\n destroyTooltip(state)\n state.currentConfig = null\n return\n }\n\n state.currentConfig = config\n const delay = config.showDelay ?? getTooltipTheme().showDelay ?? 500\n state.showTimer = setTimeout(() => {\n state.showTimer = null\n showTooltip(app, container, state, config)\n }, delay)\n}\n\nfunction hideTooltip(state: TooltipState): void {\n if (!state.tooltip) {\n return\n }\n\n const tooltip = state.tooltip\n const theme = getTooltipTheme()\n const animation: TooltipAnimation = {\n ...(theme.animation ?? {}),\n ...(state.currentConfig?.animation ?? {}),\n }\n const fadeOut = animation.fadeOut ?? 160\n\n animateTooltip(\n state,\n tooltip,\n { alpha: tooltip.alpha, x: tooltip.x, y: tooltip.y },\n { alpha: 0, x: tooltip.x, y: tooltip.y },\n fadeOut,\n () => {\n destroyTooltip(state)\n state.currentConfig = null\n }\n )\n}\n\nfunction handlePointerLeave(state: TooltipState): void {\n if (!state.currentConfig && !state.tooltip) {\n return\n }\n\n if (state.showTimer) {\n clearTimeout(state.showTimer)\n state.showTimer = null\n }\n\n const delay = state.currentConfig?.hideDelay ?? getTooltipTheme().hideDelay ?? 0\n if (delay > 0) {\n state.hideTimer = setTimeout(() => {\n state.hideTimer = null\n hideTooltip(state)\n }, delay)\n } else {\n hideTooltip(state)\n }\n}\n\nexport function cleanupTooltipProps(container: PIXI.Container): void {\n const state = tooltipStates.get(container)\n if (!state) {\n return\n }\n\n const surfaceContext = (\n container as PIXI.Container & {\n __surfaceContext?: { raw?: unknown }\n }\n ).__surfaceContext\n const raw = surfaceContext?.raw\n\n clearTimers(state)\n stopAnimation(state)\n state.hovered = false\n\n if (raw instanceof PIXI.Application && state.onStagePointerMove) {\n raw.stage.off('pointermove', state.onStagePointerMove)\n }\n if (state.onCanvasLeave) {\n if (raw instanceof PIXI.Application) {\n raw.canvas.removeEventListener('mouseleave', state.onCanvasLeave)\n }\n }\n\n destroyTooltip(state)\n tooltipStates.delete(container)\n}\n\nexport function applyTooltipProps(\n container: PIXI.Container,\n app: PIXI.Application,\n callback: TooltipCallback | undefined\n): void {\n if (!callback) {\n cleanupTooltipProps(container)\n return\n }\n\n const state = getState(container)\n state.callback = callback\n clearTimers(state)\n state.hovered = false\n\n if (!state.onStagePointerMove) {\n state.onStagePointerMove = (event: PIXI.FederatedPointerEvent) => {\n if (event.pointerType !== 'mouse') {\n if (state.hovered) {\n state.hovered = false\n handlePointerLeave(state)\n }\n return\n }\n\n const inside = isPointerInsideContainer(container, event.global.x, event.global.y)\n if (inside === state.hovered) {\n return\n }\n\n state.hovered = inside\n if (inside) {\n handlePointerEnter(app, container, state)\n } else {\n handlePointerLeave(state)\n }\n }\n app.stage.on('pointermove', state.onStagePointerMove)\n }\n\n if (!state.onCanvasLeave) {\n state.onCanvasLeave = () => {\n if (!state.hovered && !state.showTimer && !state.tooltip) {\n return\n }\n state.hovered = false\n handlePointerLeave(state)\n }\n app.canvas.addEventListener('mouseleave', state.onCanvasLeave)\n }\n\n app.stage.eventMode = 'static'\n app.stage.hitArea = app.screen\n container.eventMode = 'static'\n container.hitArea = resolveLocalHitArea(container)\n}\n","/**\n * PixiJS SurfaceAdapter — minimal root/portal lifecycle.\n *\n * Implements the SurfaceAdapter contract using PixiJS Application and Container.\n * Each root surface wraps a PIXI.Container as the mount target.\n *\n * @migration(audit:surface-access) Phase 7C — Pixi durchstich ✅\n */\nimport type {\n AtlasFrameInfo,\n CreateRootSurfaceOptions,\n DesignTokens,\n FrameRect,\n HostContext,\n RootSurface,\n Size,\n SurfaceAdapter,\n SurfaceContext,\n SurfaceTarget,\n TextureResolver,\n UpdateRootSurfaceOptions,\n VDOMOperations,\n} from '@number10/jsx-core'\nimport { createDesignTokens, getPresetWithMode } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { collectPixiSnapshot } from './pixi-debug-snapshot'\nimport { getPixiGestureManager } from './pixi-gesture-manager'\n\n// ---------------------------------------------------------------------------\n// Internal root surface implementation\n// ---------------------------------------------------------------------------\n\ninterface PixiRootSurface extends RootSurface {\n __pixiContainer: PIXI.Container\n}\n\nlet nextId = 1\n\nfunction createPixiScheduler() {\n // Shared ticker — in production this would be per-surface\n const ticker = PIXI.Ticker.shared\n\n return {\n requestAnimationFrame(callback: (dt: number) => void) {\n const fn = (ticker: PIXI.Ticker) => {\n callback(ticker.deltaMS)\n ticker.remove(fn)\n }\n ticker.add(fn)\n return { cancel: () => ticker.remove(fn) }\n },\n onFrame(callback: (dt: number) => void) {\n const fn = (ticker: PIXI.Ticker) => callback(ticker.deltaMS)\n ticker.add(fn)\n return { cancel: () => ticker.remove(fn) }\n },\n setTimeout(callback: () => void, delay: number) {\n const id = window.setTimeout(callback, delay)\n return { cancel: () => window.clearTimeout(id) }\n },\n setInterval(callback: () => void, interval: number) {\n const id = window.setInterval(callback, interval)\n return { cancel: () => window.clearInterval(id) }\n },\n }\n}\n\n// ---------------------------------------------------------------------------\n// SVG preprocessing — ensures tint works by converting dark fills to white\n// ---------------------------------------------------------------------------\n\n/**\n * Replaces dark fills/strokes in SVG with white so that Pixi's tint\n * multiplication produces the correct color (white × tint = tint).\n * Mirrors the Phaser implementation in packages/phaser/src/utils/svg-texture.ts.\n */\nfunction preprocessSvgForTinting(svg: string): string {\n return svg\n .replace(/fill=\"currentColor\"/gi, 'fill=\"#FFFFFF\"')\n .replace(/fill='currentColor'/gi, \"fill='#FFFFFF'\")\n .replace(/fill:\\s*currentColor/gi, 'fill: #FFFFFF')\n .replace(/stroke=\"currentColor\"/gi, 'stroke=\"#FFFFFF\"')\n .replace(/stroke='currentColor'/gi, \"stroke='#FFFFFF'\")\n .replace(/stroke:\\s*currentColor/gi, 'stroke: #FFFFFF')\n .replace(/fill=\"#000000\"/gi, 'fill=\"#FFFFFF\"')\n .replace(/fill=\"#000\"/gi, 'fill=\"#FFFFFF\"')\n .replace(/fill='#000000'/gi, \"fill='#FFFFFF'\")\n .replace(/fill='#000'/gi, \"fill='#FFFFFF'\")\n .replace(/stroke=\"#000000\"/gi, 'stroke=\"#FFFFFF\"')\n .replace(/stroke=\"#000\"/gi, 'stroke=\"#FFFFFF\"')\n .replace(/stroke='#000000'/gi, \"stroke='#FFFFFF'\")\n .replace(/stroke='#000'/gi, \"stroke='#FFFFFF'\")\n}\n\n// ---------------------------------------------------------------------------\n// PixiTextureResolver — TextureResolver via PIXI.Assets\n// ---------------------------------------------------------------------------\n\n/** Shared key→texture map so applyImageSpriteProps can resolve user keys. */\nconst pixiTextureCache = new Map<string, PIXI.Texture>()\nconst pixiAtlasFrameCache = new Map<string, Map<string, PixiAtlasFrameData>>()\nconst pixiDerivedTextureCache = new Map<string, PIXI.Texture>()\n\n/**\n * Returns the total count of user-loaded textures in the Pixi cache.\n * Used by {@link collectPixiSnapshot} for the `textureCount` metric.\n */\nexport function getPixiTextureCount(): number {\n return pixiTextureCache.size\n}\n\nexport interface PixiAtlasFrameData {\n rect: FrameRect\n rotated: boolean\n trimmed: boolean\n sourceSize?: Size | undefined\n spriteSourceRect?: { x: number; y: number; w: number; h: number } | undefined\n}\n\ninterface AtlasFrameLike {\n filename?: unknown\n frame?: { x?: unknown; y?: unknown; w?: unknown; h?: unknown } | undefined\n rotated?: unknown\n trimmed?: unknown\n sourceSize?: { w?: unknown; h?: unknown } | undefined\n spriteSourceSize?: { x?: unknown; y?: unknown; w?: unknown; h?: unknown } | undefined\n}\n\ninterface AtlasObjectLike {\n textures?: Array<{ frames?: unknown }> | undefined\n frames?: unknown\n}\n\nfunction toFiniteNumber(value: unknown): number | undefined {\n return typeof value === 'number' && Number.isFinite(value) ? value : undefined\n}\n\nfunction parseAtlasFrameLike(candidate: AtlasFrameLike): PixiAtlasFrameData | undefined {\n const filename = typeof candidate.filename === 'string' ? candidate.filename : undefined\n const x = toFiniteNumber(candidate.frame?.x)\n const y = toFiniteNumber(candidate.frame?.y)\n const width = toFiniteNumber(candidate.frame?.w)\n const height = toFiniteNumber(candidate.frame?.h)\n\n if (\n !filename ||\n x === undefined ||\n y === undefined ||\n width === undefined ||\n height === undefined\n ) {\n return undefined\n }\n\n const sourceWidth = toFiniteNumber(candidate.sourceSize?.w)\n const sourceHeight = toFiniteNumber(candidate.sourceSize?.h)\n const spriteX = toFiniteNumber(candidate.spriteSourceSize?.x)\n const spriteY = toFiniteNumber(candidate.spriteSourceSize?.y)\n const spriteW = toFiniteNumber(candidate.spriteSourceSize?.w)\n const spriteH = toFiniteNumber(candidate.spriteSourceSize?.h)\n\n return {\n rect: { x, y, width, height },\n rotated: candidate.rotated === true,\n trimmed: candidate.trimmed === true,\n sourceSize:\n sourceWidth !== undefined && sourceHeight !== undefined\n ? { width: sourceWidth, height: sourceHeight }\n : undefined,\n spriteSourceRect:\n spriteX !== undefined &&\n spriteY !== undefined &&\n spriteW !== undefined &&\n spriteH !== undefined\n ? { x: spriteX, y: spriteY, w: spriteW, h: spriteH }\n : undefined,\n }\n}\n\nexport function parsePixiAtlasFrames(data: unknown): Map<string, PixiAtlasFrameData> {\n const frames = new Map<string, PixiAtlasFrameData>()\n const atlas = data as AtlasObjectLike\n\n const addFrame = (name: string, frame: PixiAtlasFrameData) => {\n frames.set(name, frame)\n }\n\n const parseFrameArray = (entries: unknown) => {\n if (!Array.isArray(entries)) return\n for (const entry of entries) {\n const parsed = parseAtlasFrameLike(entry as AtlasFrameLike)\n const name =\n typeof (entry as AtlasFrameLike).filename === 'string'\n ? ((entry as AtlasFrameLike).filename as string)\n : undefined\n if (parsed && name) {\n addFrame(name, parsed)\n }\n }\n }\n\n const parseFrameObject = (entries: unknown) => {\n if (!entries || typeof entries !== 'object' || Array.isArray(entries)) return\n for (const [name, value] of Object.entries(entries)) {\n const frameValue = value as AtlasFrameLike\n const parsed = parseAtlasFrameLike({ ...frameValue, filename: name })\n if (parsed) {\n addFrame(name, parsed)\n }\n }\n }\n\n parseFrameObject(atlas.frames)\n\n if (Array.isArray(atlas.textures)) {\n for (const textureEntry of atlas.textures) {\n parseFrameArray(textureEntry?.frames)\n parseFrameObject(textureEntry?.frames)\n }\n }\n\n return frames\n}\n\nexport function resolvePixiSourceRegion(\n baseRect: FrameRect,\n sourceRect: { x: number; y: number; w: number; h: number }\n): FrameRect {\n const offsetX = Math.max(0, sourceRect.x)\n const offsetY = Math.max(0, sourceRect.y)\n\n return {\n x: baseRect.x + offsetX,\n y: baseRect.y + offsetY,\n width: Math.max(0, Math.min(sourceRect.w, baseRect.width - offsetX)),\n height: Math.max(0, Math.min(sourceRect.h, baseRect.height - offsetY)),\n }\n}\n\nfunction createPixiSubTexture(\n baseTexture: PIXI.Texture,\n frame: FrameRect,\n sourceSize?: Size,\n trimRect?: { x: number; y: number; w: number; h: number }\n): PIXI.Texture {\n const frameRect = new PIXI.Rectangle(frame.x, frame.y, frame.width, frame.height)\n const origRect = new PIXI.Rectangle(\n 0,\n 0,\n sourceSize?.width ?? frame.width,\n sourceSize?.height ?? frame.height\n )\n const trim = trimRect\n ? new PIXI.Rectangle(trimRect.x, trimRect.y, trimRect.w, trimRect.h)\n : undefined\n\n const textureOptions: ConstructorParameters<typeof PIXI.Texture>[0] = {\n source: baseTexture.source,\n frame: frameRect,\n orig: origRect,\n }\n\n if (trim) {\n textureOptions.trim = trim\n }\n\n return new PIXI.Texture(textureOptions)\n}\n\nexport function resolvePixiTexture(\n key: string,\n frame?: string | number,\n sourceRect?: { x: number; y: number; w: number; h: number }\n): PIXI.Texture | undefined {\n const baseTexture = pixiTextureCache.get(key)\n if (!baseTexture) return undefined\n\n const frameName = frame !== undefined ? String(frame) : undefined\n if (frameName === undefined && sourceRect === undefined) {\n return baseTexture\n }\n\n const atlasFrame = frameName ? pixiAtlasFrameCache.get(key)?.get(frameName) : undefined\n if (frameName && !atlasFrame) {\n return undefined\n }\n if (atlasFrame?.rotated) {\n return undefined\n }\n\n if (!atlasFrame && sourceRect === undefined) {\n return baseTexture\n }\n\n if (!sourceRect) {\n const cacheKey = `${key}::frame:${frameName}`\n const cached = pixiDerivedTextureCache.get(cacheKey)\n if (cached) return cached\n\n const derived = createPixiSubTexture(\n baseTexture,\n atlasFrame!.rect,\n atlasFrame!.sourceSize,\n atlasFrame!.trimmed ? atlasFrame!.spriteSourceRect : undefined\n )\n pixiDerivedTextureCache.set(cacheKey, derived)\n return derived\n }\n\n const baseRect = atlasFrame?.rect ?? {\n x: 0,\n y: 0,\n width: baseTexture.width,\n height: baseTexture.height,\n }\n\n const region = resolvePixiSourceRegion(baseRect, sourceRect)\n\n const cacheKey = `${key}::frame:${frameName ?? ''}::crop:${region.x},${region.y},${region.width},${region.height}`\n const cached = pixiDerivedTextureCache.get(cacheKey)\n if (cached) return cached\n\n const derived = createPixiSubTexture(baseTexture, region)\n pixiDerivedTextureCache.set(cacheKey, derived)\n return derived\n}\n\nclass PixiTextureResolver implements TextureResolver {\n async load(key: string, url: string): Promise<void> {\n if (pixiTextureCache.has(key)) return\n const texture = (await PIXI.Assets.load(url)) as PIXI.Texture\n pixiTextureCache.set(key, texture)\n }\n\n async loadAtlas(key: string, imageUrl: string, dataUrl: string): Promise<void> {\n const needsTexture = !pixiTextureCache.has(key)\n const needsFrames = !pixiAtlasFrameCache.has(key)\n if (!needsTexture && !needsFrames) return\n\n const [texture, atlasData] = await Promise.all([\n needsTexture\n ? (PIXI.Assets.load(imageUrl) as Promise<PIXI.Texture>).then((loaded) => {\n pixiTextureCache.set(key, loaded)\n return loaded\n })\n : Promise.resolve(pixiTextureCache.get(key)!),\n needsFrames\n ? fetch(dataUrl).then(async (response) => {\n if (!response.ok) {\n throw new Error(`Failed to load atlas data '${dataUrl}': ${response.status}`)\n }\n return response.json()\n })\n : Promise.resolve(undefined),\n ])\n\n if (needsTexture) {\n pixiTextureCache.set(key, texture)\n }\n if (needsFrames && atlasData !== undefined) {\n pixiAtlasFrameCache.set(key, parsePixiAtlasFrames(atlasData))\n }\n }\n\n async loadSVG(key: string, svg: string, width: number, height: number): Promise<void> {\n if (pixiTextureCache.has(key)) return\n // Preprocess SVG: replace dark/currentColor fills with white so Pixi tint works.\n // Tint multiplies texture color → white × tint = tint, black × tint = black.\n const preprocessed = preprocessSvgForTinting(svg)\n\n const canvas = document.createElement('canvas')\n canvas.width = width\n canvas.height = height\n const ctx = canvas.getContext('2d')\n if (!ctx) throw new Error('Failed to get 2d context for SVG texture')\n\n const img = new Image()\n const blob = new Blob([preprocessed], { type: 'image/svg+xml' })\n const url = URL.createObjectURL(blob)\n\n await new Promise<void>((resolve, reject) => {\n img.onload = () => {\n ctx.drawImage(img, 0, 0, width, height)\n URL.revokeObjectURL(url)\n resolve()\n }\n img.onerror = () => {\n URL.revokeObjectURL(url)\n reject(new Error(`Failed to load SVG for key '${key}'`))\n }\n img.src = url\n })\n\n const texture = PIXI.Texture.from(canvas)\n pixiTextureCache.set(key, texture)\n }\n\n isLoaded(key: string): boolean {\n return pixiTextureCache.has(key)\n }\n\n getFrameNames(key: string): string[] {\n return Array.from(pixiAtlasFrameCache.get(key)?.keys() ?? [])\n }\n\n getFrameRect(key: string, frame: string): FrameRect | undefined {\n return pixiAtlasFrameCache.get(key)?.get(frame)?.rect\n }\n\n getFrameInfo(key: string, frame: string): AtlasFrameInfo | undefined {\n const frameInfo = pixiAtlasFrameCache.get(key)?.get(frame)\n if (!frameInfo) return undefined\n\n return {\n name: frame,\n rect: frameInfo.rect,\n rotated: frameInfo.rotated,\n trimmed: frameInfo.trimmed,\n sourceSize: frameInfo.sourceSize,\n spriteSourceRect: frameInfo.spriteSourceRect,\n }\n }\n\n /**\n * Returns the texture dimensions from the cache.\n * Falls back to 0×0 if the texture is not loaded.\n */\n getTextureSize(key: string): Size | undefined {\n const texture = pixiTextureCache.get(key)\n if (!texture) return undefined\n return { width: texture.width, height: texture.height }\n }\n}\n\n// Singleton — shared across all Pixi surfaces\nconst pixiTextureResolver = new PixiTextureResolver()\nexport { pixiTextureResolver }\n\n// ---------------------------------------------------------------------------\n// PixiSurfaceAdapter\n// ---------------------------------------------------------------------------\n\nexport class PixiSurfaceAdapter implements SurfaceAdapter {\n /** Map of surface id → root surface for lookup */\n private roots = new Map<string, PixiRootSurface>()\n\n /** Portal root container per application — high-depth container above normal UI */\n private portalRoots = new Map<PIXI.Application, PIXI.Container>()\n\n /** Renderer-bound VDOM operations — set by the runtime after construction */\n private vdom: VDOMOperations | undefined\n\n /**\n * Set the renderer's VDOM operations.\n * Called by the Pixi VDOM runtime after construction to avoid circular imports.\n */\n setVDOM(ops: VDOMOperations): void {\n this.vdom = ops\n }\n\n createRoot(options: CreateRootSurfaceOptions): RootSurface {\n const id = options.id ?? `pixi-root-${nextId++}`\n const kind = options.kind ?? 'root'\n const zIndex = options.zIndex ?? (kind === 'root' ? 0 : 100)\n\n if (kind === 'portal' && !options.parent) {\n throw new Error('Portal root surfaces require a parent RootSurface')\n }\n\n // Resolve target application\n let app: PIXI.Application | undefined\n if (kind === 'portal' && options.parent) {\n const parentApp = options.parent.context.raw as PIXI.Application | undefined\n app = options.target ? (options.target as PIXI.Application) : parentApp\n } else {\n app = options.target as PIXI.Application | undefined\n }\n\n const container = new PIXI.Container()\n container.zIndex = zIndex\n\n // Attach to parent/stage based on kind\n if (kind === 'root') {\n if (app?.stage) {\n app.stage.addChild(container)\n }\n } else {\n // Portal: add to portal root container (high-depth overlay layer)\n if (!app) {\n throw new Error('Pixi portal root surfaces require a target PIXI.Application')\n }\n const portalRoot = this.getOrCreatePortalRoot(app)\n portalRoot.addChild(container)\n }\n\n const viewport = {\n width: options.width,\n height: options.height,\n }\n\n const context: SurfaceContext = {\n viewport,\n scheduler: createPixiScheduler(),\n capabilities: new Set(['view', 'gesture', 'particles', 'nineslice']),\n themeTokens: getDefaultTokens() as unknown as Record<string, unknown>,\n raw: app,\n adapter: this,\n textureLoader: pixiTextureResolver,\n debugSnapshotCollector: () => collectPixiSnapshot(app) as Record<string, string | number>,\n ...(this.vdom ? { vdom: this.vdom } : {}),\n }\n\n // Store context on container for getSurfaceContext() lookup\n ;(container as { __surfaceContext?: SurfaceContext }).__surfaceContext = context\n\n const surface: PixiRootSurface = {\n id,\n kind,\n zIndex,\n context,\n root: container as unknown as HostContext as never,\n __pixiContainer: container,\n ...(options.parent ? { parent: options.parent } : {}),\n }\n\n const surfaceContext = { ...context, rootSurface: surface }\n ;(surface as { context: SurfaceContext }).context = surfaceContext\n\n // Mark z-order for sorting\n ;(container as unknown as { __surfaceZIndex?: number }).__surfaceZIndex = zIndex\n ;(container as { __surfaceContext?: SurfaceContext }).__surfaceContext = surfaceContext\n\n this.roots.set(id, surface)\n return surface\n }\n\n updateRoot(surface: RootSurface, options: UpdateRootSurfaceOptions): void {\n const pixiSurface = surface as PixiRootSurface\n if (options.width !== undefined || options.height !== undefined) {\n const vp = surface.context.viewport as { width: number; height: number }\n if (options.width !== undefined) vp.width = options.width\n if (options.height !== undefined) vp.height = options.height\n }\n if (options.zIndex !== undefined) {\n const s = surface as { zIndex: number }\n s.zIndex = options.zIndex\n pixiSurface.__pixiContainer.zIndex = options.zIndex\n ;(pixiSurface.__pixiContainer as unknown as { __surfaceZIndex?: number }).__surfaceZIndex =\n options.zIndex\n }\n }\n\n destroyRoot(surface: RootSurface): void {\n const pixiSurface = surface as PixiRootSurface\n if (surface.kind === 'portal') {\n this.syncPortalEventBlocking(surface, false)\n }\n pixiSurface.__pixiContainer.destroy({ children: true })\n this.roots.delete(surface.id)\n\n // Clean up portal root if no more portal surfaces for this app\n if (surface.kind === 'portal') {\n this.cleanupPortalRootIfEmpty(surface)\n }\n }\n\n isAlive(surface: RootSurface): boolean {\n const pixiSurface = surface as PixiRootSurface\n return !pixiSurface.__pixiContainer.destroyed\n }\n\n getRootByTarget(target: SurfaceTarget): RootSurface | undefined {\n const app = target as PIXI.Application\n for (const surface of this.roots.values()) {\n if (surface.context.raw === app && surface.kind === 'root') {\n return surface\n }\n }\n return undefined\n }\n\n syncPortalEventBlocking(surface: RootSurface, blockEvents: boolean): void {\n if (surface.kind !== 'portal') return\n\n const app = surface.context.raw as PIXI.Application | undefined\n const container = (surface as PixiRootSurface).__pixiContainer\n if (!app || !container || container.destroyed) return\n\n const gestureManager = getPixiGestureManager(app)\n if (!blockEvents) {\n container.eventMode = 'passive'\n container.hitArea = null\n gestureManager.unregisterContainer(container)\n return\n }\n\n const callbacks = {\n enableGestures: true,\n onTouch: (event: { stopPropagation(): void }) => {\n event.stopPropagation()\n },\n onTouchMove: (event: { stopPropagation(): void }) => {\n event.stopPropagation()\n },\n }\n\n const localBounds = container.getLocalBounds()\n container.eventMode = 'static'\n container.hitArea =\n localBounds.width > 0 && localBounds.height > 0\n ? new PIXI.Rectangle(localBounds.x, localBounds.y, localBounds.width, localBounds.height)\n : null\n\n if (gestureManager.hasContainer(container)) {\n gestureManager.updateContainer(container, callbacks)\n return\n }\n\n gestureManager.registerContainer(container, callbacks)\n }\n\n /**\n * Get or create the high-depth portal root container for an application.\n * This is the parent container for all portal overlays in that app.\n */\n private getOrCreatePortalRoot(app: PIXI.Application): PIXI.Container {\n let root = this.portalRoots.get(app)\n if (!root) {\n root = new PIXI.Container()\n root.zIndex = 999999\n ;(root as unknown as { __surfaceZIndex?: number }).__surfaceZIndex = 999999\n app.stage.addChild(root)\n this.portalRoots.set(app, root)\n }\n return root\n }\n\n /**\n * Clean up portal root container if no portal surfaces remain for its app.\n */\n private cleanupPortalRootIfEmpty(surface: RootSurface): void {\n const app = surface.context.raw as PIXI.Application | undefined\n if (!app) return\n const hasPortalSurfaces = Array.from(this.roots.values()).some(\n (s) => s.id !== surface.id && s.kind === 'portal' && s.context.raw === app\n )\n if (!hasPortalSurfaces) {\n const root = this.portalRoots.get(app)\n if (root) {\n root.destroy({ children: true })\n this.portalRoots.delete(app)\n }\n }\n }\n}\n\n// ---------------------------------------------------------------------------\n// Default tokens for Pixi surfaces\n// ---------------------------------------------------------------------------\n\nlet _defaultTokens: DesignTokens | undefined\n\n/**\n * Get default design tokens for Pixi surfaces.\n * Lazy-initialized with oceanBlue light preset.\n */\nfunction getDefaultTokens(): DesignTokens {\n if (!_defaultTokens) {\n const preset = getPresetWithMode('oceanBlue', 'light')\n _defaultTokens = createDesignTokens(preset)\n }\n return _defaultTokens\n}\n","/**\n * PixiJS debug snapshot hook — collects renderer-specific metrics\n * for the portable {@link DebugPanel} from @number10/jsx-components.\n *\n * ## Usage\n *\n * ```tsx\n * import { DebugPanel } from '@number10/jsx-components'\n * import { usePixiDebugSnapshot } from '@number10/jsx-pixi'\n *\n * function MyApp() {\n * const snapshot = usePixiDebugSnapshot(500)\n * return <DebugPanel snapshot={snapshot} metrics={['fps', 'frameMs']} />\n * }\n * ```\n *\n * @migration(audit:debug-panel-split) Phase 8 — Pixi counterpart to\n * usePhaserDebugSnapshot in @number10/jsx-phaser.\n */\nimport type { DebugSnapshot } from '@number10/jsx-components'\nimport { summarizeMap } from '@number10/jsx-components'\nimport { DevConfig, useEffect, useState } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { getPixiTextureCount } from './pixi-surface-adapter'\n\ninterface PixiMountStats {\n totalMounts: number\n byType: Map<string, number>\n byParent: Map<unknown, number>\n byKey: Map<string, number>\n}\n\nconst EMPTY_MOUNT_STATS: PixiMountStats = {\n totalMounts: 0,\n byType: new Map(),\n byParent: new Map(),\n byKey: new Map(),\n}\n\nlet getPixiMountStats: () => PixiMountStats = () => EMPTY_MOUNT_STATS\n\nexport function registerPixiMountStatsProvider(provider: () => PixiMountStats): void {\n getPixiMountStats = provider\n}\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nfunction resolveDebugFlags(): string {\n const debugConfig = DevConfig.debug\n if (!debugConfig.enabled) return 'off'\n\n const enabledFlags = Object.entries(debugConfig)\n .filter(([key, value]) => key !== 'enabled' && value)\n .map(([key]) => key)\n\n return enabledFlags.length ? enabledFlags.join(',') : 'enabled'\n}\n\nfunction detectPixiRenderer(): string {\n // Pixi v8: check which renderer is active\n try {\n const prefs = (PIXI as unknown as { rendering?: { preferredRenderer?: string } }).rendering\n ?.preferredRenderer\n if (prefs === 'webgpu') return 'WebGPU'\n if (prefs === 'webgl') return 'WebGL'\n } catch {\n // Fallback: WebGL is default in Pixi v8\n }\n return 'WebGL'\n}\n\n// ---------------------------------------------------------------------------\n// usePixiDebugSnapshot\n// ---------------------------------------------------------------------------\n\n/**\n * Collect a one-shot PixiJS debug snapshot.\n * Can be called directly (no hook needed) — used by the Pixi surface adapter\n * to wire the collector into the SurfaceContext for the generic useDebugSnapshot hook.\n *\n * @param app - Optional Pixi Application for viewport.\n * When omitted, viewport is left undefined.\n */\nexport function collectPixiSnapshot(app?: PIXI.Application): DebugSnapshot {\n const ticker = PIXI.Ticker.shared\n const mountStats = getPixiMountStats()\n\n const snapshot: DebugSnapshot = {\n fps: Math.round(ticker.FPS),\n frameMs: Math.round(ticker.deltaMS * 100) / 100,\n phaserVersion: `Pixi ${PIXI.VERSION}`,\n renderer: detectPixiRenderer(),\n textureCount: getPixiTextureCount(),\n mountsTotal: mountStats.totalMounts,\n mountsByType: summarizeMap(mountStats.byType),\n mountsByParent: summarizeMap(mountStats.byParent),\n mountsByKey: summarizeMap(mountStats.byKey),\n debugFlags: resolveDebugFlags(),\n }\n\n if (app) {\n snapshot.viewport = `${app.renderer.width}x${app.renderer.height}`\n }\n\n return snapshot\n}\n\n// ---------------------------------------------------------------------------\n// usePixiDebugSnapshot\n// ---------------------------------------------------------------------------\n\n/**\n * Hook that collects PixiJS debug metrics on an interval and returns\n * a {@link DebugSnapshot} suitable for the portable {@link DebugPanel}.\n *\n * Uses the shared Pixi ticker for FPS/frame timing and the portable\n * {@link getMountStats} from the Pixi VDOM runtime for mount statistics.\n *\n * **Limitations compared to the Phaser hook:**\n * - `phaserVersion` reports the Pixi version instead\n * - `viewport` is only available when the surface adapter provides the app\n * (via {@link collectPixiSnapshot}) — the standalone hook omits it\n * - Pixi metrics marked as missing are simply omitted from the snapshot\n *\n * @param intervalMs - Refresh interval in milliseconds (default: 250)\n * @returns Current debug snapshot, refreshed on the given interval\n */\nexport function usePixiDebugSnapshot(intervalMs = 250): DebugSnapshot {\n const [snapshot, setSnapshot] = useState<DebugSnapshot>(collectPixiSnapshot())\n\n useEffect(() => {\n const delay = Math.max(50, intervalMs)\n setSnapshot(collectPixiSnapshot())\n\n const timer = window.setInterval(() => {\n setSnapshot(collectPixiSnapshot())\n }, delay)\n\n return () => {\n window.clearInterval(timer)\n }\n }, [intervalMs])\n\n return snapshot\n}\n","import type { VectorDrawContext } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\n\ntype FillStyle = {\n color: number\n alpha: number\n}\n\ntype StrokeStyle = {\n width: number\n color: number\n alpha: number\n}\n\ntype BufferedSubpath = {\n points: Array<{ x: number; y: number }>\n closed: boolean\n}\n\nexport class PixiVectorDrawContext implements VectorDrawContext {\n private fill: FillStyle = { color: 0xffffff, alpha: 1 }\n private stroke: StrokeStyle = { width: 1, color: 0xffffff, alpha: 1 }\n private bufferedSubpaths: BufferedSubpath[] = []\n private currentSubpath: BufferedSubpath | undefined\n private usesNativePathCommands = false\n\n constructor(readonly graphics: PIXI.Graphics) {}\n\n private resetBufferedPath(): void {\n this.bufferedSubpaths = []\n this.currentSubpath = undefined\n this.usesNativePathCommands = false\n }\n\n private ensureSubpath(startX: number, startY: number): BufferedSubpath {\n if (\n !this.currentSubpath ||\n this.currentSubpath.closed ||\n this.currentSubpath.points.length > 0\n ) {\n this.currentSubpath = { points: [], closed: false }\n this.bufferedSubpaths.push(this.currentSubpath)\n }\n this.currentSubpath.points.push({ x: startX, y: startY })\n return this.currentSubpath\n }\n\n private replayBufferedSubpath(subpath: BufferedSubpath): void {\n if (subpath.points.length === 0) return\n const [start, ...rest] = subpath.points\n this.graphics.moveTo(start!.x, start!.y)\n for (const point of rest) {\n this.graphics.lineTo(point.x, point.y)\n }\n if (subpath.closed) {\n this.graphics.closePath()\n }\n }\n\n clear(): this {\n this.graphics.clear()\n this.resetBufferedPath()\n return this\n }\n\n fillStyle(color: number, alpha = 1): this {\n this.fill = { color, alpha }\n this.graphics.setFillStyle(this.fill)\n return this\n }\n\n lineStyle(width: number, color: number, alpha = 1): this {\n this.stroke = { width, color, alpha }\n this.graphics.setStrokeStyle(this.stroke)\n return this\n }\n\n arc(\n x: number,\n y: number,\n radius: number,\n startAngle: number,\n endAngle: number,\n anticlockwise?: boolean\n ): this {\n // PixiJS uses \"counterclockwise\" instead of \"anticlockwise\"\n this.usesNativePathCommands = true\n this.graphics.arc(x, y, radius, startAngle, endAngle, anticlockwise)\n return this\n }\n\n fillCircle(x: number, y: number, radius: number): this {\n this.graphics.circle(x, y, radius).fill(this.fill)\n return this\n }\n\n strokeCircle(x: number, y: number, radius: number): this {\n this.graphics.circle(x, y, radius).stroke(this.stroke)\n return this\n }\n\n fillRect(x: number, y: number, width: number, height: number): this {\n this.graphics.rect(x, y, width, height).fill(this.fill)\n return this\n }\n\n strokeRect(x: number, y: number, width: number, height: number): this {\n this.graphics.rect(x, y, width, height).stroke(this.stroke)\n return this\n }\n\n fillRoundedRect(x: number, y: number, width: number, height: number, radius: number): this {\n this.graphics.roundRect(x, y, width, height, radius).fill(this.fill)\n return this\n }\n\n strokeRoundedRect(x: number, y: number, width: number, height: number, radius: number): this {\n this.graphics.roundRect(x, y, width, height, radius).stroke(this.stroke)\n return this\n }\n\n beginPath(): this {\n this.resetBufferedPath()\n this.graphics.beginPath()\n return this\n }\n\n moveTo(x: number, y: number): this {\n this.ensureSubpath(x, y)\n return this\n }\n\n lineTo(x: number, y: number): this {\n if (!this.currentSubpath) {\n this.ensureSubpath(x, y)\n return this\n }\n this.currentSubpath.points.push({ x, y })\n return this\n }\n\n closePath(): this {\n if (this.currentSubpath) {\n this.currentSubpath.closed = true\n }\n return this\n }\n\n fillPath(): this {\n if (this.bufferedSubpaths.length > 0 && !this.usesNativePathCommands) {\n const [outer, ...holes] = this.bufferedSubpaths\n this.graphics.beginPath()\n this.replayBufferedSubpath(outer!)\n this.graphics.fill(this.fill)\n\n for (const hole of holes) {\n this.graphics.beginPath()\n this.replayBufferedSubpath(hole)\n this.graphics.cut()\n }\n return this\n }\n\n this.graphics.fill(this.fill)\n return this\n }\n\n strokePath(): this {\n if (this.bufferedSubpaths.length > 0 && !this.usesNativePathCommands) {\n this.graphics.beginPath()\n for (const subpath of this.bufferedSubpaths) {\n this.replayBufferedSubpath(subpath)\n }\n this.graphics.stroke(this.stroke)\n return this\n }\n\n this.graphics.stroke(this.stroke)\n return this\n }\n\n lineBetween(x1: number, y1: number, x2: number, y2: number): this {\n this.graphics.beginPath().moveTo(x1, y1).lineTo(x2, y2).stroke(this.stroke)\n return this\n }\n\n fillCircleStyled(x: number, y: number, radius: number, color: number, alpha: number): this {\n this.graphics.circle(x, y, radius).fill({ color, alpha })\n return this\n }\n\n strokeLine(\n x1: number,\n y1: number,\n x2: number,\n y2: number,\n width: number,\n color: number,\n alpha: number\n ): this {\n this.graphics.beginPath().moveTo(x1, y1).lineTo(x2, y2).stroke({ width, color, alpha })\n return this\n }\n\n fillArc(\n cx: number,\n cy: number,\n r: number,\n startAngle: number,\n endAngle: number,\n color: number,\n alpha: number\n ): this {\n this.graphics\n .beginPath()\n .moveTo(cx, cy)\n .arc(cx, cy, r, startAngle, endAngle)\n .closePath()\n .fill({ color, alpha })\n return this\n }\n}\n","/**\n * View background applier — draws background color, border & corner radius.\n */\nimport {\n drawBorderGeometry,\n isAnimatedSignal,\n isUniformBorder,\n resolveBorderSides,\n resolveCornerRadii,\n type BorderPropsV2,\n} from '@number10/jsx-core'\nimport { effect } from '@preact/signals-core'\nimport * as PIXI from 'pixi.js'\nimport { PixiVectorDrawContext } from '../vector/PixiVectorDrawContext'\nimport { getContentContainer, type PixiNode } from './pixi-node'\n\ntype CornerRadii = { tl: number; tr: number; bl: number; br: number }\n\n/**\n * Check whether all four corners have the same radius.\n */\nfunction isUniform(r: CornerRadii): boolean {\n return r.tl === r.tr && r.tr === r.bl && r.bl === r.br\n}\n\n/**\n * Draw a rounded rectangle with per-corner radii using PIXI.Graphics arcTo.\n * When all radii are equal, delegates to the native roundRect for performance.\n */\nfunction drawRoundedRect(\n gfx: PIXI.Graphics,\n x: number,\n y: number,\n w: number,\n h: number,\n corners: CornerRadii\n): void {\n if (w <= 0 || h <= 0) return\n\n const { tl, tr, bl, br } = corners\n const maxR = Math.max(tl, tr, bl, br)\n if (maxR <= 0) {\n gfx.rect(x, y, w, h)\n return\n }\n\n // Use native roundRect when all corners are the same (much faster)\n if (isUniform(corners)) {\n gfx.roundRect(x, y, w, h, tl)\n return\n }\n\n // Per-corner path using arcTo\n // Clamp radii so they don't exceed half the edge lengths\n const clamp = (r: number, max: number) => Math.min(r, max)\n const ctl = clamp(tl, Math.min(w, h))\n const ctr = clamp(tr, Math.min(w, h))\n const cbl = clamp(bl, Math.min(w, h))\n const cbr = clamp(br, Math.min(w, h))\n\n gfx.moveTo(x + ctl, y)\n gfx.lineTo(x + w - ctr, y)\n gfx.arcTo(x + w, y, x + w, y + ctr, ctr)\n gfx.lineTo(x + w, y + h - cbr)\n gfx.arcTo(x + w, y + h, x + w - cbr, y + h, cbr)\n gfx.lineTo(x + cbl, y + h)\n gfx.arcTo(x, y + h, x, y + h - cbl, cbl)\n gfx.lineTo(x, y + ctl)\n gfx.arcTo(x, y, x + ctl, y, ctl)\n gfx.closePath()\n}\n\n/**\n * Convert BorderPropsV2 align to Pixi StrokeAttributes alignment value.\n * - 'inside' → 1.0 (stroke inside the path)\n * - 'center' → 0.5 (centered on path, default)\n * - 'outside' → 0.0 (stroke outside the path)\n */\nfunction resolveAlignment(align: BorderPropsV2['align']): number {\n if (align === 'inside') return 1\n if (align === 'outside') return 0\n return 0.5\n}\n\n/**\n * Build the native stroke option object for Pixi.js v8 including alignment.\n */\nfunction buildStrokeOpts(\n lineWidth: number,\n color: number,\n alpha: number,\n border: BorderPropsV2\n): Record<string, unknown> {\n const opts: Record<string, unknown> = { width: lineWidth, color, alpha }\n if (border.cap) opts.cap = border.cap\n if (border.join) opts.join = border.join\n opts.alignment = resolveAlignment(border.align)\n return opts\n}\n\n// ---------------------------------------------------------------------------\n// Main entry: drawAdvancedBorder\n// ---------------------------------------------------------------------------\n\n/**\n * Draw an advanced border (BorderPropsV2) on a Pixi Graphics object.\n *\n * All non-solid borders (dashed, dotted, asymmetric) are routed through\n * {@link drawBorderGeometry} from core. Only symmetric solid borders use\n * native Pixi stroke for optimal quality (cap/join/alignment).\n */\nfunction drawAdvancedBorder(\n gfx: PIXI.Graphics,\n w: number,\n h: number,\n corners: CornerRadii,\n border: BorderPropsV2\n): void {\n const sides = resolveBorderSides(border.width)\n const maxSw = Math.max(sides.top, sides.right, sides.bottom, sides.left)\n if (maxSw <= 0) return\n\n const isSolid = (border.style ?? 'solid') === 'solid'\n const uniform = isUniformBorder(sides)\n\n // Route non-solid and asymmetric through core geometry\n if (!isSolid || !uniform) {\n const ctx = new PixiVectorDrawContext(gfx)\n drawBorderGeometry(ctx, { box: { x: 0, y: 0, w, h }, sides, corners }, border)\n return\n }\n\n // --- Native path: symmetric solid only ---\n const color = border.color ?? 0xffffff\n const rawAlpha = typeof border.alpha === 'number' ? border.alpha : 1\n const lw = sides.top\n const opts = buildStrokeOpts(lw, color, rawAlpha, border)\n // Pixi supports stroke alignment natively, so the path stays on the\n // original box boundary for all align modes.\n drawRoundedRect(gfx, 0, 0, w, h, corners)\n gfx.stroke(opts)\n}\n\n/**\n * Check if the props contain a BorderPropsV2 that should take effect.\n */\nfunction hasAdvancedBorder(props: Record<string, unknown>): boolean {\n const border = props.border as BorderPropsV2 | undefined\n if (!border) return false\n const w = resolveBorderSides(border.width)\n return w.top > 0 || w.right > 0 || w.bottom > 0 || w.left > 0\n}\n\n/**\n * Apply background color, border, and corner radius to a view node.\n * Cleans up previous background graphics before creating a new one.\n *\n * When `props.border` (BorderPropsV2) is set, it takes precedence over\n * the legacy `borderWidth`/`borderColor`/`borderAlpha` props.\n *\n * @param node - Target Pixi view node\n * @param props - Props object (backgroundColor, borderColor, cornerRadius, etc.)\n */\nexport function applyViewBackground(node: PixiNode, props: Record<string, unknown>): void {\n const w = node.__layoutBox?.width ?? 0\n const h = node.__layoutBox?.height ?? 0\n const bgColor = props.backgroundColor as number | undefined\n const rawBgAlpha = props.backgroundAlpha\n const bgAlpha =\n ((rawBgAlpha !== undefined && isAnimatedSignal(rawBgAlpha)\n ? rawBgAlpha.value\n : rawBgAlpha) as number) ?? 1\n const advancedBorder = hasAdvancedBorder(props)\n const borderColor = advancedBorder\n ? ((props.border as BorderPropsV2).color ?? 0xffffff)\n : (props.borderColor as number | undefined)\n // Default borderWidth to 1 when borderColor is set (matches Phaser normalizeBackgroundProps)\n const borderWidth = advancedBorder\n ? resolveBorderSides((props.border as BorderPropsV2).width).top\n : ((props.borderWidth as number) ?? (props.borderColor !== undefined ? 1 : 0))\n const corners = resolveCornerRadii(\n props.cornerRadius as\n | number\n | { tl?: number; tr?: number; bl?: number; br?: number }\n | undefined\n )\n const rawBorderAlpha = advancedBorder ? (props.border as BorderPropsV2).alpha : props.borderAlpha\n const borderAlpha =\n ((rawBorderAlpha !== undefined && isAnimatedSignal(rawBorderAlpha)\n ? rawBorderAlpha.value\n : rawBorderAlpha) as number) ?? 1\n\n const hasAnyBorder = advancedBorder || (props.borderColor !== undefined && borderWidth > 0)\n\n if (node.__backgroundGraphics) {\n const content = getContentContainer(node)\n content.removeChild(node.__backgroundGraphics)\n node.__backgroundGraphics.destroy()\n node.__backgroundGraphics = undefined\n }\n\n if ((bgColor === undefined && !hasAnyBorder) || w <= 0 || h <= 0) {\n return\n }\n\n const gfx = new PIXI.Graphics()\n ;(gfx as PIXI.Graphics & { __isBackground?: boolean }).__isBackground = true\n if (bgColor !== undefined) {\n drawRoundedRect(gfx, 0, 0, w, h, corners)\n gfx.fill({ color: bgColor, alpha: bgAlpha })\n }\n\n if (advancedBorder) {\n drawAdvancedBorder(gfx, w, h, corners, props.border as BorderPropsV2)\n } else if (borderColor !== undefined && borderWidth > 0) {\n const inset = borderWidth / 2\n const borderCorners: CornerRadii = {\n tl: Math.max(0, corners.tl - inset),\n tr: Math.max(0, corners.tr - inset),\n bl: Math.max(0, corners.bl - inset),\n br: Math.max(0, corners.br - inset),\n }\n drawRoundedRect(gfx, inset, inset, w - borderWidth, h - borderWidth, borderCorners)\n gfx.stroke({ color: borderColor, width: borderWidth, alpha: borderAlpha })\n }\n\n node.__backgroundGraphics = gfx\n getContentContainer(node).addChildAt(gfx, 0)\n\n // Subscribe to animated backgroundAlpha / borderAlpha so the graphics\n // live-updates without VDOM re-renders — clears and redraws the Graphics\n // with the new alpha value.\n const signalEffects =\n (node as unknown as { __signalEffects?: Map<string, () => void> }).__signalEffects ?? new Map()\n ;(node as unknown as { __signalEffects?: Map<string, () => void> }).__signalEffects =\n signalEffects\n\n const bgSignal = props.backgroundAlpha\n const borderSignal = advancedBorder ? (props.border as BorderPropsV2).alpha : props.borderAlpha\n const hasLiveAlpha =\n (bgSignal !== undefined && isAnimatedSignal(bgSignal)) ||\n (borderSignal !== undefined && isAnimatedSignal(borderSignal))\n\n const prevBgCleanup = signalEffects.get('__bgAlpha')\n if (prevBgCleanup) {\n prevBgCleanup()\n signalEffects.delete('__bgAlpha')\n }\n const prevBorderCleanup = signalEffects.get('__borderAlpha')\n if (prevBorderCleanup) {\n prevBorderCleanup()\n signalEffects.delete('__borderAlpha')\n }\n\n if (hasLiveAlpha) {\n const cleanup = effect(() => {\n if (!node.__backgroundGraphics) return\n // Clamp to [0,1] — spring overshoot can produce values outside range\n const clamp = (v: number) => Math.max(0, Math.min(1, v))\n const liveBgAlpha =\n bgSignal !== undefined && isAnimatedSignal(bgSignal)\n ? clamp(bgSignal.value as number)\n : bgAlpha\n const liveBorderAlpha =\n borderSignal !== undefined && isAnimatedSignal(borderSignal)\n ? clamp(borderSignal.value as number)\n : borderAlpha\n const g = node.__backgroundGraphics\n g.clear()\n if (bgColor !== undefined) {\n drawRoundedRect(g, 0, 0, w, h, corners)\n g.fill({ color: bgColor, alpha: liveBgAlpha })\n }\n if (advancedBorder) {\n const advBorder = { ...(props.border as BorderPropsV2), alpha: liveBorderAlpha }\n drawAdvancedBorder(g, w, h, corners, advBorder)\n } else if (borderColor !== undefined && borderWidth > 0) {\n const inset = borderWidth / 2\n const borderCorners: CornerRadii = {\n tl: Math.max(0, corners.tl - inset),\n tr: Math.max(0, corners.tr - inset),\n bl: Math.max(0, corners.bl - inset),\n br: Math.max(0, corners.br - inset),\n }\n drawRoundedRect(g, inset, inset, w - borderWidth, h - borderWidth, borderCorners)\n g.stroke({ color: borderColor, width: borderWidth, alpha: liveBorderAlpha })\n }\n })\n signalEffects.set('__bgAlpha', cleanup)\n }\n}\n","/**\n * Base property applier — transforms common props to Pixi node properties.\n *\n * Supports AnimatedSignal values — subscribes to signal changes and updates\n * native node properties directly, bypassing VDOM re-renders.\n */\nimport { isAnimatedSignal } from '@number10/jsx-core'\nimport { effect } from '@preact/signals-core'\nimport type { PixiNode } from './pixi-node'\n\ninterface SignalEffectNode {\n __signalEffects?: Map<string, () => void>\n __lastPropValues?: Record<string, unknown>\n}\n\nfunction applySignalValue(\n node: SignalEffectNode,\n key: string,\n value: unknown,\n apply: (value: number) => void\n): void {\n // Clean up previous signal effect for this key\n node.__signalEffects?.get(key)?.()\n\n if (value === undefined) return\n\n if (isAnimatedSignal(value)) {\n apply(value.value)\n const cleanup = effect(() => {\n apply(value.value)\n })\n if (!node.__signalEffects) {\n node.__signalEffects = new Map()\n }\n node.__signalEffects.set(key, cleanup)\n } else {\n // Skip re-application if value hasn't changed — prevents overriding\n // positions set by the parent's layout engine (e.g. row/column layouts).\n const last = node.__lastPropValues?.[key]\n if (last === value) return\n if (!node.__lastPropValues) {\n node.__lastPropValues = {}\n }\n node.__lastPropValues[key] = value\n apply(value as number)\n }\n}\n\n/**\n * Apply base transform/visibility props to a Pixi node.\n * Layout stays on the outer node. The inner effect container receives\n * transform props so temporary effect animation can run independently.\n * @param node - Target outer Pixi node\n * @param props - Props object (x, y, alpha, visible, angle, scale)\n */\nexport function applyBaseProps(node: PixiNode, props: Record<string, unknown>): void {\n const effectTarget = node.__effectContainer ?? node\n\n applySignalValue(node, 'x', props.x, (v) => {\n node.x = v\n })\n applySignalValue(node, 'y', props.y, (v) => {\n node.y = v\n })\n applySignalValue(node, 'alpha', props.alpha, (v) => {\n effectTarget.alpha = v\n })\n\n if (props.visible !== undefined) {\n const visible = props.visible\n node.visible = visible !== false && visible !== 'none'\n }\n\n if (props.rotation !== undefined) {\n applySignalValue(node, 'rotation', props.rotation, (v) => {\n effectTarget.rotation = v\n })\n } else if (props.angle !== undefined) {\n applySignalValue(node, 'angle', props.angle, (v) => {\n effectTarget.angle = v\n })\n }\n\n if (props.scale !== undefined) {\n applySignalValue(node, 'scale', props.scale, (v) => {\n effectTarget.scale.set(v)\n })\n } else {\n const scaleX = props.scaleX\n const scaleY = props.scaleY\n if (scaleX !== undefined || scaleY !== undefined) {\n const sx = isAnimatedSignal(scaleX) ? scaleX.value : (scaleX as number | undefined)\n const sy = isAnimatedSignal(scaleY) ? scaleY.value : (scaleY as number | undefined)\n effectTarget.scale.set(\n (sx as number | undefined) ?? effectTarget.scale.x,\n (sy as number | undefined) ?? effectTarget.scale.y\n )\n // Note: individual scaleX/scaleY animated signals not yet supported for live updates\n }\n }\n}\n","import type { PropsDefaultExtension, TransformProps } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { resolvePixiTexture } from '../pixi-surface-adapter'\nimport type { PixiNode } from './pixi-node'\nimport { getContentContainer, setLayoutSize } from './pixi-node'\n\nexport type ParticleValue = number | { min?: number; max?: number }\n\nexport interface ParticlesHandle extends PIXI.Container {\n burst: (count?: number) => void\n clear: () => void\n start: () => void\n stop: () => void\n}\n\nexport interface ParticlesProps extends TransformProps, PropsDefaultExtension<ParticlesHandle> {\n texture?: string\n frame?: string | number\n depth?: number\n visible?: boolean\n emitting?: boolean\n maxParticles?: number\n frequency?: number\n lifespan?: ParticleValue\n speed?: ParticleValue\n emissionAngle?: number\n /** @deprecated Use emissionAngle. */\n direction?: number\n spread?: number\n startScale?: ParticleValue\n endScale?: number\n startAlpha?: number\n endAlpha?: number\n rotationSpeed?: ParticleValue\n tint?: number | string\n blendMode?: 'normal' | 'add' | 'screen' | 'multiply'\n anchor?: number | { x?: number; y?: number }\n}\n\ntype RuntimeParticle = {\n alphaEnd: number\n alphaStart: number\n angularVelocity: number\n lifeMs: number\n particle: PIXI.Particle\n scaleEnd: number\n scaleStart: number\n velocityX: number\n velocityY: number\n livedMs: number\n}\n\nlet defaultParticleTexture: PIXI.Texture | undefined\n\ntype ResolvedParticlesConfig = {\n anchorX: number\n anchorY: number\n blendMode: NonNullable<ParticlesProps['blendMode']>\n direction: number\n emitting: boolean\n endAlpha: number\n endScale: number\n frame: string | number | undefined\n frequency: number\n lifespan: ParticleValue\n maxParticles: number\n rotationSpeed: ParticleValue\n speed: ParticleValue\n spread: number\n startAlpha: number\n startScale: ParticleValue\n texture: string | undefined\n tint: number | string | undefined\n}\n\nexport type PixiParticlesNode = PixiNode &\n ParticlesHandle & {\n __particles?: RuntimeParticle[]\n __particlesConfig?: ResolvedParticlesConfig\n __particlesContainer?: PIXI.ParticleContainer\n __particlesFrame?: string | number | undefined\n __particlesTexture?: string | undefined\n __particlesTickerCancel?: (() => void) | undefined\n __spawnAccumulatorMs?: number\n }\n\nfunction clamp01(value: number | undefined, fallback: number): number {\n if (!Number.isFinite(value)) return fallback\n return Math.max(0, Math.min(1, value ?? fallback))\n}\n\nfunction resolveBlendMode(\n value: ParticlesProps['blendMode']\n): NonNullable<ParticlesProps['blendMode']> {\n switch (value) {\n case 'add':\n case 'multiply':\n case 'screen':\n case 'normal':\n return value\n default:\n return 'normal'\n }\n}\n\nfunction resolveRange(value: ParticleValue | undefined, fallback: number): number {\n if (typeof value === 'number') {\n return value\n }\n\n const min = Number.isFinite(value?.min) ? (value?.min as number) : fallback\n const max = Number.isFinite(value?.max) ? (value?.max as number) : min\n const low = Math.min(min, max)\n const high = Math.max(min, max)\n\n if (low === high) {\n return low\n }\n\n return low + Math.random() * (high - low)\n}\n\nfunction resolveAnchor(value: ParticlesProps['anchor']): { x: number; y: number } {\n if (typeof value === 'number') {\n return { x: value, y: value }\n }\n\n return {\n x: value?.x ?? 0.5,\n y: value?.y ?? 0.5,\n }\n}\n\nfunction resolveConfig(props: Record<string, unknown>): ResolvedParticlesConfig {\n const anchor = resolveAnchor(props.anchor as ParticlesProps['anchor'])\n const emissionAngle = Number.isFinite(props.emissionAngle)\n ? (props.emissionAngle as number)\n : Number.isFinite(props.direction)\n ? (props.direction as number)\n : 0\n\n return {\n anchorX: anchor.x,\n anchorY: anchor.y,\n blendMode: resolveBlendMode(props.blendMode as ParticlesProps['blendMode']),\n direction: emissionAngle,\n emitting: props.emitting !== false,\n endAlpha: clamp01(props.endAlpha as number | undefined, 0),\n endScale: Number.isFinite(props.endScale) ? Math.max(0, props.endScale as number) : 0,\n frame: props.frame as string | number | undefined,\n frequency: Math.max(0, Number.isFinite(props.frequency) ? (props.frequency as number) : 50),\n lifespan: (props.lifespan as ParticleValue | undefined) ?? 900,\n maxParticles: Math.max(\n 0,\n Math.floor(Number.isFinite(props.maxParticles) ? (props.maxParticles as number) : 128)\n ),\n rotationSpeed: (props.rotationSpeed as ParticleValue | undefined) ?? 0,\n speed: (props.speed as ParticleValue | undefined) ?? 90,\n spread: Number.isFinite(props.spread) ? Math.max(0, props.spread as number) : 360,\n startAlpha: clamp01(props.startAlpha as number | undefined, 1),\n startScale: (props.startScale as ParticleValue | undefined) ?? { min: 0.6, max: 1.0 },\n texture: props.texture as string | undefined,\n tint: props.tint as number | string | undefined,\n }\n}\n\nfunction ensureParticlesContainer(node: PixiParticlesNode): PIXI.ParticleContainer {\n let container = node.__particlesContainer\n if (container) {\n return container\n }\n\n container = new PIXI.ParticleContainer({\n dynamicProperties: {\n color: true,\n position: true,\n rotation: true,\n vertex: true,\n },\n roundPixels: false,\n })\n container.eventMode = 'none'\n getContentContainer(node).addChild(container)\n node.__particlesContainer = container\n return container\n}\n\nfunction getFallbackParticleTexture(): PIXI.Texture {\n if (defaultParticleTexture) {\n return defaultParticleTexture\n }\n\n const canvas = document.createElement('canvas')\n canvas.width = 24\n canvas.height = 24\n\n const context = canvas.getContext('2d')\n if (!context) {\n defaultParticleTexture = PIXI.Texture.WHITE\n return defaultParticleTexture\n }\n\n const gradient = context.createRadialGradient(12, 12, 1, 12, 12, 12)\n gradient.addColorStop(0, 'rgba(255, 255, 255, 1)')\n gradient.addColorStop(0.6, 'rgba(255, 255, 255, 0.85)')\n gradient.addColorStop(1, 'rgba(255, 255, 255, 0)')\n\n context.fillStyle = gradient\n context.beginPath()\n context.arc(12, 12, 12, 0, Math.PI * 2)\n context.fill()\n\n defaultParticleTexture = PIXI.Texture.from(canvas)\n return defaultParticleTexture\n}\n\nfunction applyParticlesBounds(node: PixiParticlesNode): void {\n const container = ensureParticlesContainer(node)\n const viewport = node.__surfaceContext?.viewport\n const width = Math.max(512, viewport?.width ?? 1024)\n const height = Math.max(512, viewport?.height ?? 1024)\n container.boundsArea = new PIXI.Rectangle(-width, -height, width * 2, height * 2)\n}\n\nfunction clearParticles(node: PixiParticlesNode): void {\n const container = node.__particlesContainer\n if (container && container.particleChildren.length > 0) {\n container.removeParticles(0, container.particleChildren.length)\n }\n node.__particles = []\n node.__spawnAccumulatorMs = 0\n}\n\nfunction spawnParticle(node: PixiParticlesNode): void {\n const config = node.__particlesConfig\n if (!config || config.maxParticles <= 0) {\n return\n }\n\n const texture =\n (config.texture ? resolvePixiTexture(config.texture, config.frame) : undefined) ??\n getFallbackParticleTexture()\n const container = ensureParticlesContainer(node)\n const particles = node.__particles ?? (node.__particles = [])\n\n if (particles.length >= config.maxParticles) {\n return\n }\n\n const direction =\n (config.direction - config.spread / 2 + Math.random() * config.spread) * (Math.PI / 180)\n const speed = resolveRange(config.speed, 90)\n const scaleStart = Math.max(0, resolveRange(config.startScale, 1))\n const lifespan = Math.max(1, resolveRange(config.lifespan, 900))\n const rotationSpeed = resolveRange(config.rotationSpeed, 0) * (Math.PI / 180)\n\n const particle = new PIXI.Particle({\n alpha: config.startAlpha,\n anchorX: config.anchorX,\n anchorY: config.anchorY,\n scaleX: scaleStart,\n scaleY: scaleStart,\n texture,\n x: 0,\n y: 0,\n ...(config.tint !== undefined ? { tint: config.tint } : {}),\n })\n particle.rotation = direction\n container.addParticle(particle)\n\n particles.push({\n alphaEnd: config.endAlpha,\n alphaStart: config.startAlpha,\n angularVelocity: rotationSpeed,\n lifeMs: lifespan,\n livedMs: 0,\n particle,\n scaleEnd: config.endScale,\n scaleStart,\n velocityX: Math.cos(direction) * speed,\n velocityY: Math.sin(direction) * speed,\n })\n}\n\nfunction burstParticles(node: PixiParticlesNode, count = 1): void {\n const config = node.__particlesConfig\n if (!config || count <= 0) {\n return\n }\n\n const current = node.__particles?.length ?? 0\n const available = Math.max(0, config.maxParticles - current)\n const total = Math.min(available, Math.max(0, Math.floor(count)))\n\n for (let index = 0; index < total; index += 1) {\n spawnParticle(node)\n }\n}\n\nfunction updateParticles(node: PixiParticlesNode, dtMs: number): void {\n const particles = node.__particles\n const container = node.__particlesContainer\n const config = node.__particlesConfig\n\n if (!particles || !container || !config) {\n return\n }\n\n const dtSeconds = dtMs / 1000\n\n for (let index = particles.length - 1; index >= 0; index -= 1) {\n const runtime = particles[index]\n if (!runtime) {\n continue\n }\n runtime.livedMs += dtMs\n\n if (runtime.livedMs >= runtime.lifeMs) {\n container.removeParticle(runtime.particle)\n particles.splice(index, 1)\n continue\n }\n\n const progress = runtime.livedMs / runtime.lifeMs\n runtime.particle.x += runtime.velocityX * dtSeconds\n runtime.particle.y += runtime.velocityY * dtSeconds\n runtime.particle.rotation += runtime.angularVelocity * dtSeconds\n\n const scale = runtime.scaleStart + (runtime.scaleEnd - runtime.scaleStart) * progress\n runtime.particle.scaleX = scale\n runtime.particle.scaleY = scale\n runtime.particle.alpha = runtime.alphaStart + (runtime.alphaEnd - runtime.alphaStart) * progress\n }\n\n if (!config.emitting || config.frequency <= 0 || particles.length >= config.maxParticles) {\n return\n }\n\n node.__spawnAccumulatorMs = (node.__spawnAccumulatorMs ?? 0) + dtMs\n while (\n (node.__spawnAccumulatorMs ?? 0) >= config.frequency &&\n (node.__particles?.length ?? 0) < config.maxParticles\n ) {\n node.__spawnAccumulatorMs = (node.__spawnAccumulatorMs ?? 0) - config.frequency\n spawnParticle(node)\n }\n}\n\nfunction ensureTicker(node: PixiParticlesNode): void {\n if (node.__particlesTickerCancel) {\n return\n }\n\n const cancelable = node.__surfaceContext?.scheduler.onFrame((dt) => {\n if (node.destroyed) {\n destroyPixiParticlesNode(node)\n return\n }\n updateParticles(node, dt)\n })\n\n node.__particlesTickerCancel = cancelable?.cancel\n}\n\nexport function initializePixiParticlesNode(node: PixiParticlesNode): void {\n node.__particles = []\n node.__spawnAccumulatorMs = 0\n setLayoutSize(node, 0.01, 0.01)\n node.__getLayoutSize = () => ({ width: 0.01, height: 0.01 })\n\n node.start = () => {\n if (node.__particlesConfig) {\n node.__particlesConfig.emitting = true\n }\n }\n node.stop = () => {\n if (node.__particlesConfig) {\n node.__particlesConfig.emitting = false\n }\n }\n node.clear = () => {\n clearParticles(node)\n }\n node.burst = (count = 8) => {\n burstParticles(node, count)\n }\n}\n\nexport function applyParticlesProps(node: PixiParticlesNode, props: Record<string, unknown>): void {\n const config = resolveConfig(props)\n const container = ensureParticlesContainer(node)\n const textureChanged =\n config.texture !== node.__particlesTexture || config.frame !== node.__particlesFrame\n\n node.__particlesConfig = config\n node.__particlesTexture = config.texture\n node.__particlesFrame = config.frame\n container.blendMode = config.blendMode\n container.texture =\n (config.texture ? resolvePixiTexture(config.texture, config.frame) : undefined) ??\n getFallbackParticleTexture()\n\n applyParticlesBounds(node)\n ensureTicker(node)\n\n if (textureChanged) {\n clearParticles(node)\n }\n\n const particles = node.__particles ?? []\n if (particles.length > config.maxParticles) {\n const overflow = particles.length - config.maxParticles\n for (let index = 0; index < overflow; index += 1) {\n const removed = particles.pop()\n if (removed) {\n container.removeParticle(removed.particle)\n }\n }\n }\n}\n\nexport function destroyPixiParticlesNode(node: PixiNode): void {\n const particlesNode = node as PixiParticlesNode\n particlesNode.__particlesTickerCancel?.()\n particlesNode.__particlesTickerCancel = undefined\n clearParticles(particlesNode)\n}\n\nexport function isPixiParticlesNode(node: PixiNode): node is PixiParticlesNode {\n return '__particlesContainer' in (node as unknown as Record<string, unknown>)\n}\n","/**\n * Numeric size normalization utilities.\n * Parses various size representations into numeric values.\n */\n\n/**\n * Normalize a value to a number with a fallback.\n * @param value - String (e.g. '16px', '16'), number, or undefined\n * @param fallback - Default value if value is not a valid number\n */\nexport function normalizeNumericSize(value: unknown, fallback: number): number {\n const normalized = normalizeOptionalNumericSize(value)\n return normalized ?? fallback\n}\n\n/**\n * Normalize a value to an optional number.\n * @param value - String (e.g. '16px', '16'), number, or undefined\n * @returns Parsed number or undefined\n */\nexport function normalizeOptionalNumericSize(value: unknown): number | undefined {\n if (typeof value === 'number' && Number.isFinite(value)) {\n return value\n }\n\n if (typeof value === 'string') {\n const match = value.trim().match(/^(-?\\d+(?:\\.\\d+)?)px$/i)\n if (match) {\n const parsed = Number(match[1])\n return Number.isFinite(parsed) ? parsed : undefined\n }\n\n const parsed = Number(value)\n return Number.isFinite(parsed) ? parsed : undefined\n }\n\n return undefined\n}\n","/**\n * Text property applier — text content, style, background, and layout size.\n */\nimport type { SizeValue } from '@number10/jsx-core'\nimport { parseSize, resolveSize } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { normalizeNumericSize, normalizeOptionalNumericSize } from '../utils/normalize-size'\nimport type { PixiNode, PixiTextNode } from './pixi-node'\nimport { getContentContainer, setLayoutSize } from './pixi-node'\n\n// ---------------------------------------------------------------------------\n// Theme-driven text defaults\n// ---------------------------------------------------------------------------\n\n/**\n * Extract default text style values from the surface context's theme tokens.\n * Falls back to oceanBlue light preset values when no surface context is available.\n */\ninterface TextThemeDefaults {\n color: string\n fontFamily: string\n fontSize: number\n}\n\nfunction getTextThemeDefaults(node: PixiTextNode): TextThemeDefaults {\n const tokens = node.__surfaceContext?.themeTokens as Record<string, unknown> | undefined\n const textStyles =\n (tokens?.textStyles as Record<string, Record<string, unknown>> | undefined) ?? {}\n const defaultStyle = textStyles.DEFAULT ?? {}\n\n return {\n color: (defaultStyle.color as string) ?? '#616161' /* oceanBlue text.DEFAULT (light) */,\n fontFamily: (defaultStyle.fontFamily as string) ?? 'Arial',\n fontSize: normalizeNumericSize(defaultStyle.fontSize, 16),\n }\n}\n\n// ---------------------------------------------------------------------------\n// Public API\n// ---------------------------------------------------------------------------\n\n/**\n * Apply text content, style, and background to a text node.\n * Updates the internal PIXI.Text display object and draws optional background.\n * @param text - Pixi text container node\n * @param props - Props object (text, style, width, maxWidth)\n */\nexport function applyTextProps(text: PixiTextNode, props: Record<string, unknown>): void {\n const textDisplay = text.__textDisplay\n const style = ((props.style as Record<string, unknown>) ?? {}) as Record<string, unknown>\n const textContent = (props.text as string) ?? ''\n const defaults = getTextThemeDefaults(text)\n textDisplay.text = textContent\n text.__textStyleSource = style\n\n const fontSize = normalizeNumericSize(style.fontSize, defaults.fontSize)\n const fill =\n (style.fill as string | number | undefined) ?? (style.color as string) ?? defaults.color\n const wordWrapWidth = resolveTextWrapWidth(text, props)\n\n textDisplay.style = createPixiTextStyle(style, fill, fontSize, wordWrapWidth, defaults.fontFamily)\n applyTextBackground(text, style.backgroundColor as string | number | undefined)\n\n const bounds = textDisplay.getLocalBounds()\n const w = bounds.width > 0 ? bounds.width : fontSize * Math.max(1, textContent.length) * 0.6\n const h = bounds.height > 0 ? bounds.height : fontSize * 1.2\n setLayoutSize(text, w, h)\n}\n\n/**\n * Apply text content and background to a Pixi text node (used by setSize callback).\n * Unlike applyTextProps, this reuses the stored style source.\n * @param node - Pixi text container node\n * @param props - Props object (style.source from __textStyleSource, width)\n */\nexport function applyTextAndBackground(node: PixiNode, props: Record<string, unknown>): void {\n const textNode = node as PixiTextNode\n applyTextProps(textNode, {\n text: textNode.__textDisplay.text,\n style: props.style ?? textNode.__textStyleSource,\n width: props.width,\n })\n}\n\n// ---------------------------------------------------------------------------\n// Internal helpers\n// ---------------------------------------------------------------------------\n\n/**\n * Normalize a CSS color string to a valid Pixi fill value.\n * Handles shorthand hex like \"#0\" → \"#000000\".\n */\nfunction normalizeFillColor(fill: string | number): string | number {\n if (typeof fill === 'number') return fill\n if (!fill.startsWith('#')) return fill\n const hex = fill.slice(1)\n // #0 → #000000, #00 → #000000, #000 → #000000\n if (hex.length === 1) return `#${hex}${hex}${hex}${hex}${hex}${hex}`\n if (hex.length === 2) return `#${hex}${hex}${hex}`\n if (hex.length === 3) return `#${hex[0]}${hex[0]}${hex[1]}${hex[1]}${hex[2]}${hex[2]}`\n return fill\n}\n\n/**\n * Build a PIXI.TextStyle from portable style props.\n */\nfunction createPixiTextStyle(\n style: Record<string, unknown>,\n fill: string | number,\n fontSize: number,\n wordWrapWidth: number,\n defaultFontFamily: string\n): PIXI.TextStyle {\n const normalizedFill = normalizeFillColor(fill)\n const fontStyleRaw = typeof style.fontStyle === 'string' ? style.fontStyle.toLowerCase() : ''\n const align = style.align\n const shadow =\n style.shadow && typeof style.shadow === 'object'\n ? (style.shadow as Record<string, unknown>)\n : undefined\n\n const options: Record<string, unknown> = {\n fontSize,\n fill: normalizedFill,\n fontFamily: typeof style.fontFamily === 'string' ? style.fontFamily : defaultFontFamily,\n }\n\n if (fontStyleRaw.includes('italic')) {\n options.fontStyle = 'italic'\n } else if (fontStyleRaw.includes('oblique')) {\n options.fontStyle = 'oblique'\n }\n\n if (fontStyleRaw.includes('bold')) {\n options.fontWeight = 'bold'\n } else if (style.fontWeight !== undefined) {\n options.fontWeight = style.fontWeight\n }\n\n if (align === 'left' || align === 'center' || align === 'right' || align === 'justify') {\n options.align = align\n }\n\n const lineHeight = normalizeOptionalNumericSize(style.lineHeight)\n if (lineHeight !== undefined) {\n options.lineHeight = lineHeight\n }\n\n if (shadow) {\n const offsetX = normalizeNumericSize(shadow.offsetX, 0)\n const offsetY = normalizeNumericSize(shadow.offsetY, 0)\n options.dropShadow = {\n color: normalizeFillColor((shadow.color as string | number | undefined) ?? '#000000'),\n blur: normalizeNumericSize(shadow.blur, 0),\n distance: Math.hypot(offsetX, offsetY),\n angle: Math.atan2(offsetY, offsetX),\n alpha: normalizeNumericSize(shadow.alpha, 1),\n }\n }\n\n if (wordWrapWidth > 0) {\n options.wordWrap = true\n options.wordWrapWidth = wordWrapWidth\n }\n\n return new PIXI.TextStyle(options as never)\n}\n\n/**\n * Draw background rectangle behind text.\n */\nfunction applyTextBackground(\n text: PixiTextNode,\n backgroundColor: string | number | undefined\n): void {\n const textDisplay = text.__textDisplay\n const content = getContentContainer(text)\n\n if (text.__textBackgroundGraphics) {\n content.removeChild(text.__textBackgroundGraphics)\n text.__textBackgroundGraphics.destroy()\n text.__textBackgroundGraphics = undefined\n }\n\n if (backgroundColor === undefined) {\n return\n }\n\n const bounds = textDisplay.getLocalBounds()\n if (bounds.width <= 0 || bounds.height <= 0) {\n return\n }\n\n const gfx = new PIXI.Graphics()\n ;(gfx as PIXI.Graphics & { __isBackground?: boolean }).__isBackground = true\n gfx.rect(bounds.x, bounds.y, bounds.width, bounds.height)\n gfx.fill({ color: backgroundColor, alpha: 1.0 })\n\n text.__textBackgroundGraphics = gfx\n content.addChildAt(gfx, 0)\n if (textDisplay.parent !== content) {\n content.addChild(textDisplay)\n } else if (content.getChildIndex(textDisplay) === 0) {\n content.addChild(textDisplay)\n }\n}\n\n/**\n * Resolve word-wrap width from props.\n */\nfunction resolveTextWrapWidth(text: PixiTextNode, props: Record<string, unknown>): number {\n const explicitWidth = normalizeOptionalNumericSize(props.width)\n if (explicitWidth !== undefined && explicitWidth > 0) {\n return explicitWidth\n }\n\n const maxWidth = props.maxWidth as SizeValue | undefined\n if (maxWidth === undefined) {\n return 0\n }\n\n const viewport = text.__surfaceContext?.viewport\n const parsed = parseSize(maxWidth)\n return resolveSize(parsed, viewport?.width, undefined, undefined, viewport)\n}\n","import type { VectorDrawContentPrimitiveProps } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { PixiVectorDrawContext } from '../vector'\nimport { getContentContainer, setLayoutSize, type PixiNode } from './pixi-node'\n\nexport type PixiVectorDrawNode = PixiNode & {\n __vectorGraphics?: PIXI.Graphics | undefined\n __vectorDrawContext?: PixiVectorDrawContext | undefined\n __drawDependencies?: unknown[] | undefined\n __hasDrawnVectorContent?: boolean | undefined\n}\n\nfunction shallowEqual(a?: unknown[], b?: unknown[]): boolean {\n if (!a || !b) return a === b\n if (a.length !== b.length) return false\n return a.every((val, i) => val === b[i])\n}\n\nfunction validateVectorDrawLayout(props: Partial<VectorDrawContentPrimitiveProps>): void {\n if (\n props.headless === false &&\n (typeof props.width !== 'number' || typeof props.height !== 'number')\n ) {\n throw new Error(\n 'VectorDrawContent requires explicit width and height props when headless=false'\n )\n }\n}\n\nfunction getVectorGraphics(node: PixiVectorDrawNode): PIXI.Graphics {\n if (!node.__vectorGraphics) {\n const graphics = new PIXI.Graphics()\n graphics.eventMode = 'none'\n getContentContainer(node).addChild(graphics)\n node.__vectorGraphics = graphics\n }\n return node.__vectorGraphics\n}\n\nfunction getVectorDrawContext(node: PixiVectorDrawNode): PixiVectorDrawContext {\n if (!node.__vectorDrawContext) {\n node.__vectorDrawContext = new PixiVectorDrawContext(getVectorGraphics(node))\n }\n return node.__vectorDrawContext\n}\n\nfunction updateVectorDrawLayout(\n node: PixiVectorDrawNode,\n props: Partial<VectorDrawContentPrimitiveProps>\n): void {\n if (props.headless ?? true) {\n setLayoutSize(node, 0.01, 0.01)\n return\n }\n\n setLayoutSize(\n node,\n typeof props.width === 'number' ? props.width : 0,\n typeof props.height === 'number' ? props.height : 0\n )\n}\n\nfunction drawVectorContent(\n node: PixiVectorDrawNode,\n props: Partial<VectorDrawContentPrimitiveProps>\n): void {\n if (!props.onDraw) return\n\n if (props.autoClear !== false) {\n getVectorGraphics(node).clear()\n }\n\n props.onDraw(getVectorDrawContext(node), props as VectorDrawContentPrimitiveProps)\n node.__drawDependencies = props.dependencies\n node.__hasDrawnVectorContent = true\n}\n\nexport function applyVectorDrawProps(\n node: PixiVectorDrawNode,\n prev: Record<string, unknown>,\n next: Record<string, unknown>\n): void {\n const props = next as Partial<VectorDrawContentPrimitiveProps>\n\n validateVectorDrawLayout(props)\n updateVectorDrawLayout(node, props)\n\n const depsChanged = !shallowEqual(node.__drawDependencies, props.dependencies)\n if (!node.__hasDrawnVectorContent || depsChanged) {\n drawVectorContent(node, props)\n }\n}\n","/**\n * PixiJS scheduler — provides frame/timer callbacks for the VDOM runtime.\n */\nimport * as PIXI from 'pixi.js'\n\n/**\n * Creates a scheduler backed by a PIXI.Ticker.\n * Provides requestAnimationFrame, onFrame, setTimeout, and setInterval.\n */\nexport function createPixiScheduler() {\n const ticker = new PIXI.Ticker()\n\n return {\n requestAnimationFrame(callback: (dt: number) => void) {\n const fn = (ticker: PIXI.Ticker) => {\n callback(ticker.deltaMS)\n ticker.remove(fn)\n }\n ticker.add(fn)\n return { cancel: () => ticker.remove(fn) }\n },\n onFrame(callback: (dt: number) => void) {\n const fn = (ticker: PIXI.Ticker) => callback(ticker.deltaMS)\n ticker.add(fn)\n return { cancel: () => ticker.remove(fn) }\n },\n setTimeout(callback: () => void, delay: number) {\n const id = window.setTimeout(callback, delay)\n return { cancel: () => window.clearTimeout(id) }\n },\n setInterval(callback: () => void, interval: number) {\n const id = window.setInterval(callback, interval)\n return { cancel: () => window.clearInterval(id) }\n },\n }\n}\n","/**\n * PixiJS HostAdapter — renderer adapter for @number10/jsx-core.\n *\n * Implements the HostAdapter contract using PixiJS APIs.\n * Rendering logic is delegated to focused applier modules in ./appliers/.\n *\n * @migration(audit:surface-access) Phase 7C — Pixi durchstich ✅\n */\nimport type {\n GestureProps,\n HostAdapter,\n HostContext,\n HostNode,\n HostParent,\n NodeType,\n Props,\n SurfaceContext,\n TooltipCallback,\n} from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { applyViewBackground } from './appliers/pixi-background'\nimport { applyBaseProps } from './appliers/pixi-base'\nimport { applyGestureProps, updateGestureHitArea } from './appliers/pixi-gesture'\nimport {\n asContainer,\n getContentContainer,\n getMeasuredSize,\n isDestroyed,\n isHostNodeContainer,\n isTextNode,\n setLayoutSize,\n type PixiNode,\n type PixiTextNode,\n} from './appliers/pixi-node'\nimport {\n applyParticlesProps,\n destroyPixiParticlesNode,\n initializePixiParticlesNode,\n isPixiParticlesNode,\n type PixiParticlesNode,\n} from './appliers/pixi-particles'\nimport { applyTextAndBackground, applyTextProps } from './appliers/pixi-text'\nimport {\n applyTooltipProps,\n cleanupTooltipProps,\n updateTooltipHitArea,\n} from './appliers/pixi-tooltip'\nimport { applyVectorDrawProps, type PixiVectorDrawNode } from './appliers/pixi-vector-draw'\nimport { createPixiScheduler } from './pixi-scheduler'\nimport { pixiTextureResolver, resolvePixiTexture } from './pixi-surface-adapter'\n\n// ---------------------------------------------------------------------------\n// Image/Sprite helper — creates or updates a PIXI.Sprite inside a PixiNode\n// ---------------------------------------------------------------------------\n\nfunction applyImageSpriteProps(pixiNode: PixiNode, props: Record<string, unknown>): void {\n const textureKey = (props.texture as string) ?? ''\n const frame = props.frame as string | number | undefined\n const sourceRect = props.sourceRect as { x: number; y: number; w: number; h: number } | undefined\n const content = getContentContainer(pixiNode)\n\n // Create or reuse sprite\n let sprite = pixiNode.__sprite\n if (!sprite) {\n sprite = new PIXI.Sprite(PIXI.Texture.WHITE)\n sprite.eventMode = 'none'\n content.addChild(sprite)\n pixiNode.__sprite = sprite\n }\n\n // Texture\n if (textureKey) {\n const tex = resolvePixiTexture(textureKey, frame, sourceRect) ?? PIXI.Texture.WHITE\n if (tex !== sprite.texture) {\n sprite.texture = tex\n }\n }\n\n // Tint\n const tint = props.tint as number | undefined\n if (tint !== undefined) {\n sprite.tint = tint\n }\n\n // Display size with fit mode\n const displayWidth = props.displayWidth as number | undefined\n const displayHeight = props.displayHeight as number | undefined\n const fit = (props.fit as string) ?? 'fill'\n\n if (typeof displayWidth === 'number' && displayWidth > 0) {\n sprite.width = displayWidth\n }\n if (typeof displayHeight === 'number' && displayHeight > 0) {\n sprite.height = displayHeight\n }\n\n // fit: scale to cover or contain if we have texture dimensions\n if (sprite.texture.width > 0 && sprite.texture.height > 0) {\n if (\n fit === 'contain' &&\n typeof displayWidth === 'number' &&\n typeof displayHeight === 'number'\n ) {\n const scale = Math.min(\n displayWidth / sprite.texture.width,\n displayHeight / sprite.texture.height\n )\n sprite.width = sprite.texture.width * scale\n sprite.height = sprite.texture.height * scale\n } else if (\n fit === 'cover' &&\n typeof displayWidth === 'number' &&\n typeof displayHeight === 'number'\n ) {\n const scale = Math.max(\n displayWidth / sprite.texture.width,\n displayHeight / sprite.texture.height\n )\n sprite.width = sprite.texture.width * scale\n sprite.height = sprite.texture.height * scale\n }\n }\n\n // Origin / anchor\n const originX = props.originX as number | undefined\n const originY = props.originY as number | undefined\n if (originX !== undefined || originY !== undefined) {\n sprite.anchor.set(originX ?? sprite.anchor.x, originY ?? sprite.anchor.y)\n }\n\n // Update layout size from rendered sprite dimensions so the layout system\n // correctly accounts for auto-sized images (no explicit width/height props).\n const layoutWidth = props.width as number | undefined\n const layoutHeight = props.height as number | undefined\n setLayoutSize(pixiNode, layoutWidth ?? sprite.width, layoutHeight ?? sprite.height)\n}\n\nfunction applyNineSliceProps(pixiNode: PixiNode, props: Record<string, unknown>): void {\n const textureKey = (props.texture as string) ?? ''\n const frame = props.frame as string | number | undefined\n const content = getContentContainer(pixiNode)\n\n let sprite = pixiNode.__nineSliceSprite\n const resolvedTexture = resolvePixiTexture(textureKey, frame) ?? PIXI.Texture.WHITE\n const width =\n typeof props.width === 'number'\n ? props.width\n : (pixiNode.__layoutBox?.width ?? sprite?.width ?? resolvedTexture.width)\n const height =\n typeof props.height === 'number'\n ? props.height\n : (pixiNode.__layoutBox?.height ?? sprite?.height ?? resolvedTexture.height)\n\n if (!sprite) {\n sprite = new PIXI.NineSliceSprite({\n texture: resolvedTexture,\n leftWidth: Math.max(0, (props.leftWidth as number | undefined) ?? 0),\n rightWidth: Math.max(0, (props.rightWidth as number | undefined) ?? 0),\n topHeight: Math.max(0, (props.topHeight as number | undefined) ?? 0),\n bottomHeight: Math.max(0, (props.bottomHeight as number | undefined) ?? 0),\n width: Math.max(0, width),\n height: Math.max(0, height),\n anchor: 0,\n })\n sprite.eventMode = 'none'\n content.addChild(sprite)\n pixiNode.__nineSliceSprite = sprite\n }\n\n if (sprite.texture !== resolvedTexture) {\n sprite.texture = resolvedTexture\n }\n\n sprite.leftWidth = Math.max(0, (props.leftWidth as number | undefined) ?? sprite.leftWidth)\n sprite.rightWidth = Math.max(0, (props.rightWidth as number | undefined) ?? sprite.rightWidth)\n sprite.topHeight = Math.max(0, (props.topHeight as number | undefined) ?? sprite.topHeight)\n sprite.bottomHeight = Math.max(\n 0,\n (props.bottomHeight as number | undefined) ?? sprite.bottomHeight\n )\n sprite.tint = (props.tint as number | undefined) ?? 0xffffff\n sprite.anchor.set(\n (props.originX as number | undefined) ?? 0,\n (props.originY as number | undefined) ?? 0\n )\n sprite.setSize(Math.max(0, width), Math.max(0, height))\n\n const isHeadless = props.headless === true\n pixiNode.__getLayoutSize = () => {\n if (isHeadless) {\n return { width: 0.01, height: 0.01 }\n }\n return {\n width: pixiNode.__layoutBox?.width ?? sprite.width,\n height: pixiNode.__layoutBox?.height ?? sprite.height,\n }\n }\n\n setLayoutSize(pixiNode, width, height)\n}\n\n// ---------------------------------------------------------------------------\n// PixiHostAdapter\n// ---------------------------------------------------------------------------\n\nexport class PixiHostAdapter implements HostAdapter {\n create(type: NodeType, props: Props, ctx: HostContext): HostNode {\n if (type === 'particles' || type === 'Particles') {\n const container = installLayoutNodeApi(new PIXI.Container() as PixiParticlesNode, {\n exposeChildrenList: false,\n })\n container.sortableChildren = true\n container.__pixiHostNode = true\n container.__effectContainer = new PIXI.Container()\n container.__effectContainer.eventMode = 'none'\n container.__surfaceContext = ctx as SurfaceContext\n ;(container.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n container.addChild(container.__effectContainer)\n initializePixiParticlesNode(container)\n this.patch(type, container as HostNode, {}, props, ctx)\n return container as HostNode\n }\n\n if (type === 'text' || type === 'Text') {\n const node = new PIXI.Container() as PixiTextNode\n node.sortableChildren = true\n node.__pixiHostNode = true\n node.__effectContainer = new PIXI.Container()\n node.__effectContainer.eventMode = 'none'\n node.__textDisplay = new PIXI.Text()\n node.__textDisplay.eventMode = 'none'\n node.__surfaceContext = ctx as SurfaceContext\n ;(node.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n installLayoutNodeApi(node, { exposeChildrenList: false })\n node.addChild(node.__effectContainer)\n getContentContainer(node).addChild(node.__textDisplay)\n this.patch(type, node, {}, props, ctx)\n return node\n }\n\n if (type === 'vectorDraw') {\n const container = installLayoutNodeApi(new PIXI.Container() as PixiVectorDrawNode, {\n exposeChildrenList: false,\n })\n container.sortableChildren = true\n container.__pixiHostNode = true\n container.__effectContainer = new PIXI.Container()\n container.__effectContainer.eventMode = 'none'\n container.__surfaceContext = ctx as SurfaceContext\n ;(container.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n container.addChild(container.__effectContainer)\n this.patch(type, container as HostNode, {}, props, ctx)\n return container as HostNode\n }\n\n // Image / Sprite nodes get a PIXI.Sprite inside the layout container\n if (type === 'image' || type === 'Image' || type === 'sprite' || type === 'Sprite') {\n const container = installLayoutNodeApi(new PIXI.Container() as PixiNode, {\n exposeChildrenList: false,\n })\n container.sortableChildren = true\n container.__pixiHostNode = true\n container.__effectContainer = new PIXI.Container()\n container.__effectContainer.eventMode = 'none'\n container.__surfaceContext = ctx as SurfaceContext\n ;(container.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n container.addChild(container.__effectContainer)\n this.patch(type, container as HostNode, {}, props, ctx)\n return container as HostNode\n }\n\n if (type === 'nineslice' || type === 'NineSlice') {\n const container = installLayoutNodeApi(new PIXI.Container() as PixiNode, {\n exposeChildrenList: false,\n })\n container.sortableChildren = true\n container.__pixiHostNode = true\n container.__effectContainer = new PIXI.Container()\n container.__effectContainer.eventMode = 'none'\n container.__surfaceContext = ctx as SurfaceContext\n ;(container.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n container.addChild(container.__effectContainer)\n this.patch(type, container as HostNode, {}, props, ctx)\n return container as HostNode\n }\n\n const container = installLayoutNodeApi(new PIXI.Container() as PixiNode)\n container.sortableChildren = true\n container.__pixiHostNode = true\n container.__effectContainer = new PIXI.Container()\n container.__effectContainer.eventMode = 'none'\n container.__surfaceContext = ctx as SurfaceContext\n ;(container.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n container.addChild(container.__effectContainer)\n this.patch(type, container as HostNode, {}, props, ctx)\n return container as HostNode\n }\n\n patch(type: NodeType, node: HostNode, prev: Props, next: Props, ctx: HostContext): void {\n const pixiNode = asContainer(node) as PixiNode\n pixiNode.__surfaceContext = ctx as SurfaceContext\n if (pixiNode.__effectContainer) {\n ;(pixiNode.__effectContainer as PixiNode).__surfaceContext = ctx as SurfaceContext\n }\n const p = next as Record<string, unknown>\n const prevProps = prev as Record<string, unknown>\n\n pixiNode.__layoutProps =\n type === 'particles' || type === 'Particles'\n ? sanitizeParticlesLayoutProps(next as Record<string, unknown>)\n : (next as Partial<Record<string, unknown>>)\n\n applyBaseProps(pixiNode, p)\n\n if (hasGestureProps(prevProps) || hasGestureProps(p)) {\n const app = this.getPixiApp(node, ctx)\n if (app) {\n applyGestureProps(\n asContainer(node),\n app,\n p as unknown as GestureProps<PIXI.FederatedPointerEvent>\n )\n }\n }\n\n if (hasTooltipProps(prevProps) || hasTooltipProps(p)) {\n const app = this.getPixiApp(node, ctx)\n if (app) {\n applyTooltipProps(asContainer(node), app, p.onTooltip as TooltipCallback | undefined)\n }\n }\n\n if (type === 'particles' || type === 'Particles') {\n applyParticlesProps(pixiNode as PixiParticlesNode, p)\n setLayoutSize(pixiNode, 0.01, 0.01)\n applyDepth(pixiNode, prevProps, p)\n return\n }\n\n if (type === 'text' || type === 'Text') {\n applyTextProps(pixiNode as PixiTextNode, p)\n applyDepth(pixiNode, prevProps, p)\n return\n }\n\n if (type === 'vectorDraw') {\n applyVectorDrawProps(pixiNode as PixiVectorDrawNode, prevProps, p)\n return\n }\n\n if (type === 'nineslice' || type === 'NineSlice') {\n applyNineSliceProps(pixiNode, p)\n return\n }\n\n // Image / Sprite nodes — create or update the PIXI.Sprite\n if (type === 'image' || type === 'Image' || type === 'sprite' || type === 'Sprite') {\n applyImageSpriteProps(pixiNode, p)\n // Still apply background for any fallback styling\n applyViewBackground(pixiNode, p)\n return\n }\n\n const explicitWidth = typeof p.width === 'number' ? p.width : undefined\n const explicitHeight = typeof p.height === 'number' ? p.height : undefined\n setLayoutSize(\n pixiNode,\n explicitWidth ?? pixiNode.__layoutBox?.width ?? 0,\n explicitHeight ?? pixiNode.__layoutBox?.height ?? 0\n )\n applyViewBackground(pixiNode, p)\n\n // Depth / z-ordering — Pixi v8+ supports zIndex natively.\n // Set on the node so it takes effect even before the node has a parent\n // (e.g. during initial create before append).\n const newDepth = p.depth as number | undefined\n const prevDepth = prevProps.depth as number | undefined\n if (typeof newDepth === 'number' && newDepth !== prevDepth) {\n pixiNode.zIndex = newDepth\n // Also reorder in parent if already attached\n const parent = pixiNode.parent\n if (parent && parent.sortableChildren) {\n parent.sortChildren()\n }\n }\n }\n\n append(parent: HostParent, child: HostNode, _ctx: HostContext): void {\n const childNode = asContainer(child) as PixiNode\n childNode.__layoutParent = asContainer(parent) as PixiNode\n getContentContainer(parent).addChild(childNode)\n }\n\n insertBefore(\n parent: HostParent,\n child: HostNode,\n before: HostNode | null,\n _ctx: HostContext\n ): void {\n const p = getContentContainer(parent)\n const childNode = asContainer(child) as PixiNode\n childNode.__layoutParent = asContainer(parent) as PixiNode\n if (before) {\n const idx = p.getChildIndex(asContainer(before))\n p.addChildAt(childNode, idx)\n } else {\n p.addChild(childNode)\n }\n }\n\n remove(_parent: HostParent, child: HostNode, _ctx: HostContext): void {\n const c = asContainer(child) as PixiNode\n cleanupTooltipProps(c)\n if (isPixiParticlesNode(c)) {\n destroyPixiParticlesNode(c)\n }\n c.__layoutParent = undefined\n if (c.parent) {\n c.parent.removeChild(c)\n }\n c.destroy({ children: true })\n }\n\n getChildren(parent: HostParent): readonly HostNode[] {\n return getContentContainer(parent).children.filter(isHostNodeContainer) as readonly HostNode[]\n }\n\n isAlive(target: HostNode | HostParent): boolean {\n return !isDestroyed(target)\n }\n\n // -----------------------------------------------------------------------\n // Layout operations\n // -----------------------------------------------------------------------\n\n setPosition(node: HostNode, x: number, y: number): void {\n const c = asContainer(node)\n c.x = x\n c.y = y\n }\n\n setSize(node: HostNode, width: number, height: number): void {\n const pixiNode = asContainer(node) as PixiNode\n const w = Number.isFinite(width) ? width : (pixiNode.__layoutBox?.width ?? 0)\n const h = Number.isFinite(height) ? height : (pixiNode.__layoutBox?.height ?? 0)\n setLayoutSize(pixiNode, w, h)\n if (pixiNode.__nineSliceSprite) {\n pixiNode.__nineSliceSprite.setSize(Math.max(0, w), Math.max(0, h))\n }\n }\n\n setDepth(node: HostNode, depth: number): void {\n const c = asContainer(node)\n if (c.parent) {\n c.parent.setChildIndex(c, Math.min(depth, c.parent.children.length - 1))\n }\n }\n\n setVisible(node: HostNode, visible: boolean): void {\n asContainer(node).visible = visible\n }\n\n setAlpha(node: HostNode, alpha: number): void {\n asContainer(node).alpha = alpha\n }\n\n getSurfaceContext(target: HostNode | HostParent): SurfaceContext {\n let current: PIXI.Container | null = asContainer(target as HostNode)\n while (current) {\n const ctx = (current as { __surfaceContext?: SurfaceContext }).__surfaceContext\n if (ctx) return ctx\n current = current.parent\n }\n return {\n viewport: { width: 800, height: 600 },\n scheduler: createPixiScheduler(),\n capabilities: new Set(['view', 'gesture', 'particles', 'nineslice']),\n textureLoader: pixiTextureResolver,\n }\n }\n\n /**\n * Get the PIXI Application from a node's surface context.\n */\n private getPixiApp(node: HostNode, ctx?: HostContext): PIXI.Application | undefined {\n const raw = ctx?.raw\n if (raw instanceof PIXI.Application) {\n return raw\n }\n\n const surfaceContext = this.getSurfaceContext(node)\n return surfaceContext.raw as PIXI.Application | undefined\n }\n}\n\nfunction applyDepth(\n pixiNode: PixiNode,\n prevProps: Record<string, unknown>,\n nextProps: Record<string, unknown>\n): void {\n const newDepth = nextProps.depth as number | undefined\n const prevDepth = prevProps.depth as number | undefined\n if (typeof newDepth === 'number' && newDepth !== prevDepth) {\n pixiNode.zIndex = newDepth\n if (pixiNode.parent?.sortableChildren) {\n pixiNode.parent.sortChildren()\n }\n }\n}\n\nfunction sanitizeParticlesLayoutProps(\n props: Record<string, unknown>\n): Partial<Record<string, unknown>> {\n const next = { ...props }\n delete next.direction\n delete next.emissionAngle\n return next\n}\n\n// ---------------------------------------------------------------------------\n// Layout API installer (lives here to avoid circular deps with appliers)\n// ---------------------------------------------------------------------------\n\n/**\n * Install layout API on a Pixi node.\n * Adds __layoutBox, __getLayoutSize, list (getter), setPosition, setSize.\n */\nfunction installLayoutNodeApi<T extends PixiNode>(\n node: T,\n options: { exposeChildrenList?: boolean } = {}\n): T {\n node.__layoutBox = node.__layoutBox ?? { width: 0, height: 0 }\n installLayoutSizeAccessors(node)\n node.__getLayoutSize = () => getMeasuredSize(node)\n if (options.exposeChildrenList !== false && !isTextNode(node) && !('list' in node)) {\n Object.defineProperty(node, 'list', {\n configurable: true,\n enumerable: false,\n get() {\n return getContentContainer(node).children.filter(isHostNodeContainer)\n },\n })\n }\n node.setPosition = (x: number, y: number) => {\n node.x = x\n node.y = y\n if (hasGestureProps((node.__layoutProps ?? {}) as Record<string, unknown>)) {\n const app = node.__surfaceContext?.raw\n if (app instanceof PIXI.Application) {\n updateGestureHitArea(node, app)\n }\n }\n if (hasTooltipProps((node.__layoutProps ?? {}) as Record<string, unknown>)) {\n updateTooltipHitArea(node)\n }\n return node\n }\n node.setSize = (width: number, height: number) => {\n setLayoutSize(node, width, height)\n if (isTextNode(node) && width > 0) {\n applyTextAndBackground(node, {\n ...(node.__layoutProps ?? {}),\n style: node.__textStyleSource ?? {},\n width,\n })\n } else if (!isTextNode(node)) {\n applyViewBackground(node, node.__layoutProps ?? {})\n }\n if (hasTooltipProps((node.__layoutProps ?? {}) as Record<string, unknown>)) {\n updateTooltipHitArea(node)\n }\n return node\n }\n return node\n}\n\nfunction installLayoutSizeAccessors(node: PixiNode): void {\n if (node.__layoutAccessorsInstalled) {\n return\n }\n\n node.__layoutAccessorsInstalled = true\n\n const widthDescriptor = findSizeDescriptor(node, 'width')\n const heightDescriptor = findSizeDescriptor(node, 'height')\n\n Object.defineProperty(node, 'width', {\n configurable: true,\n enumerable: true,\n get() {\n return readLayoutDimension(node, 'width', widthDescriptor?.get)\n },\n set(value: number) {\n writeLayoutDimension(node, 'width', value)\n },\n })\n\n Object.defineProperty(node, 'height', {\n configurable: true,\n enumerable: true,\n get() {\n return readLayoutDimension(node, 'height', heightDescriptor?.get)\n },\n set(value: number) {\n writeLayoutDimension(node, 'height', value)\n },\n })\n}\n\nfunction findSizeDescriptor(\n node: PIXI.Container,\n key: 'width' | 'height'\n): PropertyDescriptor | undefined {\n let current: object | null = Object.getPrototypeOf(node)\n while (current) {\n const descriptor = Object.getOwnPropertyDescriptor(current, key)\n if (descriptor) {\n return descriptor\n }\n current = Object.getPrototypeOf(current)\n }\n return undefined\n}\n\nfunction readLayoutDimension(\n node: PixiNode,\n key: 'width' | 'height',\n fallbackGetter?: (this: PIXI.Container) => number\n): number {\n const cached = node.__cachedLayoutSize?.[key]\n if (cached !== undefined && Number.isFinite(cached)) {\n return cached\n }\n\n if (isTextNode(node)) {\n return getMeasuredSize(node)[key]\n }\n\n const layoutValue = node.__layoutBox?.[key]\n if (layoutValue !== undefined && Number.isFinite(layoutValue)) {\n return layoutValue\n }\n\n return fallbackGetter?.call(node) ?? 0\n}\n\nfunction writeLayoutDimension(node: PixiNode, key: 'width' | 'height', value: number): void {\n const nextValue = Number.isFinite(value) ? value : 0\n const current = node.__layoutBox ?? { width: 0, height: 0 }\n\n node.__layoutBox =\n key === 'width'\n ? { width: nextValue, height: current.height }\n : { width: current.width, height: nextValue }\n\n if (node.__cachedLayoutSize) {\n node.__cachedLayoutSize =\n key === 'width'\n ? { width: nextValue, height: node.__cachedLayoutSize.height }\n : { width: node.__cachedLayoutSize.width, height: nextValue }\n }\n}\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\n/**\n * Check if a props object contains any gesture-related properties.\n */\nfunction hasGestureProps(props: Record<string, unknown>): boolean {\n return (\n props.enableGestures !== undefined ||\n props.onTouch !== undefined ||\n props.onTouchOutside !== undefined ||\n props.onTouchMove !== undefined ||\n props.onDoubleTap !== undefined ||\n props.onLongPress !== undefined ||\n props.onWheel !== undefined\n )\n}\n\nfunction hasTooltipProps(props: Record<string, unknown>): boolean {\n return props.onTooltip !== undefined\n}\n","import { registerPortableDefaults } from '@number10/jsx-components'\nimport type { PortablePartialTheme } from '@number10/jsx-components'\nimport type {\n GestureProps,\n HostContext,\n LayoutContainer,\n Props,\n SurfaceTarget,\n VDOMOperations,\n VNode,\n VNodeLike,\n} from '@number10/jsx-core'\nimport { getThemedProps } from '@number10/jsx-core'\nimport type { MountProps } from '@number10/jsx-core/vdom'\nimport { createVDOMRuntime } from '@number10/jsx-core/vdom'\nimport * as PIXI from 'pixi.js'\nimport { applyGestureProps, updateGestureHitArea } from './appliers/pixi-gesture'\nimport { updateTooltipHitArea } from './appliers/pixi-tooltip'\nimport { registerPixiMountStatsProvider } from './pixi-debug-snapshot'\nimport { PixiHostAdapter } from './pixi-host-adapter'\nimport { PixiSurfaceAdapter } from './pixi-surface-adapter'\n\nregisterPortableDefaults()\n\ntype PixiPartialTheme = PortablePartialTheme\n\nfunction hasGestureProps(\n props: Record<string, unknown> | undefined\n): props is Record<string, unknown> & GestureProps {\n if (!props) return false\n\n return !!(\n props.enableGestures !== undefined ||\n props.onTouch !== undefined ||\n props.onTouchOutside !== undefined ||\n props.onTouchMove !== undefined ||\n props.onDoubleTap !== undefined ||\n props.onLongPress !== undefined ||\n props.onWheel !== undefined\n )\n}\n\nfunction hasTooltipProps(props: Record<string, unknown> | undefined): boolean {\n return props?.onTooltip !== undefined\n}\n\nfunction createDummyNode(parent: unknown) {\n const node = new PIXI.Container()\n const surfaceContext = (parent as { __surfaceContext?: unknown }).__surfaceContext\n if (surfaceContext) {\n ;(node as { __surfaceContext?: unknown }).__surfaceContext = surfaceContext\n }\n return node\n}\n\nfunction wrapRootVNode(\n type: string | ((props: unknown) => VNodeLike),\n props: MountProps & Record<string, unknown>\n): VNode {\n const { width, height, disableAutoSize = false, key: _key, ...componentProps } = props\n\n if (disableAutoSize) {\n return {\n type,\n props: { ...componentProps, width, height },\n children: [],\n }\n }\n\n const componentVNode: VNode = {\n type,\n props: { ...componentProps, width, height },\n children: [],\n }\n\n return {\n type: 'View',\n props: { width, height },\n children: [componentVNode],\n }\n}\n\nconst hostAdapter = new PixiHostAdapter()\nconst pixiSurfaceAdapter = new PixiSurfaceAdapter()\n\nexport const pixiVDOMRuntime = createVDOMRuntime(\n {\n hostAdapter,\n surfaceAdapter: pixiSurfaceAdapter,\n },\n {\n createDummyNode,\n getHostContext: (parent: unknown): HostContext => {\n const ctx = hostAdapter.getSurfaceContext?.(parent)\n if (!ctx) {\n throw new Error('Pixi HostAdapter.getSurfaceContext() is required for core VDOM runtime')\n }\n return ctx\n },\n resolveProps: (type: string, theme: PixiPartialTheme | undefined, props: Props) =>\n getThemedProps(type, theme, props as Record<string, unknown>) as {\n props: Props\n nestedTheme: PixiPartialTheme\n },\n attachSurfaceContext: (node: unknown, context: HostContext) => {\n ;(node as { __surfaceContext?: unknown }).__surfaceContext = context\n },\n afterLayout: (container: LayoutContainer, parent: unknown) => {\n const ctx = hostAdapter.getSurfaceContext(container as never)\n const app =\n ctx.raw instanceof PIXI.Application\n ? ctx.raw\n : hostAdapter.getSurfaceContext(parent as never).raw\n\n const pixiContainer = container as unknown as PIXI.Container & {\n __layoutProps?: Record<string, unknown>\n }\n\n // Tooltip hit area — always needs update after layout, no app required\n if (hasTooltipProps(pixiContainer.__layoutProps)) {\n updateTooltipHitArea(pixiContainer)\n }\n\n if (app instanceof PIXI.Application) {\n if (hasGestureProps(pixiContainer.__layoutProps)) {\n applyGestureProps(\n pixiContainer,\n app,\n pixiContainer.__layoutProps as GestureProps<PIXI.FederatedPointerEvent>\n )\n }\n updateGestureHitArea(pixiContainer, app)\n }\n },\n getParentContentSize: (parent: unknown) => {\n const layoutParent = parent as {\n __getLayoutSize?: () => { width: number; height: number }\n }\n\n if (typeof layoutParent.__getLayoutSize === 'function') {\n return layoutParent.__getLayoutSize()\n }\n\n const ctx = hostAdapter.getSurfaceContext?.(parent)\n return ctx?.viewport\n },\n wrapRootVNode,\n extractSurfaceTarget: (parent: unknown) => parent as SurfaceTarget,\n isSurfaceTarget: (target: unknown) => target instanceof PIXI.Application,\n }\n)\n\n// Register Pixi's VDOM operations on the adapter for portable components\npixiSurfaceAdapter.setVDOM({\n mount: pixiVDOMRuntime.mount as VDOMOperations['mount'],\n patchVNode: pixiVDOMRuntime.patchVNode as VDOMOperations['patchVNode'],\n unmount: pixiVDOMRuntime.unmount as VDOMOperations['unmount'],\n})\n\nregisterPixiMountStatsProvider(() => pixiVDOMRuntime.getMountStats())\n","/** @jsxImportSource .. */\nimport type { VNodeLike } from '@number10/jsx-core'\nimport type { ParticlesProps } from '../appliers/pixi-particles'\n\nexport type { ParticlesHandle, ParticlesProps, ParticleValue } from '../appliers/pixi-particles'\n\nexport function Particles(props: ParticlesProps): VNodeLike {\n return <particles {...props} />\n}\n","/**\n * PixiJS mount helper backed by the shared @number10/jsx-core VDOM runtime.\n *\n * Unlike the initial durchstich, this no longer walks the VNode tree itself.\n * Pixi and Phaser now share the same mount/patch/unmount implementation;\n * only adapters and bridge callbacks differ.\n */\nimport type { VNodeLike } from '@number10/jsx-core'\nimport * as PIXI from 'pixi.js'\nimport { pixiVDOMRuntime } from './pixi-vdom-runtime'\n\ntype InferComponentProps<C> = C extends (props: infer P) => VNodeLike ? P : never\n\ninterface MountPixiJSXBaseOptions {\n target: HTMLElement\n backgroundColor?: string\n width?: number\n height?: number\n}\n\nexport interface MountPixiJSXOptions<P = Record<string, unknown>> {\n component: (props: P) => VNodeLike\n target: MountPixiJSXBaseOptions['target']\n backgroundColor?: MountPixiJSXBaseOptions['backgroundColor']\n width?: MountPixiJSXBaseOptions['width']\n height?: MountPixiJSXBaseOptions['height']\n /** Custom props passed to the component (merged with viewport dimensions) */\n props?: P\n}\n\nexport function mountPixiJSX<C extends (props: never) => VNodeLike>(\n options: MountPixiJSXBaseOptions & {\n component: C\n props?: InferComponentProps<C>\n }\n): Promise<void>\n\nexport async function mountPixiJSX<P = Record<string, unknown>>(\n options: MountPixiJSXOptions<P>\n): Promise<void> {\n const target = options.target\n const viewW = options.width ?? target.clientWidth\n const viewH = options.height ?? target.clientHeight\n\n // Pixi v8: use static factory for reliable initialization\n const app = new PIXI.Application()\n await app.init({\n width: viewW,\n height: viewH,\n backgroundColor: options.backgroundColor ?? '#2a2a2a',\n antialias: true,\n autoDensity: true,\n hello: true,\n })\n target.appendChild(app.canvas)\n // Ensure canvas fills the target element\n app.canvas.style.width = '100%'\n app.canvas.style.height = '100%'\n app.canvas.style.display = 'block'\n\n pixiVDOMRuntime.mountJSX(app, options.component as (props: unknown) => VNodeLike, {\n width: viewW,\n height: viewH,\n ...(options.props ?? {}),\n })\n}\n","/**\n * PixiJS scene backgrounds — decorative background layers for PIXI.Application.\n *\n * Mirrors @number10/jsx-phaser's scene-backgrounds.ts but uses native PIXI APIs\n * (Graphics, TilingSprite, Container, Ticker) instead of Phaser game objects.\n *\n * Backgrounds are added to `app.stage` at a configurable zIndex (default -1)\n * so they render behind the VDOM overlay layer.\n */\nimport * as PIXI from 'pixi.js'\n\n// ---------------------------------------------------------------------------\n// Types (mirror Phaser package for API compatibility)\n// ---------------------------------------------------------------------------\n\n/** Built-in decorative background variants. */\nexport type SceneBackgroundType = 'grid' | 'logo' | 'gradient' | 'particles' | 'none'\n\n/** Optional animation applied to a scene background after it is created. */\nexport type BackgroundAnimation = 'lemniscate' | 'wave' | 'pulse' | 'rotate' | 'static'\n\n/** Configuration for {@link addPixiSceneBackground}. */\nexport interface BackgroundConfig {\n /** Background variant to create. Use `'none'` to disable background creation. */\n type: SceneBackgroundType\n\n /** Animation preset applied to the created background. */\n animation?: BackgroundAnimation\n\n /** Background opacity, usually between `0` and `1`. */\n opacity?: number\n\n /** Primary color as a numeric color, for example `0x4a9eff`. */\n color?: number\n\n /** Secondary color used by gradient backgrounds. */\n colorSecondary?: number\n\n /** Texture key or URL used by the logo background. */\n logoUrl?: string\n\n /** zIndex for the background container on app.stage. Default -1 (behind VDOM). */\n zIndex?: number\n}\n\n/** Handle returned by {@link addPixiSceneBackground}. */\nexport interface SceneBackgroundHandle {\n /** Root container for the background. */\n container: PIXI.Container\n\n /** Stops animations, destroys display objects, and removes from stage. */\n destroy: () => void\n\n /** Manually resize the background to match a viewport size. */\n resize: (width: number, height: number) => void\n}\n\n// ---------------------------------------------------------------------------\n// Defaults\n// ---------------------------------------------------------------------------\n\n/** Default scene background used when no explicit config is provided. */\nexport const DEFAULT_BACKGROUND: BackgroundConfig = {\n type: 'grid',\n animation: 'lemniscate',\n opacity: 0.15,\n color: 0x4a9eff,\n}\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\nfunction colorToCss(color: number): string {\n return `#${color.toString(16).padStart(6, '0')}`\n}\n\nfunction colorToPixi(color: number): PIXI.ColorSource {\n return color as PIXI.ColorSource\n}\n\n// ---------------------------------------------------------------------------\n// Grid background\n// ---------------------------------------------------------------------------\n\nfunction createGridBackground(\n container: PIXI.Container,\n width: number,\n height: number,\n config: BackgroundConfig\n): { ticker: (dt: number) => void } {\n const gridSize = 40\n const color = config.color ?? 0x4a9eff\n const opacity = config.opacity ?? 0.15\n\n // Create a canvas texture for the grid cell pattern\n const canvas = document.createElement('canvas')\n canvas.width = gridSize\n canvas.height = gridSize\n const ctx = canvas.getContext('2d')\n if (!ctx) throw new Error('Failed to create 2D canvas context for grid background')\n ctx.globalAlpha = opacity\n ctx.strokeStyle = colorToCss(color)\n ctx.lineWidth = 1\n ctx.beginPath()\n ctx.moveTo(0.5, 0)\n ctx.lineTo(0.5, gridSize)\n ctx.moveTo(0, 0.5)\n ctx.lineTo(gridSize, 0.5)\n ctx.stroke()\n\n const texture = PIXI.Texture.from(canvas)\n const tile = new PIXI.TilingSprite({\n texture,\n width,\n height,\n })\n tile.eventMode = 'none'\n container.addChild(tile)\n\n let offsetX = 0\n let offsetY = 0\n\n const ticker = (dt: number) => {\n const speed = 0.02 * dt\n offsetX = (offsetX + speed) % gridSize\n offsetY = (offsetY + speed * 0.5) % gridSize\n tile.tilePosition.set(offsetX, offsetY)\n }\n\n return { ticker }\n}\n\n// ---------------------------------------------------------------------------\n// Logo background\n// ---------------------------------------------------------------------------\n\nfunction createLogoBackground(\n container: PIXI.Container,\n width: number,\n height: number,\n config: BackgroundConfig\n): void {\n const opacity = config.opacity ?? 0.1\n const color = config.color ?? 0x4a9eff\n\n // Draw a Phaser-style \"P\" logo with PIXI.Graphics\n const gfx = new PIXI.Graphics()\n gfx.eventMode = 'none'\n\n const size = 100\n const r = size / 2\n\n // Outer ring (270° arc — open at bottom-right)\n gfx.arc(0, 0, r, -Math.PI * 0.75, Math.PI * 0.75)\n gfx.stroke({ width: 6, color, alpha: opacity })\n\n // Inner ring\n gfx.arc(0, 0, r * 0.65, -Math.PI * 0.75, Math.PI * 0.75)\n gfx.stroke({ width: 4, color, alpha: opacity * 0.6 })\n\n // Vertical bar (stem of the \"P\")\n gfx.rect(-r * 0.15, -r, r * 0.3, r * 2)\n gfx.fill({ color, alpha: opacity })\n\n // Horizontal bar (top of the \"P\")\n gfx.rect(-r * 0.15, -r, r * 0.8, r * 0.25)\n gfx.fill({ color, alpha: opacity * 0.8 })\n\n gfx.x = width / 2\n gfx.y = height / 2\n container.addChild(gfx)\n}\n\n// ---------------------------------------------------------------------------\n// Gradient background\n// ---------------------------------------------------------------------------\n\nfunction createGradientBackground(\n container: PIXI.Container,\n width: number,\n height: number,\n config: BackgroundConfig\n): { resize: (w: number, h: number) => void } {\n const color1 = config.color ?? 0x4a9eff\n const color2 = config.colorSecondary ?? 0x6b4aff\n const opacity = config.opacity ?? 0.2\n\n const gfx = new PIXI.Graphics()\n gfx.eventMode = 'none'\n drawGradient(gfx, width, height, color1, color2, opacity)\n container.addChild(gfx)\n\n const resize = (w: number, h: number) => {\n gfx.clear()\n drawGradient(gfx, w, h, color1, color2, opacity)\n }\n\n return { resize }\n}\n\nfunction drawGradient(\n gfx: PIXI.Graphics,\n w: number,\n h: number,\n color1: number,\n color2: number,\n opacity: number\n): void {\n // Draw vertical gradient using multiple filled rectangles\n const steps = 20\n for (let i = 0; i < steps; i += 1) {\n const t = i / (steps - 1)\n const r1 = (color1 >> 16) & 0xff\n const g1 = (color1 >> 8) & 0xff\n const b1 = color1 & 0xff\n const r2 = (color2 >> 16) & 0xff\n const g2 = (color2 >> 8) & 0xff\n const b2 = color2 & 0xff\n const r = Math.round(r1 + (r2 - r1) * t)\n const g = Math.round(g1 + (g2 - g1) * t)\n const b = Math.round(b1 + (b2 - b1) * t)\n const bandH = h / steps\n gfx.rect(0, i * bandH, w, bandH + 1)\n gfx.fill({ color: (r << 16) | (g << 8) | b, alpha: opacity })\n }\n}\n\n// ---------------------------------------------------------------------------\n// Particles background\n// ---------------------------------------------------------------------------\n\nfunction createParticlesBackground(\n container: PIXI.Container,\n width: number,\n height: number,\n config: BackgroundConfig\n): { ticker: (dt: number) => void } {\n const particleCount = 20\n const color = config.color ?? 0x4a9eff\n const opacity = config.opacity ?? 0.1\n\n const particles: {\n gfx: PIXI.Graphics\n x: number\n y: number\n baseX: number\n baseY: number\n phase: number\n speed: number\n radius: number\n }[] = []\n\n for (let i = 0; i < particleCount; i += 1) {\n const radius = 2 + Math.random() * 4\n const gfx = new PIXI.Graphics()\n gfx.eventMode = 'none'\n gfx.circle(0, 0, radius)\n gfx.fill({ color: colorToPixi(color), alpha: opacity })\n\n const baseX = Math.random() * width\n const baseY = Math.random() * height\n gfx.x = baseX\n gfx.y = baseY\n container.addChild(gfx)\n\n particles.push({\n gfx,\n x: baseX,\n y: baseY,\n baseX,\n baseY,\n phase: Math.random() * Math.PI * 2,\n speed: 0.3 + Math.random() * 0.7,\n radius,\n })\n }\n\n const ticker = (dt: number) => {\n for (const p of particles) {\n p.phase += p.speed * 0.003 * dt\n const offsetX = Math.sin(p.phase * 1.3) * 30\n const offsetY = Math.cos(p.phase * 0.7) * 30\n p.gfx.x = p.baseX + offsetX\n p.gfx.y = p.baseY + offsetY\n p.gfx.alpha = opacity * (0.8 + 0.4 * Math.sin(p.phase * 2))\n }\n }\n\n return { ticker }\n}\n\n// ---------------------------------------------------------------------------\n// Animation tickers\n// ---------------------------------------------------------------------------\n\ntype TickerCallback = (dt: number) => void\n\nfunction createLemniscateTicker(\n target: PIXI.Container,\n onUpdate: (x: number, y: number) => void\n): TickerCallback {\n const amplitude = 30\n let t = 0\n return (dt: number) => {\n t += dt * 0.0008\n const offsetX = amplitude * Math.cos(t)\n const offsetY = (amplitude * Math.sin(2 * t)) / 2\n onUpdate(offsetX, offsetY)\n }\n}\n\nfunction createWaveTicker(onUpdate: (x: number, y: number) => void): TickerCallback {\n let t = 0\n return (dt: number) => {\n t += dt * 0.01\n const offset = Math.sin(t) * 40\n onUpdate(offset, 0)\n }\n}\n\nfunction createPulseTicker(target: PIXI.Container): TickerCallback {\n const baseScale = target.scale.x\n let t = 0\n return (dt: number) => {\n t += dt * 0.003\n const s = baseScale * (1 + 0.1 * Math.sin(t))\n target.scale.set(s)\n }\n}\n\nfunction createRotateTicker(target: PIXI.Container): TickerCallback {\n return (dt: number) => {\n target.rotation += dt * 0.0003\n }\n}\n\n// ---------------------------------------------------------------------------\n// Main API\n// ---------------------------------------------------------------------------\n\n/**\n * Adds a decorative background layer to a PIXI.Application stage.\n *\n * The background is added to `app.stage` at a configurable zIndex (default -1)\n * so it renders behind the VDOM overlay. All display objects, ticker callbacks,\n * and generated textures are owned by this helper and cleaned up on `destroy()`.\n *\n * @param app - PIXI.Application that receives the background.\n * @param config - Background type, colors, opacity, animation, and optional logo texture.\n * @returns A handle for manual resize and cleanup, or `null` when `config.type` is `'none'`.\n *\n * @example\n * ```ts\n * const handle = addPixiSceneBackground(app, {\n * type: 'grid',\n * animation: 'wave',\n * color: 0x4a9eff,\n * opacity: 0.12,\n * })\n *\n * // Later, if the background should be removed:\n * handle?.destroy()\n * ```\n */\nexport function addPixiSceneBackground(\n app: PIXI.Application,\n config: BackgroundConfig = DEFAULT_BACKGROUND\n): SceneBackgroundHandle | null {\n if (config.type === 'none') return null\n\n const container = new PIXI.Container()\n container.zIndex = config.zIndex ?? -1\n container.eventMode = 'none'\n app.stage.addChild(container)\n\n // Enable z-index sorting on stage if not already enabled\n if (!app.stage.sortableChildren) {\n app.stage.sortableChildren = true\n }\n\n const width = app.renderer.width\n const height = app.renderer.height\n const tickerCallbacks: TickerCallback[] = []\n let resizeFn: ((w: number, h: number) => void) | undefined\n let destroyed = false\n\n // Build background layer\n switch (config.type) {\n case 'grid': {\n const result = createGridBackground(container, width, height, config)\n tickerCallbacks.push(result.ticker)\n resizeFn = (w, h) => {\n const tile = container.children[0] as PIXI.TilingSprite | undefined\n if (tile instanceof PIXI.TilingSprite) {\n tile.width = w\n tile.height = h\n }\n }\n break\n }\n case 'logo':\n createLogoBackground(container, width, height, config)\n resizeFn = (w, h) => {\n if (container.children[0]) {\n container.children[0].x = w / 2\n container.children[0].y = h / 2\n }\n }\n break\n case 'gradient': {\n const result = createGradientBackground(container, width, height, config)\n resizeFn = result.resize\n break\n }\n case 'particles': {\n const result = createParticlesBackground(container, width, height, config)\n tickerCallbacks.push(result.ticker)\n break\n }\n }\n\n // Apply animation ticker\n if (config.animation && config.animation !== 'static') {\n const target = container.children[0] as PIXI.Container | undefined\n if (target instanceof PIXI.Container) {\n let animTicker: TickerCallback | undefined\n switch (config.animation) {\n case 'lemniscate':\n animTicker = createLemniscateTicker(target, (x, y) => {\n target.x = (container.x || 0) + x\n target.y = (container.y || 0) + y\n })\n break\n case 'wave':\n animTicker = createWaveTicker((x, y) => {\n target.x = (container.x || 0) + x\n target.y = (container.y || 0) + y\n })\n break\n case 'pulse':\n animTicker = createPulseTicker(target)\n break\n case 'rotate':\n animTicker = createRotateTicker(target)\n break\n }\n if (animTicker) {\n tickerCallbacks.push(animTicker)\n }\n }\n }\n\n // Register combined ticker\n const onTick = (ticker: PIXI.Ticker) => {\n if (destroyed) return\n for (const cb of tickerCallbacks) {\n cb(ticker.deltaMS)\n }\n }\n PIXI.Ticker.shared.add(onTick)\n\n const cleanup = () => {\n if (destroyed) return\n destroyed = true\n PIXI.Ticker.shared.remove(onTick)\n container.destroy({ children: true })\n }\n\n return {\n container,\n destroy: cleanup,\n resize: (w, h) => {\n if (!destroyed && resizeFn) resizeFn(w, h)\n },\n }\n}\n","/**\n * @number10/jsx-pixi — PixiJS renderer adapter for @number10/jsx-core.\n *\n * Minimal through-stitch (Durchstich) implementation validating that\n * the Core contracts (HostAdapter, SurfaceAdapter, SurfaceContext)\n * are small enough for a second renderer.\n *\n * @migration(audit:surface-access) Phase 7C — Pixi durchstich ✅\n */\n\nimport './jsx-types'\n\n// Re-export entire Core API (same pattern as @number10/jsx-phaser)\n// Core's jsx-types.ts already registers portable intrinsic elements.\nexport * from '@number10/jsx-core'\n\n// Re-export portable components from @number10/jsx-components\n// P1 — Primitives\nexport { Image, type ImageProps } from '@number10/jsx-components'\nexport { Sprite, Text, VectorDrawContent, View } from '@number10/jsx-components/primitives'\n// P1 — Basic portable components (no renderer-specific integration needed)\nexport {\n Accordion,\n ActivityIndicator,\n Badge,\n Button,\n Checkbox,\n Divider,\n formatBadgeCount,\n getBadgeText,\n Joystick,\n NineSlice,\n NineSliceButton,\n NumberInput,\n PalettePicker,\n ProgressBar,\n ProgressView,\n RadioButton,\n RadioGroup,\n RatingBar,\n ScrollSlider,\n SegmentedControl,\n Tag,\n TextInput,\n Toggle,\n Toolbar,\n TransformOriginView,\n useOverlayPresence,\n WrapText,\n type AccordionProps,\n type ActivityIndicatorProps,\n type ActivityIndicatorSize,\n type ActivityIndicatorVariant,\n type BadgeProps,\n type BadgeSize,\n type BadgeTone,\n type BadgeVariant,\n type ButtonProps,\n type ButtonSize,\n type ButtonVariant,\n type CheckboxProps,\n type DividerProps,\n type JoystickProps,\n type NineSliceButtonProps,\n type NineSliceProps,\n type NumberInputProps,\n type OverlayPresencePhase,\n type OverlayPresenceState,\n type PalettePickerProps,\n type ProgressBarProps,\n type ProgressViewProps,\n type RadioButtonProps,\n type RadioGroupProps,\n type SegmentedControlProps,\n type TextInputProps,\n type ToggleProps,\n type WrapTextProps,\n} from '@number10/jsx-components'\n\n// Wire Pixi-specific layout callbacks (overflow clip) into core engine\nimport './pixi-layout-bridge'\n\n// Wire Pixi effect runner (Core tween-based) into core effect system\nimport './pixi-effects-bridge'\nimport { pixiVDOMRuntime } from './pixi-vdom-runtime'\n\n// Pixi-specific adapters\nexport { PixiHostAdapter } from './pixi-host-adapter'\nexport { getPixiTextureCount, PixiSurfaceAdapter } from './pixi-surface-adapter'\nexport { pixiVDOMRuntime } from './pixi-vdom-runtime'\nexport { PixiVectorDrawContext } from './vector'\nexport {\n Particles,\n type ParticlesHandle,\n type ParticlesProps,\n type ParticleValue,\n} from './custom/Particles'\nexport const {\n getHostAdapter,\n getMountStats,\n getSurfaceAdapter,\n mount,\n normalizeVNodeLike,\n patchVNode,\n remountAll,\n setHostAdapter,\n setSurfaceAdapter,\n unmount,\n unmountJSX,\n} = pixiVDOMRuntime\n\n// Mount helper (Pixi equivalent of PhaserJSXPlugin)\nexport { mountPixiJSX } from './mount-pixi'\nexport type { MountPixiJSXOptions } from './mount-pixi'\n\n// Scene backgrounds (Pixi equivalent of Phaser addSceneBackground)\nexport { addPixiSceneBackground, DEFAULT_BACKGROUND } from './pixi-scene-backgrounds'\n\n// Debug snapshot hook (Pixi counterpart to usePhaserDebugSnapshot)\nexport { collectPixiSnapshot, usePixiDebugSnapshot } from './pixi-debug-snapshot'\nexport type {\n BackgroundAnimation,\n BackgroundConfig,\n SceneBackgroundHandle,\n SceneBackgroundType,\n} from './pixi-scene-backgrounds'\n\n// JSX runtime re-exports (for jsxImportSource: @number10/jsx-pixi)\nexport { jsxDEV } from '@number10/jsx-core/jsx-dev-runtime'\nexport { Fragment, jsx, jsxs } from '@number10/jsx-core/jsx-runtime'\n"],"mappings":"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"}