@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.
- package/dist/cjs/animation/AnimatedPerson.js +69 -63
- package/dist/cjs/animation/AnimatedPerson.js.map +1 -1
- package/dist/cjs/animation/AnimationEditor.js +27 -20
- package/dist/cjs/animation/AnimationEditor.js.map +1 -1
- package/dist/cjs/animation/Audience.js +17 -11
- package/dist/cjs/animation/Audience.js.map +1 -1
- package/dist/cjs/animation/BodyRenderer.js +7 -7
- package/dist/cjs/animation/BodyRenderer.js.map +1 -1
- package/dist/cjs/animation/animationHelper.js +83 -52
- package/dist/cjs/animation/animationHelper.js.map +1 -1
- package/dist/cjs/animation/characterTypes.js +171 -30
- package/dist/cjs/animation/characterTypes.js.map +1 -1
- package/dist/cjs/animation/choreoDSL.js +114 -62
- package/dist/cjs/animation/choreoDSL.js.map +1 -1
- package/dist/cjs/animation/karaokeIntegration.js +10 -11
- package/dist/cjs/animation/karaokeIntegration.js.map +1 -1
- package/dist/cjs/animation/lottieExport.js +15 -9
- package/dist/cjs/animation/lottieExport.js.map +1 -1
- package/dist/cjs/animation/motionPath.js +125 -30
- package/dist/cjs/animation/motionPath.js.map +1 -1
- package/dist/cjs/animation/physics.js +157 -57
- package/dist/cjs/animation/physics.js.map +1 -1
- package/dist/cjs/animation/rig/RigPlayer.js +7 -6
- package/dist/cjs/animation/rig/RigPlayer.js.map +1 -1
- package/dist/cjs/animation/rig/RiggedBody.js +7 -7
- package/dist/cjs/animation/rig/RiggedBody.js.map +1 -1
- package/dist/cjs/animation/rig/choreoRigBridge.js +52 -29
- package/dist/cjs/animation/rig/choreoRigBridge.js.map +1 -1
- package/dist/cjs/animation/rig/poseOps.js +6 -3
- package/dist/cjs/animation/rig/poseOps.js.map +1 -1
- package/dist/cjs/animation/shapes/arms.js +7 -6
- package/dist/cjs/animation/shapes/arms.js.map +1 -1
- package/dist/cjs/animation/shapes/eyes.js +31 -18
- package/dist/cjs/animation/shapes/eyes.js.map +1 -1
- package/dist/cjs/animation/shapes/hair.js +39 -23
- package/dist/cjs/animation/shapes/hair.js.map +1 -1
- package/dist/cjs/animation/shapes/heads.js +47 -29
- package/dist/cjs/animation/shapes/heads.js.map +1 -1
- package/dist/cjs/animation/shapes/headwear.js +26 -14
- package/dist/cjs/animation/shapes/headwear.js.map +1 -1
- package/dist/cjs/animation/shapes/legs.js +7 -6
- package/dist/cjs/animation/shapes/legs.js.map +1 -1
- package/dist/cjs/animation/shapes/mouths.js +28 -18
- package/dist/cjs/animation/shapes/mouths.js.map +1 -1
- package/dist/cjs/animation/shapes/noses.js +18 -9
- package/dist/cjs/animation/shapes/noses.js.map +1 -1
- package/dist/cjs/animation/shapes/outfits.js +25 -14
- package/dist/cjs/animation/shapes/outfits.js.map +1 -1
- package/dist/cjs/animation/shapes/torsos.js +5 -4
- package/dist/cjs/animation/shapes/torsos.js.map +1 -1
- package/dist/cjs/animation/spineExport.js +33 -26
- package/dist/cjs/animation/spineExport.js.map +1 -1
- package/dist/cjs/core/LocalUI.js +16 -16
- package/dist/cjs/core/LocalUI.js.map +1 -1
- package/dist/cjs/core/NiceBrushEngine.js +205 -69
- package/dist/cjs/core/NiceBrushEngine.js.map +1 -1
- package/dist/cjs/core/collaboration.js +35 -21
- package/dist/cjs/core/collaboration.js.map +1 -1
- package/dist/cjs/core/colorBlindness.js +64 -24
- package/dist/cjs/core/colorBlindness.js.map +1 -1
- package/dist/cjs/core/dragDrop.js +34 -26
- package/dist/cjs/core/dragDrop.js.map +1 -1
- package/dist/cjs/core/fixes.js +26 -14
- package/dist/cjs/core/fixes.js.map +1 -1
- package/dist/cjs/core/gridGuides.js +24 -16
- package/dist/cjs/core/gridGuides.js.map +1 -1
- package/dist/cjs/core/historyVisual.js +42 -23
- package/dist/cjs/core/historyVisual.js.map +1 -1
- package/dist/cjs/core/integrations.js +65 -48
- package/dist/cjs/core/integrations.js.map +1 -1
- package/dist/cjs/core/minimap.js +40 -24
- package/dist/cjs/core/minimap.js.map +1 -1
- package/dist/cjs/core/plugins.js +10 -6
- package/dist/cjs/core/plugins.js.map +1 -1
- package/dist/cjs/core/rtl.js +32 -27
- package/dist/cjs/core/rtl.js.map +1 -1
- package/dist/cjs/core/shortcuts.js +77 -39
- package/dist/cjs/core/shortcuts.js.map +1 -1
- package/dist/cjs/core/theme.js +68 -61
- package/dist/cjs/core/theme.js.map +1 -1
- package/dist/cjs/core/yjsCollaboration.js +61 -28
- package/dist/cjs/core/yjsCollaboration.js.map +1 -1
- package/dist/cjs/font/NiceFontEditor.js +160 -57
- package/dist/cjs/font/NiceFontEditor.js.map +1 -1
- package/dist/cjs/font/fontFormatUtils.js +37 -24
- package/dist/cjs/font/fontFormatUtils.js.map +1 -1
- package/dist/cjs/game/GameAsset2dEditor.js +73 -60
- package/dist/cjs/game/GameAsset2dEditor.js.map +1 -1
- package/dist/cjs/game/gameAssetUtils.js +18 -13
- package/dist/cjs/game/gameAssetUtils.js.map +1 -1
- package/dist/cjs/game/useGameAssetEditor.js +160 -143
- package/dist/cjs/game/useGameAssetEditor.js.map +1 -1
- package/dist/cjs/icon/NiceIconEditor.js +329 -106
- package/dist/cjs/icon/NiceIconEditor.js.map +1 -1
- package/dist/cjs/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js +572 -0
- package/dist/cjs/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceForm-CKoJA6NG.js +4979 -0
- package/dist/cjs/packages/ui/dist/NiceForm-CKoJA6NG.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceModal-1QX7NhyH.js +98 -0
- package/dist/cjs/packages/ui/dist/NiceModal-1QX7NhyH.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js +5244 -0
- package/dist/cjs/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NicePagination-DbE-uOkl.js +174 -0
- package/dist/cjs/packages/ui/dist/NicePagination-DbE-uOkl.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js +10459 -0
- package/dist/cjs/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js +6313 -0
- package/dist/cjs/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceTabs-DzLHzwuA.js +1639 -0
- package/dist/cjs/packages/ui/dist/NiceTabs-DzLHzwuA.js.map +1 -0
- package/dist/cjs/packages/ui/dist/NiceWindow-DeC83yfE.js +807 -0
- package/dist/cjs/packages/ui/dist/NiceWindow-DeC83yfE.js.map +1 -0
- package/dist/cjs/packages/ui/dist/charts-BAS21jkC.js +3833 -0
- package/dist/cjs/packages/ui/dist/charts-BAS21jkC.js.map +1 -0
- package/dist/cjs/packages/ui/dist/core-Da43q-pO.js +11683 -0
- package/dist/cjs/packages/ui/dist/core-Da43q-pO.js.map +1 -0
- package/dist/cjs/packages/ui/dist/index-pAuGTbuB.js +28876 -0
- package/dist/cjs/packages/ui/dist/index-pAuGTbuB.js.map +1 -0
- package/dist/cjs/photo/FilterThumb.js +7 -5
- package/dist/cjs/photo/FilterThumb.js.map +1 -1
- package/dist/cjs/photo/NiceAITools.js +78 -32
- package/dist/cjs/photo/NiceAITools.js.map +1 -1
- package/dist/cjs/photo/PhotoEditor.js +4 -4
- package/dist/cjs/photo/PhotoEditor.js.map +1 -1
- package/dist/cjs/photo/PhotoEditorCanvas.js +56 -22
- package/dist/cjs/photo/PhotoEditorCanvas.js.map +1 -1
- package/dist/cjs/photo/PhotoEditorLeftPanel.js +106 -48
- package/dist/cjs/photo/PhotoEditorLeftPanel.js.map +1 -1
- package/dist/cjs/photo/PhotoEditorToolbar.js +2 -2
- package/dist/cjs/photo/PhotoEditorToolbar.js.map +1 -1
- package/dist/cjs/photo/photoEditorActions.js +27 -18
- package/dist/cjs/photo/photoEditorActions.js.map +1 -1
- package/dist/cjs/photo/photoFilters.js +316 -81
- package/dist/cjs/photo/photoFilters.js.map +1 -1
- package/dist/cjs/photo/photoOverlays.js +521 -165
- package/dist/cjs/photo/photoOverlays.js.map +1 -1
- package/dist/cjs/photo/photoSelection.js +69 -35
- package/dist/cjs/photo/photoSelection.js.map +1 -1
- package/dist/cjs/photo/usePhotoEditor.js +203 -97
- package/dist/cjs/photo/usePhotoEditor.js.map +1 -1
- package/dist/cjs/pixel/HSVPicker.js +32 -19
- package/dist/cjs/pixel/HSVPicker.js.map +1 -1
- package/dist/cjs/pixel/PixelEditor.js +25 -14
- package/dist/cjs/pixel/PixelEditor.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorCanvas.js +2 -2
- package/dist/cjs/pixel/PixelEditorCanvas.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorMenuBar.js +3 -3
- package/dist/cjs/pixel/PixelEditorMenuBar.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorRightPanel.js +28 -8
- package/dist/cjs/pixel/PixelEditorRightPanel.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorStatusBar.js +2 -2
- package/dist/cjs/pixel/PixelEditorStatusBar.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorTimeline.js +3 -4
- package/dist/cjs/pixel/PixelEditorTimeline.js.map +1 -1
- package/dist/cjs/pixel/PixelEditorToolbar.js +3 -3
- package/dist/cjs/pixel/PixelEditorToolbar.js.map +1 -1
- package/dist/cjs/pixel/SpriteGeneratorPanel.js +136 -54
- package/dist/cjs/pixel/SpriteGeneratorPanel.js.map +1 -1
- package/dist/cjs/pixel/asepriteFormat.js +122 -38
- package/dist/cjs/pixel/asepriteFormat.js.map +1 -1
- package/dist/cjs/pixel/characterGeneratorPresets.js +208 -54
- package/dist/cjs/pixel/characterGeneratorPresets.js.map +1 -1
- package/dist/cjs/pixel/pixelEditorExports.js +42 -35
- package/dist/cjs/pixel/pixelEditorExports.js.map +1 -1
- package/dist/cjs/pixel/pixelEditorTypes.js +67 -33
- package/dist/cjs/pixel/pixelEditorTypes.js.map +1 -1
- package/dist/cjs/pixel/pixelEditorUtils.js +62 -38
- package/dist/cjs/pixel/pixelEditorUtils.js.map +1 -1
- package/dist/cjs/pixel/spriteGeneratorCore.js +47 -24
- package/dist/cjs/pixel/spriteGeneratorCore.js.map +1 -1
- package/dist/cjs/pixel/usePixelEditor.js +475 -213
- package/dist/cjs/pixel/usePixelEditor.js.map +1 -1
- package/dist/cjs/texture/Nice3DTexturePainter.js +201 -71
- package/dist/cjs/texture/Nice3DTexturePainter.js.map +1 -1
- package/dist/cjs/ui/NiceUIDesigner.js +280 -91
- package/dist/cjs/ui/NiceUIDesigner.js.map +1 -1
- package/dist/cjs/vector/NiceSvgToCode.js +96 -34
- package/dist/cjs/vector/NiceSvgToCode.js.map +1 -1
- package/dist/cjs/vector/VectorEditor.js +14 -13
- package/dist/cjs/vector/VectorEditor.js.map +1 -1
- package/dist/cjs/vector/VectorEditorMenuBar.js +7 -6
- package/dist/cjs/vector/VectorEditorMenuBar.js.map +1 -1
- package/dist/cjs/vector/VectorEditorRightPanel.js +87 -32
- package/dist/cjs/vector/VectorEditorRightPanel.js.map +1 -1
- package/dist/cjs/vector/VectorEditorShapeRenderer.js +17 -15
- package/dist/cjs/vector/VectorEditorShapeRenderer.js.map +1 -1
- package/dist/cjs/vector/VectorEditorStatusBar.js.map +1 -1
- package/dist/cjs/vector/useVectorEditor.js +312 -122
- package/dist/cjs/vector/useVectorEditor.js.map +1 -1
- package/dist/cjs/vector/vectorBooleanOps.js +60 -42
- package/dist/cjs/vector/vectorBooleanOps.js.map +1 -1
- package/dist/cjs/vector/vectorEditorExport.js +40 -34
- package/dist/cjs/vector/vectorEditorExport.js.map +1 -1
- package/dist/cjs/vector/vectorGradients.js +41 -40
- package/dist/cjs/vector/vectorGradients.js.map +1 -1
- package/dist/esm/animation/AnimatedPerson.js +69 -63
- package/dist/esm/animation/AnimatedPerson.js.map +1 -1
- package/dist/esm/animation/AnimationEditor.js +27 -20
- package/dist/esm/animation/AnimationEditor.js.map +1 -1
- package/dist/esm/animation/Audience.js +17 -11
- package/dist/esm/animation/Audience.js.map +1 -1
- package/dist/esm/animation/BodyRenderer.js +7 -7
- package/dist/esm/animation/BodyRenderer.js.map +1 -1
- package/dist/esm/animation/animationHelper.js +83 -52
- package/dist/esm/animation/animationHelper.js.map +1 -1
- package/dist/esm/animation/characterTypes.js +171 -30
- package/dist/esm/animation/characterTypes.js.map +1 -1
- package/dist/esm/animation/choreoDSL.js +114 -62
- package/dist/esm/animation/choreoDSL.js.map +1 -1
- package/dist/esm/animation/karaokeIntegration.js +10 -11
- package/dist/esm/animation/karaokeIntegration.js.map +1 -1
- package/dist/esm/animation/lottieExport.js +15 -9
- package/dist/esm/animation/lottieExport.js.map +1 -1
- package/dist/esm/animation/motionPath.js +125 -30
- package/dist/esm/animation/motionPath.js.map +1 -1
- package/dist/esm/animation/physics.js +157 -57
- package/dist/esm/animation/physics.js.map +1 -1
- package/dist/esm/animation/rig/RigPlayer.js +7 -6
- package/dist/esm/animation/rig/RigPlayer.js.map +1 -1
- package/dist/esm/animation/rig/RiggedBody.js +7 -7
- package/dist/esm/animation/rig/RiggedBody.js.map +1 -1
- package/dist/esm/animation/rig/choreoRigBridge.js +52 -29
- package/dist/esm/animation/rig/choreoRigBridge.js.map +1 -1
- package/dist/esm/animation/rig/poseOps.js +6 -3
- package/dist/esm/animation/rig/poseOps.js.map +1 -1
- package/dist/esm/animation/shapes/arms.js +7 -6
- package/dist/esm/animation/shapes/arms.js.map +1 -1
- package/dist/esm/animation/shapes/eyes.js +31 -18
- package/dist/esm/animation/shapes/eyes.js.map +1 -1
- package/dist/esm/animation/shapes/hair.js +39 -23
- package/dist/esm/animation/shapes/hair.js.map +1 -1
- package/dist/esm/animation/shapes/heads.js +47 -29
- package/dist/esm/animation/shapes/heads.js.map +1 -1
- package/dist/esm/animation/shapes/headwear.js +26 -14
- package/dist/esm/animation/shapes/headwear.js.map +1 -1
- package/dist/esm/animation/shapes/legs.js +7 -6
- package/dist/esm/animation/shapes/legs.js.map +1 -1
- package/dist/esm/animation/shapes/mouths.js +28 -18
- package/dist/esm/animation/shapes/mouths.js.map +1 -1
- package/dist/esm/animation/shapes/noses.js +18 -9
- package/dist/esm/animation/shapes/noses.js.map +1 -1
- package/dist/esm/animation/shapes/outfits.js +25 -14
- package/dist/esm/animation/shapes/outfits.js.map +1 -1
- package/dist/esm/animation/shapes/torsos.js +5 -4
- package/dist/esm/animation/shapes/torsos.js.map +1 -1
- package/dist/esm/animation/spineExport.js +33 -26
- package/dist/esm/animation/spineExport.js.map +1 -1
- package/dist/esm/core/LocalUI.js +16 -16
- package/dist/esm/core/LocalUI.js.map +1 -1
- package/dist/esm/core/NiceBrushEngine.js +205 -69
- package/dist/esm/core/NiceBrushEngine.js.map +1 -1
- package/dist/esm/core/collaboration.js +35 -21
- package/dist/esm/core/collaboration.js.map +1 -1
- package/dist/esm/core/colorBlindness.js +64 -24
- package/dist/esm/core/colorBlindness.js.map +1 -1
- package/dist/esm/core/dragDrop.js +34 -26
- package/dist/esm/core/dragDrop.js.map +1 -1
- package/dist/esm/core/fixes.js +26 -14
- package/dist/esm/core/fixes.js.map +1 -1
- package/dist/esm/core/gridGuides.js +24 -16
- package/dist/esm/core/gridGuides.js.map +1 -1
- package/dist/esm/core/historyVisual.js +42 -23
- package/dist/esm/core/historyVisual.js.map +1 -1
- package/dist/esm/core/integrations.js +65 -48
- package/dist/esm/core/integrations.js.map +1 -1
- package/dist/esm/core/minimap.js +40 -24
- package/dist/esm/core/minimap.js.map +1 -1
- package/dist/esm/core/plugins.js +10 -6
- package/dist/esm/core/plugins.js.map +1 -1
- package/dist/esm/core/rtl.js +32 -27
- package/dist/esm/core/rtl.js.map +1 -1
- package/dist/esm/core/shortcuts.js +77 -39
- package/dist/esm/core/shortcuts.js.map +1 -1
- package/dist/esm/core/theme.js +68 -61
- package/dist/esm/core/theme.js.map +1 -1
- package/dist/esm/core/yjsCollaboration.js +61 -28
- package/dist/esm/core/yjsCollaboration.js.map +1 -1
- package/dist/esm/font/NiceFontEditor.js +160 -57
- package/dist/esm/font/NiceFontEditor.js.map +1 -1
- package/dist/esm/font/fontFormatUtils.js +37 -24
- package/dist/esm/font/fontFormatUtils.js.map +1 -1
- package/dist/esm/game/GameAsset2dEditor.js +73 -60
- package/dist/esm/game/GameAsset2dEditor.js.map +1 -1
- package/dist/esm/game/gameAssetUtils.js +18 -13
- package/dist/esm/game/gameAssetUtils.js.map +1 -1
- package/dist/esm/game/useGameAssetEditor.js +160 -143
- package/dist/esm/game/useGameAssetEditor.js.map +1 -1
- package/dist/esm/icon/NiceIconEditor.js +329 -106
- package/dist/esm/icon/NiceIconEditor.js.map +1 -1
- package/dist/esm/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js +563 -0
- package/dist/esm/packages/ui/dist/NiceErrorBoundary-D75yr_WE.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceForm-CKoJA6NG.js +4960 -0
- package/dist/esm/packages/ui/dist/NiceForm-CKoJA6NG.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceModal-1QX7NhyH.js +96 -0
- package/dist/esm/packages/ui/dist/NiceModal-1QX7NhyH.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js +5201 -0
- package/dist/esm/packages/ui/dist/NiceModuleLifecyclePanel-CMrPbSw9.js.map +1 -0
- package/dist/esm/packages/ui/dist/NicePagination-DbE-uOkl.js +172 -0
- package/dist/esm/packages/ui/dist/NicePagination-DbE-uOkl.js.map +1 -0
- package/dist/esm/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js +10408 -0
- package/dist/esm/packages/ui/dist/NicePinCodeInput-B8cI8zu8.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js +6296 -0
- package/dist/esm/packages/ui/dist/NiceSavedQueryPanel-CZ5bYOe_.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceTabs-DzLHzwuA.js +1630 -0
- package/dist/esm/packages/ui/dist/NiceTabs-DzLHzwuA.js.map +1 -0
- package/dist/esm/packages/ui/dist/NiceWindow-DeC83yfE.js +796 -0
- package/dist/esm/packages/ui/dist/NiceWindow-DeC83yfE.js.map +1 -0
- package/dist/esm/packages/ui/dist/charts-BAS21jkC.js +3809 -0
- package/dist/esm/packages/ui/dist/charts-BAS21jkC.js.map +1 -0
- package/dist/esm/packages/ui/dist/core-Da43q-pO.js +11502 -0
- package/dist/esm/packages/ui/dist/core-Da43q-pO.js.map +1 -0
- package/dist/esm/packages/ui/dist/index-pAuGTbuB.js +28792 -0
- package/dist/esm/packages/ui/dist/index-pAuGTbuB.js.map +1 -0
- package/dist/esm/photo/FilterThumb.js +7 -5
- package/dist/esm/photo/FilterThumb.js.map +1 -1
- package/dist/esm/photo/NiceAITools.js +78 -32
- package/dist/esm/photo/NiceAITools.js.map +1 -1
- package/dist/esm/photo/PhotoEditor.js +4 -4
- package/dist/esm/photo/PhotoEditor.js.map +1 -1
- package/dist/esm/photo/PhotoEditorCanvas.js +56 -22
- package/dist/esm/photo/PhotoEditorCanvas.js.map +1 -1
- package/dist/esm/photo/PhotoEditorLeftPanel.js +106 -48
- package/dist/esm/photo/PhotoEditorLeftPanel.js.map +1 -1
- package/dist/esm/photo/PhotoEditorToolbar.js +2 -2
- package/dist/esm/photo/PhotoEditorToolbar.js.map +1 -1
- package/dist/esm/photo/photoEditorActions.js +27 -18
- package/dist/esm/photo/photoEditorActions.js.map +1 -1
- package/dist/esm/photo/photoFilters.js +316 -81
- package/dist/esm/photo/photoFilters.js.map +1 -1
- package/dist/esm/photo/photoOverlays.js +521 -165
- package/dist/esm/photo/photoOverlays.js.map +1 -1
- package/dist/esm/photo/photoSelection.js +69 -35
- package/dist/esm/photo/photoSelection.js.map +1 -1
- package/dist/esm/photo/usePhotoEditor.js +203 -97
- package/dist/esm/photo/usePhotoEditor.js.map +1 -1
- package/dist/esm/pixel/HSVPicker.js +32 -19
- package/dist/esm/pixel/HSVPicker.js.map +1 -1
- package/dist/esm/pixel/PixelEditor.js +25 -14
- package/dist/esm/pixel/PixelEditor.js.map +1 -1
- package/dist/esm/pixel/PixelEditorCanvas.js +2 -2
- package/dist/esm/pixel/PixelEditorCanvas.js.map +1 -1
- package/dist/esm/pixel/PixelEditorMenuBar.js +3 -3
- package/dist/esm/pixel/PixelEditorMenuBar.js.map +1 -1
- package/dist/esm/pixel/PixelEditorRightPanel.js +28 -8
- package/dist/esm/pixel/PixelEditorRightPanel.js.map +1 -1
- package/dist/esm/pixel/PixelEditorStatusBar.js +2 -2
- package/dist/esm/pixel/PixelEditorStatusBar.js.map +1 -1
- package/dist/esm/pixel/PixelEditorTimeline.js +3 -4
- package/dist/esm/pixel/PixelEditorTimeline.js.map +1 -1
- package/dist/esm/pixel/PixelEditorToolbar.js +3 -3
- package/dist/esm/pixel/PixelEditorToolbar.js.map +1 -1
- package/dist/esm/pixel/SpriteGeneratorPanel.js +136 -54
- package/dist/esm/pixel/SpriteGeneratorPanel.js.map +1 -1
- package/dist/esm/pixel/asepriteFormat.js +122 -38
- package/dist/esm/pixel/asepriteFormat.js.map +1 -1
- package/dist/esm/pixel/characterGeneratorPresets.js +208 -54
- package/dist/esm/pixel/characterGeneratorPresets.js.map +1 -1
- package/dist/esm/pixel/pixelEditorExports.js +42 -35
- package/dist/esm/pixel/pixelEditorExports.js.map +1 -1
- package/dist/esm/pixel/pixelEditorTypes.js +67 -33
- package/dist/esm/pixel/pixelEditorTypes.js.map +1 -1
- package/dist/esm/pixel/pixelEditorUtils.js +62 -38
- package/dist/esm/pixel/pixelEditorUtils.js.map +1 -1
- package/dist/esm/pixel/spriteGeneratorCore.js +47 -24
- package/dist/esm/pixel/spriteGeneratorCore.js.map +1 -1
- package/dist/esm/pixel/usePixelEditor.js +475 -213
- package/dist/esm/pixel/usePixelEditor.js.map +1 -1
- package/dist/esm/texture/Nice3DTexturePainter.js +201 -71
- package/dist/esm/texture/Nice3DTexturePainter.js.map +1 -1
- package/dist/esm/ui/NiceUIDesigner.js +280 -91
- package/dist/esm/ui/NiceUIDesigner.js.map +1 -1
- package/dist/esm/vector/NiceSvgToCode.js +96 -34
- package/dist/esm/vector/NiceSvgToCode.js.map +1 -1
- package/dist/esm/vector/VectorEditor.js +14 -13
- package/dist/esm/vector/VectorEditor.js.map +1 -1
- package/dist/esm/vector/VectorEditorMenuBar.js +7 -6
- package/dist/esm/vector/VectorEditorMenuBar.js.map +1 -1
- package/dist/esm/vector/VectorEditorRightPanel.js +87 -32
- package/dist/esm/vector/VectorEditorRightPanel.js.map +1 -1
- package/dist/esm/vector/VectorEditorShapeRenderer.js +17 -15
- package/dist/esm/vector/VectorEditorShapeRenderer.js.map +1 -1
- package/dist/esm/vector/VectorEditorStatusBar.js.map +1 -1
- package/dist/esm/vector/useVectorEditor.js +312 -122
- package/dist/esm/vector/useVectorEditor.js.map +1 -1
- package/dist/esm/vector/vectorBooleanOps.js +60 -42
- package/dist/esm/vector/vectorBooleanOps.js.map +1 -1
- package/dist/esm/vector/vectorEditorExport.js +40 -34
- package/dist/esm/vector/vectorEditorExport.js.map +1 -1
- package/dist/esm/vector/vectorGradients.js +41 -40
- package/dist/esm/vector/vectorGradients.js.map +1 -1
- package/package.json +2 -2
|
@@ -5,136 +5,241 @@ var React = require('react');
|
|
|
5
5
|
|
|
6
6
|
/* ── Brush Presets ── */
|
|
7
7
|
const DEFAULT_DYNAMICS = {
|
|
8
|
-
source: 'none',
|
|
8
|
+
source: 'none',
|
|
9
|
+
min: 1,
|
|
10
|
+
max: 1,
|
|
11
|
+
curve: 'linear',
|
|
9
12
|
};
|
|
10
13
|
const PRESSURE_SIZE = {
|
|
11
|
-
source: 'pressure',
|
|
14
|
+
source: 'pressure',
|
|
15
|
+
min: 0.1,
|
|
16
|
+
max: 1.0,
|
|
17
|
+
curve: 'linear',
|
|
12
18
|
};
|
|
13
19
|
const PRESSURE_OPACITY = {
|
|
14
|
-
source: 'pressure',
|
|
20
|
+
source: 'pressure',
|
|
21
|
+
min: 0.2,
|
|
22
|
+
max: 1.0,
|
|
23
|
+
curve: 'ease-in',
|
|
15
24
|
};
|
|
16
25
|
const TILT_ROTATION = {
|
|
17
|
-
source: 'tilt',
|
|
26
|
+
source: 'tilt',
|
|
27
|
+
min: 0,
|
|
28
|
+
max: 1,
|
|
29
|
+
curve: 'linear',
|
|
18
30
|
};
|
|
19
31
|
const BRUSH_PRESETS = {
|
|
20
32
|
'hard-round': {
|
|
21
33
|
name: 'Hard Round',
|
|
22
|
-
size: 10,
|
|
23
|
-
|
|
24
|
-
|
|
34
|
+
size: 10,
|
|
35
|
+
opacity: 1,
|
|
36
|
+
flow: 1,
|
|
37
|
+
hardness: 1,
|
|
38
|
+
spacing: 0.1,
|
|
39
|
+
tipShape: 'circle',
|
|
40
|
+
tipRotation: 0,
|
|
41
|
+
roundness: 1,
|
|
42
|
+
scatter: 0,
|
|
43
|
+
scatterBothAxes: false,
|
|
44
|
+
blendMode: 'normal',
|
|
45
|
+
smoothing: 0.5,
|
|
25
46
|
sizeDynamics: PRESSURE_SIZE,
|
|
26
47
|
opacityDynamics: DEFAULT_DYNAMICS,
|
|
27
48
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
28
49
|
rotationDynamics: DEFAULT_DYNAMICS,
|
|
29
50
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
30
51
|
wetEdges: false,
|
|
31
|
-
colorJitterHue: 0,
|
|
52
|
+
colorJitterHue: 0,
|
|
53
|
+
colorJitterSat: 0,
|
|
54
|
+
colorJitterBright: 0,
|
|
32
55
|
},
|
|
33
56
|
'soft-round': {
|
|
34
57
|
name: 'Soft Round',
|
|
35
|
-
size: 20,
|
|
36
|
-
|
|
37
|
-
|
|
58
|
+
size: 20,
|
|
59
|
+
opacity: 0.8,
|
|
60
|
+
flow: 0.5,
|
|
61
|
+
hardness: 0,
|
|
62
|
+
spacing: 0.08,
|
|
63
|
+
tipShape: 'circle',
|
|
64
|
+
tipRotation: 0,
|
|
65
|
+
roundness: 1,
|
|
66
|
+
scatter: 0,
|
|
67
|
+
scatterBothAxes: false,
|
|
68
|
+
blendMode: 'normal',
|
|
69
|
+
smoothing: 0.6,
|
|
38
70
|
sizeDynamics: PRESSURE_SIZE,
|
|
39
71
|
opacityDynamics: PRESSURE_OPACITY,
|
|
40
72
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
41
73
|
rotationDynamics: DEFAULT_DYNAMICS,
|
|
42
74
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
43
75
|
wetEdges: false,
|
|
44
|
-
colorJitterHue: 0,
|
|
76
|
+
colorJitterHue: 0,
|
|
77
|
+
colorJitterSat: 0,
|
|
78
|
+
colorJitterBright: 0,
|
|
45
79
|
},
|
|
46
|
-
|
|
80
|
+
calligraphy: {
|
|
47
81
|
name: 'Calligraphy',
|
|
48
|
-
size: 15,
|
|
49
|
-
|
|
50
|
-
|
|
82
|
+
size: 15,
|
|
83
|
+
opacity: 1,
|
|
84
|
+
flow: 1,
|
|
85
|
+
hardness: 0.8,
|
|
86
|
+
spacing: 0.05,
|
|
87
|
+
tipShape: 'circle',
|
|
88
|
+
tipRotation: Math.PI / 4,
|
|
89
|
+
roundness: 0.2,
|
|
90
|
+
scatter: 0,
|
|
91
|
+
scatterBothAxes: false,
|
|
92
|
+
blendMode: 'normal',
|
|
93
|
+
smoothing: 0.7,
|
|
51
94
|
sizeDynamics: PRESSURE_SIZE,
|
|
52
95
|
opacityDynamics: DEFAULT_DYNAMICS,
|
|
53
96
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
54
97
|
rotationDynamics: TILT_ROTATION,
|
|
55
98
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
56
99
|
wetEdges: false,
|
|
57
|
-
colorJitterHue: 0,
|
|
100
|
+
colorJitterHue: 0,
|
|
101
|
+
colorJitterSat: 0,
|
|
102
|
+
colorJitterBright: 0,
|
|
58
103
|
},
|
|
59
|
-
|
|
104
|
+
airbrush: {
|
|
60
105
|
name: 'Airbrush',
|
|
61
|
-
size: 40,
|
|
62
|
-
|
|
63
|
-
|
|
106
|
+
size: 40,
|
|
107
|
+
opacity: 0.3,
|
|
108
|
+
flow: 0.15,
|
|
109
|
+
hardness: 0,
|
|
110
|
+
spacing: 0.05,
|
|
111
|
+
tipShape: 'circle',
|
|
112
|
+
tipRotation: 0,
|
|
113
|
+
roundness: 1,
|
|
114
|
+
scatter: 0.3,
|
|
115
|
+
scatterBothAxes: true,
|
|
116
|
+
blendMode: 'normal',
|
|
117
|
+
smoothing: 0.3,
|
|
64
118
|
sizeDynamics: PRESSURE_SIZE,
|
|
65
119
|
opacityDynamics: PRESSURE_OPACITY,
|
|
66
120
|
flowDynamics: { source: 'pressure', min: 0.05, max: 0.4, curve: 'ease-in' },
|
|
67
121
|
rotationDynamics: DEFAULT_DYNAMICS,
|
|
68
122
|
scatterDynamics: { source: 'pressure', min: 0.5, max: 0.05, curve: 'linear' },
|
|
69
123
|
wetEdges: false,
|
|
70
|
-
colorJitterHue: 0,
|
|
124
|
+
colorJitterHue: 0,
|
|
125
|
+
colorJitterSat: 0,
|
|
126
|
+
colorJitterBright: 0,
|
|
71
127
|
},
|
|
72
|
-
|
|
128
|
+
watercolor: {
|
|
73
129
|
name: 'Watercolor',
|
|
74
|
-
size: 30,
|
|
75
|
-
|
|
76
|
-
|
|
130
|
+
size: 30,
|
|
131
|
+
opacity: 0.4,
|
|
132
|
+
flow: 0.3,
|
|
133
|
+
hardness: 0,
|
|
134
|
+
spacing: 0.06,
|
|
135
|
+
tipShape: 'circle',
|
|
136
|
+
tipRotation: 0,
|
|
137
|
+
roundness: 0.85,
|
|
138
|
+
scatter: 0.15,
|
|
139
|
+
scatterBothAxes: true,
|
|
140
|
+
blendMode: 'multiply',
|
|
141
|
+
smoothing: 0.8,
|
|
77
142
|
sizeDynamics: PRESSURE_SIZE,
|
|
78
143
|
opacityDynamics: PRESSURE_OPACITY,
|
|
79
144
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
80
145
|
rotationDynamics: { source: 'random', min: 0, max: 1, curve: 'linear' },
|
|
81
146
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
82
147
|
wetEdges: true,
|
|
83
|
-
colorJitterHue: 0.05,
|
|
148
|
+
colorJitterHue: 0.05,
|
|
149
|
+
colorJitterSat: 0.1,
|
|
150
|
+
colorJitterBright: 0.08,
|
|
84
151
|
},
|
|
85
|
-
|
|
152
|
+
pencil: {
|
|
86
153
|
name: 'Pencil',
|
|
87
|
-
size: 3,
|
|
88
|
-
|
|
89
|
-
|
|
154
|
+
size: 3,
|
|
155
|
+
opacity: 0.9,
|
|
156
|
+
flow: 0.8,
|
|
157
|
+
hardness: 0.7,
|
|
158
|
+
spacing: 0.04,
|
|
159
|
+
tipShape: 'circle',
|
|
160
|
+
tipRotation: 0,
|
|
161
|
+
roundness: 0.9,
|
|
162
|
+
scatter: 0.02,
|
|
163
|
+
scatterBothAxes: true,
|
|
164
|
+
blendMode: 'multiply',
|
|
165
|
+
smoothing: 0.4,
|
|
90
166
|
sizeDynamics: { source: 'pressure', min: 0.5, max: 1.0, curve: 'ease-out' },
|
|
91
167
|
opacityDynamics: { source: 'pressure', min: 0.3, max: 1.0, curve: 'ease-in' },
|
|
92
168
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
93
169
|
rotationDynamics: DEFAULT_DYNAMICS,
|
|
94
170
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
95
171
|
wetEdges: false,
|
|
96
|
-
colorJitterHue: 0,
|
|
172
|
+
colorJitterHue: 0,
|
|
173
|
+
colorJitterSat: 0,
|
|
174
|
+
colorJitterBright: 0.05,
|
|
97
175
|
},
|
|
98
|
-
|
|
176
|
+
ink: {
|
|
99
177
|
name: 'Ink',
|
|
100
|
-
size: 5,
|
|
101
|
-
|
|
102
|
-
|
|
178
|
+
size: 5,
|
|
179
|
+
opacity: 1,
|
|
180
|
+
flow: 1,
|
|
181
|
+
hardness: 1,
|
|
182
|
+
spacing: 0.03,
|
|
183
|
+
tipShape: 'circle',
|
|
184
|
+
tipRotation: 0,
|
|
185
|
+
roundness: 1,
|
|
186
|
+
scatter: 0,
|
|
187
|
+
scatterBothAxes: false,
|
|
188
|
+
blendMode: 'normal',
|
|
189
|
+
smoothing: 0.9,
|
|
103
190
|
sizeDynamics: { source: 'speed', min: 0.3, max: 1.5, curve: 'ease-in-out' },
|
|
104
191
|
opacityDynamics: DEFAULT_DYNAMICS,
|
|
105
192
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
106
193
|
rotationDynamics: DEFAULT_DYNAMICS,
|
|
107
194
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
108
195
|
wetEdges: false,
|
|
109
|
-
colorJitterHue: 0,
|
|
196
|
+
colorJitterHue: 0,
|
|
197
|
+
colorJitterSat: 0,
|
|
198
|
+
colorJitterBright: 0,
|
|
110
199
|
},
|
|
111
|
-
|
|
200
|
+
scatter: {
|
|
112
201
|
name: 'Scatter',
|
|
113
|
-
size: 12,
|
|
114
|
-
|
|
115
|
-
|
|
202
|
+
size: 12,
|
|
203
|
+
opacity: 0.7,
|
|
204
|
+
flow: 1,
|
|
205
|
+
hardness: 0.5,
|
|
206
|
+
spacing: 0.4,
|
|
207
|
+
tipShape: 'circle',
|
|
208
|
+
tipRotation: 0,
|
|
209
|
+
roundness: 1,
|
|
210
|
+
scatter: 1,
|
|
211
|
+
scatterBothAxes: true,
|
|
212
|
+
blendMode: 'normal',
|
|
213
|
+
smoothing: 0.2,
|
|
116
214
|
sizeDynamics: { source: 'random', min: 0.3, max: 1.5, curve: 'linear' },
|
|
117
215
|
opacityDynamics: { source: 'random', min: 0.4, max: 1.0, curve: 'linear' },
|
|
118
216
|
flowDynamics: DEFAULT_DYNAMICS,
|
|
119
217
|
rotationDynamics: { source: 'random', min: 0, max: 1, curve: 'linear' },
|
|
120
218
|
scatterDynamics: DEFAULT_DYNAMICS,
|
|
121
219
|
wetEdges: false,
|
|
122
|
-
colorJitterHue: 0.1,
|
|
220
|
+
colorJitterHue: 0.1,
|
|
221
|
+
colorJitterSat: 0.15,
|
|
222
|
+
colorJitterBright: 0.1,
|
|
123
223
|
},
|
|
124
224
|
};
|
|
125
225
|
/* ── Utility functions ── */
|
|
126
226
|
function applyCurve(value, curve) {
|
|
127
227
|
const t = Math.max(0, Math.min(1, value));
|
|
128
228
|
switch (curve) {
|
|
129
|
-
case 'ease-in':
|
|
130
|
-
|
|
131
|
-
case 'ease-
|
|
132
|
-
|
|
229
|
+
case 'ease-in':
|
|
230
|
+
return t * t;
|
|
231
|
+
case 'ease-out':
|
|
232
|
+
return 1 - (1 - t) * (1 - t);
|
|
233
|
+
case 'ease-in-out':
|
|
234
|
+
return t < 0.5 ? 2 * t * t : 1 - 2 * (1 - t) * (1 - t);
|
|
235
|
+
default:
|
|
236
|
+
return t;
|
|
133
237
|
}
|
|
134
238
|
}
|
|
135
239
|
function evaluateDynamic(dynamic, point, speed) {
|
|
136
|
-
if (dynamic.source === 'none')
|
|
240
|
+
if (dynamic.source === 'none') {
|
|
137
241
|
return dynamic.max;
|
|
242
|
+
}
|
|
138
243
|
let input;
|
|
139
244
|
switch (dynamic.source) {
|
|
140
245
|
case 'pressure':
|
|
@@ -149,7 +254,8 @@ function evaluateDynamic(dynamic, point, speed) {
|
|
|
149
254
|
case 'random':
|
|
150
255
|
input = Math.random();
|
|
151
256
|
break;
|
|
152
|
-
default:
|
|
257
|
+
default:
|
|
258
|
+
input = 1;
|
|
153
259
|
}
|
|
154
260
|
const curved = applyCurve(input, dynamic.curve);
|
|
155
261
|
return dynamic.min + (dynamic.max - dynamic.min) * curved;
|
|
@@ -180,22 +286,27 @@ function rgbToHsl(r, g, b) {
|
|
|
180
286
|
b /= 255;
|
|
181
287
|
const max = Math.max(r, g, b), min = Math.min(r, g, b);
|
|
182
288
|
const l = (max + min) / 2;
|
|
183
|
-
if (max === min)
|
|
289
|
+
if (max === min) {
|
|
184
290
|
return [0, 0, l];
|
|
291
|
+
}
|
|
185
292
|
const d = max - min;
|
|
186
293
|
const s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
|
|
187
294
|
let h = 0;
|
|
188
|
-
if (max === r)
|
|
295
|
+
if (max === r) {
|
|
189
296
|
h = ((g - b) / d + (g < b ? 6 : 0)) / 6;
|
|
190
|
-
|
|
297
|
+
}
|
|
298
|
+
else if (max === g) {
|
|
191
299
|
h = ((b - r) / d + 2) / 6;
|
|
192
|
-
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
193
302
|
h = ((r - g) / d + 4) / 6;
|
|
303
|
+
}
|
|
194
304
|
return [h, s, l];
|
|
195
305
|
}
|
|
196
306
|
function smoothPoints(points, smoothing) {
|
|
197
|
-
if (smoothing <= 0 || points.length < 3)
|
|
307
|
+
if (smoothing <= 0 || points.length < 3) {
|
|
198
308
|
return points;
|
|
309
|
+
}
|
|
199
310
|
const windowSize = Math.max(2, Math.round(smoothing * 10));
|
|
200
311
|
const result = [points[0]];
|
|
201
312
|
for (let i = 1; i < points.length - 1; i++) {
|
|
@@ -275,8 +386,9 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
275
386
|
const lastTimestampRef = React.useRef(0);
|
|
276
387
|
const applyPreset = React.useCallback((presetName) => {
|
|
277
388
|
const preset = BRUSH_PRESETS[presetName];
|
|
278
|
-
if (preset)
|
|
389
|
+
if (preset) {
|
|
279
390
|
setSettings({ ...preset });
|
|
391
|
+
}
|
|
280
392
|
}, []);
|
|
281
393
|
const startStroke = React.useCallback((e) => {
|
|
282
394
|
const point = {
|
|
@@ -305,8 +417,9 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
305
417
|
}
|
|
306
418
|
}, [canvas, color, settings]);
|
|
307
419
|
const continueStroke = React.useCallback((e) => {
|
|
308
|
-
if (!strokeRef.current.length || !canvas)
|
|
420
|
+
if (!strokeRef.current.length || !canvas) {
|
|
309
421
|
return;
|
|
422
|
+
}
|
|
310
423
|
const now = performance.now();
|
|
311
424
|
const point = {
|
|
312
425
|
x: e.offsetX,
|
|
@@ -319,19 +432,21 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
319
432
|
};
|
|
320
433
|
strokeRef.current.push(point);
|
|
321
434
|
const ctx = canvas.getContext('2d');
|
|
322
|
-
if (!ctx || !lastStampRef.current)
|
|
435
|
+
if (!ctx || !lastStampRef.current) {
|
|
323
436
|
return;
|
|
437
|
+
}
|
|
324
438
|
// Calculate speed
|
|
325
439
|
const dt = now - lastTimestampRef.current;
|
|
326
440
|
const dx = point.x - lastStampRef.current.x;
|
|
327
441
|
const dy = point.y - lastStampRef.current.y;
|
|
328
442
|
const dist = Math.sqrt(dx * dx + dy * dy);
|
|
329
|
-
const speed = dt > 0 ? dist / dt * 1000 : 0;
|
|
443
|
+
const speed = dt > 0 ? (dist / dt) * 1000 : 0;
|
|
330
444
|
// Stamp spacing
|
|
331
445
|
const dynamicSize = settings.size * evaluateDynamic(settings.sizeDynamics, point, speed);
|
|
332
446
|
const stampDist = Math.max(1, dynamicSize * settings.spacing);
|
|
333
|
-
if (dist < stampDist)
|
|
447
|
+
if (dist < stampDist) {
|
|
334
448
|
return;
|
|
449
|
+
}
|
|
335
450
|
const steps = Math.floor(dist / stampDist);
|
|
336
451
|
const baseRGBA = hexToRGBA(color);
|
|
337
452
|
for (let i = 1; i <= steps; i++) {
|
|
@@ -349,7 +464,9 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
349
464
|
}
|
|
350
465
|
// Color jitter
|
|
351
466
|
let stampColor = baseRGBA;
|
|
352
|
-
if (settings.colorJitterHue > 0 ||
|
|
467
|
+
if (settings.colorJitterHue > 0 ||
|
|
468
|
+
settings.colorJitterSat > 0 ||
|
|
469
|
+
settings.colorJitterBright > 0) {
|
|
353
470
|
const [h, s, l] = rgbToHsl(baseRGBA[0], baseRGBA[1], baseRGBA[2]);
|
|
354
471
|
const jH = h + (Math.random() - 0.5) * settings.colorJitterHue;
|
|
355
472
|
const jS = s + (Math.random() - 0.5) * settings.colorJitterSat;
|
|
@@ -365,8 +482,9 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
365
482
|
lastTimestampRef.current = now;
|
|
366
483
|
}, [canvas, color, settings]);
|
|
367
484
|
const endStroke = React.useCallback(() => {
|
|
368
|
-
if (!strokeRef.current.length)
|
|
485
|
+
if (!strokeRef.current.length) {
|
|
369
486
|
return null;
|
|
487
|
+
}
|
|
370
488
|
const smoothed = smoothPoints(strokeRef.current, settings.smoothing);
|
|
371
489
|
const stroke = {
|
|
372
490
|
id: `stroke-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
|
|
@@ -381,17 +499,21 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
381
499
|
}, [color, settings]);
|
|
382
500
|
// Auto-attach pointer events
|
|
383
501
|
React.useEffect(() => {
|
|
384
|
-
if (!canvas)
|
|
502
|
+
if (!canvas) {
|
|
385
503
|
return;
|
|
504
|
+
}
|
|
386
505
|
const onDown = (e) => {
|
|
387
506
|
canvas.setPointerCapture(e.pointerId);
|
|
388
507
|
startStroke(e);
|
|
389
508
|
};
|
|
390
509
|
const onMove = (e) => {
|
|
391
|
-
if (e.buttons > 0)
|
|
510
|
+
if (e.buttons > 0) {
|
|
392
511
|
continueStroke(e);
|
|
512
|
+
}
|
|
513
|
+
};
|
|
514
|
+
const onUp = () => {
|
|
515
|
+
endStroke();
|
|
393
516
|
};
|
|
394
|
-
const onUp = () => { endStroke(); };
|
|
395
517
|
canvas.addEventListener('pointerdown', onDown);
|
|
396
518
|
canvas.addEventListener('pointermove', onMove);
|
|
397
519
|
canvas.addEventListener('pointerup', onUp);
|
|
@@ -406,10 +528,13 @@ function useBrushEngine(canvas, color = '#000000') {
|
|
|
406
528
|
};
|
|
407
529
|
}, [canvas, startStroke, continueStroke, endStroke]);
|
|
408
530
|
return {
|
|
409
|
-
settings,
|
|
531
|
+
settings,
|
|
532
|
+
setSettings,
|
|
410
533
|
applyPreset,
|
|
411
534
|
isDrawing,
|
|
412
|
-
startStroke,
|
|
535
|
+
startStroke,
|
|
536
|
+
continueStroke,
|
|
537
|
+
endStroke,
|
|
413
538
|
presetNames: Object.keys(BRUSH_PRESETS),
|
|
414
539
|
};
|
|
415
540
|
}
|
|
@@ -418,12 +543,14 @@ const NiceBrushEngine = ({ canvas, color = '#000000', onStrokeEnd, className = '
|
|
|
418
543
|
const engine = useBrushEngine(canvas, color);
|
|
419
544
|
// Override endStroke to fire callback
|
|
420
545
|
React.useEffect(() => {
|
|
421
|
-
if (!canvas)
|
|
546
|
+
if (!canvas) {
|
|
422
547
|
return;
|
|
548
|
+
}
|
|
423
549
|
const onUp = () => {
|
|
424
550
|
const stroke = engine.endStroke();
|
|
425
|
-
if (stroke && onStrokeEnd)
|
|
551
|
+
if (stroke && onStrokeEnd) {
|
|
426
552
|
onStrokeEnd(stroke);
|
|
553
|
+
}
|
|
427
554
|
};
|
|
428
555
|
canvas.addEventListener('pointerup', onUp);
|
|
429
556
|
return () => canvas.removeEventListener('pointerup', onUp);
|
|
@@ -432,12 +559,21 @@ const NiceBrushEngine = ({ canvas, color = '#000000', onStrokeEnd, className = '
|
|
|
432
559
|
return (jsxRuntime.jsxs("div", { className: `nice-brush-engine ${className}`, style: { display: 'grid', gap: 6, fontSize: 13 }, children: [jsxRuntime.jsx("strong", { children: "\uD83D\uDD8C\uFE0F Brush Engine v2" }), jsxRuntime.jsx("div", { style: { display: 'flex', gap: 2, flexWrap: 'wrap' }, children: engine.presetNames.map((name) => {
|
|
433
560
|
var _a, _b;
|
|
434
561
|
return (jsxRuntime.jsx("button", { type: "button", onClick: () => engine.applyPreset(name), style: {
|
|
435
|
-
padding: '2px 6px',
|
|
562
|
+
padding: '2px 6px',
|
|
563
|
+
fontSize: 10,
|
|
564
|
+
cursor: 'pointer',
|
|
565
|
+
borderRadius: 4,
|
|
436
566
|
border: '1px solid var(--border, #e2e8f0)',
|
|
437
567
|
background: s.name === ((_a = BRUSH_PRESETS[name]) === null || _a === void 0 ? void 0 : _a.name) ? 'var(--accent, #6366f1)' : 'transparent',
|
|
438
568
|
color: s.name === ((_b = BRUSH_PRESETS[name]) === null || _b === void 0 ? void 0 : _b.name) ? '#fff' : 'inherit',
|
|
439
569
|
}, children: BRUSH_PRESETS[name].name }, name));
|
|
440
|
-
}) }), jsxRuntime.jsxs("label", { children: ["Size: ", s.size, "px", jsxRuntime.jsx("input", { type: "range", min: 1, max: 200, value: s.size, onChange: (e) => engine.setSettings({ ...s, size: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Opacity: ", Math.round(s.opacity * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.opacity, onChange: (e) => engine.setSettings({ ...s, opacity: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Flow: ", Math.round(s.flow * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.flow, onChange: (e) => engine.setSettings({ ...s, flow: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Hardness: ", Math.round(s.hardness * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.hardness, onChange: (e) => engine.setSettings({ ...s, hardness: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Smoothing: ", Math.round(s.smoothing * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.smoothing, onChange: (e) => engine.setSettings({ ...s, smoothing: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Tip:", jsxRuntime.jsxs("select", { value: s.tipShape, onChange: (e) => engine.setSettings({ ...s, tipShape: e.target.value }), style: { width: '100%' }, children: [jsxRuntime.jsx("option", { value: "circle", children: "Circle" }), jsxRuntime.jsx("option", { value: "square", children: "Square" }), jsxRuntime.jsx("option", { value: "diamond", children: "Diamond" }), jsxRuntime.jsx("option", { value: "texture", children: "Texture" })] })] }), jsxRuntime.jsxs("label", { children: ["Roundness: ", Math.round(s.roundness * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0.05, max: 1, step: 0.05, value: s.roundness, onChange: (e) => engine.setSettings({ ...s, roundness: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("details", { children: [jsxRuntime.jsx("summary", { style: { cursor: 'pointer', fontSize: 12 }, children: "\uD83D\uDCCA Size Dynamics" }), jsxRuntime.jsxs("label", { children: ["Source:", jsxRuntime.jsxs("select", { value: s.sizeDynamics.source, onChange: (e) => engine.setSettings({
|
|
570
|
+
}) }), jsxRuntime.jsxs("label", { children: ["Size: ", s.size, "px", jsxRuntime.jsx("input", { type: "range", min: 1, max: 200, value: s.size, onChange: (e) => engine.setSettings({ ...s, size: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Opacity: ", Math.round(s.opacity * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.opacity, onChange: (e) => engine.setSettings({ ...s, opacity: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Flow: ", Math.round(s.flow * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.flow, onChange: (e) => engine.setSettings({ ...s, flow: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Hardness: ", Math.round(s.hardness * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.hardness, onChange: (e) => engine.setSettings({ ...s, hardness: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Smoothing: ", Math.round(s.smoothing * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.smoothing, onChange: (e) => engine.setSettings({ ...s, smoothing: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Tip:", jsxRuntime.jsxs("select", { value: s.tipShape, onChange: (e) => engine.setSettings({ ...s, tipShape: e.target.value }), style: { width: '100%' }, children: [jsxRuntime.jsx("option", { value: "circle", children: "Circle" }), jsxRuntime.jsx("option", { value: "square", children: "Square" }), jsxRuntime.jsx("option", { value: "diamond", children: "Diamond" }), jsxRuntime.jsx("option", { value: "texture", children: "Texture" })] })] }), jsxRuntime.jsxs("label", { children: ["Roundness: ", Math.round(s.roundness * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0.05, max: 1, step: 0.05, value: s.roundness, onChange: (e) => engine.setSettings({ ...s, roundness: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("details", { children: [jsxRuntime.jsx("summary", { style: { cursor: 'pointer', fontSize: 12 }, children: "\uD83D\uDCCA Size Dynamics" }), jsxRuntime.jsxs("label", { children: ["Source:", jsxRuntime.jsxs("select", { value: s.sizeDynamics.source, onChange: (e) => engine.setSettings({
|
|
571
|
+
...s,
|
|
572
|
+
sizeDynamics: {
|
|
573
|
+
...s.sizeDynamics,
|
|
574
|
+
source: e.target.value,
|
|
575
|
+
},
|
|
576
|
+
}), style: { width: '100%' }, children: [jsxRuntime.jsx("option", { value: "none", children: "Off" }), jsxRuntime.jsx("option", { value: "pressure", children: "Pressure" }), jsxRuntime.jsx("option", { value: "tilt", children: "Tilt" }), jsxRuntime.jsx("option", { value: "speed", children: "Speed" }), jsxRuntime.jsx("option", { value: "random", children: "Random" })] })] })] }), jsxRuntime.jsxs("label", { children: ["Scatter: ", Math.round(s.scatter * 100), "%", jsxRuntime.jsx("input", { type: "range", min: 0, max: 1, step: 0.01, value: s.scatter, onChange: (e) => engine.setSettings({ ...s, scatter: +e.target.value }), style: { width: '100%' } })] }), jsxRuntime.jsxs("label", { children: ["Blend:", jsxRuntime.jsx("select", { value: s.blendMode, onChange: (e) => engine.setSettings({ ...s, blendMode: e.target.value }), style: { width: '100%' }, children: ['normal', 'multiply', 'screen', 'overlay', 'darken', 'lighten'].map((m) => (jsxRuntime.jsx("option", { value: m, children: m }, m))) })] }), jsxRuntime.jsxs("label", { style: { display: 'flex', gap: 4, alignItems: 'center' }, children: [jsxRuntime.jsx("input", { type: "checkbox", checked: s.wetEdges, onChange: (e) => engine.setSettings({ ...s, wetEdges: e.target.checked }) }), "Wet Edges"] })] }));
|
|
441
577
|
};
|
|
442
578
|
|
|
443
579
|
exports.BRUSH_PRESETS = BRUSH_PRESETS;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NiceBrushEngine.js","sources":["../../../src/core/NiceBrushEngine.tsx"],"sourcesContent":[null],"names":["useState","useRef","useCallback","useEffect","_jsxs","_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NiceBrushEngine.js","sources":["../../../src/core/NiceBrushEngine.tsx"],"sourcesContent":[null],"names":["useState","useRef","useCallback","useEffect","_jsxs","_jsx"],"mappings":"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"}
|