js-draw 0.0.3 → 0.0.6

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 (87) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +108 -0
  3. package/build_tools/BundledFile.ts +167 -0
  4. package/build_tools/bundle.ts +11 -0
  5. package/dist/build_tools/BundledFile.d.ts +13 -0
  6. package/dist/build_tools/BundledFile.js +157 -0
  7. package/dist/build_tools/bundle.d.ts +1 -0
  8. package/dist/build_tools/bundle.js +5 -0
  9. package/dist/bundle.js +1 -0
  10. package/dist/src/Display.js +4 -1
  11. package/dist/src/Editor.d.ts +9 -2
  12. package/dist/src/Editor.js +36 -7
  13. package/dist/src/EditorImage.d.ts +4 -2
  14. package/dist/src/EditorImage.js +29 -5
  15. package/dist/src/Pointer.js +1 -1
  16. package/dist/src/SVGLoader.js +3 -1
  17. package/dist/src/Viewport.d.ts +2 -2
  18. package/dist/src/bundle/bundled.d.ts +4 -0
  19. package/dist/src/bundle/bundled.js +5 -0
  20. package/dist/src/components/AbstractComponent.d.ts +1 -1
  21. package/dist/src/components/Stroke.d.ts +1 -1
  22. package/dist/src/components/Stroke.js +1 -1
  23. package/dist/src/components/UnknownSVGObject.d.ts +1 -1
  24. package/dist/src/components/builders/ArrowBuilder.d.ts +17 -0
  25. package/dist/src/components/builders/ArrowBuilder.js +83 -0
  26. package/dist/src/{StrokeBuilder.d.ts → components/builders/FreehandLineBuilder.d.ts} +9 -13
  27. package/dist/src/{StrokeBuilder.js → components/builders/FreehandLineBuilder.js} +42 -12
  28. package/dist/src/components/builders/LineBuilder.d.ts +16 -0
  29. package/dist/src/components/builders/LineBuilder.js +57 -0
  30. package/dist/src/components/builders/RectangleBuilder.d.ts +18 -0
  31. package/dist/src/components/builders/RectangleBuilder.js +41 -0
  32. package/dist/src/components/builders/types.d.ts +12 -0
  33. package/dist/src/components/builders/types.js +1 -0
  34. package/dist/src/geometry/Path.d.ts +1 -0
  35. package/dist/src/geometry/Path.js +43 -0
  36. package/dist/src/geometry/Vec3.d.ts +2 -0
  37. package/dist/src/geometry/Vec3.js +13 -0
  38. package/dist/src/localization.d.ts +1 -1
  39. package/dist/src/localization.js +2 -2
  40. package/dist/src/rendering/AbstractRenderer.js +3 -25
  41. package/dist/src/toolbar/HTMLToolbar.d.ts +5 -3
  42. package/dist/src/toolbar/HTMLToolbar.js +139 -30
  43. package/dist/src/toolbar/localization.d.ts +20 -0
  44. package/dist/src/toolbar/localization.js +19 -0
  45. package/dist/src/toolbar/types.d.ts +0 -13
  46. package/dist/src/tools/Pen.d.ts +13 -3
  47. package/dist/src/tools/Pen.js +37 -28
  48. package/dist/src/tools/SelectionTool.js +1 -1
  49. package/dist/src/tools/ToolController.js +3 -3
  50. package/dist/src/types.d.ts +14 -2
  51. package/dist/src/types.js +1 -0
  52. package/dist-test/test-dist-bundle.html +35 -0
  53. package/package.json +15 -5
  54. package/src/Display.ts +3 -1
  55. package/src/Editor.css +0 -1
  56. package/src/Editor.ts +62 -13
  57. package/src/EditorImage.test.ts +5 -3
  58. package/src/EditorImage.ts +31 -3
  59. package/src/Pointer.ts +1 -1
  60. package/src/SVGLoader.ts +5 -1
  61. package/src/Viewport.ts +1 -1
  62. package/src/bundle/bundled.ts +7 -0
  63. package/src/components/AbstractComponent.ts +1 -1
  64. package/src/components/Stroke.ts +2 -2
  65. package/src/components/UnknownSVGObject.ts +1 -1
  66. package/src/components/builders/ArrowBuilder.ts +104 -0
  67. package/src/{StrokeBuilder.ts → components/builders/FreehandLineBuilder.ts} +59 -22
  68. package/src/components/builders/LineBuilder.ts +75 -0
  69. package/src/components/builders/RectangleBuilder.ts +59 -0
  70. package/src/components/builders/types.ts +15 -0
  71. package/src/geometry/Path.fromString.test.ts +11 -24
  72. package/src/geometry/Path.ts +56 -0
  73. package/src/geometry/Vec2.test.ts +1 -0
  74. package/src/geometry/Vec3.test.ts +14 -0
  75. package/src/geometry/Vec3.ts +16 -0
  76. package/src/localization.ts +2 -3
  77. package/src/rendering/AbstractRenderer.ts +3 -32
  78. package/src/{editorStyles.js → styles.js} +0 -0
  79. package/src/toolbar/HTMLToolbar.ts +167 -39
  80. package/src/toolbar/localization.ts +44 -0
  81. package/src/toolbar/toolbar.css +12 -0
  82. package/src/toolbar/types.ts +0 -16
  83. package/src/tools/Pen.ts +56 -34
  84. package/src/tools/SelectionTool.test.ts +1 -1
  85. package/src/tools/SelectionTool.ts +1 -1
  86. package/src/tools/ToolController.ts +3 -3
  87. package/src/types.ts +16 -1
package/src/types.ts CHANGED
@@ -8,6 +8,7 @@ import BaseTool from './tools/BaseTool';
8
8
  import AbstractComponent from './components/AbstractComponent';
9
9
  import Rect2 from './geometry/Rect2';
10
10
  import Pointer from './Pointer';
11
+ import Color4 from './Color4';
11
12
 
12
13
 
13
14
  export interface PointerEvtListener {
@@ -74,6 +75,7 @@ export type InputEvt = KeyPressEvent | WheelEvt | GestureCancelEvt | PointerEvt;
74
75
 
75
76
  export type EditorNotifier = EventDispatcher<EditorEventType, EditorEventDataType>;
76
77
 
78
+
77
79
  export enum EditorEventType {
78
80
  ToolEnabled,
79
81
  ToolDisabled,
@@ -82,6 +84,7 @@ export enum EditorEventType {
82
84
  ObjectAdded,
83
85
  ViewportChanged,
84
86
  DisplayResized,
87
+ ColorPickerToggled,
85
88
  }
86
89
 
87
90
  type EditorToolEventType = EditorEventType.ToolEnabled
@@ -115,7 +118,12 @@ export interface EditorUndoStackUpdated {
115
118
  readonly redoStackSize: number;
116
119
  }
117
120
 
118
- export type EditorEventDataType = EditorToolEvent | EditorObjectEvent | EditorViewportChangedEvent | DisplayResizedEvent | EditorUndoStackUpdated;
121
+ export interface ColorPickerToggled {
122
+ readonly kind: EditorEventType.ColorPickerToggled;
123
+ readonly open: boolean;
124
+ }
125
+
126
+ export type EditorEventDataType = EditorToolEvent | EditorObjectEvent | EditorViewportChangedEvent | DisplayResizedEvent | EditorUndoStackUpdated | ColorPickerToggled;
119
127
 
120
128
 
121
129
  // Returns a Promise to indicate that the event source should pause until the Promise resolves.
@@ -131,3 +139,10 @@ export interface ImageLoader {
131
139
  onAddComponent: ComponentAddedListener, onProgressListener: OnProgressListener
132
140
  ): Promise<Rect2>;
133
141
  }
142
+
143
+ export interface StrokeDataPoint {
144
+ pos: Point2;
145
+ width: number;
146
+ time: number;
147
+ color: Color4;
148
+ }