@nice2dev/ui-graphics 1.0.0 → 1.0.3

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
@@ -2,13 +2,14 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
2
  import { useRef, useState, useMemo, useEffect, useCallback } from 'react';
3
3
  import styles from './GameAsset2dEditor.module.css.js';
4
4
  import { useGameAssetEditor } from './useGameAssetEditor.js';
5
+ import { NiceButton as Ee, NiceTextInput as ut, NiceSelect as tn, NiceNumberInput as vi } from '../ui/dist/index.js';
5
6
 
6
7
  /* ────────────────────────────────────────────────────────────────
7
8
  MENU BAR
8
9
  ──────────────────────────────────────────────────────────────── */
9
10
  const MenuBar = ({ api }) => {
10
11
  const fileInputRef = useRef(null);
11
- return (jsxs("div", { className: styles.menuBar, children: [jsx("h3", { children: "\uD83C\uDFAE Game Asset Editor" }), jsxs("div", { className: styles.menuGroup, children: [jsx("button", { className: styles.menuBtn, onClick: () => api.newProject('New Project'), children: "\uD83D\uDCC4 New" }), jsx("button", { className: styles.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "\uD83D\uDCC2 Open" }), jsx("button", { className: styles.menuBtn, onClick: api.saveProject, children: "\uD83D\uDCBE Save" })] }), jsx("div", { className: styles.spacer }), jsxs("div", { className: styles.menuGroup, children: [jsx("button", { className: styles.menuBtn, onClick: api.undo, disabled: !api.canUndo, children: "\u21A9 Undo" }), jsx("button", { className: styles.menuBtn, onClick: api.redo, disabled: !api.canRedo, children: "\u21AA Redo" })] }), jsx("input", { ref: fileInputRef, type: "file", accept: ".json", style: { display: 'none' }, onChange: e => {
12
+ return (jsxs("div", { className: styles.menuBar, children: [jsx("h3", { children: "\uD83C\uDFAE Game Asset Editor" }), jsxs("div", { className: styles.menuGroup, children: [jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => api.newProject('New Project'), children: "\uD83D\uDCC4 New" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "\uD83D\uDCC2 Open" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: api.saveProject, children: "\uD83D\uDCBE Save" })] }), jsx("div", { className: styles.spacer }), jsxs("div", { className: styles.menuGroup, children: [jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: api.undo, disabled: !api.canUndo, children: "\u21A9 Undo" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: api.redo, disabled: !api.canRedo, children: "\u21AA Redo" })] }), jsx("input", { ref: fileInputRef, type: "file", accept: ".json", style: { display: 'none' }, onChange: e => {
12
13
  var _a;
13
14
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
14
15
  if (file)
@@ -26,7 +27,7 @@ const ModeTabs = ({ api }) => {
26
27
  { id: 'animation', label: 'Animation', icon: '🎬' },
27
28
  { id: 'effects', label: 'Effects', icon: '✨' },
28
29
  ];
29
- return (jsx("div", { className: styles.modeTabs, children: modes.map(mode => (jsxs("button", { className: `${styles.modeTab} ${api.editorState.mode === mode.id ? styles.active : ''}`, onClick: () => api.setMode(mode.id), children: [mode.icon, " ", mode.label] }, mode.id))) }));
30
+ return (jsx("div", { className: styles.modeTabs, children: modes.map(mode => (jsxs(Ee, { className: `${styles.modeTab} ${api.editorState.mode === mode.id ? styles.active : ''}`, variant: api.editorState.mode === mode.id ? 'primary' : 'ghost', onClick: () => api.setMode(mode.id), children: [mode.icon, " ", mode.label] }, mode.id))) }));
30
31
  };
31
32
  /* ────────────────────────────────────────────────────────────────
32
33
  TILE MAP TOOLBAR
@@ -41,7 +42,7 @@ const TileMapToolbar = ({ api }) => {
41
42
  { id: 'line', icon: '╱', label: 'Line' },
42
43
  { id: 'eyedropper', icon: '💧', label: 'Eyedropper' },
43
44
  ];
44
- return (jsxs("div", { className: styles.toolbar, children: [jsx("div", { className: styles.toolGroup, children: tools.map(tool => (jsx("button", { className: `${styles.toolBtn} ${api.editorState.tileMapTool === tool.id ? styles.active : ''}`, onClick: () => api.setTileMapTool(tool.id), title: tool.label, children: tool.icon }, tool.id))) }), jsx("div", { className: styles.spacer }), jsx("button", { className: `${styles.toolBtn} ${api.editorState.showGrid ? styles.active : ''}`, onClick: api.toggleGrid, title: "Toggle Grid", children: "\u229E" }), jsx("button", { className: `${styles.toolBtn} ${api.editorState.showCollision ? styles.active : ''}`, onClick: api.toggleCollision, title: "Show Collision", children: "\u25C7" }), jsx("button", { className: `${styles.toolBtn} ${api.editorState.snapToGrid ? styles.active : ''}`, onClick: api.toggleSnap, title: "Snap to Grid", children: "\u22A1" })] }));
45
+ return (jsxs("div", { className: styles.toolbar, children: [jsx("div", { className: styles.toolGroup, children: tools.map(tool => (jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.tileMapTool === tool.id ? styles.active : ''}`, variant: api.editorState.tileMapTool === tool.id ? 'primary' : 'ghost', size: "sm", onClick: () => api.setTileMapTool(tool.id), title: tool.label, children: tool.icon }, tool.id))) }), jsx("div", { className: styles.spacer }), jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.showGrid ? styles.active : ''}`, variant: api.editorState.showGrid ? 'primary' : 'ghost', size: "sm", onClick: api.toggleGrid, title: "Toggle Grid", children: "\u229E" }), jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.showCollision ? styles.active : ''}`, variant: api.editorState.showCollision ? 'primary' : 'ghost', size: "sm", onClick: api.toggleCollision, title: "Show Collision", children: "\u25C7" }), jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.snapToGrid ? styles.active : ''}`, variant: api.editorState.snapToGrid ? 'primary' : 'ghost', size: "sm", onClick: api.toggleSnap, title: "Snap to Grid", children: "\u22A1" })] }));
45
46
  };
46
47
  /* ────────────────────────────────────────────────────────────────
47
48
  SPRITE SHEET TOOLBAR
@@ -49,14 +50,14 @@ const TileMapToolbar = ({ api }) => {
49
50
  const SpriteSheetToolbar = ({ api }) => {
50
51
  const [sliceWidth, setSliceWidth] = useState(16);
51
52
  const [sliceHeight, setSliceHeight] = useState(16);
52
- return (jsxs("div", { className: styles.toolbar, children: [jsxs("div", { className: styles.toolGroup, children: [jsx("button", { className: `${styles.toolBtn} ${api.editorState.spriteSheetTool === 'select' ? styles.active : ''}`, onClick: () => api.setSpriteSheetTool('select'), title: "Select", children: "\u2B1A" }), jsx("button", { className: `${styles.toolBtn} ${api.editorState.spriteSheetTool === 'slice' ? styles.active : ''}`, onClick: () => api.setSpriteSheetTool('slice'), title: "Manual Slice", children: "\u2702" })] }), jsx("div", { className: styles.spacer }), jsxs("label", { style: { fontSize: 11, color: '#8892a8' }, children: ["Frame size:", jsx("input", { type: "number", value: sliceWidth, onChange: e => setSliceWidth(+e.target.value), style: { width: 40, margin: '0 4px' }, className: styles.panelInput }), "\u00D7", jsx("input", { type: "number", value: sliceHeight, onChange: e => setSliceHeight(+e.target.value), style: { width: 40, marginLeft: 4 }, className: styles.panelInput })] }), jsx("button", { className: styles.btnSecondary, onClick: () => api.autoSlice(sliceWidth, sliceHeight), style: { marginLeft: 8 }, children: "Auto Slice" }), jsx("button", { className: styles.btnSecondary, onClick: api.detectSprites, style: { marginLeft: 4 }, children: "Detect Sprites" })] }));
53
+ return (jsxs("div", { className: styles.toolbar, children: [jsxs("div", { className: styles.toolGroup, children: [jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.spriteSheetTool === 'select' ? styles.active : ''}`, variant: api.editorState.spriteSheetTool === 'select' ? 'primary' : 'ghost', size: "sm", onClick: () => api.setSpriteSheetTool('select'), title: "Select", children: "\u2B1A" }), jsx(Ee, { className: `${styles.toolBtn} ${api.editorState.spriteSheetTool === 'slice' ? styles.active : ''}`, variant: api.editorState.spriteSheetTool === 'slice' ? 'primary' : 'ghost', size: "sm", onClick: () => api.setSpriteSheetTool('slice'), title: "Manual Slice", children: "\u2702" })] }), jsx("div", { className: styles.spacer }), jsxs("label", { style: { fontSize: 11, color: '#8892a8' }, children: ["Frame size:", jsx(vi, { value: sliceWidth, onChange: val => setSliceWidth(val !== null && val !== void 0 ? val : 16), style: { width: 40, margin: '0 4px' }, className: styles.panelInput }), "\u00D7", jsx(vi, { value: sliceHeight, onChange: val => setSliceHeight(val !== null && val !== void 0 ? val : 16), style: { width: 40, marginLeft: 4 }, className: styles.panelInput })] }), jsx(Ee, { className: styles.btnSecondary, variant: "ghost", onClick: () => api.autoSlice(sliceWidth, sliceHeight), style: { marginLeft: 8 }, children: "Auto Slice" }), jsx(Ee, { className: styles.btnSecondary, variant: "ghost", onClick: api.detectSprites, style: { marginLeft: 4 }, children: "Detect Sprites" })] }));
53
54
  };
54
55
  /* ────────────────────────────────────────────────────────────────
55
56
  TILE PALETTE (LEFT PANEL)
56
57
  ──────────────────────────────────────────────────────────────── */
57
58
  const TilePalette = ({ api }) => {
58
59
  const fileInputRef = useRef(null);
59
- return (jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Tiles" }), jsx("button", { className: styles.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: api.project.tileSets.length === 0 ? (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "No tiles yet" }), jsx("button", { className: styles.btnSecondary, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Tiles" })] })) : (jsx("div", { className: styles.tilePalette, children: api.project.tileSets.map(tile => (jsx("div", { className: `${styles.tileItem} ${api.editorState.selectedTileId === tile.id ? styles.selected : ''}`, onClick: () => api.selectTile(tile.id), title: tile.name, children: jsx("img", { src: tile.thumbnail, alt: tile.name }) }, tile.id))) })) }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
60
+ return (jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Tiles" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: api.project.tileSets.length === 0 ? (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "No tiles yet" }), jsx(Ee, { className: styles.btnSecondary, variant: "ghost", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Tiles" })] })) : (jsx("div", { className: styles.tilePalette, children: api.project.tileSets.map(tile => (jsx("div", { className: `${styles.tileItem} ${api.editorState.selectedTileId === tile.id ? styles.selected : ''}`, onClick: () => api.selectTile(tile.id), title: tile.name, children: jsx("img", { src: tile.thumbnail, alt: tile.name }) }, tile.id))) })) }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
60
61
  var _a;
61
62
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
62
63
  if (file)
@@ -69,10 +70,10 @@ const TilePalette = ({ api }) => {
69
70
  ──────────────────────────────────────────────────────────────── */
70
71
  const LayersPanel = ({ api }) => {
71
72
  const activeMap = api.project.tileMaps.find(m => m.id === api.editorState.activeTileMapId);
72
- return (jsxs("div", { className: styles.rightPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Layers" }), jsx("button", { className: styles.menuBtn, onClick: api.addLayer, disabled: !activeMap, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: activeMap ? (jsx("div", { className: styles.layersList, children: [...activeMap.layers].reverse().map(layer => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeLayerId === layer.id ? styles.selected : ''}`, onClick: () => api.selectLayer(layer.id), children: [jsx("button", { className: `${styles.layerVisibility} ${!layer.visible ? styles.hidden : ''}`, onClick: e => {
73
+ return (jsxs("div", { className: styles.rightPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Layers" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: api.addLayer, disabled: !activeMap, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: activeMap ? (jsx("div", { className: styles.layersList, children: [...activeMap.layers].reverse().map(layer => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeLayerId === layer.id ? styles.selected : ''}`, onClick: () => api.selectLayer(layer.id), children: [jsx(Ee, { className: `${styles.layerVisibility} ${!layer.visible ? styles.hidden : ''}`, variant: "ghost", size: "sm", onClick: e => {
73
74
  e.stopPropagation();
74
75
  api.toggleLayerVisibility(layer.id);
75
- }, children: layer.visible ? '👁' : '○' }), jsx("span", { className: styles.layerName, children: layer.name }), jsxs("span", { className: styles.layerOpacity, children: [Math.round(layer.opacity * 100), "%"] })] }, layer.id))) })) : (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "No tile map selected" }) })) }), jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Maps" }), jsx("button", { className: styles.menuBtn, onClick: () => api.createTileMap('New Map', 32, 32), children: "+ New" })] }), jsx("div", { className: styles.panelContent, children: api.project.tileMaps.map(map => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeTileMapId === map.id ? styles.selected : ''}`, onClick: () => api.selectTileMap(map.id), children: [jsx("span", { className: styles.layerName, children: map.name }), jsxs("span", { className: styles.layerOpacity, children: [map.width, "\u00D7", map.height] })] }, map.id))) })] }));
76
+ }, children: layer.visible ? '👁' : '○' }), jsx("span", { className: styles.layerName, children: layer.name }), jsxs("span", { className: styles.layerOpacity, children: [Math.round(layer.opacity * 100), "%"] })] }, layer.id))) })) : (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "No tile map selected" }) })) }), jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Maps" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => api.createTileMap('New Map', 32, 32), children: "+ New" })] }), jsx("div", { className: styles.panelContent, children: api.project.tileMaps.map(map => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeTileMapId === map.id ? styles.selected : ''}`, onClick: () => api.selectTileMap(map.id), children: [jsx("span", { className: styles.layerName, children: map.name }), jsxs("span", { className: styles.layerOpacity, children: [map.width, "\u00D7", map.height] })] }, map.id))) })] }));
76
77
  };
77
78
  /* ────────────────────────────────────────────────────────────────
78
79
  TILE MAP CANVAS
@@ -160,7 +161,7 @@ const TileMapCanvas = ({ api }) => {
160
161
  if (isDragging && (api.editorState.tileMapTool === 'brush' || api.editorState.tileMapTool === 'eraser')) {
161
162
  handleCanvasClick(e);
162
163
  }
163
- } })) : (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "Create or select a tile map to start editing" }), jsx("button", { className: styles.btnPrimary, onClick: () => api.createTileMap('New Map', 32, 32), children: "Create Tile Map" })] })) }));
164
+ } })) : (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "Create or select a tile map to start editing" }), jsx(Ee, { className: styles.btnPrimary, variant: "primary", onClick: () => api.createTileMap('New Map', 32, 32), children: "Create Tile Map" })] })) }));
164
165
  };
165
166
  /* ────────────────────────────────────────────────────────────────
166
167
  SPRITE SHEET CANVAS
@@ -228,7 +229,7 @@ const SpriteSheetCanvas = ({ api }) => {
228
229
  }, [activeSheet, api]);
229
230
  return (jsx("div", { className: styles.viewport, children: activeSheet ? (jsx("canvas", { ref: canvasRef, className: styles.viewportCanvas, style: {
230
231
  transform: `translate(-50%, -50%) scale(${api.editorState.zoom})`,
231
- }, onClick: handleFrameClick })) : (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "Import a sprite sheet to start" }), jsx("button", { className: styles.btnPrimary, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Sprite Sheet" }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
232
+ }, onClick: handleFrameClick })) : (jsxs("div", { className: styles.emptyState, children: [jsx("div", { className: styles.emptyStateText, children: "Import a sprite sheet to start" }), jsx(Ee, { className: styles.btnPrimary, variant: "primary", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Import Sprite Sheet" }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
232
233
  var _a;
233
234
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
234
235
  if (file)
@@ -241,7 +242,7 @@ const SpriteSheetCanvas = ({ api }) => {
241
242
  ──────────────────────────────────────────────────────────────── */
242
243
  const SpriteSheetsList = ({ api }) => {
243
244
  const fileInputRef = useRef(null);
244
- return (jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Sprite Sheets" }), jsx("button", { className: styles.menuBtn, onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Import" })] }), jsx("div", { className: styles.panelContent, children: api.project.spriteSheets.length === 0 ? (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "No sprite sheets" }) })) : (jsx("div", { className: styles.layersList, children: api.project.spriteSheets.map(sheet => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeSpriteSheetId === sheet.id ? styles.selected : ''}`, onClick: () => api.selectSpriteSheet(sheet.id), children: [jsx("span", { className: styles.layerName, children: sheet.name }), jsxs("span", { className: styles.layerOpacity, children: [sheet.frames.length, " frames"] })] }, sheet.id))) })) }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
245
+ return (jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Sprite Sheets" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "+ Import" })] }), jsx("div", { className: styles.panelContent, children: api.project.spriteSheets.length === 0 ? (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "No sprite sheets" }) })) : (jsx("div", { className: styles.layersList, children: api.project.spriteSheets.map(sheet => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeSpriteSheetId === sheet.id ? styles.selected : ''}`, onClick: () => api.selectSpriteSheet(sheet.id), children: [jsx("span", { className: styles.layerName, children: sheet.name }), jsxs("span", { className: styles.layerOpacity, children: [sheet.frames.length, " frames"] })] }, sheet.id))) })) }), jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: e => {
245
246
  var _a;
246
247
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
247
248
  if (file)
@@ -262,12 +263,13 @@ const FramesPanel = ({ api }) => {
262
263
  setAnimName('');
263
264
  }
264
265
  }, [animName, api]);
265
- return (jsxs("div", { className: styles.rightPanel, children: [jsx("div", { className: styles.panelHeader, children: jsxs("span", { children: ["Frames (", (_a = activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.length) !== null && _a !== void 0 ? _a : 0, ")"] }) }), jsx("div", { className: styles.panelContent, style: { maxHeight: 200 }, children: activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.map(frame => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.selectedFrameIds.includes(frame.id) ? styles.selected : ''}`, onClick: () => api.selectFrames([frame.id]), children: [jsx("span", { className: styles.layerName, children: frame.name }), jsxs("span", { className: styles.layerOpacity, children: [frame.width, "\u00D7", frame.height] })] }, frame.id))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Animations" }) }), jsxs("div", { className: styles.panelContent, children: [api.editorState.selectedFrameIds.length > 0 && (jsxs("div", { className: styles.panelSection, children: [jsx("input", { type: "text", className: styles.panelInput, placeholder: "Animation name...", value: animName, onChange: e => setAnimName(e.target.value) }), jsxs("button", { className: styles.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 => (jsxs("div", { className: styles.layerItem, children: [jsx("span", { className: styles.layerName, children: anim.name }), jsxs("span", { className: styles.layerOpacity, children: [anim.frameIds.length, "f"] }), jsx("button", { className: styles.effectRemove, onClick: () => api.removeAnimation(anim.id), children: "\u00D7" })] }, anim.id)))] })] }));
266
+ return (jsxs("div", { className: styles.rightPanel, children: [jsx("div", { className: styles.panelHeader, children: jsxs("span", { children: ["Frames (", (_a = activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.length) !== null && _a !== void 0 ? _a : 0, ")"] }) }), jsx("div", { className: styles.panelContent, style: { maxHeight: 200 }, children: activeSheet === null || activeSheet === void 0 ? void 0 : activeSheet.frames.map(frame => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.selectedFrameIds.includes(frame.id) ? styles.selected : ''}`, onClick: () => api.selectFrames([frame.id]), children: [jsx("span", { className: styles.layerName, children: frame.name }), jsxs("span", { className: styles.layerOpacity, children: [frame.width, "\u00D7", frame.height] })] }, frame.id))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Animations" }) }), jsxs("div", { className: styles.panelContent, children: [api.editorState.selectedFrameIds.length > 0 && (jsxs("div", { className: styles.panelSection, children: [jsx(ut, { className: styles.panelInput, placeholder: "Animation name...", value: animName, onChange: val => setAnimName(val) }), jsxs(Ee, { className: styles.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 => (jsxs("div", { className: styles.layerItem, children: [jsx("span", { className: styles.layerName, children: anim.name }), jsxs("span", { className: styles.layerOpacity, children: [anim.frameIds.length, "f"] }), jsx(Ee, { className: styles.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeAnimation(anim.id), children: "\u00D7" })] }, anim.id)))] })] }));
266
267
  };
267
268
  /* ────────────────────────────────────────────────────────────────
268
269
  ANIMATION STATE MACHINE
269
270
  ──────────────────────────────────────────────────────────────── */
270
271
  const AnimationStateMachineView = ({ api }) => {
272
+ var _a;
271
273
  const [newStateName, setNewStateName] = useState('');
272
274
  const activeSM = api.project.stateMachines.find(sm => sm.id === api.editorState.activeStateMachineId);
273
275
  // Get all animations from all sprite sheets
@@ -280,12 +282,18 @@ const AnimationStateMachineView = ({ api }) => {
280
282
  }
281
283
  return result;
282
284
  }, [api.project.spriteSheets]);
283
- return (jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "State Machines" }), jsx("button", { className: styles.menuBtn, onClick: () => api.createStateMachine('New State Machine'), children: "+ New" })] }), jsx("div", { className: styles.panelContent, style: { maxHeight: 150 }, children: api.project.stateMachines.map(sm => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeStateMachineId === sm.id ? styles.selected : ''}`, onClick: () => api.selectStateMachine(sm.id), children: [jsx("span", { className: styles.layerName, children: sm.name }), jsxs("span", { className: styles.layerOpacity, children: [sm.states.length, " states"] })] }, sm.id))) }), activeSM && (jsxs(Fragment, { children: [jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "States" }) }), jsxs("div", { className: styles.panelContent, children: [jsxs("div", { className: styles.panelSection, children: [jsx("input", { type: "text", className: styles.panelInput, placeholder: "State name...", value: newStateName, onChange: e => setNewStateName(e.target.value) }), allAnimations.length > 0 && newStateName && (jsxs("select", { className: styles.panelInput, style: { marginTop: 4 }, onChange: e => {
284
- if (e.target.value) {
285
- api.addState(newStateName, e.target.value);
285
+ return (jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxs("div", { className: styles.leftPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "State Machines" }), jsx("button", { className: styles.menuBtn, onClick: () => api.createStateMachine('New State Machine'), children: "+ New" })] }), jsx("div", { className: styles.panelContent, style: { maxHeight: 150 }, children: api.project.stateMachines.map(sm => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.activeStateMachineId === sm.id ? styles.selected : ''}`, onClick: () => api.selectStateMachine(sm.id), children: [jsx("span", { className: styles.layerName, children: sm.name }), jsxs("span", { className: styles.layerOpacity, children: [sm.states.length, " states"] })] }, sm.id))) }), activeSM && (jsxs(Fragment, { children: [jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "States" }) }), jsxs("div", { className: styles.panelContent, children: [jsxs("div", { className: styles.panelSection, children: [jsx(ut, { className: styles.panelInput, placeholder: "State name...", value: newStateName, onChange: val => setNewStateName(val) }), allAnimations.length > 0 && newStateName && (jsx(tn, { className: styles.panelInput, style: { marginTop: 4 }, onChange: val => {
286
+ if (val) {
287
+ api.addState(newStateName, val);
286
288
  setNewStateName('');
287
289
  }
288
- }, children: [jsx("option", { value: "", children: "Select animation..." }), allAnimations.map(anim => (jsxs("option", { value: anim.id, children: [anim.sheetName, ": ", anim.name] }, anim.id)))] }))] }), activeSM.states.map(state => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.selectedStateId === state.id ? styles.selected : ''} ${activeSM.entryStateId === state.id ? styles.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsxs("span", { className: styles.layerName, children: [activeSM.entryStateId === state.id && '▶ ', state.name] }), jsx("button", { className: styles.effectRemove, onClick: e => {
290
+ }, options: [
291
+ { value: '', label: 'Select animation...' },
292
+ ...allAnimations.map(anim => ({
293
+ value: anim.id,
294
+ label: `${anim.sheetName}: ${anim.name}`
295
+ }))
296
+ ] }))] }), activeSM.states.map(state => (jsxs("div", { className: `${styles.layerItem} ${api.editorState.selectedStateId === state.id ? styles.selected : ''} ${activeSM.entryStateId === state.id ? styles.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsxs("span", { className: styles.layerName, children: [activeSM.entryStateId === state.id && '▶ ', state.name] }), jsx(Ee, { className: styles.effectRemove, variant: "ghost", size: "sm", onClick: e => {
289
297
  e.stopPropagation();
290
298
  api.removeState(state.id);
291
299
  }, children: "\u00D7" })] }, state.id)))] })] }))] }), jsx("div", { className: styles.stateGraph, children: activeSM ? (jsxs("svg", { width: "100%", height: "100%", children: [jsx("defs", { children: jsx("marker", { id: "arrowhead", markerWidth: "10", markerHeight: "7", refX: "9", refY: "3.5", orient: "auto", children: jsx("polygon", { points: "0 0, 10 3.5, 0 7", fill: "#4a5a7e" }) }) }), activeSM.transitions.map(trans => {
@@ -297,16 +305,19 @@ const AnimationStateMachineView = ({ api }) => {
297
305
  }), activeSM.states.map(state => {
298
306
  var _a, _b;
299
307
  return (jsx("foreignObject", { x: state.position.x, y: state.position.y, width: 120, height: 50, children: jsxs("div", { className: `${styles.stateNode} ${api.editorState.selectedStateId === state.id ? styles.selected : ''} ${activeSM.entryStateId === state.id ? styles.entry : ''}`, onClick: () => api.selectState(state.id), children: [jsx("div", { className: styles.stateNodeName, children: state.name }), jsx("div", { className: styles.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));
300
- })] })) : (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "Create a state machine to design animation flows" }) })) }), jsxs("div", { className: styles.rightPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Parameters" }), jsx("button", { className: styles.menuBtn, onClick: () => api.addParameter('new_param', 'trigger'), disabled: !activeSM, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: activeSM === null || activeSM === void 0 ? void 0 : activeSM.parameters.map(param => (jsxs("div", { className: styles.layerItem, children: [jsx("span", { className: styles.layerOpacity, children: param.type }), jsx("span", { className: styles.layerName, children: param.name }), jsx("button", { className: styles.effectRemove, onClick: () => api.removeParameter(param.id), children: "\u00D7" })] }, param.id))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Transitions" }) }), jsxs("div", { className: styles.panelContent, children: [activeSM === null || activeSM === void 0 ? void 0 : activeSM.transitions.map(trans => {
308
+ })] })) : (jsx("div", { className: styles.emptyState, children: jsx("div", { className: styles.emptyStateText, children: "Create a state machine to design animation flows" }) })) }), jsxs("div", { className: styles.rightPanel, children: [jsxs("div", { className: styles.panelHeader, children: [jsx("span", { children: "Parameters" }), jsx(Ee, { className: styles.menuBtn, variant: "ghost", size: "sm", onClick: () => api.addParameter('new_param', 'trigger'), disabled: !activeSM, children: "+ Add" })] }), jsx("div", { className: styles.panelContent, children: activeSM === null || activeSM === void 0 ? void 0 : activeSM.parameters.map(param => (jsxs("div", { className: styles.layerItem, children: [jsx("span", { className: styles.layerOpacity, children: param.type }), jsx("span", { className: styles.layerName, children: param.name }), jsx(Ee, { className: styles.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeParameter(param.id), children: "\u00D7" })] }, param.id))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Transitions" }) }), jsxs("div", { className: styles.panelContent, children: [activeSM === null || activeSM === void 0 ? void 0 : activeSM.transitions.map(trans => {
301
309
  var _a, _b;
302
310
  const from = activeSM.states.find(s => s.id === trans.fromStateId);
303
311
  const to = activeSM.states.find(s => s.id === trans.toStateId);
304
- return (jsxs("div", { className: styles.layerItem, children: [jsxs("span", { className: styles.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 : '?'] }), jsx("button", { className: styles.effectRemove, onClick: () => api.removeTransition(trans.id), children: "\u00D7" })] }, trans.id));
305
- }), api.editorState.selectedStateId && (jsxs("div", { className: styles.panelSection, style: { marginTop: 12 }, children: [jsx("label", { className: styles.panelLabel, children: "Add transition to:" }), jsxs("select", { className: styles.panelInput, onChange: e => {
306
- if (e.target.value && api.editorState.selectedStateId) {
307
- api.addTransition(api.editorState.selectedStateId, e.target.value);
312
+ return (jsxs("div", { className: styles.layerItem, children: [jsxs("span", { className: styles.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 : '?'] }), jsx(Ee, { className: styles.effectRemove, variant: "ghost", size: "sm", onClick: () => api.removeTransition(trans.id), children: "\u00D7" })] }, trans.id));
313
+ }), api.editorState.selectedStateId && (jsxs("div", { className: styles.panelSection, style: { marginTop: 12 }, children: [jsx("label", { className: styles.panelLabel, children: "Add transition to:" }), jsx(tn, { className: styles.panelInput, onChange: val => {
314
+ if (val && api.editorState.selectedStateId) {
315
+ api.addTransition(api.editorState.selectedStateId, val);
308
316
  }
309
- }, children: [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 => (jsx("option", { value: s.id, children: s.name }, s.id)))] })] }))] })] })] }));
317
+ }, options: [
318
+ { value: '', label: 'Select target state...' },
319
+ ...((_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 : [])
320
+ ] })] }))] })] })] }));
310
321
  };
311
322
  /* ────────────────────────────────────────────────────────────────
312
323
  EFFECTS PANEL
@@ -328,7 +339,7 @@ const EffectsView = ({ api }) => {
328
339
  { type: 'shadow', label: 'Shadow' },
329
340
  { type: 'palette-swap', label: 'Palette Swap' },
330
341
  ];
331
- return (jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxs("div", { className: styles.leftPanel, children: [jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Add Effect" }) }), jsx("div", { className: styles.panelContent, children: effectTypes.map(({ type, label }) => (jsx("button", { className: styles.layerItem, onClick: () => api.addEffect(type), style: { cursor: 'pointer', border: 'none', textAlign: 'left' }, children: jsx("span", { className: styles.layerName, children: label }) }, type))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Presets" }) }), jsxs("div", { className: styles.panelContent, children: [jsxs("div", { className: styles.panelSection, children: [jsx("input", { type: "text", className: styles.panelInput, placeholder: "Preset name...", value: presetName, onChange: e => setPresetName(e.target.value) }), jsx("button", { className: styles.btnSecondary, style: { marginTop: 4, width: '100%' }, onClick: () => {
342
+ return (jsxs("div", { style: { display: 'flex', flex: 1, overflow: 'hidden' }, children: [jsxs("div", { className: styles.leftPanel, children: [jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Add Effect" }) }), jsx("div", { className: styles.panelContent, children: effectTypes.map(({ type, label }) => (jsx(Ee, { className: styles.layerItem, variant: "ghost", onClick: () => api.addEffect(type), style: { cursor: 'pointer', border: 'none', textAlign: 'left' }, children: jsx("span", { className: styles.layerName, children: label }) }, type))) }), jsx("div", { className: styles.panelHeader, children: jsx("span", { children: "Presets" }) }), jsxs("div", { className: styles.panelContent, children: [jsxs("div", { className: styles.panelSection, children: [jsx(ut, { className: styles.panelInput, placeholder: "Preset name...", value: presetName, onChange: val => setPresetName(val) }), jsx(Ee, { className: styles.btnSecondary, variant: "ghost", style: { marginTop: 4, width: '100%' }, onClick: () => {
332
343
  if (presetName) {
333
344
  api.saveEffectPreset(presetName);
334
345
  setPresetName('');
@@ -341,12 +352,12 @@ const EffectsView = ({ api }) => {
341
352
  const StatusBar = ({ api }) => {
342
353
  const activeMap = api.project.tileMaps.find(m => m.id === api.editorState.activeTileMapId);
343
354
  const activeSheet = api.project.spriteSheets.find(s => s.id === api.editorState.activeSpriteSheetId);
344
- return (jsxs("div", { className: styles.statusBar, children: [jsxs("span", { className: styles.statusItem, children: ["Mode: ", api.editorState.mode] }), api.editorState.mode === 'tilemap' && activeMap && (jsxs(Fragment, { children: [jsxs("span", { className: styles.statusItem, children: ["Map: ", activeMap.name, " (", activeMap.width, "\u00D7", activeMap.height, ")"] }), jsxs("span", { className: styles.statusItem, children: ["Tile: ", activeMap.tileWidth, "\u00D7", activeMap.tileHeight, "px"] })] })), api.editorState.mode === 'spritesheet' && activeSheet && (jsxs(Fragment, { children: [jsxs("span", { className: styles.statusItem, children: ["Sheet: ", activeSheet.name] }), jsxs("span", { className: styles.statusItem, children: ["Selected: ", api.editorState.selectedFrameIds.length, " frames"] })] })), jsxs("div", { className: styles.zoomControl, children: [jsx("button", { className: styles.zoomBtn, onClick: () => api.setZoom(api.editorState.zoom - 0.25), children: "\u2212" }), jsxs("span", { children: [Math.round(api.editorState.zoom * 100), "%"] }), jsx("button", { className: styles.zoomBtn, onClick: () => api.setZoom(api.editorState.zoom + 0.25), children: "+" }), jsx("button", { className: styles.zoomBtn, onClick: () => api.setZoom(1), children: "\u2299" })] })] }));
355
+ return (jsxs("div", { className: styles.statusBar, children: [jsxs("span", { className: styles.statusItem, children: ["Mode: ", api.editorState.mode] }), api.editorState.mode === 'tilemap' && activeMap && (jsxs(Fragment, { children: [jsxs("span", { className: styles.statusItem, children: ["Map: ", activeMap.name, " (", activeMap.width, "\u00D7", activeMap.height, ")"] }), jsxs("span", { className: styles.statusItem, children: ["Tile: ", activeMap.tileWidth, "\u00D7", activeMap.tileHeight, "px"] })] })), api.editorState.mode === 'spritesheet' && activeSheet && (jsxs(Fragment, { children: [jsxs("span", { className: styles.statusItem, children: ["Sheet: ", activeSheet.name] }), jsxs("span", { className: styles.statusItem, children: ["Selected: ", api.editorState.selectedFrameIds.length, " frames"] })] })), jsxs("div", { className: styles.zoomControl, children: [jsx(Ee, { className: styles.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(api.editorState.zoom - 0.25), children: "\u2212" }), jsxs("span", { children: [Math.round(api.editorState.zoom * 100), "%"] }), jsx(Ee, { className: styles.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(api.editorState.zoom + 0.25), children: "+" }), jsx(Ee, { className: styles.zoomBtn, variant: "ghost", size: "sm", onClick: () => api.setZoom(1), children: "\u2299" })] })] }));
345
356
  };
346
357
  /* ────────────────────────────────────────────────────────────────
347
358
  MAIN COMPONENT
348
359
  ──────────────────────────────────────────────────────────────── */
349
- const GameAsset2dEditor = ({ className, onSave, onExport, }) => {
360
+ const NiceGameAsset2dEditor = ({ className, onSave, onExport, }) => {
350
361
  const api = useGameAssetEditor({ onSave, onExport });
351
362
  const renderModeContent = () => {
352
363
  switch (api.editorState.mode) {
@@ -364,6 +375,8 @@ const GameAsset2dEditor = ({ className, onSave, onExport, }) => {
364
375
  };
365
376
  return (jsxs("div", { className: `${styles.root} ${className || ''}`, children: [jsx(MenuBar, { api: api }), jsx(ModeTabs, { api: api }), renderModeContent(), jsx(StatusBar, { api: api })] }));
366
377
  };
378
+ /** @deprecated Use NiceGameAsset2dEditor */
379
+ const GameAsset2dEditor = NiceGameAsset2dEditor;
367
380
 
368
- export { GameAsset2dEditor };
381
+ export { GameAsset2dEditor, NiceGameAsset2dEditor };
369
382
  //# sourceMappingURL=GameAsset2dEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GameAsset2dEditor.js","sources":["../../../src/game/GameAsset2dEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"GameAsset2dEditor.js","sources":["../../../src/game/GameAsset2dEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","NiceButton","NiceNumberInput","NiceTextInput","_Fragment","NiceSelect"],"mappings":"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"}