@postermywall/fabricjs-2 6.4.2-pmw-22 → 6.4.2-pmw-24

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 (489) hide show
  1. package/.idea/codeStyles/Project.xml +2 -2
  2. package/.idea/fabricjs-2.iml +0 -10
  3. package/.idea/modules.xml +0 -8
  4. package/.idea/prettier.xml +0 -6
  5. package/.prettierrc +2 -1
  6. package/dist/extensions/aligning_guidelines/constant.min.mjs +0 -2
  7. package/dist/extensions/aligning_guidelines/constant.min.mjs.map +0 -1
  8. package/dist/extensions/aligning_guidelines/constant.mjs +0 -11
  9. package/dist/extensions/aligning_guidelines/constant.mjs.map +0 -1
  10. package/dist/extensions/aligning_guidelines/index.min.mjs +0 -2
  11. package/dist/extensions/aligning_guidelines/index.min.mjs.map +0 -1
  12. package/dist/extensions/aligning_guidelines/index.mjs +0 -189
  13. package/dist/extensions/aligning_guidelines/index.mjs.map +0 -1
  14. package/dist/extensions/aligning_guidelines/util/basic.min.mjs +0 -2
  15. package/dist/extensions/aligning_guidelines/util/basic.min.mjs.map +0 -1
  16. package/dist/extensions/aligning_guidelines/util/basic.mjs +0 -11
  17. package/dist/extensions/aligning_guidelines/util/basic.mjs.map +0 -1
  18. package/dist/extensions/aligning_guidelines/util/collect-line.min.mjs +0 -2
  19. package/dist/extensions/aligning_guidelines/util/collect-line.min.mjs.map +0 -1
  20. package/dist/extensions/aligning_guidelines/util/collect-line.mjs +0 -251
  21. package/dist/extensions/aligning_guidelines/util/collect-line.mjs.map +0 -1
  22. package/dist/extensions/aligning_guidelines/util/collect-point.min.mjs +0 -2
  23. package/dist/extensions/aligning_guidelines/util/collect-point.min.mjs.map +0 -1
  24. package/dist/extensions/aligning_guidelines/util/collect-point.mjs +0 -102
  25. package/dist/extensions/aligning_guidelines/util/collect-point.mjs.map +0 -1
  26. package/dist/extensions/aligning_guidelines/util/draw.min.mjs +0 -2
  27. package/dist/extensions/aligning_guidelines/util/draw.min.mjs.map +0 -1
  28. package/dist/extensions/aligning_guidelines/util/draw.mjs +0 -133
  29. package/dist/extensions/aligning_guidelines/util/draw.mjs.map +0 -1
  30. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.min.mjs +0 -2
  31. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.min.mjs.map +0 -1
  32. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.mjs +0 -100
  33. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.mjs.map +0 -1
  34. package/dist/extensions/aligning_guidelines/util/make.d.ts +0 -12
  35. package/dist/extensions/aligning_guidelines/util/make.d.ts.map +0 -1
  36. package/dist/index.js +2 -3
  37. package/dist/index.js.map +1 -1
  38. package/dist/index.min.js +1 -1
  39. package/dist/index.min.js.map +1 -1
  40. package/dist/index.min.mjs +1 -1
  41. package/dist/index.min.mjs.map +1 -1
  42. package/dist/index.mjs +2 -3
  43. package/dist/index.mjs.map +1 -1
  44. package/dist/index.node.cjs +2 -3
  45. package/dist/index.node.cjs.map +1 -1
  46. package/dist/index.node.mjs +2 -3
  47. package/dist/index.node.mjs.map +1 -1
  48. package/dist/package.json.min.mjs +1 -1
  49. package/dist/package.json.mjs +1 -1
  50. package/dist/src/shapes/Group.d.ts.map +1 -1
  51. package/dist/src/shapes/Object/Object.d.ts +0 -2
  52. package/dist/src/shapes/Object/Object.d.ts.map +1 -1
  53. package/dist/src/shapes/Object/Object.min.mjs +1 -1
  54. package/dist/src/shapes/Object/Object.min.mjs.map +1 -1
  55. package/dist/src/shapes/Object/Object.mjs +1 -2
  56. package/dist/src/shapes/Object/Object.mjs.map +1 -1
  57. package/dist-extensions/_virtual/_rollupPluginBabelHelpers.mjs +0 -73
  58. package/dist-extensions/_virtual/_rollupPluginBabelHelpers.mjs.map +0 -1
  59. package/dist-extensions/aligning_guidelines/constant.d.ts +0 -3
  60. package/dist-extensions/aligning_guidelines/constant.d.ts.map +0 -1
  61. package/dist-extensions/aligning_guidelines/index.d.ts +0 -5
  62. package/dist-extensions/aligning_guidelines/index.d.ts.map +0 -1
  63. package/dist-extensions/aligning_guidelines/typedefs.d.ts +0 -33
  64. package/dist-extensions/aligning_guidelines/typedefs.d.ts.map +0 -1
  65. package/dist-extensions/aligning_guidelines/util/basic.d.ts +0 -4
  66. package/dist-extensions/aligning_guidelines/util/basic.d.ts.map +0 -1
  67. package/dist-extensions/aligning_guidelines/util/collect-line.d.ts +0 -13
  68. package/dist-extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -1
  69. package/dist-extensions/aligning_guidelines/util/collect-point.d.ts +0 -20
  70. package/dist-extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -1
  71. package/dist-extensions/aligning_guidelines/util/collect-point.mjs +0 -102
  72. package/dist-extensions/aligning_guidelines/util/collect-point.mjs.map +0 -1
  73. package/dist-extensions/aligning_guidelines/util/draw.d.ts +0 -6
  74. package/dist-extensions/aligning_guidelines/util/draw.d.ts.map +0 -1
  75. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -3
  76. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -1
  77. package/dist-extensions/extensions/aligning_guidelines/constant.mjs +0 -12
  78. package/dist-extensions/extensions/aligning_guidelines/constant.mjs.map +0 -1
  79. package/dist-extensions/extensions/aligning_guidelines/index.mjs +0 -130
  80. package/dist-extensions/extensions/aligning_guidelines/index.mjs.map +0 -1
  81. package/dist-extensions/extensions/aligning_guidelines/util/basic.mjs +0 -11
  82. package/dist-extensions/extensions/aligning_guidelines/util/basic.mjs.map +0 -1
  83. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.mjs +0 -193
  84. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.mjs.map +0 -1
  85. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.mjs +0 -102
  86. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.mjs.map +0 -1
  87. package/dist-extensions/extensions/aligning_guidelines/util/draw.mjs +0 -79
  88. package/dist-extensions/extensions/aligning_guidelines/util/draw.mjs.map +0 -1
  89. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.mjs +0 -42
  90. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.mjs.map +0 -1
  91. package/dist-extensions/extensions/aligning_guidelines/util/make.d.ts +0 -12
  92. package/dist-extensions/extensions/aligning_guidelines/util/make.d.ts.map +0 -1
  93. package/dist-extensions/extensions/data_updaters/origins/index.mjs +0 -108
  94. package/dist-extensions/extensions/data_updaters/origins/index.mjs.map +0 -1
  95. package/dist-extensions/extensions/index.mjs +0 -3
  96. package/dist-extensions/extensions/index.mjs.map +0 -1
  97. package/dist-extensions/package.json.mjs +0 -4
  98. package/dist-extensions/package.json.mjs.map +0 -1
  99. package/dist-extensions/src/ClassRegistry.mjs +0 -52
  100. package/dist-extensions/src/ClassRegistry.mjs.map +0 -1
  101. package/dist-extensions/src/Collection.mjs +0 -337
  102. package/dist-extensions/src/Collection.mjs.map +0 -1
  103. package/dist-extensions/src/CommonMethods.mjs +0 -65
  104. package/dist-extensions/src/CommonMethods.mjs.map +0 -1
  105. package/dist-extensions/src/Intersection.mjs +0 -265
  106. package/dist-extensions/src/Intersection.mjs.map +0 -1
  107. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.mjs +0 -50
  108. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.mjs.map +0 -1
  109. package/dist-extensions/src/LayoutManager/LayoutManager.mjs +0 -263
  110. package/dist-extensions/src/LayoutManager/LayoutManager.mjs.map +0 -1
  111. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs +0 -71
  112. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs.map +0 -1
  113. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs +0 -22
  114. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs.map +0 -1
  115. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.mjs +0 -27
  116. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.mjs.map +0 -1
  117. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs +0 -97
  118. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs.map +0 -1
  119. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.mjs +0 -29
  120. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.mjs.map +0 -1
  121. package/dist-extensions/src/LayoutManager/constants.mjs +0 -9
  122. package/dist-extensions/src/LayoutManager/constants.mjs.map +0 -1
  123. package/dist-extensions/src/Observable.mjs +0 -159
  124. package/dist-extensions/src/Observable.mjs.map +0 -1
  125. package/dist-extensions/src/Pattern/Pattern.mjs +0 -186
  126. package/dist-extensions/src/Pattern/Pattern.mjs.map +0 -1
  127. package/dist-extensions/src/Point.mjs +0 -372
  128. package/dist-extensions/src/Point.mjs.map +0 -1
  129. package/dist-extensions/src/Shadow.mjs +0 -167
  130. package/dist-extensions/src/Shadow.mjs.map +0 -1
  131. package/dist-extensions/src/cache.mjs +0 -80
  132. package/dist-extensions/src/cache.mjs.map +0 -1
  133. package/dist-extensions/src/canvas/Canvas.mjs +0 -1348
  134. package/dist-extensions/src/canvas/Canvas.mjs.map +0 -1
  135. package/dist-extensions/src/canvas/CanvasOptions.mjs +0 -32
  136. package/dist-extensions/src/canvas/CanvasOptions.mjs.map +0 -1
  137. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.mjs +0 -133
  138. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.mjs.map +0 -1
  139. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs +0 -75
  140. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs.map +0 -1
  141. package/dist-extensions/src/canvas/DOMManagers/util.mjs +0 -76
  142. package/dist-extensions/src/canvas/DOMManagers/util.mjs.map +0 -1
  143. package/dist-extensions/src/canvas/SelectableCanvas.mjs +0 -1139
  144. package/dist-extensions/src/canvas/SelectableCanvas.mjs.map +0 -1
  145. package/dist-extensions/src/canvas/StaticCanvas.mjs +0 -1279
  146. package/dist-extensions/src/canvas/StaticCanvas.mjs.map +0 -1
  147. package/dist-extensions/src/canvas/StaticCanvasOptions.mjs +0 -26
  148. package/dist-extensions/src/canvas/StaticCanvasOptions.mjs.map +0 -1
  149. package/dist-extensions/src/canvas/TextEditingManager.mjs +0 -61
  150. package/dist-extensions/src/canvas/TextEditingManager.mjs.map +0 -1
  151. package/dist-extensions/src/color/Color.mjs +0 -320
  152. package/dist-extensions/src/color/Color.mjs.map +0 -1
  153. package/dist-extensions/src/color/color_map.mjs +0 -157
  154. package/dist-extensions/src/color/color_map.mjs.map +0 -1
  155. package/dist-extensions/src/color/constants.mjs +0 -115
  156. package/dist-extensions/src/color/constants.mjs.map +0 -1
  157. package/dist-extensions/src/color/util.mjs +0 -82
  158. package/dist-extensions/src/color/util.mjs.map +0 -1
  159. package/dist-extensions/src/config.mjs +0 -161
  160. package/dist-extensions/src/config.mjs.map +0 -1
  161. package/dist-extensions/src/constants.mjs +0 -42
  162. package/dist-extensions/src/constants.mjs.map +0 -1
  163. package/dist-extensions/src/controls/Control.mjs +0 -292
  164. package/dist-extensions/src/controls/Control.mjs.map +0 -1
  165. package/dist-extensions/src/controls/changeWidth.mjs +0 -36
  166. package/dist-extensions/src/controls/changeWidth.mjs.map +0 -1
  167. package/dist-extensions/src/controls/commonControls.mjs +0 -92
  168. package/dist-extensions/src/controls/commonControls.mjs.map +0 -1
  169. package/dist-extensions/src/controls/controlRendering.mjs +0 -91
  170. package/dist-extensions/src/controls/controlRendering.mjs.map +0 -1
  171. package/dist-extensions/src/controls/drag.mjs +0 -33
  172. package/dist-extensions/src/controls/drag.mjs.map +0 -1
  173. package/dist-extensions/src/controls/fireEvent.mjs +0 -17
  174. package/dist-extensions/src/controls/fireEvent.mjs.map +0 -1
  175. package/dist-extensions/src/controls/rotate.mjs +0 -73
  176. package/dist-extensions/src/controls/rotate.mjs.map +0 -1
  177. package/dist-extensions/src/controls/scale.mjs +0 -210
  178. package/dist-extensions/src/controls/scale.mjs.map +0 -1
  179. package/dist-extensions/src/controls/scaleSkew.mjs +0 -66
  180. package/dist-extensions/src/controls/scaleSkew.mjs.map +0 -1
  181. package/dist-extensions/src/controls/skew.mjs +0 -182
  182. package/dist-extensions/src/controls/skew.mjs.map +0 -1
  183. package/dist-extensions/src/controls/util.mjs +0 -103
  184. package/dist-extensions/src/controls/util.mjs.map +0 -1
  185. package/dist-extensions/src/controls/wrapWithFireEvent.mjs +0 -23
  186. package/dist-extensions/src/controls/wrapWithFireEvent.mjs.map +0 -1
  187. package/dist-extensions/src/controls/wrapWithFixedAnchor.mjs +0 -25
  188. package/dist-extensions/src/controls/wrapWithFixedAnchor.mjs.map +0 -1
  189. package/dist-extensions/src/env/browser.mjs +0 -19
  190. package/dist-extensions/src/env/browser.mjs.map +0 -1
  191. package/dist-extensions/src/env/index.mjs +0 -30
  192. package/dist-extensions/src/env/index.mjs.map +0 -1
  193. package/dist-extensions/src/filters/BaseFilter.mjs +0 -327
  194. package/dist-extensions/src/filters/BaseFilter.mjs.map +0 -1
  195. package/dist-extensions/src/filters/BlendColor.mjs +0 -150
  196. package/dist-extensions/src/filters/BlendColor.mjs.map +0 -1
  197. package/dist-extensions/src/filters/BlendImage.mjs +0 -186
  198. package/dist-extensions/src/filters/BlendImage.mjs.map +0 -1
  199. package/dist-extensions/src/filters/Blur.mjs +0 -158
  200. package/dist-extensions/src/filters/Blur.mjs.map +0 -1
  201. package/dist-extensions/src/filters/Brightness.mjs +0 -70
  202. package/dist-extensions/src/filters/Brightness.mjs.map +0 -1
  203. package/dist-extensions/src/filters/Canvas2dFilterBackend.mjs +0 -62
  204. package/dist-extensions/src/filters/Canvas2dFilterBackend.mjs.map +0 -1
  205. package/dist-extensions/src/filters/ColorMatrix.mjs +0 -100
  206. package/dist-extensions/src/filters/ColorMatrix.mjs.map +0 -1
  207. package/dist-extensions/src/filters/ColorMatrixFilters.mjs +0 -31
  208. package/dist-extensions/src/filters/ColorMatrixFilters.mjs.map +0 -1
  209. package/dist-extensions/src/filters/Composed.mjs +0 -67
  210. package/dist-extensions/src/filters/Composed.mjs.map +0 -1
  211. package/dist-extensions/src/filters/Contrast.mjs +0 -69
  212. package/dist-extensions/src/filters/Contrast.mjs.map +0 -1
  213. package/dist-extensions/src/filters/Convolute.mjs +0 -153
  214. package/dist-extensions/src/filters/Convolute.mjs.map +0 -1
  215. package/dist-extensions/src/filters/FilterBackend.mjs +0 -40
  216. package/dist-extensions/src/filters/FilterBackend.mjs.map +0 -1
  217. package/dist-extensions/src/filters/GLProbes/GLProbe.mjs +0 -4
  218. package/dist-extensions/src/filters/GLProbes/GLProbe.mjs.map +0 -1
  219. package/dist-extensions/src/filters/GLProbes/WebGLProbe.mjs +0 -43
  220. package/dist-extensions/src/filters/GLProbes/WebGLProbe.mjs.map +0 -1
  221. package/dist-extensions/src/filters/Gamma.mjs +0 -102
  222. package/dist-extensions/src/filters/Gamma.mjs.map +0 -1
  223. package/dist-extensions/src/filters/Grayscale.mjs +0 -80
  224. package/dist-extensions/src/filters/Grayscale.mjs.map +0 -1
  225. package/dist-extensions/src/filters/HueRotation.mjs +0 -63
  226. package/dist-extensions/src/filters/HueRotation.mjs.map +0 -1
  227. package/dist-extensions/src/filters/Invert.mjs +0 -80
  228. package/dist-extensions/src/filters/Invert.mjs.map +0 -1
  229. package/dist-extensions/src/filters/Noise.mjs +0 -71
  230. package/dist-extensions/src/filters/Noise.mjs.map +0 -1
  231. package/dist-extensions/src/filters/Pixelate.mjs +0 -80
  232. package/dist-extensions/src/filters/Pixelate.mjs.map +0 -1
  233. package/dist-extensions/src/filters/RemoveColor.mjs +0 -86
  234. package/dist-extensions/src/filters/RemoveColor.mjs.map +0 -1
  235. package/dist-extensions/src/filters/Resize.mjs +0 -433
  236. package/dist-extensions/src/filters/Resize.mjs.map +0 -1
  237. package/dist-extensions/src/filters/Saturation.mjs +0 -72
  238. package/dist-extensions/src/filters/Saturation.mjs.map +0 -1
  239. package/dist-extensions/src/filters/Vibrance.mjs +0 -74
  240. package/dist-extensions/src/filters/Vibrance.mjs.map +0 -1
  241. package/dist-extensions/src/filters/WebGLFilterBackend.mjs +0 -313
  242. package/dist-extensions/src/filters/WebGLFilterBackend.mjs.map +0 -1
  243. package/dist-extensions/src/filters/shaders/baseFilter.mjs +0 -6
  244. package/dist-extensions/src/filters/shaders/baseFilter.mjs.map +0 -1
  245. package/dist-extensions/src/filters/shaders/blendColor.mjs +0 -15
  246. package/dist-extensions/src/filters/shaders/blendColor.mjs.map +0 -1
  247. package/dist-extensions/src/filters/shaders/blendImage.mjs +0 -8
  248. package/dist-extensions/src/filters/shaders/blendImage.mjs.map +0 -1
  249. package/dist-extensions/src/filters/shaders/blur.mjs +0 -4
  250. package/dist-extensions/src/filters/shaders/blur.mjs.map +0 -1
  251. package/dist-extensions/src/filters/shaders/brightness.mjs +0 -4
  252. package/dist-extensions/src/filters/shaders/brightness.mjs.map +0 -1
  253. package/dist-extensions/src/filters/shaders/colorMatrix.mjs +0 -4
  254. package/dist-extensions/src/filters/shaders/colorMatrix.mjs.map +0 -1
  255. package/dist-extensions/src/filters/shaders/constrast.mjs +0 -4
  256. package/dist-extensions/src/filters/shaders/constrast.mjs.map +0 -1
  257. package/dist-extensions/src/filters/shaders/convolute.mjs +0 -13
  258. package/dist-extensions/src/filters/shaders/convolute.mjs.map +0 -1
  259. package/dist-extensions/src/filters/shaders/gamma.mjs +0 -4
  260. package/dist-extensions/src/filters/shaders/gamma.mjs.map +0 -1
  261. package/dist-extensions/src/filters/shaders/grayscale.mjs +0 -8
  262. package/dist-extensions/src/filters/shaders/grayscale.mjs.map +0 -1
  263. package/dist-extensions/src/filters/shaders/invert.mjs +0 -4
  264. package/dist-extensions/src/filters/shaders/invert.mjs.map +0 -1
  265. package/dist-extensions/src/filters/shaders/noise.mjs +0 -4
  266. package/dist-extensions/src/filters/shaders/noise.mjs.map +0 -1
  267. package/dist-extensions/src/filters/shaders/pixelate.mjs +0 -4
  268. package/dist-extensions/src/filters/shaders/pixelate.mjs.map +0 -1
  269. package/dist-extensions/src/filters/shaders/removeColor.mjs +0 -4
  270. package/dist-extensions/src/filters/shaders/removeColor.mjs.map +0 -1
  271. package/dist-extensions/src/filters/shaders/saturation.mjs +0 -4
  272. package/dist-extensions/src/filters/shaders/saturation.mjs.map +0 -1
  273. package/dist-extensions/src/filters/shaders/vibrance.mjs +0 -4
  274. package/dist-extensions/src/filters/shaders/vibrance.mjs.map +0 -1
  275. package/dist-extensions/src/filters/utils.mjs +0 -8
  276. package/dist-extensions/src/filters/utils.mjs.map +0 -1
  277. package/dist-extensions/src/gradient/Gradient.mjs +0 -321
  278. package/dist-extensions/src/gradient/Gradient.mjs.map +0 -1
  279. package/dist-extensions/src/gradient/constants.mjs +0 -15
  280. package/dist-extensions/src/gradient/constants.mjs.map +0 -1
  281. package/dist-extensions/src/gradient/parser/misc.mjs +0 -9
  282. package/dist-extensions/src/gradient/parser/misc.mjs.map +0 -1
  283. package/dist-extensions/src/gradient/parser/parseColorStops.mjs +0 -42
  284. package/dist-extensions/src/gradient/parser/parseColorStops.mjs.map +0 -1
  285. package/dist-extensions/src/gradient/parser/parseCoords.mjs +0 -65
  286. package/dist-extensions/src/gradient/parser/parseCoords.mjs.map +0 -1
  287. package/dist-extensions/src/parser/attributes.mjs +0 -10
  288. package/dist-extensions/src/parser/attributes.mjs.map +0 -1
  289. package/dist-extensions/src/parser/constants.mjs +0 -52
  290. package/dist-extensions/src/parser/constants.mjs.map +0 -1
  291. package/dist-extensions/src/parser/doesSomeParentMatch.mjs +0 -17
  292. package/dist-extensions/src/parser/doesSomeParentMatch.mjs.map +0 -1
  293. package/dist-extensions/src/parser/elementMatchesRule.mjs +0 -19
  294. package/dist-extensions/src/parser/elementMatchesRule.mjs.map +0 -1
  295. package/dist-extensions/src/parser/getGlobalStylesForElement.mjs +0 -20
  296. package/dist-extensions/src/parser/getGlobalStylesForElement.mjs.map +0 -1
  297. package/dist-extensions/src/parser/getSvgRegex.mjs +0 -6
  298. package/dist-extensions/src/parser/getSvgRegex.mjs.map +0 -1
  299. package/dist-extensions/src/parser/hasInvalidAncestor.mjs +0 -5
  300. package/dist-extensions/src/parser/hasInvalidAncestor.mjs.map +0 -1
  301. package/dist-extensions/src/parser/normalizeAttr.mjs +0 -9
  302. package/dist-extensions/src/parser/normalizeAttr.mjs.map +0 -1
  303. package/dist-extensions/src/parser/normalizeValue.mjs +0 -62
  304. package/dist-extensions/src/parser/normalizeValue.mjs.map +0 -1
  305. package/dist-extensions/src/parser/parseAttributes.mjs +0 -65
  306. package/dist-extensions/src/parser/parseAttributes.mjs.map +0 -1
  307. package/dist-extensions/src/parser/parseFontDeclaration.mjs +0 -42
  308. package/dist-extensions/src/parser/parseFontDeclaration.mjs.map +0 -1
  309. package/dist-extensions/src/parser/parsePointsAttribute.mjs +0 -32
  310. package/dist-extensions/src/parser/parsePointsAttribute.mjs.map +0 -1
  311. package/dist-extensions/src/parser/parseStyleAttribute.mjs +0 -26
  312. package/dist-extensions/src/parser/parseStyleAttribute.mjs.map +0 -1
  313. package/dist-extensions/src/parser/parseStyleObject.mjs +0 -18
  314. package/dist-extensions/src/parser/parseStyleObject.mjs.map +0 -1
  315. package/dist-extensions/src/parser/parseStyleString.mjs +0 -16
  316. package/dist-extensions/src/parser/parseStyleString.mjs.map +0 -1
  317. package/dist-extensions/src/parser/parseTransformAttribute.mjs +0 -90
  318. package/dist-extensions/src/parser/parseTransformAttribute.mjs.map +0 -1
  319. package/dist-extensions/src/parser/percent.mjs +0 -21
  320. package/dist-extensions/src/parser/percent.mjs.map +0 -1
  321. package/dist-extensions/src/parser/selectorMatches.mjs +0 -26
  322. package/dist-extensions/src/parser/selectorMatches.mjs.map +0 -1
  323. package/dist-extensions/src/parser/setStrokeFillOpacity.mjs +0 -38
  324. package/dist-extensions/src/parser/setStrokeFillOpacity.mjs.map +0 -1
  325. package/dist-extensions/src/shapes/ActiveSelection.mjs +0 -237
  326. package/dist-extensions/src/shapes/ActiveSelection.mjs.map +0 -1
  327. package/dist-extensions/src/shapes/Circle.mjs +0 -174
  328. package/dist-extensions/src/shapes/Circle.mjs.map +0 -1
  329. package/dist-extensions/src/shapes/Ellipse.mjs +0 -141
  330. package/dist-extensions/src/shapes/Ellipse.mjs.map +0 -1
  331. package/dist-extensions/src/shapes/Group.d.ts.map +1 -1
  332. package/dist-extensions/src/shapes/Group.mjs +0 -782
  333. package/dist-extensions/src/shapes/Group.mjs.map +0 -1
  334. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.mjs +0 -346
  335. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.mjs.map +0 -1
  336. package/dist-extensions/src/shapes/IText/IText.mjs +0 -616
  337. package/dist-extensions/src/shapes/IText/IText.mjs.map +0 -1
  338. package/dist-extensions/src/shapes/IText/ITextBehavior.mjs +0 -895
  339. package/dist-extensions/src/shapes/IText/ITextBehavior.mjs.map +0 -1
  340. package/dist-extensions/src/shapes/IText/ITextClickBehavior.mjs +0 -261
  341. package/dist-extensions/src/shapes/IText/ITextClickBehavior.mjs.map +0 -1
  342. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.mjs +0 -601
  343. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.mjs.map +0 -1
  344. package/dist-extensions/src/shapes/IText/constants.mjs +0 -52
  345. package/dist-extensions/src/shapes/IText/constants.mjs.map +0 -1
  346. package/dist-extensions/src/shapes/Image.mjs +0 -723
  347. package/dist-extensions/src/shapes/Image.mjs.map +0 -1
  348. package/dist-extensions/src/shapes/Line.mjs +0 -287
  349. package/dist-extensions/src/shapes/Line.mjs.map +0 -1
  350. package/dist-extensions/src/shapes/Object/AnimatableObject.d.ts +0 -33
  351. package/dist-extensions/src/shapes/Object/AnimatableObject.d.ts.map +0 -1
  352. package/dist-extensions/src/shapes/Object/FabricObject.mjs +0 -17
  353. package/dist-extensions/src/shapes/Object/FabricObject.mjs.map +0 -1
  354. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.mjs +0 -165
  355. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.mjs.map +0 -1
  356. package/dist-extensions/src/shapes/Object/InteractiveObject.mjs +0 -554
  357. package/dist-extensions/src/shapes/Object/InteractiveObject.mjs.map +0 -1
  358. package/dist-extensions/src/shapes/Object/Object.d.ts +0 -2
  359. package/dist-extensions/src/shapes/Object/Object.d.ts.map +1 -1
  360. package/dist-extensions/src/shapes/Object/Object.mjs +0 -1605
  361. package/dist-extensions/src/shapes/Object/Object.mjs.map +0 -1
  362. package/dist-extensions/src/shapes/Object/ObjectGeometry.mjs +0 -656
  363. package/dist-extensions/src/shapes/Object/ObjectGeometry.mjs.map +0 -1
  364. package/dist-extensions/src/shapes/Object/ObjectOrigin.d.ts +0 -96
  365. package/dist-extensions/src/shapes/Object/ObjectOrigin.d.ts.map +0 -1
  366. package/dist-extensions/src/shapes/Object/StackedObject.d.ts +0 -60
  367. package/dist-extensions/src/shapes/Object/StackedObject.d.ts.map +0 -1
  368. package/dist-extensions/src/shapes/Object/defaultValues.mjs +0 -87
  369. package/dist-extensions/src/shapes/Object/defaultValues.mjs.map +0 -1
  370. package/dist-extensions/src/shapes/Path.mjs +0 -319
  371. package/dist-extensions/src/shapes/Path.mjs.map +0 -1
  372. package/dist-extensions/src/shapes/Polygon.mjs +0 -16
  373. package/dist-extensions/src/shapes/Polygon.mjs.map +0 -1
  374. package/dist-extensions/src/shapes/Polyline.mjs +0 -351
  375. package/dist-extensions/src/shapes/Polyline.mjs.map +0 -1
  376. package/dist-extensions/src/shapes/Rect.mjs +0 -154
  377. package/dist-extensions/src/shapes/Rect.mjs.map +0 -1
  378. package/dist-extensions/src/shapes/Table.mjs +0 -281
  379. package/dist-extensions/src/shapes/Table.mjs.map +0 -1
  380. package/dist-extensions/src/shapes/Tabs.mjs +0 -23
  381. package/dist-extensions/src/shapes/Tabs.mjs.map +0 -1
  382. package/dist-extensions/src/shapes/Text/StyledText.mjs +0 -287
  383. package/dist-extensions/src/shapes/Text/StyledText.mjs.map +0 -1
  384. package/dist-extensions/src/shapes/Text/Text.mjs +0 -1449
  385. package/dist-extensions/src/shapes/Text/Text.mjs.map +0 -1
  386. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.mjs +0 -219
  387. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.mjs.map +0 -1
  388. package/dist-extensions/src/shapes/Text/constants.mjs +0 -67
  389. package/dist-extensions/src/shapes/Text/constants.mjs.map +0 -1
  390. package/dist-extensions/src/shapes/Textbox.mjs +0 -496
  391. package/dist-extensions/src/shapes/Textbox.mjs.map +0 -1
  392. package/dist-extensions/src/shapes/Triangle.mjs +0 -57
  393. package/dist-extensions/src/shapes/Triangle.mjs.map +0 -1
  394. package/dist-extensions/src/util/animation/AnimationBase.mjs +0 -128
  395. package/dist-extensions/src/util/animation/AnimationBase.mjs.map +0 -1
  396. package/dist-extensions/src/util/animation/AnimationFrameProvider.mjs +0 -11
  397. package/dist-extensions/src/util/animation/AnimationFrameProvider.mjs.map +0 -1
  398. package/dist-extensions/src/util/animation/AnimationRegistry.mjs +0 -55
  399. package/dist-extensions/src/util/animation/AnimationRegistry.mjs.map +0 -1
  400. package/dist-extensions/src/util/animation/ArrayAnimation.mjs +0 -27
  401. package/dist-extensions/src/util/animation/ArrayAnimation.mjs.map +0 -1
  402. package/dist-extensions/src/util/animation/ColorAnimation.mjs +0 -48
  403. package/dist-extensions/src/util/animation/ColorAnimation.mjs.map +0 -1
  404. package/dist-extensions/src/util/animation/ValueAnimation.mjs +0 -27
  405. package/dist-extensions/src/util/animation/ValueAnimation.mjs.map +0 -1
  406. package/dist-extensions/src/util/animation/animate.mjs +0 -48
  407. package/dist-extensions/src/util/animation/animate.mjs.map +0 -1
  408. package/dist-extensions/src/util/animation/easing.mjs +0 -15
  409. package/dist-extensions/src/util/animation/easing.mjs.map +0 -1
  410. package/dist-extensions/src/util/applyMixins.mjs +0 -14
  411. package/dist-extensions/src/util/applyMixins.mjs.map +0 -1
  412. package/dist-extensions/src/util/dom_event.mjs +0 -25
  413. package/dist-extensions/src/util/dom_event.mjs.map +0 -1
  414. package/dist-extensions/src/util/dom_misc.mjs +0 -51
  415. package/dist-extensions/src/util/dom_misc.mjs.map +0 -1
  416. package/dist-extensions/src/util/dom_style.mjs +0 -23
  417. package/dist-extensions/src/util/dom_style.mjs.map +0 -1
  418. package/dist-extensions/src/util/internals/cleanupSvgAttribute.mjs +0 -9
  419. package/dist-extensions/src/util/internals/cleanupSvgAttribute.mjs.map +0 -1
  420. package/dist-extensions/src/util/internals/cloneDeep.d.ts +0 -2
  421. package/dist-extensions/src/util/internals/cloneDeep.d.ts.map +0 -1
  422. package/dist-extensions/src/util/internals/cloneStyles.mjs +0 -15
  423. package/dist-extensions/src/util/internals/cloneStyles.mjs.map +0 -1
  424. package/dist-extensions/src/util/internals/console.mjs +0 -22
  425. package/dist-extensions/src/util/internals/console.mjs.map +0 -1
  426. package/dist-extensions/src/util/internals/findRight.mjs +0 -11
  427. package/dist-extensions/src/util/internals/findRight.mjs.map +0 -1
  428. package/dist-extensions/src/util/internals/ifNaN.mjs +0 -12
  429. package/dist-extensions/src/util/internals/ifNaN.mjs.map +0 -1
  430. package/dist-extensions/src/util/internals/index.d.ts +0 -5
  431. package/dist-extensions/src/util/internals/index.d.ts.map +0 -1
  432. package/dist-extensions/src/util/internals/removeFromArray.mjs +0 -17
  433. package/dist-extensions/src/util/internals/removeFromArray.mjs.map +0 -1
  434. package/dist-extensions/src/util/internals/uid.mjs +0 -5
  435. package/dist-extensions/src/util/internals/uid.mjs.map +0 -1
  436. package/dist-extensions/src/util/lang_string.mjs +0 -72
  437. package/dist-extensions/src/util/lang_string.mjs.map +0 -1
  438. package/dist-extensions/src/util/misc/boundingBoxFromPoints.mjs +0 -43
  439. package/dist-extensions/src/util/misc/boundingBoxFromPoints.mjs.map +0 -1
  440. package/dist-extensions/src/util/misc/capValue.mjs +0 -4
  441. package/dist-extensions/src/util/misc/capValue.mjs.map +0 -1
  442. package/dist-extensions/src/util/misc/cos.mjs +0 -26
  443. package/dist-extensions/src/util/misc/cos.mjs.map +0 -1
  444. package/dist-extensions/src/util/misc/dom.mjs +0 -36
  445. package/dist-extensions/src/util/misc/dom.mjs.map +0 -1
  446. package/dist-extensions/src/util/misc/findScaleTo.mjs +0 -22
  447. package/dist-extensions/src/util/misc/findScaleTo.mjs.map +0 -1
  448. package/dist-extensions/src/util/misc/isTransparent.mjs +0 -29
  449. package/dist-extensions/src/util/misc/isTransparent.mjs.map +0 -1
  450. package/dist-extensions/src/util/misc/matrix.mjs +0 -249
  451. package/dist-extensions/src/util/misc/matrix.mjs.map +0 -1
  452. package/dist-extensions/src/util/misc/objectEnlive.mjs +0 -145
  453. package/dist-extensions/src/util/misc/objectEnlive.mjs.map +0 -1
  454. package/dist-extensions/src/util/misc/objectTransforms.mjs +0 -92
  455. package/dist-extensions/src/util/misc/objectTransforms.mjs.map +0 -1
  456. package/dist-extensions/src/util/misc/pick.mjs +0 -26
  457. package/dist-extensions/src/util/misc/pick.mjs.map +0 -1
  458. package/dist-extensions/src/util/misc/planeChange.mjs +0 -86
  459. package/dist-extensions/src/util/misc/planeChange.mjs.map +0 -1
  460. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.mjs +0 -111
  461. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.mjs.map +0 -1
  462. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs +0 -230
  463. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs.map +0 -1
  464. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.mjs +0 -44
  465. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.mjs.map +0 -1
  466. package/dist-extensions/src/util/misc/projectStroke/index.mjs +0 -60
  467. package/dist-extensions/src/util/misc/projectStroke/index.mjs.map +0 -1
  468. package/dist-extensions/src/util/misc/radiansDegreesConversion.mjs +0 -18
  469. package/dist-extensions/src/util/misc/radiansDegreesConversion.mjs.map +0 -1
  470. package/dist-extensions/src/util/misc/resolveOrigin.mjs +0 -18
  471. package/dist-extensions/src/util/misc/resolveOrigin.mjs.map +0 -1
  472. package/dist-extensions/src/util/misc/sin.mjs +0 -28
  473. package/dist-extensions/src/util/misc/sin.mjs.map +0 -1
  474. package/dist-extensions/src/util/misc/svgParsing.mjs +0 -117
  475. package/dist-extensions/src/util/misc/svgParsing.mjs.map +0 -1
  476. package/dist-extensions/src/util/misc/textStyles.mjs +0 -106
  477. package/dist-extensions/src/util/misc/textStyles.mjs.map +0 -1
  478. package/dist-extensions/src/util/misc/toFixed.mjs +0 -10
  479. package/dist-extensions/src/util/misc/toFixed.mjs.map +0 -1
  480. package/dist-extensions/src/util/misc/vectors.mjs +0 -94
  481. package/dist-extensions/src/util/misc/vectors.mjs.map +0 -1
  482. package/dist-extensions/src/util/path/index.mjs +0 -716
  483. package/dist-extensions/src/util/path/index.mjs.map +0 -1
  484. package/dist-extensions/src/util/path/regex.mjs +0 -24
  485. package/dist-extensions/src/util/path/regex.mjs.map +0 -1
  486. package/dist-extensions/src/util/typeAssertions.mjs +0 -21
  487. package/dist-extensions/src/util/typeAssertions.mjs.map +0 -1
  488. package/package.json +1 -1
  489. package/src/shapes/Object/Object.ts +25 -32
@@ -9,7 +9,7 @@
9
9
  <option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
10
10
  <option name="USE_DOUBLE_QUOTES" value="false" />
11
11
  <option name="FORCE_QUOTE_STYlE" value="true" />
12
- <option name="ENFORCE_TRAILING_COMMA" value="Remove" />
12
+ <option name="ENFORCE_TRAILING_COMMA" value="WhenMultiline" />
13
13
  <option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
14
14
  <option name="SPACES_WITHIN_IMPORTS" value="true" />
15
15
  </JSCodeStyleSettings>
@@ -30,7 +30,7 @@
30
30
  <option name="SPACE_BEFORE_FUNCTION_LEFT_PARENTH" value="false" />
31
31
  <option name="USE_DOUBLE_QUOTES" value="false" />
32
32
  <option name="FORCE_QUOTE_STYlE" value="true" />
33
- <option name="ENFORCE_TRAILING_COMMA" value="Remove" />
33
+ <option name="ENFORCE_TRAILING_COMMA" value="WhenMultiline" />
34
34
  <option name="SPACES_WITHIN_OBJECT_LITERAL_BRACES" value="true" />
35
35
  <option name="SPACES_WITHIN_IMPORTS" value="true" />
36
36
  </TypeScriptCodeStyleSettings>
@@ -1,10 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <module type="WEB_MODULE" version="4">
3
- <component name="NewModuleRootManager">
4
- <content url="file://$MODULE_DIR$">
5
- <excludeFolder url="file://$MODULE_DIR$/dist" />
6
- </content>
7
- <orderEntry type="inheritedJdk" />
8
- <orderEntry type="sourceFolder" forTests="false" />
9
- </component>
10
- </module>
package/.idea/modules.xml CHANGED
@@ -1,8 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="ProjectModuleManager">
4
- <modules>
5
- <module fileurl="file://$PROJECT_DIR$/.idea/fabricjs-2.iml" filepath="$PROJECT_DIR$/.idea/fabricjs-2.iml" />
6
- </modules>
7
- </component>
8
- </project>
@@ -1,6 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="PrettierConfiguration">
4
- <option name="myConfigurationMode" value="AUTOMATIC" />
5
- </component>
6
- </project>
package/.prettierrc CHANGED
@@ -1,4 +1,5 @@
1
1
  {
2
2
  "tabWidth": 2,
3
- "singleQuote": true
3
+ "singleQuote": true,
4
+ "trailingComma": "all"
4
5
  }
@@ -1,2 +0,0 @@
1
- const o={margin:4,width:1,color:"rgb(255,0,0,0.9)"};export{o as aligningLineConfig};
2
- //# sourceMappingURL=constant.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constant.min.mjs","sources":["../../../extensions/aligning_guidelines/constant.ts"],"sourcesContent":["import type { AligningLineConfig } from './typedefs';\n\nexport const aligningLineConfig: AligningLineConfig = {\n /** At what distance from the shape does alignment begin? */\n margin: 4,\n /** Aligning line dimensions */\n width: 1,\n /** Aligning line color */\n color: 'rgb(255,0,0,0.9)',\n};\n"],"names":["aligningLineConfig","margin","width","color"],"mappings":"AAEO,MAAMA,EAAyC,CAEpDC,OAAQ,EAERC,MAAO,EAEPC,MAAO"}
@@ -1,11 +0,0 @@
1
- const aligningLineConfig = {
2
- /** At what distance from the shape does alignment begin? */
3
- margin: 4,
4
- /** Aligning line dimensions */
5
- width: 1,
6
- /** Aligning line color */
7
- color: 'rgb(255,0,0,0.9)'
8
- };
9
-
10
- export { aligningLineConfig };
11
- //# sourceMappingURL=constant.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constant.mjs","sources":["../../../extensions/aligning_guidelines/constant.ts"],"sourcesContent":["import type { AligningLineConfig } from './typedefs';\n\nexport const aligningLineConfig: AligningLineConfig = {\n /** At what distance from the shape does alignment begin? */\n margin: 4,\n /** Aligning line dimensions */\n width: 1,\n /** Aligning line color */\n color: 'rgb(255,0,0,0.9)',\n};\n"],"names":["aligningLineConfig","margin","width","color"],"mappings":"AAEO,MAAMA,kBAAsC,GAAG;AACpD;AACAC,EAAAA,MAAM,EAAE,CAAC;AACT;AACAC,EAAAA,KAAK,EAAE,CAAC;AACR;AACAC,EAAAA,KAAK,EAAE,kBAAA;AACT;;;;"}
@@ -1,2 +0,0 @@
1
- import"../../src/config.min.mjs";import"../../src/cache.min.mjs";import"../../src/util/animation/AnimationRegistry.min.mjs";import{collectVerticalPoint as t,collectHorizontalPoint as r}from"./util/collect-point.min.mjs";import{drawPointList as s,drawVerticalLine as i,drawHorizontalLine as e}from"./util/draw.min.mjs";import{getObjectsByTarget as m}from"./util/get-objects-by-target.min.mjs";import{collectLine as o}from"./util/collect-line.min.mjs";import{aligningLineConfig as n}from"./constant.min.mjs";import"../../src/canvas/StaticCanvas.min.mjs";import{Point as c}from"../../src/Point.min.mjs";import{makeBoundingBoxFromPoints as a}from"../../src/util/misc/boundingBoxFromPoints.min.mjs";import"../../src/canvas/SelectableCanvas.min.mjs";import"../../src/util/misc/vectors.min.mjs";import"../../src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs";import"../../src/shapes/Group.min.mjs";import"../../src/util/path/regex.min.mjs";import"../../src/parser/constants.min.mjs";import"../../src/gradient/Gradient.min.mjs";import"../../src/Pattern/Pattern.min.mjs";import"../../src/Shadow.min.mjs";import"../../src/shapes/Path.min.mjs";import"../../src/shapes/Circle.min.mjs";import"../../src/shapes/Rect.min.mjs";import"../../src/shapes/Object/FabricObject.min.mjs";import"../../src/shapes/Object/Object.min.mjs";import"../../src/shapes/Object/InteractiveObject.min.mjs";import"../../src/shapes/Line.min.mjs";import"../../src/shapes/Triangle.min.mjs";import"../../src/shapes/Ellipse.min.mjs";import"../../src/shapes/Polyline.min.mjs";import"../../src/shapes/Polygon.min.mjs";import"../../src/shapes/Tabs.min.mjs";import"../../src/shapes/Table.min.mjs";import"../../src/shapes/Text/Text.min.mjs";import"../../src/shapes/IText/IText.min.mjs";import"../../src/shapes/Textbox.min.mjs";import"../../src/LayoutManager/LayoutManager.min.mjs";import"../../src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs";import"../../src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs";import"../../src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs";import"../../src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs";import"../../src/shapes/ActiveSelection.min.mjs";import"../../src/shapes/Image.min.mjs";import"../../src/parser/hasInvalidAncestor.min.mjs";import"../../src/parser/parseTransformAttribute.min.mjs";import"../../src/filters/BaseFilter.min.mjs";import"../../src/filters/BlendColor.min.mjs";import"../../src/filters/BlendImage.min.mjs";import"../../src/filters/Blur.min.mjs";import"../../src/filters/Brightness.min.mjs";import"../../src/filters/ColorMatrix.min.mjs";import"../../src/filters/ColorMatrixFilters.min.mjs";import"../../src/filters/Composed.min.mjs";import"../../src/filters/Contrast.min.mjs";import"../../src/filters/Convolute.min.mjs";import"../../src/filters/Gamma.min.mjs";import"../../src/filters/Grayscale.min.mjs";import"../../src/filters/HueRotation.min.mjs";import"../../src/filters/Invert.min.mjs";import"../../src/filters/Noise.min.mjs";import"../../src/filters/Pixelate.min.mjs";import"../../src/filters/RemoveColor.min.mjs";import"../../src/filters/Resize.min.mjs";import"../../src/filters/Saturation.min.mjs";import"../../src/filters/Vibrance.min.mjs";function p(p){let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.assign(n,l);const j=new Set,f=new Set;let g=!1;const u=new Map,h=t=>{const r=[t.calcTransformMatrix().toString(),t.width,t.height].join(),s=u.get(r);if(s)return s;const i=t.getCoords(),e=[a(i),i];return u.set(r,e),e};function b(t){const r=t.target;r.setCoords(),g=!1,f.clear(),j.clear();const s=m(r),i=r.getBoundingRect();for(const t of s){const s=h(t)[0],{vLines:e,hLines:m}=o({activeObject:r,activeObjectRect:i,objectRect:s});e.forEach((t=>{f.add(JSON.stringify(t))})),m.forEach((t=>{j.add(JSON.stringify(t))}))}}function d(s){const i=s.target;i.setCoords();const e=String(s.transform.action).startsWith("scale");f.clear(),j.clear();const o=m(i);let n=s.transform.corner;i.flipX&&(n=n.replace("l","r").replace("r","l")),i.flipY&&(n=n.replace("t","b").replace("b","t"));let a=["tl","tr","br","bl","mt","mr","mb","ml"].indexOf(n);if(-1==a)return;if(g=a>3,g){if(i.getTotalAngle()%90!=0)return;a-=4}let p=i.getCoords()[a];for(const s of o){const[m,o]=h(s),n={activeObject:i,point:p,list:[...o,new c(m.left+m.width/2,m.top+m.height/2)],isScale:e,index:a},l=t(n),g=r(n);l.forEach((t=>{f.add(JSON.stringify(t))})),g.forEach((t=>{j.add(JSON.stringify(t))})),(l.length||g.length)&&(p=i.getCoords()[a])}}function S(){p.clearContext(p.contextTop)}function y(){if(g){const t=[];for(const r of f)t.push(JSON.parse(r));for(const r of j)t.push(JSON.parse(r));s(p,t)}else{for(const t of f)i(p,JSON.parse(t));for(const t of j)e(p,JSON.parse(t))}}function O(){f.clear(),j.clear(),u.clear(),p.requestRenderAll()}return p.on("object:resizing",d),p.on("object:scaling",d),p.on("object:moving",b),p.on("before:render",S),p.on("after:render",y),p.on("mouse:up",O),()=>{p.off("object:resizing",d),p.off("object:scaling",d),p.off("object:moving",b),p.off("before:render",S),p.off("after:render",y),p.off("mouse:up",O)}}export{p as initAligningGuidelines};
2
- //# sourceMappingURL=index.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.min.mjs","sources":["../../../extensions/aligning_guidelines/index.ts"],"sourcesContent":["import type {\n BasicTransformEvent,\n Canvas,\n FabricObject,\n TBBox,\n TPointerEvent,\n} from '@postermywall/fabricjs-2';\nimport { Point, util } from '@postermywall/fabricjs-2';\nimport {\n collectHorizontalPoint,\n collectVerticalPoint,\n} from './util/collect-point';\nimport {\n drawHorizontalLine,\n drawPointList,\n drawVerticalLine,\n} from './util/draw';\nimport { getObjectsByTarget } from './util/get-objects-by-target';\nimport { collectLine } from './util/collect-line';\nimport type {\n AligningLineConfig,\n HorizontalLine,\n VerticalLine,\n} from './typedefs';\nimport { aligningLineConfig } from './constant';\n\ntype TransformEvent = BasicTransformEvent<TPointerEvent> & {\n target: FabricObject;\n};\n\nexport type { AligningLineConfig } from './typedefs';\n\nexport function initAligningGuidelines(\n canvas: Canvas,\n options: Partial<AligningLineConfig> = {},\n) {\n Object.assign(aligningLineConfig, options);\n\n const horizontalLines = new Set<string>();\n const verticalLines = new Set<string>();\n let onlyDrawPoint = false;\n const cacheMap = new Map<string, [TBBox, Point[]]>();\n\n const getCaCheMapValue = (object: FabricObject) => {\n const cacheKey = [\n object.calcTransformMatrix().toString(),\n object.width,\n object.height,\n ].join();\n const cacheValue = cacheMap.get(cacheKey);\n if (cacheValue) return cacheValue;\n const coords = object.getCoords();\n const rect = util.makeBoundingBoxFromPoints(coords);\n const value: [TBBox, Point[]] = [rect, coords];\n cacheMap.set(cacheKey, value);\n return value;\n };\n\n function moving(e: TransformEvent) {\n const activeObject = e.target;\n activeObject.setCoords();\n onlyDrawPoint = false;\n verticalLines.clear();\n horizontalLines.clear();\n\n const objects = getObjectsByTarget(activeObject);\n const activeObjectRect = activeObject.getBoundingRect();\n\n for (const object of objects) {\n const objectRect = getCaCheMapValue(object)[0];\n const { vLines, hLines } = collectLine({\n activeObject,\n activeObjectRect,\n objectRect,\n });\n vLines.forEach((o) => {\n verticalLines.add(JSON.stringify(o));\n });\n hLines.forEach((o) => {\n horizontalLines.add(JSON.stringify(o));\n });\n }\n }\n\n function scalingOrResizing(e: TransformEvent) {\n // br bl tr tl mb ml mt mr\n const activeObject = e.target;\n activeObject.setCoords();\n const isScale = String(e.transform.action).startsWith('scale');\n verticalLines.clear();\n horizontalLines.clear();\n\n const objects = getObjectsByTarget(activeObject);\n let corner = e.transform.corner;\n if (activeObject.flipX) corner = corner.replace('l', 'r').replace('r', 'l');\n if (activeObject.flipY) corner = corner.replace('t', 'b').replace('b', 't');\n let index = ['tl', 'tr', 'br', 'bl', 'mt', 'mr', 'mb', 'ml'].indexOf(\n corner,\n );\n if (index == -1) return;\n onlyDrawPoint = index > 3;\n if (onlyDrawPoint) {\n const angle = activeObject.getTotalAngle();\n if (angle % 90 != 0) return;\n index -= 4;\n }\n let point = activeObject.getCoords()[index];\n for (const object of objects) {\n const [rect, coords] = getCaCheMapValue(object);\n const center = new Point(\n rect.left + rect.width / 2,\n rect.top + rect.height / 2,\n );\n const list = [...coords, center];\n const props = { activeObject, point, list, isScale, index };\n const vLines = collectVerticalPoint(props);\n const hLines = collectHorizontalPoint(props);\n vLines.forEach((o) => {\n verticalLines.add(JSON.stringify(o));\n });\n hLines.forEach((o) => {\n horizontalLines.add(JSON.stringify(o));\n });\n if (vLines.length || hLines.length)\n point = activeObject.getCoords()[index];\n }\n }\n\n function beforeRender() {\n canvas.clearContext(canvas.contextTop);\n }\n function afterRender() {\n if (onlyDrawPoint) {\n const list: Array<VerticalLine | HorizontalLine> = [];\n for (const v of verticalLines) list.push(JSON.parse(v));\n for (const h of horizontalLines) list.push(JSON.parse(h));\n drawPointList(canvas, list);\n } else {\n for (const v of verticalLines) drawVerticalLine(canvas, JSON.parse(v));\n for (const h of horizontalLines)\n drawHorizontalLine(canvas, JSON.parse(h));\n }\n }\n function mouseUp() {\n verticalLines.clear();\n horizontalLines.clear();\n cacheMap.clear();\n canvas.requestRenderAll();\n }\n\n canvas.on('object:resizing', scalingOrResizing);\n canvas.on('object:scaling', scalingOrResizing);\n canvas.on('object:moving', moving);\n canvas.on('before:render', beforeRender);\n canvas.on('after:render', afterRender);\n canvas.on('mouse:up', mouseUp);\n\n return () => {\n canvas.off('object:resizing', scalingOrResizing);\n canvas.off('object:scaling', scalingOrResizing);\n canvas.off('object:moving', moving);\n canvas.off('before:render', beforeRender);\n canvas.off('after:render', afterRender);\n canvas.off('mouse:up', mouseUp);\n };\n}\n"],"names":["initAligningGuidelines","canvas","options","arguments","length","undefined","Object","assign","aligningLineConfig","horizontalLines","Set","verticalLines","onlyDrawPoint","cacheMap","Map","getCaCheMapValue","object","cacheKey","calcTransformMatrix","toString","width","height","join","cacheValue","get","coords","getCoords","value","util","set","moving","e","activeObject","target","setCoords","clear","objects","getObjectsByTarget","activeObjectRect","getBoundingRect","objectRect","vLines","hLines","collectLine","forEach","o","add","JSON","stringify","scalingOrResizing","isScale","String","transform","action","startsWith","corner","flipX","replace","flipY","index","indexOf","getTotalAngle","point","rect","props","list","Point","left","top","collectVerticalPoint","collectHorizontalPoint","beforeRender","clearContext","contextTop","afterRender","v","push","parse","h","drawPointList","drawVerticalLine","drawHorizontalLine","mouseUp","requestRenderAll","on","off"],"mappings":"soGAgCO,SAASA,EACdC,GAEA,IADAC,EAAoCC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,CAAA,EAEvCG,OAAOC,OAAOC,EAAoBN,GAElC,MAAMO,EAAkB,IAAIC,IACtBC,EAAgB,IAAID,IAC1B,IAAIE,GAAgB,EACpB,MAAMC,EAAW,IAAIC,IAEfC,EAAoBC,IACxB,MAAMC,EAAW,CACfD,EAAOE,sBAAsBC,WAC7BH,EAAOI,MACPJ,EAAOK,QACPC,OACIC,EAAaV,EAASW,IAAIP,GAChC,GAAIM,EAAY,OAAOA,EACvB,MAAME,EAAST,EAAOU,YAEhBC,EAA0B,CADnBC,EAA+BH,GACLA,GAEvC,OADAZ,EAASgB,IAAIZ,EAAUU,GAChBA,CAAK,EAGd,SAASG,EAAOC,GACd,MAAMC,EAAeD,EAAEE,OACvBD,EAAaE,YACbtB,GAAgB,EAChBD,EAAcwB,QACd1B,EAAgB0B,QAEhB,MAAMC,EAAUC,EAAmBL,GAC7BM,EAAmBN,EAAaO,kBAEtC,IAAK,MAAMvB,KAAUoB,EAAS,CAC5B,MAAMI,EAAazB,EAAiBC,GAAQ,IACtCyB,OAAEA,EAAMC,OAAEA,GAAWC,EAAY,CACrCX,eACAM,mBACAE,eAEFC,EAAOG,SAASC,IACdlC,EAAcmC,IAAIC,KAAKC,UAAUH,GAAG,IAEtCH,EAAOE,SAASC,IACdpC,EAAgBqC,IAAIC,KAAKC,UAAUH,GAAG,GAE1C,CACF,CAEA,SAASI,EAAkBlB,GAEzB,MAAMC,EAAeD,EAAEE,OACvBD,EAAaE,YACb,MAAMgB,EAAUC,OAAOpB,EAAEqB,UAAUC,QAAQC,WAAW,SACtD3C,EAAcwB,QACd1B,EAAgB0B,QAEhB,MAAMC,EAAUC,EAAmBL,GACnC,IAAIuB,EAASxB,EAAEqB,UAAUG,OACrBvB,EAAawB,QAAOD,EAASA,EAAOE,QAAQ,IAAK,KAAKA,QAAQ,IAAK,MACnEzB,EAAa0B,QAAOH,EAASA,EAAOE,QAAQ,IAAK,KAAKA,QAAQ,IAAK,MACvE,IAAIE,EAAQ,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAMC,QAC3DL,GAEF,IAAc,GAAVI,EAAa,OAEjB,GADA/C,EAAgB+C,EAAQ,EACpB/C,EAAe,CAEjB,GADcoB,EAAa6B,gBACf,IAAM,EAAG,OACrBF,GAAS,CACX,CACA,IAAIG,EAAQ9B,EAAaN,YAAYiC,GACrC,IAAK,MAAM3C,KAAUoB,EAAS,CAC5B,MAAO2B,EAAMtC,GAAUV,EAAiBC,GAMlCgD,EAAQ,CAAEhC,eAAc8B,QAAOG,KADxB,IAAIxC,EAJF,IAAIyC,EACjBH,EAAKI,KAAOJ,EAAK3C,MAAQ,EACzB2C,EAAKK,IAAML,EAAK1C,OAAS,IAGgB6B,UAASS,SAC9ClB,EAAS4B,EAAqBL,GAC9BtB,EAAS4B,EAAuBN,GACtCvB,EAAOG,SAASC,IACdlC,EAAcmC,IAAIC,KAAKC,UAAUH,GAAG,IAEtCH,EAAOE,SAASC,IACdpC,EAAgBqC,IAAIC,KAAKC,UAAUH,GAAG,KAEpCJ,EAAOrC,QAAUsC,EAAOtC,UAC1B0D,EAAQ9B,EAAaN,YAAYiC,GACrC,CACF,CAEA,SAASY,IACPtE,EAAOuE,aAAavE,EAAOwE,WAC7B,CACA,SAASC,IACP,GAAI9D,EAAe,CACjB,MAAMqD,EAA6C,GACnD,IAAK,MAAMU,KAAKhE,EAAesD,EAAKW,KAAK7B,KAAK8B,MAAMF,IACpD,IAAK,MAAMG,KAAKrE,EAAiBwD,EAAKW,KAAK7B,KAAK8B,MAAMC,IACtDC,EAAc9E,EAAQgE,EACxB,KAAO,CACL,IAAK,MAAMU,KAAKhE,EAAeqE,EAAiB/E,EAAQ8C,KAAK8B,MAAMF,IACnE,IAAK,MAAMG,KAAKrE,EACdwE,EAAmBhF,EAAQ8C,KAAK8B,MAAMC,GAC1C,CACF,CACA,SAASI,IACPvE,EAAcwB,QACd1B,EAAgB0B,QAChBtB,EAASsB,QACTlC,EAAOkF,kBACT,CASA,OAPAlF,EAAOmF,GAAG,kBAAmBnC,GAC7BhD,EAAOmF,GAAG,iBAAkBnC,GAC5BhD,EAAOmF,GAAG,gBAAiBtD,GAC3B7B,EAAOmF,GAAG,gBAAiBb,GAC3BtE,EAAOmF,GAAG,eAAgBV,GAC1BzE,EAAOmF,GAAG,WAAYF,GAEf,KACLjF,EAAOoF,IAAI,kBAAmBpC,GAC9BhD,EAAOoF,IAAI,iBAAkBpC,GAC7BhD,EAAOoF,IAAI,gBAAiBvD,GAC5B7B,EAAOoF,IAAI,gBAAiBd,GAC5BtE,EAAOoF,IAAI,eAAgBX,GAC3BzE,EAAOoF,IAAI,WAAYH,EAAQ,CAEnC"}
@@ -1,189 +0,0 @@
1
- import '../../src/config.mjs';
2
- import '../../src/cache.mjs';
3
- import '../../src/util/animation/AnimationRegistry.mjs';
4
- import { collectVerticalPoint, collectHorizontalPoint } from './util/collect-point.mjs';
5
- import { drawPointList, drawVerticalLine, drawHorizontalLine } from './util/draw.mjs';
6
- import { getObjectsByTarget } from './util/get-objects-by-target.mjs';
7
- import { collectLine } from './util/collect-line.mjs';
8
- import { aligningLineConfig } from './constant.mjs';
9
- import '../../src/canvas/StaticCanvas.mjs';
10
- import { Point } from '../../src/Point.mjs';
11
- import { makeBoundingBoxFromPoints } from '../../src/util/misc/boundingBoxFromPoints.mjs';
12
- import '../../src/canvas/SelectableCanvas.mjs';
13
- import '../../src/util/misc/vectors.mjs';
14
- import '../../src/util/misc/projectStroke/StrokeLineJoinProjections.mjs';
15
- import '../../src/shapes/Group.mjs';
16
- import '../../src/util/path/regex.mjs';
17
- import '../../src/parser/constants.mjs';
18
- import '../../src/gradient/Gradient.mjs';
19
- import '../../src/Pattern/Pattern.mjs';
20
- import '../../src/Shadow.mjs';
21
- import '../../src/shapes/Path.mjs';
22
- import '../../src/shapes/Circle.mjs';
23
- import '../../src/shapes/Rect.mjs';
24
- import '../../src/shapes/Object/FabricObject.mjs';
25
- import '../../src/shapes/Object/Object.mjs';
26
- import '../../src/shapes/Object/InteractiveObject.mjs';
27
- import '../../src/shapes/Line.mjs';
28
- import '../../src/shapes/Triangle.mjs';
29
- import '../../src/shapes/Ellipse.mjs';
30
- import '../../src/shapes/Polyline.mjs';
31
- import '../../src/shapes/Polygon.mjs';
32
- import '../../src/shapes/Tabs.mjs';
33
- import '../../src/shapes/Table.mjs';
34
- import '../../src/shapes/Text/Text.mjs';
35
- import '../../src/shapes/IText/IText.mjs';
36
- import '../../src/shapes/Textbox.mjs';
37
- import '../../src/LayoutManager/LayoutManager.mjs';
38
- import '../../src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs';
39
- import '../../src/LayoutManager/LayoutStrategies/FitContentLayout.mjs';
40
- import '../../src/LayoutManager/LayoutStrategies/FixedLayout.mjs';
41
- import '../../src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs';
42
- import '../../src/shapes/ActiveSelection.mjs';
43
- import '../../src/shapes/Image.mjs';
44
- import '../../src/parser/hasInvalidAncestor.mjs';
45
- import '../../src/parser/parseTransformAttribute.mjs';
46
- import '../../src/filters/BaseFilter.mjs';
47
- import '../../src/filters/BlendColor.mjs';
48
- import '../../src/filters/BlendImage.mjs';
49
- import '../../src/filters/Blur.mjs';
50
- import '../../src/filters/Brightness.mjs';
51
- import '../../src/filters/ColorMatrix.mjs';
52
- import '../../src/filters/ColorMatrixFilters.mjs';
53
- import '../../src/filters/Composed.mjs';
54
- import '../../src/filters/Contrast.mjs';
55
- import '../../src/filters/Convolute.mjs';
56
- import '../../src/filters/Gamma.mjs';
57
- import '../../src/filters/Grayscale.mjs';
58
- import '../../src/filters/HueRotation.mjs';
59
- import '../../src/filters/Invert.mjs';
60
- import '../../src/filters/Noise.mjs';
61
- import '../../src/filters/Pixelate.mjs';
62
- import '../../src/filters/RemoveColor.mjs';
63
- import '../../src/filters/Resize.mjs';
64
- import '../../src/filters/Saturation.mjs';
65
- import '../../src/filters/Vibrance.mjs';
66
-
67
- function initAligningGuidelines(canvas) {
68
- let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
69
- Object.assign(aligningLineConfig, options);
70
- const horizontalLines = new Set();
71
- const verticalLines = new Set();
72
- let onlyDrawPoint = false;
73
- const cacheMap = new Map();
74
- const getCaCheMapValue = object => {
75
- const cacheKey = [object.calcTransformMatrix().toString(), object.width, object.height].join();
76
- const cacheValue = cacheMap.get(cacheKey);
77
- if (cacheValue) return cacheValue;
78
- const coords = object.getCoords();
79
- const rect = makeBoundingBoxFromPoints(coords);
80
- const value = [rect, coords];
81
- cacheMap.set(cacheKey, value);
82
- return value;
83
- };
84
- function moving(e) {
85
- const activeObject = e.target;
86
- activeObject.setCoords();
87
- onlyDrawPoint = false;
88
- verticalLines.clear();
89
- horizontalLines.clear();
90
- const objects = getObjectsByTarget(activeObject);
91
- const activeObjectRect = activeObject.getBoundingRect();
92
- for (const object of objects) {
93
- const objectRect = getCaCheMapValue(object)[0];
94
- const {
95
- vLines,
96
- hLines
97
- } = collectLine({
98
- activeObject,
99
- activeObjectRect,
100
- objectRect
101
- });
102
- vLines.forEach(o => {
103
- verticalLines.add(JSON.stringify(o));
104
- });
105
- hLines.forEach(o => {
106
- horizontalLines.add(JSON.stringify(o));
107
- });
108
- }
109
- }
110
- function scalingOrResizing(e) {
111
- // br bl tr tl mb ml mt mr
112
- const activeObject = e.target;
113
- activeObject.setCoords();
114
- const isScale = String(e.transform.action).startsWith('scale');
115
- verticalLines.clear();
116
- horizontalLines.clear();
117
- const objects = getObjectsByTarget(activeObject);
118
- let corner = e.transform.corner;
119
- if (activeObject.flipX) corner = corner.replace('l', 'r').replace('r', 'l');
120
- if (activeObject.flipY) corner = corner.replace('t', 'b').replace('b', 't');
121
- let index = ['tl', 'tr', 'br', 'bl', 'mt', 'mr', 'mb', 'ml'].indexOf(corner);
122
- if (index == -1) return;
123
- onlyDrawPoint = index > 3;
124
- if (onlyDrawPoint) {
125
- const angle = activeObject.getTotalAngle();
126
- if (angle % 90 != 0) return;
127
- index -= 4;
128
- }
129
- let point = activeObject.getCoords()[index];
130
- for (const object of objects) {
131
- const [rect, coords] = getCaCheMapValue(object);
132
- const center = new Point(rect.left + rect.width / 2, rect.top + rect.height / 2);
133
- const list = [...coords, center];
134
- const props = {
135
- activeObject,
136
- point,
137
- list,
138
- isScale,
139
- index
140
- };
141
- const vLines = collectVerticalPoint(props);
142
- const hLines = collectHorizontalPoint(props);
143
- vLines.forEach(o => {
144
- verticalLines.add(JSON.stringify(o));
145
- });
146
- hLines.forEach(o => {
147
- horizontalLines.add(JSON.stringify(o));
148
- });
149
- if (vLines.length || hLines.length) point = activeObject.getCoords()[index];
150
- }
151
- }
152
- function beforeRender() {
153
- canvas.clearContext(canvas.contextTop);
154
- }
155
- function afterRender() {
156
- if (onlyDrawPoint) {
157
- const list = [];
158
- for (const v of verticalLines) list.push(JSON.parse(v));
159
- for (const h of horizontalLines) list.push(JSON.parse(h));
160
- drawPointList(canvas, list);
161
- } else {
162
- for (const v of verticalLines) drawVerticalLine(canvas, JSON.parse(v));
163
- for (const h of horizontalLines) drawHorizontalLine(canvas, JSON.parse(h));
164
- }
165
- }
166
- function mouseUp() {
167
- verticalLines.clear();
168
- horizontalLines.clear();
169
- cacheMap.clear();
170
- canvas.requestRenderAll();
171
- }
172
- canvas.on('object:resizing', scalingOrResizing);
173
- canvas.on('object:scaling', scalingOrResizing);
174
- canvas.on('object:moving', moving);
175
- canvas.on('before:render', beforeRender);
176
- canvas.on('after:render', afterRender);
177
- canvas.on('mouse:up', mouseUp);
178
- return () => {
179
- canvas.off('object:resizing', scalingOrResizing);
180
- canvas.off('object:scaling', scalingOrResizing);
181
- canvas.off('object:moving', moving);
182
- canvas.off('before:render', beforeRender);
183
- canvas.off('after:render', afterRender);
184
- canvas.off('mouse:up', mouseUp);
185
- };
186
- }
187
-
188
- export { initAligningGuidelines };
189
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../extensions/aligning_guidelines/index.ts"],"sourcesContent":["import type {\n BasicTransformEvent,\n Canvas,\n FabricObject,\n TBBox,\n TPointerEvent,\n} from '@postermywall/fabricjs-2';\nimport { Point, util } from '@postermywall/fabricjs-2';\nimport {\n collectHorizontalPoint,\n collectVerticalPoint,\n} from './util/collect-point';\nimport {\n drawHorizontalLine,\n drawPointList,\n drawVerticalLine,\n} from './util/draw';\nimport { getObjectsByTarget } from './util/get-objects-by-target';\nimport { collectLine } from './util/collect-line';\nimport type {\n AligningLineConfig,\n HorizontalLine,\n VerticalLine,\n} from './typedefs';\nimport { aligningLineConfig } from './constant';\n\ntype TransformEvent = BasicTransformEvent<TPointerEvent> & {\n target: FabricObject;\n};\n\nexport type { AligningLineConfig } from './typedefs';\n\nexport function initAligningGuidelines(\n canvas: Canvas,\n options: Partial<AligningLineConfig> = {},\n) {\n Object.assign(aligningLineConfig, options);\n\n const horizontalLines = new Set<string>();\n const verticalLines = new Set<string>();\n let onlyDrawPoint = false;\n const cacheMap = new Map<string, [TBBox, Point[]]>();\n\n const getCaCheMapValue = (object: FabricObject) => {\n const cacheKey = [\n object.calcTransformMatrix().toString(),\n object.width,\n object.height,\n ].join();\n const cacheValue = cacheMap.get(cacheKey);\n if (cacheValue) return cacheValue;\n const coords = object.getCoords();\n const rect = util.makeBoundingBoxFromPoints(coords);\n const value: [TBBox, Point[]] = [rect, coords];\n cacheMap.set(cacheKey, value);\n return value;\n };\n\n function moving(e: TransformEvent) {\n const activeObject = e.target;\n activeObject.setCoords();\n onlyDrawPoint = false;\n verticalLines.clear();\n horizontalLines.clear();\n\n const objects = getObjectsByTarget(activeObject);\n const activeObjectRect = activeObject.getBoundingRect();\n\n for (const object of objects) {\n const objectRect = getCaCheMapValue(object)[0];\n const { vLines, hLines } = collectLine({\n activeObject,\n activeObjectRect,\n objectRect,\n });\n vLines.forEach((o) => {\n verticalLines.add(JSON.stringify(o));\n });\n hLines.forEach((o) => {\n horizontalLines.add(JSON.stringify(o));\n });\n }\n }\n\n function scalingOrResizing(e: TransformEvent) {\n // br bl tr tl mb ml mt mr\n const activeObject = e.target;\n activeObject.setCoords();\n const isScale = String(e.transform.action).startsWith('scale');\n verticalLines.clear();\n horizontalLines.clear();\n\n const objects = getObjectsByTarget(activeObject);\n let corner = e.transform.corner;\n if (activeObject.flipX) corner = corner.replace('l', 'r').replace('r', 'l');\n if (activeObject.flipY) corner = corner.replace('t', 'b').replace('b', 't');\n let index = ['tl', 'tr', 'br', 'bl', 'mt', 'mr', 'mb', 'ml'].indexOf(\n corner,\n );\n if (index == -1) return;\n onlyDrawPoint = index > 3;\n if (onlyDrawPoint) {\n const angle = activeObject.getTotalAngle();\n if (angle % 90 != 0) return;\n index -= 4;\n }\n let point = activeObject.getCoords()[index];\n for (const object of objects) {\n const [rect, coords] = getCaCheMapValue(object);\n const center = new Point(\n rect.left + rect.width / 2,\n rect.top + rect.height / 2,\n );\n const list = [...coords, center];\n const props = { activeObject, point, list, isScale, index };\n const vLines = collectVerticalPoint(props);\n const hLines = collectHorizontalPoint(props);\n vLines.forEach((o) => {\n verticalLines.add(JSON.stringify(o));\n });\n hLines.forEach((o) => {\n horizontalLines.add(JSON.stringify(o));\n });\n if (vLines.length || hLines.length)\n point = activeObject.getCoords()[index];\n }\n }\n\n function beforeRender() {\n canvas.clearContext(canvas.contextTop);\n }\n function afterRender() {\n if (onlyDrawPoint) {\n const list: Array<VerticalLine | HorizontalLine> = [];\n for (const v of verticalLines) list.push(JSON.parse(v));\n for (const h of horizontalLines) list.push(JSON.parse(h));\n drawPointList(canvas, list);\n } else {\n for (const v of verticalLines) drawVerticalLine(canvas, JSON.parse(v));\n for (const h of horizontalLines)\n drawHorizontalLine(canvas, JSON.parse(h));\n }\n }\n function mouseUp() {\n verticalLines.clear();\n horizontalLines.clear();\n cacheMap.clear();\n canvas.requestRenderAll();\n }\n\n canvas.on('object:resizing', scalingOrResizing);\n canvas.on('object:scaling', scalingOrResizing);\n canvas.on('object:moving', moving);\n canvas.on('before:render', beforeRender);\n canvas.on('after:render', afterRender);\n canvas.on('mouse:up', mouseUp);\n\n return () => {\n canvas.off('object:resizing', scalingOrResizing);\n canvas.off('object:scaling', scalingOrResizing);\n canvas.off('object:moving', moving);\n canvas.off('before:render', beforeRender);\n canvas.off('after:render', afterRender);\n canvas.off('mouse:up', mouseUp);\n };\n}\n"],"names":["initAligningGuidelines","canvas","options","arguments","length","undefined","Object","assign","aligningLineConfig","horizontalLines","Set","verticalLines","onlyDrawPoint","cacheMap","Map","getCaCheMapValue","object","cacheKey","calcTransformMatrix","toString","width","height","join","cacheValue","get","coords","getCoords","rect","util","value","set","moving","e","activeObject","target","setCoords","clear","objects","getObjectsByTarget","activeObjectRect","getBoundingRect","objectRect","vLines","hLines","collectLine","forEach","o","add","JSON","stringify","scalingOrResizing","isScale","String","transform","action","startsWith","corner","flipX","replace","flipY","index","indexOf","angle","getTotalAngle","point","center","Point","left","top","list","props","collectVerticalPoint","collectHorizontalPoint","beforeRender","clearContext","contextTop","afterRender","v","push","parse","h","drawPointList","drawVerticalLine","drawHorizontalLine","mouseUp","requestRenderAll","on","off"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- function t(t,n){return Math.abs(t-n)}function n(t,n,e){const r=t.translateToCenterPoint(n,"center","center"),i=t.translateToOriginPoint(r,t.originX,t.originY);"x"==e?t.setX(i.x):t.setY(i.y)}export{t as getDistance,n as setPositionDir};
2
- //# sourceMappingURL=basic.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"basic.min.mjs","sources":["../../../../extensions/aligning_guidelines/util/basic.ts"],"sourcesContent":["import type { FabricObject, Point } from '@postermywall/fabricjs-2';\n\nexport function getDistance(a: number, b: number) {\n return Math.abs(a - b);\n}\n\nexport function setPositionDir(\n target: FabricObject,\n pos: Point,\n dir: 'x' | 'y',\n) {\n const center = target.translateToCenterPoint(pos, 'center', 'center');\n const position = target.translateToOriginPoint(\n center,\n target.originX,\n target.originY,\n );\n if (dir == 'x') target.setX(position.x);\n else target.setY(position.y);\n}\n"],"names":["getDistance","a","b","Math","abs","setPositionDir","target","pos","dir","center","translateToCenterPoint","position","translateToOriginPoint","originX","originY","setX","x","setY","y"],"mappings":"AAEO,SAASA,EAAYC,EAAWC,GACrC,OAAOC,KAAKC,IAAIH,EAAIC,EACtB,CAEO,SAASG,EACdC,EACAC,EACAC,GAEA,MAAMC,EAASH,EAAOI,uBAAuBH,EAAK,SAAU,UACtDI,EAAWL,EAAOM,uBACtBH,EACAH,EAAOO,QACPP,EAAOQ,SAEE,KAAPN,EAAYF,EAAOS,KAAKJ,EAASK,GAChCV,EAAOW,KAAKN,EAASO,EAC5B"}
@@ -1,11 +0,0 @@
1
- function getDistance(a, b) {
2
- return Math.abs(a - b);
3
- }
4
- function setPositionDir(target, pos, dir) {
5
- const center = target.translateToCenterPoint(pos, 'center', 'center');
6
- const position = target.translateToOriginPoint(center, target.originX, target.originY);
7
- if (dir == 'x') target.setX(position.x);else target.setY(position.y);
8
- }
9
-
10
- export { getDistance, setPositionDir };
11
- //# sourceMappingURL=basic.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"basic.mjs","sources":["../../../../extensions/aligning_guidelines/util/basic.ts"],"sourcesContent":["import type { FabricObject, Point } from '@postermywall/fabricjs-2';\n\nexport function getDistance(a: number, b: number) {\n return Math.abs(a - b);\n}\n\nexport function setPositionDir(\n target: FabricObject,\n pos: Point,\n dir: 'x' | 'y',\n) {\n const center = target.translateToCenterPoint(pos, 'center', 'center');\n const position = target.translateToOriginPoint(\n center,\n target.originX,\n target.originY,\n );\n if (dir == 'x') target.setX(position.x);\n else target.setY(position.y);\n}\n"],"names":["getDistance","a","b","Math","abs","setPositionDir","target","pos","dir","center","translateToCenterPoint","position","translateToOriginPoint","originX","originY","setX","x","setY","y"],"mappings":"AAEO,SAASA,WAAWA,CAACC,CAAS,EAAEC,CAAS,EAAE;AAChD,EAAA,OAAOC,IAAI,CAACC,GAAG,CAACH,CAAC,GAAGC,CAAC,CAAC,CAAA;AACxB,CAAA;AAEO,SAASG,cAAcA,CAC5BC,MAAoB,EACpBC,GAAU,EACVC,GAAc,EACd;EACA,MAAMC,MAAM,GAAGH,MAAM,CAACI,sBAAsB,CAACH,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;AACrE,EAAA,MAAMI,QAAQ,GAAGL,MAAM,CAACM,sBAAsB,CAC5CH,MAAM,EACNH,MAAM,CAACO,OAAO,EACdP,MAAM,CAACQ,OACT,CAAC,CAAA;EACD,IAAIN,GAAG,IAAI,GAAG,EAAEF,MAAM,CAACS,IAAI,CAACJ,QAAQ,CAACK,CAAC,CAAC,CAAC,KACnCV,MAAM,CAACW,IAAI,CAACN,QAAQ,CAACO,CAAC,CAAC,CAAA;AAC9B;;;;"}
@@ -1,2 +0,0 @@
1
- import"../../../src/config.min.mjs";import"../../../src/cache.min.mjs";import"../../../src/util/animation/AnimationRegistry.min.mjs";import{aligningLineConfig as t}from"../constant.min.mjs";import{getDistance as i,setPositionDir as s}from"./basic.min.mjs";import"../../../src/canvas/StaticCanvas.min.mjs";import{Point as r}from"../../../src/Point.min.mjs";import"../../../src/canvas/SelectableCanvas.min.mjs";import"../../../src/util/misc/vectors.min.mjs";import"../../../src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs";import"../../../src/shapes/Group.min.mjs";import"../../../src/util/path/regex.min.mjs";import"../../../src/parser/constants.min.mjs";import"../../../src/gradient/Gradient.min.mjs";import"../../../src/Pattern/Pattern.min.mjs";import"../../../src/Shadow.min.mjs";import"../../../src/shapes/Path.min.mjs";import"../../../src/shapes/Circle.min.mjs";import"../../../src/shapes/Rect.min.mjs";import"../../../src/shapes/Object/FabricObject.min.mjs";import"../../../src/shapes/Object/Object.min.mjs";import"../../../src/shapes/Object/InteractiveObject.min.mjs";import"../../../src/shapes/Line.min.mjs";import"../../../src/shapes/Triangle.min.mjs";import"../../../src/shapes/Ellipse.min.mjs";import"../../../src/shapes/Polyline.min.mjs";import"../../../src/shapes/Polygon.min.mjs";import"../../../src/shapes/Tabs.min.mjs";import"../../../src/shapes/Table.min.mjs";import"../../../src/shapes/Text/Text.min.mjs";import"../../../src/shapes/IText/IText.min.mjs";import"../../../src/shapes/Textbox.min.mjs";import"../../../src/LayoutManager/LayoutManager.min.mjs";import"../../../src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs";import"../../../src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs";import"../../../src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs";import"../../../src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs";import"../../../src/shapes/ActiveSelection.min.mjs";import"../../../src/shapes/Image.min.mjs";import"../../../src/parser/hasInvalidAncestor.min.mjs";import"../../../src/parser/parseTransformAttribute.min.mjs";import"../../../src/filters/BaseFilter.min.mjs";import"../../../src/filters/BlendColor.min.mjs";import"../../../src/filters/BlendImage.min.mjs";import"../../../src/filters/Blur.min.mjs";import"../../../src/filters/Brightness.min.mjs";import"../../../src/filters/ColorMatrix.min.mjs";import"../../../src/filters/ColorMatrixFilters.min.mjs";import"../../../src/filters/Composed.min.mjs";import"../../../src/filters/Contrast.min.mjs";import"../../../src/filters/Convolute.min.mjs";import"../../../src/filters/Gamma.min.mjs";import"../../../src/filters/Grayscale.min.mjs";import"../../../src/filters/HueRotation.min.mjs";import"../../../src/filters/Invert.min.mjs";import"../../../src/filters/Noise.min.mjs";import"../../../src/filters/Pixelate.min.mjs";import"../../../src/filters/RemoveColor.min.mjs";import"../../../src/filters/Resize.min.mjs";import"../../../src/filters/Saturation.min.mjs";import"../../../src/filters/Vibrance.min.mjs";function m(i){var s,r;const m=t.margin,{activeObject:a,activeObjectRect:c,objectRect:p}=i,j={target:a,list:n(p),aList:n(c),margin:m/(null!==(s=null===(r=a.canvas)||void 0===r?void 0:r.getZoom())&&void 0!==s?s:1)},l=function(t){const{target:i,list:s,aList:r,margin:m}=t,n=r.map((t=>e(t,s,"x"))),a=Math.min(...n.map((t=>t.dis)));if(a>m)return[];const c=[],p=r[0].x2-r[0].x,j=r[0].y2-r[0].y;let l=!1;for(let t=0;t<n.length;t++){const m=n[t];if(a==m.dis){const e=s[m.index],n=r[m.index],h=e.x,x=n.y,y=Math.min(e.y,e.y2,x,n.y2),f=Math.max(e.y,e.y2,x,n.y2);if(c.push({x:h,y1:y,y2:f}),l)continue;l=!0,o({target:i,x:h,y:x,centerX:t-1,centerY:m.index-1,width:p,height:j,dir:"x"});const u=a*m.dir;r.forEach((t=>t.x-=u))}}return c}(j),h=function(t){const{target:i,list:s,aList:r,margin:m}=t,n=r.map((t=>e(t,s,"y"))),a=Math.min(...n.map((t=>t.dis)));if(a>m)return[];const c=[],p=r[0].x2-r[0].x,j=r[0].y2-r[0].y;let l=!1;for(let t=0;t<n.length;t++){const m=n[t];if(a==m.dis){const e=s[m.index],n=r[m.index],h=e.y,x=n.x,y=Math.min(e.x,e.x2,x,n.x2),f=Math.max(e.x,e.x2,x,n.x2);if(c.push({y:h,x1:y,x2:f}),l)continue;l=!0,o({target:i,x:x,y:h,centerX:m.index-1,centerY:t-1,width:p,height:j,dir:"y"});const u=a*m.dir;r.forEach((t=>t.y-=u))}}return c}(j);return{vLines:l,hLines:h}}function e(t,s,r){let m=1/0,e=-1,n=1;for(let o=0;o<s.length;o++){const a=i(t[r],s[o][r]);m>a&&(e=o,m=a,n=t[r]>s[o][r]?1:-1)}return{dis:m,index:e,dir:n}}function n(t){const{left:i,top:s,width:r,height:m}=t,e=i+r/2,n=s+m/2;return[{x:i,y:s,x2:i+r,y2:s+m},{x:e,y:n,x2:e,y2:n},{x:i+r,x2:i,y:s+m,y2:s}]}function o(t){const{target:i,centerX:m,centerY:e,width:n,height:o,dir:a}=t;let{x:c,y:p}=t;c-=m*n/2,p-=e*o/2,s(i,new r(c,p),a),i.setCoords()}export{m as collectLine};
2
- //# sourceMappingURL=collect-line.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collect-line.min.mjs","sources":["../../../../extensions/aligning_guidelines/util/collect-line.ts"],"sourcesContent":["import type { FabricObject, TBBox } from 'fabric';\nimport { Point } from 'fabric';\nimport type { HorizontalLine, VerticalLine } from '../typedefs';\nimport { aligningLineConfig } from '../constant';\nimport { getDistance, setPositionDir } from './basic';\n\ntype CollectLineProps = {\n activeObject: FabricObject;\n activeObjectRect: TBBox;\n objectRect: TBBox;\n};\n\nexport function collectLine(props: CollectLineProps) {\n const aligningLineMargin = aligningLineConfig.margin;\n const { activeObject, activeObjectRect, objectRect } = props;\n const list = makeLineByRect(objectRect);\n const aList = makeLineByRect(activeObjectRect);\n const margin = aligningLineMargin / (activeObject.canvas?.getZoom() ?? 1);\n const opts = { target: activeObject, list, aList, margin };\n const vLines = collectVerticalLine(opts);\n const hLines = collectHorizontalLine(opts);\n\n return { vLines, hLines };\n}\n\ntype CollectItemLineProps = {\n target: FabricObject;\n list: LineProps[];\n aList: LineProps[];\n margin: number;\n};\nfunction collectVerticalLine(props: CollectItemLineProps) {\n const { target, list, aList, margin } = props;\n\n const arr = aList.map((x) => getDistanceLine(x, list, 'x'));\n const min = Math.min(...arr.map((x) => x.dis));\n if (min > margin) return [];\n const lines: VerticalLine[] = [];\n const width = aList[0].x2 - aList[0].x;\n const height = aList[0].y2 - aList[0].y;\n let b = false;\n for (let i = 0; i < arr.length; i++) {\n const item = arr[i];\n if (min == item.dis) {\n const line = list[item.index];\n const aLine = aList[item.index];\n const x = line.x;\n const y = aLine.y;\n\n const y1 = Math.min(line.y, line.y2, y, aLine.y2);\n const y2 = Math.max(line.y, line.y2, y, aLine.y2);\n // 参考线可画多条\n lines.push({ x, y1, y2 });\n if (b) continue;\n b = true;\n // 对齐只进行一次\n setPos({\n target,\n x,\n y,\n centerX: i - 1,\n centerY: item.index - 1,\n width,\n height,\n dir: 'x',\n });\n const dis = min * item.dir;\n aList.forEach((x) => (x.x -= dis));\n }\n }\n return lines;\n}\n\nfunction collectHorizontalLine(props: CollectItemLineProps) {\n const { target, list, aList, margin } = props;\n\n const arr = aList.map((x) => getDistanceLine(x, list, 'y'));\n const min = Math.min(...arr.map((x) => x.dis));\n if (min > margin) return [];\n const lines: HorizontalLine[] = [];\n const width = aList[0].x2 - aList[0].x;\n const height = aList[0].y2 - aList[0].y;\n let b = false;\n for (let i = 0; i < arr.length; i++) {\n const item = arr[i];\n if (min == item.dis) {\n const line = list[item.index];\n const aLine = aList[item.index];\n const y = line.y;\n const x = aLine.x;\n\n const x1 = Math.min(line.x, line.x2, x, aLine.x2);\n const x2 = Math.max(line.x, line.x2, x, aLine.x2);\n // 参考线可画多条\n lines.push({ y, x1, x2 });\n if (b) continue;\n b = true;\n // 对齐只进行一次\n setPos({\n target,\n x,\n y,\n centerX: item.index - 1,\n centerY: i - 1,\n width,\n height,\n dir: 'y',\n });\n const dis = min * item.dir;\n aList.forEach((x) => (x.y -= dis));\n }\n }\n return lines;\n}\n\ntype LineProps = {\n x: number;\n y: number;\n x2: number;\n y2: number;\n};\nfunction getDistanceLine(\n target: LineProps,\n list: LineProps[],\n type: 'x' | 'y',\n) {\n let dis = Infinity;\n let index = -1;\n /** 1正值 -1负值 */\n let dir = 1;\n for (let i = 0; i < list.length; i++) {\n const v = getDistance(target[type], list[i][type]);\n if (dis > v) {\n index = i;\n dis = v;\n dir = target[type] > list[i][type] ? 1 : -1;\n }\n }\n return { dis, index, dir };\n}\n\nfunction makeLineByRect(rect: TBBox) {\n const { left, top, width, height } = rect;\n const a = { x: left, y: top, x2: left + width, y2: top + height };\n const x = left + width / 2;\n const y = top + height / 2;\n const b = { x, y, x2: x, y2: y };\n const c = { x: left + width, x2: left, y: top + height, y2: top };\n\n return [a, b, c];\n}\n\ntype SnapToPixelProps = {\n target: FabricObject;\n x: number;\n y: number;\n /** -1 0 1 */\n centerX: number;\n /** -1 0 1 */\n centerY: number;\n width: number;\n height: number;\n dir: 'x' | 'y';\n};\nfunction setPos(props: SnapToPixelProps) {\n const { target, centerX, centerY, width, height, dir } = props;\n let { x, y } = props;\n x -= (centerX * width) / 2;\n y -= (centerY * height) / 2;\n setPositionDir(target, new Point(x, y), dir);\n target.setCoords();\n}\n"],"names":["collectLine","props","_activeObject$canvas$","_activeObject$canvas","aligningLineMargin","aligningLineConfig","margin","activeObject","activeObjectRect","objectRect","opts","target","list","makeLineByRect","aList","canvas","getZoom","vLines","arr","map","x","getDistanceLine","min","Math","dis","lines","width","x2","height","y2","y","b","i","length","item","line","index","aLine","y1","max","push","setPos","centerX","centerY","dir","forEach","collectVerticalLine","hLines","x1","collectHorizontalLine","type","Infinity","v","getDistance","rect","left","top","setPositionDir","Point","setCoords"],"mappings":"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"}