@nice2dev/ui-graphics 1.0.0
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/CHANGELOG.md +84 -0
- package/LICENSE +21 -0
- package/README.md +339 -0
- package/dist/cjs/animation/AnimatedPerson.js +153 -0
- package/dist/cjs/animation/AnimatedPerson.js.map +1 -0
- package/dist/cjs/animation/AnimationEditor.js +106 -0
- package/dist/cjs/animation/AnimationEditor.js.map +1 -0
- package/dist/cjs/animation/Audience.js +59 -0
- package/dist/cjs/animation/Audience.js.map +1 -0
- package/dist/cjs/animation/BodyRenderer.js +33 -0
- package/dist/cjs/animation/BodyRenderer.js.map +1 -0
- package/dist/cjs/animation/animationHelper.js +272 -0
- package/dist/cjs/animation/animationHelper.js.map +1 -0
- package/dist/cjs/animation/characterTypes.js +75 -0
- package/dist/cjs/animation/characterTypes.js.map +1 -0
- package/dist/cjs/animation/choreoDSL.js +190 -0
- package/dist/cjs/animation/choreoDSL.js.map +1 -0
- package/dist/cjs/animation/choreography.js +41 -0
- package/dist/cjs/animation/choreography.js.map +1 -0
- package/dist/cjs/animation/karaokeIntegration.js +98 -0
- package/dist/cjs/animation/karaokeIntegration.js.map +1 -0
- package/dist/cjs/animation/lottieExport.js +128 -0
- package/dist/cjs/animation/lottieExport.js.map +1 -0
- package/dist/cjs/animation/motionPath.js +196 -0
- package/dist/cjs/animation/motionPath.js.map +1 -0
- package/dist/cjs/animation/physics.js +201 -0
- package/dist/cjs/animation/physics.js.map +1 -0
- package/dist/cjs/animation/rig/RigPlayer.js +63 -0
- package/dist/cjs/animation/rig/RigPlayer.js.map +1 -0
- package/dist/cjs/animation/rig/RiggedBody.js +30 -0
- package/dist/cjs/animation/rig/RiggedBody.js.map +1 -0
- package/dist/cjs/animation/rig/choreoRigBridge.js +63 -0
- package/dist/cjs/animation/rig/choreoRigBridge.js.map +1 -0
- package/dist/cjs/animation/rig/ik.js +22 -0
- package/dist/cjs/animation/rig/ik.js.map +1 -0
- package/dist/cjs/animation/rig/poseOps.js +49 -0
- package/dist/cjs/animation/rig/poseOps.js.map +1 -0
- package/dist/cjs/animation/rig/presets.js +60 -0
- package/dist/cjs/animation/rig/presets.js.map +1 -0
- package/dist/cjs/animation/rig/rigMath.js +41 -0
- package/dist/cjs/animation/rig/rigMath.js.map +1 -0
- package/dist/cjs/animation/rig/rigTypes.js +44 -0
- package/dist/cjs/animation/rig/rigTypes.js.map +1 -0
- package/dist/cjs/animation/shapes/arms.js +15 -0
- package/dist/cjs/animation/shapes/arms.js.map +1 -0
- package/dist/cjs/animation/shapes/eyes.js +52 -0
- package/dist/cjs/animation/shapes/eyes.js.map +1 -0
- package/dist/cjs/animation/shapes/hair.js +55 -0
- package/dist/cjs/animation/shapes/hair.js.map +1 -0
- package/dist/cjs/animation/shapes/heads.js +62 -0
- package/dist/cjs/animation/shapes/heads.js.map +1 -0
- package/dist/cjs/animation/shapes/headwear.js +44 -0
- package/dist/cjs/animation/shapes/headwear.js.map +1 -0
- package/dist/cjs/animation/shapes/legs.js +15 -0
- package/dist/cjs/animation/shapes/legs.js.map +1 -0
- package/dist/cjs/animation/shapes/mouths.js +53 -0
- package/dist/cjs/animation/shapes/mouths.js.map +1 -0
- package/dist/cjs/animation/shapes/noses.js +31 -0
- package/dist/cjs/animation/shapes/noses.js.map +1 -0
- package/dist/cjs/animation/shapes/outfits.js +43 -0
- package/dist/cjs/animation/shapes/outfits.js.map +1 -0
- package/dist/cjs/animation/shapes/torsos.js +13 -0
- package/dist/cjs/animation/shapes/torsos.js.map +1 -0
- package/dist/cjs/animation/spineExport.js +132 -0
- package/dist/cjs/animation/spineExport.js.map +1 -0
- package/dist/cjs/core/LocalUI.js +54 -0
- package/dist/cjs/core/LocalUI.js.map +1 -0
- package/dist/cjs/core/collaboration.js +259 -0
- package/dist/cjs/core/collaboration.js.map +1 -0
- package/dist/cjs/core/colorBlindness.js +97 -0
- package/dist/cjs/core/colorBlindness.js.map +1 -0
- package/dist/cjs/core/dragDrop.js +168 -0
- package/dist/cjs/core/dragDrop.js.map +1 -0
- package/dist/cjs/core/fixes.js +185 -0
- package/dist/cjs/core/fixes.js.map +1 -0
- package/dist/cjs/core/gridGuides.js +245 -0
- package/dist/cjs/core/gridGuides.js.map +1 -0
- package/dist/cjs/core/historyVisual.js +124 -0
- package/dist/cjs/core/historyVisual.js.map +1 -0
- package/dist/cjs/core/i18n.js +16 -0
- package/dist/cjs/core/i18n.js.map +1 -0
- package/dist/cjs/core/integrations.js +261 -0
- package/dist/cjs/core/integrations.js.map +1 -0
- package/dist/cjs/core/minimap.js +142 -0
- package/dist/cjs/core/minimap.js.map +1 -0
- package/dist/cjs/core/plugins.js +129 -0
- package/dist/cjs/core/plugins.js.map +1 -0
- package/dist/cjs/core/rtl.js +102 -0
- package/dist/cjs/core/rtl.js.map +1 -0
- package/dist/cjs/core/shortcuts.js +205 -0
- package/dist/cjs/core/shortcuts.js.map +1 -0
- package/dist/cjs/core/theme.js +171 -0
- package/dist/cjs/core/theme.js.map +1 -0
- package/dist/cjs/font/NiceFontEditor.js +193 -0
- package/dist/cjs/font/NiceFontEditor.js.map +1 -0
- package/dist/cjs/game/GameAsset2dEditor.js +371 -0
- package/dist/cjs/game/GameAsset2dEditor.js.map +1 -0
- package/dist/cjs/game/GameAsset2dEditor.module.css.js +6 -0
- package/dist/cjs/game/GameAsset2dEditor.module.css.js.map +1 -0
- package/dist/cjs/game/gameAssetTypes.js +20 -0
- package/dist/cjs/game/gameAssetTypes.js.map +1 -0
- package/dist/cjs/game/gameAssetUtils.js +475 -0
- package/dist/cjs/game/gameAssetUtils.js.map +1 -0
- package/dist/cjs/game/useGameAssetEditor.js +761 -0
- package/dist/cjs/game/useGameAssetEditor.js.map +1 -0
- package/dist/cjs/icon/NiceIconEditor.js +249 -0
- package/dist/cjs/icon/NiceIconEditor.js.map +1 -0
- package/dist/cjs/index.js +264 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/nice2dev-ui/dist/index.js +32070 -0
- package/dist/cjs/nice2dev-ui/dist/index.js.map +1 -0
- package/dist/cjs/nice2dev-ui-graphics.css +1 -0
- package/dist/cjs/photo/FilterThumb.js +29 -0
- package/dist/cjs/photo/FilterThumb.js.map +1 -0
- package/dist/cjs/photo/PhotoEditor.js +20 -0
- package/dist/cjs/photo/PhotoEditor.js.map +1 -0
- package/dist/cjs/photo/PhotoEditor.module.css.js +6 -0
- package/dist/cjs/photo/PhotoEditor.module.css.js.map +1 -0
- package/dist/cjs/photo/PhotoEditorCanvas.js +59 -0
- package/dist/cjs/photo/PhotoEditorCanvas.js.map +1 -0
- package/dist/cjs/photo/PhotoEditorLeftPanel.js +174 -0
- package/dist/cjs/photo/PhotoEditorLeftPanel.js.map +1 -0
- package/dist/cjs/photo/PhotoEditorToolbar.js +15 -0
- package/dist/cjs/photo/PhotoEditorToolbar.js.map +1 -0
- package/dist/cjs/photo/photoEditorActions.js +80 -0
- package/dist/cjs/photo/photoEditorActions.js.map +1 -0
- package/dist/cjs/photo/photoEditorTypes.js +40 -0
- package/dist/cjs/photo/photoEditorTypes.js.map +1 -0
- package/dist/cjs/photo/photoFilters.js +880 -0
- package/dist/cjs/photo/photoFilters.js.map +1 -0
- package/dist/cjs/photo/photoOverlays.js +651 -0
- package/dist/cjs/photo/photoOverlays.js.map +1 -0
- package/dist/cjs/photo/photoSelection.js +547 -0
- package/dist/cjs/photo/photoSelection.js.map +1 -0
- package/dist/cjs/photo/usePhotoEditor.js +640 -0
- package/dist/cjs/photo/usePhotoEditor.js.map +1 -0
- package/dist/cjs/pixel/HSVPicker.js +173 -0
- package/dist/cjs/pixel/HSVPicker.js.map +1 -0
- package/dist/cjs/pixel/PixelEditor.js +28 -0
- package/dist/cjs/pixel/PixelEditor.js.map +1 -0
- package/dist/cjs/pixel/PixelEditor.module.css.js +6 -0
- package/dist/cjs/pixel/PixelEditor.module.css.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorCanvas.js +15 -0
- package/dist/cjs/pixel/PixelEditorCanvas.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorMenuBar.js +11 -0
- package/dist/cjs/pixel/PixelEditorMenuBar.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorRightPanel.js +15 -0
- package/dist/cjs/pixel/PixelEditorRightPanel.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorStatusBar.js +15 -0
- package/dist/cjs/pixel/PixelEditorStatusBar.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorTimeline.js +11 -0
- package/dist/cjs/pixel/PixelEditorTimeline.js.map +1 -0
- package/dist/cjs/pixel/PixelEditorToolbar.js +16 -0
- package/dist/cjs/pixel/PixelEditorToolbar.js.map +1 -0
- package/dist/cjs/pixel/asepriteFormat.js +512 -0
- package/dist/cjs/pixel/asepriteFormat.js.map +1 -0
- package/dist/cjs/pixel/pixelEditorExports.js +471 -0
- package/dist/cjs/pixel/pixelEditorExports.js.map +1 -0
- package/dist/cjs/pixel/pixelEditorTypes.js +102 -0
- package/dist/cjs/pixel/pixelEditorTypes.js.map +1 -0
- package/dist/cjs/pixel/pixelEditorUtils.js +664 -0
- package/dist/cjs/pixel/pixelEditorUtils.js.map +1 -0
- package/dist/cjs/pixel/usePixelEditor.js +1112 -0
- package/dist/cjs/pixel/usePixelEditor.js.map +1 -0
- package/dist/cjs/texture/Nice3DTexturePainter.js +236 -0
- package/dist/cjs/texture/Nice3DTexturePainter.js.map +1 -0
- package/dist/cjs/ui/NiceUIDesigner.js +191 -0
- package/dist/cjs/ui/NiceUIDesigner.js.map +1 -0
- package/dist/cjs/vector/VectorEditor.js +31 -0
- package/dist/cjs/vector/VectorEditor.js.map +1 -0
- package/dist/cjs/vector/VectorEditor.module.css.js +6 -0
- package/dist/cjs/vector/VectorEditor.module.css.js.map +1 -0
- package/dist/cjs/vector/VectorEditorMenuBar.js +16 -0
- package/dist/cjs/vector/VectorEditorMenuBar.js.map +1 -0
- package/dist/cjs/vector/VectorEditorRightPanel.js +126 -0
- package/dist/cjs/vector/VectorEditorRightPanel.js.map +1 -0
- package/dist/cjs/vector/VectorEditorShapeRenderer.js +55 -0
- package/dist/cjs/vector/VectorEditorShapeRenderer.js.map +1 -0
- package/dist/cjs/vector/VectorEditorStatusBar.js +14 -0
- package/dist/cjs/vector/VectorEditorStatusBar.js.map +1 -0
- package/dist/cjs/vector/useVectorEditor.js +613 -0
- package/dist/cjs/vector/useVectorEditor.js.map +1 -0
- package/dist/cjs/vector/vectorBooleanOps.js +511 -0
- package/dist/cjs/vector/vectorBooleanOps.js.map +1 -0
- package/dist/cjs/vector/vectorEditorExport.js +159 -0
- package/dist/cjs/vector/vectorEditorExport.js.map +1 -0
- package/dist/cjs/vector/vectorEditorImport.js +150 -0
- package/dist/cjs/vector/vectorEditorImport.js.map +1 -0
- package/dist/cjs/vector/vectorEditorTypes.js +72 -0
- package/dist/cjs/vector/vectorEditorTypes.js.map +1 -0
- package/dist/cjs/vector/vectorGradients.js +201 -0
- package/dist/cjs/vector/vectorGradients.js.map +1 -0
- package/dist/esm/animation/AnimatedPerson.js +151 -0
- package/dist/esm/animation/AnimatedPerson.js.map +1 -0
- package/dist/esm/animation/AnimationEditor.js +104 -0
- package/dist/esm/animation/AnimationEditor.js.map +1 -0
- package/dist/esm/animation/Audience.js +57 -0
- package/dist/esm/animation/Audience.js.map +1 -0
- package/dist/esm/animation/BodyRenderer.js +28 -0
- package/dist/esm/animation/BodyRenderer.js.map +1 -0
- package/dist/esm/animation/animationHelper.js +268 -0
- package/dist/esm/animation/animationHelper.js.map +1 -0
- package/dist/esm/animation/characterTypes.js +70 -0
- package/dist/esm/animation/characterTypes.js.map +1 -0
- package/dist/esm/animation/choreoDSL.js +182 -0
- package/dist/esm/animation/choreoDSL.js.map +1 -0
- package/dist/esm/animation/choreography.js +36 -0
- package/dist/esm/animation/choreography.js.map +1 -0
- package/dist/esm/animation/karaokeIntegration.js +91 -0
- package/dist/esm/animation/karaokeIntegration.js.map +1 -0
- package/dist/esm/animation/lottieExport.js +123 -0
- package/dist/esm/animation/lottieExport.js.map +1 -0
- package/dist/esm/animation/motionPath.js +185 -0
- package/dist/esm/animation/motionPath.js.map +1 -0
- package/dist/esm/animation/physics.js +192 -0
- package/dist/esm/animation/physics.js.map +1 -0
- package/dist/esm/animation/rig/RigPlayer.js +61 -0
- package/dist/esm/animation/rig/RigPlayer.js.map +1 -0
- package/dist/esm/animation/rig/RiggedBody.js +28 -0
- package/dist/esm/animation/rig/RiggedBody.js.map +1 -0
- package/dist/esm/animation/rig/choreoRigBridge.js +60 -0
- package/dist/esm/animation/rig/choreoRigBridge.js.map +1 -0
- package/dist/esm/animation/rig/ik.js +20 -0
- package/dist/esm/animation/rig/ik.js.map +1 -0
- package/dist/esm/animation/rig/poseOps.js +45 -0
- package/dist/esm/animation/rig/poseOps.js.map +1 -0
- package/dist/esm/animation/rig/presets.js +53 -0
- package/dist/esm/animation/rig/presets.js.map +1 -0
- package/dist/esm/animation/rig/rigMath.js +37 -0
- package/dist/esm/animation/rig/rigMath.js.map +1 -0
- package/dist/esm/animation/rig/rigTypes.js +40 -0
- package/dist/esm/animation/rig/rigTypes.js.map +1 -0
- package/dist/esm/animation/shapes/arms.js +13 -0
- package/dist/esm/animation/shapes/arms.js.map +1 -0
- package/dist/esm/animation/shapes/eyes.js +45 -0
- package/dist/esm/animation/shapes/eyes.js.map +1 -0
- package/dist/esm/animation/shapes/hair.js +46 -0
- package/dist/esm/animation/shapes/hair.js.map +1 -0
- package/dist/esm/animation/shapes/heads.js +52 -0
- package/dist/esm/animation/shapes/heads.js.map +1 -0
- package/dist/esm/animation/shapes/headwear.js +36 -0
- package/dist/esm/animation/shapes/headwear.js.map +1 -0
- package/dist/esm/animation/shapes/legs.js +13 -0
- package/dist/esm/animation/shapes/legs.js.map +1 -0
- package/dist/esm/animation/shapes/mouths.js +45 -0
- package/dist/esm/animation/shapes/mouths.js.map +1 -0
- package/dist/esm/animation/shapes/noses.js +23 -0
- package/dist/esm/animation/shapes/noses.js.map +1 -0
- package/dist/esm/animation/shapes/outfits.js +37 -0
- package/dist/esm/animation/shapes/outfits.js.map +1 -0
- package/dist/esm/animation/shapes/torsos.js +11 -0
- package/dist/esm/animation/shapes/torsos.js.map +1 -0
- package/dist/esm/animation/spineExport.js +128 -0
- package/dist/esm/animation/spineExport.js.map +1 -0
- package/dist/esm/core/LocalUI.js +50 -0
- package/dist/esm/core/LocalUI.js.map +1 -0
- package/dist/esm/core/collaboration.js +252 -0
- package/dist/esm/core/collaboration.js.map +1 -0
- package/dist/esm/core/colorBlindness.js +90 -0
- package/dist/esm/core/colorBlindness.js.map +1 -0
- package/dist/esm/core/dragDrop.js +165 -0
- package/dist/esm/core/dragDrop.js.map +1 -0
- package/dist/esm/core/fixes.js +179 -0
- package/dist/esm/core/fixes.js.map +1 -0
- package/dist/esm/core/gridGuides.js +232 -0
- package/dist/esm/core/gridGuides.js.map +1 -0
- package/dist/esm/core/historyVisual.js +121 -0
- package/dist/esm/core/historyVisual.js.map +1 -0
- package/dist/esm/core/i18n.js +13 -0
- package/dist/esm/core/i18n.js.map +1 -0
- package/dist/esm/core/integrations.js +254 -0
- package/dist/esm/core/integrations.js.map +1 -0
- package/dist/esm/core/minimap.js +139 -0
- package/dist/esm/core/minimap.js.map +1 -0
- package/dist/esm/core/plugins.js +124 -0
- package/dist/esm/core/plugins.js.map +1 -0
- package/dist/esm/core/rtl.js +95 -0
- package/dist/esm/core/rtl.js.map +1 -0
- package/dist/esm/core/shortcuts.js +200 -0
- package/dist/esm/core/shortcuts.js.map +1 -0
- package/dist/esm/core/theme.js +162 -0
- package/dist/esm/core/theme.js.map +1 -0
- package/dist/esm/font/NiceFontEditor.js +189 -0
- package/dist/esm/font/NiceFontEditor.js.map +1 -0
- package/dist/esm/game/GameAsset2dEditor.js +369 -0
- package/dist/esm/game/GameAsset2dEditor.js.map +1 -0
- package/dist/esm/game/GameAsset2dEditor.module.css.js +4 -0
- package/dist/esm/game/GameAsset2dEditor.module.css.js.map +1 -0
- package/dist/esm/game/gameAssetTypes.js +18 -0
- package/dist/esm/game/gameAssetTypes.js.map +1 -0
- package/dist/esm/game/gameAssetUtils.js +456 -0
- package/dist/esm/game/gameAssetUtils.js.map +1 -0
- package/dist/esm/game/useGameAssetEditor.js +759 -0
- package/dist/esm/game/useGameAssetEditor.js.map +1 -0
- package/dist/esm/icon/NiceIconEditor.js +246 -0
- package/dist/esm/icon/NiceIconEditor.js.map +1 -0
- package/dist/esm/index.js +59 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/nice2dev-ui/dist/index.js +31720 -0
- package/dist/esm/nice2dev-ui/dist/index.js.map +1 -0
- package/dist/esm/nice2dev-ui-graphics.css +1 -0
- package/dist/esm/photo/FilterThumb.js +27 -0
- package/dist/esm/photo/FilterThumb.js.map +1 -0
- package/dist/esm/photo/PhotoEditor.js +18 -0
- package/dist/esm/photo/PhotoEditor.js.map +1 -0
- package/dist/esm/photo/PhotoEditor.module.css.js +4 -0
- package/dist/esm/photo/PhotoEditor.module.css.js.map +1 -0
- package/dist/esm/photo/PhotoEditorCanvas.js +57 -0
- package/dist/esm/photo/PhotoEditorCanvas.js.map +1 -0
- package/dist/esm/photo/PhotoEditorLeftPanel.js +172 -0
- package/dist/esm/photo/PhotoEditorLeftPanel.js.map +1 -0
- package/dist/esm/photo/PhotoEditorToolbar.js +13 -0
- package/dist/esm/photo/PhotoEditorToolbar.js.map +1 -0
- package/dist/esm/photo/photoEditorActions.js +75 -0
- package/dist/esm/photo/photoEditorActions.js.map +1 -0
- package/dist/esm/photo/photoEditorTypes.js +36 -0
- package/dist/esm/photo/photoEditorTypes.js.map +1 -0
- package/dist/esm/photo/photoFilters.js +871 -0
- package/dist/esm/photo/photoFilters.js.map +1 -0
- package/dist/esm/photo/photoOverlays.js +636 -0
- package/dist/esm/photo/photoOverlays.js.map +1 -0
- package/dist/esm/photo/photoSelection.js +535 -0
- package/dist/esm/photo/photoSelection.js.map +1 -0
- package/dist/esm/photo/usePhotoEditor.js +638 -0
- package/dist/esm/photo/usePhotoEditor.js.map +1 -0
- package/dist/esm/pixel/HSVPicker.js +171 -0
- package/dist/esm/pixel/HSVPicker.js.map +1 -0
- package/dist/esm/pixel/PixelEditor.js +26 -0
- package/dist/esm/pixel/PixelEditor.js.map +1 -0
- package/dist/esm/pixel/PixelEditor.module.css.js +4 -0
- package/dist/esm/pixel/PixelEditor.module.css.js.map +1 -0
- package/dist/esm/pixel/PixelEditorCanvas.js +13 -0
- package/dist/esm/pixel/PixelEditorCanvas.js.map +1 -0
- package/dist/esm/pixel/PixelEditorMenuBar.js +9 -0
- package/dist/esm/pixel/PixelEditorMenuBar.js.map +1 -0
- package/dist/esm/pixel/PixelEditorRightPanel.js +13 -0
- package/dist/esm/pixel/PixelEditorRightPanel.js.map +1 -0
- package/dist/esm/pixel/PixelEditorStatusBar.js +13 -0
- package/dist/esm/pixel/PixelEditorStatusBar.js.map +1 -0
- package/dist/esm/pixel/PixelEditorTimeline.js +9 -0
- package/dist/esm/pixel/PixelEditorTimeline.js.map +1 -0
- package/dist/esm/pixel/PixelEditorToolbar.js +14 -0
- package/dist/esm/pixel/PixelEditorToolbar.js.map +1 -0
- package/dist/esm/pixel/asepriteFormat.js +505 -0
- package/dist/esm/pixel/asepriteFormat.js.map +1 -0
- package/dist/esm/pixel/pixelEditorExports.js +461 -0
- package/dist/esm/pixel/pixelEditorExports.js.map +1 -0
- package/dist/esm/pixel/pixelEditorTypes.js +90 -0
- package/dist/esm/pixel/pixelEditorTypes.js.map +1 -0
- package/dist/esm/pixel/pixelEditorUtils.js +631 -0
- package/dist/esm/pixel/pixelEditorUtils.js.map +1 -0
- package/dist/esm/pixel/usePixelEditor.js +1110 -0
- package/dist/esm/pixel/usePixelEditor.js.map +1 -0
- package/dist/esm/texture/Nice3DTexturePainter.js +233 -0
- package/dist/esm/texture/Nice3DTexturePainter.js.map +1 -0
- package/dist/esm/ui/NiceUIDesigner.js +187 -0
- package/dist/esm/ui/NiceUIDesigner.js.map +1 -0
- package/dist/esm/vector/VectorEditor.js +29 -0
- package/dist/esm/vector/VectorEditor.js.map +1 -0
- package/dist/esm/vector/VectorEditor.module.css.js +4 -0
- package/dist/esm/vector/VectorEditor.module.css.js.map +1 -0
- package/dist/esm/vector/VectorEditorMenuBar.js +14 -0
- package/dist/esm/vector/VectorEditorMenuBar.js.map +1 -0
- package/dist/esm/vector/VectorEditorRightPanel.js +124 -0
- package/dist/esm/vector/VectorEditorRightPanel.js.map +1 -0
- package/dist/esm/vector/VectorEditorShapeRenderer.js +53 -0
- package/dist/esm/vector/VectorEditorShapeRenderer.js.map +1 -0
- package/dist/esm/vector/VectorEditorStatusBar.js +12 -0
- package/dist/esm/vector/VectorEditorStatusBar.js.map +1 -0
- package/dist/esm/vector/useVectorEditor.js +611 -0
- package/dist/esm/vector/useVectorEditor.js.map +1 -0
- package/dist/esm/vector/vectorBooleanOps.js +507 -0
- package/dist/esm/vector/vectorBooleanOps.js.map +1 -0
- package/dist/esm/vector/vectorEditorExport.js +152 -0
- package/dist/esm/vector/vectorEditorExport.js.map +1 -0
- package/dist/esm/vector/vectorEditorImport.js +148 -0
- package/dist/esm/vector/vectorEditorImport.js.map +1 -0
- package/dist/esm/vector/vectorEditorTypes.js +63 -0
- package/dist/esm/vector/vectorEditorTypes.js.map +1 -0
- package/dist/esm/vector/vectorGradients.js +193 -0
- package/dist/esm/vector/vectorGradients.js.map +1 -0
- package/dist/types/__benchmarks__/bench.d.ts +13 -0
- package/dist/types/__tests__/setup.d.ts +4 -0
- package/dist/types/animation/AnimatedPerson.d.ts +14 -0
- package/dist/types/animation/AnimationEditor.d.ts +20 -0
- package/dist/types/animation/Audience.d.ts +11 -0
- package/dist/types/animation/BodyRenderer.d.ts +12 -0
- package/dist/types/animation/animationHelper.d.ts +28 -0
- package/dist/types/animation/characterTypes.d.ts +37 -0
- package/dist/types/animation/choreoDSL.d.ts +88 -0
- package/dist/types/animation/choreography.d.ts +8 -0
- package/dist/types/animation/karaokeIntegration.d.ts +31 -0
- package/dist/types/animation/lottieExport.d.ts +77 -0
- package/dist/types/animation/motionPath.d.ts +60 -0
- package/dist/types/animation/physics.d.ts +73 -0
- package/dist/types/animation/rig/RigPlayer.d.ts +32 -0
- package/dist/types/animation/rig/RiggedBody.d.ts +19 -0
- package/dist/types/animation/rig/choreoRigBridge.d.ts +9 -0
- package/dist/types/animation/rig/ik.d.ts +8 -0
- package/dist/types/animation/rig/poseOps.d.ts +14 -0
- package/dist/types/animation/rig/presets.d.ts +13 -0
- package/dist/types/animation/rig/rigMath.d.ts +7 -0
- package/dist/types/animation/rig/rigTypes.d.ts +38 -0
- package/dist/types/animation/shapes/arms.d.ts +10 -0
- package/dist/types/animation/shapes/eyes.d.ts +17 -0
- package/dist/types/animation/shapes/hair.d.ts +17 -0
- package/dist/types/animation/shapes/heads.d.ts +18 -0
- package/dist/types/animation/shapes/headwear.d.ts +16 -0
- package/dist/types/animation/shapes/legs.d.ts +10 -0
- package/dist/types/animation/shapes/mouths.d.ts +17 -0
- package/dist/types/animation/shapes/noses.d.ts +17 -0
- package/dist/types/animation/shapes/outfits.d.ts +14 -0
- package/dist/types/animation/shapes/torsos.d.ts +9 -0
- package/dist/types/animation/spineExport.d.ts +66 -0
- package/dist/types/core/LocalUI.d.ts +21 -0
- package/dist/types/core/collaboration.d.ts +164 -0
- package/dist/types/core/colorBlindness.d.ts +24 -0
- package/dist/types/core/dragDrop.d.ts +46 -0
- package/dist/types/core/fixes.d.ts +80 -0
- package/dist/types/core/gridGuides.d.ts +70 -0
- package/dist/types/core/historyVisual.d.ts +915 -0
- package/dist/types/core/i18n.d.ts +27 -0
- package/dist/types/core/integrations.d.ts +103 -0
- package/dist/types/core/minimap.d.ts +49 -0
- package/dist/types/core/plugins.d.ts +111 -0
- package/dist/types/core/rtl.d.ts +32 -0
- package/dist/types/core/shortcuts.d.ts +150 -0
- package/dist/types/core/theme.d.ts +78 -0
- package/dist/types/core/useGamepad.d.ts +64 -0
- package/dist/types/core/usePointerPressure.d.ts +88 -0
- package/dist/types/font/NiceFontEditor.d.ts +62 -0
- package/dist/types/game/AnimationPreviewPlayer.d.ts +29 -0
- package/dist/types/game/CollisionEditor.d.ts +101 -0
- package/dist/types/game/GameAsset2dEditor.d.ts +17 -0
- package/dist/types/game/GameAssetExportPanel.d.ts +20 -0
- package/dist/types/game/IsometricEditor.d.ts +22 -0
- package/dist/types/game/IsometricTilePanel.d.ts +18 -0
- package/dist/types/game/gameAssetExport.d.ts +160 -0
- package/dist/types/game/gameAssetTypes.d.ts +238 -0
- package/dist/types/game/gameAssetUtils.d.ts +23 -0
- package/dist/types/game/index.d.ts +8 -0
- package/dist/types/game/isometricTiles.d.ts +250 -0
- package/dist/types/game/useAnimationPreview.d.ts +63 -0
- package/dist/types/game/useCollisionEditor.d.ts +96 -0
- package/dist/types/game/useGameAssetEditor.d.ts +79 -0
- package/dist/types/game/useGameAssetExport.d.ts +82 -0
- package/dist/types/icon/NiceIconEditor.d.ts +79 -0
- package/dist/types/index.d.ts +85 -0
- package/dist/types/photo/BatchProcessingPanel.d.ts +13 -0
- package/dist/types/photo/FaceDetectionPanel.d.ts +18 -0
- package/dist/types/photo/FilterThumb.d.ts +14 -0
- package/dist/types/photo/PerspectiveCorrectionPanel.d.ts +17 -0
- package/dist/types/photo/PhotoEditor.d.ts +2 -0
- package/dist/types/photo/PhotoEditorCanvas.d.ts +14 -0
- package/dist/types/photo/PhotoEditorLeftPanel.d.ts +13 -0
- package/dist/types/photo/PhotoEditorToolbar.d.ts +13 -0
- package/dist/types/photo/RawFilePanel.d.ts +14 -0
- package/dist/types/photo/StyleTransferPanel.d.ts +15 -0
- package/dist/types/photo/aiStyleTransfer.d.ts +58 -0
- package/dist/types/photo/batchProcessing.d.ts +95 -0
- package/dist/types/photo/faceDetection.d.ts +103 -0
- package/dist/types/photo/index.d.ts +17 -0
- package/dist/types/photo/perspectiveCorrection.d.ts +134 -0
- package/dist/types/photo/photoEditorActions.d.ts +40 -0
- package/dist/types/photo/photoEditorTypes.d.ts +34 -0
- package/dist/types/photo/photoFilters.d.ts +55 -0
- package/dist/types/photo/photoOverlays.d.ts +126 -0
- package/dist/types/photo/photoSelection.d.ts +56 -0
- package/dist/types/photo/rawFileSupport.d.ts +124 -0
- package/dist/types/photo/usePhotoEditor.d.ts +123 -0
- package/dist/types/pixel/HSVPicker.d.ts +11 -0
- package/dist/types/pixel/PaletteExtractorPanel.d.ts +16 -0
- package/dist/types/pixel/PixelEditor.d.ts +17 -0
- package/dist/types/pixel/PixelEditorCanvas.d.ts +10 -0
- package/dist/types/pixel/PixelEditorMenuBar.d.ts +11 -0
- package/dist/types/pixel/PixelEditorRightPanel.d.ts +11 -0
- package/dist/types/pixel/PixelEditorStatusBar.d.ts +11 -0
- package/dist/types/pixel/PixelEditorTimeline.d.ts +11 -0
- package/dist/types/pixel/PixelEditorToolbar.d.ts +11 -0
- package/dist/types/pixel/TileMapPanel.d.ts +14 -0
- package/dist/types/pixel/asepriteFormat.d.ts +62 -0
- package/dist/types/pixel/paletteExtractor.d.ts +73 -0
- package/dist/types/pixel/pixelEditorExports.d.ts +31 -0
- package/dist/types/pixel/pixelEditorTypes.d.ts +51 -0
- package/dist/types/pixel/pixelEditorUtils.d.ts +136 -0
- package/dist/types/pixel/tileMapMode.d.ts +122 -0
- package/dist/types/pixel/usePixelEditor.d.ts +114 -0
- package/dist/types/texture/Nice3DTexturePainter.d.ts +55 -0
- package/dist/types/ui/NiceUIDesigner.d.ts +43 -0
- package/dist/types/vector/PathSimplificationPanel.d.ts +15 -0
- package/dist/types/vector/PdfExportPanel.d.ts +20 -0
- package/dist/types/vector/TextOnPathPanel.d.ts +26 -0
- package/dist/types/vector/VectorEditor.d.ts +32 -0
- package/dist/types/vector/VectorEditorMenuBar.d.ts +8 -0
- package/dist/types/vector/VectorEditorRightPanel.d.ts +7 -0
- package/dist/types/vector/VectorEditorShapeRenderer.d.ts +9 -0
- package/dist/types/vector/VectorEditorStatusBar.d.ts +9 -0
- package/dist/types/vector/VectorFilterPanel.d.ts +19 -0
- package/dist/types/vector/VectorPatternPanel.d.ts +21 -0
- package/dist/types/vector/pathSimplification.d.ts +135 -0
- package/dist/types/vector/pdfExport.d.ts +65 -0
- package/dist/types/vector/textOnPath.d.ts +145 -0
- package/dist/types/vector/useVectorEditor.d.ts +90 -0
- package/dist/types/vector/vectorBooleanOps.d.ts +22 -0
- package/dist/types/vector/vectorEditorExport.d.ts +8 -0
- package/dist/types/vector/vectorEditorImport.d.ts +7 -0
- package/dist/types/vector/vectorEditorTypes.d.ts +47 -0
- package/dist/types/vector/vectorGradients.d.ts +64 -0
- package/dist/types/vector/vectorPatternFills.d.ts +101 -0
- package/dist/types/vector/vectorSvgFilters.d.ts +134 -0
- package/package.json +93 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditor.js","sources":["../../../src/vector/VectorEditor.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var styles = {"root":"VectorEditor-module_root__rtRWo","menuBar":"VectorEditor-module_menuBar__o25XM","menuBtn":"VectorEditor-module_menuBtn__aP4vp","menuSep":"VectorEditor-module_menuSep__3-kTv","menuLabel":"VectorEditor-module_menuLabel__Bsm0e","toolbar":"VectorEditor-module_toolbar__fakYL","toolBtn":"VectorEditor-module_toolBtn__Zh7D3","toolBtnActive":"VectorEditor-module_toolBtnActive__0xZlr","mainArea":"VectorEditor-module_mainArea__3o89F","canvasContainer":"VectorEditor-module_canvasContainer__hOUAx","rightPanel":"VectorEditor-module_rightPanel__3hzcS","panelSection":"VectorEditor-module_panelSection__uteDQ","panelTitle":"VectorEditor-module_panelTitle__WBUxr","shapeItem":"VectorEditor-module_shapeItem__bu2E2","shapeItemActive":"VectorEditor-module_shapeItemActive__E2lK7","shapeIcon":"VectorEditor-module_shapeIcon__M4j6X","shapeName":"VectorEditor-module_shapeName__2QctO","propRow":"VectorEditor-module_propRow__Alc4S","propLabel":"VectorEditor-module_propLabel__J0lxK","propInput":"VectorEditor-module_propInput__3my2d","propColorSwatch":"VectorEditor-module_propColorSwatch__JL97Z","statusBar":"VectorEditor-module_statusBar__jMwan","dialogOverlay":"VectorEditor-module_dialogOverlay__NLiCg","dialog":"VectorEditor-module_dialog__NDNK2","dialogActions":"VectorEditor-module_dialogActions__0Sy4X","btnPrimary":"VectorEditor-module_btnPrimary__f9AaS","btnSecondary":"VectorEditor-module_btnSecondary__wDps2"};
|
|
2
|
+
|
|
3
|
+
export { styles as default };
|
|
4
|
+
//# sourceMappingURL=VectorEditor.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditor.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import styles from './VectorEditor.module.css.js';
|
|
4
|
+
|
|
5
|
+
const VectorEditorMenuBar$1 = ({ api, hasOnSaveToLibrary }) => {
|
|
6
|
+
const { selId, hasClipboard, snapGrid, fInp, shapes, boolSecondShape, newCanvas, setDlgSvg, setBoolSecondShape, exportSVG, exportPNG, exportJPG, exportWebP, exportBMP, undo, redo, duplicateShape, copyShape, pasteShape, deleteShape, bringToFront, sendToBack, flipH, flipV, alignShapes, setSnapGrid, saveToLibrary, unionShapes, subtractShapes, intersectShapes, excludeShapes, outlineStroke, } = api;
|
|
7
|
+
// Check if we can perform boolean ops (need 2 shapes selected)
|
|
8
|
+
const canBool = selId && boolSecondShape && selId !== boolSecondShape;
|
|
9
|
+
return (jsxs("div", { className: styles.menuBar, children: [jsx("button", { className: styles.menuBtn, onClick: newCanvas, children: "New" }), jsx("button", { className: styles.menuBtn, onClick: () => { var _a; return (_a = fInp.current) === null || _a === void 0 ? void 0 : _a.click(); }, children: "Open SVG" }), jsx("button", { className: styles.menuBtn, onClick: () => setDlgSvg(true), children: "Paste SVG" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: exportSVG, children: "SVG" }), jsx("button", { className: styles.menuBtn, onClick: exportPNG, children: "PNG" }), jsx("button", { className: styles.menuBtn, onClick: exportJPG, children: "JPG" }), jsx("button", { className: styles.menuBtn, onClick: exportWebP, children: "WebP" }), jsx("button", { className: styles.menuBtn, onClick: exportBMP, children: "BMP" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: undo, children: "Undo" }), jsx("button", { className: styles.menuBtn, onClick: redo, children: "Redo" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: duplicateShape, disabled: !selId, title: "Ctrl+D", children: "Dup" }), jsx("button", { className: styles.menuBtn, onClick: copyShape, disabled: !selId, title: "Ctrl+C", children: "Copy" }), jsx("button", { className: styles.menuBtn, onClick: pasteShape, disabled: !hasClipboard, title: "Ctrl+V", children: "Paste" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: deleteShape, disabled: !selId, children: "Delete" }), jsx("button", { className: styles.menuBtn, onClick: bringToFront, disabled: !selId, children: "\u2191 Front" }), jsx("button", { className: styles.menuBtn, onClick: sendToBack, disabled: !selId, children: "\u2193 Back" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: flipH, disabled: !selId, title: "Flip H", children: "\u21D4" }), jsx("button", { className: styles.menuBtn, onClick: flipV, disabled: !selId, title: "Flip V", children: "\u21D5" }), jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: () => alignShapes("left"), disabled: !selId, title: "Align Left", children: "\u25E7" }), jsx("button", { className: styles.menuBtn, onClick: () => alignShapes("center"), disabled: !selId, title: "Align Center", children: "\u25EB" }), jsx("button", { className: styles.menuBtn, onClick: () => alignShapes("right"), disabled: !selId, title: "Align Right", children: "\u25E8" }), jsx("div", { className: styles.menuSep }), shapes.length >= 2 && (jsxs(Fragment, { children: [jsxs("select", { className: styles.menuBtn, value: boolSecondShape || "", onChange: (e) => setBoolSecondShape(e.target.value || null), title: "Pick 2nd shape for boolean", style: { minWidth: 80 }, children: [jsx("option", { value: "", children: "2nd Shape" }), shapes.filter(s => s.id !== selId).map((s, i) => (jsxs("option", { value: s.id, children: ["Shape ", i + 1] }, s.id)))] }), jsx("button", { className: styles.menuBtn, onClick: unionShapes, disabled: !canBool, title: "Union", children: "\u222A" }), jsx("button", { className: styles.menuBtn, onClick: subtractShapes, disabled: !canBool, title: "Subtract", children: "\u2212" }), jsx("button", { className: styles.menuBtn, onClick: intersectShapes, disabled: !canBool, title: "Intersect", children: "\u2229" }), jsx("button", { className: styles.menuBtn, onClick: excludeShapes, disabled: !canBool, title: "Exclude", children: "\u2295" }), jsx("button", { className: styles.menuBtn, onClick: outlineStroke, disabled: !selId, title: "Outline Stroke", children: "\u25AD" }), jsx("div", { className: styles.menuSep })] })), jsxs("label", { className: styles.menuLabel, title: "Snap to Grid", children: [jsx("input", { type: "checkbox", checked: snapGrid, onChange: () => setSnapGrid((v) => !v), style: { marginRight: 3 } }), "Snap"] }), hasOnSaveToLibrary && (jsxs(Fragment, { children: [jsx("div", { className: styles.menuSep }), jsx("button", { className: styles.menuBtn, onClick: saveToLibrary, children: "\uD83D\uDCE6 Save to Library" })] }))] }));
|
|
10
|
+
};
|
|
11
|
+
var VectorEditorMenuBar = React.memo(VectorEditorMenuBar$1);
|
|
12
|
+
|
|
13
|
+
export { VectorEditorMenuBar as default };
|
|
14
|
+
//# sourceMappingURL=VectorEditorMenuBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditorMenuBar.js","sources":["../../../src/vector/VectorEditorMenuBar.tsx"],"sourcesContent":[null],"names":["VectorEditorMenuBar","_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import styles from './VectorEditor.module.css.js';
|
|
4
|
+
import { FONTS } from './vectorEditorTypes.js';
|
|
5
|
+
import { PRESET_GRADIENTS, gradientToCSS, gradientId, cloneGradient } from './vectorGradients.js';
|
|
6
|
+
|
|
7
|
+
const VectorEditorRightPanel$1 = ({ api }) => {
|
|
8
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
9
|
+
const { tool, selId, selShape, shapes, fillCol, strokeCol, strokeW, shapeOpacity, cornerRadius, polygonSides, starPoints2, starInnerRatio, fontSize, fontFamily, snapGrid, gridSize, setFillCol, setStrokeCol, setStrokeW, setShapeOpacity, setCornerRadius, setPolygonSides, setStarPoints2, setStarInnerRatio, setFontSize, setFontFamily, setGridSize, updateSel, setSelId, setTool, } = api;
|
|
10
|
+
// Gradient editing state
|
|
11
|
+
const [fillMode, setFillMode] = useState("solid");
|
|
12
|
+
const [selectedGradient, setSelectedGradient] = useState(null);
|
|
13
|
+
const [showGradientEditor, setShowGradientEditor] = useState(false);
|
|
14
|
+
const applyGradient = (gradient) => {
|
|
15
|
+
const newGrad = { ...cloneGradient(gradient), id: gradientId() };
|
|
16
|
+
setSelectedGradient(newGrad);
|
|
17
|
+
// Store gradient in shape as serialized reference
|
|
18
|
+
updateSel({
|
|
19
|
+
fill: `url(#${newGrad.id})`,
|
|
20
|
+
// Store gradient data as custom property (will be used in SVG export)
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
return (jsxs("div", { className: styles.rightPanel, children: [jsxs("div", { className: styles.panelSection, children: [jsx("div", { className: styles.panelTitle, children: jsx("span", { children: "Appearance" }) }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Fill" }), jsxs("div", { style: { display: "flex", gap: 4 }, children: [jsx("button", { className: `${styles.menuBtn} ${fillMode === "solid" ? styles.menuBtnActive : ""}`, style: { padding: "2px 6px", fontSize: 10 }, onClick: () => setFillMode("solid"), children: "Solid" }), jsx("button", { className: `${styles.menuBtn} ${fillMode === "gradient" ? styles.menuBtnActive : ""}`, style: { padding: "2px 6px", fontSize: 10 }, onClick: () => setFillMode("gradient"), children: "Gradient" })] })] }), fillMode === "solid" ? (jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel }), jsx("div", { className: styles.propColorSwatch, style: { background: fillCol }, children: jsx("input", { type: "color", value: fillCol, onChange: (e) => { setFillCol(e.target.value); updateSel({ fill: e.target.value }); } }) }), jsx("input", { className: styles.propInput, value: (selShape === null || selShape === void 0 ? void 0 : selShape.fill) || fillCol, onChange: (e) => { setFillCol(e.target.value); updateSel({ fill: e.target.value }); } })] })) : (jsxs(Fragment, { children: [jsx("div", { className: styles.propRow, style: { flexWrap: "wrap", gap: 4 }, children: PRESET_GRADIENTS.map((grad, i) => (jsx("div", { style: {
|
|
24
|
+
width: 24,
|
|
25
|
+
height: 24,
|
|
26
|
+
borderRadius: 4,
|
|
27
|
+
background: gradientToCSS(grad),
|
|
28
|
+
cursor: "pointer",
|
|
29
|
+
border: (selectedGradient === null || selectedGradient === void 0 ? void 0 : selectedGradient.id) === grad.id ? "2px solid #fff" : "1px solid #444",
|
|
30
|
+
}, onClick: () => applyGradient(grad), title: `${grad.type} gradient` }, i))) }), jsx("div", { className: styles.propRow, children: jsx("button", { className: styles.menuBtn, style: { width: "100%", fontSize: 10 }, onClick: () => setShowGradientEditor(!showGradientEditor), children: showGradientEditor ? "▼ Hide Editor" : "► Edit Gradient" }) }), showGradientEditor && selectedGradient && (jsxs("div", { style: { padding: 4, background: "#252525", borderRadius: 4, margin: "4px 0" }, children: [jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Type" }), jsxs("select", { className: styles.propInput, value: selectedGradient.type, onChange: (e) => {
|
|
31
|
+
const type = e.target.value;
|
|
32
|
+
let newGrad;
|
|
33
|
+
if (type === "linear") {
|
|
34
|
+
newGrad = {
|
|
35
|
+
type: "linear",
|
|
36
|
+
id: gradientId(),
|
|
37
|
+
angle: 0,
|
|
38
|
+
stops: selectedGradient.stops,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
newGrad = {
|
|
43
|
+
type: "radial",
|
|
44
|
+
id: gradientId(),
|
|
45
|
+
cx: 0.5,
|
|
46
|
+
cy: 0.5,
|
|
47
|
+
r: 0.7,
|
|
48
|
+
stops: selectedGradient.stops,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
setSelectedGradient(newGrad);
|
|
52
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
53
|
+
}, children: [jsx("option", { value: "linear", children: "Linear" }), jsx("option", { value: "radial", children: "Radial" })] })] }), selectedGradient.type === "linear" && (jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Angle" }), jsx("input", { className: styles.propInput, type: "range", min: 0, max: 360, value: selectedGradient.angle, onChange: (e) => {
|
|
54
|
+
const newGrad = {
|
|
55
|
+
...selectedGradient,
|
|
56
|
+
id: gradientId(),
|
|
57
|
+
angle: +e.target.value,
|
|
58
|
+
};
|
|
59
|
+
setSelectedGradient(newGrad);
|
|
60
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
61
|
+
} }), jsxs("span", { style: { fontSize: 10, minWidth: 28 }, children: [selectedGradient.angle, "\u00B0"] })] })), selectedGradient.type === "radial" && (jsxs(Fragment, { children: [jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "CX" }), jsx("input", { className: styles.propInput, type: "range", min: 0, max: 100, value: selectedGradient.cx * 100, onChange: (e) => {
|
|
62
|
+
const newGrad = {
|
|
63
|
+
...selectedGradient,
|
|
64
|
+
id: gradientId(),
|
|
65
|
+
cx: +e.target.value / 100,
|
|
66
|
+
};
|
|
67
|
+
setSelectedGradient(newGrad);
|
|
68
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
69
|
+
} })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "CY" }), jsx("input", { className: styles.propInput, type: "range", min: 0, max: 100, value: selectedGradient.cy * 100, onChange: (e) => {
|
|
70
|
+
const newGrad = {
|
|
71
|
+
...selectedGradient,
|
|
72
|
+
id: gradientId(),
|
|
73
|
+
cy: +e.target.value / 100,
|
|
74
|
+
};
|
|
75
|
+
setSelectedGradient(newGrad);
|
|
76
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
77
|
+
} })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "R" }), jsx("input", { className: styles.propInput, type: "range", min: 10, max: 100, value: selectedGradient.r * 100, onChange: (e) => {
|
|
78
|
+
const newGrad = {
|
|
79
|
+
...selectedGradient,
|
|
80
|
+
id: gradientId(),
|
|
81
|
+
r: +e.target.value / 100,
|
|
82
|
+
};
|
|
83
|
+
setSelectedGradient(newGrad);
|
|
84
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
85
|
+
} })] })] })), jsx("div", { style: { fontSize: 10, color: "#888", marginTop: 4 }, children: "Color Stops:" }), selectedGradient.stops.map((stop, i) => (jsxs("div", { className: styles.propRow, children: [jsx("input", { type: "color", value: stop.color, style: { width: 24, height: 20 }, onChange: (e) => {
|
|
86
|
+
const newStops = [...selectedGradient.stops];
|
|
87
|
+
newStops[i] = { ...newStops[i], color: e.target.value };
|
|
88
|
+
const newGrad = { ...selectedGradient, id: gradientId(), stops: newStops };
|
|
89
|
+
setSelectedGradient(newGrad);
|
|
90
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
91
|
+
} }), jsx("input", { type: "range", min: 0, max: 100, value: stop.offset * 100, style: { flex: 1 }, onChange: (e) => {
|
|
92
|
+
const newStops = [...selectedGradient.stops];
|
|
93
|
+
newStops[i] = { ...newStops[i], offset: +e.target.value / 100 };
|
|
94
|
+
newStops.sort((a, b) => a.offset - b.offset);
|
|
95
|
+
const newGrad = { ...selectedGradient, id: gradientId(), stops: newStops };
|
|
96
|
+
setSelectedGradient(newGrad);
|
|
97
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
98
|
+
} }), jsxs("span", { style: { fontSize: 9, minWidth: 24 }, children: [Math.round(stop.offset * 100), "%"] })] }, i))), jsxs("div", { className: styles.propRow, style: { gap: 4 }, children: [jsx("button", { className: styles.menuBtn, style: { fontSize: 10, flex: 1 }, onClick: () => {
|
|
99
|
+
const newStops = [...selectedGradient.stops, { offset: 0.5, color: "#888888" }];
|
|
100
|
+
newStops.sort((a, b) => a.offset - b.offset);
|
|
101
|
+
const newGrad = { ...selectedGradient, id: gradientId(), stops: newStops };
|
|
102
|
+
setSelectedGradient(newGrad);
|
|
103
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
104
|
+
}, children: "+ Add Stop" }), jsx("button", { className: styles.menuBtn, style: { fontSize: 10, flex: 1 }, disabled: selectedGradient.stops.length <= 2, onClick: () => {
|
|
105
|
+
if (selectedGradient.stops.length <= 2)
|
|
106
|
+
return;
|
|
107
|
+
const newStops = selectedGradient.stops.slice(0, -1);
|
|
108
|
+
const newGrad = { ...selectedGradient, id: gradientId(), stops: newStops };
|
|
109
|
+
setSelectedGradient(newGrad);
|
|
110
|
+
updateSel({ fill: `url(#${newGrad.id})` });
|
|
111
|
+
}, children: "- Remove" })] })] }))] })), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Stroke" }), jsx("div", { className: styles.propColorSwatch, style: { background: strokeCol }, children: jsx("input", { type: "color", value: strokeCol, onChange: (e) => { setStrokeCol(e.target.value); updateSel({ stroke: e.target.value }); } }) }), jsx("input", { className: styles.propInput, value: (selShape === null || selShape === void 0 ? void 0 : selShape.stroke) || strokeCol, onChange: (e) => { setStrokeCol(e.target.value); updateSel({ stroke: e.target.value }); } })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Width" }), jsx("input", { className: styles.propInput, type: "number", min: 0, max: 100, value: (_a = selShape === null || selShape === void 0 ? void 0 : selShape.strokeWidth) !== null && _a !== void 0 ? _a : strokeW, onChange: (e) => { const v = +e.target.value; setStrokeW(v); updateSel({ strokeWidth: v }); } })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Opacity" }), jsx("input", { className: styles.propInput, type: "range", min: 0, max: 1, step: 0.01, value: (_b = selShape === null || selShape === void 0 ? void 0 : selShape.opacity) !== null && _b !== void 0 ? _b : shapeOpacity, onChange: (e) => { const v = +e.target.value; setShapeOpacity(v); updateSel({ opacity: v }); } }), jsxs("span", { style: { fontSize: 10, minWidth: 28 }, children: [Math.round(((_c = selShape === null || selShape === void 0 ? void 0 : selShape.opacity) !== null && _c !== void 0 ? _c : shapeOpacity) * 100), "%"] })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Rotation" }), jsx("input", { className: styles.propInput, type: "number", min: -360, max: 360, value: (_d = selShape === null || selShape === void 0 ? void 0 : selShape.rotation) !== null && _d !== void 0 ? _d : 0, onChange: (e) => updateSel({ rotation: +e.target.value }) }), jsx("span", { style: { fontSize: 10 }, children: "\u00B0" })] })] }), jsxs("div", { className: styles.panelSection, children: [jsx("div", { className: styles.panelTitle, children: jsx("span", { children: "Tool Options" }) }), (tool === "roundrect" || (selShape === null || selShape === void 0 ? void 0 : selShape.type) === "roundrect") && (jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Radius" }), jsx("input", { className: styles.propInput, type: "number", min: 0, max: 200, value: (_e = selShape === null || selShape === void 0 ? void 0 : selShape.rx) !== null && _e !== void 0 ? _e : cornerRadius, onChange: (e) => { const v = +e.target.value; setCornerRadius(v); updateSel({ rx: v }); } })] })), (tool === "polygon" || (selShape === null || selShape === void 0 ? void 0 : selShape.type) === "polygon") && (jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Sides" }), jsx("input", { className: styles.propInput, type: "number", min: 3, max: 32, value: (_f = selShape === null || selShape === void 0 ? void 0 : selShape.sides) !== null && _f !== void 0 ? _f : polygonSides, onChange: (e) => { const v = +e.target.value; setPolygonSides(v); updateSel({ sides: v }); } })] })), (tool === "star" || (selShape === null || selShape === void 0 ? void 0 : selShape.type) === "star") && (jsxs(Fragment, { children: [jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Points" }), jsx("input", { className: styles.propInput, type: "number", min: 3, max: 32, value: (_g = selShape === null || selShape === void 0 ? void 0 : selShape.sides) !== null && _g !== void 0 ? _g : starPoints2, onChange: (e) => { const v = +e.target.value; setStarPoints2(v); updateSel({ sides: v }); } })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Inner R" }), jsx("input", { className: styles.propInput, type: "range", min: 0.1, max: 0.9, step: 0.05, value: (_h = selShape === null || selShape === void 0 ? void 0 : selShape.innerRadius) !== null && _h !== void 0 ? _h : starInnerRatio, onChange: (e) => { const v = +e.target.value; setStarInnerRatio(v); updateSel({ innerRadius: v }); } }), jsxs("span", { style: { fontSize: 10 }, children: [Math.round(((_j = selShape === null || selShape === void 0 ? void 0 : selShape.innerRadius) !== null && _j !== void 0 ? _j : starInnerRatio) * 100), "%"] })] })] })), (tool === "text" || (selShape === null || selShape === void 0 ? void 0 : selShape.type) === "text") && (jsxs(Fragment, { children: [jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Size" }), jsx("input", { className: styles.propInput, type: "number", min: 8, max: 200, value: (_k = selShape === null || selShape === void 0 ? void 0 : selShape.fontSize) !== null && _k !== void 0 ? _k : fontSize, onChange: (e) => { const v = +e.target.value; setFontSize(v); updateSel({ fontSize: v }); } })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Font" }), jsx("select", { className: styles.propInput, value: (_l = selShape === null || selShape === void 0 ? void 0 : selShape.fontFamily) !== null && _l !== void 0 ? _l : fontFamily, onChange: (e) => { setFontFamily(e.target.value); updateSel({ fontFamily: e.target.value }); }, children: FONTS.map((f) => jsx("option", { value: f, children: f }, f)) })] })] })), snapGrid && (jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Grid" }), jsx("input", { className: styles.propInput, type: "number", min: 4, max: 128, value: gridSize, onChange: (e) => setGridSize(+e.target.value) })] }))] }), jsxs("div", { className: styles.panelSection, children: [jsx("div", { className: styles.panelTitle, children: jsxs("span", { children: ["Shapes (", shapes.length, ")"] }) }), [...shapes].reverse().map((s) => (jsxs("div", { className: `${styles.shapeItem} ${s.id === selId ? styles.shapeItemActive : ""}`, onClick: () => { setSelId(s.id); setTool("pointer"); }, children: [jsx("span", { className: styles.shapeIcon, children: s.type === "rect" ? "▢"
|
|
112
|
+
: s.type === "roundrect" ? "▣"
|
|
113
|
+
: s.type === "ellipse" ? "◯"
|
|
114
|
+
: s.type === "line" ? "╱"
|
|
115
|
+
: s.type === "arrow" ? "→"
|
|
116
|
+
: s.type === "polygon" ? "⬡"
|
|
117
|
+
: s.type === "star" ? "★"
|
|
118
|
+
: s.type === "polyline" ? "✎"
|
|
119
|
+
: "T" }), jsxs("span", { className: styles.shapeName, children: [s.type, s.text ? ` "${s.text}"` : ""] })] }, s.id))), shapes.length === 0 && (jsx("div", { style: { color: "#555", fontSize: 11, padding: 4 }, children: "No shapes yet. Use the tools to draw." }))] }), selShape && (jsxs("div", { className: styles.panelSection, children: [jsx("div", { className: styles.panelTitle, children: jsx("span", { children: "Transform" }) }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "X" }), jsx("input", { className: styles.propInput, type: "number", value: Math.round(selShape.x), onChange: (e) => updateSel({ x: +e.target.value }) })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "Y" }), jsx("input", { className: styles.propInput, type: "number", value: Math.round(selShape.y), onChange: (e) => updateSel({ y: +e.target.value }) })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "W" }), jsx("input", { className: styles.propInput, type: "number", value: Math.round(selShape.w), onChange: (e) => updateSel({ w: +e.target.value }) })] }), jsxs("div", { className: styles.propRow, children: [jsx("span", { className: styles.propLabel, children: "H" }), jsx("input", { className: styles.propInput, type: "number", value: Math.round(selShape.h), onChange: (e) => updateSel({ h: +e.target.value }) })] })] }))] }));
|
|
120
|
+
};
|
|
121
|
+
var VectorEditorRightPanel = React.memo(VectorEditorRightPanel$1);
|
|
122
|
+
|
|
123
|
+
export { VectorEditorRightPanel as default };
|
|
124
|
+
//# sourceMappingURL=VectorEditorRightPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditorRightPanel.js","sources":["../../../src/vector/VectorEditorRightPanel.tsx"],"sourcesContent":[null],"names":["VectorEditorRightPanel","_jsxs","_jsx","_Fragment"],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { starPoints, polygonPoints } from './vectorEditorTypes.js';
|
|
3
|
+
|
|
4
|
+
const ShapeRenderer = ({ shape: s, selected, zoom }) => {
|
|
5
|
+
var _a;
|
|
6
|
+
const selStroke = selected ? "rgba(85,102,204,0.6)" : undefined;
|
|
7
|
+
const gProps = {};
|
|
8
|
+
if (s.opacity < 1)
|
|
9
|
+
gProps.opacity = s.opacity;
|
|
10
|
+
if (s.rotation && s.type !== "polygon" && s.type !== "star") {
|
|
11
|
+
gProps.transform = `rotate(${s.rotation} ${s.x + s.w / 2} ${s.y + s.h / 2})`;
|
|
12
|
+
}
|
|
13
|
+
const selBox = selected ? (jsx("rect", { x: s.x - 1, y: s.y - 1, width: s.w + 2, height: s.h + 2, fill: "none", stroke: selStroke, strokeWidth: 2 / zoom, strokeDasharray: `${4 / zoom}` })) : null;
|
|
14
|
+
switch (s.type) {
|
|
15
|
+
case "rect":
|
|
16
|
+
return (jsxs("g", { ...gProps, children: [jsx("rect", { x: s.x, y: s.y, width: s.w, height: s.h, fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selBox] }));
|
|
17
|
+
case "roundrect":
|
|
18
|
+
return (jsxs("g", { ...gProps, children: [jsx("rect", { x: s.x, y: s.y, width: s.w, height: s.h, rx: s.rx || 12, fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selBox] }));
|
|
19
|
+
case "ellipse":
|
|
20
|
+
return (jsxs("g", { ...gProps, children: [jsx("ellipse", { cx: s.x + s.w / 2, cy: s.y + s.h / 2, rx: s.w / 2, ry: s.h / 2, fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selBox] }));
|
|
21
|
+
case "line":
|
|
22
|
+
return (jsxs("g", { ...gProps, children: [jsx("line", { x1: s.x, y1: s.y, x2: s.x2, y2: s.y2, stroke: s.stroke, strokeWidth: s.strokeWidth }), selected && (jsxs(Fragment, { children: [jsx("circle", { cx: s.x, cy: s.y, r: 4 / zoom, fill: "#5566cc" }), jsx("circle", { cx: s.x2, cy: s.y2, r: 4 / zoom, fill: "#5566cc" })] }))] }));
|
|
23
|
+
case "arrow":
|
|
24
|
+
return (jsxs("g", { ...gProps, children: [jsx("defs", { children: jsx("marker", { id: `ah-${s.id}`, markerWidth: "10", markerHeight: "7", refX: "10", refY: "3.5", orient: "auto", children: jsx("polygon", { points: "0 0, 10 3.5, 0 7", fill: s.stroke }) }) }), jsx("line", { x1: s.x, y1: s.y, x2: s.x2, y2: s.y2, stroke: s.stroke, strokeWidth: s.strokeWidth, markerEnd: `url(#ah-${s.id})` }), selected && (jsxs(Fragment, { children: [jsx("circle", { cx: s.x, cy: s.y, r: 4 / zoom, fill: "#5566cc" }), jsx("circle", { cx: s.x2, cy: s.y2, r: 4 / zoom, fill: "#5566cc" })] }))] }));
|
|
25
|
+
case "polyline":
|
|
26
|
+
if (!((_a = s.points) === null || _a === void 0 ? void 0 : _a.length))
|
|
27
|
+
return null;
|
|
28
|
+
return (jsxs("g", { ...gProps, children: [jsx("polyline", { points: s.points.map((p) => `${p.x},${p.y}`).join(" "), fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selected &&
|
|
29
|
+
s.points.map((p, i) => (jsx("circle", { cx: p.x, cy: p.y, r: 3 / zoom, fill: "#5566cc", stroke: "#fff", strokeWidth: 1 / zoom }, i)))] }));
|
|
30
|
+
case "polygon": {
|
|
31
|
+
const cx2 = s.x + s.w / 2;
|
|
32
|
+
const cy2 = s.y + s.h / 2;
|
|
33
|
+
const r2 = Math.min(s.w, s.h) / 2;
|
|
34
|
+
const pts = polygonPoints(cx2, cy2, r2, s.sides || 6, s.rotation);
|
|
35
|
+
return (jsxs("g", { opacity: s.opacity < 1 ? s.opacity : undefined, children: [jsx("polygon", { points: pts, fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selBox] }));
|
|
36
|
+
}
|
|
37
|
+
case "star": {
|
|
38
|
+
const cx2 = s.x + s.w / 2;
|
|
39
|
+
const cy2 = s.y + s.h / 2;
|
|
40
|
+
const r2 = Math.min(s.w, s.h) / 2;
|
|
41
|
+
const ir = r2 * (s.innerRadius || 0.4);
|
|
42
|
+
const pts = starPoints(cx2, cy2, r2, ir, s.sides || 5, s.rotation);
|
|
43
|
+
return (jsxs("g", { opacity: s.opacity < 1 ? s.opacity : undefined, children: [jsx("polygon", { points: pts, fill: s.fill, stroke: s.stroke, strokeWidth: s.strokeWidth }), selBox] }));
|
|
44
|
+
}
|
|
45
|
+
case "text":
|
|
46
|
+
return (jsxs("g", { ...gProps, children: [jsx("text", { x: s.x, y: s.y + (s.fontSize || 24), fontSize: s.fontSize || 24, fontFamily: s.fontFamily || "sans-serif", fill: s.fill, children: s.text }), selBox] }));
|
|
47
|
+
default:
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export { ShapeRenderer };
|
|
53
|
+
//# sourceMappingURL=VectorEditorShapeRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditorShapeRenderer.js","sources":["../../../src/vector/VectorEditorShapeRenderer.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import styles from './VectorEditor.module.css.js';
|
|
4
|
+
|
|
5
|
+
const VectorEditorStatusBar$1 = ({ api, artW, artH }) => {
|
|
6
|
+
var _a;
|
|
7
|
+
return (jsxs("div", { className: styles.statusBar, children: [jsxs("span", { children: [artW, "\u00D7", artH] }), jsxs("span", { children: ["Zoom ", Math.round(api.zoom * 100), "%"] }), jsx("span", { children: api.tool }), jsxs("span", { children: [api.shapes.length, " shape(s)"] }), api.selId && jsxs("span", { children: ["Selected: ", (_a = api.selShape) === null || _a === void 0 ? void 0 : _a.type] }), api.snapGrid && jsxs("span", { children: ["Snap: ", api.gridSize, "px"] })] }));
|
|
8
|
+
};
|
|
9
|
+
var VectorEditorStatusBar = React.memo(VectorEditorStatusBar$1);
|
|
10
|
+
|
|
11
|
+
export { VectorEditorStatusBar as default };
|
|
12
|
+
//# sourceMappingURL=VectorEditorStatusBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectorEditorStatusBar.js","sources":["../../../src/vector/VectorEditorStatusBar.tsx"],"sourcesContent":[null],"names":["VectorEditorStatusBar","_jsxs","_jsx"],"mappings":";;;;AAUA,MAAMA,uBAAqB,GAAoB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAI;;AAAC,IAAA,QACtEC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,MAAM,CAAC,SAAS,EAAA,QAAA,EAAA,CAC9BA,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAO,IAAI,EAAA,QAAA,EAAG,IAAI,IAAQ,EAC1BA,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,OAAA,EAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAA,GAAA,CAAA,EAAA,CAAS,EAC/CC,GAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAO,GAAG,CAAC,IAAI,EAAA,CAAQ,EACvBD,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAO,GAAG,CAAC,MAAM,CAAC,MAAM,EAAA,WAAA,CAAA,EAAA,CAAiB,EACxC,GAAG,CAAC,KAAK,IAAIA,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,YAAA,EAAiB,MAAA,GAAG,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,CAAA,EAAA,CAAQ,EACxD,GAAG,CAAC,QAAQ,IAAIA,IAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,QAAA,EAAa,GAAG,CAAC,QAAQ,EAAA,IAAA,CAAA,EAAA,CAAU,CAAA,EAAA,CAChD;CACP;AAED,4BAAe,KAAK,CAAC,IAAI,CAACD,uBAAqB,CAAC;;;;"}
|