@nice2dev/ui-graphics 1.0.0 → 1.0.2

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 (146) hide show
  1. package/CHANGELOG.md +147 -1
  2. package/dist/cjs/animation/AnimatedPerson.js +2 -2
  3. package/dist/cjs/animation/AnimatedPerson.js.map +1 -1
  4. package/dist/cjs/animation/AnimationEditor.js +11 -6
  5. package/dist/cjs/animation/AnimationEditor.js.map +1 -1
  6. package/dist/cjs/animation/Audience.js +4 -3
  7. package/dist/cjs/animation/Audience.js.map +1 -1
  8. package/dist/cjs/animation/BodyRenderer.js +5 -2
  9. package/dist/cjs/animation/BodyRenderer.js.map +1 -1
  10. package/dist/cjs/animation/rig/RigPlayer.js +2 -2
  11. package/dist/cjs/animation/rig/RigPlayer.js.map +1 -1
  12. package/dist/cjs/animation/rig/RiggedBody.js +2 -2
  13. package/dist/cjs/animation/rig/RiggedBody.js.map +1 -1
  14. package/dist/cjs/animation/shapes/heads.js +4 -1
  15. package/dist/cjs/animation/shapes/heads.js.map +1 -1
  16. package/dist/cjs/core/LocalUI.js +1 -1
  17. package/dist/cjs/core/NiceBrushEngine.js +446 -0
  18. package/dist/cjs/core/NiceBrushEngine.js.map +1 -0
  19. package/dist/cjs/core/yjsCollaboration.js +292 -0
  20. package/dist/cjs/core/yjsCollaboration.js.map +1 -0
  21. package/dist/cjs/font/NiceFontEditor.js +89 -85
  22. package/dist/cjs/font/NiceFontEditor.js.map +1 -1
  23. package/dist/cjs/font/fontFormatUtils.js +468 -0
  24. package/dist/cjs/font/fontFormatUtils.js.map +1 -0
  25. package/dist/cjs/game/GameAsset2dEditor.js +38 -24
  26. package/dist/cjs/game/GameAsset2dEditor.js.map +1 -1
  27. package/dist/cjs/icon/NiceIconEditor.js +218 -133
  28. package/dist/cjs/icon/NiceIconEditor.js.map +1 -1
  29. package/dist/cjs/index.js +83 -1
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/nice2dev-ui-graphics.css +1 -1
  32. package/dist/cjs/photo/NiceAITools.js +446 -0
  33. package/dist/cjs/photo/NiceAITools.js.map +1 -0
  34. package/dist/cjs/photo/PhotoEditor.js +2 -2
  35. package/dist/cjs/photo/PhotoEditor.js.map +1 -1
  36. package/dist/cjs/pixel/PixelEditor.js +16 -5
  37. package/dist/cjs/pixel/PixelEditor.js.map +1 -1
  38. package/dist/cjs/pixel/PixelEditor.module.css.js +1 -1
  39. package/dist/cjs/pixel/PixelEditorMenuBar.js +2 -1
  40. package/dist/cjs/pixel/PixelEditorMenuBar.js.map +1 -1
  41. package/dist/cjs/pixel/PixelEditorRightPanel.js +3 -2
  42. package/dist/cjs/pixel/PixelEditorRightPanel.js.map +1 -1
  43. package/dist/cjs/pixel/PixelEditorTimeline.js +2 -1
  44. package/dist/cjs/pixel/PixelEditorTimeline.js.map +1 -1
  45. package/dist/cjs/pixel/PixelEditorToolbar.js +2 -1
  46. package/dist/cjs/pixel/PixelEditorToolbar.js.map +1 -1
  47. package/dist/cjs/pixel/SpriteGeneratorPanel.js +224 -0
  48. package/dist/cjs/pixel/SpriteGeneratorPanel.js.map +1 -0
  49. package/dist/cjs/pixel/animalGeneratorPresets.js +654 -0
  50. package/dist/cjs/pixel/animalGeneratorPresets.js.map +1 -0
  51. package/dist/cjs/pixel/buildingGeneratorPresets.js +573 -0
  52. package/dist/cjs/pixel/buildingGeneratorPresets.js.map +1 -0
  53. package/dist/cjs/pixel/characterGeneratorPresets.js +563 -0
  54. package/dist/cjs/pixel/characterGeneratorPresets.js.map +1 -0
  55. package/dist/cjs/pixel/spriteGeneratorCore.js +297 -0
  56. package/dist/cjs/pixel/spriteGeneratorCore.js.map +1 -0
  57. package/dist/cjs/pixel/usePixelEditor.js +16 -0
  58. package/dist/cjs/pixel/usePixelEditor.js.map +1 -1
  59. package/dist/cjs/texture/Nice3DTexturePainter.js +123 -79
  60. package/dist/cjs/texture/Nice3DTexturePainter.js.map +1 -1
  61. package/dist/cjs/ui/NiceUIDesigner.js +175 -62
  62. package/dist/cjs/ui/NiceUIDesigner.js.map +1 -1
  63. package/dist/cjs/ui/dist/index.js +50089 -0
  64. package/dist/cjs/ui/dist/index.js.map +1 -0
  65. package/dist/cjs/vector/NiceSvgToCode.js +427 -0
  66. package/dist/cjs/vector/NiceSvgToCode.js.map +1 -0
  67. package/dist/cjs/vector/VectorEditor.js +7 -3
  68. package/dist/cjs/vector/VectorEditor.js.map +1 -1
  69. package/dist/cjs/vector/VectorEditor.module.css.js +1 -1
  70. package/dist/cjs/vector/VectorEditorMenuBar.js +5 -1
  71. package/dist/cjs/vector/VectorEditorMenuBar.js.map +1 -1
  72. package/dist/cjs/vector/VectorEditorRightPanel.js +23 -19
  73. package/dist/cjs/vector/VectorEditorRightPanel.js.map +1 -1
  74. package/dist/esm/animation/AnimatedPerson.js +2 -2
  75. package/dist/esm/animation/AnimatedPerson.js.map +1 -1
  76. package/dist/esm/animation/AnimationEditor.js +12 -8
  77. package/dist/esm/animation/AnimationEditor.js.map +1 -1
  78. package/dist/esm/animation/Audience.js +5 -4
  79. package/dist/esm/animation/Audience.js.map +1 -1
  80. package/dist/esm/animation/BodyRenderer.js +4 -2
  81. package/dist/esm/animation/BodyRenderer.js.map +1 -1
  82. package/dist/esm/animation/rig/RigPlayer.js +4 -4
  83. package/dist/esm/animation/rig/RigPlayer.js.map +1 -1
  84. package/dist/esm/animation/rig/RiggedBody.js +2 -2
  85. package/dist/esm/animation/rig/RiggedBody.js.map +1 -1
  86. package/dist/esm/animation/shapes/heads.js +4 -2
  87. package/dist/esm/animation/shapes/heads.js.map +1 -1
  88. package/dist/esm/core/LocalUI.js +4 -4
  89. package/dist/esm/core/NiceBrushEngine.js +442 -0
  90. package/dist/esm/core/NiceBrushEngine.js.map +1 -0
  91. package/dist/esm/core/yjsCollaboration.js +283 -0
  92. package/dist/esm/core/yjsCollaboration.js.map +1 -0
  93. package/dist/esm/font/NiceFontEditor.js +89 -85
  94. package/dist/esm/font/NiceFontEditor.js.map +1 -1
  95. package/dist/esm/font/fontFormatUtils.js +461 -0
  96. package/dist/esm/font/fontFormatUtils.js.map +1 -0
  97. package/dist/esm/game/GameAsset2dEditor.js +38 -25
  98. package/dist/esm/game/GameAsset2dEditor.js.map +1 -1
  99. package/dist/esm/icon/NiceIconEditor.js +218 -133
  100. package/dist/esm/icon/NiceIconEditor.js.map +1 -1
  101. package/dist/esm/index.js +21 -11
  102. package/dist/esm/index.js.map +1 -1
  103. package/dist/esm/nice2dev-ui-graphics.css +1 -1
  104. package/dist/esm/photo/NiceAITools.js +439 -0
  105. package/dist/esm/photo/NiceAITools.js.map +1 -0
  106. package/dist/esm/photo/PhotoEditor.js +2 -2
  107. package/dist/esm/photo/PhotoEditor.js.map +1 -1
  108. package/dist/esm/pixel/PixelEditor.js +16 -6
  109. package/dist/esm/pixel/PixelEditor.js.map +1 -1
  110. package/dist/esm/pixel/PixelEditor.module.css.js +1 -1
  111. package/dist/esm/pixel/PixelEditorMenuBar.js +2 -1
  112. package/dist/esm/pixel/PixelEditorMenuBar.js.map +1 -1
  113. package/dist/esm/pixel/PixelEditorRightPanel.js +3 -2
  114. package/dist/esm/pixel/PixelEditorRightPanel.js.map +1 -1
  115. package/dist/esm/pixel/PixelEditorTimeline.js +2 -1
  116. package/dist/esm/pixel/PixelEditorTimeline.js.map +1 -1
  117. package/dist/esm/pixel/PixelEditorToolbar.js +2 -1
  118. package/dist/esm/pixel/PixelEditorToolbar.js.map +1 -1
  119. package/dist/esm/pixel/SpriteGeneratorPanel.js +222 -0
  120. package/dist/esm/pixel/SpriteGeneratorPanel.js.map +1 -0
  121. package/dist/esm/pixel/animalGeneratorPresets.js +647 -0
  122. package/dist/esm/pixel/animalGeneratorPresets.js.map +1 -0
  123. package/dist/esm/pixel/buildingGeneratorPresets.js +566 -0
  124. package/dist/esm/pixel/buildingGeneratorPresets.js.map +1 -0
  125. package/dist/esm/pixel/characterGeneratorPresets.js +556 -0
  126. package/dist/esm/pixel/characterGeneratorPresets.js.map +1 -0
  127. package/dist/esm/pixel/spriteGeneratorCore.js +279 -0
  128. package/dist/esm/pixel/spriteGeneratorCore.js.map +1 -0
  129. package/dist/esm/pixel/usePixelEditor.js +16 -0
  130. package/dist/esm/pixel/usePixelEditor.js.map +1 -1
  131. package/dist/esm/texture/Nice3DTexturePainter.js +123 -79
  132. package/dist/esm/texture/Nice3DTexturePainter.js.map +1 -1
  133. package/dist/esm/ui/NiceUIDesigner.js +175 -62
  134. package/dist/esm/ui/NiceUIDesigner.js.map +1 -1
  135. package/dist/esm/ui/dist/index.js +49686 -0
  136. package/dist/esm/ui/dist/index.js.map +1 -0
  137. package/dist/esm/vector/NiceSvgToCode.js +423 -0
  138. package/dist/esm/vector/NiceSvgToCode.js.map +1 -0
  139. package/dist/esm/vector/VectorEditor.js +7 -4
  140. package/dist/esm/vector/VectorEditor.js.map +1 -1
  141. package/dist/esm/vector/VectorEditor.module.css.js +1 -1
  142. package/dist/esm/vector/VectorEditorMenuBar.js +5 -1
  143. package/dist/esm/vector/VectorEditorMenuBar.js.map +1 -1
  144. package/dist/esm/vector/VectorEditorRightPanel.js +23 -19
  145. package/dist/esm/vector/VectorEditorRightPanel.js.map +1 -1
  146. package/package.json +3 -4
@@ -4,13 +4,14 @@ var jsxRuntime = require('react/jsx-runtime');
4
4
  var React = require('react');
5
5
  var GameAsset2dEditor_module = require('./GameAsset2dEditor.module.css.js');
6
6
  var useGameAssetEditor = require('./useGameAssetEditor.js');
7
+ var index = require('../ui/dist/index.js');
7
8
 
8
9
  /* ────────────────────────────────────────────────────────────────
9
10
  MENU BAR
10
11
  ──────────────────────────────────────────────────────────────── */
11
12
  const MenuBar = ({ api }) => {
12
13
  const fileInputRef = React.useRef(null);
13
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuBar, children: [jsxRuntime.jsx("h3", { children: "\uD83C\uDFAE Game Asset Editor" }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuGroup, children: [jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => api.newProject('New Project'), children: "\uD83D\uDCC4 New" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "\uD83D\uDCC2 Open" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: api.saveProject, children: "\uD83D\uDCBE Save" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuGroup, children: [jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: api.undo, disabled: !api.canUndo, children: "\u21A9 Undo" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: api.redo, disabled: !api.canRedo, children: "\u21AA Redo" })] }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: ".json", style: { display: 'none' }, onChange: e => {
14
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuBar, children: [jsxRuntime.jsx("h3", { children: "\uD83C\uDFAE Game Asset Editor" }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuGroup, children: [jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => api.newProject('New Project'), children: "\uD83D\uDCC4 New" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "\uD83D\uDCC2 Open" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: api.saveProject, children: "\uD83D\uDCBE Save" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.menuGroup, children: [jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: api.undo, disabled: !api.canUndo, children: "\u21A9 Undo" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: api.redo, disabled: !api.canRedo, children: "\u21AA Redo" })] }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: ".json", style: { display: 'none' }, onChange: e => {
14
15
  var _a;
15
16
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
16
17
  if (file)
@@ -28,7 +29,7 @@ const ModeTabs = ({ api }) => {
28
29
  { id: 'animation', label: 'Animation', icon: '🎬' },
29
30
  { id: 'effects', label: 'Effects', icon: '✨' },
30
31
  ];
31
- return (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.modeTabs, children: modes.map(mode => (jsxRuntime.jsxs("button", { className: `${GameAsset2dEditor_module.modeTab} ${api.editorState.mode === mode.id ? GameAsset2dEditor_module.active : ''}`, onClick: () => api.setMode(mode.id), children: [mode.icon, " ", mode.label] }, mode.id))) }));
32
+ return (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.modeTabs, children: modes.map(mode => (jsxRuntime.jsxs(index.NiceButton, { className: `${GameAsset2dEditor_module.modeTab} ${api.editorState.mode === mode.id ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.mode === mode.id ? 'primary' : 'ghost', onClick: () => api.setMode(mode.id), children: [mode.icon, " ", mode.label] }, mode.id))) }));
32
33
  };
33
34
  /* ────────────────────────────────────────────────────────────────
34
35
  TILE MAP TOOLBAR
@@ -43,7 +44,7 @@ const TileMapToolbar = ({ api }) => {
43
44
  { id: 'line', icon: '╱', label: 'Line' },
44
45
  { id: 'eyedropper', icon: '💧', label: 'Eyedropper' },
45
46
  ];
46
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolbar, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.toolGroup, children: tools.map(tool => (jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.tileMapTool === tool.id ? GameAsset2dEditor_module.active : ''}`, onClick: () => api.setTileMapTool(tool.id), title: tool.label, children: tool.icon }, tool.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.showGrid ? GameAsset2dEditor_module.active : ''}`, onClick: api.toggleGrid, title: "Toggle Grid", children: "\u229E" }), jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.showCollision ? GameAsset2dEditor_module.active : ''}`, onClick: api.toggleCollision, title: "Show Collision", children: "\u25C7" }), jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.snapToGrid ? GameAsset2dEditor_module.active : ''}`, onClick: api.toggleSnap, title: "Snap to Grid", children: "\u22A1" })] }));
47
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolbar, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.toolGroup, children: tools.map(tool => (jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.tileMapTool === tool.id ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.tileMapTool === tool.id ? 'primary' : 'ghost', size: "sm", onClick: () => api.setTileMapTool(tool.id), title: tool.label, children: tool.icon }, tool.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.showGrid ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.showGrid ? 'primary' : 'ghost', size: "sm", onClick: api.toggleGrid, title: "Toggle Grid", children: "\u229E" }), jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.showCollision ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.showCollision ? 'primary' : 'ghost', size: "sm", onClick: api.toggleCollision, title: "Show Collision", children: "\u25C7" }), jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.snapToGrid ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.snapToGrid ? 'primary' : 'ghost', size: "sm", onClick: api.toggleSnap, title: "Snap to Grid", children: "\u22A1" })] }));
47
48
  };
48
49
  /* ────────────────────────────────────────────────────────────────
49
50
  SPRITE SHEET TOOLBAR
@@ -51,14 +52,14 @@ const TileMapToolbar = ({ api }) => {
51
52
  const SpriteSheetToolbar = ({ api }) => {
52
53
  const [sliceWidth, setSliceWidth] = React.useState(16);
53
54
  const [sliceHeight, setSliceHeight] = React.useState(16);
54
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolbar, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolGroup, children: [jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.spriteSheetTool === 'select' ? GameAsset2dEditor_module.active : ''}`, onClick: () => api.setSpriteSheetTool('select'), title: "Select", children: "\u2B1A" }), jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.spriteSheetTool === 'slice' ? GameAsset2dEditor_module.active : ''}`, onClick: () => api.setSpriteSheetTool('slice'), title: "Manual Slice", children: "\u2702" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsxs("label", { style: { fontSize: 11, color: '#8892a8' }, children: ["Frame size:", jsxRuntime.jsx("input", { type: "number", value: sliceWidth, onChange: e => setSliceWidth(+e.target.value), style: { width: 40, margin: '0 4px' }, className: GameAsset2dEditor_module.panelInput }), "\u00D7", jsxRuntime.jsx("input", { type: "number", value: sliceHeight, onChange: e => setSliceHeight(+e.target.value), style: { width: 40, marginLeft: 4 }, className: GameAsset2dEditor_module.panelInput })] }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnSecondary, onClick: () => api.autoSlice(sliceWidth, sliceHeight), style: { marginLeft: 8 }, children: "Auto Slice" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnSecondary, onClick: api.detectSprites, style: { marginLeft: 4 }, children: "Detect Sprites" })] }));
55
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolbar, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.toolGroup, children: [jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.spriteSheetTool === 'select' ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.spriteSheetTool === 'select' ? 'primary' : 'ghost', size: "sm", onClick: () => api.setSpriteSheetTool('select'), title: "Select", children: "\u2B1A" }), jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.toolBtn} ${api.editorState.spriteSheetTool === 'slice' ? GameAsset2dEditor_module.active : ''}`, variant: api.editorState.spriteSheetTool === 'slice' ? 'primary' : 'ghost', size: "sm", onClick: () => api.setSpriteSheetTool('slice'), title: "Manual Slice", children: "\u2702" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.spacer }), jsxRuntime.jsxs("label", { style: { fontSize: 11, color: '#8892a8' }, children: ["Frame size:", jsxRuntime.jsx(index.NiceNumberInput, { value: sliceWidth, onChange: val => setSliceWidth(val !== null && val !== void 0 ? val : 16), style: { width: 40, margin: '0 4px' }, className: GameAsset2dEditor_module.panelInput }), "\u00D7", jsxRuntime.jsx(index.NiceNumberInput, { value: sliceHeight, onChange: val => setSliceHeight(val !== null && val !== void 0 ? val : 16), style: { width: 40, marginLeft: 4 }, className: GameAsset2dEditor_module.panelInput })] }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnSecondary, variant: "ghost", onClick: () => api.autoSlice(sliceWidth, sliceHeight), style: { marginLeft: 8 }, children: "Auto Slice" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnSecondary, variant: "ghost", onClick: api.detectSprites, style: { marginLeft: 4 }, children: "Detect Sprites" })] }));
55
56
  };
56
57
  /* ────────────────────────────────────────────────────────────────
57
58
  TILE PALETTE (LEFT PANEL)
58
59
  ──────────────────────────────────────────────────────────────── */
59
60
  const TilePalette = ({ api }) => {
60
61
  const fileInputRef = React.useRef(null);
61
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Tiles" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.tileSets.length === 0 ? (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No tiles yet" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnSecondary, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Tiles" })] })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.tilePalette, children: api.project.tileSets.map(tile => (jsxRuntime.jsx("div", { className: `${GameAsset2dEditor_module.tileItem} ${api.editorState.selectedTileId === tile.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectTile(tile.id), title: tile.name, children: jsxRuntime.jsx("img", { src: tile.thumbnail, alt: tile.name }) }, tile.id))) })) }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
62
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Tiles" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.tileSets.length === 0 ? (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No tiles yet" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnSecondary, variant: "ghost", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Tiles" })] })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.tilePalette, children: api.project.tileSets.map(tile => (jsxRuntime.jsx("div", { className: `${GameAsset2dEditor_module.tileItem} ${api.editorState.selectedTileId === tile.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectTile(tile.id), title: tile.name, children: jsxRuntime.jsx("img", { src: tile.thumbnail, alt: tile.name }) }, tile.id))) })) }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
62
63
  var _a;
63
64
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
64
65
  if (file)
@@ -71,10 +72,10 @@ const TilePalette = ({ api }) => {
71
72
  ──────────────────────────────────────────────────────────────── */
72
73
  const LayersPanel = ({ api }) => {
73
74
  const activeMap = api.project.tileMaps.find(m => m.id === api.editorState.activeTileMapId);
74
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Layers" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: api.addLayer, disabled: !activeMap, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: activeMap ? (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.layersList, children: [...activeMap.layers].reverse().map(layer => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeLayerId === layer.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectLayer(layer.id), children: [jsxRuntime.jsx("button", { className: `${GameAsset2dEditor_module.layerVisibility} ${!layer.visible ? GameAsset2dEditor_module.hidden : ''}`, onClick: e => {
75
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Layers" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: api.addLayer, disabled: !activeMap, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: activeMap ? (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.layersList, children: [...activeMap.layers].reverse().map(layer => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeLayerId === layer.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectLayer(layer.id), children: [jsxRuntime.jsx(index.NiceButton, { className: `${GameAsset2dEditor_module.layerVisibility} ${!layer.visible ? GameAsset2dEditor_module.hidden : ''}`, variant: "ghost", size: "sm", onClick: e => {
75
76
  e.stopPropagation();
76
77
  api.toggleLayerVisibility(layer.id);
77
- }, children: layer.visible ? '👁' : '○' }), jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: layer.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [Math.round(layer.opacity * 100), "%"] })] }, layer.id))) })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No tile map selected" }) })) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Maps" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => api.createTileMap('New Map', 32, 32), children: "+ New" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.tileMaps.map(map => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeTileMapId === map.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectTileMap(map.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: map.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [map.width, "\u00D7", map.height] })] }, map.id))) })] }));
78
+ }, children: layer.visible ? '👁' : '○' }), jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: layer.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [Math.round(layer.opacity * 100), "%"] })] }, layer.id))) })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No tile map selected" }) })) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Maps" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => api.createTileMap('New Map', 32, 32), children: "+ New" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.tileMaps.map(map => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeTileMapId === map.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectTileMap(map.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: map.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [map.width, "\u00D7", map.height] })] }, map.id))) })] }));
78
79
  };
79
80
  /* ────────────────────────────────────────────────────────────────
80
81
  TILE MAP CANVAS
@@ -162,7 +163,7 @@ const TileMapCanvas = ({ api }) => {
162
163
  if (isDragging && (api.editorState.tileMapTool === 'brush' || api.editorState.tileMapTool === 'eraser')) {
163
164
  handleCanvasClick(e);
164
165
  }
165
- } })) : (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Create or select a tile map to start editing" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnPrimary, onClick: () => api.createTileMap('New Map', 32, 32), children: "Create Tile Map" })] })) }));
166
+ } })) : (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Create or select a tile map to start editing" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnPrimary, variant: "primary", onClick: () => api.createTileMap('New Map', 32, 32), children: "Create Tile Map" })] })) }));
166
167
  };
167
168
  /* ────────────────────────────────────────────────────────────────
168
169
  SPRITE SHEET CANVAS
@@ -230,7 +231,7 @@ const SpriteSheetCanvas = ({ api }) => {
230
231
  }, [activeSheet, api]);
231
232
  return (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.viewport, children: activeSheet ? (jsxRuntime.jsx("canvas", { ref: canvasRef, className: GameAsset2dEditor_module.viewportCanvas, style: {
232
233
  transform: `translate(-50%, -50%) scale(${api.editorState.zoom})`,
233
- }, onClick: handleFrameClick })) : (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Import a sprite sheet to start" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnPrimary, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Sprite Sheet" }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
234
+ }, onClick: handleFrameClick })) : (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.emptyState, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Import a sprite sheet to start" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnPrimary, variant: "primary", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Sprite Sheet" }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
234
235
  var _a;
235
236
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
236
237
  if (file)
@@ -243,7 +244,7 @@ const SpriteSheetCanvas = ({ api }) => {
243
244
  ──────────────────────────────────────────────────────────────── */
244
245
  const SpriteSheetsList = ({ api }) => {
245
246
  const fileInputRef = React.useRef(null);
246
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Sprite Sheets" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Import" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.spriteSheets.length === 0 ? (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No sprite sheets" }) })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.layersList, children: api.project.spriteSheets.map(sheet => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeSpriteSheetId === sheet.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectSpriteSheet(sheet.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: sheet.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [sheet.frames.length, " frames"] })] }, sheet.id))) })) }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
247
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Sprite Sheets" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Import" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: api.project.spriteSheets.length === 0 ? (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "No sprite sheets" }) })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.layersList, children: api.project.spriteSheets.map(sheet => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeSpriteSheetId === sheet.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectSpriteSheet(sheet.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: sheet.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [sheet.frames.length, " frames"] })] }, sheet.id))) })) }), jsxRuntime.jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
247
248
  var _a;
248
249
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
249
250
  if (file)
@@ -264,12 +265,13 @@ const FramesPanel = ({ api }) => {
264
265
  setAnimName('');
265
266
  }
266
267
  }, [animName, api]);
267
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsxs("span", { children: ["Frames (", (_a = activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.length) !== null && _a !== void 0 ? _a : 0, ")"] }) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, style: { maxHeight: 200 }, children: activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.map(frame => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.selectedFrameIds.includes(frame.id) ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectFrames([frame.id]), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: frame.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [frame.width, "\u00D7", frame.height] })] }, frame.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Animations" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [api.editorState.selectedFrameIds.length > 0 && (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx("input", { type: "text", className: GameAsset2dEditor_module.panelInput, placeholder: "Animation name...", value: animName, onChange: e => setAnimName(e.target.value) }), jsxRuntime.jsxs("button", { className: GameAsset2dEditor_module.btnPrimary, onClick: createAnimationFromSelection, style: { marginTop: 8, width: '100%' }, disabled: !animName, children: ["Create from ", api.editorState.selectedFrameIds.length, " frames"] })] })), activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.animations.map(anim => (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: anim.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [anim.frameIds.length, "f"] }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.effectRemove, onClick: () => api.removeAnimation(anim.id), children: "\u00D7" })] }, anim.id)))] })] }));
268
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsxs("span", { children: ["Frames (", (_a = activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.length) !== null && _a !== void 0 ? _a : 0, ")"] }) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, style: { maxHeight: 200 }, children: activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.map(frame => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.selectedFrameIds.includes(frame.id) ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectFrames([frame.id]), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: frame.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [frame.width, "\u00D7", frame.height] })] }, frame.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Animations" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [api.editorState.selectedFrameIds.length > 0 && (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx(index.NiceTextInput, { className: GameAsset2dEditor_module.panelInput, placeholder: "Animation name...", value: animName, onChange: val => setAnimName(val) }), jsxRuntime.jsxs(index.NiceButton, { className: GameAsset2dEditor_module.btnPrimary, variant: "primary", onClick: createAnimationFromSelection, style: { marginTop: 8, width: '100%' }, disabled: !animName, children: ["Create from ", api.editorState.selectedFrameIds.length, " frames"] })] })), activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.animations.map(anim => (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: anim.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [anim.frameIds.length, "f"] }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeAnimation(anim.id), children: "\u00D7" })] }, anim.id)))] })] }));
268
269
  };
269
270
  /* ────────────────────────────────────────────────────────────────
270
271
  ANIMATION STATE MACHINE
271
272
  ──────────────────────────────────────────────────────────────── */
272
273
  const AnimationStateMachineView = ({ api }) => {
274
+ var _a;
273
275
  const [newStateName, setNewStateName] = React.useState('');
274
276
  const activeSM = api.project.stateMachines.find(sm => sm.id === api.editorState.activeStateMachineId);
275
277
  // Get all animations from all sprite sheets
@@ -282,12 +284,18 @@ const AnimationStateMachineView = ({ api }) => {
282
284
  }
283
285
  return result;
284
286
  }, [api.project.spriteSheets]);
285
- return (jsxRuntime.jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "State Machines" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => api.createStateMachine('New State Machine'), children: "+ New" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, style: { maxHeight: 150 }, children: api.project.stateMachines.map(sm => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeStateMachineId === sm.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectStateMachine(sm.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: sm.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [sm.states.length, " states"] })] }, sm.id))) }), activeSM && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "States" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx("input", { type: "text", className: GameAsset2dEditor_module.panelInput, placeholder: "State name...", value: newStateName, onChange: e => setNewStateName(e.target.value) }), allAnimations.length > 0 && newStateName && (jsxRuntime.jsxs("select", { className: GameAsset2dEditor_module.panelInput, style: { marginTop: 4 }, onChange: e => {
286
- if (e.target.value) {
287
- api.addState(newStateName, e.target.value);
287
+ return (jsxRuntime.jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "State Machines" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => api.createStateMachine('New State Machine'), children: "+ New" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, style: { maxHeight: 150 }, children: api.project.stateMachines.map(sm => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.activeStateMachineId === sm.id ? GameAsset2dEditor_module.selected : ''}`, onClick: () => api.selectStateMachine(sm.id), children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: sm.name }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerOpacity, children: [sm.states.length, " states"] })] }, sm.id))) }), activeSM && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "States" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx(index.NiceTextInput, { className: GameAsset2dEditor_module.panelInput, placeholder: "State name...", value: newStateName, onChange: val => setNewStateName(val) }), allAnimations.length > 0 && newStateName && (jsxRuntime.jsx(index.NiceSelect, { className: GameAsset2dEditor_module.panelInput, style: { marginTop: 4 }, onChange: val => {
288
+ if (val) {
289
+ api.addState(newStateName, val);
288
290
  setNewStateName('');
289
291
  }
290
- }, children: [jsxRuntime.jsx("option", { value: "", children: "Select animation..." }), allAnimations.map(anim => (jsxRuntime.jsxs("option", { value: anim.id, children: [anim.sheetName, ": ", anim.name] }, anim.id)))] }))] }), activeSM.states.map(state => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.selectedStateId === state.id ? GameAsset2dEditor_module.selected : ''} ${activeSM.entryStateId === state.id ? GameAsset2dEditor_module.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerName, children: [activeSM.entryStateId === state.id && '▶ ', state.name] }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.effectRemove, onClick: e => {
292
+ }, options: [
293
+ { value: '', label: 'Select animation...' },
294
+ ...allAnimations.map(anim => ({
295
+ value: anim.id,
296
+ label: `${anim.sheetName}: ${anim.name}`
297
+ }))
298
+ ] }))] }), activeSM.states.map(state => (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.layerItem} ${api.editorState.selectedStateId === state.id ? GameAsset2dEditor_module.selected : ''} ${activeSM.entryStateId === state.id ? GameAsset2dEditor_module.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerName, children: [activeSM.entryStateId === state.id && '▶ ', state.name] }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.effectRemove, variant: "ghost", size: "sm", onClick: e => {
291
299
  e.stopPropagation();
292
300
  api.removeState(state.id);
293
301
  }, children: "\u00D7" })] }, state.id)))] })] }))] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.stateGraph, children: activeSM ? (jsxRuntime.jsxs("svg", { width: "100%", height: "100%", children: [jsxRuntime.jsx("defs", { children: jsxRuntime.jsx("marker", { id: "arrowhead", markerWidth: "10", markerHeight: "7", refX: "9", refY: "3.5", orient: "auto", children: jsxRuntime.jsx("polygon", { points: "0 0, 10 3.5, 0 7", fill: "#4a5a7e" }) }) }), activeSM.transitions.map(trans => {
@@ -299,16 +307,19 @@ const AnimationStateMachineView = ({ api }) => {
299
307
  }), activeSM.states.map(state => {
300
308
  var _a, _b;
301
309
  return (jsxRuntime.jsx("foreignObject", { x: state.position.x, y: state.position.y, width: 120, height: 50, children: jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.stateNode} ${api.editorState.selectedStateId === state.id ? GameAsset2dEditor_module.selected : ''} ${activeSM.entryStateId === state.id ? GameAsset2dEditor_module.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.stateNodeName, children: state.name }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.stateNodeAnim, children: (_b = (_a = allAnimations.find(a => a.id === state.animationId)) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : 'No animation' })] }) }, state.id));
302
- })] })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Create a state machine to design animation flows" }) })) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Parameters" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.menuBtn, onClick: () => api.addParameter('new_param', 'trigger'), disabled: !activeSM, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: activeSM === null || activeSM === void 0 ? void 0 : activeSM.parameters.map(param => (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerOpacity, children: param.type }), jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: param.name }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.effectRemove, onClick: () => api.removeParameter(param.id), children: "\u00D7" })] }, param.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Transitions" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [activeSM === null || activeSM === void 0 ? void 0 : activeSM.transitions.map(trans => {
310
+ })] })) : (jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyState, children: jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.emptyStateText, children: "Create a state machine to design animation flows" }) })) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.rightPanel, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelHeader, children: [jsxRuntime.jsx("span", { children: "Parameters" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.menuBtn, variant: "ghost", size: "sm", onClick: () => api.addParameter('new_param', 'trigger'), disabled: !activeSM, children: "+ Add" })] }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: activeSM === null || activeSM === void 0 ? void 0 : activeSM.parameters.map(param => (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerOpacity, children: param.type }), jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: param.name }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeParameter(param.id), children: "\u00D7" })] }, param.id))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Transitions" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [activeSM === null || activeSM === void 0 ? void 0 : activeSM.transitions.map(trans => {
303
311
  var _a, _b;
304
312
  const from = activeSM.states.find(s => s.id === trans.fromStateId);
305
313
  const to = activeSM.states.find(s => s.id === trans.toStateId);
306
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerName, children: [(_a = from === null || from === void 0 ? void 0 : from.name) !== null && _a !== void 0 ? _a : '?', " \u2192 ", (_b = to === null || to === void 0 ? void 0 : to.name) !== null && _b !== void 0 ? _b : '?'] }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.effectRemove, onClick: () => api.removeTransition(trans.id), children: "\u00D7" })] }, trans.id));
307
- }), api.editorState.selectedStateId && (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, style: { marginTop: 12 }, children: [jsxRuntime.jsx("label", { className: GameAsset2dEditor_module.panelLabel, children: "Add transition to:" }), jsxRuntime.jsxs("select", { className: GameAsset2dEditor_module.panelInput, onChange: e => {
308
- if (e.target.value && api.editorState.selectedStateId) {
309
- api.addTransition(api.editorState.selectedStateId, e.target.value);
314
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.layerItem, children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.layerName, children: [(_a = from === null || from === void 0 ? void 0 : from.name) !== null && _a !== void 0 ? _a : '?', " \u2192 ", (_b = to === null || to === void 0 ? void 0 : to.name) !== null && _b !== void 0 ? _b : '?'] }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeTransition(trans.id), children: "\u00D7" })] }, trans.id));
315
+ }), api.editorState.selectedStateId && (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, style: { marginTop: 12 }, children: [jsxRuntime.jsx("label", { className: GameAsset2dEditor_module.panelLabel, children: "Add transition to:" }), jsxRuntime.jsx(index.NiceSelect, { className: GameAsset2dEditor_module.panelInput, onChange: val => {
316
+ if (val && api.editorState.selectedStateId) {
317
+ api.addTransition(api.editorState.selectedStateId, val);
310
318
  }
311
- }, children: [jsxRuntime.jsx("option", { value: "", children: "Select target state..." }), activeSM === null || activeSM === void 0 ? void 0 : activeSM.states.filter(s => s.id !== api.editorState.selectedStateId).map(s => (jsxRuntime.jsx("option", { value: s.id, children: s.name }, s.id)))] })] }))] })] })] }));
319
+ }, options: [
320
+ { value: '', label: 'Select target state...' },
321
+ ...((_a = activeSM === null || activeSM === void 0 ? void 0 : activeSM.states.filter(s => s.id !== api.editorState.selectedStateId).map(s => ({ value: s.id, label: s.name }))) !== null && _a !== void 0 ? _a : [])
322
+ ] })] }))] })] })] }));
312
323
  };
313
324
  /* ────────────────────────────────────────────────────────────────
314
325
  EFFECTS PANEL
@@ -330,7 +341,7 @@ const EffectsView = ({ api }) => {
330
341
  { type: 'shadow', label: 'Shadow' },
331
342
  { type: 'palette-swap', label: 'Palette Swap' },
332
343
  ];
333
- return (jsxRuntime.jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Add Effect" }) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: effectTypes.map(({ type, label }) => (jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.layerItem, onClick: () => api.addEffect(type), style: { cursor: 'pointer', border: 'none', textAlign: 'left' }, children: jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: label }) }, type))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Presets" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx("input", { type: "text", className: GameAsset2dEditor_module.panelInput, placeholder: "Preset name...", value: presetName, onChange: e => setPresetName(e.target.value) }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.btnSecondary, style: { marginTop: 4, width: '100%' }, onClick: () => {
344
+ return (jsxRuntime.jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.leftPanel, children: [jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Add Effect" }) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelContent, children: effectTypes.map(({ type, label }) => (jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.layerItem, variant: "ghost", onClick: () => api.addEffect(type), style: { cursor: 'pointer', border: 'none', textAlign: 'left' }, children: jsxRuntime.jsx("span", { className: GameAsset2dEditor_module.layerName, children: label }) }, type))) }), jsxRuntime.jsx("div", { className: GameAsset2dEditor_module.panelHeader, children: jsxRuntime.jsx("span", { children: "Presets" }) }), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelContent, children: [jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.panelSection, children: [jsxRuntime.jsx(index.NiceTextInput, { className: GameAsset2dEditor_module.panelInput, placeholder: "Preset name...", value: presetName, onChange: val => setPresetName(val) }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.btnSecondary, variant: "ghost", style: { marginTop: 4, width: '100%' }, onClick: () => {
334
345
  if (presetName) {
335
346
  api.saveEffectPreset(presetName);
336
347
  setPresetName('');
@@ -343,12 +354,12 @@ const EffectsView = ({ api }) => {
343
354
  const StatusBar = ({ api }) => {
344
355
  const activeMap = api.project.tileMaps.find(m => m.id === api.editorState.activeTileMapId);
345
356
  const activeSheet = api.project.spriteSheets.find(s => s.id === api.editorState.activeSpriteSheetId);
346
- return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.statusBar, children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Mode: ", api.editorState.mode] }), api.editorState.mode === 'tilemap' && activeMap && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Map: ", activeMap.name, " (", activeMap.width, "\u00D7", activeMap.height, ")"] }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Tile: ", activeMap.tileWidth, "\u00D7", activeMap.tileHeight, "px"] })] })), api.editorState.mode === 'spritesheet' && activeSheet && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Sheet: ", activeSheet.name] }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Selected: ", api.editorState.selectedFrameIds.length, " frames"] })] })), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.zoomControl, children: [jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.zoomBtn, onClick: () => api.setZoom(api.editorState.zoom - 0.25), children: "\u2212" }), jsxRuntime.jsxs("span", { children: [Math.round(api.editorState.zoom * 100), "%"] }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.zoomBtn, onClick: () => api.setZoom(api.editorState.zoom + 0.25), children: "+" }), jsxRuntime.jsx("button", { className: GameAsset2dEditor_module.zoomBtn, onClick: () => api.setZoom(1), children: "\u2299" })] })] }));
357
+ return (jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.statusBar, children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Mode: ", api.editorState.mode] }), api.editorState.mode === 'tilemap' && activeMap && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Map: ", activeMap.name, " (", activeMap.width, "\u00D7", activeMap.height, ")"] }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Tile: ", activeMap.tileWidth, "\u00D7", activeMap.tileHeight, "px"] })] })), api.editorState.mode === 'spritesheet' && activeSheet && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Sheet: ", activeSheet.name] }), jsxRuntime.jsxs("span", { className: GameAsset2dEditor_module.statusItem, children: ["Selected: ", api.editorState.selectedFrameIds.length, " frames"] })] })), jsxRuntime.jsxs("div", { className: GameAsset2dEditor_module.zoomControl, children: [jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(api.editorState.zoom - 0.25), children: "\u2212" }), jsxRuntime.jsxs("span", { children: [Math.round(api.editorState.zoom * 100), "%"] }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(api.editorState.zoom + 0.25), children: "+" }), jsxRuntime.jsx(index.NiceButton, { className: GameAsset2dEditor_module.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(1), children: "\u2299" })] })] }));
347
358
  };
348
359
  /* ────────────────────────────────────────────────────────────────
349
360
  MAIN COMPONENT
350
361
  ──────────────────────────────────────────────────────────────── */
351
- const GameAsset2dEditor = ({ className, onSave, onExport, }) => {
362
+ const NiceGameAsset2dEditor = ({ className, onSave, onExport, }) => {
352
363
  const api = useGameAssetEditor.useGameAssetEditor({ onSave, onExport });
353
364
  const renderModeContent = () => {
354
365
  switch (api.editorState.mode) {
@@ -366,6 +377,9 @@ const GameAsset2dEditor = ({ className, onSave, onExport, }) => {
366
377
  };
367
378
  return (jsxRuntime.jsxs("div", { className: `${GameAsset2dEditor_module.root} ${className || ''}`, children: [jsxRuntime.jsx(MenuBar, { api: api }), jsxRuntime.jsx(ModeTabs, { api: api }), renderModeContent(), jsxRuntime.jsx(StatusBar, { api: api })] }));
368
379
  };
380
+ /** @deprecated Use NiceGameAsset2dEditor */
381
+ const GameAsset2dEditor = NiceGameAsset2dEditor;
369
382
 
370
383
  exports.GameAsset2dEditor = GameAsset2dEditor;
384
+ exports.NiceGameAsset2dEditor = NiceGameAsset2dEditor;
371
385
  //# sourceMappingURL=GameAsset2dEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GameAsset2dEditor.js","sources":["../../../src/game/GameAsset2dEditor.tsx"],"sourcesContent":[null],"names":["useRef","_jsxs","styles","_jsx","useState","useEffect","useCallback","useMemo","_Fragment","useGameAssetEditor"],"mappings":"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"}
1
+ {"version":3,"file":"GameAsset2dEditor.js","sources":["../../../src/game/GameAsset2dEditor.tsx"],"sourcesContent":[null],"names":["useRef","_jsxs","styles","_jsx","NiceButton","useState","NiceNumberInput","useEffect","useCallback","NiceTextInput","useMemo","_Fragment","NiceSelect","useGameAssetEditor"],"mappings":"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"}