@nice2dev/ui-graphics 1.1.0 → 1.1.1

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 (391) hide show
  1. package/dist/cjs/animation/AnimatedPerson.js +69 -63
  2. package/dist/cjs/animation/AnimatedPerson.js.map +1 -1
  3. package/dist/cjs/animation/AnimationEditor.js +27 -20
  4. package/dist/cjs/animation/AnimationEditor.js.map +1 -1
  5. package/dist/cjs/animation/Audience.js +17 -11
  6. package/dist/cjs/animation/Audience.js.map +1 -1
  7. package/dist/cjs/animation/BodyRenderer.js +7 -7
  8. package/dist/cjs/animation/BodyRenderer.js.map +1 -1
  9. package/dist/cjs/animation/animationHelper.js +83 -52
  10. package/dist/cjs/animation/animationHelper.js.map +1 -1
  11. package/dist/cjs/animation/characterTypes.js +171 -30
  12. package/dist/cjs/animation/characterTypes.js.map +1 -1
  13. package/dist/cjs/animation/choreoDSL.js +114 -62
  14. package/dist/cjs/animation/choreoDSL.js.map +1 -1
  15. package/dist/cjs/animation/karaokeIntegration.js +10 -11
  16. package/dist/cjs/animation/karaokeIntegration.js.map +1 -1
  17. package/dist/cjs/animation/lottieExport.js +15 -9
  18. package/dist/cjs/animation/lottieExport.js.map +1 -1
  19. package/dist/cjs/animation/motionPath.js +125 -30
  20. package/dist/cjs/animation/motionPath.js.map +1 -1
  21. package/dist/cjs/animation/physics.js +157 -57
  22. package/dist/cjs/animation/physics.js.map +1 -1
  23. package/dist/cjs/animation/rig/RigPlayer.js +7 -6
  24. package/dist/cjs/animation/rig/RigPlayer.js.map +1 -1
  25. package/dist/cjs/animation/rig/RiggedBody.js +7 -7
  26. package/dist/cjs/animation/rig/RiggedBody.js.map +1 -1
  27. package/dist/cjs/animation/rig/choreoRigBridge.js +52 -29
  28. package/dist/cjs/animation/rig/choreoRigBridge.js.map +1 -1
  29. package/dist/cjs/animation/rig/poseOps.js +6 -3
  30. package/dist/cjs/animation/rig/poseOps.js.map +1 -1
  31. package/dist/cjs/animation/shapes/arms.js +7 -6
  32. package/dist/cjs/animation/shapes/arms.js.map +1 -1
  33. package/dist/cjs/animation/shapes/eyes.js +31 -18
  34. package/dist/cjs/animation/shapes/eyes.js.map +1 -1
  35. package/dist/cjs/animation/shapes/hair.js +39 -23
  36. package/dist/cjs/animation/shapes/hair.js.map +1 -1
  37. package/dist/cjs/animation/shapes/heads.js +47 -29
  38. package/dist/cjs/animation/shapes/heads.js.map +1 -1
  39. package/dist/cjs/animation/shapes/headwear.js +26 -14
  40. package/dist/cjs/animation/shapes/headwear.js.map +1 -1
  41. package/dist/cjs/animation/shapes/legs.js +7 -6
  42. package/dist/cjs/animation/shapes/legs.js.map +1 -1
  43. package/dist/cjs/animation/shapes/mouths.js +28 -18
  44. package/dist/cjs/animation/shapes/mouths.js.map +1 -1
  45. package/dist/cjs/animation/shapes/noses.js +18 -9
  46. package/dist/cjs/animation/shapes/noses.js.map +1 -1
  47. package/dist/cjs/animation/shapes/outfits.js +25 -14
  48. package/dist/cjs/animation/shapes/outfits.js.map +1 -1
  49. package/dist/cjs/animation/shapes/torsos.js +5 -4
  50. package/dist/cjs/animation/shapes/torsos.js.map +1 -1
  51. package/dist/cjs/animation/spineExport.js +33 -26
  52. package/dist/cjs/animation/spineExport.js.map +1 -1
  53. package/dist/cjs/core/LocalUI.js +16 -16
  54. package/dist/cjs/core/LocalUI.js.map +1 -1
  55. package/dist/cjs/core/NiceBrushEngine.js +205 -69
  56. package/dist/cjs/core/NiceBrushEngine.js.map +1 -1
  57. package/dist/cjs/core/collaboration.js +35 -21
  58. package/dist/cjs/core/collaboration.js.map +1 -1
  59. package/dist/cjs/core/colorBlindness.js +64 -24
  60. package/dist/cjs/core/colorBlindness.js.map +1 -1
  61. package/dist/cjs/core/dragDrop.js +34 -26
  62. package/dist/cjs/core/dragDrop.js.map +1 -1
  63. package/dist/cjs/core/fixes.js +26 -14
  64. package/dist/cjs/core/fixes.js.map +1 -1
  65. package/dist/cjs/core/gridGuides.js +24 -16
  66. package/dist/cjs/core/gridGuides.js.map +1 -1
  67. package/dist/cjs/core/historyVisual.js +42 -23
  68. package/dist/cjs/core/historyVisual.js.map +1 -1
  69. package/dist/cjs/core/integrations.js +65 -48
  70. package/dist/cjs/core/integrations.js.map +1 -1
  71. package/dist/cjs/core/minimap.js +40 -24
  72. package/dist/cjs/core/minimap.js.map +1 -1
  73. package/dist/cjs/core/plugins.js +10 -6
  74. package/dist/cjs/core/plugins.js.map +1 -1
  75. package/dist/cjs/core/rtl.js +32 -27
  76. package/dist/cjs/core/rtl.js.map +1 -1
  77. package/dist/cjs/core/shortcuts.js +77 -39
  78. package/dist/cjs/core/shortcuts.js.map +1 -1
  79. package/dist/cjs/core/theme.js +68 -61
  80. package/dist/cjs/core/theme.js.map +1 -1
  81. package/dist/cjs/core/yjsCollaboration.js +61 -28
  82. package/dist/cjs/core/yjsCollaboration.js.map +1 -1
  83. package/dist/cjs/font/NiceFontEditor.js +160 -57
  84. package/dist/cjs/font/NiceFontEditor.js.map +1 -1
  85. package/dist/cjs/font/fontFormatUtils.js +37 -24
  86. package/dist/cjs/font/fontFormatUtils.js.map +1 -1
  87. package/dist/cjs/game/GameAsset2dEditor.js +73 -60
  88. package/dist/cjs/game/GameAsset2dEditor.js.map +1 -1
  89. package/dist/cjs/game/gameAssetUtils.js +18 -13
  90. package/dist/cjs/game/gameAssetUtils.js.map +1 -1
  91. package/dist/cjs/game/useGameAssetEditor.js +160 -143
  92. package/dist/cjs/game/useGameAssetEditor.js.map +1 -1
  93. package/dist/cjs/icon/NiceIconEditor.js +329 -106
  94. package/dist/cjs/icon/NiceIconEditor.js.map +1 -1
  95. package/dist/cjs/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js +572 -0
  96. package/dist/cjs/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js.map +1 -0
  97. package/dist/cjs/packages/ui/dist/NiceForm-CKoJA6NG.js +4979 -0
  98. package/dist/cjs/packages/ui/dist/NiceForm-CKoJA6NG.js.map +1 -0
  99. package/dist/cjs/packages/ui/dist/NiceModal-1QX7NhyH.js +98 -0
  100. package/dist/cjs/packages/ui/dist/NiceModal-1QX7NhyH.js.map +1 -0
  101. package/dist/cjs/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js +5244 -0
  102. package/dist/cjs/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js.map +1 -0
  103. package/dist/cjs/packages/ui/dist/NicePagination-DbE-uOkl.js +174 -0
  104. package/dist/cjs/packages/ui/dist/NicePagination-DbE-uOkl.js.map +1 -0
  105. package/dist/cjs/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js +10459 -0
  106. package/dist/cjs/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js.map +1 -0
  107. package/dist/cjs/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js +6313 -0
  108. package/dist/cjs/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js.map +1 -0
  109. package/dist/cjs/packages/ui/dist/NiceTabs-DzLHzwuA.js +1639 -0
  110. package/dist/cjs/packages/ui/dist/NiceTabs-DzLHzwuA.js.map +1 -0
  111. package/dist/cjs/packages/ui/dist/NiceWindow-DeC83yfE.js +807 -0
  112. package/dist/cjs/packages/ui/dist/NiceWindow-DeC83yfE.js.map +1 -0
  113. package/dist/cjs/packages/ui/dist/charts-BAS21jkC.js +3833 -0
  114. package/dist/cjs/packages/ui/dist/charts-BAS21jkC.js.map +1 -0
  115. package/dist/cjs/packages/ui/dist/core-Da43q-pO.js +11683 -0
  116. package/dist/cjs/packages/ui/dist/core-Da43q-pO.js.map +1 -0
  117. package/dist/cjs/packages/ui/dist/index-pAuGTbuB.js +28876 -0
  118. package/dist/cjs/packages/ui/dist/index-pAuGTbuB.js.map +1 -0
  119. package/dist/cjs/photo/FilterThumb.js +7 -5
  120. package/dist/cjs/photo/FilterThumb.js.map +1 -1
  121. package/dist/cjs/photo/NiceAITools.js +78 -32
  122. package/dist/cjs/photo/NiceAITools.js.map +1 -1
  123. package/dist/cjs/photo/PhotoEditor.js +4 -4
  124. package/dist/cjs/photo/PhotoEditor.js.map +1 -1
  125. package/dist/cjs/photo/PhotoEditorCanvas.js +56 -22
  126. package/dist/cjs/photo/PhotoEditorCanvas.js.map +1 -1
  127. package/dist/cjs/photo/PhotoEditorLeftPanel.js +106 -48
  128. package/dist/cjs/photo/PhotoEditorLeftPanel.js.map +1 -1
  129. package/dist/cjs/photo/PhotoEditorToolbar.js +2 -2
  130. package/dist/cjs/photo/PhotoEditorToolbar.js.map +1 -1
  131. package/dist/cjs/photo/photoEditorActions.js +27 -18
  132. package/dist/cjs/photo/photoEditorActions.js.map +1 -1
  133. package/dist/cjs/photo/photoFilters.js +316 -81
  134. package/dist/cjs/photo/photoFilters.js.map +1 -1
  135. package/dist/cjs/photo/photoOverlays.js +521 -165
  136. package/dist/cjs/photo/photoOverlays.js.map +1 -1
  137. package/dist/cjs/photo/photoSelection.js +69 -35
  138. package/dist/cjs/photo/photoSelection.js.map +1 -1
  139. package/dist/cjs/photo/usePhotoEditor.js +203 -97
  140. package/dist/cjs/photo/usePhotoEditor.js.map +1 -1
  141. package/dist/cjs/pixel/HSVPicker.js +32 -19
  142. package/dist/cjs/pixel/HSVPicker.js.map +1 -1
  143. package/dist/cjs/pixel/PixelEditor.js +25 -14
  144. package/dist/cjs/pixel/PixelEditor.js.map +1 -1
  145. package/dist/cjs/pixel/PixelEditorCanvas.js +2 -2
  146. package/dist/cjs/pixel/PixelEditorCanvas.js.map +1 -1
  147. package/dist/cjs/pixel/PixelEditorMenuBar.js +3 -3
  148. package/dist/cjs/pixel/PixelEditorMenuBar.js.map +1 -1
  149. package/dist/cjs/pixel/PixelEditorRightPanel.js +28 -8
  150. package/dist/cjs/pixel/PixelEditorRightPanel.js.map +1 -1
  151. package/dist/cjs/pixel/PixelEditorStatusBar.js +2 -2
  152. package/dist/cjs/pixel/PixelEditorStatusBar.js.map +1 -1
  153. package/dist/cjs/pixel/PixelEditorTimeline.js +3 -4
  154. package/dist/cjs/pixel/PixelEditorTimeline.js.map +1 -1
  155. package/dist/cjs/pixel/PixelEditorToolbar.js +3 -3
  156. package/dist/cjs/pixel/PixelEditorToolbar.js.map +1 -1
  157. package/dist/cjs/pixel/SpriteGeneratorPanel.js +136 -54
  158. package/dist/cjs/pixel/SpriteGeneratorPanel.js.map +1 -1
  159. package/dist/cjs/pixel/asepriteFormat.js +122 -38
  160. package/dist/cjs/pixel/asepriteFormat.js.map +1 -1
  161. package/dist/cjs/pixel/characterGeneratorPresets.js +208 -54
  162. package/dist/cjs/pixel/characterGeneratorPresets.js.map +1 -1
  163. package/dist/cjs/pixel/pixelEditorExports.js +42 -35
  164. package/dist/cjs/pixel/pixelEditorExports.js.map +1 -1
  165. package/dist/cjs/pixel/pixelEditorTypes.js +67 -33
  166. package/dist/cjs/pixel/pixelEditorTypes.js.map +1 -1
  167. package/dist/cjs/pixel/pixelEditorUtils.js +62 -38
  168. package/dist/cjs/pixel/pixelEditorUtils.js.map +1 -1
  169. package/dist/cjs/pixel/spriteGeneratorCore.js +47 -24
  170. package/dist/cjs/pixel/spriteGeneratorCore.js.map +1 -1
  171. package/dist/cjs/pixel/usePixelEditor.js +475 -213
  172. package/dist/cjs/pixel/usePixelEditor.js.map +1 -1
  173. package/dist/cjs/texture/Nice3DTexturePainter.js +201 -71
  174. package/dist/cjs/texture/Nice3DTexturePainter.js.map +1 -1
  175. package/dist/cjs/ui/NiceUIDesigner.js +280 -91
  176. package/dist/cjs/ui/NiceUIDesigner.js.map +1 -1
  177. package/dist/cjs/vector/NiceSvgToCode.js +96 -34
  178. package/dist/cjs/vector/NiceSvgToCode.js.map +1 -1
  179. package/dist/cjs/vector/VectorEditor.js +14 -13
  180. package/dist/cjs/vector/VectorEditor.js.map +1 -1
  181. package/dist/cjs/vector/VectorEditorMenuBar.js +7 -6
  182. package/dist/cjs/vector/VectorEditorMenuBar.js.map +1 -1
  183. package/dist/cjs/vector/VectorEditorRightPanel.js +87 -32
  184. package/dist/cjs/vector/VectorEditorRightPanel.js.map +1 -1
  185. package/dist/cjs/vector/VectorEditorShapeRenderer.js +17 -15
  186. package/dist/cjs/vector/VectorEditorShapeRenderer.js.map +1 -1
  187. package/dist/cjs/vector/VectorEditorStatusBar.js.map +1 -1
  188. package/dist/cjs/vector/useVectorEditor.js +312 -122
  189. package/dist/cjs/vector/useVectorEditor.js.map +1 -1
  190. package/dist/cjs/vector/vectorBooleanOps.js +60 -42
  191. package/dist/cjs/vector/vectorBooleanOps.js.map +1 -1
  192. package/dist/cjs/vector/vectorEditorExport.js +40 -34
  193. package/dist/cjs/vector/vectorEditorExport.js.map +1 -1
  194. package/dist/cjs/vector/vectorGradients.js +41 -40
  195. package/dist/cjs/vector/vectorGradients.js.map +1 -1
  196. package/dist/esm/animation/AnimatedPerson.js +69 -63
  197. package/dist/esm/animation/AnimatedPerson.js.map +1 -1
  198. package/dist/esm/animation/AnimationEditor.js +27 -20
  199. package/dist/esm/animation/AnimationEditor.js.map +1 -1
  200. package/dist/esm/animation/Audience.js +17 -11
  201. package/dist/esm/animation/Audience.js.map +1 -1
  202. package/dist/esm/animation/BodyRenderer.js +7 -7
  203. package/dist/esm/animation/BodyRenderer.js.map +1 -1
  204. package/dist/esm/animation/animationHelper.js +83 -52
  205. package/dist/esm/animation/animationHelper.js.map +1 -1
  206. package/dist/esm/animation/characterTypes.js +171 -30
  207. package/dist/esm/animation/characterTypes.js.map +1 -1
  208. package/dist/esm/animation/choreoDSL.js +114 -62
  209. package/dist/esm/animation/choreoDSL.js.map +1 -1
  210. package/dist/esm/animation/karaokeIntegration.js +10 -11
  211. package/dist/esm/animation/karaokeIntegration.js.map +1 -1
  212. package/dist/esm/animation/lottieExport.js +15 -9
  213. package/dist/esm/animation/lottieExport.js.map +1 -1
  214. package/dist/esm/animation/motionPath.js +125 -30
  215. package/dist/esm/animation/motionPath.js.map +1 -1
  216. package/dist/esm/animation/physics.js +157 -57
  217. package/dist/esm/animation/physics.js.map +1 -1
  218. package/dist/esm/animation/rig/RigPlayer.js +7 -6
  219. package/dist/esm/animation/rig/RigPlayer.js.map +1 -1
  220. package/dist/esm/animation/rig/RiggedBody.js +7 -7
  221. package/dist/esm/animation/rig/RiggedBody.js.map +1 -1
  222. package/dist/esm/animation/rig/choreoRigBridge.js +52 -29
  223. package/dist/esm/animation/rig/choreoRigBridge.js.map +1 -1
  224. package/dist/esm/animation/rig/poseOps.js +6 -3
  225. package/dist/esm/animation/rig/poseOps.js.map +1 -1
  226. package/dist/esm/animation/shapes/arms.js +7 -6
  227. package/dist/esm/animation/shapes/arms.js.map +1 -1
  228. package/dist/esm/animation/shapes/eyes.js +31 -18
  229. package/dist/esm/animation/shapes/eyes.js.map +1 -1
  230. package/dist/esm/animation/shapes/hair.js +39 -23
  231. package/dist/esm/animation/shapes/hair.js.map +1 -1
  232. package/dist/esm/animation/shapes/heads.js +47 -29
  233. package/dist/esm/animation/shapes/heads.js.map +1 -1
  234. package/dist/esm/animation/shapes/headwear.js +26 -14
  235. package/dist/esm/animation/shapes/headwear.js.map +1 -1
  236. package/dist/esm/animation/shapes/legs.js +7 -6
  237. package/dist/esm/animation/shapes/legs.js.map +1 -1
  238. package/dist/esm/animation/shapes/mouths.js +28 -18
  239. package/dist/esm/animation/shapes/mouths.js.map +1 -1
  240. package/dist/esm/animation/shapes/noses.js +18 -9
  241. package/dist/esm/animation/shapes/noses.js.map +1 -1
  242. package/dist/esm/animation/shapes/outfits.js +25 -14
  243. package/dist/esm/animation/shapes/outfits.js.map +1 -1
  244. package/dist/esm/animation/shapes/torsos.js +5 -4
  245. package/dist/esm/animation/shapes/torsos.js.map +1 -1
  246. package/dist/esm/animation/spineExport.js +33 -26
  247. package/dist/esm/animation/spineExport.js.map +1 -1
  248. package/dist/esm/core/LocalUI.js +16 -16
  249. package/dist/esm/core/LocalUI.js.map +1 -1
  250. package/dist/esm/core/NiceBrushEngine.js +205 -69
  251. package/dist/esm/core/NiceBrushEngine.js.map +1 -1
  252. package/dist/esm/core/collaboration.js +35 -21
  253. package/dist/esm/core/collaboration.js.map +1 -1
  254. package/dist/esm/core/colorBlindness.js +64 -24
  255. package/dist/esm/core/colorBlindness.js.map +1 -1
  256. package/dist/esm/core/dragDrop.js +34 -26
  257. package/dist/esm/core/dragDrop.js.map +1 -1
  258. package/dist/esm/core/fixes.js +26 -14
  259. package/dist/esm/core/fixes.js.map +1 -1
  260. package/dist/esm/core/gridGuides.js +24 -16
  261. package/dist/esm/core/gridGuides.js.map +1 -1
  262. package/dist/esm/core/historyVisual.js +42 -23
  263. package/dist/esm/core/historyVisual.js.map +1 -1
  264. package/dist/esm/core/integrations.js +65 -48
  265. package/dist/esm/core/integrations.js.map +1 -1
  266. package/dist/esm/core/minimap.js +40 -24
  267. package/dist/esm/core/minimap.js.map +1 -1
  268. package/dist/esm/core/plugins.js +10 -6
  269. package/dist/esm/core/plugins.js.map +1 -1
  270. package/dist/esm/core/rtl.js +32 -27
  271. package/dist/esm/core/rtl.js.map +1 -1
  272. package/dist/esm/core/shortcuts.js +77 -39
  273. package/dist/esm/core/shortcuts.js.map +1 -1
  274. package/dist/esm/core/theme.js +68 -61
  275. package/dist/esm/core/theme.js.map +1 -1
  276. package/dist/esm/core/yjsCollaboration.js +61 -28
  277. package/dist/esm/core/yjsCollaboration.js.map +1 -1
  278. package/dist/esm/font/NiceFontEditor.js +160 -57
  279. package/dist/esm/font/NiceFontEditor.js.map +1 -1
  280. package/dist/esm/font/fontFormatUtils.js +37 -24
  281. package/dist/esm/font/fontFormatUtils.js.map +1 -1
  282. package/dist/esm/game/GameAsset2dEditor.js +73 -60
  283. package/dist/esm/game/GameAsset2dEditor.js.map +1 -1
  284. package/dist/esm/game/gameAssetUtils.js +18 -13
  285. package/dist/esm/game/gameAssetUtils.js.map +1 -1
  286. package/dist/esm/game/useGameAssetEditor.js +160 -143
  287. package/dist/esm/game/useGameAssetEditor.js.map +1 -1
  288. package/dist/esm/icon/NiceIconEditor.js +329 -106
  289. package/dist/esm/icon/NiceIconEditor.js.map +1 -1
  290. package/dist/esm/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js +563 -0
  291. package/dist/esm/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js.map +1 -0
  292. package/dist/esm/packages/ui/dist/NiceForm-CKoJA6NG.js +4960 -0
  293. package/dist/esm/packages/ui/dist/NiceForm-CKoJA6NG.js.map +1 -0
  294. package/dist/esm/packages/ui/dist/NiceModal-1QX7NhyH.js +96 -0
  295. package/dist/esm/packages/ui/dist/NiceModal-1QX7NhyH.js.map +1 -0
  296. package/dist/esm/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js +5201 -0
  297. package/dist/esm/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js.map +1 -0
  298. package/dist/esm/packages/ui/dist/NicePagination-DbE-uOkl.js +172 -0
  299. package/dist/esm/packages/ui/dist/NicePagination-DbE-uOkl.js.map +1 -0
  300. package/dist/esm/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js +10408 -0
  301. package/dist/esm/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js.map +1 -0
  302. package/dist/esm/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js +6296 -0
  303. package/dist/esm/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js.map +1 -0
  304. package/dist/esm/packages/ui/dist/NiceTabs-DzLHzwuA.js +1630 -0
  305. package/dist/esm/packages/ui/dist/NiceTabs-DzLHzwuA.js.map +1 -0
  306. package/dist/esm/packages/ui/dist/NiceWindow-DeC83yfE.js +796 -0
  307. package/dist/esm/packages/ui/dist/NiceWindow-DeC83yfE.js.map +1 -0
  308. package/dist/esm/packages/ui/dist/charts-BAS21jkC.js +3809 -0
  309. package/dist/esm/packages/ui/dist/charts-BAS21jkC.js.map +1 -0
  310. package/dist/esm/packages/ui/dist/core-Da43q-pO.js +11502 -0
  311. package/dist/esm/packages/ui/dist/core-Da43q-pO.js.map +1 -0
  312. package/dist/esm/packages/ui/dist/index-pAuGTbuB.js +28792 -0
  313. package/dist/esm/packages/ui/dist/index-pAuGTbuB.js.map +1 -0
  314. package/dist/esm/photo/FilterThumb.js +7 -5
  315. package/dist/esm/photo/FilterThumb.js.map +1 -1
  316. package/dist/esm/photo/NiceAITools.js +78 -32
  317. package/dist/esm/photo/NiceAITools.js.map +1 -1
  318. package/dist/esm/photo/PhotoEditor.js +4 -4
  319. package/dist/esm/photo/PhotoEditor.js.map +1 -1
  320. package/dist/esm/photo/PhotoEditorCanvas.js +56 -22
  321. package/dist/esm/photo/PhotoEditorCanvas.js.map +1 -1
  322. package/dist/esm/photo/PhotoEditorLeftPanel.js +106 -48
  323. package/dist/esm/photo/PhotoEditorLeftPanel.js.map +1 -1
  324. package/dist/esm/photo/PhotoEditorToolbar.js +2 -2
  325. package/dist/esm/photo/PhotoEditorToolbar.js.map +1 -1
  326. package/dist/esm/photo/photoEditorActions.js +27 -18
  327. package/dist/esm/photo/photoEditorActions.js.map +1 -1
  328. package/dist/esm/photo/photoFilters.js +316 -81
  329. package/dist/esm/photo/photoFilters.js.map +1 -1
  330. package/dist/esm/photo/photoOverlays.js +521 -165
  331. package/dist/esm/photo/photoOverlays.js.map +1 -1
  332. package/dist/esm/photo/photoSelection.js +69 -35
  333. package/dist/esm/photo/photoSelection.js.map +1 -1
  334. package/dist/esm/photo/usePhotoEditor.js +203 -97
  335. package/dist/esm/photo/usePhotoEditor.js.map +1 -1
  336. package/dist/esm/pixel/HSVPicker.js +32 -19
  337. package/dist/esm/pixel/HSVPicker.js.map +1 -1
  338. package/dist/esm/pixel/PixelEditor.js +25 -14
  339. package/dist/esm/pixel/PixelEditor.js.map +1 -1
  340. package/dist/esm/pixel/PixelEditorCanvas.js +2 -2
  341. package/dist/esm/pixel/PixelEditorCanvas.js.map +1 -1
  342. package/dist/esm/pixel/PixelEditorMenuBar.js +3 -3
  343. package/dist/esm/pixel/PixelEditorMenuBar.js.map +1 -1
  344. package/dist/esm/pixel/PixelEditorRightPanel.js +28 -8
  345. package/dist/esm/pixel/PixelEditorRightPanel.js.map +1 -1
  346. package/dist/esm/pixel/PixelEditorStatusBar.js +2 -2
  347. package/dist/esm/pixel/PixelEditorStatusBar.js.map +1 -1
  348. package/dist/esm/pixel/PixelEditorTimeline.js +3 -4
  349. package/dist/esm/pixel/PixelEditorTimeline.js.map +1 -1
  350. package/dist/esm/pixel/PixelEditorToolbar.js +3 -3
  351. package/dist/esm/pixel/PixelEditorToolbar.js.map +1 -1
  352. package/dist/esm/pixel/SpriteGeneratorPanel.js +136 -54
  353. package/dist/esm/pixel/SpriteGeneratorPanel.js.map +1 -1
  354. package/dist/esm/pixel/asepriteFormat.js +122 -38
  355. package/dist/esm/pixel/asepriteFormat.js.map +1 -1
  356. package/dist/esm/pixel/characterGeneratorPresets.js +208 -54
  357. package/dist/esm/pixel/characterGeneratorPresets.js.map +1 -1
  358. package/dist/esm/pixel/pixelEditorExports.js +42 -35
  359. package/dist/esm/pixel/pixelEditorExports.js.map +1 -1
  360. package/dist/esm/pixel/pixelEditorTypes.js +67 -33
  361. package/dist/esm/pixel/pixelEditorTypes.js.map +1 -1
  362. package/dist/esm/pixel/pixelEditorUtils.js +62 -38
  363. package/dist/esm/pixel/pixelEditorUtils.js.map +1 -1
  364. package/dist/esm/pixel/spriteGeneratorCore.js +47 -24
  365. package/dist/esm/pixel/spriteGeneratorCore.js.map +1 -1
  366. package/dist/esm/pixel/usePixelEditor.js +475 -213
  367. package/dist/esm/pixel/usePixelEditor.js.map +1 -1
  368. package/dist/esm/texture/Nice3DTexturePainter.js +201 -71
  369. package/dist/esm/texture/Nice3DTexturePainter.js.map +1 -1
  370. package/dist/esm/ui/NiceUIDesigner.js +280 -91
  371. package/dist/esm/ui/NiceUIDesigner.js.map +1 -1
  372. package/dist/esm/vector/NiceSvgToCode.js +96 -34
  373. package/dist/esm/vector/NiceSvgToCode.js.map +1 -1
  374. package/dist/esm/vector/VectorEditor.js +14 -13
  375. package/dist/esm/vector/VectorEditor.js.map +1 -1
  376. package/dist/esm/vector/VectorEditorMenuBar.js +7 -6
  377. package/dist/esm/vector/VectorEditorMenuBar.js.map +1 -1
  378. package/dist/esm/vector/VectorEditorRightPanel.js +87 -32
  379. package/dist/esm/vector/VectorEditorRightPanel.js.map +1 -1
  380. package/dist/esm/vector/VectorEditorShapeRenderer.js +17 -15
  381. package/dist/esm/vector/VectorEditorShapeRenderer.js.map +1 -1
  382. package/dist/esm/vector/VectorEditorStatusBar.js.map +1 -1
  383. package/dist/esm/vector/useVectorEditor.js +312 -122
  384. package/dist/esm/vector/useVectorEditor.js.map +1 -1
  385. package/dist/esm/vector/vectorBooleanOps.js +60 -42
  386. package/dist/esm/vector/vectorBooleanOps.js.map +1 -1
  387. package/dist/esm/vector/vectorEditorExport.js +40 -34
  388. package/dist/esm/vector/vectorEditorExport.js.map +1 -1
  389. package/dist/esm/vector/vectorGradients.js +41 -40
  390. package/dist/esm/vector/vectorGradients.js.map +1 -1
  391. package/package.json +2 -2
@@ -10,13 +10,15 @@ const DEFAULT_METRICS = {
10
10
  xHeight: 500,
11
11
  capHeight: 700,
12
12
  };
13
- const BASIC_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 .,:;!?-'\"()[]{}@#$%&*+=/\\<>~`^|_";
13
+ const BASIC_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 .,:;!?-\'"()[]{}@#$%&*+=/\\<>~`^|_';
14
14
  function createDefaultGlyphs() {
15
15
  return Array.from(BASIC_CHARS).map((char) => ({
16
16
  unicode: char.codePointAt(0),
17
17
  char,
18
- name: char === " " ? "space" : `uni${char.codePointAt(0).toString(16).toUpperCase().padStart(4, "0")}`,
19
- path: "",
18
+ name: char === ' '
19
+ ? 'space'
20
+ : `uni${char.codePointAt(0).toString(16).toUpperCase().padStart(4, '0')}`,
21
+ path: '',
20
22
  advanceWidth: 500,
21
23
  leftBearing: 50,
22
24
  }));
@@ -26,7 +28,7 @@ function exportToSvgFont(data) {
26
28
  const glyphElements = data.glyphs
27
29
  .filter((g) => g.path)
28
30
  .map((g) => ` <glyph unicode="&#x${g.unicode.toString(16)};" glyph-name="${g.name}" d="${g.path}" horiz-adv-x="${g.advanceWidth}" />`)
29
- .join("\n");
31
+ .join('\n');
30
32
  return `<?xml version="1.0" standalone="no"?>
31
33
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
32
34
  <svg xmlns="http://www.w3.org/2000/svg">
@@ -54,86 +56,98 @@ function useFontEditor(initialName) {
54
56
  const [metrics, setMetrics] = React.useState(DEFAULT_METRICS);
55
57
  const [glyphs, setGlyphs] = React.useState(createDefaultGlyphs);
56
58
  const [selectedGlyph, setSelectedGlyph] = React.useState(null);
57
- const [previewText, setPreviewText] = React.useState("The quick brown fox jumps over the lazy dog");
59
+ const [previewText, setPreviewText] = React.useState('The quick brown fox jumps over the lazy dog');
58
60
  const [historyIdx, setHistoryIdx] = React.useState(0);
59
61
  const historyRef = React.useRef([]);
60
62
  React.useEffect(() => {
61
63
  historyRef.current = [JSON.parse(JSON.stringify(glyphs))];
62
- }, []); // eslint-disable-line
64
+ }, []); // eslint-disable-line react-hooks/exhaustive-deps
63
65
  const pushHistory = React.useCallback((newGlyphs) => {
64
66
  historyRef.current = historyRef.current.slice(0, historyIdx + 1);
65
67
  historyRef.current.push(JSON.parse(JSON.stringify(newGlyphs)));
66
- if (historyRef.current.length > 40)
68
+ if (historyRef.current.length > 40) {
67
69
  historyRef.current.shift();
70
+ }
68
71
  setHistoryIdx(historyRef.current.length - 1);
69
72
  }, [historyIdx]);
70
73
  const updateGlyph = React.useCallback((unicode, updates) => {
71
- const newGlyphs = glyphs.map((g) => g.unicode === unicode ? { ...g, ...updates } : g);
74
+ const newGlyphs = glyphs.map((g) => (g.unicode === unicode ? { ...g, ...updates } : g));
72
75
  setGlyphs(newGlyphs);
73
76
  pushHistory(newGlyphs);
74
77
  }, [glyphs, pushHistory]);
75
78
  const addGlyph = React.useCallback((char) => {
76
79
  const unicode = char.codePointAt(0);
77
- if (glyphs.some((g) => g.unicode === unicode))
80
+ if (glyphs.some((g) => g.unicode === unicode)) {
78
81
  return;
79
- const newGlyphs = [...glyphs, {
82
+ }
83
+ const newGlyphs = [
84
+ ...glyphs,
85
+ {
80
86
  unicode,
81
87
  char,
82
- name: `uni${unicode.toString(16).toUpperCase().padStart(4, "0")}`,
83
- path: "",
88
+ name: `uni${unicode.toString(16).toUpperCase().padStart(4, '0')}`,
89
+ path: '',
84
90
  advanceWidth: 500,
85
91
  leftBearing: 50,
86
- }];
92
+ },
93
+ ];
87
94
  setGlyphs(newGlyphs);
88
95
  pushHistory(newGlyphs);
89
96
  }, [glyphs, pushHistory]);
90
97
  const toFontData = React.useCallback(() => ({
91
98
  name: fontName,
92
- family: fontName.replace(/\s+/g, ""),
99
+ family: fontName.replace(/\s+/g, ''),
93
100
  metrics,
94
101
  glyphs,
95
102
  }), [fontName, metrics, glyphs]);
96
103
  return {
97
- fontName, setFontName,
98
- metrics, setMetrics,
99
- glyphs, selectedGlyph, setSelectedGlyph,
100
- updateGlyph, addGlyph,
101
- previewText, setPreviewText,
104
+ fontName,
105
+ setFontName,
106
+ metrics,
107
+ setMetrics,
108
+ glyphs,
109
+ selectedGlyph,
110
+ setSelectedGlyph,
111
+ updateGlyph,
112
+ addGlyph,
113
+ previewText,
114
+ setPreviewText,
102
115
  toFontData,
103
116
  };
104
117
  }
105
118
  // ── Component ───────────────────────────────────────────────────
106
119
  /** Font glyph editor with metrics, visual path editing, and preview. */
107
- const NiceFontEditor = ({ fontName = "MyFont", onSave, className = "", }) => {
120
+ const NiceFontEditor = ({ fontName = 'MyFont', onSave, className = '', }) => {
108
121
  var _a;
109
122
  const editor = useFontEditor(fontName);
110
- const [drawMode, setDrawMode] = React.useState("select");
123
+ const [drawMode, setDrawMode] = React.useState('select');
111
124
  const [pathPoints, setPathPoints] = React.useState([]);
112
- const [tab, setTab] = React.useState("glyph");
125
+ const [tab, setTab] = React.useState('glyph');
113
126
  const [kerningPairs, setKerningPairs] = React.useState([]);
114
- const [newKernLeft, setNewKernLeft] = React.useState("A");
115
- const [newKernRight, setNewKernRight] = React.useState("V");
127
+ const [newKernLeft, setNewKernLeft] = React.useState('A');
128
+ const [newKernRight, setNewKernRight] = React.useState('V');
116
129
  const [showGrid, setShowGrid] = React.useState(true);
117
130
  const handleSave = () => onSave === null || onSave === void 0 ? void 0 : onSave(editor.toFontData());
118
131
  const handleExportSvg = () => {
119
132
  const data = editor.toFontData();
120
133
  const svg = exportToSvgFont(data);
121
- const blob = new Blob([svg], { type: "image/svg+xml" });
134
+ const blob = new Blob([svg], { type: 'image/svg+xml' });
122
135
  const url = URL.createObjectURL(blob);
123
- const a = document.createElement("a");
136
+ const a = document.createElement('a');
124
137
  a.href = url;
125
138
  a.download = `${data.family}.svg`;
126
139
  a.click();
127
140
  URL.revokeObjectURL(url);
128
141
  };
129
142
  const selectedG = editor.selectedGlyph !== null
130
- ? (_a = editor.glyphs.find((g) => g.unicode === editor.selectedGlyph)) !== null && _a !== void 0 ? _a : null
143
+ ? ((_a = editor.glyphs.find((g) => g.unicode === editor.selectedGlyph)) !== null && _a !== void 0 ? _a : null)
131
144
  : null;
132
145
  const em = editor.metrics.unitsPerEm;
133
146
  // Click on glyph SVG to add path control points
134
147
  const handleGlyphCanvasClick = (e) => {
135
- if (drawMode !== "pen" || !selectedG)
148
+ if (drawMode !== 'pen' || !selectedG) {
136
149
  return;
150
+ }
137
151
  const svg = e.currentTarget;
138
152
  const rect = svg.getBoundingClientRect();
139
153
  const x = Math.round(((e.clientX - rect.left) / rect.width) * em);
@@ -143,50 +157,139 @@ const NiceFontEditor = ({ fontName = "MyFont", onSave, className = "", }) => {
143
157
  // Build SVG path from points
144
158
  if (newPoints.length >= 2) {
145
159
  let d = `M ${newPoints[0].x} ${newPoints[0].y}`;
146
- for (let i = 1; i < newPoints.length; i++)
160
+ for (let i = 1; i < newPoints.length; i++) {
147
161
  d += ` L ${newPoints[i].x} ${newPoints[i].y}`;
148
- d += " Z";
162
+ }
163
+ d += ' Z';
149
164
  editor.updateGlyph(selectedG.unicode, { path: d });
150
165
  }
151
166
  };
152
167
  const clearPath = () => {
153
168
  setPathPoints([]);
154
- if (selectedG)
155
- editor.updateGlyph(selectedG.unicode, { path: "" });
169
+ if (selectedG) {
170
+ editor.updateGlyph(selectedG.unicode, { path: '' });
171
+ }
156
172
  };
157
173
  const btnStyle = (active) => ({
158
- padding: "4px 8px", borderRadius: 3, border: "none", cursor: "pointer",
159
- background: active ? "#339af0" : "#2c2e33", color: active ? "#fff" : "#c1c2c5", fontSize: 11,
174
+ padding: '4px 8px',
175
+ borderRadius: 3,
176
+ border: 'none',
177
+ cursor: 'pointer',
178
+ background: active ? '#339af0' : '#2c2e33',
179
+ color: active ? '#fff' : '#c1c2c5',
180
+ fontSize: 11,
160
181
  });
161
182
  const fieldStyle = {
162
- width: "100%", background: "#2c2e33", color: "#c1c2c5",
163
- border: "1px solid #373a40", borderRadius: 3, padding: "2px 4px", fontSize: 10,
183
+ width: '100%',
184
+ background: '#2c2e33',
185
+ color: '#c1c2c5',
186
+ border: '1px solid #373a40',
187
+ borderRadius: 3,
188
+ padding: '2px 4px',
189
+ fontSize: 10,
164
190
  };
165
191
  const tabBtnStyle = (active) => ({
166
- padding: "4px 12px", border: "none", borderBottom: active ? "2px solid #339af0" : "2px solid transparent",
167
- background: "transparent", color: active ? "#fff" : "#868e96", cursor: "pointer", fontSize: 11,
192
+ padding: '4px 12px',
193
+ border: 'none',
194
+ borderBottom: active ? '2px solid #339af0' : '2px solid transparent',
195
+ background: 'transparent',
196
+ color: active ? '#fff' : '#868e96',
197
+ cursor: 'pointer',
198
+ fontSize: 11,
168
199
  });
169
- return (jsxs("div", { className: `nice-font-editor ${className}`, style: { display: "flex", flexDirection: "column", gap: 8, background: "#1a1b1e", color: "#c1c2c5", padding: 12, borderRadius: 8 }, children: [jsxs("div", { style: { display: "flex", alignItems: "center", gap: 8, fontSize: 12 }, children: [jsx("strong", { style: { fontSize: 14 }, children: "Font Editor" }), jsx("input", { value: editor.fontName, onChange: e => editor.setFontName(e.target.value), placeholder: "Font name", style: { flex: 1, maxWidth: 200, ...fieldStyle, fontSize: 12 } }), jsx("button", { onClick: handleSave, style: { padding: "4px 12px", background: "#2f9e44", color: "#fff", border: "none", borderRadius: 3, cursor: "pointer", fontSize: 11 }, children: "Save" }), jsx("button", { onClick: handleExportSvg, style: { padding: "4px 12px", background: "#228be6", color: "#fff", border: "none", borderRadius: 3, cursor: "pointer", fontSize: 11 }, children: "Export SVG Font" })] }), jsxs("div", { style: { display: "flex", gap: 4, borderBottom: "1px solid #373a40" }, children: [jsx("button", { onClick: () => setTab("glyph"), style: tabBtnStyle(tab === "glyph"), children: "Glyphs" }), jsx("button", { onClick: () => setTab("metrics"), style: tabBtnStyle(tab === "metrics"), children: "Metrics" }), jsx("button", { onClick: () => setTab("kerning"), style: tabBtnStyle(tab === "kerning"), children: "Kerning" })] }), tab === "glyph" && (jsxs("div", { style: { display: "flex", gap: 8 }, children: [jsxs("div", { style: { flex: 1 }, children: [jsxs("div", { style: { fontSize: 11, marginBottom: 4, color: "#868e96" }, children: [editor.glyphs.length, " glyphs"] }), jsx("div", { style: { display: "grid", gridTemplateColumns: "repeat(auto-fill, 36px)", gap: 2, maxHeight: 300, overflowY: "auto" }, children: editor.glyphs.map((g) => (jsx("div", { onClick: () => { editor.setSelectedGlyph(g.unicode); setPathPoints([]); }, title: `U+${g.unicode.toString(16).toUpperCase().padStart(4, "0")} - ${g.name}`, style: {
170
- width: 36, height: 36, display: "flex", alignItems: "center", justifyContent: "center",
171
- borderRadius: 3, cursor: "pointer", fontSize: 16,
172
- background: editor.selectedGlyph === g.unicode ? "#339af0" : (g.path ? "#2c2e33" : "#25262b"),
173
- color: editor.selectedGlyph === g.unicode ? "#fff" : (g.path ? "#c1c2c5" : "#5c5f66"),
174
- border: g.path ? "1px solid #373a40" : "1px solid transparent",
175
- }, children: g.char }, g.unicode))) })] }), jsx("div", { style: { width: 320, fontSize: 11 }, children: selectedG ? (jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: [jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [jsxs("strong", { children: ["\"", selectedG.char, "\" (U+", selectedG.unicode.toString(16).toUpperCase().padStart(4, "0"), ")"] }), jsxs("div", { style: { display: "flex", gap: 2 }, children: [jsx("button", { onClick: () => setDrawMode("select"), style: btnStyle(drawMode === "select"), children: "Select" }), jsx("button", { onClick: () => setDrawMode("pen"), style: btnStyle(drawMode === "pen"), children: "Pen" }), jsx("button", { onClick: clearPath, style: btnStyle(false), children: "Clear" }), jsx("button", { onClick: () => setShowGrid(g => !g), style: btnStyle(showGrid), children: "Grid" })] })] }), jsxs("svg", { width: 280, height: 280, viewBox: `0 0 ${em} ${em}`, style: { background: "#141517", borderRadius: 4, cursor: drawMode === "pen" ? "crosshair" : "default" }, onClick: handleGlyphCanvasClick, children: [showGrid && Array.from({ length: 11 }, (_, i) => {
176
- const pos = (i / 10) * em;
177
- return (jsxs(React.Fragment, { children: [jsx("line", { x1: pos, y1: 0, x2: pos, y2: em, stroke: "rgba(255,255,255,0.05)", strokeWidth: em * 0.002 }), jsx("line", { x1: 0, y1: pos, x2: em, y2: pos, stroke: "rgba(255,255,255,0.05)", strokeWidth: em * 0.002 })] }, i));
178
- }), jsx("line", { x1: 0, y1: em - editor.metrics.ascent, x2: em, y2: em - editor.metrics.ascent, stroke: "rgba(51,154,240,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: 0, y1: em, x2: em, y2: em, stroke: "rgba(47,158,68,0.3)", strokeWidth: em * 0.003 }), jsx("line", { x1: 0, y1: em - editor.metrics.xHeight, x2: em, y2: em - editor.metrics.xHeight, stroke: "rgba(249,226,175,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: 0, y1: em - editor.metrics.capHeight, x2: em, y2: em - editor.metrics.capHeight, stroke: "rgba(243,139,168,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: selectedG.leftBearing, y1: 0, x2: selectedG.leftBearing, y2: em, stroke: "rgba(166,227,161,0.2)", strokeWidth: em * 0.002 }), jsx("line", { x1: selectedG.advanceWidth, y1: 0, x2: selectedG.advanceWidth, y2: em, stroke: "rgba(243,139,168,0.2)", strokeWidth: em * 0.002 }), selectedG.path && jsx("path", { d: selectedG.path, fill: "rgba(205,214,244,0.8)", stroke: "#89b4fa", strokeWidth: em * 0.005 }), pathPoints.map((p, i) => (jsx("circle", { cx: p.x, cy: p.y, r: em * 0.015, fill: i === 0 ? "#2f9e44" : "#339af0", stroke: "#fff", strokeWidth: em * 0.003 }, i))), jsx("text", { x: em * 0.02, y: em - editor.metrics.ascent - em * 0.01, fill: "rgba(51,154,240,0.5)", fontSize: em * 0.03, children: "ascent" }), jsx("text", { x: em * 0.02, y: em - editor.metrics.xHeight - em * 0.01, fill: "rgba(249,226,175,0.5)", fontSize: em * 0.03, children: "x-height" }), jsx("text", { x: em * 0.02, y: em - editor.metrics.capHeight - em * 0.01, fill: "rgba(243,139,168,0.5)", fontSize: em * 0.03, children: "cap" })] }), jsxs("div", { children: [jsx("label", { children: "SVG Path" }), jsx("textarea", { value: selectedG.path, onChange: e => editor.updateGlyph(selectedG.unicode, { path: e.target.value }), rows: 3, style: { ...fieldStyle, fontFamily: "monospace", resize: "vertical" } })] }), jsxs("div", { style: { display: "grid", gridTemplateColumns: "1fr 1fr", gap: 4 }, children: [jsx("label", { children: "Advance Width" }), jsx("input", { type: "number", value: selectedG.advanceWidth, onChange: e => editor.updateGlyph(selectedG.unicode, { advanceWidth: Number(e.target.value) }), style: fieldStyle }), jsx("label", { children: "Left Bearing" }), jsx("input", { type: "number", value: selectedG.leftBearing, onChange: e => editor.updateGlyph(selectedG.unicode, { leftBearing: Number(e.target.value) }), style: fieldStyle })] })] })) : (jsx("div", { style: { color: "#868e96", padding: 20, textAlign: "center" }, children: "Select a glyph to edit" })) })] })), tab === "metrics" && (jsxs("div", { style: { maxWidth: 400 }, children: [jsx("strong", { style: { fontSize: 12, display: "block", marginBottom: 8 }, children: "Font Metrics" }), [
179
- ["unitsPerEm", "Units per Em"],
180
- ["ascent", "Ascent"],
181
- ["descent", "Descent"],
182
- ["lineGap", "Line Gap"],
183
- ["xHeight", "x-Height"],
184
- ["capHeight", "Cap Height"],
185
- ].map(([key, label]) => (jsxs("div", { style: { display: "flex", alignItems: "center", gap: 8, marginBottom: 4 }, children: [jsx("span", { style: { minWidth: 100, fontSize: 11 }, children: label }), jsx("input", { type: "number", value: editor.metrics[key], onChange: e => editor.setMetrics({ ...editor.metrics, [key]: Number(e.target.value) }), style: fieldStyle })] }, key))), jsxs("svg", { width: 300, height: 200, viewBox: `0 0 ${em} ${em}`, style: { background: "#141517", borderRadius: 4, marginTop: 12 }, children: [jsx("rect", { x: 0, y: em - editor.metrics.ascent, width: em, height: editor.metrics.ascent - editor.metrics.descent, fill: "rgba(51,154,240,0.05)", stroke: "rgba(51,154,240,0.2)", strokeWidth: em * 0.003 }), jsx("line", { x1: 0, y1: em - editor.metrics.ascent, x2: em, y2: em - editor.metrics.ascent, stroke: "#339af0", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em, x2: em, y2: em, stroke: "#2f9e44", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em + Math.abs(editor.metrics.descent), x2: em, y2: em + Math.abs(editor.metrics.descent), stroke: "#e03131", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em - editor.metrics.xHeight, x2: em, y2: em - editor.metrics.xHeight, stroke: "#f9e2af", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.015}` }), jsx("line", { x1: 0, y1: em - editor.metrics.capHeight, x2: em, y2: em - editor.metrics.capHeight, stroke: "#f38ba8", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.015}` }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.ascent + em * 0.05, fill: "#339af0", fontSize: em * 0.04, children: ["Ascent (", editor.metrics.ascent, ")"] }), jsx("text", { x: em * 0.02, y: em + em * 0.05, fill: "#2f9e44", fontSize: em * 0.04, children: "Baseline" }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.xHeight + em * 0.05, fill: "#f9e2af", fontSize: em * 0.04, children: ["x-Height (", editor.metrics.xHeight, ")"] }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.capHeight + em * 0.05, fill: "#f38ba8", fontSize: em * 0.04, children: ["Cap (", editor.metrics.capHeight, ")"] })] })] })), tab === "kerning" && (jsxs("div", { style: { maxWidth: 500 }, children: [jsx("strong", { style: { fontSize: 12, display: "block", marginBottom: 8 }, children: "Kerning Pairs" }), jsxs("div", { style: { display: "flex", gap: 4, marginBottom: 8, alignItems: "center", fontSize: 11 }, children: [jsx("input", { value: newKernLeft, onChange: e => setNewKernLeft(e.target.value), maxLength: 1, style: { ...fieldStyle, width: 30, textAlign: "center" } }), jsx("input", { value: newKernRight, onChange: e => setNewKernRight(e.target.value), maxLength: 1, style: { ...fieldStyle, width: 30, textAlign: "center" } }), jsx("button", { onClick: () => {
200
+ return (jsxs("div", { className: `nice-font-editor ${className}`, style: {
201
+ display: 'flex',
202
+ flexDirection: 'column',
203
+ gap: 8,
204
+ background: '#1a1b1e',
205
+ color: '#c1c2c5',
206
+ padding: 12,
207
+ borderRadius: 8,
208
+ }, children: [jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 8, fontSize: 12 }, children: [jsx("strong", { style: { fontSize: 14 }, children: "Font Editor" }), jsx("input", { value: editor.fontName, onChange: (e) => editor.setFontName(e.target.value), placeholder: "Font name", style: { flex: 1, maxWidth: 200, ...fieldStyle, fontSize: 12 } }), jsx("button", { onClick: handleSave, style: {
209
+ padding: '4px 12px',
210
+ background: '#2f9e44',
211
+ color: '#fff',
212
+ border: 'none',
213
+ borderRadius: 3,
214
+ cursor: 'pointer',
215
+ fontSize: 11,
216
+ }, children: "Save" }), jsx("button", { onClick: handleExportSvg, style: {
217
+ padding: '4px 12px',
218
+ background: '#228be6',
219
+ color: '#fff',
220
+ border: 'none',
221
+ borderRadius: 3,
222
+ cursor: 'pointer',
223
+ fontSize: 11,
224
+ }, children: "Export SVG Font" })] }), jsxs("div", { style: { display: 'flex', gap: 4, borderBottom: '1px solid #373a40' }, children: [jsx("button", { onClick: () => setTab('glyph'), style: tabBtnStyle(tab === 'glyph'), children: "Glyphs" }), jsx("button", { onClick: () => setTab('metrics'), style: tabBtnStyle(tab === 'metrics'), children: "Metrics" }), jsx("button", { onClick: () => setTab('kerning'), style: tabBtnStyle(tab === 'kerning'), children: "Kerning" })] }), tab === 'glyph' && (jsxs("div", { style: { display: 'flex', gap: 8 }, children: [jsxs("div", { style: { flex: 1 }, children: [jsxs("div", { style: { fontSize: 11, marginBottom: 4, color: '#868e96' }, children: [editor.glyphs.length, " glyphs"] }), jsx("div", { style: {
225
+ display: 'grid',
226
+ gridTemplateColumns: 'repeat(auto-fill, 36px)',
227
+ gap: 2,
228
+ maxHeight: 300,
229
+ overflowY: 'auto',
230
+ }, children: editor.glyphs.map((g) => (jsx("div", { onClick: () => {
231
+ editor.setSelectedGlyph(g.unicode);
232
+ setPathPoints([]);
233
+ }, title: `U+${g.unicode.toString(16).toUpperCase().padStart(4, '0')} - ${g.name}`, style: {
234
+ width: 36,
235
+ height: 36,
236
+ display: 'flex',
237
+ alignItems: 'center',
238
+ justifyContent: 'center',
239
+ borderRadius: 3,
240
+ cursor: 'pointer',
241
+ fontSize: 16,
242
+ background: editor.selectedGlyph === g.unicode
243
+ ? '#339af0'
244
+ : g.path
245
+ ? '#2c2e33'
246
+ : '#25262b',
247
+ color: editor.selectedGlyph === g.unicode ? '#fff' : g.path ? '#c1c2c5' : '#5c5f66',
248
+ border: g.path ? '1px solid #373a40' : '1px solid transparent',
249
+ }, children: g.char }, g.unicode))) })] }), jsx("div", { style: { width: 320, fontSize: 11 }, children: selectedG ? (jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 6 }, children: [jsxs("div", { style: { display: 'flex', justifyContent: 'space-between', alignItems: 'center' }, children: [jsxs("strong", { children: ["\"", selectedG.char, "\" (U+", selectedG.unicode.toString(16).toUpperCase().padStart(4, '0'), ")"] }), jsxs("div", { style: { display: 'flex', gap: 2 }, children: [jsx("button", { onClick: () => setDrawMode('select'), style: btnStyle(drawMode === 'select'), children: "Select" }), jsx("button", { onClick: () => setDrawMode('pen'), style: btnStyle(drawMode === 'pen'), children: "Pen" }), jsx("button", { onClick: clearPath, style: btnStyle(false), children: "Clear" }), jsx("button", { onClick: () => setShowGrid((g) => !g), style: btnStyle(showGrid), children: "Grid" })] })] }), jsxs("svg", { width: 280, height: 280, viewBox: `0 0 ${em} ${em}`, style: {
250
+ background: '#141517',
251
+ borderRadius: 4,
252
+ cursor: drawMode === 'pen' ? 'crosshair' : 'default',
253
+ }, onClick: handleGlyphCanvasClick, children: [showGrid &&
254
+ Array.from({ length: 11 }, (_, i) => {
255
+ const pos = (i / 10) * em;
256
+ return (jsxs(React.Fragment, { children: [jsx("line", { x1: pos, y1: 0, x2: pos, y2: em, stroke: "rgba(255,255,255,0.05)", strokeWidth: em * 0.002 }), jsx("line", { x1: 0, y1: pos, x2: em, y2: pos, stroke: "rgba(255,255,255,0.05)", strokeWidth: em * 0.002 })] }, i));
257
+ }), jsx("line", { x1: 0, y1: em - editor.metrics.ascent, x2: em, y2: em - editor.metrics.ascent, stroke: "rgba(51,154,240,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: 0, y1: em, x2: em, y2: em, stroke: "rgba(47,158,68,0.3)", strokeWidth: em * 0.003 }), jsx("line", { x1: 0, y1: em - editor.metrics.xHeight, x2: em, y2: em - editor.metrics.xHeight, stroke: "rgba(249,226,175,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: 0, y1: em - editor.metrics.capHeight, x2: em, y2: em - editor.metrics.capHeight, stroke: "rgba(243,139,168,0.3)", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.01}` }), jsx("line", { x1: selectedG.leftBearing, y1: 0, x2: selectedG.leftBearing, y2: em, stroke: "rgba(166,227,161,0.2)", strokeWidth: em * 0.002 }), jsx("line", { x1: selectedG.advanceWidth, y1: 0, x2: selectedG.advanceWidth, y2: em, stroke: "rgba(243,139,168,0.2)", strokeWidth: em * 0.002 }), selectedG.path && (jsx("path", { d: selectedG.path, fill: "rgba(205,214,244,0.8)", stroke: "#89b4fa", strokeWidth: em * 0.005 })), pathPoints.map((p, i) => (jsx("circle", { cx: p.x, cy: p.y, r: em * 0.015, fill: i === 0 ? '#2f9e44' : '#339af0', stroke: "#fff", strokeWidth: em * 0.003 }, i))), jsx("text", { x: em * 0.02, y: em - editor.metrics.ascent - em * 0.01, fill: "rgba(51,154,240,0.5)", fontSize: em * 0.03, children: "ascent" }), jsx("text", { x: em * 0.02, y: em - editor.metrics.xHeight - em * 0.01, fill: "rgba(249,226,175,0.5)", fontSize: em * 0.03, children: "x-height" }), jsx("text", { x: em * 0.02, y: em - editor.metrics.capHeight - em * 0.01, fill: "rgba(243,139,168,0.5)", fontSize: em * 0.03, children: "cap" })] }), jsxs("div", { children: [jsx("label", { children: "SVG Path" }), jsx("textarea", { value: selectedG.path, onChange: (e) => editor.updateGlyph(selectedG.unicode, { path: e.target.value }), rows: 3, style: { ...fieldStyle, fontFamily: 'monospace', resize: 'vertical' } })] }), jsxs("div", { style: { display: 'grid', gridTemplateColumns: '1fr 1fr', gap: 4 }, children: [jsx("label", { children: "Advance Width" }), jsx("input", { type: "number", value: selectedG.advanceWidth, onChange: (e) => editor.updateGlyph(selectedG.unicode, {
258
+ advanceWidth: Number(e.target.value),
259
+ }), style: fieldStyle }), jsx("label", { children: "Left Bearing" }), jsx("input", { type: "number", value: selectedG.leftBearing, onChange: (e) => editor.updateGlyph(selectedG.unicode, { leftBearing: Number(e.target.value) }), style: fieldStyle })] })] })) : (jsx("div", { style: { color: '#868e96', padding: 20, textAlign: 'center' }, children: "Select a glyph to edit" })) })] })), tab === 'metrics' && (jsxs("div", { style: { maxWidth: 400 }, children: [jsx("strong", { style: { fontSize: 12, display: 'block', marginBottom: 8 }, children: "Font Metrics" }), [
260
+ ['unitsPerEm', 'Units per Em'],
261
+ ['ascent', 'Ascent'],
262
+ ['descent', 'Descent'],
263
+ ['lineGap', 'Line Gap'],
264
+ ['xHeight', 'x-Height'],
265
+ ['capHeight', 'Cap Height'],
266
+ ].map(([key, label]) => (jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: 8, marginBottom: 4 }, children: [jsx("span", { style: { minWidth: 100, fontSize: 11 }, children: label }), jsx("input", { type: "number", value: editor.metrics[key], onChange: (e) => editor.setMetrics({ ...editor.metrics, [key]: Number(e.target.value) }), style: fieldStyle })] }, key))), jsxs("svg", { width: 300, height: 200, viewBox: `0 0 ${em} ${em}`, style: { background: '#141517', borderRadius: 4, marginTop: 12 }, children: [jsx("rect", { x: 0, y: em - editor.metrics.ascent, width: em, height: editor.metrics.ascent - editor.metrics.descent, fill: "rgba(51,154,240,0.05)", stroke: "rgba(51,154,240,0.2)", strokeWidth: em * 0.003 }), jsx("line", { x1: 0, y1: em - editor.metrics.ascent, x2: em, y2: em - editor.metrics.ascent, stroke: "#339af0", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em, x2: em, y2: em, stroke: "#2f9e44", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em + Math.abs(editor.metrics.descent), x2: em, y2: em + Math.abs(editor.metrics.descent), stroke: "#e03131", strokeWidth: em * 0.004 }), jsx("line", { x1: 0, y1: em - editor.metrics.xHeight, x2: em, y2: em - editor.metrics.xHeight, stroke: "#f9e2af", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.015}` }), jsx("line", { x1: 0, y1: em - editor.metrics.capHeight, x2: em, y2: em - editor.metrics.capHeight, stroke: "#f38ba8", strokeWidth: em * 0.003, strokeDasharray: `${em * 0.015}` }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.ascent + em * 0.05, fill: "#339af0", fontSize: em * 0.04, children: ["Ascent (", editor.metrics.ascent, ")"] }), jsx("text", { x: em * 0.02, y: em + em * 0.05, fill: "#2f9e44", fontSize: em * 0.04, children: "Baseline" }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.xHeight + em * 0.05, fill: "#f9e2af", fontSize: em * 0.04, children: ["x-Height (", editor.metrics.xHeight, ")"] }), jsxs("text", { x: em * 0.02, y: em - editor.metrics.capHeight + em * 0.05, fill: "#f38ba8", fontSize: em * 0.04, children: ["Cap (", editor.metrics.capHeight, ")"] })] })] })), tab === 'kerning' && (jsxs("div", { style: { maxWidth: 500 }, children: [jsx("strong", { style: { fontSize: 12, display: 'block', marginBottom: 8 }, children: "Kerning Pairs" }), jsxs("div", { style: { display: 'flex', gap: 4, marginBottom: 8, alignItems: 'center', fontSize: 11 }, children: [jsx("input", { value: newKernLeft, onChange: (e) => setNewKernLeft(e.target.value), maxLength: 1, style: { ...fieldStyle, width: 30, textAlign: 'center' } }), jsx("input", { value: newKernRight, onChange: (e) => setNewKernRight(e.target.value), maxLength: 1, style: { ...fieldStyle, width: 30, textAlign: 'center' } }), jsx("button", { onClick: () => {
186
267
  if (newKernLeft && newKernRight) {
187
- setKerningPairs(prev => [...prev, { left: newKernLeft, right: newKernRight, value: -50 }]);
268
+ setKerningPairs((prev) => [
269
+ ...prev,
270
+ { left: newKernLeft, right: newKernRight, value: -50 },
271
+ ]);
188
272
  }
189
- }, style: btnStyle(false), children: "Add Pair" })] }), jsx("div", { style: { maxHeight: 200, overflowY: "auto" }, children: kerningPairs.length === 0 ? (jsx("div", { style: { color: "#868e96", fontSize: 11, padding: 8, textAlign: "center" }, children: "No kerning pairs defined" })) : kerningPairs.map((kp, i) => (jsxs("div", { style: { display: "flex", gap: 8, alignItems: "center", padding: "2px 0", fontSize: 11 }, children: [jsxs("span", { style: { minWidth: 40, textAlign: "center", fontSize: 16 }, children: [kp.left, kp.right] }), jsx("input", { type: "range", min: -200, max: 200, value: kp.value, onChange: e => setKerningPairs(prev => prev.map((p, j) => j === i ? { ...p, value: Number(e.target.value) } : p)), style: { flex: 1 } }), jsx("span", { style: { minWidth: 40, textAlign: "right" }, children: kp.value }), jsx("button", { onClick: () => setKerningPairs(prev => prev.filter((_, j) => j !== i)), style: { background: "transparent", border: "none", color: "#ff6b6b", cursor: "pointer" }, children: "\u2715" })] }, i))) })] })), jsxs("div", { style: { marginTop: 8, borderTop: "1px solid #373a40", paddingTop: 8 }, children: [jsx("div", { style: { fontSize: 11, color: "#868e96", marginBottom: 4 }, children: "Preview" }), jsx("input", { value: editor.previewText, onChange: e => editor.setPreviewText(e.target.value), style: { width: "100%", padding: "6px 8px", ...fieldStyle, fontSize: 12 } }), jsx("div", { style: { marginTop: 8, padding: 16, background: "#fff", color: "#212529", borderRadius: 6, fontSize: 24, fontFamily: "serif" }, children: editor.previewText })] })] }));
273
+ }, style: btnStyle(false), children: "Add Pair" })] }), jsx("div", { style: { maxHeight: 200, overflowY: 'auto' }, children: kerningPairs.length === 0 ? (jsx("div", { style: { color: '#868e96', fontSize: 11, padding: 8, textAlign: 'center' }, children: "No kerning pairs defined" })) : (kerningPairs.map((kp, i) => (jsxs("div", { style: {
274
+ display: 'flex',
275
+ gap: 8,
276
+ alignItems: 'center',
277
+ padding: '2px 0',
278
+ fontSize: 11,
279
+ }, children: [jsxs("span", { style: { minWidth: 40, textAlign: 'center', fontSize: 16 }, children: [kp.left, kp.right] }), jsx("input", { type: "range", min: -200, max: 200, value: kp.value, onChange: (e) => setKerningPairs((prev) => prev.map((p, j) => (j === i ? { ...p, value: Number(e.target.value) } : p))), style: { flex: 1 } }), jsx("span", { style: { minWidth: 40, textAlign: 'right' }, children: kp.value }), jsx("button", { onClick: () => setKerningPairs((prev) => prev.filter((_, j) => j !== i)), style: {
280
+ background: 'transparent',
281
+ border: 'none',
282
+ color: '#ff6b6b',
283
+ cursor: 'pointer',
284
+ }, children: "\u2715" })] }, i)))) })] })), jsxs("div", { style: { marginTop: 8, borderTop: '1px solid #373a40', paddingTop: 8 }, children: [jsx("div", { style: { fontSize: 11, color: '#868e96', marginBottom: 4 }, children: "Preview" }), jsx("input", { value: editor.previewText, onChange: (e) => editor.setPreviewText(e.target.value), style: { width: '100%', padding: '6px 8px', ...fieldStyle, fontSize: 12 } }), jsx("div", { style: {
285
+ marginTop: 8,
286
+ padding: 16,
287
+ background: '#fff',
288
+ color: '#212529',
289
+ borderRadius: 6,
290
+ fontSize: 24,
291
+ fontFamily: 'serif',
292
+ }, children: editor.previewText })] })] }));
190
293
  };
191
294
 
192
295
  export { NiceFontEditor, exportToSvgFont, useFontEditor };
@@ -1 +1 @@
1
- {"version":3,"file":"NiceFontEditor.js","sources":["../../../src/font/NiceFontEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"NiceFontEditor.js","sources":["../../../src/font/NiceFontEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}