js-draw 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/.eslintrc.js +1 -0
  2. package/CHANGELOG.md +7 -0
  3. package/README.md +2 -2
  4. package/dist/bundle.js +1 -1
  5. package/dist/src/Color4.js +6 -2
  6. package/dist/src/Editor.d.ts +1 -0
  7. package/dist/src/Editor.js +19 -8
  8. package/dist/src/EditorImage.d.ts +8 -13
  9. package/dist/src/EditorImage.js +51 -29
  10. package/dist/src/Viewport.d.ts +9 -1
  11. package/dist/src/Viewport.js +3 -1
  12. package/dist/src/commands/Command.d.ts +9 -8
  13. package/dist/src/commands/Command.js +15 -14
  14. package/dist/src/commands/Duplicate.d.ts +14 -0
  15. package/dist/src/commands/Duplicate.js +34 -0
  16. package/dist/src/commands/Erase.d.ts +5 -2
  17. package/dist/src/commands/Erase.js +28 -9
  18. package/dist/src/commands/SerializableCommand.d.ts +13 -0
  19. package/dist/src/commands/SerializableCommand.js +28 -0
  20. package/dist/src/commands/localization.d.ts +2 -0
  21. package/dist/src/commands/localization.js +2 -0
  22. package/dist/src/components/AbstractComponent.d.ts +15 -2
  23. package/dist/src/components/AbstractComponent.js +122 -26
  24. package/dist/src/components/SVGGlobalAttributesObject.d.ts +6 -1
  25. package/dist/src/components/SVGGlobalAttributesObject.js +23 -1
  26. package/dist/src/components/Stroke.d.ts +5 -0
  27. package/dist/src/components/Stroke.js +32 -1
  28. package/dist/src/components/Text.d.ts +11 -4
  29. package/dist/src/components/Text.js +57 -3
  30. package/dist/src/components/UnknownSVGObject.d.ts +2 -0
  31. package/dist/src/components/UnknownSVGObject.js +12 -1
  32. package/dist/src/components/util/describeComponentList.d.ts +4 -0
  33. package/dist/src/components/util/describeComponentList.js +14 -0
  34. package/dist/src/geometry/Path.d.ts +4 -1
  35. package/dist/src/geometry/Path.js +4 -0
  36. package/dist/src/rendering/Display.d.ts +3 -0
  37. package/dist/src/rendering/Display.js +13 -0
  38. package/dist/src/rendering/RenderingStyle.d.ts +24 -0
  39. package/dist/src/rendering/RenderingStyle.js +32 -0
  40. package/dist/src/rendering/renderers/AbstractRenderer.d.ts +1 -8
  41. package/dist/src/rendering/renderers/AbstractRenderer.js +1 -6
  42. package/dist/src/rendering/renderers/CanvasRenderer.d.ts +2 -1
  43. package/dist/src/rendering/renderers/DummyRenderer.d.ts +2 -1
  44. package/dist/src/rendering/renderers/SVGRenderer.d.ts +2 -1
  45. package/dist/src/rendering/renderers/TextOnlyRenderer.d.ts +2 -1
  46. package/dist/src/toolbar/HTMLToolbar.d.ts +1 -1
  47. package/dist/src/toolbar/HTMLToolbar.js +52 -534
  48. package/dist/src/toolbar/icons.d.ts +5 -0
  49. package/dist/src/toolbar/icons.js +186 -13
  50. package/dist/src/toolbar/localization.d.ts +4 -0
  51. package/dist/src/toolbar/localization.js +4 -0
  52. package/dist/src/toolbar/makeColorInput.d.ts +5 -0
  53. package/dist/src/toolbar/makeColorInput.js +81 -0
  54. package/dist/src/toolbar/widgets/BaseToolWidget.d.ts +12 -0
  55. package/dist/src/toolbar/widgets/BaseToolWidget.js +44 -0
  56. package/dist/src/toolbar/widgets/BaseWidget.d.ts +32 -0
  57. package/dist/src/toolbar/widgets/BaseWidget.js +148 -0
  58. package/dist/src/toolbar/widgets/EraserWidget.d.ts +6 -0
  59. package/dist/src/toolbar/widgets/EraserWidget.js +14 -0
  60. package/dist/src/toolbar/widgets/HandToolWidget.d.ts +13 -0
  61. package/dist/src/toolbar/widgets/HandToolWidget.js +133 -0
  62. package/dist/src/toolbar/widgets/PenWidget.d.ts +20 -0
  63. package/dist/src/toolbar/widgets/PenWidget.js +131 -0
  64. package/dist/src/toolbar/widgets/SelectionWidget.d.ts +11 -0
  65. package/dist/src/toolbar/widgets/SelectionWidget.js +56 -0
  66. package/dist/src/toolbar/widgets/TextToolWidget.d.ts +13 -0
  67. package/dist/src/toolbar/widgets/TextToolWidget.js +72 -0
  68. package/dist/src/tools/Pen.js +1 -1
  69. package/dist/src/tools/PipetteTool.d.ts +20 -0
  70. package/dist/src/tools/PipetteTool.js +40 -0
  71. package/dist/src/tools/SelectionTool.d.ts +2 -0
  72. package/dist/src/tools/SelectionTool.js +41 -23
  73. package/dist/src/tools/TextTool.js +1 -1
  74. package/dist/src/tools/ToolController.d.ts +3 -1
  75. package/dist/src/tools/ToolController.js +4 -0
  76. package/dist/src/tools/localization.d.ts +2 -1
  77. package/dist/src/tools/localization.js +3 -2
  78. package/dist/src/types.d.ts +7 -2
  79. package/dist/src/types.js +1 -0
  80. package/jest.config.js +2 -0
  81. package/package.json +6 -6
  82. package/src/Color4.ts +9 -3
  83. package/src/Editor.ts +23 -11
  84. package/src/EditorImage.test.ts +4 -4
  85. package/src/EditorImage.ts +61 -20
  86. package/src/SVGLoader.ts +2 -1
  87. package/src/Viewport.ts +2 -1
  88. package/src/commands/Command.ts +21 -19
  89. package/src/commands/Duplicate.ts +49 -0
  90. package/src/commands/Erase.ts +34 -13
  91. package/src/commands/SerializableCommand.ts +41 -0
  92. package/src/commands/localization.ts +5 -0
  93. package/src/components/AbstractComponent.ts +168 -26
  94. package/src/components/SVGGlobalAttributesObject.ts +34 -2
  95. package/src/components/Stroke.test.ts +53 -0
  96. package/src/components/Stroke.ts +37 -2
  97. package/src/components/Text.test.ts +38 -0
  98. package/src/components/Text.ts +80 -5
  99. package/src/components/UnknownSVGObject.test.ts +10 -0
  100. package/src/components/UnknownSVGObject.ts +15 -1
  101. package/src/components/builders/FreehandLineBuilder.ts +2 -1
  102. package/src/components/util/describeComponentList.ts +18 -0
  103. package/src/geometry/Path.ts +8 -1
  104. package/src/rendering/Display.ts +17 -1
  105. package/src/rendering/RenderingStyle.test.ts +68 -0
  106. package/src/rendering/RenderingStyle.ts +46 -0
  107. package/src/rendering/caching/RenderingCache.test.ts +1 -1
  108. package/src/rendering/renderers/AbstractRenderer.ts +1 -15
  109. package/src/rendering/renderers/CanvasRenderer.ts +2 -1
  110. package/src/rendering/renderers/DummyRenderer.ts +2 -1
  111. package/src/rendering/renderers/SVGRenderer.ts +2 -1
  112. package/src/rendering/renderers/TextOnlyRenderer.ts +2 -1
  113. package/src/toolbar/HTMLToolbar.ts +58 -660
  114. package/src/toolbar/icons.ts +205 -13
  115. package/src/toolbar/localization.ts +10 -2
  116. package/src/toolbar/makeColorInput.ts +105 -0
  117. package/src/toolbar/toolbar.css +116 -78
  118. package/src/toolbar/widgets/BaseToolWidget.ts +53 -0
  119. package/src/toolbar/widgets/BaseWidget.ts +175 -0
  120. package/src/toolbar/widgets/EraserWidget.ts +16 -0
  121. package/src/toolbar/widgets/HandToolWidget.ts +186 -0
  122. package/src/toolbar/widgets/PenWidget.ts +165 -0
  123. package/src/toolbar/widgets/SelectionWidget.ts +72 -0
  124. package/src/toolbar/widgets/TextToolWidget.ts +90 -0
  125. package/src/tools/Pen.ts +1 -1
  126. package/src/tools/PipetteTool.ts +56 -0
  127. package/src/tools/SelectionTool.test.ts +2 -4
  128. package/src/tools/SelectionTool.ts +47 -27
  129. package/src/tools/TextTool.ts +1 -1
  130. package/src/tools/ToolController.ts +10 -6
  131. package/src/tools/UndoRedoShortcut.test.ts +1 -1
  132. package/src/tools/localization.ts +6 -3
  133. package/src/types.ts +12 -1
package/.eslintrc.js CHANGED
@@ -53,5 +53,6 @@ module.exports = {
53
53
  },
54
54
  'ignorePatterns': [
55
55
  '**/*.bundle.js',
56
+ 'dist/',
56
57
  ],
57
58
  };
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # 0.1.7
2
+ * Show the six most recent color selections in the color palette.
3
+ * Switch from checkboxes to togglebuttons in the dropdown for the hand tool.
4
+ * Adds a "duplicate selection" button.
5
+ * Add a pipette (select color from screen) tool.
6
+ * Make `Erase`, `Duplicate`, `AddElement`, `TransformElement` commands serializable.
7
+
1
8
  # 0.1.6
2
9
  * Fix loading text in SVG images in Chrome.
3
10
 
package/README.md CHANGED
@@ -36,8 +36,8 @@ const editor = new Editor(document.body);
36
36
  ### Without a bundler
37
37
  If you're not using a bundler, consider using the pre-bundled editor:
38
38
  ```html
39
- <!-- Replace 0.1.5 with the latest version of js-draw -->
40
- <script src="https://cdn.jsdelivr.net/npm/js-draw@0.1.5/dist/bundle.js"></script>
39
+ <!-- Replace 0.1.7 with the latest version of js-draw -->
40
+ <script src="https://cdn.jsdelivr.net/npm/js-draw@0.1.7/dist/bundle.js"></script>
41
41
  <script>
42
42
  const editor = new jsdraw.Editor(document.body);
43
43
  editor.addToolbar();