js-draw 0.25.1 → 1.0.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/README.md +80 -26
- package/build-config.json +22 -21
- package/dist/Editor.css +1281 -0
- package/dist/bundle.js +3 -3
- package/dist/bundledStyles.js +1 -1
- package/dist/cjs/Editor.d.ts +91 -12
- package/dist/cjs/Editor.js +619 -590
- package/dist/cjs/EditorImage.d.ts +5 -2
- package/dist/cjs/EditorImage.js +258 -297
- package/dist/cjs/EventDispatcher.js +17 -19
- package/dist/cjs/Pointer.d.ts +3 -1
- package/dist/cjs/Pointer.js +41 -44
- package/dist/cjs/SVGLoader.d.ts +7 -1
- package/dist/cjs/SVGLoader.js +373 -474
- package/dist/cjs/UndoRedoHistory.js +28 -40
- package/dist/cjs/Viewport.d.ts +1 -4
- package/dist/cjs/Viewport.js +150 -193
- package/dist/cjs/bundle/bundled.js +4 -1
- package/dist/cjs/commands/Command.js +22 -49
- package/dist/cjs/commands/Duplicate.js +28 -44
- package/dist/cjs/commands/Erase.js +36 -54
- package/dist/cjs/commands/SerializableCommand.js +20 -35
- package/dist/cjs/commands/UnresolvedCommand.js +14 -29
- package/dist/cjs/commands/invertCommand.js +29 -51
- package/dist/cjs/commands/lib.js +9 -6
- package/dist/cjs/commands/localization.d.ts +1 -1
- package/dist/cjs/commands/localization.js +9 -9
- package/dist/cjs/commands/uniteCommands.js +57 -87
- package/dist/cjs/components/AbstractComponent.d.ts +11 -3
- package/dist/cjs/components/AbstractComponent.js +141 -169
- package/dist/cjs/components/BackgroundComponent.d.ts +3 -6
- package/dist/cjs/components/BackgroundComponent.js +124 -149
- package/dist/cjs/components/ImageComponent.d.ts +3 -5
- package/dist/cjs/components/ImageComponent.js +95 -175
- package/dist/cjs/components/RestylableComponent.d.ts +1 -1
- package/dist/cjs/components/RestylableComponent.js +41 -56
- package/dist/cjs/components/SVGGlobalAttributesObject.d.ts +1 -3
- package/dist/cjs/components/SVGGlobalAttributesObject.js +34 -51
- package/dist/cjs/components/Stroke.d.ts +4 -6
- package/dist/cjs/components/Stroke.js +95 -121
- package/dist/cjs/components/TextComponent.d.ts +2 -4
- package/dist/cjs/components/TextComponent.js +189 -234
- package/dist/cjs/components/UnknownSVGObject.d.ts +1 -3
- package/dist/cjs/components/UnknownSVGObject.js +30 -43
- package/dist/cjs/components/builders/ArrowBuilder.d.ts +1 -1
- package/dist/cjs/components/builders/ArrowBuilder.js +43 -42
- package/dist/cjs/components/builders/CircleBuilder.js +43 -43
- package/dist/cjs/components/builders/FreehandLineBuilder.d.ts +3 -2
- package/dist/cjs/components/builders/FreehandLineBuilder.js +73 -86
- package/dist/cjs/components/builders/LineBuilder.d.ts +1 -1
- package/dist/cjs/components/builders/LineBuilder.js +38 -36
- package/dist/cjs/components/builders/PressureSensitiveFreehandLineBuilder.d.ts +1 -1
- package/dist/cjs/components/builders/PressureSensitiveFreehandLineBuilder.js +131 -139
- package/dist/cjs/components/builders/RectangleBuilder.d.ts +1 -1
- package/dist/cjs/components/builders/RectangleBuilder.js +31 -31
- package/dist/cjs/components/builders/types.d.ts +1 -1
- package/dist/cjs/components/lib.d.ts +3 -1
- package/dist/cjs/components/lib.js +10 -7
- package/dist/cjs/components/localization.js +4 -4
- package/dist/cjs/components/util/StrokeSmoother.d.ts +1 -2
- package/dist/cjs/components/util/StrokeSmoother.js +67 -72
- package/dist/cjs/components/util/describeComponentList.d.ts +1 -1
- package/dist/cjs/components/util/describeComponentList.js +4 -5
- package/dist/cjs/dialogs/makeAboutDialog.d.ts +15 -0
- package/dist/cjs/dialogs/makeAboutDialog.js +54 -0
- package/dist/cjs/inputEvents.d.ts +84 -0
- package/dist/cjs/inputEvents.js +40 -0
- package/dist/cjs/lib.d.ts +29 -13
- package/dist/cjs/lib.js +38 -23
- package/dist/cjs/localization.js +19 -18
- package/dist/cjs/localizations/de.js +117 -13
- package/dist/cjs/localizations/en.js +4 -13
- package/dist/cjs/localizations/es.js +62 -23
- package/dist/cjs/localizations/getLocalizationTable.js +15 -13
- package/dist/cjs/rendering/Display.d.ts +1 -2
- package/dist/cjs/rendering/Display.js +70 -83
- package/dist/cjs/rendering/RenderablePathSpec.d.ts +15 -0
- package/dist/cjs/rendering/RenderablePathSpec.js +70 -0
- package/dist/cjs/rendering/RenderingStyle.d.ts +4 -4
- package/dist/cjs/rendering/RenderingStyle.js +18 -28
- package/dist/cjs/rendering/TextRenderingStyle.d.ts +10 -10
- package/dist/cjs/rendering/TextRenderingStyle.js +13 -18
- package/dist/cjs/rendering/caching/CacheRecord.d.ts +1 -2
- package/dist/cjs/rendering/caching/CacheRecord.js +20 -22
- package/dist/cjs/rendering/caching/CacheRecordManager.d.ts +1 -1
- package/dist/cjs/rendering/caching/CacheRecordManager.js +17 -15
- package/dist/cjs/rendering/caching/RenderingCache.js +19 -19
- package/dist/cjs/rendering/caching/RenderingCacheNode.d.ts +1 -1
- package/dist/cjs/rendering/caching/RenderingCacheNode.js +98 -118
- package/dist/cjs/rendering/caching/testUtils.js +24 -23
- package/dist/cjs/rendering/caching/types.d.ts +3 -3
- package/dist/cjs/rendering/lib.js +8 -5
- package/dist/cjs/rendering/localization.js +5 -5
- package/dist/cjs/rendering/renderers/AbstractRenderer.d.ts +2 -11
- package/dist/cjs/rendering/renderers/AbstractRenderer.js +53 -57
- package/dist/cjs/rendering/renderers/CanvasRenderer.d.ts +3 -5
- package/dist/cjs/rendering/renderers/CanvasRenderer.js +91 -106
- package/dist/cjs/rendering/renderers/DummyRenderer.d.ts +1 -4
- package/dist/cjs/rendering/renderers/DummyRenderer.js +56 -76
- package/dist/cjs/rendering/renderers/SVGRenderer.d.ts +5 -5
- package/dist/cjs/rendering/renderers/SVGRenderer.js +194 -176
- package/dist/cjs/rendering/renderers/TextOnlyRenderer.d.ts +1 -3
- package/dist/cjs/rendering/renderers/TextOnlyRenderer.js +47 -72
- package/dist/cjs/shortcuts/KeyBinding.d.ts +5 -0
- package/dist/cjs/shortcuts/KeyBinding.js +94 -70
- package/dist/cjs/shortcuts/KeyboardShortcutManager.d.ts +1 -1
- package/dist/cjs/shortcuts/KeyboardShortcutManager.js +36 -45
- package/dist/cjs/shortcuts/lib.js +5 -2
- package/dist/cjs/testing/createEditor.js +7 -4
- package/dist/cjs/testing/getUniquePointerId.js +4 -5
- package/dist/cjs/testing/lib.js +5 -2
- package/dist/cjs/testing/sendPenEvent.d.ts +2 -2
- package/dist/cjs/testing/sendPenEvent.js +10 -7
- package/dist/cjs/testing/sendTouchEvent.d.ts +2 -2
- package/dist/cjs/testing/sendTouchEvent.js +34 -16
- package/dist/cjs/toolbar/AbstractToolbar.d.ts +166 -0
- package/dist/cjs/toolbar/AbstractToolbar.js +410 -0
- package/dist/cjs/toolbar/DropdownToolbar.d.ts +43 -0
- package/dist/cjs/toolbar/DropdownToolbar.js +176 -0
- package/dist/cjs/toolbar/EdgeToolbar.d.ts +47 -0
- package/dist/cjs/toolbar/EdgeToolbar.js +422 -0
- package/dist/cjs/toolbar/IconProvider.d.ts +54 -30
- package/dist/cjs/toolbar/IconProvider.js +652 -224
- package/dist/cjs/toolbar/constants.d.ts +1 -0
- package/dist/cjs/toolbar/constants.js +4 -0
- package/dist/cjs/toolbar/lib.d.ts +4 -2
- package/dist/cjs/toolbar/lib.js +10 -3
- package/dist/cjs/toolbar/localization.d.ts +9 -2
- package/dist/cjs/toolbar/localization.js +26 -19
- package/dist/cjs/toolbar/types.d.ts +7 -0
- package/dist/cjs/toolbar/widgets/ActionButtonWidget.d.ts +1 -1
- package/dist/cjs/toolbar/widgets/ActionButtonWidget.js +23 -39
- package/dist/cjs/toolbar/widgets/BaseToolWidget.d.ts +1 -1
- package/dist/cjs/toolbar/widgets/BaseToolWidget.js +35 -37
- package/dist/cjs/toolbar/widgets/BaseWidget.d.ts +60 -5
- package/dist/cjs/toolbar/widgets/BaseWidget.js +232 -177
- package/dist/cjs/toolbar/widgets/DocumentPropertiesWidget.js +130 -117
- package/dist/cjs/toolbar/widgets/EraserToolWidget.d.ts +1 -3
- package/dist/cjs/toolbar/widgets/EraserToolWidget.js +45 -73
- package/dist/cjs/toolbar/widgets/HandToolWidget.d.ts +1 -0
- package/dist/cjs/toolbar/widgets/HandToolWidget.js +126 -141
- package/dist/cjs/toolbar/widgets/InsertImageWidget.d.ts +9 -7
- package/dist/cjs/toolbar/widgets/InsertImageWidget.js +147 -212
- package/dist/cjs/toolbar/widgets/OverflowWidget.js +33 -61
- package/dist/cjs/toolbar/widgets/PenToolWidget.d.ts +8 -1
- package/dist/cjs/toolbar/widgets/PenToolWidget.js +162 -234
- package/dist/cjs/toolbar/widgets/SelectionToolWidget.d.ts +3 -1
- package/dist/cjs/toolbar/widgets/SelectionToolWidget.js +105 -177
- package/dist/cjs/toolbar/widgets/TextToolWidget.js +64 -87
- package/dist/cjs/toolbar/widgets/components/makeColorInput.d.ts +10 -0
- package/dist/cjs/toolbar/{makeColorInput.js → widgets/components/makeColorInput.js} +57 -34
- package/dist/cjs/toolbar/widgets/components/makeFileInput.d.ts +12 -0
- package/dist/cjs/toolbar/widgets/components/makeFileInput.js +111 -0
- package/dist/cjs/toolbar/widgets/components/makeGridSelector.d.ts +24 -0
- package/dist/cjs/toolbar/widgets/components/makeGridSelector.js +127 -0
- package/dist/cjs/toolbar/widgets/components/makeSeparator.d.ts +7 -0
- package/dist/cjs/toolbar/widgets/components/makeSeparator.js +16 -0
- package/dist/cjs/toolbar/widgets/components/makeThicknessSlider.d.ts +8 -0
- package/dist/cjs/toolbar/widgets/components/makeThicknessSlider.js +47 -0
- package/dist/cjs/toolbar/widgets/keybindings.js +8 -5
- package/dist/cjs/toolbar/widgets/layout/DropdownLayoutManager.d.ts +21 -0
- package/dist/cjs/toolbar/widgets/layout/DropdownLayoutManager.js +199 -0
- package/dist/cjs/toolbar/widgets/layout/EdgeToolbarLayoutManager.d.ts +14 -0
- package/dist/cjs/toolbar/widgets/layout/EdgeToolbarLayoutManager.js +60 -0
- package/dist/cjs/toolbar/widgets/layout/types.d.ts +63 -0
- package/dist/cjs/toolbar/widgets/layout/types.js +2 -0
- package/dist/cjs/toolbar/widgets/lib.d.ts +1 -1
- package/dist/cjs/toolbar/widgets/lib.js +15 -11
- package/dist/cjs/tools/BaseTool.d.ts +28 -9
- package/dist/cjs/tools/BaseTool.js +128 -51
- package/dist/cjs/tools/Eraser.d.ts +8 -1
- package/dist/cjs/tools/Eraser.js +82 -92
- package/dist/cjs/tools/FindTool.d.ts +1 -1
- package/dist/cjs/tools/FindTool.js +61 -77
- package/dist/cjs/tools/InputFilter/FunctionMapper.d.ts +12 -0
- package/dist/cjs/tools/InputFilter/FunctionMapper.js +21 -0
- package/dist/cjs/tools/InputFilter/InputMapper.d.ts +23 -0
- package/dist/cjs/tools/InputFilter/InputMapper.js +38 -0
- package/dist/cjs/tools/InputFilter/InputPipeline.d.ts +15 -0
- package/dist/cjs/tools/InputFilter/InputPipeline.js +54 -0
- package/dist/cjs/tools/InputFilter/InputStabilizer.d.ts +29 -0
- package/dist/cjs/tools/InputFilter/InputStabilizer.js +181 -0
- package/dist/cjs/tools/InputFilter/StrokeKeyboardControl.d.ts +21 -0
- package/dist/cjs/tools/InputFilter/StrokeKeyboardControl.js +84 -0
- package/dist/cjs/tools/PanZoom.d.ts +4 -2
- package/dist/cjs/tools/PanZoom.js +186 -248
- package/dist/cjs/tools/PasteHandler.d.ts +1 -1
- package/dist/cjs/tools/PasteHandler.js +49 -148
- package/dist/cjs/tools/Pen.d.ts +12 -11
- package/dist/cjs/tools/Pen.js +123 -158
- package/dist/cjs/tools/PipetteTool.d.ts +11 -2
- package/dist/cjs/tools/PipetteTool.js +51 -48
- package/dist/cjs/tools/SelectionTool/SelectAllShortcutHandler.d.ts +1 -1
- package/dist/cjs/tools/SelectionTool/SelectAllShortcutHandler.js +15 -30
- package/dist/cjs/tools/SelectionTool/Selection.d.ts +5 -5
- package/dist/cjs/tools/SelectionTool/Selection.js +308 -415
- package/dist/cjs/tools/SelectionTool/SelectionHandle.d.ts +15 -5
- package/dist/cjs/tools/SelectionTool/SelectionHandle.js +63 -37
- package/dist/cjs/tools/SelectionTool/SelectionTool.d.ts +4 -4
- package/dist/cjs/tools/SelectionTool/SelectionTool.js +164 -187
- package/dist/cjs/tools/SelectionTool/TransformMode.d.ts +1 -1
- package/dist/cjs/tools/SelectionTool/TransformMode.js +65 -66
- package/dist/cjs/tools/SoundUITool.d.ts +2 -1
- package/dist/cjs/tools/SoundUITool.js +70 -84
- package/dist/cjs/tools/TextTool.d.ts +5 -3
- package/dist/cjs/tools/TextTool.js +169 -173
- package/dist/cjs/tools/ToolController.d.ts +16 -2
- package/dist/cjs/tools/ToolController.js +124 -100
- package/dist/cjs/tools/ToolEnabledGroup.js +6 -9
- package/dist/cjs/tools/ToolSwitcherShortcut.d.ts +1 -1
- package/dist/cjs/tools/ToolSwitcherShortcut.js +16 -32
- package/dist/cjs/tools/ToolbarShortcutHandler.d.ts +1 -1
- package/dist/cjs/tools/ToolbarShortcutHandler.js +17 -33
- package/dist/cjs/tools/UndoRedoShortcut.d.ts +1 -1
- package/dist/cjs/tools/UndoRedoShortcut.js +12 -27
- package/dist/cjs/tools/keybindings.js +21 -18
- package/dist/cjs/tools/lib.js +17 -14
- package/dist/cjs/tools/localization.d.ts +2 -1
- package/dist/cjs/tools/localization.js +8 -7
- package/dist/cjs/types.d.ts +22 -80
- package/dist/cjs/types.js +8 -16
- package/dist/cjs/util/ReactiveValue.d.ts +65 -0
- package/dist/cjs/util/ReactiveValue.js +166 -0
- package/dist/cjs/util/assertions.js +5 -8
- package/dist/cjs/util/fileToBase64.js +6 -6
- package/dist/cjs/util/guessKeyCodeFromKey.d.ts +9 -0
- package/dist/cjs/util/guessKeyCodeFromKey.js +32 -0
- package/dist/cjs/util/listPrefixMatch.d.ts +6 -0
- package/dist/cjs/util/listPrefixMatch.js +17 -0
- package/dist/cjs/util/stopPropagationOfScrollingWheelEvents.d.ts +2 -0
- package/dist/cjs/util/stopPropagationOfScrollingWheelEvents.js +17 -0
- package/dist/cjs/util/untilNextAnimationFrame.js +3 -3
- package/dist/cjs/util/waitForAll.js +3 -3
- package/dist/cjs/util/waitForTimeout.js +3 -3
- package/dist/cjs/version.d.ts +4 -0
- package/dist/cjs/version.js +5 -0
- package/dist/mjs/Editor.d.ts +91 -12
- package/dist/mjs/Editor.mjs +565 -563
- package/dist/mjs/EditorImage.d.ts +5 -2
- package/dist/mjs/EditorImage.mjs +248 -291
- package/dist/mjs/EventDispatcher.mjs +17 -20
- package/dist/mjs/Pointer.d.ts +3 -1
- package/dist/mjs/Pointer.mjs +40 -44
- package/dist/mjs/SVGLoader.d.ts +7 -1
- package/dist/mjs/SVGLoader.mjs +338 -466
- package/dist/mjs/UndoRedoHistory.mjs +27 -39
- package/dist/mjs/Viewport.d.ts +1 -4
- package/dist/mjs/Viewport.mjs +139 -187
- package/dist/mjs/commands/Command.mjs +21 -49
- package/dist/mjs/commands/Duplicate.mjs +22 -41
- package/dist/mjs/commands/Erase.mjs +30 -51
- package/dist/mjs/commands/SerializableCommand.mjs +16 -34
- package/dist/mjs/commands/UnresolvedCommand.mjs +10 -29
- package/dist/mjs/commands/invertCommand.mjs +24 -49
- package/dist/mjs/commands/localization.d.ts +1 -1
- package/dist/mjs/commands/localization.mjs +10 -10
- package/dist/mjs/commands/uniteCommands.mjs +52 -85
- package/dist/mjs/components/AbstractComponent.d.ts +11 -3
- package/dist/mjs/components/AbstractComponent.mjs +135 -166
- package/dist/mjs/components/BackgroundComponent.d.ts +3 -6
- package/dist/mjs/components/BackgroundComponent.mjs +107 -136
- package/dist/mjs/components/ImageComponent.d.ts +3 -5
- package/dist/mjs/components/ImageComponent.mjs +90 -174
- package/dist/mjs/components/RestylableComponent.d.ts +1 -1
- package/dist/mjs/components/RestylableComponent.mjs +35 -53
- package/dist/mjs/components/SVGGlobalAttributesObject.d.ts +1 -3
- package/dist/mjs/components/SVGGlobalAttributesObject.mjs +29 -50
- package/dist/mjs/components/Stroke.d.ts +4 -6
- package/dist/mjs/components/Stroke.mjs +89 -119
- package/dist/mjs/components/TextComponent.d.ts +2 -4
- package/dist/mjs/components/TextComponent.mjs +180 -228
- package/dist/mjs/components/UnknownSVGObject.d.ts +1 -3
- package/dist/mjs/components/UnknownSVGObject.mjs +26 -43
- package/dist/mjs/components/builders/ArrowBuilder.d.ts +1 -1
- package/dist/mjs/components/builders/ArrowBuilder.mjs +32 -35
- package/dist/mjs/components/builders/CircleBuilder.mjs +35 -38
- package/dist/mjs/components/builders/FreehandLineBuilder.d.ts +3 -2
- package/dist/mjs/components/builders/FreehandLineBuilder.mjs +52 -69
- package/dist/mjs/components/builders/LineBuilder.d.ts +1 -1
- package/dist/mjs/components/builders/LineBuilder.mjs +30 -32
- package/dist/mjs/components/builders/PressureSensitiveFreehandLineBuilder.d.ts +1 -1
- package/dist/mjs/components/builders/PressureSensitiveFreehandLineBuilder.mjs +103 -115
- package/dist/mjs/components/builders/RectangleBuilder.d.ts +1 -1
- package/dist/mjs/components/builders/RectangleBuilder.mjs +27 -31
- package/dist/mjs/components/builders/types.d.ts +1 -1
- package/dist/mjs/components/lib.d.ts +3 -1
- package/dist/mjs/components/lib.mjs +1 -1
- package/dist/mjs/components/localization.mjs +5 -5
- package/dist/mjs/components/util/StrokeSmoother.d.ts +1 -2
- package/dist/mjs/components/util/StrokeSmoother.mjs +63 -69
- package/dist/mjs/components/util/describeComponentList.d.ts +1 -1
- package/dist/mjs/components/util/describeComponentList.mjs +4 -5
- package/dist/mjs/dialogs/makeAboutDialog.d.ts +15 -0
- package/dist/mjs/dialogs/makeAboutDialog.mjs +52 -0
- package/dist/mjs/inputEvents.d.ts +84 -0
- package/dist/mjs/inputEvents.mjs +34 -0
- package/dist/mjs/lib.d.ts +29 -13
- package/dist/mjs/lib.mjs +30 -13
- package/dist/mjs/localization.mjs +14 -13
- package/dist/mjs/localizations/de.mjs +116 -12
- package/dist/mjs/localizations/en.mjs +3 -12
- package/dist/mjs/localizations/es.mjs +61 -22
- package/dist/mjs/localizations/getLocalizationTable.mjs +12 -13
- package/dist/mjs/rendering/Display.d.ts +1 -2
- package/dist/mjs/rendering/Display.mjs +62 -79
- package/dist/mjs/rendering/RenderablePathSpec.d.ts +15 -0
- package/dist/mjs/rendering/RenderablePathSpec.mjs +64 -0
- package/dist/mjs/rendering/RenderingStyle.d.ts +4 -4
- package/dist/mjs/rendering/RenderingStyle.mjs +16 -26
- package/dist/mjs/rendering/TextRenderingStyle.d.ts +10 -10
- package/dist/mjs/rendering/TextRenderingStyle.mjs +12 -17
- package/dist/mjs/rendering/caching/CacheRecord.d.ts +1 -2
- package/dist/mjs/rendering/caching/CacheRecord.mjs +20 -23
- package/dist/mjs/rendering/caching/CacheRecordManager.d.ts +1 -1
- package/dist/mjs/rendering/caching/CacheRecordManager.mjs +13 -15
- package/dist/mjs/rendering/caching/RenderingCache.mjs +13 -17
- package/dist/mjs/rendering/caching/RenderingCacheNode.d.ts +1 -1
- package/dist/mjs/rendering/caching/RenderingCacheNode.mjs +94 -115
- package/dist/mjs/rendering/caching/testUtils.mjs +19 -21
- package/dist/mjs/rendering/caching/types.d.ts +3 -3
- package/dist/mjs/rendering/localization.mjs +6 -6
- package/dist/mjs/rendering/renderers/AbstractRenderer.d.ts +2 -11
- package/dist/mjs/rendering/renderers/AbstractRenderer.mjs +47 -52
- package/dist/mjs/rendering/renderers/CanvasRenderer.d.ts +3 -5
- package/dist/mjs/rendering/renderers/CanvasRenderer.mjs +84 -103
- package/dist/mjs/rendering/renderers/DummyRenderer.d.ts +1 -4
- package/dist/mjs/rendering/renderers/DummyRenderer.mjs +51 -75
- package/dist/mjs/rendering/renderers/SVGRenderer.d.ts +5 -5
- package/dist/mjs/rendering/renderers/SVGRenderer.mjs +185 -171
- package/dist/mjs/rendering/renderers/TextOnlyRenderer.d.ts +1 -3
- package/dist/mjs/rendering/renderers/TextOnlyRenderer.mjs +43 -72
- package/dist/mjs/shortcuts/KeyBinding.d.ts +5 -0
- package/dist/mjs/shortcuts/KeyBinding.mjs +94 -71
- package/dist/mjs/shortcuts/KeyboardShortcutManager.d.ts +1 -1
- package/dist/mjs/shortcuts/KeyboardShortcutManager.mjs +32 -44
- package/dist/mjs/testing/createEditor.mjs +2 -2
- package/dist/mjs/testing/getUniquePointerId.mjs +4 -5
- package/dist/mjs/testing/sendPenEvent.d.ts +2 -2
- package/dist/mjs/testing/sendPenEvent.mjs +5 -5
- package/dist/mjs/testing/sendTouchEvent.d.ts +2 -2
- package/dist/mjs/testing/sendTouchEvent.mjs +8 -16
- package/dist/mjs/toolbar/AbstractToolbar.d.ts +166 -0
- package/dist/mjs/toolbar/AbstractToolbar.mjs +405 -0
- package/dist/mjs/toolbar/DropdownToolbar.d.ts +43 -0
- package/dist/mjs/toolbar/DropdownToolbar.mjs +168 -0
- package/dist/mjs/toolbar/EdgeToolbar.d.ts +47 -0
- package/dist/mjs/toolbar/EdgeToolbar.mjs +414 -0
- package/dist/mjs/toolbar/IconProvider.d.ts +54 -30
- package/dist/mjs/toolbar/IconProvider.mjs +644 -219
- package/dist/mjs/toolbar/constants.d.ts +1 -0
- package/dist/mjs/toolbar/constants.mjs +1 -0
- package/dist/mjs/toolbar/lib.d.ts +4 -2
- package/dist/mjs/toolbar/lib.mjs +3 -1
- package/dist/mjs/toolbar/localization.d.ts +9 -2
- package/dist/mjs/toolbar/localization.mjs +27 -20
- package/dist/mjs/toolbar/types.d.ts +7 -0
- package/dist/mjs/toolbar/widgets/ActionButtonWidget.d.ts +1 -1
- package/dist/mjs/toolbar/widgets/ActionButtonWidget.mjs +19 -39
- package/dist/mjs/toolbar/widgets/BaseToolWidget.d.ts +1 -1
- package/dist/mjs/toolbar/widgets/BaseToolWidget.mjs +30 -36
- package/dist/mjs/toolbar/widgets/BaseWidget.d.ts +60 -5
- package/dist/mjs/toolbar/widgets/BaseWidget.mjs +227 -176
- package/dist/mjs/toolbar/widgets/DocumentPropertiesWidget.mjs +98 -111
- package/dist/mjs/toolbar/widgets/EraserToolWidget.d.ts +1 -3
- package/dist/mjs/toolbar/widgets/EraserToolWidget.mjs +41 -73
- package/dist/mjs/toolbar/widgets/HandToolWidget.d.ts +1 -0
- package/dist/mjs/toolbar/widgets/HandToolWidget.mjs +94 -136
- package/dist/mjs/toolbar/widgets/InsertImageWidget.d.ts +9 -7
- package/dist/mjs/toolbar/widgets/InsertImageWidget.mjs +140 -208
- package/dist/mjs/toolbar/widgets/OverflowWidget.mjs +30 -62
- package/dist/mjs/toolbar/widgets/PenToolWidget.d.ts +8 -1
- package/dist/mjs/toolbar/widgets/PenToolWidget.mjs +150 -225
- package/dist/mjs/toolbar/widgets/SelectionToolWidget.d.ts +3 -1
- package/dist/mjs/toolbar/widgets/SelectionToolWidget.mjs +97 -173
- package/dist/mjs/toolbar/widgets/TextToolWidget.mjs +59 -85
- package/dist/mjs/toolbar/widgets/components/makeColorInput.d.ts +10 -0
- package/dist/mjs/toolbar/{makeColorInput.mjs → widgets/components/makeColorInput.mjs} +53 -33
- package/dist/mjs/toolbar/widgets/components/makeFileInput.d.ts +12 -0
- package/dist/mjs/toolbar/widgets/components/makeFileInput.mjs +106 -0
- package/dist/mjs/toolbar/widgets/components/makeGridSelector.d.ts +24 -0
- package/dist/mjs/toolbar/widgets/components/makeGridSelector.mjs +122 -0
- package/dist/mjs/toolbar/widgets/components/makeSeparator.d.ts +7 -0
- package/dist/mjs/toolbar/widgets/components/makeSeparator.mjs +14 -0
- package/dist/mjs/toolbar/widgets/components/makeThicknessSlider.d.ts +8 -0
- package/dist/mjs/toolbar/widgets/components/makeThicknessSlider.mjs +45 -0
- package/dist/mjs/toolbar/widgets/keybindings.mjs +5 -5
- package/dist/mjs/toolbar/widgets/layout/DropdownLayoutManager.d.ts +21 -0
- package/dist/mjs/toolbar/widgets/layout/DropdownLayoutManager.mjs +193 -0
- package/dist/mjs/toolbar/widgets/layout/EdgeToolbarLayoutManager.d.ts +14 -0
- package/dist/mjs/toolbar/widgets/layout/EdgeToolbarLayoutManager.mjs +57 -0
- package/dist/mjs/toolbar/widgets/layout/types.d.ts +63 -0
- package/dist/mjs/toolbar/widgets/lib.d.ts +1 -1
- package/dist/mjs/toolbar/widgets/lib.mjs +1 -1
- package/dist/mjs/tools/BaseTool.d.ts +28 -9
- package/dist/mjs/tools/BaseTool.mjs +127 -50
- package/dist/mjs/tools/Eraser.d.ts +8 -1
- package/dist/mjs/tools/Eraser.mjs +72 -86
- package/dist/mjs/tools/FindTool.d.ts +1 -1
- package/dist/mjs/tools/FindTool.mjs +55 -75
- package/dist/mjs/tools/InputFilter/FunctionMapper.d.ts +12 -0
- package/dist/mjs/tools/InputFilter/FunctionMapper.mjs +15 -0
- package/dist/mjs/tools/InputFilter/InputMapper.d.ts +23 -0
- package/dist/mjs/tools/InputFilter/InputMapper.mjs +36 -0
- package/dist/mjs/tools/InputFilter/InputPipeline.d.ts +15 -0
- package/dist/mjs/tools/InputFilter/InputPipeline.mjs +49 -0
- package/dist/mjs/tools/InputFilter/InputStabilizer.d.ts +29 -0
- package/dist/mjs/tools/InputFilter/InputStabilizer.mjs +175 -0
- package/dist/mjs/tools/InputFilter/StrokeKeyboardControl.d.ts +21 -0
- package/dist/mjs/tools/InputFilter/StrokeKeyboardControl.mjs +78 -0
- package/dist/mjs/tools/PanZoom.d.ts +4 -2
- package/dist/mjs/tools/PanZoom.mjs +169 -235
- package/dist/mjs/tools/PasteHandler.d.ts +1 -1
- package/dist/mjs/tools/PasteHandler.mjs +42 -145
- package/dist/mjs/tools/Pen.d.ts +12 -11
- package/dist/mjs/tools/Pen.mjs +115 -154
- package/dist/mjs/tools/PipetteTool.d.ts +11 -2
- package/dist/mjs/tools/PipetteTool.mjs +47 -48
- package/dist/mjs/tools/SelectionTool/SelectAllShortcutHandler.d.ts +1 -1
- package/dist/mjs/tools/SelectionTool/SelectAllShortcutHandler.mjs +9 -28
- package/dist/mjs/tools/SelectionTool/Selection.d.ts +5 -5
- package/dist/mjs/tools/SelectionTool/Selection.mjs +268 -401
- package/dist/mjs/tools/SelectionTool/SelectionHandle.d.ts +15 -5
- package/dist/mjs/tools/SelectionTool/SelectionHandle.mjs +62 -37
- package/dist/mjs/tools/SelectionTool/SelectionTool.d.ts +4 -4
- package/dist/mjs/tools/SelectionTool/SelectionTool.mjs +153 -179
- package/dist/mjs/tools/SelectionTool/TransformMode.d.ts +1 -1
- package/dist/mjs/tools/SelectionTool/TransformMode.mjs +52 -59
- package/dist/mjs/tools/SoundUITool.d.ts +2 -1
- package/dist/mjs/tools/SoundUITool.mjs +66 -84
- package/dist/mjs/tools/TextTool.d.ts +5 -3
- package/dist/mjs/tools/TextTool.mjs +155 -163
- package/dist/mjs/tools/ToolController.d.ts +16 -2
- package/dist/mjs/tools/ToolController.mjs +81 -84
- package/dist/mjs/tools/ToolEnabledGroup.mjs +6 -10
- package/dist/mjs/tools/ToolSwitcherShortcut.d.ts +1 -1
- package/dist/mjs/tools/ToolSwitcherShortcut.mjs +12 -32
- package/dist/mjs/tools/ToolbarShortcutHandler.d.ts +1 -1
- package/dist/mjs/tools/ToolbarShortcutHandler.mjs +13 -33
- package/dist/mjs/tools/UndoRedoShortcut.d.ts +1 -1
- package/dist/mjs/tools/UndoRedoShortcut.mjs +7 -26
- package/dist/mjs/tools/keybindings.mjs +34 -34
- package/dist/mjs/tools/localization.d.ts +2 -1
- package/dist/mjs/tools/localization.mjs +9 -8
- package/dist/mjs/types.d.ts +22 -80
- package/dist/mjs/types.mjs +7 -15
- package/dist/mjs/util/ReactiveValue.d.ts +65 -0
- package/dist/mjs/util/ReactiveValue.mjs +161 -0
- package/dist/mjs/util/assertions.mjs +5 -8
- package/dist/mjs/util/fileToBase64.mjs +6 -6
- package/dist/mjs/util/guessKeyCodeFromKey.d.ts +9 -0
- package/dist/mjs/util/guessKeyCodeFromKey.mjs +30 -0
- package/dist/mjs/util/listPrefixMatch.d.ts +6 -0
- package/dist/mjs/util/listPrefixMatch.mjs +15 -0
- package/dist/mjs/util/stopPropagationOfScrollingWheelEvents.d.ts +2 -0
- package/dist/mjs/util/stopPropagationOfScrollingWheelEvents.mjs +15 -0
- package/dist/mjs/util/untilNextAnimationFrame.mjs +3 -3
- package/dist/mjs/util/waitForAll.mjs +3 -3
- package/dist/mjs/util/waitForTimeout.mjs +3 -3
- package/dist/mjs/version.d.ts +4 -0
- package/dist/mjs/version.mjs +3 -0
- package/dist-test/test_imports/package.json +1 -1
- package/dist-test/test_imports/test-imports.js +5 -11
- package/dist-test/test_imports/test-require.cjs +6 -11
- package/package.json +11 -22
- package/src/Coloris.css +8 -8
- package/src/Editor.loadFrom.test.ts +1 -1
- package/src/Editor.scss +148 -0
- package/src/Editor.test.ts +107 -0
- package/src/Editor.toSVG.test.ts +184 -1
- package/src/Editor.ts +325 -53
- package/src/EditorImage.test.ts +4 -7
- package/src/EditorImage.ts +10 -4
- package/src/Pointer.ts +18 -5
- package/src/SVGLoader.ts +77 -15
- package/src/UndoRedoHistory.test.ts +2 -1
- package/src/Viewport.ts +1 -4
- package/src/commands/Erase.ts +1 -0
- package/src/commands/localization.ts +1 -1
- package/src/commands/uniteCommands.test.ts +3 -3
- package/src/components/AbstractComponent.transformBy.test.ts +2 -1
- package/src/components/AbstractComponent.ts +12 -3
- package/src/components/BackgroundComponent.test.ts +1 -2
- package/src/components/BackgroundComponent.ts +3 -8
- package/src/components/ImageComponent.ts +1 -3
- package/src/components/RestylableComponent.ts +1 -1
- package/src/components/SVGGlobalAttributesObject.ts +1 -3
- package/src/components/Stroke.test.ts +4 -6
- package/src/components/Stroke.ts +5 -7
- package/src/components/TextComponent.test.ts +1 -3
- package/src/components/TextComponent.ts +1 -4
- package/src/components/UnknownSVGObject.ts +3 -3
- package/src/components/builders/ArrowBuilder.ts +1 -2
- package/src/components/builders/CircleBuilder.ts +3 -5
- package/src/components/builders/FreehandLineBuilder.test.ts +2 -3
- package/src/components/builders/FreehandLineBuilder.ts +3 -5
- package/src/components/builders/LineBuilder.ts +3 -3
- package/src/components/builders/PressureSensitiveFreehandLineBuilder.ts +3 -4
- package/src/components/builders/RectangleBuilder.ts +3 -4
- package/src/components/builders/types.ts +1 -1
- package/src/components/lib.ts +1 -1
- package/src/components/util/StrokeSmoother.ts +7 -7
- package/src/dialogs/dialogs.scss +36 -0
- package/src/dialogs/makeAboutDialog.scss +41 -0
- package/src/dialogs/makeAboutDialog.ts +82 -0
- package/src/inputEvents.ts +143 -0
- package/src/lib.ts +35 -13
- package/src/localizations/de.ts +2 -2
- package/src/localizations/es.ts +5 -5
- package/src/rendering/Display.ts +1 -2
- package/src/rendering/RenderablePathSpec.ts +88 -0
- package/src/rendering/RenderingStyle.test.ts +1 -1
- package/src/rendering/RenderingStyle.ts +1 -1
- package/src/rendering/caching/CacheRecord.test.ts +1 -2
- package/src/rendering/caching/CacheRecord.ts +1 -2
- package/src/rendering/caching/CacheRecordManager.ts +1 -1
- package/src/rendering/caching/RenderingCache.test.ts +3 -4
- package/src/rendering/caching/RenderingCache.ts +1 -1
- package/src/rendering/caching/RenderingCacheNode.ts +1 -2
- package/src/rendering/caching/testUtils.ts +1 -1
- package/src/rendering/caching/types.ts +3 -3
- package/src/rendering/renderers/AbstractRenderer.ts +4 -14
- package/src/rendering/renderers/CanvasRenderer.ts +17 -12
- package/src/rendering/renderers/DummyRenderer.test.ts +1 -2
- package/src/rendering/renderers/DummyRenderer.ts +1 -4
- package/src/rendering/renderers/SVGRenderer.ts +68 -11
- package/src/rendering/renderers/TextOnlyRenderer.ts +1 -4
- package/src/shortcuts/KeyBinding.test.ts +10 -0
- package/src/shortcuts/KeyBinding.ts +74 -35
- package/src/shortcuts/KeyboardShortcutManager.test.ts +1 -1
- package/src/styles.js +1 -1
- package/src/testing/sendPenEvent.ts +2 -2
- package/src/testing/sendTouchEvent.ts +2 -2
- package/src/toolbar/{toolbar.css → AbstractToolbar.scss} +47 -85
- package/src/toolbar/AbstractToolbar.ts +542 -0
- package/src/toolbar/DropdownToolbar.scss +46 -0
- package/src/toolbar/DropdownToolbar.ts +220 -0
- package/src/toolbar/EdgeToolbar.scss +511 -0
- package/src/toolbar/EdgeToolbar.test.ts +54 -0
- package/src/toolbar/EdgeToolbar.ts +543 -0
- package/src/toolbar/IconProvider.ts +189 -133
- package/src/toolbar/constants.ts +1 -0
- package/src/toolbar/lib.ts +4 -2
- package/src/toolbar/localization.ts +39 -17
- package/src/toolbar/toolbar.scss +11 -0
- package/src/toolbar/types.ts +8 -0
- package/src/toolbar/widgets/ActionButtonWidget.ts +2 -2
- package/src/toolbar/widgets/BaseToolWidget.ts +17 -1
- package/src/toolbar/widgets/BaseWidget.ts +179 -112
- package/src/toolbar/widgets/DocumentPropertiesWidget.scss +7 -0
- package/src/toolbar/widgets/DocumentPropertiesWidget.ts +26 -10
- package/src/toolbar/widgets/EraserToolWidget.ts +21 -22
- package/src/toolbar/widgets/HandToolWidget.scss +14 -0
- package/src/toolbar/widgets/HandToolWidget.ts +21 -32
- package/src/toolbar/widgets/InsertImageWidget.scss +41 -0
- package/src/toolbar/widgets/InsertImageWidget.ts +90 -65
- package/src/toolbar/widgets/PenToolWidget.css +0 -51
- package/src/toolbar/widgets/PenToolWidget.ts +106 -146
- package/src/toolbar/widgets/SelectionToolWidget.scss +6 -0
- package/src/toolbar/widgets/SelectionToolWidget.ts +83 -85
- package/src/toolbar/widgets/TextToolWidget.ts +9 -5
- package/src/toolbar/widgets/components/components.scss +5 -0
- package/src/toolbar/widgets/components/makeColorInput.scss +82 -0
- package/src/toolbar/{makeColorInput.ts → widgets/components/makeColorInput.ts} +39 -14
- package/src/toolbar/widgets/components/makeFileInput.scss +77 -0
- package/src/toolbar/widgets/components/makeFileInput.ts +128 -0
- package/src/toolbar/widgets/components/makeGridSelector.scss +60 -0
- package/src/toolbar/widgets/components/makeGridSelector.ts +179 -0
- package/src/toolbar/widgets/components/makeSeparator.scss +14 -0
- package/src/toolbar/widgets/components/makeSeparator.ts +17 -0
- package/src/toolbar/widgets/components/makeThicknessSlider.scss +9 -0
- package/src/toolbar/widgets/components/makeThicknessSlider.ts +62 -0
- package/src/toolbar/widgets/keybindings.ts +1 -3
- package/src/toolbar/widgets/layout/DropdownLayoutManager.ts +262 -0
- package/src/toolbar/widgets/layout/EdgeToolbarLayoutManager.ts +71 -0
- package/src/toolbar/widgets/layout/types.ts +74 -0
- package/src/toolbar/widgets/lib.ts +2 -2
- package/src/tools/BaseTool.ts +102 -30
- package/src/tools/Eraser.test.ts +2 -2
- package/src/tools/Eraser.ts +24 -11
- package/src/tools/FindTool.css +3 -3
- package/src/tools/FindTool.test.ts +67 -0
- package/src/tools/FindTool.ts +3 -3
- package/src/tools/InputFilter/FunctionMapper.ts +17 -0
- package/src/tools/InputFilter/InputMapper.ts +41 -0
- package/src/tools/InputFilter/InputPipeline.test.ts +41 -0
- package/src/tools/InputFilter/InputPipeline.ts +34 -0
- package/src/tools/InputFilter/InputStabilizer.ts +254 -0
- package/src/tools/InputFilter/StrokeKeyboardControl.ts +104 -0
- package/src/tools/PanZoom.test.ts +3 -13
- package/src/tools/PanZoom.ts +33 -10
- package/src/tools/PasteHandler.ts +2 -3
- package/src/tools/Pen.test.ts +2 -4
- package/src/tools/Pen.ts +54 -70
- package/src/tools/PipetteTool.ts +31 -2
- package/src/tools/SelectionTool/SelectAllShortcutHandler.ts +1 -1
- package/src/tools/SelectionTool/Selection.ts +52 -16
- package/src/tools/SelectionTool/SelectionHandle.ts +46 -12
- package/src/tools/SelectionTool/SelectionTool.css +23 -11
- package/src/tools/SelectionTool/SelectionTool.test.ts +130 -21
- package/src/tools/SelectionTool/SelectionTool.ts +62 -48
- package/src/tools/SelectionTool/TransformMode.ts +1 -3
- package/src/tools/SoundUITool.ts +13 -4
- package/src/tools/TextTool.ts +29 -30
- package/src/tools/ToolController.ts +60 -36
- package/src/tools/ToolSwitcherShortcut.ts +1 -1
- package/src/tools/ToolbarShortcutHandler.ts +1 -1
- package/src/tools/UndoRedoShortcut.test.ts +10 -4
- package/src/tools/UndoRedoShortcut.ts +1 -1
- package/src/tools/keybindings.ts +17 -17
- package/src/tools/localization.ts +4 -2
- package/src/tools/tools.scss +4 -0
- package/src/types.ts +25 -113
- package/src/util/ReactiveValue.test.ts +168 -0
- package/src/util/ReactiveValue.ts +241 -0
- package/src/util/guessKeyCodeFromKey.ts +36 -0
- package/src/util/listPrefixMatch.ts +19 -0
- package/src/util/stopPropagationOfScrollingWheelEvents.ts +20 -0
- package/src/version.test.ts +12 -0
- package/src/version.ts +3 -0
- package/tsconfig.json +1 -1
- package/typedoc.json +4 -0
- package/dist/cjs/Color4.d.ts +0 -69
- package/dist/cjs/Color4.js +0 -263
- package/dist/cjs/math/Mat33.d.ts +0 -123
- package/dist/cjs/math/Mat33.js +0 -340
- package/dist/cjs/math/Vec2.d.ts +0 -33
- package/dist/cjs/math/Vec2.js +0 -37
- package/dist/cjs/math/Vec3.d.ts +0 -106
- package/dist/cjs/math/Vec3.js +0 -183
- package/dist/cjs/math/lib.d.ts +0 -7
- package/dist/cjs/math/lib.js +0 -15
- package/dist/cjs/math/polynomial/solveQuadratic.d.ts +0 -9
- package/dist/cjs/math/polynomial/solveQuadratic.js +0 -39
- package/dist/cjs/math/rounding.d.ts +0 -4
- package/dist/cjs/math/rounding.js +0 -140
- package/dist/cjs/math/shapes/Abstract2DShape.d.ts +0 -49
- package/dist/cjs/math/shapes/Abstract2DShape.js +0 -42
- package/dist/cjs/math/shapes/BezierJSWrapper.d.ts +0 -36
- package/dist/cjs/math/shapes/BezierJSWrapper.js +0 -109
- package/dist/cjs/math/shapes/CubicBezier.d.ts +0 -17
- package/dist/cjs/math/shapes/CubicBezier.js +0 -50
- package/dist/cjs/math/shapes/LineSegment2.d.ts +0 -70
- package/dist/cjs/math/shapes/LineSegment2.js +0 -204
- package/dist/cjs/math/shapes/Path.d.ts +0 -93
- package/dist/cjs/math/shapes/Path.js +0 -865
- package/dist/cjs/math/shapes/PointShape2D.d.ts +0 -18
- package/dist/cjs/math/shapes/PointShape2D.js +0 -46
- package/dist/cjs/math/shapes/QuadraticBezier.d.ts +0 -34
- package/dist/cjs/math/shapes/QuadraticBezier.js +0 -133
- package/dist/cjs/math/shapes/Rect2.d.ts +0 -57
- package/dist/cjs/math/shapes/Rect2.js +0 -311
- package/dist/cjs/math/shapes/Triangle.d.ts +0 -46
- package/dist/cjs/math/shapes/Triangle.js +0 -148
- package/dist/cjs/toolbar/HTMLToolbar.d.ts +0 -105
- package/dist/cjs/toolbar/HTMLToolbar.js +0 -465
- package/dist/cjs/toolbar/makeColorInput.d.ts +0 -6
- package/dist/mjs/Color4.d.ts +0 -69
- package/dist/mjs/Color4.mjs +0 -260
- package/dist/mjs/Color4.test.d.ts +0 -1
- package/dist/mjs/math/Mat33.d.ts +0 -123
- package/dist/mjs/math/Mat33.mjs +0 -338
- package/dist/mjs/math/Mat33.test.d.ts +0 -1
- package/dist/mjs/math/Vec2.d.ts +0 -33
- package/dist/mjs/math/Vec2.mjs +0 -34
- package/dist/mjs/math/Vec2.test.d.ts +0 -1
- package/dist/mjs/math/Vec3.d.ts +0 -106
- package/dist/mjs/math/Vec3.mjs +0 -181
- package/dist/mjs/math/Vec3.test.d.ts +0 -1
- package/dist/mjs/math/lib.d.ts +0 -7
- package/dist/mjs/math/lib.mjs +0 -7
- package/dist/mjs/math/polynomial/solveQuadratic.d.ts +0 -9
- package/dist/mjs/math/polynomial/solveQuadratic.mjs +0 -37
- package/dist/mjs/math/polynomial/solveQuadratic.test.d.ts +0 -1
- package/dist/mjs/math/rounding.d.ts +0 -4
- package/dist/mjs/math/rounding.mjs +0 -133
- package/dist/mjs/math/rounding.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Abstract2DShape.d.ts +0 -49
- package/dist/mjs/math/shapes/Abstract2DShape.mjs +0 -40
- package/dist/mjs/math/shapes/BezierJSWrapper.d.ts +0 -36
- package/dist/mjs/math/shapes/BezierJSWrapper.mjs +0 -107
- package/dist/mjs/math/shapes/CubicBezier.d.ts +0 -17
- package/dist/mjs/math/shapes/CubicBezier.mjs +0 -48
- package/dist/mjs/math/shapes/LineSegment2.d.ts +0 -70
- package/dist/mjs/math/shapes/LineSegment2.mjs +0 -202
- package/dist/mjs/math/shapes/LineSegment2.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Path.d.ts +0 -93
- package/dist/mjs/math/shapes/Path.fromString.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Path.mjs +0 -862
- package/dist/mjs/math/shapes/Path.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Path.toString.test.d.ts +0 -1
- package/dist/mjs/math/shapes/PointShape2D.d.ts +0 -18
- package/dist/mjs/math/shapes/PointShape2D.mjs +0 -44
- package/dist/mjs/math/shapes/QuadraticBezier.d.ts +0 -34
- package/dist/mjs/math/shapes/QuadraticBezier.mjs +0 -131
- package/dist/mjs/math/shapes/QuadraticBezier.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Rect2.d.ts +0 -57
- package/dist/mjs/math/shapes/Rect2.mjs +0 -309
- package/dist/mjs/math/shapes/Rect2.test.d.ts +0 -1
- package/dist/mjs/math/shapes/Triangle.d.ts +0 -46
- package/dist/mjs/math/shapes/Triangle.mjs +0 -146
- package/dist/mjs/math/shapes/Triangle.test.d.ts +0 -1
- package/dist/mjs/toolbar/HTMLToolbar.d.ts +0 -105
- package/dist/mjs/toolbar/HTMLToolbar.mjs +0 -462
- package/dist/mjs/toolbar/makeColorInput.d.ts +0 -6
- package/src/Color4.test.ts +0 -47
- package/src/Color4.ts +0 -304
- package/src/Editor.css +0 -98
- package/src/math/Mat33.test.ts +0 -244
- package/src/math/Mat33.ts +0 -442
- package/src/math/Vec2.test.ts +0 -30
- package/src/math/Vec2.ts +0 -40
- package/src/math/Vec3.test.ts +0 -44
- package/src/math/Vec3.ts +0 -218
- package/src/math/lib.ts +0 -15
- package/src/math/polynomial/solveQuadratic.test.ts +0 -39
- package/src/math/polynomial/solveQuadratic.ts +0 -43
- package/src/math/rounding.test.ts +0 -65
- package/src/math/rounding.ts +0 -156
- package/src/math/shapes/Abstract2DShape.ts +0 -63
- package/src/math/shapes/BezierJSWrapper.ts +0 -93
- package/src/math/shapes/CubicBezier.ts +0 -35
- package/src/math/shapes/LineSegment2.test.ts +0 -99
- package/src/math/shapes/LineSegment2.ts +0 -231
- package/src/math/shapes/Path.fromString.test.ts +0 -223
- package/src/math/shapes/Path.test.ts +0 -309
- package/src/math/shapes/Path.toString.test.ts +0 -77
- package/src/math/shapes/Path.ts +0 -1027
- package/src/math/shapes/PointShape2D.ts +0 -33
- package/src/math/shapes/QuadraticBezier.test.ts +0 -31
- package/src/math/shapes/QuadraticBezier.ts +0 -141
- package/src/math/shapes/Rect2.test.ts +0 -209
- package/src/math/shapes/Rect2.ts +0 -344
- package/src/math/shapes/Triangle.test.ts +0 -61
- package/src/math/shapes/Triangle.ts +0 -139
- package/src/toolbar/HTMLToolbar.ts +0 -567
- package/src/toolbar/widgets/InsertImageWidget.css +0 -44
- package/src/tools/tools.css +0 -4
- /package/dist/cjs/{Color4.test.d.ts → Editor.test.d.ts} +0 -0
- /package/dist/cjs/{math/Mat33.test.d.ts → toolbar/EdgeToolbar.test.d.ts} +0 -0
- /package/dist/cjs/{math/Vec2.test.d.ts → tools/FindTool.test.d.ts} +0 -0
- /package/dist/cjs/{math/Vec3.test.d.ts → tools/InputFilter/InputPipeline.test.d.ts} +0 -0
- /package/dist/cjs/{math/polynomial/solveQuadratic.test.d.ts → util/ReactiveValue.test.d.ts} +0 -0
- /package/dist/cjs/{math/rounding.test.d.ts → version.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/LineSegment2.test.d.ts → mjs/Editor.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/Path.fromString.test.d.ts → mjs/toolbar/EdgeToolbar.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/Path.test.d.ts → mjs/toolbar/widgets/layout/types.mjs} +0 -0
- /package/dist/{cjs/math/shapes/Path.toString.test.d.ts → mjs/tools/FindTool.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/QuadraticBezier.test.d.ts → mjs/tools/InputFilter/InputPipeline.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/Rect2.test.d.ts → mjs/util/ReactiveValue.test.d.ts} +0 -0
- /package/dist/{cjs/math/shapes/Triangle.test.d.ts → mjs/version.test.d.ts} +0 -0
@@ -0,0 +1,40 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.isPointerEvt = exports.keyPressEventFromHTMLEvent = exports.keyUpEventFromHTMLEvent = exports.InputEvtType = void 0;
|
4
|
+
var InputEvtType;
|
5
|
+
(function (InputEvtType) {
|
6
|
+
InputEvtType[InputEvtType["PointerDownEvt"] = 0] = "PointerDownEvt";
|
7
|
+
InputEvtType[InputEvtType["PointerMoveEvt"] = 1] = "PointerMoveEvt";
|
8
|
+
InputEvtType[InputEvtType["PointerUpEvt"] = 2] = "PointerUpEvt";
|
9
|
+
InputEvtType[InputEvtType["GestureCancelEvt"] = 3] = "GestureCancelEvt";
|
10
|
+
InputEvtType[InputEvtType["WheelEvt"] = 4] = "WheelEvt";
|
11
|
+
InputEvtType[InputEvtType["KeyPressEvent"] = 5] = "KeyPressEvent";
|
12
|
+
InputEvtType[InputEvtType["KeyUpEvent"] = 6] = "KeyUpEvent";
|
13
|
+
InputEvtType[InputEvtType["CopyEvent"] = 7] = "CopyEvent";
|
14
|
+
InputEvtType[InputEvtType["PasteEvent"] = 8] = "PasteEvent";
|
15
|
+
})(InputEvtType || (exports.InputEvtType = InputEvtType = {}));
|
16
|
+
// Constructor
|
17
|
+
const keyEventFromHTMLEvent = (kind, event) => {
|
18
|
+
return {
|
19
|
+
kind,
|
20
|
+
key: event.key,
|
21
|
+
code: event.code,
|
22
|
+
ctrlKey: event.ctrlKey || event.metaKey,
|
23
|
+
altKey: event.altKey,
|
24
|
+
shiftKey: event.shiftKey,
|
25
|
+
};
|
26
|
+
};
|
27
|
+
const keyUpEventFromHTMLEvent = (event) => {
|
28
|
+
return keyEventFromHTMLEvent(InputEvtType.KeyUpEvent, event);
|
29
|
+
};
|
30
|
+
exports.keyUpEventFromHTMLEvent = keyUpEventFromHTMLEvent;
|
31
|
+
const keyPressEventFromHTMLEvent = (event) => {
|
32
|
+
return keyEventFromHTMLEvent(InputEvtType.KeyPressEvent, event);
|
33
|
+
};
|
34
|
+
exports.keyPressEventFromHTMLEvent = keyPressEventFromHTMLEvent;
|
35
|
+
const isPointerEvt = (event) => {
|
36
|
+
return event.kind === InputEvtType.PointerDownEvt
|
37
|
+
|| event.kind === InputEvtType.PointerMoveEvt
|
38
|
+
|| event.kind === InputEvtType.PointerUpEvt;
|
39
|
+
};
|
40
|
+
exports.isPointerEvt = isPointerEvt;
|
package/dist/cjs/lib.d.ts
CHANGED
@@ -3,8 +3,8 @@
|
|
3
3
|
* is available through the [`js-draw` package](https://www.npmjs.com/package/js-draw).
|
4
4
|
*
|
5
5
|
* @example
|
6
|
-
* ```
|
7
|
-
* import { Editor, Vec3, Mat33 } from 'js-draw';
|
6
|
+
* ```ts,runnable
|
7
|
+
* import { Editor, Vec3, Mat33, ToolbarWidgetTag } from 'js-draw';
|
8
8
|
*
|
9
9
|
* // Apply js-draw CSS
|
10
10
|
* import 'js-draw/styles';
|
@@ -14,8 +14,11 @@
|
|
14
14
|
* (async () => {
|
15
15
|
* const editor = new Editor(document.body);
|
16
16
|
* const toolbar = editor.addToolbar();
|
17
|
+
*
|
18
|
+
* // Increases the minimum height of the editor
|
17
19
|
* editor.getRootElement().style.height = '600px';
|
18
20
|
*
|
21
|
+
* // Loads from SVG data
|
19
22
|
* await editor.loadFromSVG(`
|
20
23
|
* <svg viewBox="0 0 500 500" width="500" height="500" version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg">
|
21
24
|
* <style id="js-draw-style-sheet">path{stroke-linecap:round;stroke-linejoin:round;}text{white-space:pre;}</style>
|
@@ -24,13 +27,19 @@
|
|
24
27
|
* </svg>
|
25
28
|
* `);
|
26
29
|
*
|
27
|
-
* toolbar.
|
28
|
-
*
|
29
|
-
*
|
30
|
-
* }, () => {
|
31
|
-
* const saveData = editor.toSVG().outerHTML;
|
30
|
+
* // Adding tags to a toolbar button allows different styles to be applied.
|
31
|
+
* // Also see addActionButton.
|
32
|
+
* const buttonLabels = [ ToolbarWidgetTag.Save ];
|
32
33
|
*
|
33
|
-
*
|
34
|
+
* toolbar.addSaveButton(() => {
|
35
|
+
* const saveData = editor.toSVG().outerHTML;
|
36
|
+
*
|
37
|
+
* // Do something with saveData
|
38
|
+
* });
|
39
|
+
*
|
40
|
+
* toolbar.addExitButton(() => {
|
41
|
+
* // Save/confirm exiting here?
|
42
|
+
* editor.remove();
|
34
43
|
* });
|
35
44
|
* })();
|
36
45
|
* ```
|
@@ -38,19 +47,19 @@
|
|
38
47
|
* @see
|
39
48
|
* {@link Editor}
|
40
49
|
* {@link Editor.loadFromSVG}
|
41
|
-
* {@link
|
50
|
+
* {@link AbstractToolbar.addActionButton }
|
42
51
|
*
|
43
52
|
* @packageDocumentation
|
44
53
|
*/
|
45
54
|
import Editor, { EditorSettings } from './Editor';
|
46
55
|
export { default as EditorImage } from './EditorImage';
|
47
56
|
export * from './types';
|
57
|
+
export * from './inputEvents';
|
48
58
|
export { default as getLocalizationTable, matchingLocalizationTable } from './localizations/getLocalizationTable';
|
49
59
|
export * from './localization';
|
50
|
-
export { default as Color4 } from './Color4';
|
51
60
|
export { default as SVGLoader } from './SVGLoader';
|
52
61
|
export { default as Viewport } from './Viewport';
|
53
|
-
export * from '
|
62
|
+
export * from '@js-draw/math';
|
54
63
|
export * from './components/lib';
|
55
64
|
export * from './commands/lib';
|
56
65
|
export * from './tools/lib';
|
@@ -60,7 +69,14 @@ export * from './testing/lib';
|
|
60
69
|
export * from './shortcuts/lib';
|
61
70
|
export { default as EventDispatcher } from './EventDispatcher';
|
62
71
|
export { default as Pointer, PointerDevice } from './Pointer';
|
63
|
-
export { default as HTMLToolbar } from './toolbar/HTMLToolbar';
|
64
72
|
export { default as UndoRedoHistory } from './UndoRedoHistory';
|
65
|
-
export {
|
73
|
+
export { default as __js_draw__version } from './version';
|
74
|
+
import AbstractToolbar from './toolbar/AbstractToolbar';
|
75
|
+
export { Editor, EditorSettings, AbstractToolbar,
|
76
|
+
/**
|
77
|
+
* Using the HTMLToolbar alias is deprecated. Use
|
78
|
+
* `AbstractToolbar` instead.
|
79
|
+
* @deprecated
|
80
|
+
*/
|
81
|
+
AbstractToolbar as HTMLToolbar, };
|
66
82
|
export default Editor;
|
package/dist/cjs/lib.js
CHANGED
@@ -4,8 +4,8 @@
|
|
4
4
|
* is available through the [`js-draw` package](https://www.npmjs.com/package/js-draw).
|
5
5
|
*
|
6
6
|
* @example
|
7
|
-
* ```
|
8
|
-
* import { Editor, Vec3, Mat33 } from 'js-draw';
|
7
|
+
* ```ts,runnable
|
8
|
+
* import { Editor, Vec3, Mat33, ToolbarWidgetTag } from 'js-draw';
|
9
9
|
*
|
10
10
|
* // Apply js-draw CSS
|
11
11
|
* import 'js-draw/styles';
|
@@ -15,8 +15,11 @@
|
|
15
15
|
* (async () => {
|
16
16
|
* const editor = new Editor(document.body);
|
17
17
|
* const toolbar = editor.addToolbar();
|
18
|
+
*
|
19
|
+
* // Increases the minimum height of the editor
|
18
20
|
* editor.getRootElement().style.height = '600px';
|
19
21
|
*
|
22
|
+
* // Loads from SVG data
|
20
23
|
* await editor.loadFromSVG(`
|
21
24
|
* <svg viewBox="0 0 500 500" width="500" height="500" version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg">
|
22
25
|
* <style id="js-draw-style-sheet">path{stroke-linecap:round;stroke-linejoin:round;}text{white-space:pre;}</style>
|
@@ -25,13 +28,19 @@
|
|
25
28
|
* </svg>
|
26
29
|
* `);
|
27
30
|
*
|
28
|
-
* toolbar.
|
29
|
-
*
|
30
|
-
*
|
31
|
-
*
|
32
|
-
*
|
31
|
+
* // Adding tags to a toolbar button allows different styles to be applied.
|
32
|
+
* // Also see addActionButton.
|
33
|
+
* const buttonLabels = [ ToolbarWidgetTag.Save ];
|
34
|
+
*
|
35
|
+
* toolbar.addSaveButton(() => {
|
36
|
+
* const saveData = editor.toSVG().outerHTML;
|
33
37
|
*
|
34
|
-
*
|
38
|
+
* // Do something with saveData
|
39
|
+
* });
|
40
|
+
*
|
41
|
+
* toolbar.addExitButton(() => {
|
42
|
+
* // Save/confirm exiting here?
|
43
|
+
* editor.remove();
|
35
44
|
* });
|
36
45
|
* })();
|
37
46
|
* ```
|
@@ -39,7 +48,7 @@
|
|
39
48
|
* @see
|
40
49
|
* {@link Editor}
|
41
50
|
* {@link Editor.loadFromSVG}
|
42
|
-
* {@link
|
51
|
+
* {@link AbstractToolbar.addActionButton }
|
43
52
|
*
|
44
53
|
* @packageDocumentation
|
45
54
|
*/
|
@@ -57,24 +66,26 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
57
66
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
58
67
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
59
68
|
};
|
69
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
70
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
71
|
+
};
|
60
72
|
Object.defineProperty(exports, "__esModule", { value: true });
|
61
|
-
exports.Editor = exports.
|
62
|
-
|
73
|
+
exports.HTMLToolbar = exports.AbstractToolbar = exports.Editor = exports.__js_draw__version = exports.UndoRedoHistory = exports.PointerDevice = exports.Pointer = exports.EventDispatcher = exports.Viewport = exports.SVGLoader = exports.matchingLocalizationTable = exports.getLocalizationTable = exports.EditorImage = void 0;
|
74
|
+
const Editor_1 = __importDefault(require("./Editor"));
|
63
75
|
exports.Editor = Editor_1.default;
|
64
76
|
var EditorImage_1 = require("./EditorImage");
|
65
|
-
Object.defineProperty(exports, "EditorImage", { enumerable: true, get: function () { return EditorImage_1.default; } });
|
77
|
+
Object.defineProperty(exports, "EditorImage", { enumerable: true, get: function () { return __importDefault(EditorImage_1).default; } });
|
66
78
|
__exportStar(require("./types"), exports);
|
79
|
+
__exportStar(require("./inputEvents"), exports);
|
67
80
|
var getLocalizationTable_1 = require("./localizations/getLocalizationTable");
|
68
|
-
Object.defineProperty(exports, "getLocalizationTable", { enumerable: true, get: function () { return getLocalizationTable_1.default; } });
|
81
|
+
Object.defineProperty(exports, "getLocalizationTable", { enumerable: true, get: function () { return __importDefault(getLocalizationTable_1).default; } });
|
69
82
|
Object.defineProperty(exports, "matchingLocalizationTable", { enumerable: true, get: function () { return getLocalizationTable_1.matchingLocalizationTable; } });
|
70
83
|
__exportStar(require("./localization"), exports);
|
71
|
-
var Color4_1 = require("./Color4");
|
72
|
-
Object.defineProperty(exports, "Color4", { enumerable: true, get: function () { return Color4_1.default; } });
|
73
84
|
var SVGLoader_1 = require("./SVGLoader");
|
74
|
-
Object.defineProperty(exports, "SVGLoader", { enumerable: true, get: function () { return SVGLoader_1.default; } });
|
85
|
+
Object.defineProperty(exports, "SVGLoader", { enumerable: true, get: function () { return __importDefault(SVGLoader_1).default; } });
|
75
86
|
var Viewport_1 = require("./Viewport");
|
76
|
-
Object.defineProperty(exports, "Viewport", { enumerable: true, get: function () { return Viewport_1.default; } });
|
77
|
-
__exportStar(require("
|
87
|
+
Object.defineProperty(exports, "Viewport", { enumerable: true, get: function () { return __importDefault(Viewport_1).default; } });
|
88
|
+
__exportStar(require("@js-draw/math"), exports);
|
78
89
|
__exportStar(require("./components/lib"), exports);
|
79
90
|
__exportStar(require("./commands/lib"), exports);
|
80
91
|
__exportStar(require("./tools/lib"), exports);
|
@@ -83,12 +94,16 @@ __exportStar(require("./rendering/lib"), exports);
|
|
83
94
|
__exportStar(require("./testing/lib"), exports);
|
84
95
|
__exportStar(require("./shortcuts/lib"), exports);
|
85
96
|
var EventDispatcher_1 = require("./EventDispatcher");
|
86
|
-
Object.defineProperty(exports, "EventDispatcher", { enumerable: true, get: function () { return EventDispatcher_1.default; } });
|
97
|
+
Object.defineProperty(exports, "EventDispatcher", { enumerable: true, get: function () { return __importDefault(EventDispatcher_1).default; } });
|
87
98
|
var Pointer_1 = require("./Pointer");
|
88
|
-
Object.defineProperty(exports, "Pointer", { enumerable: true, get: function () { return Pointer_1.default; } });
|
99
|
+
Object.defineProperty(exports, "Pointer", { enumerable: true, get: function () { return __importDefault(Pointer_1).default; } });
|
89
100
|
Object.defineProperty(exports, "PointerDevice", { enumerable: true, get: function () { return Pointer_1.PointerDevice; } });
|
90
|
-
var HTMLToolbar_1 = require("./toolbar/HTMLToolbar");
|
91
|
-
Object.defineProperty(exports, "HTMLToolbar", { enumerable: true, get: function () { return HTMLToolbar_1.default; } });
|
92
101
|
var UndoRedoHistory_1 = require("./UndoRedoHistory");
|
93
|
-
Object.defineProperty(exports, "UndoRedoHistory", { enumerable: true, get: function () { return UndoRedoHistory_1.default; } });
|
102
|
+
Object.defineProperty(exports, "UndoRedoHistory", { enumerable: true, get: function () { return __importDefault(UndoRedoHistory_1).default; } });
|
103
|
+
// @internal
|
104
|
+
var version_1 = require("./version");
|
105
|
+
Object.defineProperty(exports, "__js_draw__version", { enumerable: true, get: function () { return __importDefault(version_1).default; } });
|
106
|
+
const AbstractToolbar_1 = __importDefault(require("./toolbar/AbstractToolbar"));
|
107
|
+
exports.AbstractToolbar = AbstractToolbar_1.default;
|
108
|
+
exports.HTMLToolbar = AbstractToolbar_1.default;
|
94
109
|
exports.default = Editor_1.default;
|
package/dist/cjs/localization.js
CHANGED
@@ -1,24 +1,25 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
3
|
-
__assign = Object.assign || function(t) {
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5
|
-
s = arguments[i];
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
7
|
-
t[p] = s[p];
|
8
|
-
}
|
9
|
-
return t;
|
10
|
-
};
|
11
|
-
return __assign.apply(this, arguments);
|
12
|
-
};
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
3
|
exports.defaultEditorLocalization = void 0;
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
exports.defaultEditorLocalization =
|
4
|
+
const localization_1 = require("./commands/localization");
|
5
|
+
const localization_2 = require("./components/localization");
|
6
|
+
const localization_3 = require("./rendering/localization");
|
7
|
+
const localization_4 = require("./toolbar/localization");
|
8
|
+
const localization_5 = require("./tools/localization");
|
9
|
+
exports.defaultEditorLocalization = {
|
10
|
+
...localization_4.defaultToolbarLocalization,
|
11
|
+
...localization_5.defaultToolLocalization,
|
12
|
+
...localization_1.defaultCommandLocalization,
|
13
|
+
...localization_2.defaultComponentLocalization,
|
14
|
+
...localization_3.defaultTextRendererLocalization,
|
15
|
+
accessibilityInputInstructions: [
|
21
16
|
'Press "t" to read the contents of the viewport as text.',
|
22
17
|
'Use the arrow keys to move the viewport, click and drag to draw strokes.',
|
23
18
|
'Press "w" to zoom in and "s" to zoom out.',
|
24
|
-
].join(' '),
|
19
|
+
].join(' '),
|
20
|
+
loading: (percentage) => `Loading ${percentage}%...`,
|
21
|
+
imageEditor: 'Image Editor',
|
22
|
+
doneLoading: 'Done loading',
|
23
|
+
undoAnnouncement: (commandDescription) => `Undid ${commandDescription}`,
|
24
|
+
redoAnnouncement: (commandDescription) => `Redid ${commandDescription}`,
|
25
|
+
};
|
@@ -1,17 +1,121 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
3
|
-
__assign = Object.assign || function(t) {
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5
|
-
s = arguments[i];
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
7
|
-
t[p] = s[p];
|
8
|
-
}
|
9
|
-
return t;
|
10
|
-
};
|
11
|
-
return __assign.apply(this, arguments);
|
12
|
-
};
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
|
3
|
+
const localization_1 = require("../localization");
|
15
4
|
// German localization
|
16
|
-
|
5
|
+
const localization = {
|
6
|
+
...localization_1.defaultEditorLocalization,
|
7
|
+
pen: 'Stift',
|
8
|
+
eraser: 'Radierer',
|
9
|
+
select: 'Auswahl',
|
10
|
+
handTool: 'Verschieben',
|
11
|
+
zoom: 'Vergrößerung',
|
12
|
+
image: 'Bild',
|
13
|
+
inputAltText: 'Alt-Text: ',
|
14
|
+
chooseFile: 'Wähle Datei: ',
|
15
|
+
submit: 'Absenden',
|
16
|
+
cancel: 'Abbrechen',
|
17
|
+
resetView: 'Ansicht zurücksetzen',
|
18
|
+
thicknessLabel: 'Dicke: ',
|
19
|
+
colorLabel: 'Farbe: ',
|
20
|
+
fontLabel: 'Schriftart: ',
|
21
|
+
textSize: 'Größe: ',
|
22
|
+
resizeImageToSelection: 'Bildgröße an Auswahl anpassen',
|
23
|
+
deleteSelection: 'Auswahl löschen',
|
24
|
+
duplicateSelection: 'Auswahl duplizieren',
|
25
|
+
undo: 'Rückgängig',
|
26
|
+
redo: 'Wiederholen',
|
27
|
+
pickColorFromScreen: 'Farbe von Bildschirm auswählen',
|
28
|
+
clickToPickColorAnnouncement: 'Klicke auf den Bildschirm, um eine Farbe auszuwählen',
|
29
|
+
selectionToolKeyboardShortcuts: 'Auswahl-Werkzeug: Verwende die Pfeiltasten, um ausgewählte Elemente zu verschieben und ‚i‘ und ‚o‘, um ihre Größe zu ändern.',
|
30
|
+
touchPanning: 'Ansicht mit Touchscreen verschieben',
|
31
|
+
anyDevicePanning: 'Ansicht mit jedem Eingabegerät verschieben',
|
32
|
+
selectPenTip: 'Objekt-Typ: ',
|
33
|
+
roundedTipPen: 'Freihand',
|
34
|
+
flatTipPen: 'Stift (druckempfindlich)',
|
35
|
+
arrowPen: 'Pfeil',
|
36
|
+
linePen: 'Linie',
|
37
|
+
outlinedRectanglePen: 'Umrissenes Rechteck',
|
38
|
+
filledRectanglePen: 'Ausgefülltes Rechteck',
|
39
|
+
lockRotation: 'Sperre Rotation',
|
40
|
+
paste: 'Einfügen',
|
41
|
+
dropdownShown: (toolName) => `Dropdown-Menü für ${toolName} angezeigt`,
|
42
|
+
dropdownHidden: (toolName) => `Dropdown-Menü für ${toolName} versteckt`,
|
43
|
+
zoomLevel: (zoomPercent) => `Vergößerung: ${zoomPercent}%`,
|
44
|
+
colorChangedAnnouncement: (color) => `Farbe zu ${color} geändert`,
|
45
|
+
imageSize: (size, units) => `Bild-Größe: ${size} ${units}`,
|
46
|
+
imageLoadError: (message) => `Fehler beim Laden des Bildes: ${message}`,
|
47
|
+
errorImageHasZeroSize: 'Fehler: Bild hat Größe Null',
|
48
|
+
penTool: (penNumber) => `Stift ${penNumber}`,
|
49
|
+
selectionTool: 'Auswahl',
|
50
|
+
eraserTool: 'Radiergummi',
|
51
|
+
touchPanTool: 'Ansicht mit Touchscreen verschieben',
|
52
|
+
twoFingerPanZoomTool: 'Ansicht verschieben und vergrößern',
|
53
|
+
undoRedoTool: 'Rückgängig/Wiederholen',
|
54
|
+
rightClickDragPanTool: 'Rechtsklick-Ziehen',
|
55
|
+
pipetteTool: 'Farbe von Bildschirm auswählen',
|
56
|
+
keyboardPanZoom: 'Tastaturkürzel zum Verschieben/Vergrößern der Ansicht',
|
57
|
+
textTool: 'Text',
|
58
|
+
enterTextToInsert: 'Einzufügender Text',
|
59
|
+
changeTool: 'Wechsle Werkzeug',
|
60
|
+
pasteHandler: 'Copy-Paste-Handler',
|
61
|
+
findLabel: 'Finde',
|
62
|
+
toNextMatch: 'Nächstes',
|
63
|
+
closeDialog: 'Schließen',
|
64
|
+
findDialogShown: 'Finde-Dialog angezeigt',
|
65
|
+
findDialogHidden: 'Finde-Dialog versteckt',
|
66
|
+
focusedFoundText: (matchIdx, totalMatches) => `Sieh Treffer ${matchIdx} von ${totalMatches} an`,
|
67
|
+
toolEnabledAnnouncement: (toolName) => `${toolName} aktiviert`,
|
68
|
+
toolDisabledAnnouncement: (toolName) => `${toolName} deaktiviert`,
|
69
|
+
updatedViewport: 'Transformierte Ansicht',
|
70
|
+
transformedElements: (elemCount) => `${elemCount} Element${1 === elemCount ? '' : 'e'} transformiert`,
|
71
|
+
resizeOutputCommand: (newSize) => `Bildgröße auf ${newSize.w}x${newSize.h} geändert`,
|
72
|
+
addElementAction: (componentDescription) => `${componentDescription} hinzugefügt`,
|
73
|
+
eraseAction: (elemDescription, countErased) => `${countErased} ${elemDescription} gelöscht`,
|
74
|
+
duplicateAction: (elemDescription, countErased) => `${countErased} ${elemDescription} dupliziert`,
|
75
|
+
inverseOf: (actionDescription) => `${actionDescription} umgekehrt`,
|
76
|
+
elements: 'Elemente',
|
77
|
+
erasedNoElements: 'Nichts entfernt',
|
78
|
+
duplicatedNoElements: 'Nichts dupliziert',
|
79
|
+
rotatedBy: (degrees) => `${Math.abs(degrees)} Grad ${degrees < 0 ? 'im Uhrzeigersinn' : 'gegen den Uhrzeigersinn'} gedreht`,
|
80
|
+
movedLeft: 'Nacht links bewegt',
|
81
|
+
movedUp: 'Nacht oben bewegt',
|
82
|
+
movedDown: 'Nacht unten bewegt',
|
83
|
+
movedRight: 'Nacht rechts bewegt',
|
84
|
+
zoomedOut: 'Ansicht verkleinert',
|
85
|
+
zoomedIn: 'Ansicht vergrößert',
|
86
|
+
selectedElements: (count) => `${count} Element${1 === count ? '' : 'e'} ausgewählt`,
|
87
|
+
stroke: 'Strich',
|
88
|
+
svgObject: 'SVG-Objekt',
|
89
|
+
text: (text) => `Text-Objekt: ${text}`,
|
90
|
+
pathNodeCount: (count) => `Es gibt ${count} sichtbare Pfad-Objekte.`,
|
91
|
+
textNodeCount: (count) => `Es gibt ${count} sichtbare Text-Knotenpunkte.`,
|
92
|
+
textNode: (content) => `Text: ${content}`,
|
93
|
+
imageNodeCount: (nodeCount) => `Es gibt ${nodeCount} sichtbare Bild-Knoten.`,
|
94
|
+
imageNode: label => `Bild: ${label}`,
|
95
|
+
unlabeledImageNode: 'Bild ohne Label',
|
96
|
+
rerenderAsText: 'Als Text darstellen',
|
97
|
+
accessibilityInputInstructions: 'Drücke ‚t‘, um den Inhalt des Ansichtsfensters als Text zu lesen. Verwende die Pfeiltasten, um die Ansicht zu verschieben, und klicke und ziehe, um Striche zu zeichnen. Drücke ‚w‘ zum Vergrößern und ‚s‘ zum Verkleinern der Ansicht.',
|
98
|
+
loading: percentage => `Laden ${percentage}%...`,
|
99
|
+
doneLoading: 'Laden fertig',
|
100
|
+
imageEditor: 'Bild-Editor',
|
101
|
+
undoAnnouncement: (commandDescription) => `${commandDescription} rückgängig gemacht`,
|
102
|
+
redoAnnouncement: (commandDescription) => `${commandDescription} wiederholt`,
|
103
|
+
reformatSelection: 'Formatiere Auswahl',
|
104
|
+
documentProperties: 'Seite',
|
105
|
+
backgroundColor: 'Hintergrundfarbe: ',
|
106
|
+
imageWidthOption: 'Breite: ',
|
107
|
+
imageHeightOption: 'Höhe: ',
|
108
|
+
useGridOption: 'Gitter: ',
|
109
|
+
toggleOverflow: 'Mehr',
|
110
|
+
selectAllTool: 'Alle auswählen',
|
111
|
+
soundExplorer: 'Klangbasierte Bilderkundung',
|
112
|
+
disableAccessibilityExploreTool: 'Deaktiviere klangbasierte Erkundung',
|
113
|
+
enableAccessibilityExploreTool: 'Aktiviere klangbasierte Erkundung',
|
114
|
+
copied: (count, description) => `${count} ${description} kopiert`,
|
115
|
+
pasted: (count, description) => `${count} ${description} eingefügt`,
|
116
|
+
unionOf: (actionDescription, actionCount) => `Vereinigung: ${actionCount} ${actionDescription}`,
|
117
|
+
emptyBackground: 'Leerer Hintergrund',
|
118
|
+
filledBackgroundWithColor: (color) => `Gefüllter Hintergrund (${color})`,
|
119
|
+
restyledElement: (elementDescription) => `${elementDescription} umgestaltet`,
|
120
|
+
};
|
17
121
|
exports.default = localization;
|
@@ -1,17 +1,8 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
3
|
-
__assign = Object.assign || function(t) {
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5
|
-
s = arguments[i];
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
7
|
-
t[p] = s[p];
|
8
|
-
}
|
9
|
-
return t;
|
10
|
-
};
|
11
|
-
return __assign.apply(this, arguments);
|
12
|
-
};
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
|
3
|
+
const localization_1 = require("../localization");
|
15
4
|
// Default localizations are already in English.
|
16
|
-
|
5
|
+
const localization = {
|
6
|
+
...localization_1.defaultEditorLocalization,
|
7
|
+
};
|
17
8
|
exports.default = localization;
|
@@ -1,31 +1,70 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
3
|
-
__assign = Object.assign || function(t) {
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5
|
-
s = arguments[i];
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
7
|
-
t[p] = s[p];
|
8
|
-
}
|
9
|
-
return t;
|
10
|
-
};
|
11
|
-
return __assign.apply(this, arguments);
|
12
|
-
};
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
|
3
|
+
const localization_1 = require("../localization");
|
15
4
|
// A partial Spanish localization.
|
16
|
-
|
5
|
+
const localization = {
|
6
|
+
...localization_1.defaultEditorLocalization,
|
17
7
|
// Strings for the main editor interface
|
18
8
|
// (see src/localization.ts)
|
19
|
-
loading:
|
9
|
+
loading: (percentage) => `Cargando: ${percentage}%...`,
|
10
|
+
imageEditor: 'Editor de dibujos',
|
11
|
+
undoAnnouncement: (commandDescription) => `${commandDescription} fue deshecho`,
|
12
|
+
redoAnnouncement: (commandDescription) => `${commandDescription} fue rehecho`,
|
13
|
+
undo: 'Deshace',
|
14
|
+
redo: 'Rehace',
|
20
15
|
// Strings for the toolbar
|
21
16
|
// (see src/toolbar/localization.ts)
|
22
|
-
pen: 'Lapiz',
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
17
|
+
pen: 'Lapiz',
|
18
|
+
eraser: 'Borrador',
|
19
|
+
select: 'Selecciona',
|
20
|
+
thicknessLabel: 'Tamaño',
|
21
|
+
colorLabel: 'Color',
|
22
|
+
doneLoading: 'El cargado terminó',
|
23
|
+
fontLabel: 'Fuente: ',
|
24
|
+
anyDevicePanning: 'Mover la pantalla con todo dispotivo',
|
25
|
+
touchPanning: 'Mover la pantalla con un dedo',
|
26
|
+
touchPanTool: 'Instrumento de mover la pantalla con un dedo',
|
27
|
+
outlinedRectanglePen: 'Rectángulo con nada más que un borde',
|
28
|
+
filledRectanglePen: 'Rectángulo sin borde',
|
29
|
+
linePen: 'Línea',
|
30
|
+
arrowPen: 'Flecha',
|
31
|
+
roundedTipPen: 'Lapiz Redondeado',
|
32
|
+
selectPenTip: 'Forma de dibuja',
|
33
|
+
handTool: 'Mover',
|
34
|
+
zoom: 'Zoom',
|
35
|
+
resetView: 'Reiniciar vista',
|
36
|
+
resizeImageToSelection: 'Redimensionar la imagen a lo que está seleccionado',
|
37
|
+
deleteSelection: 'Borra la selección',
|
38
|
+
duplicateSelection: 'Duplica la selección',
|
39
|
+
pickColorFromScreen: 'Selecciona un color de la pantalla',
|
40
|
+
clickToPickColorAnnouncement: 'Haga un clic en la pantalla para seleccionar un color',
|
41
|
+
dropdownShown(toolName) {
|
42
|
+
return `Menú por ${toolName} es visible`;
|
43
|
+
},
|
44
|
+
dropdownHidden: function (toolName) {
|
45
|
+
return `Menú por ${toolName} fue ocultado`;
|
46
|
+
},
|
47
|
+
colorChangedAnnouncement: function (color) {
|
48
|
+
return `Color fue cambiado a ${color}`;
|
49
|
+
},
|
50
|
+
keyboardPanZoom: 'Mover la pantalla con el teclado',
|
51
|
+
penTool: function (penId) {
|
52
|
+
return `Lapiz ${penId}`;
|
53
|
+
},
|
54
|
+
selectionTool: 'Selecciona',
|
55
|
+
eraserTool: 'Borrador',
|
56
|
+
textTool: 'Texto',
|
57
|
+
enterTextToInsert: 'Entra texto',
|
58
|
+
textSize: 'Tamaño',
|
59
|
+
rerenderAsText: 'Redibuja la pantalla al texto',
|
60
|
+
lockRotation: 'Bloquea rotación',
|
61
|
+
image: 'Imagen',
|
62
|
+
imageSize: (size, units) => `Tamaño del imagen: ${size} ${units}`,
|
63
|
+
imageLoadError: (message) => `Error cargando imagen: ${message}`,
|
64
|
+
toggleOverflow: 'Más',
|
65
|
+
documentProperties: 'Fondo',
|
66
|
+
imageWidthOption: 'Ancho',
|
67
|
+
imageHeightOption: 'Alto',
|
68
|
+
backgroundColor: 'Color de fondo: '
|
69
|
+
};
|
31
70
|
exports.default = localization;
|
@@ -1,18 +1,21 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
6
|
exports.matchingLocalizationTable = exports.allLocales = void 0;
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
7
|
+
const localization_1 = require("../localization");
|
8
|
+
const de_1 = __importDefault(require("./de"));
|
9
|
+
const en_1 = __importDefault(require("./en"));
|
10
|
+
const es_1 = __importDefault(require("./es"));
|
8
11
|
exports.allLocales = {
|
9
12
|
de: de_1.default,
|
10
13
|
en: en_1.default,
|
11
14
|
es: es_1.default,
|
12
15
|
};
|
13
16
|
// [locale]: A string in the format languageCode_Region or just languageCode. For example, en_US.
|
14
|
-
|
15
|
-
|
17
|
+
const languageFromLocale = (locale) => {
|
18
|
+
const matches = /^(\w+)[_-](\w+)$/.exec(locale);
|
16
19
|
if (!matches) {
|
17
20
|
// If not in languageCode_region format, the locale should be the
|
18
21
|
// languageCode. Return that.
|
@@ -25,11 +28,10 @@ var languageFromLocale = function (locale) {
|
|
25
28
|
* the list of `userLocales`. If there is no matching language, returns
|
26
29
|
* `defaultLocalizationTable`.
|
27
30
|
*/
|
28
|
-
|
29
|
-
|
30
|
-
for (
|
31
|
-
|
32
|
-
var language = languageFromLocale(locale);
|
31
|
+
const matchingLocalizationTable = (userLocales, localizationTables, defaultLocalizationTable) => {
|
32
|
+
let prevLanguage;
|
33
|
+
for (const locale of userLocales) {
|
34
|
+
const language = languageFromLocale(locale);
|
33
35
|
// If the specific localization of the language is not available, but
|
34
36
|
// a localization for the language is,
|
35
37
|
if (prevLanguage && language !== prevLanguage) {
|
@@ -58,8 +60,8 @@ exports.matchingLocalizationTable = matchingLocalizationTable;
|
|
58
60
|
* Returns the default localization table if no appropriate localization
|
59
61
|
* exists.
|
60
62
|
*/
|
61
|
-
|
62
|
-
userLocales
|
63
|
+
const getLocalizationTable = (userLocales) => {
|
64
|
+
userLocales ??= navigator.languages;
|
63
65
|
return (0, exports.matchingLocalizationTable)(userLocales, exports.allLocales, localization_1.defaultEditorLocalization);
|
64
66
|
};
|
65
67
|
exports.default = getLocalizationTable;
|
@@ -1,8 +1,7 @@
|
|
1
1
|
import AbstractRenderer from './renderers/AbstractRenderer';
|
2
2
|
import { Editor } from '../Editor';
|
3
|
-
import { Point2 } from '
|
3
|
+
import { Point2, Color4 } from '@js-draw/math';
|
4
4
|
import RenderingCache from './caching/RenderingCache';
|
5
|
-
import Color4 from '../Color4';
|
6
5
|
export declare enum RenderingMode {
|
7
6
|
DummyRenderer = 0,
|
8
7
|
CanvasRenderer = 1
|