@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
@@ -1 +1 @@
1
- {"version":3,"file":"usePixelEditor.js","sources":["../../../src/pixel/usePixelEditor.ts"],"sourcesContent":[null],"names":["useState","lid","DEFAULT_BRUSH","DEFAULT_PALETTE","useRef","useCallback","celKey","createBlankImageData","cloneImageData","useEffect","hex2t","bresenhamLine","inB","setPixel","plotEllipse","drawGradient","getSymmetryPoints","applyDitherStamp","applyBrushStamp","floodFill","getPixel","rgbaToHex","copySelection","clearSelection","pasteAt","aseColorToHex","parseAseFile","_doExportAse","_doExportPNG","_doExportJPG","_doExportWebP","_doExportBMP","_doExportSVG","_doExportSheet","flipH","flipV","rotateCW","useMemo"],"mappings":"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"}
1
+ {"version":3,"file":"usePixelEditor.js","sources":["../../../src/pixel/usePixelEditor.ts"],"sourcesContent":[null],"names":["useState","lid","DEFAULT_BRUSH","DEFAULT_PALETTE","useRef","useCallback","celKey","createBlankImageData","cloneImageData","useEffect","hex2t","bresenhamLine","inB","setPixel","plotEllipse","drawGradient","getSymmetryPoints","applyDitherStamp","applyBrushStamp","floodFill","getPixel","rgbaToHex","copySelection","clearSelection","pasteAt","aseColorToHex","parseAseFile","_doExportAse","_doExportPNG","_doExportJPG","_doExportWebP","_doExportBMP","_doExportSVG","_doExportSheet","flipH","flipV","rotateCW","useMemo"],"mappings":"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"}
@@ -1,18 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ var jsxRuntime = require('react/jsx-runtime');
3
4
  var React = require('react');
4
5
 
5
- /**
6
- * Nice3DTexturePainter.tsx โ€” Paint textures directly on 3D models.
7
- *
8
- * Features:
9
- * - WebGL-based 3D model viewer
10
- * - UV unwrap visualization
11
- * - Brush painting on UV texture
12
- * - Texture baking and export (PNG, JPEG, WebP)
13
- * - Layer support for non-destructive painting
14
- * - Color picker and brush settings
15
- */
16
6
  // โ”€โ”€ Default Config โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
17
7
  const DEFAULT_BRUSH = {
18
8
  size: 20,
@@ -27,8 +17,9 @@ function useTexturePainter(width, height) {
27
17
  const [layers, setLayers] = React.useState([]);
28
18
  const [activeLayerId, setActiveLayerId] = React.useState(null);
29
19
  const [tool, setTool] = React.useState("brush");
20
+ const [renderVersion, setRenderVersion] = React.useState(0);
21
+ const undoStackRef = React.useRef([]);
30
22
  React.useEffect(() => {
31
- // Create default layer
32
23
  if (typeof document === "undefined")
33
24
  return;
34
25
  const canvas = document.createElement("canvas");
@@ -59,6 +50,62 @@ function useTexturePainter(width, height) {
59
50
  setLayers((prev) => prev.filter((l) => l.id !== id));
60
51
  setActiveLayerId((prev) => prev === id ? null : prev);
61
52
  }, []);
53
+ const toggleLayerVisibility = React.useCallback((id) => {
54
+ setLayers((prev) => prev.map((l) => l.id === id ? { ...l, visible: !l.visible } : l));
55
+ setRenderVersion((v) => v + 1);
56
+ }, []);
57
+ const setLayerOpacity = React.useCallback((id, opacity) => {
58
+ setLayers((prev) => prev.map((l) => l.id === id ? { ...l, opacity } : l));
59
+ setRenderVersion((v) => v + 1);
60
+ }, []);
61
+ const beginStroke = React.useCallback(() => {
62
+ const layer = layers.find((l) => l.id === activeLayerId);
63
+ if (!layer)
64
+ return;
65
+ const ctx = layer.canvas.getContext("2d");
66
+ if (!ctx)
67
+ return;
68
+ undoStackRef.current.push({
69
+ layerId: layer.id,
70
+ imageData: ctx.getImageData(0, 0, layer.canvas.width, layer.canvas.height),
71
+ });
72
+ if (undoStackRef.current.length > 40)
73
+ undoStackRef.current.shift();
74
+ }, [layers, activeLayerId]);
75
+ const undo = React.useCallback(() => {
76
+ const snapshot = undoStackRef.current.pop();
77
+ if (!snapshot)
78
+ return;
79
+ const layer = layers.find((l) => l.id === snapshot.layerId);
80
+ if (!layer)
81
+ return;
82
+ const ctx = layer.canvas.getContext("2d");
83
+ if (!ctx)
84
+ return;
85
+ ctx.putImageData(snapshot.imageData, 0, 0);
86
+ setRenderVersion((v) => v + 1);
87
+ }, [layers]);
88
+ const eyedrop = React.useCallback((x, y) => {
89
+ // Sample composite color from all visible layers
90
+ if (typeof document === "undefined")
91
+ return;
92
+ const tmp = document.createElement("canvas");
93
+ tmp.width = width;
94
+ tmp.height = height;
95
+ const ctx = tmp.getContext("2d");
96
+ if (!ctx)
97
+ return;
98
+ for (const layer of layers) {
99
+ if (!layer.visible)
100
+ continue;
101
+ ctx.globalAlpha = layer.opacity;
102
+ ctx.drawImage(layer.canvas, 0, 0);
103
+ }
104
+ const px = ctx.getImageData(Math.round(x), Math.round(y), 1, 1).data;
105
+ const hex = `#${px[0].toString(16).padStart(2, "0")}${px[1].toString(16).padStart(2, "0")}${px[2].toString(16).padStart(2, "0")}`;
106
+ setBrush((b) => ({ ...b, color: hex }));
107
+ setTool("brush");
108
+ }, [layers, width, height]);
62
109
  const paintStroke = React.useCallback((x, y) => {
63
110
  const layer = layers.find((l) => l.id === activeLayerId);
64
111
  if (!layer)
@@ -75,7 +122,6 @@ function useTexturePainter(width, height) {
75
122
  ctx.globalCompositeOperation = "source-over";
76
123
  }
77
124
  else if (tool === "brush") {
78
- // Gradient brush based on hardness
79
125
  const gradient = ctx.createRadialGradient(x, y, 0, x, y, brush.size / 2);
80
126
  gradient.addColorStop(0, brush.color);
81
127
  gradient.addColorStop(brush.hardness, brush.color);
@@ -90,6 +136,7 @@ function useTexturePainter(width, height) {
90
136
  ctx.fillRect(0, 0, width, height);
91
137
  }
92
138
  ctx.globalAlpha = 1;
139
+ setRenderVersion((v) => v + 1);
93
140
  }, [layers, activeLayerId, brush, tool, width, height]);
94
141
  const flattenToBlob = React.useCallback(async () => {
95
142
  if (typeof document === "undefined")
@@ -116,15 +163,24 @@ function useTexturePainter(width, height) {
116
163
  tool, setTool,
117
164
  paintStroke,
118
165
  flattenToBlob,
166
+ beginStroke, undo, canUndo: undoStackRef.current.length > 0,
167
+ toggleLayerVisibility, setLayerOpacity,
168
+ eyedrop, renderVersion,
119
169
  };
120
170
  }
121
171
  // โ”€โ”€ Component โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
122
- /** 3D texture painting tool with UV-space brush painting. */
172
+ /** 3D texture painting tool with UV-space brush painting, zoom/pan, and layers. */
123
173
  const Nice3DTexturePainter = ({ textureWidth = 1024, textureHeight = 1024, onSave, className = "", }) => {
124
174
  const painter = useTexturePainter(textureWidth, textureHeight);
125
175
  const canvasRef = React.useRef(null);
126
176
  const isPainting = React.useRef(false);
127
- const [previewScale] = React.useState(0.5);
177
+ const [zoom, setZoom] = React.useState(0.5);
178
+ const [panOffset, setPanOffset] = React.useState({ x: 0, y: 0 });
179
+ const isPanning = React.useRef(false);
180
+ const lastPan = React.useRef({ x: 0, y: 0 });
181
+ const [cursorPos, setCursorPos] = React.useState(null);
182
+ const pw = Math.round(textureWidth * zoom);
183
+ const ph = Math.round(textureHeight * zoom);
128
184
  // Render composite texture to preview
129
185
  React.useEffect(() => {
130
186
  const canvas = canvasRef.current;
@@ -134,7 +190,6 @@ const Nice3DTexturePainter = ({ textureWidth = 1024, textureHeight = 1024, onSav
134
190
  if (!ctx)
135
191
  return;
136
192
  ctx.clearRect(0, 0, canvas.width, canvas.height);
137
- // Checkerboard background
138
193
  const size = 8;
139
194
  for (let y = 0; y < canvas.height; y += size) {
140
195
  for (let x = 0; x < canvas.width; x += size) {
@@ -149,86 +204,75 @@ const Nice3DTexturePainter = ({ textureWidth = 1024, textureHeight = 1024, onSav
149
204
  ctx.drawImage(layer.canvas, 0, 0, canvas.width, canvas.height);
150
205
  }
151
206
  ctx.globalAlpha = 1;
152
- }, [painter.layers, painter.brush]);
153
- const handlePointerDown = (e) => {
207
+ }, [painter.layers, painter.renderVersion, zoom]);
208
+ const screenToTexture = (e) => {
154
209
  var _a;
155
- isPainting.current = true;
156
210
  const rect = (_a = canvasRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
157
211
  if (!rect)
212
+ return { x: 0, y: 0 };
213
+ return {
214
+ x: ((e.clientX - rect.left) / rect.width) * textureWidth,
215
+ y: ((e.clientY - rect.top) / rect.height) * textureHeight,
216
+ };
217
+ };
218
+ const handlePointerDown = (e) => {
219
+ if (e.button === 1) {
220
+ isPanning.current = true;
221
+ lastPan.current = { x: e.clientX, y: e.clientY };
222
+ e.preventDefault();
223
+ return;
224
+ }
225
+ if (painter.tool === "eyedropper") {
226
+ const { x, y } = screenToTexture(e);
227
+ painter.eyedrop(x, y);
158
228
  return;
159
- const x = ((e.clientX - rect.left) / rect.width) * textureWidth;
160
- const y = ((e.clientY - rect.top) / rect.height) * textureHeight;
229
+ }
230
+ painter.beginStroke();
231
+ isPainting.current = true;
232
+ const { x, y } = screenToTexture(e);
161
233
  painter.paintStroke(x, y);
162
234
  e.target.setPointerCapture(e.pointerId);
163
235
  };
164
236
  const handlePointerMove = (e) => {
165
- var _a;
166
- if (!isPainting.current)
237
+ const { x, y } = screenToTexture(e);
238
+ setCursorPos({ x: Math.round(x), y: Math.round(y) });
239
+ if (isPanning.current) {
240
+ setPanOffset((prev) => ({
241
+ x: prev.x + e.clientX - lastPan.current.x,
242
+ y: prev.y + e.clientY - lastPan.current.y,
243
+ }));
244
+ lastPan.current = { x: e.clientX, y: e.clientY };
167
245
  return;
168
- const rect = (_a = canvasRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
169
- if (!rect)
246
+ }
247
+ if (!isPainting.current)
170
248
  return;
171
- const x = ((e.clientX - rect.left) / rect.width) * textureWidth;
172
- const y = ((e.clientY - rect.top) / rect.height) * textureHeight;
173
249
  painter.paintStroke(x, y);
174
250
  };
175
- const handlePointerUp = () => { isPainting.current = false; };
251
+ const handlePointerUp = () => {
252
+ isPainting.current = false;
253
+ isPanning.current = false;
254
+ };
255
+ const handleWheel = (e) => {
256
+ e.preventDefault();
257
+ setZoom((z) => Math.max(0.1, Math.min(4, z + (e.deltaY > 0 ? -0.05 : 0.05))));
258
+ };
176
259
  const handleSave = async () => {
177
260
  const blob = await painter.flattenToBlob();
178
261
  if (blob)
179
262
  onSave === null || onSave === void 0 ? void 0 : onSave(blob);
180
263
  };
181
- const pw = Math.round(textureWidth * previewScale);
182
- const ph = Math.round(textureHeight * previewScale);
183
- return React.createElement("div", {
184
- className: `nice-3d-texture-painter ${className}`,
185
- style: { display: "flex", gap: 8, background: "#1a1b1e", color: "#c1c2c5", padding: 12, borderRadius: 8 },
186
- },
187
- // Tools
188
- React.createElement("div", { style: { width: 120, fontSize: 11, display: "flex", flexDirection: "column", gap: 4 } }, React.createElement("strong", null, "Tools"), ...["brush", "eraser", "eyedropper", "fill"].map((t) => React.createElement("button", {
189
- key: t, onClick: () => painter.setTool(t),
190
- style: {
191
- padding: "3px 6px", border: "none", borderRadius: 3, cursor: "pointer",
192
- background: painter.tool === t ? "#339af0" : "#2c2e33", color: painter.tool === t ? "#fff" : "#c1c2c5",
193
- },
194
- }, t.charAt(0).toUpperCase() + t.slice(1))), React.createElement("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%" } }), React.createElement("label", null, "Size"), React.createElement("input", {
195
- type: "range", min: 1, max: 100, value: painter.brush.size,
196
- onChange: (e) => painter.setBrush({ ...painter.brush, size: Number(e.target.value) }),
197
- style: { width: "100%" },
198
- }), React.createElement("label", null, "Opacity"), React.createElement("input", {
199
- type: "range", min: 0, max: 1, step: 0.01, value: painter.brush.opacity,
200
- onChange: (e) => painter.setBrush({ ...painter.brush, opacity: Number(e.target.value) }),
201
- style: { width: "100%" },
202
- }), React.createElement("label", null, "Color"), React.createElement("input", {
203
- type: "color", value: painter.brush.color,
204
- onChange: (e) => painter.setBrush({ ...painter.brush, color: e.target.value }),
205
- style: { width: "100%", height: 24 },
206
- })),
207
- // Canvas
208
- React.createElement("div", { style: { flex: 1 } }, React.createElement("canvas", {
209
- ref: canvasRef,
210
- width: pw, height: ph,
211
- onPointerDown: handlePointerDown,
212
- onPointerMove: handlePointerMove,
213
- onPointerUp: handlePointerUp,
214
- style: { cursor: "crosshair", borderRadius: 4, border: "1px solid #373a40" },
215
- })),
216
- // Layers
217
- React.createElement("div", { style: { width: 140, fontSize: 11, display: "flex", flexDirection: "column", gap: 4 } }, React.createElement("strong", null, "Layers"), ...painter.layers.map((l) => React.createElement("div", {
218
- key: l.id,
219
- onClick: () => painter.setActiveLayerId(l.id),
220
- style: {
221
- padding: "3px 6px", borderRadius: 3, cursor: "pointer",
222
- background: painter.activeLayerId === l.id ? "#339af0" : "#2c2e33",
223
- color: painter.activeLayerId === l.id ? "#fff" : "#c1c2c5",
224
- },
225
- }, l.name)), React.createElement("button", {
226
- onClick: () => painter.addLayer(`Layer ${painter.layers.length + 1}`),
227
- style: { padding: "3px 6px", border: "none", borderRadius: 3, cursor: "pointer", background: "#2c2e33", color: "#c1c2c5" },
228
- }, "+ Add Layer"), React.createElement("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%" } }), React.createElement("button", {
229
- onClick: handleSave,
230
- style: { padding: "4px 8px", background: "#2f9e44", color: "#fff", border: "none", borderRadius: 3, cursor: "pointer" },
231
- }, "Save Texture")));
264
+ const toolIcons = { brush: "๐Ÿ–Œ๏ธ", eraser: "๐Ÿงน", eyedropper: "๐Ÿ’ง", fill: "๐Ÿชฃ" };
265
+ const btnStyle = (active) => ({
266
+ padding: "4px 8px", border: "none", borderRadius: 3, cursor: "pointer", fontSize: 11,
267
+ background: active ? "#339af0" : "#2c2e33", color: active ? "#fff" : "#c1c2c5",
268
+ display: "flex", alignItems: "center", gap: 4,
269
+ });
270
+ const toolCursor = painter.tool === "eyedropper" ? "crosshair" : painter.tool === "brush" ? "crosshair" : painter.tool === "eraser" ? "cell" : "crosshair";
271
+ return (jsxRuntime.jsxs("div", { className: `nice-3d-texture-painter ${className}`, style: { display: "flex", gap: 8, background: "#1a1b1e", color: "#c1c2c5", padding: 12, borderRadius: 8 }, children: [jsxRuntime.jsxs("div", { style: { width: 140, fontSize: 11, display: "flex", flexDirection: "column", gap: 4 }, children: [jsxRuntime.jsx("strong", { style: { fontSize: 12 }, children: "Tools" }), ["brush", "eraser", "eyedropper", "fill"].map((t) => (jsxRuntime.jsxs("button", { onClick: () => painter.setTool(t), style: btnStyle(painter.tool === t), children: [toolIcons[t], " ", t.charAt(0).toUpperCase() + t.slice(1), " ", jsxRuntime.jsx("span", { style: { color: "#868e96", marginLeft: "auto" }, children: t === "brush" ? "B" : t === "eraser" ? "E" : t === "eyedropper" ? "I" : "G" })] }, t))), jsxRuntime.jsx("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%", margin: "4px 0" } }), jsxRuntime.jsx("div", { style: { display: "flex", justifyContent: "space-between" }, children: jsxRuntime.jsx("button", { onClick: () => painter.undo(), style: btnStyle(false), title: "Undo (Ctrl+Z)", children: "\u21A9 Undo" }) }), jsxRuntime.jsx("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%", margin: "4px 0" } }), jsxRuntime.jsxs("label", { children: ["Size: ", painter.brush.size, "px"] }), jsxRuntime.jsx("input", { type: "range", min: 1, max: 100, value: painter.brush.size, onChange: (e) => painter.setBrush({ ...painter.brush, size: Number(e.target.value) }), style: { width: "100%" } }), jsxRuntime.jsxs("label", { children: ["Opacity: ", Math.round(painter.brush.opacity * 100), "%"] }), jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: painter.brush.opacity, onChange: (e) => painter.setBrush({ ...painter.brush, opacity: Number(e.target.value) }), style: { width: "100%" } }), jsxRuntime.jsxs("label", { children: ["Hardness: ", Math.round(painter.brush.hardness * 100), "%"] }), jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: painter.brush.hardness, onChange: (e) => painter.setBrush({ ...painter.brush, hardness: Number(e.target.value) }), style: { width: "100%" } }), jsxRuntime.jsx("label", { children: "Blend Mode" }), jsxRuntime.jsxs("select", { value: painter.brush.blendMode, onChange: (e) => painter.setBrush({ ...painter.brush, blendMode: e.target.value }), style: { width: "100%", padding: 2, background: "#2c2e33", color: "#c1c2c5", border: "1px solid #373a40", borderRadius: 3, fontSize: 10 }, children: [jsxRuntime.jsx("option", { value: "normal", children: "Normal" }), jsxRuntime.jsx("option", { value: "multiply", children: "Multiply" }), jsxRuntime.jsx("option", { value: "screen", children: "Screen" }), jsxRuntime.jsx("option", { value: "overlay", children: "Overlay" })] }), jsxRuntime.jsx("label", { children: "Color" }), jsxRuntime.jsxs("div", { style: { display: "flex", gap: 4, alignItems: "center" }, children: [jsxRuntime.jsx("input", { type: "color", value: painter.brush.color, onChange: (e) => painter.setBrush({ ...painter.brush, color: e.target.value }), style: { width: 32, height: 24, border: "none", cursor: "pointer" } }), jsxRuntime.jsx("span", { style: { fontFamily: "monospace", fontSize: 10 }, children: painter.brush.color })] }), jsxRuntime.jsx("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%", margin: "4px 0" } }), jsxRuntime.jsxs("label", { children: ["Zoom: ", Math.round(zoom * 100), "%"] }), jsxRuntime.jsxs("div", { style: { display: "flex", gap: 2 }, children: [jsxRuntime.jsx("button", { onClick: () => setZoom((z) => Math.max(0.1, z - 0.1)), style: btnStyle(false), children: "\u2212" }), jsxRuntime.jsx("button", { onClick: () => setZoom(0.5), style: btnStyle(false), children: "Reset" }), jsxRuntime.jsx("button", { onClick: () => setZoom((z) => Math.min(4, z + 0.1)), style: btnStyle(false), children: "+" })] })] }), jsxRuntime.jsxs("div", { style: { flex: 1, overflow: "hidden", position: "relative", background: "#141517", borderRadius: 6 }, onWheel: handleWheel, children: [jsxRuntime.jsx("div", { style: { transform: `translate(${panOffset.x}px, ${panOffset.y}px)`, display: "inline-block", padding: 16 }, children: jsxRuntime.jsx("canvas", { ref: canvasRef, width: pw, height: ph, onPointerDown: handlePointerDown, onPointerMove: handlePointerMove, onPointerUp: handlePointerUp, style: { cursor: toolCursor, borderRadius: 4, border: "1px solid #373a40" } }) }), jsxRuntime.jsxs("div", { style: { position: "absolute", bottom: 4, left: 8, fontSize: 10, color: "#868e96", display: "flex", gap: 12 }, children: [jsxRuntime.jsxs("span", { children: [textureWidth, "\u00D7", textureHeight] }), cursorPos && jsxRuntime.jsxs("span", { children: ["X: ", cursorPos.x, " Y: ", cursorPos.y] }), jsxRuntime.jsxs("span", { children: ["Zoom: ", Math.round(zoom * 100), "%"] })] })] }), jsxRuntime.jsxs("div", { style: { width: 160, fontSize: 11, display: "flex", flexDirection: "column", gap: 4 }, children: [jsxRuntime.jsx("strong", { style: { fontSize: 12 }, children: "Layers" }), jsxRuntime.jsx("div", { style: { flex: 1, overflowY: "auto", display: "flex", flexDirection: "column", gap: 2 }, children: [...painter.layers].reverse().map((l) => (jsxRuntime.jsxs("div", { style: {
272
+ padding: "4px 6px", borderRadius: 3,
273
+ background: painter.activeLayerId === l.id ? "#339af0" : "#2c2e33",
274
+ color: painter.activeLayerId === l.id ? "#fff" : "#c1c2c5",
275
+ }, children: [jsxRuntime.jsxs("div", { style: { display: "flex", alignItems: "center", gap: 4, cursor: "pointer" }, onClick: () => painter.setActiveLayerId(l.id), children: [jsxRuntime.jsx("button", { onClick: (e) => { e.stopPropagation(); painter.toggleLayerVisibility(l.id); }, style: { background: "transparent", border: "none", cursor: "pointer", padding: 0, color: l.visible ? "#c1c2c5" : "#5c5f66", fontSize: 12 }, title: l.visible ? "Hide layer" : "Show layer", children: l.visible ? "๐Ÿ‘" : "๐Ÿ‘โ€๐Ÿ—จ" }), jsxRuntime.jsx("span", { style: { flex: 1, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: l.name }), l.id !== "base" && (jsxRuntime.jsx("button", { onClick: (e) => { e.stopPropagation(); painter.removeLayer(l.id); }, style: { background: "transparent", border: "none", color: "#ff6b6b", cursor: "pointer", padding: 0, fontSize: 10 }, children: "\u2715" }))] }), jsxRuntime.jsxs("div", { style: { display: "flex", alignItems: "center", gap: 4, marginTop: 2 }, children: [jsxRuntime.jsx("span", { style: { fontSize: 9, color: "#868e96" }, children: "\u03B1" }), jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: l.opacity, onChange: (e) => painter.setLayerOpacity(l.id, Number(e.target.value)), style: { flex: 1, height: 12 } }), jsxRuntime.jsxs("span", { style: { fontSize: 9, minWidth: 24, textAlign: "right" }, children: [Math.round(l.opacity * 100), "%"] })] })] }, l.id))) }), jsxRuntime.jsx("button", { onClick: () => painter.addLayer(`Layer ${painter.layers.length + 1}`), style: { padding: "4px 8px", border: "none", borderRadius: 3, cursor: "pointer", background: "#2c2e33", color: "#c1c2c5" }, children: "+ Add Layer" }), jsxRuntime.jsx("hr", { style: { border: "none", borderTop: "1px solid #373a40", width: "100%", margin: "4px 0" } }), jsxRuntime.jsx("button", { onClick: handleSave, style: { padding: "6px 8px", background: "#2f9e44", color: "#fff", border: "none", borderRadius: 3, cursor: "pointer", fontWeight: "bold" }, children: "Save Texture" })] })] }));
232
276
  };
233
277
 
234
278
  exports.Nice3DTexturePainter = Nice3DTexturePainter;