@nasser-sw/fabric 7.0.1-beta1 → 7.0.1-beta2

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 (2509) hide show
  1. package/.babelrc +0 -0
  2. package/.babelrcAlt +0 -0
  3. package/.browserslistrc +0 -0
  4. package/.editorconfig +0 -0
  5. package/.gitattributes +0 -0
  6. package/.gitpod.yml +0 -0
  7. package/.prettierignore +0 -0
  8. package/.prettierrc +0 -0
  9. package/CHANGELOG.md +0 -0
  10. package/CODE_OF_CONDUCT.md +0 -0
  11. package/CONTRIBUTING.md +0 -0
  12. package/LICENSE +0 -0
  13. package/OVERLAY_EDITOR_MIGRATION.md +0 -0
  14. package/README.md +0 -0
  15. package/SECURITY.md +0 -0
  16. package/debug/konva/CHANGELOG.md +0 -0
  17. package/debug/konva/LICENSE +0 -0
  18. package/debug/konva/README.md +0 -0
  19. package/debug/konva/gulpfile.mjs +0 -0
  20. package/debug/konva/package.json +0 -0
  21. package/debug/konva/release.sh +0 -0
  22. package/debug/konva/resources/doc-includes/ContainerParams.txt +0 -0
  23. package/debug/konva/resources/doc-includes/NodeParams.txt +0 -0
  24. package/debug/konva/resources/doc-includes/ShapeParams.txt +0 -0
  25. package/debug/konva/resources/jsdoc.conf.json +0 -0
  26. package/debug/konva/rollup.config.mjs +0 -0
  27. package/debug/konva/src/Animation.ts +0 -0
  28. package/debug/konva/src/BezierFunctions.ts +0 -0
  29. package/debug/konva/src/Canvas.ts +0 -0
  30. package/debug/konva/src/Container.ts +0 -0
  31. package/debug/konva/src/Context.ts +0 -0
  32. package/debug/konva/src/Core.ts +0 -0
  33. package/debug/konva/src/DragAndDrop.ts +0 -0
  34. package/debug/konva/src/Factory.ts +0 -0
  35. package/debug/konva/src/FastLayer.ts +0 -0
  36. package/debug/konva/src/Global.ts +0 -0
  37. package/debug/konva/src/Group.ts +0 -0
  38. package/debug/konva/src/Layer.ts +0 -0
  39. package/debug/konva/src/Node.ts +0 -0
  40. package/debug/konva/src/PointerEvents.ts +0 -0
  41. package/debug/konva/src/Shape.ts +0 -0
  42. package/debug/konva/src/Stage.ts +0 -0
  43. package/debug/konva/src/Tween.ts +0 -0
  44. package/debug/konva/src/Util.ts +0 -0
  45. package/debug/konva/src/Validators.ts +0 -0
  46. package/debug/konva/src/_CoreInternals.ts +0 -0
  47. package/debug/konva/src/_FullInternals.ts +0 -0
  48. package/debug/konva/src/canvas-backend.ts +0 -0
  49. package/debug/konva/src/filters/Blur.ts +0 -0
  50. package/debug/konva/src/filters/Brighten.ts +0 -0
  51. package/debug/konva/src/filters/Brightness.ts +0 -0
  52. package/debug/konva/src/filters/Contrast.ts +0 -0
  53. package/debug/konva/src/filters/Emboss.ts +0 -0
  54. package/debug/konva/src/filters/Enhance.ts +0 -0
  55. package/debug/konva/src/filters/Grayscale.ts +0 -0
  56. package/debug/konva/src/filters/HSL.ts +0 -0
  57. package/debug/konva/src/filters/HSV.ts +0 -0
  58. package/debug/konva/src/filters/Invert.ts +0 -0
  59. package/debug/konva/src/filters/Kaleidoscope.ts +0 -0
  60. package/debug/konva/src/filters/Mask.ts +0 -0
  61. package/debug/konva/src/filters/Noise.ts +0 -0
  62. package/debug/konva/src/filters/Pixelate.ts +0 -0
  63. package/debug/konva/src/filters/Posterize.ts +0 -0
  64. package/debug/konva/src/filters/RGB.ts +0 -0
  65. package/debug/konva/src/filters/RGBA.ts +0 -0
  66. package/debug/konva/src/filters/Sepia.ts +0 -0
  67. package/debug/konva/src/filters/Solarize.ts +0 -0
  68. package/debug/konva/src/filters/Threshold.ts +0 -0
  69. package/debug/konva/src/index.ts +0 -0
  70. package/debug/konva/src/shapes/Arc.ts +0 -0
  71. package/debug/konva/src/shapes/Arrow.ts +0 -0
  72. package/debug/konva/src/shapes/Circle.ts +0 -0
  73. package/debug/konva/src/shapes/Ellipse.ts +0 -0
  74. package/debug/konva/src/shapes/Image.ts +0 -0
  75. package/debug/konva/src/shapes/Label.ts +0 -0
  76. package/debug/konva/src/shapes/Line.ts +0 -0
  77. package/debug/konva/src/shapes/Path.ts +0 -0
  78. package/debug/konva/src/shapes/Rect.ts +0 -0
  79. package/debug/konva/src/shapes/RegularPolygon.ts +0 -0
  80. package/debug/konva/src/shapes/Ring.ts +0 -0
  81. package/debug/konva/src/shapes/Sprite.ts +0 -0
  82. package/debug/konva/src/shapes/Star.ts +0 -0
  83. package/debug/konva/src/shapes/Text.ts +0 -0
  84. package/debug/konva/src/shapes/TextPath.ts +0 -0
  85. package/debug/konva/src/shapes/Transformer.ts +0 -0
  86. package/debug/konva/src/shapes/Wedge.ts +0 -0
  87. package/debug/konva/src/skia-backend.ts +0 -0
  88. package/debug/konva/src/types.ts +0 -0
  89. package/debug/konva/tsconfig.json +0 -0
  90. package/debug/konva/tsconfig.test.json +0 -0
  91. package/dist/_virtual/_rollupPluginBabelHelpers.min.mjs +0 -0
  92. package/dist/_virtual/_rollupPluginBabelHelpers.min.mjs.map +0 -0
  93. package/dist/_virtual/_rollupPluginBabelHelpers.mjs +0 -0
  94. package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +0 -0
  95. package/dist/extensions/aligning_guidelines/constant.d.ts +0 -0
  96. package/dist/extensions/aligning_guidelines/constant.d.ts.map +0 -0
  97. package/dist/extensions/aligning_guidelines/index.d.ts +0 -0
  98. package/dist/extensions/aligning_guidelines/index.d.ts.map +0 -0
  99. package/dist/extensions/aligning_guidelines/typedefs.d.ts +0 -0
  100. package/dist/extensions/aligning_guidelines/typedefs.d.ts.map +0 -0
  101. package/dist/extensions/aligning_guidelines/util/basic.d.ts +0 -0
  102. package/dist/extensions/aligning_guidelines/util/basic.d.ts.map +0 -0
  103. package/dist/extensions/aligning_guidelines/util/collect-line.d.ts +0 -0
  104. package/dist/extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -0
  105. package/dist/extensions/aligning_guidelines/util/collect-point.d.ts +0 -0
  106. package/dist/extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -0
  107. package/dist/extensions/aligning_guidelines/util/draw.d.ts +0 -0
  108. package/dist/extensions/aligning_guidelines/util/draw.d.ts.map +0 -0
  109. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -0
  110. package/dist/extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -0
  111. package/dist/extensions/data_updaters/gradient/index.d.ts +0 -0
  112. package/dist/extensions/data_updaters/gradient/index.d.ts.map +0 -0
  113. package/dist/extensions/data_updaters/origins/index.d.ts +0 -0
  114. package/dist/extensions/data_updaters/origins/index.d.ts.map +0 -0
  115. package/dist/extensions/index.d.ts +0 -0
  116. package/dist/extensions/index.d.ts.map +0 -0
  117. package/dist/fabric.d.ts +0 -0
  118. package/dist/fabric.d.ts.map +0 -0
  119. package/dist/fabric.min.mjs +0 -0
  120. package/dist/fabric.min.mjs.map +0 -0
  121. package/dist/fabric.mjs +0 -0
  122. package/dist/fabric.mjs.map +0 -0
  123. package/dist/index.d.ts +0 -0
  124. package/dist/index.d.ts.map +0 -0
  125. package/dist/index.js +1180 -1044
  126. package/dist/index.js.map +1 -1
  127. package/dist/index.min.js +1 -1
  128. package/dist/index.min.js.map +1 -1
  129. package/dist/index.min.mjs +1 -1
  130. package/dist/index.min.mjs.map +1 -1
  131. package/dist/index.mjs +1180 -1044
  132. package/dist/index.mjs.map +1 -1
  133. package/dist/index.node.cjs +1180 -1044
  134. package/dist/index.node.cjs.map +1 -1
  135. package/dist/index.node.d.ts +0 -0
  136. package/dist/index.node.d.ts.map +0 -0
  137. package/dist/index.node.mjs +1180 -1044
  138. package/dist/index.node.mjs.map +1 -1
  139. package/dist/package.json.min.mjs +1 -1
  140. package/dist/package.json.min.mjs.map +0 -0
  141. package/dist/package.json.mjs +1 -1
  142. package/dist/package.json.mjs.map +0 -0
  143. package/dist/src/ClassRegistry.d.ts +0 -0
  144. package/dist/src/ClassRegistry.d.ts.map +0 -0
  145. package/dist/src/ClassRegistry.min.mjs +0 -0
  146. package/dist/src/ClassRegistry.min.mjs.map +0 -0
  147. package/dist/src/ClassRegistry.mjs +0 -0
  148. package/dist/src/ClassRegistry.mjs.map +0 -0
  149. package/dist/src/Collection.d.ts +0 -0
  150. package/dist/src/Collection.d.ts.map +0 -0
  151. package/dist/src/Collection.min.mjs +0 -0
  152. package/dist/src/Collection.min.mjs.map +0 -0
  153. package/dist/src/Collection.mjs +0 -0
  154. package/dist/src/Collection.mjs.map +0 -0
  155. package/dist/src/CommonMethods.d.ts +0 -0
  156. package/dist/src/CommonMethods.d.ts.map +0 -0
  157. package/dist/src/CommonMethods.min.mjs +0 -0
  158. package/dist/src/CommonMethods.min.mjs.map +0 -0
  159. package/dist/src/CommonMethods.mjs +0 -0
  160. package/dist/src/CommonMethods.mjs.map +0 -0
  161. package/dist/src/EventTypeDefs.d.ts +0 -0
  162. package/dist/src/EventTypeDefs.d.ts.map +0 -0
  163. package/dist/src/Intersection.d.ts +0 -0
  164. package/dist/src/Intersection.d.ts.map +0 -0
  165. package/dist/src/Intersection.min.mjs +0 -0
  166. package/dist/src/Intersection.min.mjs.map +0 -0
  167. package/dist/src/Intersection.mjs +0 -0
  168. package/dist/src/Intersection.mjs.map +0 -0
  169. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -0
  170. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -0
  171. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs +0 -0
  172. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs.map +0 -0
  173. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs +0 -0
  174. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs.map +0 -0
  175. package/dist/src/LayoutManager/LayoutManager.d.ts +0 -0
  176. package/dist/src/LayoutManager/LayoutManager.d.ts.map +0 -0
  177. package/dist/src/LayoutManager/LayoutManager.min.mjs +0 -0
  178. package/dist/src/LayoutManager/LayoutManager.min.mjs.map +0 -0
  179. package/dist/src/LayoutManager/LayoutManager.mjs +0 -0
  180. package/dist/src/LayoutManager/LayoutManager.mjs.map +0 -0
  181. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -0
  182. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -0
  183. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs +0 -0
  184. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs.map +0 -0
  185. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs +0 -0
  186. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs.map +0 -0
  187. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -0
  188. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -0
  189. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs +0 -0
  190. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs.map +0 -0
  191. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs +0 -0
  192. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs.map +0 -0
  193. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -0
  194. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -0
  195. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs +0 -0
  196. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs.map +0 -0
  197. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs +0 -0
  198. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs.map +0 -0
  199. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -0
  200. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -0
  201. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs +0 -0
  202. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs.map +0 -0
  203. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs +0 -0
  204. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs.map +0 -0
  205. package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -0
  206. package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -0
  207. package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs +0 -0
  208. package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs.map +0 -0
  209. package/dist/src/LayoutManager/LayoutStrategies/utils.mjs +0 -0
  210. package/dist/src/LayoutManager/LayoutStrategies/utils.mjs.map +0 -0
  211. package/dist/src/LayoutManager/constants.d.ts +0 -0
  212. package/dist/src/LayoutManager/constants.d.ts.map +0 -0
  213. package/dist/src/LayoutManager/constants.min.mjs +0 -0
  214. package/dist/src/LayoutManager/constants.min.mjs.map +0 -0
  215. package/dist/src/LayoutManager/constants.mjs +0 -0
  216. package/dist/src/LayoutManager/constants.mjs.map +0 -0
  217. package/dist/src/LayoutManager/index.d.ts +0 -0
  218. package/dist/src/LayoutManager/index.d.ts.map +0 -0
  219. package/dist/src/LayoutManager/types.d.ts +0 -0
  220. package/dist/src/LayoutManager/types.d.ts.map +0 -0
  221. package/dist/src/Observable.d.ts +0 -0
  222. package/dist/src/Observable.d.ts.map +0 -0
  223. package/dist/src/Observable.min.mjs +0 -0
  224. package/dist/src/Observable.min.mjs.map +0 -0
  225. package/dist/src/Observable.mjs +0 -0
  226. package/dist/src/Observable.mjs.map +0 -0
  227. package/dist/src/Pattern/Pattern.d.ts +0 -0
  228. package/dist/src/Pattern/Pattern.d.ts.map +0 -0
  229. package/dist/src/Pattern/Pattern.min.mjs +0 -0
  230. package/dist/src/Pattern/Pattern.min.mjs.map +0 -0
  231. package/dist/src/Pattern/Pattern.mjs +0 -0
  232. package/dist/src/Pattern/Pattern.mjs.map +0 -0
  233. package/dist/src/Pattern/index.d.ts +0 -0
  234. package/dist/src/Pattern/index.d.ts.map +0 -0
  235. package/dist/src/Pattern/types.d.ts +0 -0
  236. package/dist/src/Pattern/types.d.ts.map +0 -0
  237. package/dist/src/Point.d.ts +0 -0
  238. package/dist/src/Point.d.ts.map +0 -0
  239. package/dist/src/Point.min.mjs +0 -0
  240. package/dist/src/Point.min.mjs.map +0 -0
  241. package/dist/src/Point.mjs +0 -0
  242. package/dist/src/Point.mjs.map +0 -0
  243. package/dist/src/Shadow.d.ts +0 -0
  244. package/dist/src/Shadow.d.ts.map +0 -0
  245. package/dist/src/Shadow.min.mjs +0 -0
  246. package/dist/src/Shadow.min.mjs.map +0 -0
  247. package/dist/src/Shadow.mjs +0 -0
  248. package/dist/src/Shadow.mjs.map +0 -0
  249. package/dist/src/brushes/BaseBrush.d.ts +0 -0
  250. package/dist/src/brushes/BaseBrush.d.ts.map +0 -0
  251. package/dist/src/brushes/BaseBrush.min.mjs +0 -0
  252. package/dist/src/brushes/BaseBrush.min.mjs.map +0 -0
  253. package/dist/src/brushes/BaseBrush.mjs +0 -0
  254. package/dist/src/brushes/BaseBrush.mjs.map +0 -0
  255. package/dist/src/brushes/CircleBrush.d.ts +0 -0
  256. package/dist/src/brushes/CircleBrush.d.ts.map +0 -0
  257. package/dist/src/brushes/CircleBrush.min.mjs +0 -0
  258. package/dist/src/brushes/CircleBrush.min.mjs.map +0 -0
  259. package/dist/src/brushes/CircleBrush.mjs +0 -0
  260. package/dist/src/brushes/CircleBrush.mjs.map +0 -0
  261. package/dist/src/brushes/PatternBrush.d.ts +0 -0
  262. package/dist/src/brushes/PatternBrush.d.ts.map +0 -0
  263. package/dist/src/brushes/PatternBrush.min.mjs +0 -0
  264. package/dist/src/brushes/PatternBrush.min.mjs.map +0 -0
  265. package/dist/src/brushes/PatternBrush.mjs +0 -0
  266. package/dist/src/brushes/PatternBrush.mjs.map +0 -0
  267. package/dist/src/brushes/PencilBrush.d.ts +0 -0
  268. package/dist/src/brushes/PencilBrush.d.ts.map +0 -0
  269. package/dist/src/brushes/PencilBrush.min.mjs +0 -0
  270. package/dist/src/brushes/PencilBrush.min.mjs.map +0 -0
  271. package/dist/src/brushes/PencilBrush.mjs +0 -0
  272. package/dist/src/brushes/PencilBrush.mjs.map +0 -0
  273. package/dist/src/brushes/SprayBrush.d.ts +0 -0
  274. package/dist/src/brushes/SprayBrush.d.ts.map +0 -0
  275. package/dist/src/brushes/SprayBrush.min.mjs +0 -0
  276. package/dist/src/brushes/SprayBrush.min.mjs.map +0 -0
  277. package/dist/src/brushes/SprayBrush.mjs +0 -0
  278. package/dist/src/brushes/SprayBrush.mjs.map +0 -0
  279. package/dist/src/brushes/typedefs.d.ts +0 -0
  280. package/dist/src/brushes/typedefs.d.ts.map +0 -0
  281. package/dist/src/cache.d.ts +0 -0
  282. package/dist/src/cache.d.ts.map +0 -0
  283. package/dist/src/cache.min.mjs +0 -0
  284. package/dist/src/cache.min.mjs.map +0 -0
  285. package/dist/src/cache.mjs +0 -0
  286. package/dist/src/cache.mjs.map +0 -0
  287. package/dist/src/canvas/Canvas.d.ts +0 -0
  288. package/dist/src/canvas/Canvas.d.ts.map +0 -0
  289. package/dist/src/canvas/Canvas.min.mjs +0 -0
  290. package/dist/src/canvas/Canvas.min.mjs.map +0 -0
  291. package/dist/src/canvas/Canvas.mjs +0 -0
  292. package/dist/src/canvas/Canvas.mjs.map +0 -0
  293. package/dist/src/canvas/CanvasOptions.d.ts +0 -0
  294. package/dist/src/canvas/CanvasOptions.d.ts.map +0 -0
  295. package/dist/src/canvas/CanvasOptions.min.mjs +0 -0
  296. package/dist/src/canvas/CanvasOptions.min.mjs.map +0 -0
  297. package/dist/src/canvas/CanvasOptions.mjs +0 -0
  298. package/dist/src/canvas/CanvasOptions.mjs.map +0 -0
  299. package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -0
  300. package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -0
  301. package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs +0 -0
  302. package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs.map +0 -0
  303. package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs +0 -0
  304. package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs.map +0 -0
  305. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -0
  306. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -0
  307. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs +0 -0
  308. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs.map +0 -0
  309. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs +0 -0
  310. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs.map +0 -0
  311. package/dist/src/canvas/DOMManagers/util.d.ts +0 -0
  312. package/dist/src/canvas/DOMManagers/util.d.ts.map +0 -0
  313. package/dist/src/canvas/DOMManagers/util.min.mjs +0 -0
  314. package/dist/src/canvas/DOMManagers/util.min.mjs.map +0 -0
  315. package/dist/src/canvas/DOMManagers/util.mjs +0 -0
  316. package/dist/src/canvas/DOMManagers/util.mjs.map +0 -0
  317. package/dist/src/canvas/SelectableCanvas.d.ts +0 -0
  318. package/dist/src/canvas/SelectableCanvas.d.ts.map +0 -0
  319. package/dist/src/canvas/SelectableCanvas.min.mjs +0 -0
  320. package/dist/src/canvas/SelectableCanvas.min.mjs.map +0 -0
  321. package/dist/src/canvas/SelectableCanvas.mjs +0 -0
  322. package/dist/src/canvas/SelectableCanvas.mjs.map +0 -0
  323. package/dist/src/canvas/StaticCanvas.d.ts +0 -0
  324. package/dist/src/canvas/StaticCanvas.d.ts.map +0 -0
  325. package/dist/src/canvas/StaticCanvas.min.mjs +0 -0
  326. package/dist/src/canvas/StaticCanvas.min.mjs.map +0 -0
  327. package/dist/src/canvas/StaticCanvas.mjs +0 -0
  328. package/dist/src/canvas/StaticCanvas.mjs.map +0 -0
  329. package/dist/src/canvas/StaticCanvasOptions.d.ts +0 -0
  330. package/dist/src/canvas/StaticCanvasOptions.d.ts.map +0 -0
  331. package/dist/src/canvas/StaticCanvasOptions.min.mjs +0 -0
  332. package/dist/src/canvas/StaticCanvasOptions.min.mjs.map +0 -0
  333. package/dist/src/canvas/StaticCanvasOptions.mjs +0 -0
  334. package/dist/src/canvas/StaticCanvasOptions.mjs.map +0 -0
  335. package/dist/src/canvas/TextEditingManager.d.ts +0 -0
  336. package/dist/src/canvas/TextEditingManager.d.ts.map +0 -0
  337. package/dist/src/canvas/TextEditingManager.min.mjs +0 -0
  338. package/dist/src/canvas/TextEditingManager.min.mjs.map +0 -0
  339. package/dist/src/canvas/TextEditingManager.mjs +0 -0
  340. package/dist/src/canvas/TextEditingManager.mjs.map +0 -0
  341. package/dist/src/canvas/canvas_gestures.mixin.d.ts +0 -0
  342. package/dist/src/canvas/canvas_gestures.mixin.d.ts.map +0 -0
  343. package/dist/src/color/Color.d.ts +0 -0
  344. package/dist/src/color/Color.d.ts.map +0 -0
  345. package/dist/src/color/Color.min.mjs +0 -0
  346. package/dist/src/color/Color.min.mjs.map +0 -0
  347. package/dist/src/color/Color.mjs +0 -0
  348. package/dist/src/color/Color.mjs.map +0 -0
  349. package/dist/src/color/color_map.d.ts +0 -0
  350. package/dist/src/color/color_map.d.ts.map +0 -0
  351. package/dist/src/color/color_map.min.mjs +0 -0
  352. package/dist/src/color/color_map.min.mjs.map +0 -0
  353. package/dist/src/color/color_map.mjs +0 -0
  354. package/dist/src/color/color_map.mjs.map +0 -0
  355. package/dist/src/color/constants.d.ts +0 -0
  356. package/dist/src/color/constants.d.ts.map +0 -0
  357. package/dist/src/color/constants.min.mjs +0 -0
  358. package/dist/src/color/constants.min.mjs.map +0 -0
  359. package/dist/src/color/constants.mjs +0 -0
  360. package/dist/src/color/constants.mjs.map +0 -0
  361. package/dist/src/color/typedefs.d.ts +0 -0
  362. package/dist/src/color/typedefs.d.ts.map +0 -0
  363. package/dist/src/color/util.d.ts +0 -0
  364. package/dist/src/color/util.d.ts.map +0 -0
  365. package/dist/src/color/util.min.mjs +0 -0
  366. package/dist/src/color/util.min.mjs.map +0 -0
  367. package/dist/src/color/util.mjs +0 -0
  368. package/dist/src/color/util.mjs.map +0 -0
  369. package/dist/src/config.d.ts +0 -0
  370. package/dist/src/config.d.ts.map +0 -0
  371. package/dist/src/config.min.mjs +0 -0
  372. package/dist/src/config.min.mjs.map +0 -0
  373. package/dist/src/config.mjs +0 -0
  374. package/dist/src/config.mjs.map +0 -0
  375. package/dist/src/constants.d.ts +0 -0
  376. package/dist/src/constants.d.ts.map +0 -0
  377. package/dist/src/constants.min.mjs +0 -0
  378. package/dist/src/constants.min.mjs.map +0 -0
  379. package/dist/src/constants.mjs +0 -0
  380. package/dist/src/constants.mjs.map +0 -0
  381. package/dist/src/controls/Control.d.ts +0 -0
  382. package/dist/src/controls/Control.d.ts.map +0 -0
  383. package/dist/src/controls/Control.min.mjs +0 -0
  384. package/dist/src/controls/Control.min.mjs.map +0 -0
  385. package/dist/src/controls/Control.mjs +0 -0
  386. package/dist/src/controls/Control.mjs.map +0 -0
  387. package/dist/src/controls/changeHeight.d.ts +0 -0
  388. package/dist/src/controls/changeHeight.d.ts.map +0 -0
  389. package/dist/src/controls/changeHeight.min.mjs +2 -0
  390. package/dist/src/controls/changeHeight.min.mjs.map +1 -0
  391. package/dist/src/controls/changeHeight.mjs +36 -0
  392. package/dist/src/controls/changeHeight.mjs.map +1 -0
  393. package/dist/src/controls/changeWidth.d.ts +0 -0
  394. package/dist/src/controls/changeWidth.d.ts.map +0 -0
  395. package/dist/src/controls/changeWidth.min.mjs +0 -0
  396. package/dist/src/controls/changeWidth.min.mjs.map +0 -0
  397. package/dist/src/controls/changeWidth.mjs +0 -0
  398. package/dist/src/controls/changeWidth.mjs.map +0 -0
  399. package/dist/src/controls/commonControls.d.ts +0 -0
  400. package/dist/src/controls/commonControls.d.ts.map +0 -0
  401. package/dist/src/controls/commonControls.min.mjs +0 -0
  402. package/dist/src/controls/commonControls.min.mjs.map +0 -0
  403. package/dist/src/controls/commonControls.mjs +0 -0
  404. package/dist/src/controls/commonControls.mjs.map +0 -0
  405. package/dist/src/controls/controlRendering.d.ts +0 -0
  406. package/dist/src/controls/controlRendering.d.ts.map +0 -0
  407. package/dist/src/controls/controlRendering.min.mjs +0 -0
  408. package/dist/src/controls/controlRendering.min.mjs.map +0 -0
  409. package/dist/src/controls/controlRendering.mjs +0 -0
  410. package/dist/src/controls/controlRendering.mjs.map +0 -0
  411. package/dist/src/controls/drag.d.ts +0 -0
  412. package/dist/src/controls/drag.d.ts.map +0 -0
  413. package/dist/src/controls/drag.min.mjs +0 -0
  414. package/dist/src/controls/drag.min.mjs.map +0 -0
  415. package/dist/src/controls/drag.mjs +0 -0
  416. package/dist/src/controls/drag.mjs.map +0 -0
  417. package/dist/src/controls/fireEvent.d.ts +0 -0
  418. package/dist/src/controls/fireEvent.d.ts.map +0 -0
  419. package/dist/src/controls/fireEvent.min.mjs +0 -0
  420. package/dist/src/controls/fireEvent.min.mjs.map +0 -0
  421. package/dist/src/controls/fireEvent.mjs +0 -0
  422. package/dist/src/controls/fireEvent.mjs.map +0 -0
  423. package/dist/src/controls/index.d.ts +0 -0
  424. package/dist/src/controls/index.d.ts.map +0 -0
  425. package/dist/src/controls/index.min.mjs +0 -0
  426. package/dist/src/controls/index.min.mjs.map +0 -0
  427. package/dist/src/controls/index.mjs +0 -0
  428. package/dist/src/controls/index.mjs.map +0 -0
  429. package/dist/src/controls/pathControl.d.ts +0 -0
  430. package/dist/src/controls/pathControl.d.ts.map +0 -0
  431. package/dist/src/controls/pathControl.min.mjs +0 -0
  432. package/dist/src/controls/pathControl.min.mjs.map +0 -0
  433. package/dist/src/controls/pathControl.mjs +0 -0
  434. package/dist/src/controls/pathControl.mjs.map +0 -0
  435. package/dist/src/controls/polyControl.d.ts +0 -0
  436. package/dist/src/controls/polyControl.d.ts.map +0 -0
  437. package/dist/src/controls/polyControl.min.mjs +0 -0
  438. package/dist/src/controls/polyControl.min.mjs.map +0 -0
  439. package/dist/src/controls/polyControl.mjs +0 -0
  440. package/dist/src/controls/polyControl.mjs.map +0 -0
  441. package/dist/src/controls/rotate.d.ts +0 -0
  442. package/dist/src/controls/rotate.d.ts.map +0 -0
  443. package/dist/src/controls/rotate.min.mjs +0 -0
  444. package/dist/src/controls/rotate.min.mjs.map +0 -0
  445. package/dist/src/controls/rotate.mjs +0 -0
  446. package/dist/src/controls/rotate.mjs.map +0 -0
  447. package/dist/src/controls/scale.d.ts +0 -0
  448. package/dist/src/controls/scale.d.ts.map +0 -0
  449. package/dist/src/controls/scale.min.mjs +0 -0
  450. package/dist/src/controls/scale.min.mjs.map +0 -0
  451. package/dist/src/controls/scale.mjs +0 -0
  452. package/dist/src/controls/scale.mjs.map +0 -0
  453. package/dist/src/controls/scaleSkew.d.ts +0 -0
  454. package/dist/src/controls/scaleSkew.d.ts.map +0 -0
  455. package/dist/src/controls/scaleSkew.min.mjs +0 -0
  456. package/dist/src/controls/scaleSkew.min.mjs.map +0 -0
  457. package/dist/src/controls/scaleSkew.mjs +0 -0
  458. package/dist/src/controls/scaleSkew.mjs.map +0 -0
  459. package/dist/src/controls/skew.d.ts +0 -0
  460. package/dist/src/controls/skew.d.ts.map +0 -0
  461. package/dist/src/controls/skew.min.mjs +0 -0
  462. package/dist/src/controls/skew.min.mjs.map +0 -0
  463. package/dist/src/controls/skew.mjs +0 -0
  464. package/dist/src/controls/skew.mjs.map +0 -0
  465. package/dist/src/controls/util.d.ts +0 -0
  466. package/dist/src/controls/util.d.ts.map +0 -0
  467. package/dist/src/controls/util.min.mjs +0 -0
  468. package/dist/src/controls/util.min.mjs.map +0 -0
  469. package/dist/src/controls/util.mjs +0 -0
  470. package/dist/src/controls/util.mjs.map +0 -0
  471. package/dist/src/controls/wrapWithFireEvent.d.ts +0 -0
  472. package/dist/src/controls/wrapWithFireEvent.d.ts.map +0 -0
  473. package/dist/src/controls/wrapWithFireEvent.min.mjs +0 -0
  474. package/dist/src/controls/wrapWithFireEvent.min.mjs.map +0 -0
  475. package/dist/src/controls/wrapWithFireEvent.mjs +0 -0
  476. package/dist/src/controls/wrapWithFireEvent.mjs.map +0 -0
  477. package/dist/src/controls/wrapWithFixedAnchor.d.ts +0 -0
  478. package/dist/src/controls/wrapWithFixedAnchor.d.ts.map +0 -0
  479. package/dist/src/controls/wrapWithFixedAnchor.min.mjs +0 -0
  480. package/dist/src/controls/wrapWithFixedAnchor.min.mjs.map +0 -0
  481. package/dist/src/controls/wrapWithFixedAnchor.mjs +0 -0
  482. package/dist/src/controls/wrapWithFixedAnchor.mjs.map +0 -0
  483. package/dist/src/env/browser.d.ts +0 -0
  484. package/dist/src/env/browser.d.ts.map +0 -0
  485. package/dist/src/env/browser.min.mjs +0 -0
  486. package/dist/src/env/browser.min.mjs.map +0 -0
  487. package/dist/src/env/browser.mjs +0 -0
  488. package/dist/src/env/browser.mjs.map +0 -0
  489. package/dist/src/env/index.d.ts +0 -0
  490. package/dist/src/env/index.d.ts.map +0 -0
  491. package/dist/src/env/index.min.mjs +0 -0
  492. package/dist/src/env/index.min.mjs.map +0 -0
  493. package/dist/src/env/index.mjs +0 -0
  494. package/dist/src/env/index.mjs.map +0 -0
  495. package/dist/src/env/node.d.ts +0 -0
  496. package/dist/src/env/node.d.ts.map +0 -0
  497. package/dist/src/env/types.d.ts +0 -0
  498. package/dist/src/env/types.d.ts.map +0 -0
  499. package/dist/src/filters/BaseFilter.d.ts +0 -0
  500. package/dist/src/filters/BaseFilter.d.ts.map +0 -0
  501. package/dist/src/filters/BaseFilter.min.mjs +0 -0
  502. package/dist/src/filters/BaseFilter.min.mjs.map +0 -0
  503. package/dist/src/filters/BaseFilter.mjs +0 -0
  504. package/dist/src/filters/BaseFilter.mjs.map +0 -0
  505. package/dist/src/filters/BlendColor.d.ts +0 -0
  506. package/dist/src/filters/BlendColor.d.ts.map +0 -0
  507. package/dist/src/filters/BlendColor.min.mjs +0 -0
  508. package/dist/src/filters/BlendColor.min.mjs.map +0 -0
  509. package/dist/src/filters/BlendColor.mjs +0 -0
  510. package/dist/src/filters/BlendColor.mjs.map +0 -0
  511. package/dist/src/filters/BlendImage.d.ts +0 -0
  512. package/dist/src/filters/BlendImage.d.ts.map +0 -0
  513. package/dist/src/filters/BlendImage.min.mjs +0 -0
  514. package/dist/src/filters/BlendImage.min.mjs.map +0 -0
  515. package/dist/src/filters/BlendImage.mjs +0 -0
  516. package/dist/src/filters/BlendImage.mjs.map +0 -0
  517. package/dist/src/filters/Blur.d.ts +0 -0
  518. package/dist/src/filters/Blur.d.ts.map +0 -0
  519. package/dist/src/filters/Blur.min.mjs +0 -0
  520. package/dist/src/filters/Blur.min.mjs.map +0 -0
  521. package/dist/src/filters/Blur.mjs +0 -0
  522. package/dist/src/filters/Blur.mjs.map +0 -0
  523. package/dist/src/filters/Boilerplate.d.ts +0 -0
  524. package/dist/src/filters/Boilerplate.d.ts.map +0 -0
  525. package/dist/src/filters/Brightness.d.ts +0 -0
  526. package/dist/src/filters/Brightness.d.ts.map +0 -0
  527. package/dist/src/filters/Brightness.min.mjs +0 -0
  528. package/dist/src/filters/Brightness.min.mjs.map +0 -0
  529. package/dist/src/filters/Brightness.mjs +0 -0
  530. package/dist/src/filters/Brightness.mjs.map +0 -0
  531. package/dist/src/filters/Canvas2dFilterBackend.d.ts +0 -0
  532. package/dist/src/filters/Canvas2dFilterBackend.d.ts.map +0 -0
  533. package/dist/src/filters/Canvas2dFilterBackend.min.mjs +0 -0
  534. package/dist/src/filters/Canvas2dFilterBackend.min.mjs.map +0 -0
  535. package/dist/src/filters/Canvas2dFilterBackend.mjs +0 -0
  536. package/dist/src/filters/Canvas2dFilterBackend.mjs.map +0 -0
  537. package/dist/src/filters/ColorMatrix.d.ts +0 -0
  538. package/dist/src/filters/ColorMatrix.d.ts.map +0 -0
  539. package/dist/src/filters/ColorMatrix.min.mjs +0 -0
  540. package/dist/src/filters/ColorMatrix.min.mjs.map +0 -0
  541. package/dist/src/filters/ColorMatrix.mjs +0 -0
  542. package/dist/src/filters/ColorMatrix.mjs.map +0 -0
  543. package/dist/src/filters/ColorMatrixFilters.d.ts +0 -0
  544. package/dist/src/filters/ColorMatrixFilters.d.ts.map +0 -0
  545. package/dist/src/filters/ColorMatrixFilters.min.mjs +0 -0
  546. package/dist/src/filters/ColorMatrixFilters.min.mjs.map +0 -0
  547. package/dist/src/filters/ColorMatrixFilters.mjs +0 -0
  548. package/dist/src/filters/ColorMatrixFilters.mjs.map +0 -0
  549. package/dist/src/filters/Composed.d.ts +0 -0
  550. package/dist/src/filters/Composed.d.ts.map +0 -0
  551. package/dist/src/filters/Composed.min.mjs +0 -0
  552. package/dist/src/filters/Composed.min.mjs.map +0 -0
  553. package/dist/src/filters/Composed.mjs +0 -0
  554. package/dist/src/filters/Composed.mjs.map +0 -0
  555. package/dist/src/filters/Contrast.d.ts +0 -0
  556. package/dist/src/filters/Contrast.d.ts.map +0 -0
  557. package/dist/src/filters/Contrast.min.mjs +0 -0
  558. package/dist/src/filters/Contrast.min.mjs.map +0 -0
  559. package/dist/src/filters/Contrast.mjs +0 -0
  560. package/dist/src/filters/Contrast.mjs.map +0 -0
  561. package/dist/src/filters/Convolute.d.ts +0 -0
  562. package/dist/src/filters/Convolute.d.ts.map +0 -0
  563. package/dist/src/filters/Convolute.min.mjs +0 -0
  564. package/dist/src/filters/Convolute.min.mjs.map +0 -0
  565. package/dist/src/filters/Convolute.mjs +0 -0
  566. package/dist/src/filters/Convolute.mjs.map +0 -0
  567. package/dist/src/filters/FilterBackend.d.ts +0 -0
  568. package/dist/src/filters/FilterBackend.d.ts.map +0 -0
  569. package/dist/src/filters/FilterBackend.min.mjs +0 -0
  570. package/dist/src/filters/FilterBackend.min.mjs.map +0 -0
  571. package/dist/src/filters/FilterBackend.mjs +0 -0
  572. package/dist/src/filters/FilterBackend.mjs.map +0 -0
  573. package/dist/src/filters/GLProbes/GLProbe.d.ts +0 -0
  574. package/dist/src/filters/GLProbes/GLProbe.d.ts.map +0 -0
  575. package/dist/src/filters/GLProbes/GLProbe.min.mjs +0 -0
  576. package/dist/src/filters/GLProbes/GLProbe.min.mjs.map +0 -0
  577. package/dist/src/filters/GLProbes/GLProbe.mjs +0 -0
  578. package/dist/src/filters/GLProbes/GLProbe.mjs.map +0 -0
  579. package/dist/src/filters/GLProbes/NodeGLProbe.d.ts +0 -0
  580. package/dist/src/filters/GLProbes/NodeGLProbe.d.ts.map +0 -0
  581. package/dist/src/filters/GLProbes/WebGLProbe.d.ts +0 -0
  582. package/dist/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -0
  583. package/dist/src/filters/GLProbes/WebGLProbe.min.mjs +0 -0
  584. package/dist/src/filters/GLProbes/WebGLProbe.min.mjs.map +0 -0
  585. package/dist/src/filters/GLProbes/WebGLProbe.mjs +0 -0
  586. package/dist/src/filters/GLProbes/WebGLProbe.mjs.map +0 -0
  587. package/dist/src/filters/Gamma.d.ts +0 -0
  588. package/dist/src/filters/Gamma.d.ts.map +0 -0
  589. package/dist/src/filters/Gamma.min.mjs +0 -0
  590. package/dist/src/filters/Gamma.min.mjs.map +0 -0
  591. package/dist/src/filters/Gamma.mjs +0 -0
  592. package/dist/src/filters/Gamma.mjs.map +0 -0
  593. package/dist/src/filters/Grayscale.d.ts +0 -0
  594. package/dist/src/filters/Grayscale.d.ts.map +0 -0
  595. package/dist/src/filters/Grayscale.min.mjs +0 -0
  596. package/dist/src/filters/Grayscale.min.mjs.map +0 -0
  597. package/dist/src/filters/Grayscale.mjs +0 -0
  598. package/dist/src/filters/Grayscale.mjs.map +0 -0
  599. package/dist/src/filters/HueRotation.d.ts +0 -0
  600. package/dist/src/filters/HueRotation.d.ts.map +0 -0
  601. package/dist/src/filters/HueRotation.min.mjs +0 -0
  602. package/dist/src/filters/HueRotation.min.mjs.map +0 -0
  603. package/dist/src/filters/HueRotation.mjs +0 -0
  604. package/dist/src/filters/HueRotation.mjs.map +0 -0
  605. package/dist/src/filters/Invert.d.ts +0 -0
  606. package/dist/src/filters/Invert.d.ts.map +0 -0
  607. package/dist/src/filters/Invert.min.mjs +0 -0
  608. package/dist/src/filters/Invert.min.mjs.map +0 -0
  609. package/dist/src/filters/Invert.mjs +0 -0
  610. package/dist/src/filters/Invert.mjs.map +0 -0
  611. package/dist/src/filters/Noise.d.ts +0 -0
  612. package/dist/src/filters/Noise.d.ts.map +0 -0
  613. package/dist/src/filters/Noise.min.mjs +0 -0
  614. package/dist/src/filters/Noise.min.mjs.map +0 -0
  615. package/dist/src/filters/Noise.mjs +0 -0
  616. package/dist/src/filters/Noise.mjs.map +0 -0
  617. package/dist/src/filters/Pixelate.d.ts +0 -0
  618. package/dist/src/filters/Pixelate.d.ts.map +0 -0
  619. package/dist/src/filters/Pixelate.min.mjs +0 -0
  620. package/dist/src/filters/Pixelate.min.mjs.map +0 -0
  621. package/dist/src/filters/Pixelate.mjs +0 -0
  622. package/dist/src/filters/Pixelate.mjs.map +0 -0
  623. package/dist/src/filters/RemoveColor.d.ts +0 -0
  624. package/dist/src/filters/RemoveColor.d.ts.map +0 -0
  625. package/dist/src/filters/RemoveColor.min.mjs +0 -0
  626. package/dist/src/filters/RemoveColor.min.mjs.map +0 -0
  627. package/dist/src/filters/RemoveColor.mjs +0 -0
  628. package/dist/src/filters/RemoveColor.mjs.map +0 -0
  629. package/dist/src/filters/Resize.d.ts +0 -0
  630. package/dist/src/filters/Resize.d.ts.map +0 -0
  631. package/dist/src/filters/Resize.min.mjs +0 -0
  632. package/dist/src/filters/Resize.min.mjs.map +0 -0
  633. package/dist/src/filters/Resize.mjs +0 -0
  634. package/dist/src/filters/Resize.mjs.map +0 -0
  635. package/dist/src/filters/Saturation.d.ts +0 -0
  636. package/dist/src/filters/Saturation.d.ts.map +0 -0
  637. package/dist/src/filters/Saturation.min.mjs +0 -0
  638. package/dist/src/filters/Saturation.min.mjs.map +0 -0
  639. package/dist/src/filters/Saturation.mjs +0 -0
  640. package/dist/src/filters/Saturation.mjs.map +0 -0
  641. package/dist/src/filters/Vibrance.d.ts +0 -0
  642. package/dist/src/filters/Vibrance.d.ts.map +0 -0
  643. package/dist/src/filters/Vibrance.min.mjs +0 -0
  644. package/dist/src/filters/Vibrance.min.mjs.map +0 -0
  645. package/dist/src/filters/Vibrance.mjs +0 -0
  646. package/dist/src/filters/Vibrance.mjs.map +0 -0
  647. package/dist/src/filters/WebGLFilterBackend.d.ts +0 -0
  648. package/dist/src/filters/WebGLFilterBackend.d.ts.map +0 -0
  649. package/dist/src/filters/WebGLFilterBackend.min.mjs +0 -0
  650. package/dist/src/filters/WebGLFilterBackend.min.mjs.map +0 -0
  651. package/dist/src/filters/WebGLFilterBackend.mjs +0 -0
  652. package/dist/src/filters/WebGLFilterBackend.mjs.map +0 -0
  653. package/dist/src/filters/filters.d.ts +0 -0
  654. package/dist/src/filters/filters.d.ts.map +0 -0
  655. package/dist/src/filters/filters.min.mjs +0 -0
  656. package/dist/src/filters/filters.min.mjs.map +0 -0
  657. package/dist/src/filters/filters.mjs +0 -0
  658. package/dist/src/filters/filters.mjs.map +0 -0
  659. package/dist/src/filters/index.d.ts +0 -0
  660. package/dist/src/filters/index.d.ts.map +0 -0
  661. package/dist/src/filters/shaders/baseFilter.d.ts +0 -0
  662. package/dist/src/filters/shaders/baseFilter.d.ts.map +0 -0
  663. package/dist/src/filters/shaders/baseFilter.min.mjs +0 -0
  664. package/dist/src/filters/shaders/baseFilter.min.mjs.map +0 -0
  665. package/dist/src/filters/shaders/baseFilter.mjs +0 -0
  666. package/dist/src/filters/shaders/baseFilter.mjs.map +0 -0
  667. package/dist/src/filters/shaders/blendColor.d.ts +0 -0
  668. package/dist/src/filters/shaders/blendColor.d.ts.map +0 -0
  669. package/dist/src/filters/shaders/blendColor.min.mjs +0 -0
  670. package/dist/src/filters/shaders/blendColor.min.mjs.map +0 -0
  671. package/dist/src/filters/shaders/blendColor.mjs +0 -0
  672. package/dist/src/filters/shaders/blendColor.mjs.map +0 -0
  673. package/dist/src/filters/shaders/blendImage.d.ts +0 -0
  674. package/dist/src/filters/shaders/blendImage.d.ts.map +0 -0
  675. package/dist/src/filters/shaders/blendImage.min.mjs +0 -0
  676. package/dist/src/filters/shaders/blendImage.min.mjs.map +0 -0
  677. package/dist/src/filters/shaders/blendImage.mjs +0 -0
  678. package/dist/src/filters/shaders/blendImage.mjs.map +0 -0
  679. package/dist/src/filters/shaders/blur.d.ts +0 -0
  680. package/dist/src/filters/shaders/blur.d.ts.map +0 -0
  681. package/dist/src/filters/shaders/blur.min.mjs +0 -0
  682. package/dist/src/filters/shaders/blur.min.mjs.map +0 -0
  683. package/dist/src/filters/shaders/blur.mjs +0 -0
  684. package/dist/src/filters/shaders/blur.mjs.map +0 -0
  685. package/dist/src/filters/shaders/brightness.d.ts +0 -0
  686. package/dist/src/filters/shaders/brightness.d.ts.map +0 -0
  687. package/dist/src/filters/shaders/brightness.min.mjs +0 -0
  688. package/dist/src/filters/shaders/brightness.min.mjs.map +0 -0
  689. package/dist/src/filters/shaders/brightness.mjs +0 -0
  690. package/dist/src/filters/shaders/brightness.mjs.map +0 -0
  691. package/dist/src/filters/shaders/colorMatrix.d.ts +0 -0
  692. package/dist/src/filters/shaders/colorMatrix.d.ts.map +0 -0
  693. package/dist/src/filters/shaders/colorMatrix.min.mjs +0 -0
  694. package/dist/src/filters/shaders/colorMatrix.min.mjs.map +0 -0
  695. package/dist/src/filters/shaders/colorMatrix.mjs +0 -0
  696. package/dist/src/filters/shaders/colorMatrix.mjs.map +0 -0
  697. package/dist/src/filters/shaders/constrast.d.ts +0 -0
  698. package/dist/src/filters/shaders/constrast.d.ts.map +0 -0
  699. package/dist/src/filters/shaders/constrast.min.mjs +0 -0
  700. package/dist/src/filters/shaders/constrast.min.mjs.map +0 -0
  701. package/dist/src/filters/shaders/constrast.mjs +0 -0
  702. package/dist/src/filters/shaders/constrast.mjs.map +0 -0
  703. package/dist/src/filters/shaders/convolute.d.ts +0 -0
  704. package/dist/src/filters/shaders/convolute.d.ts.map +0 -0
  705. package/dist/src/filters/shaders/convolute.min.mjs +0 -0
  706. package/dist/src/filters/shaders/convolute.min.mjs.map +0 -0
  707. package/dist/src/filters/shaders/convolute.mjs +0 -0
  708. package/dist/src/filters/shaders/convolute.mjs.map +0 -0
  709. package/dist/src/filters/shaders/gamma.d.ts +0 -0
  710. package/dist/src/filters/shaders/gamma.d.ts.map +0 -0
  711. package/dist/src/filters/shaders/gamma.min.mjs +0 -0
  712. package/dist/src/filters/shaders/gamma.min.mjs.map +0 -0
  713. package/dist/src/filters/shaders/gamma.mjs +0 -0
  714. package/dist/src/filters/shaders/gamma.mjs.map +0 -0
  715. package/dist/src/filters/shaders/grayscale.d.ts +0 -0
  716. package/dist/src/filters/shaders/grayscale.d.ts.map +0 -0
  717. package/dist/src/filters/shaders/grayscale.min.mjs +0 -0
  718. package/dist/src/filters/shaders/grayscale.min.mjs.map +0 -0
  719. package/dist/src/filters/shaders/grayscale.mjs +0 -0
  720. package/dist/src/filters/shaders/grayscale.mjs.map +0 -0
  721. package/dist/src/filters/shaders/invert.d.ts +0 -0
  722. package/dist/src/filters/shaders/invert.d.ts.map +0 -0
  723. package/dist/src/filters/shaders/invert.min.mjs +0 -0
  724. package/dist/src/filters/shaders/invert.min.mjs.map +0 -0
  725. package/dist/src/filters/shaders/invert.mjs +0 -0
  726. package/dist/src/filters/shaders/invert.mjs.map +0 -0
  727. package/dist/src/filters/shaders/noise.d.ts +0 -0
  728. package/dist/src/filters/shaders/noise.d.ts.map +0 -0
  729. package/dist/src/filters/shaders/noise.min.mjs +0 -0
  730. package/dist/src/filters/shaders/noise.min.mjs.map +0 -0
  731. package/dist/src/filters/shaders/noise.mjs +0 -0
  732. package/dist/src/filters/shaders/noise.mjs.map +0 -0
  733. package/dist/src/filters/shaders/pixelate.d.ts +0 -0
  734. package/dist/src/filters/shaders/pixelate.d.ts.map +0 -0
  735. package/dist/src/filters/shaders/pixelate.min.mjs +0 -0
  736. package/dist/src/filters/shaders/pixelate.min.mjs.map +0 -0
  737. package/dist/src/filters/shaders/pixelate.mjs +0 -0
  738. package/dist/src/filters/shaders/pixelate.mjs.map +0 -0
  739. package/dist/src/filters/shaders/removeColor.d.ts +0 -0
  740. package/dist/src/filters/shaders/removeColor.d.ts.map +0 -0
  741. package/dist/src/filters/shaders/removeColor.min.mjs +0 -0
  742. package/dist/src/filters/shaders/removeColor.min.mjs.map +0 -0
  743. package/dist/src/filters/shaders/removeColor.mjs +0 -0
  744. package/dist/src/filters/shaders/removeColor.mjs.map +0 -0
  745. package/dist/src/filters/shaders/saturation.d.ts +0 -0
  746. package/dist/src/filters/shaders/saturation.d.ts.map +0 -0
  747. package/dist/src/filters/shaders/saturation.min.mjs +0 -0
  748. package/dist/src/filters/shaders/saturation.min.mjs.map +0 -0
  749. package/dist/src/filters/shaders/saturation.mjs +0 -0
  750. package/dist/src/filters/shaders/saturation.mjs.map +0 -0
  751. package/dist/src/filters/shaders/vibrance.d.ts +0 -0
  752. package/dist/src/filters/shaders/vibrance.d.ts.map +0 -0
  753. package/dist/src/filters/shaders/vibrance.min.mjs +0 -0
  754. package/dist/src/filters/shaders/vibrance.min.mjs.map +0 -0
  755. package/dist/src/filters/shaders/vibrance.mjs +0 -0
  756. package/dist/src/filters/shaders/vibrance.mjs.map +0 -0
  757. package/dist/src/filters/typedefs.d.ts +0 -0
  758. package/dist/src/filters/typedefs.d.ts.map +0 -0
  759. package/dist/src/filters/utils.d.ts +0 -0
  760. package/dist/src/filters/utils.d.ts.map +0 -0
  761. package/dist/src/filters/utils.min.mjs +0 -0
  762. package/dist/src/filters/utils.min.mjs.map +0 -0
  763. package/dist/src/filters/utils.mjs +0 -0
  764. package/dist/src/filters/utils.mjs.map +0 -0
  765. package/dist/src/gradient/Gradient.d.ts +0 -0
  766. package/dist/src/gradient/Gradient.d.ts.map +0 -0
  767. package/dist/src/gradient/Gradient.min.mjs +0 -0
  768. package/dist/src/gradient/Gradient.min.mjs.map +0 -0
  769. package/dist/src/gradient/Gradient.mjs +0 -0
  770. package/dist/src/gradient/Gradient.mjs.map +0 -0
  771. package/dist/src/gradient/constants.d.ts +0 -0
  772. package/dist/src/gradient/constants.d.ts.map +0 -0
  773. package/dist/src/gradient/constants.min.mjs +0 -0
  774. package/dist/src/gradient/constants.min.mjs.map +0 -0
  775. package/dist/src/gradient/constants.mjs +0 -0
  776. package/dist/src/gradient/constants.mjs.map +0 -0
  777. package/dist/src/gradient/index.d.ts +0 -0
  778. package/dist/src/gradient/index.d.ts.map +0 -0
  779. package/dist/src/gradient/parser/misc.d.ts +0 -0
  780. package/dist/src/gradient/parser/misc.d.ts.map +0 -0
  781. package/dist/src/gradient/parser/misc.min.mjs +0 -0
  782. package/dist/src/gradient/parser/misc.min.mjs.map +0 -0
  783. package/dist/src/gradient/parser/misc.mjs +0 -0
  784. package/dist/src/gradient/parser/misc.mjs.map +0 -0
  785. package/dist/src/gradient/parser/parseColorStops.d.ts +0 -0
  786. package/dist/src/gradient/parser/parseColorStops.d.ts.map +0 -0
  787. package/dist/src/gradient/parser/parseColorStops.min.mjs +0 -0
  788. package/dist/src/gradient/parser/parseColorStops.min.mjs.map +0 -0
  789. package/dist/src/gradient/parser/parseColorStops.mjs +0 -0
  790. package/dist/src/gradient/parser/parseColorStops.mjs.map +0 -0
  791. package/dist/src/gradient/parser/parseCoords.d.ts +0 -0
  792. package/dist/src/gradient/parser/parseCoords.d.ts.map +0 -0
  793. package/dist/src/gradient/parser/parseCoords.min.mjs +0 -0
  794. package/dist/src/gradient/parser/parseCoords.min.mjs.map +0 -0
  795. package/dist/src/gradient/parser/parseCoords.mjs +0 -0
  796. package/dist/src/gradient/parser/parseCoords.mjs.map +0 -0
  797. package/dist/src/gradient/typedefs.d.ts +0 -0
  798. package/dist/src/gradient/typedefs.d.ts.map +0 -0
  799. package/dist/src/mixins/eraser_brush.mixin.d.ts +0 -0
  800. package/dist/src/mixins/eraser_brush.mixin.d.ts.map +0 -0
  801. package/dist/src/parkinglot/canvas_animation.mixin.d.ts +0 -0
  802. package/dist/src/parkinglot/canvas_animation.mixin.d.ts.map +0 -0
  803. package/dist/src/parkinglot/straighten.d.ts +0 -0
  804. package/dist/src/parkinglot/straighten.d.ts.map +0 -0
  805. package/dist/src/parser/applyViewboxTransform.d.ts +0 -0
  806. package/dist/src/parser/applyViewboxTransform.d.ts.map +0 -0
  807. package/dist/src/parser/applyViewboxTransform.min.mjs +0 -0
  808. package/dist/src/parser/applyViewboxTransform.min.mjs.map +0 -0
  809. package/dist/src/parser/applyViewboxTransform.mjs +0 -0
  810. package/dist/src/parser/applyViewboxTransform.mjs.map +0 -0
  811. package/dist/src/parser/attributes.d.ts +0 -0
  812. package/dist/src/parser/attributes.d.ts.map +0 -0
  813. package/dist/src/parser/attributes.min.mjs +0 -0
  814. package/dist/src/parser/attributes.min.mjs.map +0 -0
  815. package/dist/src/parser/attributes.mjs +0 -0
  816. package/dist/src/parser/attributes.mjs.map +0 -0
  817. package/dist/src/parser/constants.d.ts +0 -0
  818. package/dist/src/parser/constants.d.ts.map +0 -0
  819. package/dist/src/parser/constants.min.mjs +0 -0
  820. package/dist/src/parser/constants.min.mjs.map +0 -0
  821. package/dist/src/parser/constants.mjs +0 -0
  822. package/dist/src/parser/constants.mjs.map +0 -0
  823. package/dist/src/parser/doesSomeParentMatch.d.ts +0 -0
  824. package/dist/src/parser/doesSomeParentMatch.d.ts.map +0 -0
  825. package/dist/src/parser/doesSomeParentMatch.min.mjs +0 -0
  826. package/dist/src/parser/doesSomeParentMatch.min.mjs.map +0 -0
  827. package/dist/src/parser/doesSomeParentMatch.mjs +0 -0
  828. package/dist/src/parser/doesSomeParentMatch.mjs.map +0 -0
  829. package/dist/src/parser/elementMatchesRule.d.ts +0 -0
  830. package/dist/src/parser/elementMatchesRule.d.ts.map +0 -0
  831. package/dist/src/parser/elementMatchesRule.min.mjs +0 -0
  832. package/dist/src/parser/elementMatchesRule.min.mjs.map +0 -0
  833. package/dist/src/parser/elementMatchesRule.mjs +0 -0
  834. package/dist/src/parser/elementMatchesRule.mjs.map +0 -0
  835. package/dist/src/parser/elements_parser.d.ts +0 -0
  836. package/dist/src/parser/elements_parser.d.ts.map +0 -0
  837. package/dist/src/parser/elements_parser.min.mjs +0 -0
  838. package/dist/src/parser/elements_parser.min.mjs.map +0 -0
  839. package/dist/src/parser/elements_parser.mjs +0 -0
  840. package/dist/src/parser/elements_parser.mjs.map +0 -0
  841. package/dist/src/parser/getCSSRules.d.ts +0 -0
  842. package/dist/src/parser/getCSSRules.d.ts.map +0 -0
  843. package/dist/src/parser/getCSSRules.min.mjs +0 -0
  844. package/dist/src/parser/getCSSRules.min.mjs.map +0 -0
  845. package/dist/src/parser/getCSSRules.mjs +0 -0
  846. package/dist/src/parser/getCSSRules.mjs.map +0 -0
  847. package/dist/src/parser/getGlobalStylesForElement.d.ts +0 -0
  848. package/dist/src/parser/getGlobalStylesForElement.d.ts.map +0 -0
  849. package/dist/src/parser/getGlobalStylesForElement.min.mjs +0 -0
  850. package/dist/src/parser/getGlobalStylesForElement.min.mjs.map +0 -0
  851. package/dist/src/parser/getGlobalStylesForElement.mjs +0 -0
  852. package/dist/src/parser/getGlobalStylesForElement.mjs.map +0 -0
  853. package/dist/src/parser/getGradientDefs.d.ts +0 -0
  854. package/dist/src/parser/getGradientDefs.d.ts.map +0 -0
  855. package/dist/src/parser/getGradientDefs.min.mjs +0 -0
  856. package/dist/src/parser/getGradientDefs.min.mjs.map +0 -0
  857. package/dist/src/parser/getGradientDefs.mjs +0 -0
  858. package/dist/src/parser/getGradientDefs.mjs.map +0 -0
  859. package/dist/src/parser/getMultipleNodes.d.ts +0 -0
  860. package/dist/src/parser/getMultipleNodes.d.ts.map +0 -0
  861. package/dist/src/parser/getMultipleNodes.min.mjs +0 -0
  862. package/dist/src/parser/getMultipleNodes.min.mjs.map +0 -0
  863. package/dist/src/parser/getMultipleNodes.mjs +0 -0
  864. package/dist/src/parser/getMultipleNodes.mjs.map +0 -0
  865. package/dist/src/parser/getSvgRegex.d.ts +0 -0
  866. package/dist/src/parser/getSvgRegex.d.ts.map +0 -0
  867. package/dist/src/parser/getSvgRegex.min.mjs +0 -0
  868. package/dist/src/parser/getSvgRegex.min.mjs.map +0 -0
  869. package/dist/src/parser/getSvgRegex.mjs +0 -0
  870. package/dist/src/parser/getSvgRegex.mjs.map +0 -0
  871. package/dist/src/parser/getTagName.d.ts +0 -0
  872. package/dist/src/parser/getTagName.d.ts.map +0 -0
  873. package/dist/src/parser/getTagName.min.mjs +0 -0
  874. package/dist/src/parser/getTagName.min.mjs.map +0 -0
  875. package/dist/src/parser/getTagName.mjs +0 -0
  876. package/dist/src/parser/getTagName.mjs.map +0 -0
  877. package/dist/src/parser/hasInvalidAncestor.d.ts +0 -0
  878. package/dist/src/parser/hasInvalidAncestor.d.ts.map +0 -0
  879. package/dist/src/parser/hasInvalidAncestor.min.mjs +0 -0
  880. package/dist/src/parser/hasInvalidAncestor.min.mjs.map +0 -0
  881. package/dist/src/parser/hasInvalidAncestor.mjs +0 -0
  882. package/dist/src/parser/hasInvalidAncestor.mjs.map +0 -0
  883. package/dist/src/parser/loadSVGFromString.d.ts +0 -0
  884. package/dist/src/parser/loadSVGFromString.d.ts.map +0 -0
  885. package/dist/src/parser/loadSVGFromString.min.mjs +0 -0
  886. package/dist/src/parser/loadSVGFromString.min.mjs.map +0 -0
  887. package/dist/src/parser/loadSVGFromString.mjs +0 -0
  888. package/dist/src/parser/loadSVGFromString.mjs.map +0 -0
  889. package/dist/src/parser/loadSVGFromURL.d.ts +0 -0
  890. package/dist/src/parser/loadSVGFromURL.d.ts.map +0 -0
  891. package/dist/src/parser/loadSVGFromURL.min.mjs +0 -0
  892. package/dist/src/parser/loadSVGFromURL.min.mjs.map +0 -0
  893. package/dist/src/parser/loadSVGFromURL.mjs +0 -0
  894. package/dist/src/parser/loadSVGFromURL.mjs.map +0 -0
  895. package/dist/src/parser/normalizeAttr.d.ts +0 -0
  896. package/dist/src/parser/normalizeAttr.d.ts.map +0 -0
  897. package/dist/src/parser/normalizeAttr.min.mjs +0 -0
  898. package/dist/src/parser/normalizeAttr.min.mjs.map +0 -0
  899. package/dist/src/parser/normalizeAttr.mjs +0 -0
  900. package/dist/src/parser/normalizeAttr.mjs.map +0 -0
  901. package/dist/src/parser/normalizeValue.d.ts +0 -0
  902. package/dist/src/parser/normalizeValue.d.ts.map +0 -0
  903. package/dist/src/parser/normalizeValue.min.mjs +0 -0
  904. package/dist/src/parser/normalizeValue.min.mjs.map +0 -0
  905. package/dist/src/parser/normalizeValue.mjs +0 -0
  906. package/dist/src/parser/normalizeValue.mjs.map +0 -0
  907. package/dist/src/parser/parseAttributes.d.ts +0 -0
  908. package/dist/src/parser/parseAttributes.d.ts.map +0 -0
  909. package/dist/src/parser/parseAttributes.min.mjs +0 -0
  910. package/dist/src/parser/parseAttributes.min.mjs.map +0 -0
  911. package/dist/src/parser/parseAttributes.mjs +0 -0
  912. package/dist/src/parser/parseAttributes.mjs.map +0 -0
  913. package/dist/src/parser/parseFontDeclaration.d.ts +0 -0
  914. package/dist/src/parser/parseFontDeclaration.d.ts.map +0 -0
  915. package/dist/src/parser/parseFontDeclaration.min.mjs +0 -0
  916. package/dist/src/parser/parseFontDeclaration.min.mjs.map +0 -0
  917. package/dist/src/parser/parseFontDeclaration.mjs +0 -0
  918. package/dist/src/parser/parseFontDeclaration.mjs.map +0 -0
  919. package/dist/src/parser/parsePointsAttribute.d.ts +0 -0
  920. package/dist/src/parser/parsePointsAttribute.d.ts.map +0 -0
  921. package/dist/src/parser/parsePointsAttribute.min.mjs +0 -0
  922. package/dist/src/parser/parsePointsAttribute.min.mjs.map +0 -0
  923. package/dist/src/parser/parsePointsAttribute.mjs +0 -0
  924. package/dist/src/parser/parsePointsAttribute.mjs.map +0 -0
  925. package/dist/src/parser/parseSVGDocument.d.ts +0 -0
  926. package/dist/src/parser/parseSVGDocument.d.ts.map +0 -0
  927. package/dist/src/parser/parseSVGDocument.min.mjs +0 -0
  928. package/dist/src/parser/parseSVGDocument.min.mjs.map +0 -0
  929. package/dist/src/parser/parseSVGDocument.mjs +0 -0
  930. package/dist/src/parser/parseSVGDocument.mjs.map +0 -0
  931. package/dist/src/parser/parseStyleAttribute.d.ts +0 -0
  932. package/dist/src/parser/parseStyleAttribute.d.ts.map +0 -0
  933. package/dist/src/parser/parseStyleAttribute.min.mjs +0 -0
  934. package/dist/src/parser/parseStyleAttribute.min.mjs.map +0 -0
  935. package/dist/src/parser/parseStyleAttribute.mjs +0 -0
  936. package/dist/src/parser/parseStyleAttribute.mjs.map +0 -0
  937. package/dist/src/parser/parseStyleObject.d.ts +0 -0
  938. package/dist/src/parser/parseStyleObject.d.ts.map +0 -0
  939. package/dist/src/parser/parseStyleObject.min.mjs +0 -0
  940. package/dist/src/parser/parseStyleObject.min.mjs.map +0 -0
  941. package/dist/src/parser/parseStyleObject.mjs +0 -0
  942. package/dist/src/parser/parseStyleObject.mjs.map +0 -0
  943. package/dist/src/parser/parseStyleString.d.ts +0 -0
  944. package/dist/src/parser/parseStyleString.d.ts.map +0 -0
  945. package/dist/src/parser/parseStyleString.min.mjs +0 -0
  946. package/dist/src/parser/parseStyleString.min.mjs.map +0 -0
  947. package/dist/src/parser/parseStyleString.mjs +0 -0
  948. package/dist/src/parser/parseStyleString.mjs.map +0 -0
  949. package/dist/src/parser/parseTransformAttribute.d.ts +0 -0
  950. package/dist/src/parser/parseTransformAttribute.d.ts.map +0 -0
  951. package/dist/src/parser/parseTransformAttribute.min.mjs +0 -0
  952. package/dist/src/parser/parseTransformAttribute.min.mjs.map +0 -0
  953. package/dist/src/parser/parseTransformAttribute.mjs +0 -0
  954. package/dist/src/parser/parseTransformAttribute.mjs.map +0 -0
  955. package/dist/src/parser/parseUseDirectives.d.ts +0 -0
  956. package/dist/src/parser/parseUseDirectives.d.ts.map +0 -0
  957. package/dist/src/parser/parseUseDirectives.min.mjs +0 -0
  958. package/dist/src/parser/parseUseDirectives.min.mjs.map +0 -0
  959. package/dist/src/parser/parseUseDirectives.mjs +0 -0
  960. package/dist/src/parser/parseUseDirectives.mjs.map +0 -0
  961. package/dist/src/parser/percent.d.ts +0 -0
  962. package/dist/src/parser/percent.d.ts.map +0 -0
  963. package/dist/src/parser/percent.min.mjs +0 -0
  964. package/dist/src/parser/percent.min.mjs.map +0 -0
  965. package/dist/src/parser/percent.mjs +0 -0
  966. package/dist/src/parser/percent.mjs.map +0 -0
  967. package/dist/src/parser/recursivelyParseGradientsXlink.d.ts +0 -0
  968. package/dist/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -0
  969. package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs +0 -0
  970. package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs.map +0 -0
  971. package/dist/src/parser/recursivelyParseGradientsXlink.mjs +0 -0
  972. package/dist/src/parser/recursivelyParseGradientsXlink.mjs.map +0 -0
  973. package/dist/src/parser/selectorMatches.d.ts +0 -0
  974. package/dist/src/parser/selectorMatches.d.ts.map +0 -0
  975. package/dist/src/parser/selectorMatches.min.mjs +0 -0
  976. package/dist/src/parser/selectorMatches.min.mjs.map +0 -0
  977. package/dist/src/parser/selectorMatches.mjs +0 -0
  978. package/dist/src/parser/selectorMatches.mjs.map +0 -0
  979. package/dist/src/parser/setStrokeFillOpacity.d.ts +0 -0
  980. package/dist/src/parser/setStrokeFillOpacity.d.ts.map +0 -0
  981. package/dist/src/parser/setStrokeFillOpacity.min.mjs +0 -0
  982. package/dist/src/parser/setStrokeFillOpacity.min.mjs.map +0 -0
  983. package/dist/src/parser/setStrokeFillOpacity.mjs +0 -0
  984. package/dist/src/parser/setStrokeFillOpacity.mjs.map +0 -0
  985. package/dist/src/parser/typedefs.d.ts +0 -0
  986. package/dist/src/parser/typedefs.d.ts.map +0 -0
  987. package/dist/src/shapes/ActiveSelection.d.ts +0 -0
  988. package/dist/src/shapes/ActiveSelection.d.ts.map +0 -0
  989. package/dist/src/shapes/ActiveSelection.min.mjs +0 -0
  990. package/dist/src/shapes/ActiveSelection.min.mjs.map +0 -0
  991. package/dist/src/shapes/ActiveSelection.mjs +0 -0
  992. package/dist/src/shapes/ActiveSelection.mjs.map +0 -0
  993. package/dist/src/shapes/Circle.d.ts +0 -0
  994. package/dist/src/shapes/Circle.d.ts.map +0 -0
  995. package/dist/src/shapes/Circle.min.mjs +0 -0
  996. package/dist/src/shapes/Circle.min.mjs.map +0 -0
  997. package/dist/src/shapes/Circle.mjs +0 -0
  998. package/dist/src/shapes/Circle.mjs.map +0 -0
  999. package/dist/src/shapes/Ellipse.d.ts +0 -0
  1000. package/dist/src/shapes/Ellipse.d.ts.map +0 -0
  1001. package/dist/src/shapes/Ellipse.min.mjs +0 -0
  1002. package/dist/src/shapes/Ellipse.min.mjs.map +0 -0
  1003. package/dist/src/shapes/Ellipse.mjs +0 -0
  1004. package/dist/src/shapes/Ellipse.mjs.map +0 -0
  1005. package/dist/src/shapes/Group.d.ts +0 -0
  1006. package/dist/src/shapes/Group.d.ts.map +0 -0
  1007. package/dist/src/shapes/Group.min.mjs +0 -0
  1008. package/dist/src/shapes/Group.min.mjs.map +0 -0
  1009. package/dist/src/shapes/Group.mjs +0 -0
  1010. package/dist/src/shapes/Group.mjs.map +0 -0
  1011. package/dist/src/shapes/IText/DraggableTextDelegate.d.ts +0 -0
  1012. package/dist/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -0
  1013. package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs +0 -0
  1014. package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs.map +0 -0
  1015. package/dist/src/shapes/IText/DraggableTextDelegate.mjs +0 -0
  1016. package/dist/src/shapes/IText/DraggableTextDelegate.mjs.map +0 -0
  1017. package/dist/src/shapes/IText/IText.d.ts +0 -0
  1018. package/dist/src/shapes/IText/IText.d.ts.map +0 -0
  1019. package/dist/src/shapes/IText/IText.min.mjs +0 -0
  1020. package/dist/src/shapes/IText/IText.min.mjs.map +1 -1
  1021. package/dist/src/shapes/IText/IText.mjs +206 -206
  1022. package/dist/src/shapes/IText/IText.mjs.map +1 -1
  1023. package/dist/src/shapes/IText/ITextBehavior.d.ts +0 -0
  1024. package/dist/src/shapes/IText/ITextBehavior.d.ts.map +0 -0
  1025. package/dist/src/shapes/IText/ITextBehavior.min.mjs +0 -0
  1026. package/dist/src/shapes/IText/ITextBehavior.min.mjs.map +1 -1
  1027. package/dist/src/shapes/IText/ITextBehavior.mjs +152 -152
  1028. package/dist/src/shapes/IText/ITextBehavior.mjs.map +1 -1
  1029. package/dist/src/shapes/IText/ITextClickBehavior.d.ts +0 -0
  1030. package/dist/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -0
  1031. package/dist/src/shapes/IText/ITextClickBehavior.min.mjs +0 -0
  1032. package/dist/src/shapes/IText/ITextClickBehavior.min.mjs.map +1 -1
  1033. package/dist/src/shapes/IText/ITextClickBehavior.mjs +36 -36
  1034. package/dist/src/shapes/IText/ITextClickBehavior.mjs.map +1 -1
  1035. package/dist/src/shapes/IText/ITextKeyBehavior.d.ts +0 -0
  1036. package/dist/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -0
  1037. package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs +0 -0
  1038. package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs.map +0 -0
  1039. package/dist/src/shapes/IText/ITextKeyBehavior.mjs +0 -0
  1040. package/dist/src/shapes/IText/ITextKeyBehavior.mjs.map +0 -0
  1041. package/dist/src/shapes/IText/constants.d.ts +0 -0
  1042. package/dist/src/shapes/IText/constants.d.ts.map +0 -0
  1043. package/dist/src/shapes/IText/constants.min.mjs +0 -0
  1044. package/dist/src/shapes/IText/constants.min.mjs.map +0 -0
  1045. package/dist/src/shapes/IText/constants.mjs +0 -0
  1046. package/dist/src/shapes/IText/constants.mjs.map +0 -0
  1047. package/dist/src/shapes/Image.d.ts +0 -0
  1048. package/dist/src/shapes/Image.d.ts.map +0 -0
  1049. package/dist/src/shapes/Image.min.mjs +0 -0
  1050. package/dist/src/shapes/Image.min.mjs.map +0 -0
  1051. package/dist/src/shapes/Image.mjs +0 -0
  1052. package/dist/src/shapes/Image.mjs.map +0 -0
  1053. package/dist/src/shapes/Line.d.ts +0 -0
  1054. package/dist/src/shapes/Line.d.ts.map +0 -0
  1055. package/dist/src/shapes/Line.min.mjs +0 -0
  1056. package/dist/src/shapes/Line.min.mjs.map +0 -0
  1057. package/dist/src/shapes/Line.mjs +0 -0
  1058. package/dist/src/shapes/Line.mjs.map +0 -0
  1059. package/dist/src/shapes/Object/FabricObject.d.ts +0 -0
  1060. package/dist/src/shapes/Object/FabricObject.d.ts.map +0 -0
  1061. package/dist/src/shapes/Object/FabricObject.min.mjs +0 -0
  1062. package/dist/src/shapes/Object/FabricObject.min.mjs.map +0 -0
  1063. package/dist/src/shapes/Object/FabricObject.mjs +0 -0
  1064. package/dist/src/shapes/Object/FabricObject.mjs.map +0 -0
  1065. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -0
  1066. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -0
  1067. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs +0 -0
  1068. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs.map +0 -0
  1069. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs +0 -0
  1070. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs.map +0 -0
  1071. package/dist/src/shapes/Object/InteractiveObject.d.ts +0 -0
  1072. package/dist/src/shapes/Object/InteractiveObject.d.ts.map +0 -0
  1073. package/dist/src/shapes/Object/InteractiveObject.min.mjs +0 -0
  1074. package/dist/src/shapes/Object/InteractiveObject.min.mjs.map +0 -0
  1075. package/dist/src/shapes/Object/InteractiveObject.mjs +0 -0
  1076. package/dist/src/shapes/Object/InteractiveObject.mjs.map +0 -0
  1077. package/dist/src/shapes/Object/Object.d.ts +0 -0
  1078. package/dist/src/shapes/Object/Object.d.ts.map +0 -0
  1079. package/dist/src/shapes/Object/Object.min.mjs +0 -0
  1080. package/dist/src/shapes/Object/Object.min.mjs.map +0 -0
  1081. package/dist/src/shapes/Object/Object.mjs +0 -0
  1082. package/dist/src/shapes/Object/Object.mjs.map +0 -0
  1083. package/dist/src/shapes/Object/ObjectGeometry.d.ts +0 -0
  1084. package/dist/src/shapes/Object/ObjectGeometry.d.ts.map +0 -0
  1085. package/dist/src/shapes/Object/ObjectGeometry.min.mjs +0 -0
  1086. package/dist/src/shapes/Object/ObjectGeometry.min.mjs.map +0 -0
  1087. package/dist/src/shapes/Object/ObjectGeometry.mjs +0 -0
  1088. package/dist/src/shapes/Object/ObjectGeometry.mjs.map +0 -0
  1089. package/dist/src/shapes/Object/defaultValues.d.ts +0 -0
  1090. package/dist/src/shapes/Object/defaultValues.d.ts.map +0 -0
  1091. package/dist/src/shapes/Object/defaultValues.min.mjs +0 -0
  1092. package/dist/src/shapes/Object/defaultValues.min.mjs.map +0 -0
  1093. package/dist/src/shapes/Object/defaultValues.mjs +0 -0
  1094. package/dist/src/shapes/Object/defaultValues.mjs.map +0 -0
  1095. package/dist/src/shapes/Object/types/BaseProps.d.ts +0 -0
  1096. package/dist/src/shapes/Object/types/BaseProps.d.ts.map +0 -0
  1097. package/dist/src/shapes/Object/types/BorderProps.d.ts +0 -0
  1098. package/dist/src/shapes/Object/types/BorderProps.d.ts.map +0 -0
  1099. package/dist/src/shapes/Object/types/ControlProps.d.ts +0 -0
  1100. package/dist/src/shapes/Object/types/ControlProps.d.ts.map +0 -0
  1101. package/dist/src/shapes/Object/types/FabricObjectProps.d.ts +0 -0
  1102. package/dist/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -0
  1103. package/dist/src/shapes/Object/types/FillStrokeProps.d.ts +0 -0
  1104. package/dist/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -0
  1105. package/dist/src/shapes/Object/types/LockInteractionProps.d.ts +0 -0
  1106. package/dist/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -0
  1107. package/dist/src/shapes/Object/types/ObjectProps.d.ts +0 -0
  1108. package/dist/src/shapes/Object/types/ObjectProps.d.ts.map +0 -0
  1109. package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -0
  1110. package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -0
  1111. package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -0
  1112. package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -0
  1113. package/dist/src/shapes/Object/types/index.d.ts +0 -0
  1114. package/dist/src/shapes/Object/types/index.d.ts.map +0 -0
  1115. package/dist/src/shapes/Path.d.ts +0 -0
  1116. package/dist/src/shapes/Path.d.ts.map +0 -0
  1117. package/dist/src/shapes/Path.min.mjs +0 -0
  1118. package/dist/src/shapes/Path.min.mjs.map +0 -0
  1119. package/dist/src/shapes/Path.mjs +0 -0
  1120. package/dist/src/shapes/Path.mjs.map +0 -0
  1121. package/dist/src/shapes/Polygon.d.ts +0 -0
  1122. package/dist/src/shapes/Polygon.d.ts.map +0 -0
  1123. package/dist/src/shapes/Polygon.min.mjs +0 -0
  1124. package/dist/src/shapes/Polygon.min.mjs.map +0 -0
  1125. package/dist/src/shapes/Polygon.mjs +0 -0
  1126. package/dist/src/shapes/Polygon.mjs.map +0 -0
  1127. package/dist/src/shapes/Polyline.d.ts +0 -0
  1128. package/dist/src/shapes/Polyline.d.ts.map +0 -0
  1129. package/dist/src/shapes/Polyline.min.mjs +0 -0
  1130. package/dist/src/shapes/Polyline.min.mjs.map +0 -0
  1131. package/dist/src/shapes/Polyline.mjs +0 -0
  1132. package/dist/src/shapes/Polyline.mjs.map +0 -0
  1133. package/dist/src/shapes/Rect.d.ts +0 -0
  1134. package/dist/src/shapes/Rect.d.ts.map +0 -0
  1135. package/dist/src/shapes/Rect.min.mjs +0 -0
  1136. package/dist/src/shapes/Rect.min.mjs.map +0 -0
  1137. package/dist/src/shapes/Rect.mjs +0 -0
  1138. package/dist/src/shapes/Rect.mjs.map +0 -0
  1139. package/dist/src/shapes/Text/StyledText.d.ts +0 -0
  1140. package/dist/src/shapes/Text/StyledText.d.ts.map +0 -0
  1141. package/dist/src/shapes/Text/StyledText.min.mjs +0 -0
  1142. package/dist/src/shapes/Text/StyledText.min.mjs.map +0 -0
  1143. package/dist/src/shapes/Text/StyledText.mjs +0 -0
  1144. package/dist/src/shapes/Text/StyledText.mjs.map +0 -0
  1145. package/dist/src/shapes/Text/Text.d.ts +0 -0
  1146. package/dist/src/shapes/Text/Text.d.ts.map +1 -1
  1147. package/dist/src/shapes/Text/Text.min.mjs +1 -1
  1148. package/dist/src/shapes/Text/Text.min.mjs.map +1 -1
  1149. package/dist/src/shapes/Text/Text.mjs +347 -295
  1150. package/dist/src/shapes/Text/Text.mjs.map +1 -1
  1151. package/dist/src/shapes/Text/TextSVGExportMixin.d.ts +0 -0
  1152. package/dist/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -0
  1153. package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs +0 -0
  1154. package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs.map +0 -0
  1155. package/dist/src/shapes/Text/TextSVGExportMixin.mjs +0 -0
  1156. package/dist/src/shapes/Text/TextSVGExportMixin.mjs.map +0 -0
  1157. package/dist/src/shapes/Text/constants.d.ts +0 -0
  1158. package/dist/src/shapes/Text/constants.d.ts.map +0 -0
  1159. package/dist/src/shapes/Text/constants.min.mjs +0 -0
  1160. package/dist/src/shapes/Text/constants.min.mjs.map +1 -1
  1161. package/dist/src/shapes/Text/constants.mjs +0 -0
  1162. package/dist/src/shapes/Text/constants.mjs.map +1 -1
  1163. package/dist/src/shapes/Textbox.d.ts +0 -0
  1164. package/dist/src/shapes/Textbox.d.ts.map +1 -1
  1165. package/dist/src/shapes/Textbox.min.mjs +1 -1
  1166. package/dist/src/shapes/Textbox.min.mjs.map +1 -1
  1167. package/dist/src/shapes/Textbox.mjs +149 -199
  1168. package/dist/src/shapes/Textbox.mjs.map +1 -1
  1169. package/dist/src/shapes/Triangle.d.ts +0 -0
  1170. package/dist/src/shapes/Triangle.d.ts.map +0 -0
  1171. package/dist/src/shapes/Triangle.min.mjs +0 -0
  1172. package/dist/src/shapes/Triangle.min.mjs.map +0 -0
  1173. package/dist/src/shapes/Triangle.mjs +0 -0
  1174. package/dist/src/shapes/Triangle.mjs.map +0 -0
  1175. package/dist/src/text/browserLines.d.ts +0 -0
  1176. package/dist/src/text/browserLines.d.ts.map +0 -0
  1177. package/dist/src/text/browserLines.min.mjs +0 -0
  1178. package/dist/src/text/browserLines.min.mjs.map +1 -1
  1179. package/dist/src/text/browserLines.mjs +20 -20
  1180. package/dist/src/text/browserLines.mjs.map +1 -1
  1181. package/dist/src/text/ellipsis.d.ts +0 -0
  1182. package/dist/src/text/ellipsis.d.ts.map +0 -0
  1183. package/dist/src/text/ellipsis.min.mjs +0 -0
  1184. package/dist/src/text/ellipsis.min.mjs.map +1 -1
  1185. package/dist/src/text/ellipsis.mjs +11 -11
  1186. package/dist/src/text/ellipsis.mjs.map +1 -1
  1187. package/dist/src/text/hitTest.d.ts +0 -0
  1188. package/dist/src/text/hitTest.d.ts.map +0 -0
  1189. package/dist/src/text/hitTest.min.mjs +0 -0
  1190. package/dist/src/text/hitTest.min.mjs.map +1 -1
  1191. package/dist/src/text/hitTest.mjs +19 -19
  1192. package/dist/src/text/hitTest.mjs.map +1 -1
  1193. package/dist/src/text/layout.d.ts +0 -0
  1194. package/dist/src/text/layout.d.ts.map +0 -0
  1195. package/dist/src/text/layout.min.mjs +0 -0
  1196. package/dist/src/text/layout.min.mjs.map +1 -1
  1197. package/dist/src/text/layout.mjs +33 -33
  1198. package/dist/src/text/layout.mjs.map +1 -1
  1199. package/dist/src/text/measure.d.ts +0 -0
  1200. package/dist/src/text/measure.d.ts.map +0 -0
  1201. package/dist/src/text/measure.min.mjs +0 -0
  1202. package/dist/src/text/measure.min.mjs.map +1 -1
  1203. package/dist/src/text/measure.mjs +20 -20
  1204. package/dist/src/text/measure.mjs.map +1 -1
  1205. package/dist/src/text/overlayEditor.d.ts +0 -0
  1206. package/dist/src/text/overlayEditor.d.ts.map +1 -1
  1207. package/dist/src/text/overlayEditor.min.mjs +1 -1
  1208. package/dist/src/text/overlayEditor.min.mjs.map +1 -1
  1209. package/dist/src/text/overlayEditor.mjs +176 -42
  1210. package/dist/src/text/overlayEditor.mjs.map +1 -1
  1211. package/dist/src/text/unicode.d.ts +0 -0
  1212. package/dist/src/text/unicode.d.ts.map +0 -0
  1213. package/dist/src/text/unicode.min.mjs +0 -0
  1214. package/dist/src/text/unicode.min.mjs.map +1 -1
  1215. package/dist/src/text/unicode.mjs +8 -8
  1216. package/dist/src/text/unicode.mjs.map +1 -1
  1217. package/dist/src/typedefs.d.ts +0 -0
  1218. package/dist/src/typedefs.d.ts.map +0 -0
  1219. package/dist/src/util/animation/AnimationBase.d.ts +0 -0
  1220. package/dist/src/util/animation/AnimationBase.d.ts.map +0 -0
  1221. package/dist/src/util/animation/AnimationBase.min.mjs +0 -0
  1222. package/dist/src/util/animation/AnimationBase.min.mjs.map +0 -0
  1223. package/dist/src/util/animation/AnimationBase.mjs +0 -0
  1224. package/dist/src/util/animation/AnimationBase.mjs.map +0 -0
  1225. package/dist/src/util/animation/AnimationFrameProvider.d.ts +0 -0
  1226. package/dist/src/util/animation/AnimationFrameProvider.d.ts.map +0 -0
  1227. package/dist/src/util/animation/AnimationFrameProvider.min.mjs +0 -0
  1228. package/dist/src/util/animation/AnimationFrameProvider.min.mjs.map +0 -0
  1229. package/dist/src/util/animation/AnimationFrameProvider.mjs +0 -0
  1230. package/dist/src/util/animation/AnimationFrameProvider.mjs.map +0 -0
  1231. package/dist/src/util/animation/AnimationRegistry.d.ts +0 -0
  1232. package/dist/src/util/animation/AnimationRegistry.d.ts.map +0 -0
  1233. package/dist/src/util/animation/AnimationRegistry.min.mjs +0 -0
  1234. package/dist/src/util/animation/AnimationRegistry.min.mjs.map +0 -0
  1235. package/dist/src/util/animation/AnimationRegistry.mjs +0 -0
  1236. package/dist/src/util/animation/AnimationRegistry.mjs.map +0 -0
  1237. package/dist/src/util/animation/ArrayAnimation.d.ts +0 -0
  1238. package/dist/src/util/animation/ArrayAnimation.d.ts.map +0 -0
  1239. package/dist/src/util/animation/ArrayAnimation.min.mjs +0 -0
  1240. package/dist/src/util/animation/ArrayAnimation.min.mjs.map +0 -0
  1241. package/dist/src/util/animation/ArrayAnimation.mjs +0 -0
  1242. package/dist/src/util/animation/ArrayAnimation.mjs.map +0 -0
  1243. package/dist/src/util/animation/ColorAnimation.d.ts +0 -0
  1244. package/dist/src/util/animation/ColorAnimation.d.ts.map +0 -0
  1245. package/dist/src/util/animation/ColorAnimation.min.mjs +0 -0
  1246. package/dist/src/util/animation/ColorAnimation.min.mjs.map +0 -0
  1247. package/dist/src/util/animation/ColorAnimation.mjs +0 -0
  1248. package/dist/src/util/animation/ColorAnimation.mjs.map +0 -0
  1249. package/dist/src/util/animation/ValueAnimation.d.ts +0 -0
  1250. package/dist/src/util/animation/ValueAnimation.d.ts.map +0 -0
  1251. package/dist/src/util/animation/ValueAnimation.min.mjs +0 -0
  1252. package/dist/src/util/animation/ValueAnimation.min.mjs.map +0 -0
  1253. package/dist/src/util/animation/ValueAnimation.mjs +0 -0
  1254. package/dist/src/util/animation/ValueAnimation.mjs.map +0 -0
  1255. package/dist/src/util/animation/animate.d.ts +0 -0
  1256. package/dist/src/util/animation/animate.d.ts.map +0 -0
  1257. package/dist/src/util/animation/animate.min.mjs +0 -0
  1258. package/dist/src/util/animation/animate.min.mjs.map +0 -0
  1259. package/dist/src/util/animation/animate.mjs +0 -0
  1260. package/dist/src/util/animation/animate.mjs.map +0 -0
  1261. package/dist/src/util/animation/easing.d.ts +0 -0
  1262. package/dist/src/util/animation/easing.d.ts.map +0 -0
  1263. package/dist/src/util/animation/easing.min.mjs +0 -0
  1264. package/dist/src/util/animation/easing.min.mjs.map +0 -0
  1265. package/dist/src/util/animation/easing.mjs +0 -0
  1266. package/dist/src/util/animation/easing.mjs.map +0 -0
  1267. package/dist/src/util/animation/index.d.ts +0 -0
  1268. package/dist/src/util/animation/index.d.ts.map +0 -0
  1269. package/dist/src/util/animation/types.d.ts +0 -0
  1270. package/dist/src/util/animation/types.d.ts.map +0 -0
  1271. package/dist/src/util/applyMixins.d.ts +0 -0
  1272. package/dist/src/util/applyMixins.d.ts.map +0 -0
  1273. package/dist/src/util/applyMixins.min.mjs +0 -0
  1274. package/dist/src/util/applyMixins.min.mjs.map +0 -0
  1275. package/dist/src/util/applyMixins.mjs +0 -0
  1276. package/dist/src/util/applyMixins.mjs.map +0 -0
  1277. package/dist/src/util/dom_event.d.ts +0 -0
  1278. package/dist/src/util/dom_event.d.ts.map +0 -0
  1279. package/dist/src/util/dom_event.min.mjs +0 -0
  1280. package/dist/src/util/dom_event.min.mjs.map +0 -0
  1281. package/dist/src/util/dom_event.mjs +0 -0
  1282. package/dist/src/util/dom_event.mjs.map +0 -0
  1283. package/dist/src/util/dom_misc.d.ts +0 -0
  1284. package/dist/src/util/dom_misc.d.ts.map +0 -0
  1285. package/dist/src/util/dom_misc.min.mjs +0 -0
  1286. package/dist/src/util/dom_misc.min.mjs.map +0 -0
  1287. package/dist/src/util/dom_misc.mjs +0 -0
  1288. package/dist/src/util/dom_misc.mjs.map +0 -0
  1289. package/dist/src/util/index.d.ts +0 -0
  1290. package/dist/src/util/index.d.ts.map +0 -0
  1291. package/dist/src/util/index.min.mjs +0 -0
  1292. package/dist/src/util/index.min.mjs.map +0 -0
  1293. package/dist/src/util/index.mjs +0 -0
  1294. package/dist/src/util/index.mjs.map +0 -0
  1295. package/dist/src/util/internals/applyCanvasTransform.d.ts +0 -0
  1296. package/dist/src/util/internals/applyCanvasTransform.d.ts.map +0 -0
  1297. package/dist/src/util/internals/applyCanvasTransform.min.mjs +0 -0
  1298. package/dist/src/util/internals/applyCanvasTransform.min.mjs.map +0 -0
  1299. package/dist/src/util/internals/applyCanvasTransform.mjs +0 -0
  1300. package/dist/src/util/internals/applyCanvasTransform.mjs.map +0 -0
  1301. package/dist/src/util/internals/cleanupSvgAttribute.d.ts +0 -0
  1302. package/dist/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -0
  1303. package/dist/src/util/internals/cleanupSvgAttribute.min.mjs +0 -0
  1304. package/dist/src/util/internals/cleanupSvgAttribute.min.mjs.map +0 -0
  1305. package/dist/src/util/internals/cleanupSvgAttribute.mjs +0 -0
  1306. package/dist/src/util/internals/cleanupSvgAttribute.mjs.map +0 -0
  1307. package/dist/src/util/internals/cloneStyles.d.ts +0 -0
  1308. package/dist/src/util/internals/cloneStyles.d.ts.map +0 -0
  1309. package/dist/src/util/internals/cloneStyles.min.mjs +0 -0
  1310. package/dist/src/util/internals/cloneStyles.min.mjs.map +0 -0
  1311. package/dist/src/util/internals/cloneStyles.mjs +0 -0
  1312. package/dist/src/util/internals/cloneStyles.mjs.map +0 -0
  1313. package/dist/src/util/internals/console.d.ts +0 -0
  1314. package/dist/src/util/internals/console.d.ts.map +0 -0
  1315. package/dist/src/util/internals/console.min.mjs +0 -0
  1316. package/dist/src/util/internals/console.min.mjs.map +0 -0
  1317. package/dist/src/util/internals/console.mjs +0 -0
  1318. package/dist/src/util/internals/console.mjs.map +0 -0
  1319. package/dist/src/util/internals/dom_style.d.ts +0 -0
  1320. package/dist/src/util/internals/dom_style.d.ts.map +0 -0
  1321. package/dist/src/util/internals/dom_style.min.mjs +0 -0
  1322. package/dist/src/util/internals/dom_style.min.mjs.map +0 -0
  1323. package/dist/src/util/internals/dom_style.mjs +0 -0
  1324. package/dist/src/util/internals/dom_style.mjs.map +0 -0
  1325. package/dist/src/util/internals/findRight.d.ts +0 -0
  1326. package/dist/src/util/internals/findRight.d.ts.map +0 -0
  1327. package/dist/src/util/internals/findRight.min.mjs +0 -0
  1328. package/dist/src/util/internals/findRight.min.mjs.map +0 -0
  1329. package/dist/src/util/internals/findRight.mjs +0 -0
  1330. package/dist/src/util/internals/findRight.mjs.map +0 -0
  1331. package/dist/src/util/internals/getRandomInt.d.ts +0 -0
  1332. package/dist/src/util/internals/getRandomInt.d.ts.map +0 -0
  1333. package/dist/src/util/internals/getRandomInt.min.mjs +0 -0
  1334. package/dist/src/util/internals/getRandomInt.min.mjs.map +0 -0
  1335. package/dist/src/util/internals/getRandomInt.mjs +0 -0
  1336. package/dist/src/util/internals/getRandomInt.mjs.map +0 -0
  1337. package/dist/src/util/internals/ifNaN.d.ts +0 -0
  1338. package/dist/src/util/internals/ifNaN.d.ts.map +0 -0
  1339. package/dist/src/util/internals/ifNaN.min.mjs +0 -0
  1340. package/dist/src/util/internals/ifNaN.min.mjs.map +0 -0
  1341. package/dist/src/util/internals/ifNaN.mjs +0 -0
  1342. package/dist/src/util/internals/ifNaN.mjs.map +0 -0
  1343. package/dist/src/util/internals/removeFromArray.d.ts +0 -0
  1344. package/dist/src/util/internals/removeFromArray.d.ts.map +0 -0
  1345. package/dist/src/util/internals/removeFromArray.min.mjs +0 -0
  1346. package/dist/src/util/internals/removeFromArray.min.mjs.map +0 -0
  1347. package/dist/src/util/internals/removeFromArray.mjs +0 -0
  1348. package/dist/src/util/internals/removeFromArray.mjs.map +0 -0
  1349. package/dist/src/util/internals/uid.d.ts +0 -0
  1350. package/dist/src/util/internals/uid.d.ts.map +0 -0
  1351. package/dist/src/util/internals/uid.min.mjs +0 -0
  1352. package/dist/src/util/internals/uid.min.mjs.map +0 -0
  1353. package/dist/src/util/internals/uid.mjs +0 -0
  1354. package/dist/src/util/internals/uid.mjs.map +0 -0
  1355. package/dist/src/util/lang_string.d.ts +0 -0
  1356. package/dist/src/util/lang_string.d.ts.map +0 -0
  1357. package/dist/src/util/lang_string.min.mjs +0 -0
  1358. package/dist/src/util/lang_string.min.mjs.map +0 -0
  1359. package/dist/src/util/lang_string.mjs +0 -0
  1360. package/dist/src/util/lang_string.mjs.map +0 -0
  1361. package/dist/src/util/misc/boundingBoxFromPoints.d.ts +0 -0
  1362. package/dist/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -0
  1363. package/dist/src/util/misc/boundingBoxFromPoints.min.mjs +0 -0
  1364. package/dist/src/util/misc/boundingBoxFromPoints.min.mjs.map +0 -0
  1365. package/dist/src/util/misc/boundingBoxFromPoints.mjs +0 -0
  1366. package/dist/src/util/misc/boundingBoxFromPoints.mjs.map +0 -0
  1367. package/dist/src/util/misc/capValue.d.ts +0 -0
  1368. package/dist/src/util/misc/capValue.d.ts.map +0 -0
  1369. package/dist/src/util/misc/capValue.min.mjs +0 -0
  1370. package/dist/src/util/misc/capValue.min.mjs.map +0 -0
  1371. package/dist/src/util/misc/capValue.mjs +0 -0
  1372. package/dist/src/util/misc/capValue.mjs.map +0 -0
  1373. package/dist/src/util/misc/cos.d.ts +0 -0
  1374. package/dist/src/util/misc/cos.d.ts.map +0 -0
  1375. package/dist/src/util/misc/cos.min.mjs +0 -0
  1376. package/dist/src/util/misc/cos.min.mjs.map +0 -0
  1377. package/dist/src/util/misc/cos.mjs +0 -0
  1378. package/dist/src/util/misc/cos.mjs.map +0 -0
  1379. package/dist/src/util/misc/dom.d.ts +0 -0
  1380. package/dist/src/util/misc/dom.d.ts.map +0 -0
  1381. package/dist/src/util/misc/dom.min.mjs +0 -0
  1382. package/dist/src/util/misc/dom.min.mjs.map +0 -0
  1383. package/dist/src/util/misc/dom.mjs +0 -0
  1384. package/dist/src/util/misc/dom.mjs.map +0 -0
  1385. package/dist/src/util/misc/findScaleTo.d.ts +0 -0
  1386. package/dist/src/util/misc/findScaleTo.d.ts.map +0 -0
  1387. package/dist/src/util/misc/findScaleTo.min.mjs +0 -0
  1388. package/dist/src/util/misc/findScaleTo.min.mjs.map +0 -0
  1389. package/dist/src/util/misc/findScaleTo.mjs +0 -0
  1390. package/dist/src/util/misc/findScaleTo.mjs.map +0 -0
  1391. package/dist/src/util/misc/groupSVGElements.d.ts +0 -0
  1392. package/dist/src/util/misc/groupSVGElements.d.ts.map +0 -0
  1393. package/dist/src/util/misc/groupSVGElements.min.mjs +0 -0
  1394. package/dist/src/util/misc/groupSVGElements.min.mjs.map +0 -0
  1395. package/dist/src/util/misc/groupSVGElements.mjs +0 -0
  1396. package/dist/src/util/misc/groupSVGElements.mjs.map +0 -0
  1397. package/dist/src/util/misc/isTransparent.d.ts +0 -0
  1398. package/dist/src/util/misc/isTransparent.d.ts.map +0 -0
  1399. package/dist/src/util/misc/isTransparent.min.mjs +0 -0
  1400. package/dist/src/util/misc/isTransparent.min.mjs.map +0 -0
  1401. package/dist/src/util/misc/isTransparent.mjs +0 -0
  1402. package/dist/src/util/misc/isTransparent.mjs.map +0 -0
  1403. package/dist/src/util/misc/matrix.d.ts +0 -0
  1404. package/dist/src/util/misc/matrix.d.ts.map +0 -0
  1405. package/dist/src/util/misc/matrix.min.mjs +0 -0
  1406. package/dist/src/util/misc/matrix.min.mjs.map +0 -0
  1407. package/dist/src/util/misc/matrix.mjs +0 -0
  1408. package/dist/src/util/misc/matrix.mjs.map +0 -0
  1409. package/dist/src/util/misc/mergeClipPaths.d.ts +0 -0
  1410. package/dist/src/util/misc/mergeClipPaths.d.ts.map +0 -0
  1411. package/dist/src/util/misc/mergeClipPaths.min.mjs +0 -0
  1412. package/dist/src/util/misc/mergeClipPaths.min.mjs.map +0 -0
  1413. package/dist/src/util/misc/mergeClipPaths.mjs +0 -0
  1414. package/dist/src/util/misc/mergeClipPaths.mjs.map +0 -0
  1415. package/dist/src/util/misc/objectEnlive.d.ts +0 -0
  1416. package/dist/src/util/misc/objectEnlive.d.ts.map +0 -0
  1417. package/dist/src/util/misc/objectEnlive.min.mjs +0 -0
  1418. package/dist/src/util/misc/objectEnlive.min.mjs.map +0 -0
  1419. package/dist/src/util/misc/objectEnlive.mjs +0 -0
  1420. package/dist/src/util/misc/objectEnlive.mjs.map +0 -0
  1421. package/dist/src/util/misc/objectTransforms.d.ts +0 -0
  1422. package/dist/src/util/misc/objectTransforms.d.ts.map +0 -0
  1423. package/dist/src/util/misc/objectTransforms.min.mjs +0 -0
  1424. package/dist/src/util/misc/objectTransforms.min.mjs.map +0 -0
  1425. package/dist/src/util/misc/objectTransforms.mjs +0 -0
  1426. package/dist/src/util/misc/objectTransforms.mjs.map +0 -0
  1427. package/dist/src/util/misc/pick.d.ts +0 -0
  1428. package/dist/src/util/misc/pick.d.ts.map +0 -0
  1429. package/dist/src/util/misc/pick.min.mjs +0 -0
  1430. package/dist/src/util/misc/pick.min.mjs.map +0 -0
  1431. package/dist/src/util/misc/pick.mjs +0 -0
  1432. package/dist/src/util/misc/pick.mjs.map +0 -0
  1433. package/dist/src/util/misc/planeChange.d.ts +0 -0
  1434. package/dist/src/util/misc/planeChange.d.ts.map +0 -0
  1435. package/dist/src/util/misc/planeChange.min.mjs +0 -0
  1436. package/dist/src/util/misc/planeChange.min.mjs.map +0 -0
  1437. package/dist/src/util/misc/planeChange.mjs +0 -0
  1438. package/dist/src/util/misc/planeChange.mjs.map +0 -0
  1439. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -0
  1440. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -0
  1441. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs +0 -0
  1442. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs.map +0 -0
  1443. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs +0 -0
  1444. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs.map +0 -0
  1445. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -0
  1446. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -0
  1447. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs +0 -0
  1448. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs.map +0 -0
  1449. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs +0 -0
  1450. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs.map +0 -0
  1451. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -0
  1452. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -0
  1453. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs +0 -0
  1454. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs.map +0 -0
  1455. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs +0 -0
  1456. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs.map +0 -0
  1457. package/dist/src/util/misc/projectStroke/index.d.ts +0 -0
  1458. package/dist/src/util/misc/projectStroke/index.d.ts.map +0 -0
  1459. package/dist/src/util/misc/projectStroke/index.min.mjs +0 -0
  1460. package/dist/src/util/misc/projectStroke/index.min.mjs.map +0 -0
  1461. package/dist/src/util/misc/projectStroke/index.mjs +0 -0
  1462. package/dist/src/util/misc/projectStroke/index.mjs.map +0 -0
  1463. package/dist/src/util/misc/projectStroke/types.d.ts +0 -0
  1464. package/dist/src/util/misc/projectStroke/types.d.ts.map +0 -0
  1465. package/dist/src/util/misc/radiansDegreesConversion.d.ts +0 -0
  1466. package/dist/src/util/misc/radiansDegreesConversion.d.ts.map +0 -0
  1467. package/dist/src/util/misc/radiansDegreesConversion.min.mjs +0 -0
  1468. package/dist/src/util/misc/radiansDegreesConversion.min.mjs.map +0 -0
  1469. package/dist/src/util/misc/radiansDegreesConversion.mjs +0 -0
  1470. package/dist/src/util/misc/radiansDegreesConversion.mjs.map +0 -0
  1471. package/dist/src/util/misc/resolveOrigin.d.ts +0 -0
  1472. package/dist/src/util/misc/resolveOrigin.d.ts.map +0 -0
  1473. package/dist/src/util/misc/resolveOrigin.min.mjs +0 -0
  1474. package/dist/src/util/misc/resolveOrigin.min.mjs.map +0 -0
  1475. package/dist/src/util/misc/resolveOrigin.mjs +0 -0
  1476. package/dist/src/util/misc/resolveOrigin.mjs.map +0 -0
  1477. package/dist/src/util/misc/sin.d.ts +0 -0
  1478. package/dist/src/util/misc/sin.d.ts.map +0 -0
  1479. package/dist/src/util/misc/sin.min.mjs +0 -0
  1480. package/dist/src/util/misc/sin.min.mjs.map +0 -0
  1481. package/dist/src/util/misc/sin.mjs +0 -0
  1482. package/dist/src/util/misc/sin.mjs.map +0 -0
  1483. package/dist/src/util/misc/svgExport.d.ts +0 -0
  1484. package/dist/src/util/misc/svgExport.d.ts.map +0 -0
  1485. package/dist/src/util/misc/svgExport.min.mjs +0 -0
  1486. package/dist/src/util/misc/svgExport.min.mjs.map +0 -0
  1487. package/dist/src/util/misc/svgExport.mjs +0 -0
  1488. package/dist/src/util/misc/svgExport.mjs.map +0 -0
  1489. package/dist/src/util/misc/svgParsing.d.ts +0 -0
  1490. package/dist/src/util/misc/svgParsing.d.ts.map +0 -0
  1491. package/dist/src/util/misc/svgParsing.min.mjs +0 -0
  1492. package/dist/src/util/misc/svgParsing.min.mjs.map +0 -0
  1493. package/dist/src/util/misc/svgParsing.mjs +0 -0
  1494. package/dist/src/util/misc/svgParsing.mjs.map +0 -0
  1495. package/dist/src/util/misc/textStyles.d.ts +0 -0
  1496. package/dist/src/util/misc/textStyles.d.ts.map +0 -0
  1497. package/dist/src/util/misc/textStyles.min.mjs +0 -0
  1498. package/dist/src/util/misc/textStyles.min.mjs.map +0 -0
  1499. package/dist/src/util/misc/textStyles.mjs +0 -0
  1500. package/dist/src/util/misc/textStyles.mjs.map +0 -0
  1501. package/dist/src/util/misc/toFixed.d.ts +0 -0
  1502. package/dist/src/util/misc/toFixed.d.ts.map +0 -0
  1503. package/dist/src/util/misc/toFixed.min.mjs +0 -0
  1504. package/dist/src/util/misc/toFixed.min.mjs.map +0 -0
  1505. package/dist/src/util/misc/toFixed.mjs +0 -0
  1506. package/dist/src/util/misc/toFixed.mjs.map +0 -0
  1507. package/dist/src/util/misc/vectors.d.ts +0 -0
  1508. package/dist/src/util/misc/vectors.d.ts.map +0 -0
  1509. package/dist/src/util/misc/vectors.min.mjs +0 -0
  1510. package/dist/src/util/misc/vectors.min.mjs.map +0 -0
  1511. package/dist/src/util/misc/vectors.mjs +0 -0
  1512. package/dist/src/util/misc/vectors.mjs.map +0 -0
  1513. package/dist/src/util/path/index.d.ts +0 -0
  1514. package/dist/src/util/path/index.d.ts.map +0 -0
  1515. package/dist/src/util/path/index.min.mjs +0 -0
  1516. package/dist/src/util/path/index.min.mjs.map +0 -0
  1517. package/dist/src/util/path/index.mjs +0 -0
  1518. package/dist/src/util/path/index.mjs.map +0 -0
  1519. package/dist/src/util/path/regex.d.ts +0 -0
  1520. package/dist/src/util/path/regex.d.ts.map +0 -0
  1521. package/dist/src/util/path/regex.min.mjs +0 -0
  1522. package/dist/src/util/path/regex.min.mjs.map +0 -0
  1523. package/dist/src/util/path/regex.mjs +0 -0
  1524. package/dist/src/util/path/regex.mjs.map +0 -0
  1525. package/dist/src/util/path/typechecks.d.ts +0 -0
  1526. package/dist/src/util/path/typechecks.d.ts.map +0 -0
  1527. package/dist/src/util/path/typedefs.d.ts +0 -0
  1528. package/dist/src/util/path/typedefs.d.ts.map +0 -0
  1529. package/dist/src/util/transform_matrix_removal.d.ts +0 -0
  1530. package/dist/src/util/transform_matrix_removal.d.ts.map +0 -0
  1531. package/dist/src/util/transform_matrix_removal.min.mjs +0 -0
  1532. package/dist/src/util/transform_matrix_removal.min.mjs.map +0 -0
  1533. package/dist/src/util/transform_matrix_removal.mjs +0 -0
  1534. package/dist/src/util/transform_matrix_removal.mjs.map +0 -0
  1535. package/dist/src/util/typeAssertions.d.ts +0 -0
  1536. package/dist/src/util/typeAssertions.d.ts.map +0 -0
  1537. package/dist/src/util/typeAssertions.min.mjs +0 -0
  1538. package/dist/src/util/typeAssertions.min.mjs.map +0 -0
  1539. package/dist/src/util/typeAssertions.mjs +0 -0
  1540. package/dist/src/util/typeAssertions.mjs.map +0 -0
  1541. package/dist-extensions/aligning_guidelines/constant.mjs +0 -0
  1542. package/dist-extensions/aligning_guidelines/constant.mjs.map +0 -0
  1543. package/dist-extensions/aligning_guidelines/index.mjs +0 -0
  1544. package/dist-extensions/aligning_guidelines/index.mjs.map +0 -0
  1545. package/dist-extensions/aligning_guidelines/util/basic.mjs +0 -0
  1546. package/dist-extensions/aligning_guidelines/util/basic.mjs.map +0 -0
  1547. package/dist-extensions/aligning_guidelines/util/collect-line.mjs +0 -0
  1548. package/dist-extensions/aligning_guidelines/util/collect-line.mjs.map +0 -0
  1549. package/dist-extensions/aligning_guidelines/util/collect-point.mjs +0 -0
  1550. package/dist-extensions/aligning_guidelines/util/collect-point.mjs.map +0 -0
  1551. package/dist-extensions/aligning_guidelines/util/draw.mjs +0 -0
  1552. package/dist-extensions/aligning_guidelines/util/draw.mjs.map +0 -0
  1553. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs +0 -0
  1554. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs.map +0 -0
  1555. package/dist-extensions/data_updaters/gradient/index.mjs +0 -0
  1556. package/dist-extensions/data_updaters/gradient/index.mjs.map +0 -0
  1557. package/dist-extensions/data_updaters/origins/index.mjs +0 -0
  1558. package/dist-extensions/data_updaters/origins/index.mjs.map +0 -0
  1559. package/dist-extensions/extensions/aligning_guidelines/constant.d.ts +0 -0
  1560. package/dist-extensions/extensions/aligning_guidelines/constant.d.ts.map +0 -0
  1561. package/dist-extensions/extensions/aligning_guidelines/index.d.ts +0 -0
  1562. package/dist-extensions/extensions/aligning_guidelines/index.d.ts.map +0 -0
  1563. package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts +0 -0
  1564. package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts.map +0 -0
  1565. package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts +0 -0
  1566. package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts.map +0 -0
  1567. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts +0 -0
  1568. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -0
  1569. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts +0 -0
  1570. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -0
  1571. package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts +0 -0
  1572. package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts.map +0 -0
  1573. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -0
  1574. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -0
  1575. package/dist-extensions/extensions/data_updaters/gradient/index.d.ts +0 -0
  1576. package/dist-extensions/extensions/data_updaters/gradient/index.d.ts.map +0 -0
  1577. package/dist-extensions/extensions/data_updaters/origins/index.d.ts +0 -0
  1578. package/dist-extensions/extensions/data_updaters/origins/index.d.ts.map +0 -0
  1579. package/dist-extensions/extensions/index.d.ts +0 -0
  1580. package/dist-extensions/extensions/index.d.ts.map +0 -0
  1581. package/dist-extensions/fabric-extensions.min.js +0 -0
  1582. package/dist-extensions/fabric-extensions.min.js.map +0 -0
  1583. package/dist-extensions/fabric.d.ts +0 -0
  1584. package/dist-extensions/fabric.d.ts.map +0 -0
  1585. package/dist-extensions/index.d.ts +0 -0
  1586. package/dist-extensions/index.d.ts.map +0 -0
  1587. package/dist-extensions/index.mjs +0 -0
  1588. package/dist-extensions/index.mjs.map +0 -0
  1589. package/dist-extensions/src/ClassRegistry.d.ts +0 -0
  1590. package/dist-extensions/src/ClassRegistry.d.ts.map +0 -0
  1591. package/dist-extensions/src/Collection.d.ts +0 -0
  1592. package/dist-extensions/src/Collection.d.ts.map +0 -0
  1593. package/dist-extensions/src/CommonMethods.d.ts +0 -0
  1594. package/dist-extensions/src/CommonMethods.d.ts.map +0 -0
  1595. package/dist-extensions/src/EventTypeDefs.d.ts +0 -0
  1596. package/dist-extensions/src/EventTypeDefs.d.ts.map +0 -0
  1597. package/dist-extensions/src/Intersection.d.ts +0 -0
  1598. package/dist-extensions/src/Intersection.d.ts.map +0 -0
  1599. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -0
  1600. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -0
  1601. package/dist-extensions/src/LayoutManager/LayoutManager.d.ts +0 -0
  1602. package/dist-extensions/src/LayoutManager/LayoutManager.d.ts.map +0 -0
  1603. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -0
  1604. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -0
  1605. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -0
  1606. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -0
  1607. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -0
  1608. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -0
  1609. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -0
  1610. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -0
  1611. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -0
  1612. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -0
  1613. package/dist-extensions/src/LayoutManager/constants.d.ts +0 -0
  1614. package/dist-extensions/src/LayoutManager/constants.d.ts.map +0 -0
  1615. package/dist-extensions/src/LayoutManager/index.d.ts +0 -0
  1616. package/dist-extensions/src/LayoutManager/index.d.ts.map +0 -0
  1617. package/dist-extensions/src/LayoutManager/types.d.ts +0 -0
  1618. package/dist-extensions/src/LayoutManager/types.d.ts.map +0 -0
  1619. package/dist-extensions/src/Observable.d.ts +0 -0
  1620. package/dist-extensions/src/Observable.d.ts.map +0 -0
  1621. package/dist-extensions/src/Pattern/Pattern.d.ts +0 -0
  1622. package/dist-extensions/src/Pattern/Pattern.d.ts.map +0 -0
  1623. package/dist-extensions/src/Pattern/index.d.ts +0 -0
  1624. package/dist-extensions/src/Pattern/index.d.ts.map +0 -0
  1625. package/dist-extensions/src/Pattern/types.d.ts +0 -0
  1626. package/dist-extensions/src/Pattern/types.d.ts.map +0 -0
  1627. package/dist-extensions/src/Point.d.ts +0 -0
  1628. package/dist-extensions/src/Point.d.ts.map +0 -0
  1629. package/dist-extensions/src/Shadow.d.ts +0 -0
  1630. package/dist-extensions/src/Shadow.d.ts.map +0 -0
  1631. package/dist-extensions/src/brushes/BaseBrush.d.ts +0 -0
  1632. package/dist-extensions/src/brushes/BaseBrush.d.ts.map +0 -0
  1633. package/dist-extensions/src/brushes/CircleBrush.d.ts +0 -0
  1634. package/dist-extensions/src/brushes/CircleBrush.d.ts.map +0 -0
  1635. package/dist-extensions/src/brushes/PatternBrush.d.ts +0 -0
  1636. package/dist-extensions/src/brushes/PatternBrush.d.ts.map +0 -0
  1637. package/dist-extensions/src/brushes/PencilBrush.d.ts +0 -0
  1638. package/dist-extensions/src/brushes/PencilBrush.d.ts.map +0 -0
  1639. package/dist-extensions/src/brushes/SprayBrush.d.ts +0 -0
  1640. package/dist-extensions/src/brushes/SprayBrush.d.ts.map +0 -0
  1641. package/dist-extensions/src/brushes/typedefs.d.ts +0 -0
  1642. package/dist-extensions/src/brushes/typedefs.d.ts.map +0 -0
  1643. package/dist-extensions/src/cache.d.ts +0 -0
  1644. package/dist-extensions/src/cache.d.ts.map +0 -0
  1645. package/dist-extensions/src/canvas/Canvas.d.ts +0 -0
  1646. package/dist-extensions/src/canvas/Canvas.d.ts.map +0 -0
  1647. package/dist-extensions/src/canvas/CanvasOptions.d.ts +0 -0
  1648. package/dist-extensions/src/canvas/CanvasOptions.d.ts.map +0 -0
  1649. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -0
  1650. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -0
  1651. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -0
  1652. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -0
  1653. package/dist-extensions/src/canvas/DOMManagers/util.d.ts +0 -0
  1654. package/dist-extensions/src/canvas/DOMManagers/util.d.ts.map +0 -0
  1655. package/dist-extensions/src/canvas/SelectableCanvas.d.ts +0 -0
  1656. package/dist-extensions/src/canvas/SelectableCanvas.d.ts.map +0 -0
  1657. package/dist-extensions/src/canvas/StaticCanvas.d.ts +0 -0
  1658. package/dist-extensions/src/canvas/StaticCanvas.d.ts.map +0 -0
  1659. package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts +0 -0
  1660. package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts.map +0 -0
  1661. package/dist-extensions/src/canvas/TextEditingManager.d.ts +0 -0
  1662. package/dist-extensions/src/canvas/TextEditingManager.d.ts.map +0 -0
  1663. package/dist-extensions/src/color/Color.d.ts +0 -0
  1664. package/dist-extensions/src/color/Color.d.ts.map +0 -0
  1665. package/dist-extensions/src/color/color_map.d.ts +0 -0
  1666. package/dist-extensions/src/color/color_map.d.ts.map +0 -0
  1667. package/dist-extensions/src/color/constants.d.ts +0 -0
  1668. package/dist-extensions/src/color/constants.d.ts.map +0 -0
  1669. package/dist-extensions/src/color/typedefs.d.ts +0 -0
  1670. package/dist-extensions/src/color/typedefs.d.ts.map +0 -0
  1671. package/dist-extensions/src/color/util.d.ts +0 -0
  1672. package/dist-extensions/src/color/util.d.ts.map +0 -0
  1673. package/dist-extensions/src/config.d.ts +0 -0
  1674. package/dist-extensions/src/config.d.ts.map +0 -0
  1675. package/dist-extensions/src/constants.d.ts +0 -0
  1676. package/dist-extensions/src/constants.d.ts.map +0 -0
  1677. package/dist-extensions/src/controls/Control.d.ts +0 -0
  1678. package/dist-extensions/src/controls/Control.d.ts.map +0 -0
  1679. package/dist-extensions/src/controls/changeHeight.d.ts +0 -0
  1680. package/dist-extensions/src/controls/changeHeight.d.ts.map +0 -0
  1681. package/dist-extensions/src/controls/changeWidth.d.ts +0 -0
  1682. package/dist-extensions/src/controls/changeWidth.d.ts.map +0 -0
  1683. package/dist-extensions/src/controls/commonControls.d.ts +0 -0
  1684. package/dist-extensions/src/controls/commonControls.d.ts.map +0 -0
  1685. package/dist-extensions/src/controls/controlRendering.d.ts +0 -0
  1686. package/dist-extensions/src/controls/controlRendering.d.ts.map +0 -0
  1687. package/dist-extensions/src/controls/drag.d.ts +0 -0
  1688. package/dist-extensions/src/controls/drag.d.ts.map +0 -0
  1689. package/dist-extensions/src/controls/fireEvent.d.ts +0 -0
  1690. package/dist-extensions/src/controls/fireEvent.d.ts.map +0 -0
  1691. package/dist-extensions/src/controls/index.d.ts +0 -0
  1692. package/dist-extensions/src/controls/index.d.ts.map +0 -0
  1693. package/dist-extensions/src/controls/pathControl.d.ts +0 -0
  1694. package/dist-extensions/src/controls/pathControl.d.ts.map +0 -0
  1695. package/dist-extensions/src/controls/polyControl.d.ts +0 -0
  1696. package/dist-extensions/src/controls/polyControl.d.ts.map +0 -0
  1697. package/dist-extensions/src/controls/rotate.d.ts +0 -0
  1698. package/dist-extensions/src/controls/rotate.d.ts.map +0 -0
  1699. package/dist-extensions/src/controls/scale.d.ts +0 -0
  1700. package/dist-extensions/src/controls/scale.d.ts.map +0 -0
  1701. package/dist-extensions/src/controls/scaleSkew.d.ts +0 -0
  1702. package/dist-extensions/src/controls/scaleSkew.d.ts.map +0 -0
  1703. package/dist-extensions/src/controls/skew.d.ts +0 -0
  1704. package/dist-extensions/src/controls/skew.d.ts.map +0 -0
  1705. package/dist-extensions/src/controls/util.d.ts +0 -0
  1706. package/dist-extensions/src/controls/util.d.ts.map +0 -0
  1707. package/dist-extensions/src/controls/wrapWithFireEvent.d.ts +0 -0
  1708. package/dist-extensions/src/controls/wrapWithFireEvent.d.ts.map +0 -0
  1709. package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts +0 -0
  1710. package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts.map +0 -0
  1711. package/dist-extensions/src/env/browser.d.ts +0 -0
  1712. package/dist-extensions/src/env/browser.d.ts.map +0 -0
  1713. package/dist-extensions/src/env/index.d.ts +0 -0
  1714. package/dist-extensions/src/env/index.d.ts.map +0 -0
  1715. package/dist-extensions/src/env/types.d.ts +0 -0
  1716. package/dist-extensions/src/env/types.d.ts.map +0 -0
  1717. package/dist-extensions/src/filters/BaseFilter.d.ts +0 -0
  1718. package/dist-extensions/src/filters/BaseFilter.d.ts.map +0 -0
  1719. package/dist-extensions/src/filters/BlendColor.d.ts +0 -0
  1720. package/dist-extensions/src/filters/BlendColor.d.ts.map +0 -0
  1721. package/dist-extensions/src/filters/BlendImage.d.ts +0 -0
  1722. package/dist-extensions/src/filters/BlendImage.d.ts.map +0 -0
  1723. package/dist-extensions/src/filters/Blur.d.ts +0 -0
  1724. package/dist-extensions/src/filters/Blur.d.ts.map +0 -0
  1725. package/dist-extensions/src/filters/Brightness.d.ts +0 -0
  1726. package/dist-extensions/src/filters/Brightness.d.ts.map +0 -0
  1727. package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts +0 -0
  1728. package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts.map +0 -0
  1729. package/dist-extensions/src/filters/ColorMatrix.d.ts +0 -0
  1730. package/dist-extensions/src/filters/ColorMatrix.d.ts.map +0 -0
  1731. package/dist-extensions/src/filters/ColorMatrixFilters.d.ts +0 -0
  1732. package/dist-extensions/src/filters/ColorMatrixFilters.d.ts.map +0 -0
  1733. package/dist-extensions/src/filters/Composed.d.ts +0 -0
  1734. package/dist-extensions/src/filters/Composed.d.ts.map +0 -0
  1735. package/dist-extensions/src/filters/Contrast.d.ts +0 -0
  1736. package/dist-extensions/src/filters/Contrast.d.ts.map +0 -0
  1737. package/dist-extensions/src/filters/Convolute.d.ts +0 -0
  1738. package/dist-extensions/src/filters/Convolute.d.ts.map +0 -0
  1739. package/dist-extensions/src/filters/FilterBackend.d.ts +0 -0
  1740. package/dist-extensions/src/filters/FilterBackend.d.ts.map +0 -0
  1741. package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts +0 -0
  1742. package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts.map +0 -0
  1743. package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts +0 -0
  1744. package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -0
  1745. package/dist-extensions/src/filters/Gamma.d.ts +0 -0
  1746. package/dist-extensions/src/filters/Gamma.d.ts.map +0 -0
  1747. package/dist-extensions/src/filters/Grayscale.d.ts +0 -0
  1748. package/dist-extensions/src/filters/Grayscale.d.ts.map +0 -0
  1749. package/dist-extensions/src/filters/HueRotation.d.ts +0 -0
  1750. package/dist-extensions/src/filters/HueRotation.d.ts.map +0 -0
  1751. package/dist-extensions/src/filters/Invert.d.ts +0 -0
  1752. package/dist-extensions/src/filters/Invert.d.ts.map +0 -0
  1753. package/dist-extensions/src/filters/Noise.d.ts +0 -0
  1754. package/dist-extensions/src/filters/Noise.d.ts.map +0 -0
  1755. package/dist-extensions/src/filters/Pixelate.d.ts +0 -0
  1756. package/dist-extensions/src/filters/Pixelate.d.ts.map +0 -0
  1757. package/dist-extensions/src/filters/RemoveColor.d.ts +0 -0
  1758. package/dist-extensions/src/filters/RemoveColor.d.ts.map +0 -0
  1759. package/dist-extensions/src/filters/Resize.d.ts +0 -0
  1760. package/dist-extensions/src/filters/Resize.d.ts.map +0 -0
  1761. package/dist-extensions/src/filters/Saturation.d.ts +0 -0
  1762. package/dist-extensions/src/filters/Saturation.d.ts.map +0 -0
  1763. package/dist-extensions/src/filters/Vibrance.d.ts +0 -0
  1764. package/dist-extensions/src/filters/Vibrance.d.ts.map +0 -0
  1765. package/dist-extensions/src/filters/WebGLFilterBackend.d.ts +0 -0
  1766. package/dist-extensions/src/filters/WebGLFilterBackend.d.ts.map +0 -0
  1767. package/dist-extensions/src/filters/filters.d.ts +0 -0
  1768. package/dist-extensions/src/filters/filters.d.ts.map +0 -0
  1769. package/dist-extensions/src/filters/index.d.ts +0 -0
  1770. package/dist-extensions/src/filters/index.d.ts.map +0 -0
  1771. package/dist-extensions/src/filters/shaders/baseFilter.d.ts +0 -0
  1772. package/dist-extensions/src/filters/shaders/baseFilter.d.ts.map +0 -0
  1773. package/dist-extensions/src/filters/shaders/blendColor.d.ts +0 -0
  1774. package/dist-extensions/src/filters/shaders/blendColor.d.ts.map +0 -0
  1775. package/dist-extensions/src/filters/shaders/blendImage.d.ts +0 -0
  1776. package/dist-extensions/src/filters/shaders/blendImage.d.ts.map +0 -0
  1777. package/dist-extensions/src/filters/shaders/blur.d.ts +0 -0
  1778. package/dist-extensions/src/filters/shaders/blur.d.ts.map +0 -0
  1779. package/dist-extensions/src/filters/shaders/brightness.d.ts +0 -0
  1780. package/dist-extensions/src/filters/shaders/brightness.d.ts.map +0 -0
  1781. package/dist-extensions/src/filters/shaders/colorMatrix.d.ts +0 -0
  1782. package/dist-extensions/src/filters/shaders/colorMatrix.d.ts.map +0 -0
  1783. package/dist-extensions/src/filters/shaders/constrast.d.ts +0 -0
  1784. package/dist-extensions/src/filters/shaders/constrast.d.ts.map +0 -0
  1785. package/dist-extensions/src/filters/shaders/convolute.d.ts +0 -0
  1786. package/dist-extensions/src/filters/shaders/convolute.d.ts.map +0 -0
  1787. package/dist-extensions/src/filters/shaders/gamma.d.ts +0 -0
  1788. package/dist-extensions/src/filters/shaders/gamma.d.ts.map +0 -0
  1789. package/dist-extensions/src/filters/shaders/grayscale.d.ts +0 -0
  1790. package/dist-extensions/src/filters/shaders/grayscale.d.ts.map +0 -0
  1791. package/dist-extensions/src/filters/shaders/invert.d.ts +0 -0
  1792. package/dist-extensions/src/filters/shaders/invert.d.ts.map +0 -0
  1793. package/dist-extensions/src/filters/shaders/noise.d.ts +0 -0
  1794. package/dist-extensions/src/filters/shaders/noise.d.ts.map +0 -0
  1795. package/dist-extensions/src/filters/shaders/pixelate.d.ts +0 -0
  1796. package/dist-extensions/src/filters/shaders/pixelate.d.ts.map +0 -0
  1797. package/dist-extensions/src/filters/shaders/removeColor.d.ts +0 -0
  1798. package/dist-extensions/src/filters/shaders/removeColor.d.ts.map +0 -0
  1799. package/dist-extensions/src/filters/shaders/saturation.d.ts +0 -0
  1800. package/dist-extensions/src/filters/shaders/saturation.d.ts.map +0 -0
  1801. package/dist-extensions/src/filters/shaders/vibrance.d.ts +0 -0
  1802. package/dist-extensions/src/filters/shaders/vibrance.d.ts.map +0 -0
  1803. package/dist-extensions/src/filters/typedefs.d.ts +0 -0
  1804. package/dist-extensions/src/filters/typedefs.d.ts.map +0 -0
  1805. package/dist-extensions/src/filters/utils.d.ts +0 -0
  1806. package/dist-extensions/src/filters/utils.d.ts.map +0 -0
  1807. package/dist-extensions/src/gradient/Gradient.d.ts +0 -0
  1808. package/dist-extensions/src/gradient/Gradient.d.ts.map +0 -0
  1809. package/dist-extensions/src/gradient/constants.d.ts +0 -0
  1810. package/dist-extensions/src/gradient/constants.d.ts.map +0 -0
  1811. package/dist-extensions/src/gradient/index.d.ts +0 -0
  1812. package/dist-extensions/src/gradient/index.d.ts.map +0 -0
  1813. package/dist-extensions/src/gradient/parser/misc.d.ts +0 -0
  1814. package/dist-extensions/src/gradient/parser/misc.d.ts.map +0 -0
  1815. package/dist-extensions/src/gradient/parser/parseColorStops.d.ts +0 -0
  1816. package/dist-extensions/src/gradient/parser/parseColorStops.d.ts.map +0 -0
  1817. package/dist-extensions/src/gradient/parser/parseCoords.d.ts +0 -0
  1818. package/dist-extensions/src/gradient/parser/parseCoords.d.ts.map +0 -0
  1819. package/dist-extensions/src/gradient/typedefs.d.ts +0 -0
  1820. package/dist-extensions/src/gradient/typedefs.d.ts.map +0 -0
  1821. package/dist-extensions/src/parser/applyViewboxTransform.d.ts +0 -0
  1822. package/dist-extensions/src/parser/applyViewboxTransform.d.ts.map +0 -0
  1823. package/dist-extensions/src/parser/attributes.d.ts +0 -0
  1824. package/dist-extensions/src/parser/attributes.d.ts.map +0 -0
  1825. package/dist-extensions/src/parser/constants.d.ts +0 -0
  1826. package/dist-extensions/src/parser/constants.d.ts.map +0 -0
  1827. package/dist-extensions/src/parser/doesSomeParentMatch.d.ts +0 -0
  1828. package/dist-extensions/src/parser/doesSomeParentMatch.d.ts.map +0 -0
  1829. package/dist-extensions/src/parser/elementMatchesRule.d.ts +0 -0
  1830. package/dist-extensions/src/parser/elementMatchesRule.d.ts.map +0 -0
  1831. package/dist-extensions/src/parser/elements_parser.d.ts +0 -0
  1832. package/dist-extensions/src/parser/elements_parser.d.ts.map +0 -0
  1833. package/dist-extensions/src/parser/getCSSRules.d.ts +0 -0
  1834. package/dist-extensions/src/parser/getCSSRules.d.ts.map +0 -0
  1835. package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts +0 -0
  1836. package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts.map +0 -0
  1837. package/dist-extensions/src/parser/getGradientDefs.d.ts +0 -0
  1838. package/dist-extensions/src/parser/getGradientDefs.d.ts.map +0 -0
  1839. package/dist-extensions/src/parser/getMultipleNodes.d.ts +0 -0
  1840. package/dist-extensions/src/parser/getMultipleNodes.d.ts.map +0 -0
  1841. package/dist-extensions/src/parser/getSvgRegex.d.ts +0 -0
  1842. package/dist-extensions/src/parser/getSvgRegex.d.ts.map +0 -0
  1843. package/dist-extensions/src/parser/getTagName.d.ts +0 -0
  1844. package/dist-extensions/src/parser/getTagName.d.ts.map +0 -0
  1845. package/dist-extensions/src/parser/hasInvalidAncestor.d.ts +0 -0
  1846. package/dist-extensions/src/parser/hasInvalidAncestor.d.ts.map +0 -0
  1847. package/dist-extensions/src/parser/loadSVGFromString.d.ts +0 -0
  1848. package/dist-extensions/src/parser/loadSVGFromString.d.ts.map +0 -0
  1849. package/dist-extensions/src/parser/loadSVGFromURL.d.ts +0 -0
  1850. package/dist-extensions/src/parser/loadSVGFromURL.d.ts.map +0 -0
  1851. package/dist-extensions/src/parser/normalizeAttr.d.ts +0 -0
  1852. package/dist-extensions/src/parser/normalizeAttr.d.ts.map +0 -0
  1853. package/dist-extensions/src/parser/normalizeValue.d.ts +0 -0
  1854. package/dist-extensions/src/parser/normalizeValue.d.ts.map +0 -0
  1855. package/dist-extensions/src/parser/parseAttributes.d.ts +0 -0
  1856. package/dist-extensions/src/parser/parseAttributes.d.ts.map +0 -0
  1857. package/dist-extensions/src/parser/parseFontDeclaration.d.ts +0 -0
  1858. package/dist-extensions/src/parser/parseFontDeclaration.d.ts.map +0 -0
  1859. package/dist-extensions/src/parser/parsePointsAttribute.d.ts +0 -0
  1860. package/dist-extensions/src/parser/parsePointsAttribute.d.ts.map +0 -0
  1861. package/dist-extensions/src/parser/parseSVGDocument.d.ts +0 -0
  1862. package/dist-extensions/src/parser/parseSVGDocument.d.ts.map +0 -0
  1863. package/dist-extensions/src/parser/parseStyleAttribute.d.ts +0 -0
  1864. package/dist-extensions/src/parser/parseStyleAttribute.d.ts.map +0 -0
  1865. package/dist-extensions/src/parser/parseStyleObject.d.ts +0 -0
  1866. package/dist-extensions/src/parser/parseStyleObject.d.ts.map +0 -0
  1867. package/dist-extensions/src/parser/parseStyleString.d.ts +0 -0
  1868. package/dist-extensions/src/parser/parseStyleString.d.ts.map +0 -0
  1869. package/dist-extensions/src/parser/parseTransformAttribute.d.ts +0 -0
  1870. package/dist-extensions/src/parser/parseTransformAttribute.d.ts.map +0 -0
  1871. package/dist-extensions/src/parser/parseUseDirectives.d.ts +0 -0
  1872. package/dist-extensions/src/parser/parseUseDirectives.d.ts.map +0 -0
  1873. package/dist-extensions/src/parser/percent.d.ts +0 -0
  1874. package/dist-extensions/src/parser/percent.d.ts.map +0 -0
  1875. package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts +0 -0
  1876. package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -0
  1877. package/dist-extensions/src/parser/selectorMatches.d.ts +0 -0
  1878. package/dist-extensions/src/parser/selectorMatches.d.ts.map +0 -0
  1879. package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts +0 -0
  1880. package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts.map +0 -0
  1881. package/dist-extensions/src/parser/typedefs.d.ts +0 -0
  1882. package/dist-extensions/src/parser/typedefs.d.ts.map +0 -0
  1883. package/dist-extensions/src/shapes/ActiveSelection.d.ts +0 -0
  1884. package/dist-extensions/src/shapes/ActiveSelection.d.ts.map +0 -0
  1885. package/dist-extensions/src/shapes/Circle.d.ts +0 -0
  1886. package/dist-extensions/src/shapes/Circle.d.ts.map +0 -0
  1887. package/dist-extensions/src/shapes/Ellipse.d.ts +0 -0
  1888. package/dist-extensions/src/shapes/Ellipse.d.ts.map +0 -0
  1889. package/dist-extensions/src/shapes/Group.d.ts +0 -0
  1890. package/dist-extensions/src/shapes/Group.d.ts.map +0 -0
  1891. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts +0 -0
  1892. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -0
  1893. package/dist-extensions/src/shapes/IText/IText.d.ts +0 -0
  1894. package/dist-extensions/src/shapes/IText/IText.d.ts.map +0 -0
  1895. package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts +0 -0
  1896. package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts.map +0 -0
  1897. package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts +0 -0
  1898. package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -0
  1899. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts +0 -0
  1900. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -0
  1901. package/dist-extensions/src/shapes/IText/constants.d.ts +0 -0
  1902. package/dist-extensions/src/shapes/IText/constants.d.ts.map +0 -0
  1903. package/dist-extensions/src/shapes/Image.d.ts +0 -0
  1904. package/dist-extensions/src/shapes/Image.d.ts.map +0 -0
  1905. package/dist-extensions/src/shapes/Line.d.ts +0 -0
  1906. package/dist-extensions/src/shapes/Line.d.ts.map +0 -0
  1907. package/dist-extensions/src/shapes/Object/FabricObject.d.ts +0 -0
  1908. package/dist-extensions/src/shapes/Object/FabricObject.d.ts.map +0 -0
  1909. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -0
  1910. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -0
  1911. package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts +0 -0
  1912. package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts.map +0 -0
  1913. package/dist-extensions/src/shapes/Object/Object.d.ts +0 -0
  1914. package/dist-extensions/src/shapes/Object/Object.d.ts.map +0 -0
  1915. package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts +0 -0
  1916. package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts.map +0 -0
  1917. package/dist-extensions/src/shapes/Object/defaultValues.d.ts +0 -0
  1918. package/dist-extensions/src/shapes/Object/defaultValues.d.ts.map +0 -0
  1919. package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts +0 -0
  1920. package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts.map +0 -0
  1921. package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts +0 -0
  1922. package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts.map +0 -0
  1923. package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts +0 -0
  1924. package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts.map +0 -0
  1925. package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts +0 -0
  1926. package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -0
  1927. package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts +0 -0
  1928. package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -0
  1929. package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts +0 -0
  1930. package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -0
  1931. package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts +0 -0
  1932. package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts.map +0 -0
  1933. package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -0
  1934. package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -0
  1935. package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -0
  1936. package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -0
  1937. package/dist-extensions/src/shapes/Object/types/index.d.ts +0 -0
  1938. package/dist-extensions/src/shapes/Object/types/index.d.ts.map +0 -0
  1939. package/dist-extensions/src/shapes/Path.d.ts +0 -0
  1940. package/dist-extensions/src/shapes/Path.d.ts.map +0 -0
  1941. package/dist-extensions/src/shapes/Polygon.d.ts +0 -0
  1942. package/dist-extensions/src/shapes/Polygon.d.ts.map +0 -0
  1943. package/dist-extensions/src/shapes/Polyline.d.ts +0 -0
  1944. package/dist-extensions/src/shapes/Polyline.d.ts.map +0 -0
  1945. package/dist-extensions/src/shapes/Rect.d.ts +0 -0
  1946. package/dist-extensions/src/shapes/Rect.d.ts.map +0 -0
  1947. package/dist-extensions/src/shapes/Text/StyledText.d.ts +0 -0
  1948. package/dist-extensions/src/shapes/Text/StyledText.d.ts.map +0 -0
  1949. package/dist-extensions/src/shapes/Text/Text.d.ts +0 -0
  1950. package/dist-extensions/src/shapes/Text/Text.d.ts.map +1 -1
  1951. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts +0 -0
  1952. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -0
  1953. package/dist-extensions/src/shapes/Text/constants.d.ts +0 -0
  1954. package/dist-extensions/src/shapes/Text/constants.d.ts.map +0 -0
  1955. package/dist-extensions/src/shapes/Textbox.d.ts +0 -0
  1956. package/dist-extensions/src/shapes/Textbox.d.ts.map +1 -1
  1957. package/dist-extensions/src/shapes/Triangle.d.ts +0 -0
  1958. package/dist-extensions/src/shapes/Triangle.d.ts.map +0 -0
  1959. package/dist-extensions/src/text/browserLines.d.ts +0 -0
  1960. package/dist-extensions/src/text/browserLines.d.ts.map +0 -0
  1961. package/dist-extensions/src/text/ellipsis.d.ts +0 -0
  1962. package/dist-extensions/src/text/ellipsis.d.ts.map +0 -0
  1963. package/dist-extensions/src/text/hitTest.d.ts +0 -0
  1964. package/dist-extensions/src/text/hitTest.d.ts.map +0 -0
  1965. package/dist-extensions/src/text/layout.d.ts +0 -0
  1966. package/dist-extensions/src/text/layout.d.ts.map +0 -0
  1967. package/dist-extensions/src/text/measure.d.ts +0 -0
  1968. package/dist-extensions/src/text/measure.d.ts.map +0 -0
  1969. package/dist-extensions/src/text/overlayEditor.d.ts +0 -0
  1970. package/dist-extensions/src/text/overlayEditor.d.ts.map +1 -1
  1971. package/dist-extensions/src/text/unicode.d.ts +0 -0
  1972. package/dist-extensions/src/text/unicode.d.ts.map +0 -0
  1973. package/dist-extensions/src/typedefs.d.ts +0 -0
  1974. package/dist-extensions/src/typedefs.d.ts.map +0 -0
  1975. package/dist-extensions/src/util/animation/AnimationBase.d.ts +0 -0
  1976. package/dist-extensions/src/util/animation/AnimationBase.d.ts.map +0 -0
  1977. package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts +0 -0
  1978. package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts.map +0 -0
  1979. package/dist-extensions/src/util/animation/AnimationRegistry.d.ts +0 -0
  1980. package/dist-extensions/src/util/animation/AnimationRegistry.d.ts.map +0 -0
  1981. package/dist-extensions/src/util/animation/ArrayAnimation.d.ts +0 -0
  1982. package/dist-extensions/src/util/animation/ArrayAnimation.d.ts.map +0 -0
  1983. package/dist-extensions/src/util/animation/ColorAnimation.d.ts +0 -0
  1984. package/dist-extensions/src/util/animation/ColorAnimation.d.ts.map +0 -0
  1985. package/dist-extensions/src/util/animation/ValueAnimation.d.ts +0 -0
  1986. package/dist-extensions/src/util/animation/ValueAnimation.d.ts.map +0 -0
  1987. package/dist-extensions/src/util/animation/animate.d.ts +0 -0
  1988. package/dist-extensions/src/util/animation/animate.d.ts.map +0 -0
  1989. package/dist-extensions/src/util/animation/easing.d.ts +0 -0
  1990. package/dist-extensions/src/util/animation/easing.d.ts.map +0 -0
  1991. package/dist-extensions/src/util/animation/index.d.ts +0 -0
  1992. package/dist-extensions/src/util/animation/index.d.ts.map +0 -0
  1993. package/dist-extensions/src/util/animation/types.d.ts +0 -0
  1994. package/dist-extensions/src/util/animation/types.d.ts.map +0 -0
  1995. package/dist-extensions/src/util/applyMixins.d.ts +0 -0
  1996. package/dist-extensions/src/util/applyMixins.d.ts.map +0 -0
  1997. package/dist-extensions/src/util/dom_event.d.ts +0 -0
  1998. package/dist-extensions/src/util/dom_event.d.ts.map +0 -0
  1999. package/dist-extensions/src/util/dom_misc.d.ts +0 -0
  2000. package/dist-extensions/src/util/dom_misc.d.ts.map +0 -0
  2001. package/dist-extensions/src/util/index.d.ts +0 -0
  2002. package/dist-extensions/src/util/index.d.ts.map +0 -0
  2003. package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts +0 -0
  2004. package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts.map +0 -0
  2005. package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts +0 -0
  2006. package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -0
  2007. package/dist-extensions/src/util/internals/cloneStyles.d.ts +0 -0
  2008. package/dist-extensions/src/util/internals/cloneStyles.d.ts.map +0 -0
  2009. package/dist-extensions/src/util/internals/console.d.ts +0 -0
  2010. package/dist-extensions/src/util/internals/console.d.ts.map +0 -0
  2011. package/dist-extensions/src/util/internals/dom_style.d.ts +0 -0
  2012. package/dist-extensions/src/util/internals/dom_style.d.ts.map +0 -0
  2013. package/dist-extensions/src/util/internals/findRight.d.ts +0 -0
  2014. package/dist-extensions/src/util/internals/findRight.d.ts.map +0 -0
  2015. package/dist-extensions/src/util/internals/getRandomInt.d.ts +0 -0
  2016. package/dist-extensions/src/util/internals/getRandomInt.d.ts.map +0 -0
  2017. package/dist-extensions/src/util/internals/ifNaN.d.ts +0 -0
  2018. package/dist-extensions/src/util/internals/ifNaN.d.ts.map +0 -0
  2019. package/dist-extensions/src/util/internals/removeFromArray.d.ts +0 -0
  2020. package/dist-extensions/src/util/internals/removeFromArray.d.ts.map +0 -0
  2021. package/dist-extensions/src/util/internals/uid.d.ts +0 -0
  2022. package/dist-extensions/src/util/internals/uid.d.ts.map +0 -0
  2023. package/dist-extensions/src/util/lang_string.d.ts +0 -0
  2024. package/dist-extensions/src/util/lang_string.d.ts.map +0 -0
  2025. package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts +0 -0
  2026. package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -0
  2027. package/dist-extensions/src/util/misc/capValue.d.ts +0 -0
  2028. package/dist-extensions/src/util/misc/capValue.d.ts.map +0 -0
  2029. package/dist-extensions/src/util/misc/cos.d.ts +0 -0
  2030. package/dist-extensions/src/util/misc/cos.d.ts.map +0 -0
  2031. package/dist-extensions/src/util/misc/dom.d.ts +0 -0
  2032. package/dist-extensions/src/util/misc/dom.d.ts.map +0 -0
  2033. package/dist-extensions/src/util/misc/findScaleTo.d.ts +0 -0
  2034. package/dist-extensions/src/util/misc/findScaleTo.d.ts.map +0 -0
  2035. package/dist-extensions/src/util/misc/groupSVGElements.d.ts +0 -0
  2036. package/dist-extensions/src/util/misc/groupSVGElements.d.ts.map +0 -0
  2037. package/dist-extensions/src/util/misc/isTransparent.d.ts +0 -0
  2038. package/dist-extensions/src/util/misc/isTransparent.d.ts.map +0 -0
  2039. package/dist-extensions/src/util/misc/matrix.d.ts +0 -0
  2040. package/dist-extensions/src/util/misc/matrix.d.ts.map +0 -0
  2041. package/dist-extensions/src/util/misc/mergeClipPaths.d.ts +0 -0
  2042. package/dist-extensions/src/util/misc/mergeClipPaths.d.ts.map +0 -0
  2043. package/dist-extensions/src/util/misc/objectEnlive.d.ts +0 -0
  2044. package/dist-extensions/src/util/misc/objectEnlive.d.ts.map +0 -0
  2045. package/dist-extensions/src/util/misc/objectTransforms.d.ts +0 -0
  2046. package/dist-extensions/src/util/misc/objectTransforms.d.ts.map +0 -0
  2047. package/dist-extensions/src/util/misc/pick.d.ts +0 -0
  2048. package/dist-extensions/src/util/misc/pick.d.ts.map +0 -0
  2049. package/dist-extensions/src/util/misc/planeChange.d.ts +0 -0
  2050. package/dist-extensions/src/util/misc/planeChange.d.ts.map +0 -0
  2051. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -0
  2052. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -0
  2053. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -0
  2054. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -0
  2055. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -0
  2056. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -0
  2057. package/dist-extensions/src/util/misc/projectStroke/index.d.ts +0 -0
  2058. package/dist-extensions/src/util/misc/projectStroke/index.d.ts.map +0 -0
  2059. package/dist-extensions/src/util/misc/projectStroke/types.d.ts +0 -0
  2060. package/dist-extensions/src/util/misc/projectStroke/types.d.ts.map +0 -0
  2061. package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts +0 -0
  2062. package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts.map +0 -0
  2063. package/dist-extensions/src/util/misc/resolveOrigin.d.ts +0 -0
  2064. package/dist-extensions/src/util/misc/resolveOrigin.d.ts.map +0 -0
  2065. package/dist-extensions/src/util/misc/sin.d.ts +0 -0
  2066. package/dist-extensions/src/util/misc/sin.d.ts.map +0 -0
  2067. package/dist-extensions/src/util/misc/svgExport.d.ts +0 -0
  2068. package/dist-extensions/src/util/misc/svgExport.d.ts.map +0 -0
  2069. package/dist-extensions/src/util/misc/svgParsing.d.ts +0 -0
  2070. package/dist-extensions/src/util/misc/svgParsing.d.ts.map +0 -0
  2071. package/dist-extensions/src/util/misc/textStyles.d.ts +0 -0
  2072. package/dist-extensions/src/util/misc/textStyles.d.ts.map +0 -0
  2073. package/dist-extensions/src/util/misc/toFixed.d.ts +0 -0
  2074. package/dist-extensions/src/util/misc/toFixed.d.ts.map +0 -0
  2075. package/dist-extensions/src/util/misc/vectors.d.ts +0 -0
  2076. package/dist-extensions/src/util/misc/vectors.d.ts.map +0 -0
  2077. package/dist-extensions/src/util/path/index.d.ts +0 -0
  2078. package/dist-extensions/src/util/path/index.d.ts.map +0 -0
  2079. package/dist-extensions/src/util/path/regex.d.ts +0 -0
  2080. package/dist-extensions/src/util/path/regex.d.ts.map +0 -0
  2081. package/dist-extensions/src/util/path/typedefs.d.ts +0 -0
  2082. package/dist-extensions/src/util/path/typedefs.d.ts.map +0 -0
  2083. package/dist-extensions/src/util/transform_matrix_removal.d.ts +0 -0
  2084. package/dist-extensions/src/util/transform_matrix_removal.d.ts.map +0 -0
  2085. package/dist-extensions/src/util/typeAssertions.d.ts +0 -0
  2086. package/dist-extensions/src/util/typeAssertions.d.ts.map +0 -0
  2087. package/eslint.config.mjs +0 -0
  2088. package/examples/overlay-edit.html +416 -416
  2089. package/extensions/README.MD +0 -0
  2090. package/extensions/aligning_guidelines/README.MD +0 -0
  2091. package/extensions/aligning_guidelines/constant.ts +0 -0
  2092. package/extensions/aligning_guidelines/index.ts +0 -0
  2093. package/extensions/aligning_guidelines/typedefs.ts +0 -0
  2094. package/extensions/aligning_guidelines/util/basic.spec.ts +0 -0
  2095. package/extensions/aligning_guidelines/util/basic.ts +0 -0
  2096. package/extensions/aligning_guidelines/util/collect-line.ts +0 -0
  2097. package/extensions/aligning_guidelines/util/collect-point.ts +0 -0
  2098. package/extensions/aligning_guidelines/util/draw.ts +0 -0
  2099. package/extensions/aligning_guidelines/util/get-objects-by-target.ts +0 -0
  2100. package/extensions/data_updaters/README.md +0 -0
  2101. package/extensions/data_updaters/gradient/__snapshots__/index.spec.ts.snap +0 -0
  2102. package/extensions/data_updaters/gradient/index.spec.ts +0 -0
  2103. package/extensions/data_updaters/gradient/index.ts +0 -0
  2104. package/extensions/data_updaters/origins/README.md +0 -0
  2105. package/extensions/data_updaters/origins/index.spec.ts +0 -0
  2106. package/extensions/data_updaters/origins/index.ts +0 -0
  2107. package/extensions/index.ts +0 -0
  2108. package/fabric-test-editor.html +591 -0
  2109. package/fabric.ts +0 -0
  2110. package/index.node.ts +0 -0
  2111. package/index.ts +0 -0
  2112. package/lib/aligning_guidelines.js +0 -0
  2113. package/lib/centering_guidelines.js +0 -0
  2114. package/lib/event.js +0 -0
  2115. package/package.json +1 -1
  2116. package/playwright.config.ts +0 -0
  2117. package/playwright.setup.ts +0 -0
  2118. package/publish-next.js +0 -0
  2119. package/publish.js +0 -0
  2120. package/rollup.config.mjs +0 -0
  2121. package/scripts/bench-text.js +591 -591
  2122. package/scripts/build.mjs +0 -0
  2123. package/scripts/buildLock.mjs +0 -0
  2124. package/scripts/buildReporter.mjs +0 -0
  2125. package/scripts/buildStats.mjs +0 -0
  2126. package/scripts/dirname.mjs +0 -0
  2127. package/scripts/git.mjs +0 -0
  2128. package/scripts/index.mjs +0 -0
  2129. package/scripts/sandbox.mjs +0 -0
  2130. package/src/ClassRegistry.spec.ts +0 -0
  2131. package/src/ClassRegistry.ts +0 -0
  2132. package/src/Collection.spec.ts +0 -0
  2133. package/src/Collection.ts +0 -0
  2134. package/src/CommonMethods.ts +0 -0
  2135. package/src/EventTypeDefs.ts +0 -0
  2136. package/src/Intersection.spec.ts +0 -0
  2137. package/src/Intersection.ts +0 -0
  2138. package/src/LayoutManager/ActiveSelectionLayoutManager.spec.ts +0 -0
  2139. package/src/LayoutManager/ActiveSelectionLayoutManager.ts +0 -0
  2140. package/src/LayoutManager/LayoutManager.spec.ts +0 -0
  2141. package/src/LayoutManager/LayoutManager.ts +0 -0
  2142. package/src/LayoutManager/LayoutStrategies/ClipPathLayout.ts +0 -0
  2143. package/src/LayoutManager/LayoutStrategies/FitContentLayout.ts +0 -0
  2144. package/src/LayoutManager/LayoutStrategies/FixedLayout.ts +0 -0
  2145. package/src/LayoutManager/LayoutStrategies/LayoutStrategy.ts +0 -0
  2146. package/src/LayoutManager/LayoutStrategies/utils.ts +0 -0
  2147. package/src/LayoutManager/README.md +0 -0
  2148. package/src/LayoutManager/__snapshots__/LayoutManager.spec.ts.snap +0 -0
  2149. package/src/LayoutManager/constants.ts +0 -0
  2150. package/src/LayoutManager/index.ts +0 -0
  2151. package/src/LayoutManager/types.ts +0 -0
  2152. package/src/Observable.spec.ts +0 -0
  2153. package/src/Observable.ts +0 -0
  2154. package/src/Pattern/Pattern.spec.ts +0 -0
  2155. package/src/Pattern/Pattern.ts +0 -0
  2156. package/src/Pattern/index.ts +0 -0
  2157. package/src/Pattern/types.ts +0 -0
  2158. package/src/Point.spec.ts +0 -0
  2159. package/src/Point.ts +0 -0
  2160. package/src/Shadow.spec.ts +0 -0
  2161. package/src/Shadow.ts +0 -0
  2162. package/src/__snapshots__/Shadow.spec.ts.snap +0 -0
  2163. package/src/brushes/BaseBrush.spec.ts +0 -0
  2164. package/src/brushes/BaseBrush.ts +0 -0
  2165. package/src/brushes/CircleBrush.test.ts +0 -0
  2166. package/src/brushes/CircleBrush.ts +0 -0
  2167. package/src/brushes/PatternBrush.ts +0 -0
  2168. package/src/brushes/PencilBrush.spec.ts +0 -0
  2169. package/src/brushes/PencilBrush.ts +0 -0
  2170. package/src/brushes/SprayBrush.ts +0 -0
  2171. package/src/brushes/__snapshots__/PencilBrush.spec.ts.snap +0 -0
  2172. package/src/brushes/typedefs.ts +0 -0
  2173. package/src/cache.spec.ts +0 -0
  2174. package/src/cache.ts +0 -0
  2175. package/src/canvas/Canvas-dispose.spec.ts +0 -0
  2176. package/src/canvas/Canvas-events.spec.ts +0 -0
  2177. package/src/canvas/Canvas.spec.ts +0 -0
  2178. package/src/canvas/Canvas.ts +0 -0
  2179. package/src/canvas/CanvasOptions.ts +0 -0
  2180. package/src/canvas/DOMManagers/CanvasDOMManager.ts +0 -0
  2181. package/src/canvas/DOMManagers/StaticCanvasDOMManager.ts +0 -0
  2182. package/src/canvas/DOMManagers/util.spec.ts +0 -0
  2183. package/src/canvas/DOMManagers/util.ts +0 -0
  2184. package/src/canvas/SelectableCanvas.spec.ts +0 -0
  2185. package/src/canvas/SelectableCanvas.ts +0 -0
  2186. package/src/canvas/StaticCanvas.spec.ts +0 -0
  2187. package/src/canvas/StaticCanvas.ts +0 -0
  2188. package/src/canvas/StaticCanvasOptions.ts +0 -0
  2189. package/src/canvas/TextEditingManager.ts +0 -0
  2190. package/src/canvas/__tests__/SelectableCanvas.spec.ts +0 -0
  2191. package/src/canvas/__tests__/__snapshots__/eventData.test.ts.snap +0 -0
  2192. package/src/canvas/__tests__/eventData.test.ts +0 -0
  2193. package/src/canvas/canvas_gestures.mixin.ts +0 -0
  2194. package/src/color/Color.ts +0 -0
  2195. package/src/color/color.test.ts +0 -0
  2196. package/src/color/color_map.ts +0 -0
  2197. package/src/color/constants.ts +0 -0
  2198. package/src/color/typedefs.ts +0 -0
  2199. package/src/color/util.ts +0 -0
  2200. package/src/config.ts +0 -0
  2201. package/src/constants.ts +0 -0
  2202. package/src/controls/Control-cursor.spec.ts +0 -0
  2203. package/src/controls/Control-handlers.spec.ts +0 -0
  2204. package/src/controls/Control.spec.ts +0 -0
  2205. package/src/controls/Control.ts +0 -0
  2206. package/src/controls/changeHeight.ts +0 -0
  2207. package/src/controls/changeWidth.test.ts +0 -0
  2208. package/src/controls/changeWidth.ts +0 -0
  2209. package/src/controls/commonControls.ts +0 -0
  2210. package/src/controls/controlRendering.ts +0 -0
  2211. package/src/controls/drag.ts +0 -0
  2212. package/src/controls/fireEvent.ts +0 -0
  2213. package/src/controls/index.ts +0 -0
  2214. package/src/controls/pathControl.spec.ts +0 -0
  2215. package/src/controls/pathControl.ts +0 -0
  2216. package/src/controls/polyControl.spec.ts +0 -0
  2217. package/src/controls/polyControl.ts +0 -0
  2218. package/src/controls/rotate.ts +0 -0
  2219. package/src/controls/scale.test.ts +0 -0
  2220. package/src/controls/scale.ts +0 -0
  2221. package/src/controls/scaleSkew.ts +0 -0
  2222. package/src/controls/skew.ts +0 -0
  2223. package/src/controls/util.ts +0 -0
  2224. package/src/controls/wrapWithFireEvent.ts +0 -0
  2225. package/src/controls/wrapWithFixedAnchor.spec.ts +0 -0
  2226. package/src/controls/wrapWithFixedAnchor.ts +0 -0
  2227. package/src/env/browser.ts +0 -0
  2228. package/src/env/env.spec.ts +0 -0
  2229. package/src/env/index.ts +0 -0
  2230. package/src/env/node.ts +0 -0
  2231. package/src/env/types.ts +0 -0
  2232. package/src/filters/BaseFilter.spec.ts +0 -0
  2233. package/src/filters/BaseFilter.ts +0 -0
  2234. package/src/filters/BlendColor.ts +0 -0
  2235. package/src/filters/BlendImage.ts +0 -0
  2236. package/src/filters/Blur.ts +0 -0
  2237. package/src/filters/Boilerplate.ts +0 -0
  2238. package/src/filters/Brightness.ts +0 -0
  2239. package/src/filters/Canvas2dFilterBackend.ts +0 -0
  2240. package/src/filters/ColorMatrix.spec.ts +0 -0
  2241. package/src/filters/ColorMatrix.ts +0 -0
  2242. package/src/filters/ColorMatrixFilters.ts +0 -0
  2243. package/src/filters/Composed.ts +0 -0
  2244. package/src/filters/Contrast.ts +0 -0
  2245. package/src/filters/Convolute.ts +0 -0
  2246. package/src/filters/FilterBackend.ts +0 -0
  2247. package/src/filters/GLProbes/GLProbe.ts +0 -0
  2248. package/src/filters/GLProbes/NodeGLProbe.ts +0 -0
  2249. package/src/filters/GLProbes/WebGLProbe.ts +0 -0
  2250. package/src/filters/Gamma.ts +0 -0
  2251. package/src/filters/Grayscale.ts +0 -0
  2252. package/src/filters/HueRotation.ts +0 -0
  2253. package/src/filters/Invert.ts +0 -0
  2254. package/src/filters/Noise.ts +0 -0
  2255. package/src/filters/Pixelate.ts +0 -0
  2256. package/src/filters/RemoveColor.ts +0 -0
  2257. package/src/filters/Resize.ts +0 -0
  2258. package/src/filters/Saturation.ts +0 -0
  2259. package/src/filters/Vibrance.ts +0 -0
  2260. package/src/filters/WebGLFilterBackend.spec.ts +0 -0
  2261. package/src/filters/WebGLFilterBackend.ts +0 -0
  2262. package/src/filters/filters.ts +0 -0
  2263. package/src/filters/index.ts +0 -0
  2264. package/src/filters/shaders/baseFilter.ts +0 -0
  2265. package/src/filters/shaders/blendColor.ts +0 -0
  2266. package/src/filters/shaders/blendImage.ts +0 -0
  2267. package/src/filters/shaders/blur.ts +0 -0
  2268. package/src/filters/shaders/brightness.ts +0 -0
  2269. package/src/filters/shaders/colorMatrix.ts +0 -0
  2270. package/src/filters/shaders/constrast.ts +0 -0
  2271. package/src/filters/shaders/convolute.ts +0 -0
  2272. package/src/filters/shaders/gamma.ts +0 -0
  2273. package/src/filters/shaders/grayscale.ts +0 -0
  2274. package/src/filters/shaders/invert.ts +0 -0
  2275. package/src/filters/shaders/noise.ts +0 -0
  2276. package/src/filters/shaders/pixelate.ts +0 -0
  2277. package/src/filters/shaders/removeColor.ts +0 -0
  2278. package/src/filters/shaders/saturation.ts +0 -0
  2279. package/src/filters/shaders/vibrance.ts +0 -0
  2280. package/src/filters/typedefs.ts +0 -0
  2281. package/src/filters/utils.ts +0 -0
  2282. package/src/gradient/Gradient.spec.ts +0 -0
  2283. package/src/gradient/Gradient.ts +0 -0
  2284. package/src/gradient/constants.ts +0 -0
  2285. package/src/gradient/index.ts +0 -0
  2286. package/src/gradient/parser/misc.ts +0 -0
  2287. package/src/gradient/parser/parseColorStops.ts +0 -0
  2288. package/src/gradient/parser/parseCoords.ts +0 -0
  2289. package/src/gradient/typedefs.ts +0 -0
  2290. package/src/mixins/eraser_brush.mixin.ts +0 -0
  2291. package/src/parkinglot/canvas_animation.mixin.ts +0 -0
  2292. package/src/parkinglot/straighten.ts +0 -0
  2293. package/src/parser/applyViewboxTransform.spec.ts +0 -0
  2294. package/src/parser/applyViewboxTransform.ts +0 -0
  2295. package/src/parser/attributes.ts +0 -0
  2296. package/src/parser/constants.spec.ts +0 -0
  2297. package/src/parser/constants.ts +0 -0
  2298. package/src/parser/doesSomeParentMatch.ts +0 -0
  2299. package/src/parser/elementMatchesRule.ts +0 -0
  2300. package/src/parser/elements_parser.ts +0 -0
  2301. package/src/parser/getCSSRules.spec.ts +0 -0
  2302. package/src/parser/getCSSRules.ts +0 -0
  2303. package/src/parser/getGlobalStylesForElement.ts +0 -0
  2304. package/src/parser/getGradientDefs.ts +0 -0
  2305. package/src/parser/getMultipleNodes.ts +0 -0
  2306. package/src/parser/getSvgRegex.ts +0 -0
  2307. package/src/parser/getTagName.ts +0 -0
  2308. package/src/parser/hasInvalidAncestor.ts +0 -0
  2309. package/src/parser/loadSVGFromString.test.ts +0 -0
  2310. package/src/parser/loadSVGFromString.ts +0 -0
  2311. package/src/parser/loadSVGFromURL.ts +0 -0
  2312. package/src/parser/normalizeAttr.ts +0 -0
  2313. package/src/parser/normalizeValue.ts +0 -0
  2314. package/src/parser/parseAttributes.ts +0 -0
  2315. package/src/parser/parseFontDeclaration.ts +0 -0
  2316. package/src/parser/parsePointsAttribute.ts +0 -0
  2317. package/src/parser/parseSVGDocument.ts +0 -0
  2318. package/src/parser/parseStyleAttribute.ts +0 -0
  2319. package/src/parser/parseStyleObject.ts +0 -0
  2320. package/src/parser/parseStyleString.ts +0 -0
  2321. package/src/parser/parseTransformAttribute.ts +0 -0
  2322. package/src/parser/parseUseDirectives.test.ts +0 -0
  2323. package/src/parser/parseUseDirectives.ts +0 -0
  2324. package/src/parser/parser.spec.ts +0 -0
  2325. package/src/parser/percent.ts +0 -0
  2326. package/src/parser/recursivelyParseGradientsXlink.ts +0 -0
  2327. package/src/parser/selectorMatches.ts +0 -0
  2328. package/src/parser/setStrokeFillOpacity.ts +0 -0
  2329. package/src/parser/typedefs.ts +0 -0
  2330. package/src/shapes/ActiveSelection.spec.ts +0 -0
  2331. package/src/shapes/ActiveSelection.ts +0 -0
  2332. package/src/shapes/Circle.spec.ts +0 -0
  2333. package/src/shapes/Circle.ts +0 -0
  2334. package/src/shapes/Ellipse.spec.ts +0 -0
  2335. package/src/shapes/Ellipse.ts +0 -0
  2336. package/src/shapes/Group.spec.ts +0 -0
  2337. package/src/shapes/Group.ts +0 -0
  2338. package/src/shapes/IText/DraggableTextDelegate.ts +0 -0
  2339. package/src/shapes/IText/IText-click-behavior.spec.ts +0 -0
  2340. package/src/shapes/IText/IText.test.ts +0 -0
  2341. package/src/shapes/IText/IText.ts +846 -846
  2342. package/src/shapes/IText/ITextBehavior.test.ts +0 -0
  2343. package/src/shapes/IText/ITextBehavior.ts +1176 -1176
  2344. package/src/shapes/IText/ITextClickBehavior.ts +254 -254
  2345. package/src/shapes/IText/ITextKeyBehavior.test.ts +0 -0
  2346. package/src/shapes/IText/ITextKeyBehavior.ts +0 -0
  2347. package/src/shapes/IText/__snapshots__/IText.test.ts.snap +0 -0
  2348. package/src/shapes/IText/__snapshots__/ITextBehavior.test.ts.snap +0 -0
  2349. package/src/shapes/IText/constants.ts +0 -0
  2350. package/src/shapes/Image-filters.spec.ts +0 -0
  2351. package/src/shapes/Image.spec.ts +0 -0
  2352. package/src/shapes/Image.ts +0 -0
  2353. package/src/shapes/Line.spec.ts +0 -0
  2354. package/src/shapes/Line.ts +0 -0
  2355. package/src/shapes/Object/FabricObject.spec.ts +0 -0
  2356. package/src/shapes/Object/FabricObject.ts +0 -0
  2357. package/src/shapes/Object/FabricObjectSVGExportMixin.ts +0 -0
  2358. package/src/shapes/Object/InteractiveObject.spec.ts +0 -0
  2359. package/src/shapes/Object/InteractiveObject.ts +0 -0
  2360. package/src/shapes/Object/Object-clip-path.spec.ts +0 -0
  2361. package/src/shapes/Object/Object-interactivity.spec.ts +0 -0
  2362. package/src/shapes/Object/Object.spec.ts +0 -0
  2363. package/src/shapes/Object/Object.ts +0 -0
  2364. package/src/shapes/Object/ObjectGeometry.spec.ts +0 -0
  2365. package/src/shapes/Object/ObjectGeometry.ts +0 -0
  2366. package/src/shapes/Object/ObjectOrigin.spec.ts +0 -0
  2367. package/src/shapes/Object/ObjectSerialization.spec.ts +0 -0
  2368. package/src/shapes/Object/StackedObject.spec.ts +0 -0
  2369. package/src/shapes/Object/__snapshots__/InteractiveObject.spec.ts.snap +0 -0
  2370. package/src/shapes/Object/defaultValues.ts +0 -0
  2371. package/src/shapes/Object/types/BaseProps.ts +0 -0
  2372. package/src/shapes/Object/types/BorderProps.ts +0 -0
  2373. package/src/shapes/Object/types/ControlProps.ts +0 -0
  2374. package/src/shapes/Object/types/FabricObjectProps.ts +0 -0
  2375. package/src/shapes/Object/types/FillStrokeProps.ts +0 -0
  2376. package/src/shapes/Object/types/LockInteractionProps.ts +0 -0
  2377. package/src/shapes/Object/types/ObjectProps.ts +0 -0
  2378. package/src/shapes/Object/types/ObjectTransformProps.ts +0 -0
  2379. package/src/shapes/Object/types/SerializedObjectProps.ts +0 -0
  2380. package/src/shapes/Object/types/index.ts +0 -0
  2381. package/src/shapes/Path.spec.ts +0 -0
  2382. package/src/shapes/Path.ts +0 -0
  2383. package/src/shapes/Polygon.spec.ts +0 -0
  2384. package/src/shapes/Polygon.ts +0 -0
  2385. package/src/shapes/Polyline.spec.ts +0 -0
  2386. package/src/shapes/Polyline.ts +0 -0
  2387. package/src/shapes/Rect.spec.ts +0 -0
  2388. package/src/shapes/Rect.ts +0 -0
  2389. package/src/shapes/Text/StyledText.spec.ts +0 -0
  2390. package/src/shapes/Text/StyledText.ts +0 -0
  2391. package/src/shapes/Text/Text.spec.ts +0 -0
  2392. package/src/shapes/Text/Text.ts +2226 -2161
  2393. package/src/shapes/Text/TextSVGExportMixin.spec.ts +0 -0
  2394. package/src/shapes/Text/TextSVGExportMixin.ts +0 -0
  2395. package/src/shapes/Text/__snapshots__/Text.spec.ts.snap +0 -0
  2396. package/src/shapes/Text/__snapshots__/TextSVGExportMixin.spec.ts.snap +0 -0
  2397. package/src/shapes/Text/constants.ts +134 -134
  2398. package/src/shapes/Textbox.spec.ts +0 -0
  2399. package/src/shapes/Textbox.ts +788 -788
  2400. package/src/shapes/Triangle.ts +0 -0
  2401. package/src/shapes/__snapshots__/Image.spec.ts.snap +0 -0
  2402. package/src/shapes/__snapshots__/Textbox.spec.ts.snap +0 -0
  2403. package/src/text/browserLines.ts +233 -233
  2404. package/src/text/ellipsis.ts +516 -516
  2405. package/src/text/hitTest.ts +623 -623
  2406. package/src/text/layout.ts +586 -586
  2407. package/src/text/measure.ts +475 -475
  2408. package/src/text/overlayEditor.ts +1035 -895
  2409. package/src/text/unicode.ts +454 -454
  2410. package/src/typedefs.ts +0 -0
  2411. package/src/util/__snapshots__/index.spec.ts.snap +0 -0
  2412. package/src/util/animation/AnimationBase.ts +0 -0
  2413. package/src/util/animation/AnimationFrameProvider.ts +0 -0
  2414. package/src/util/animation/AnimationRegistry.ts +0 -0
  2415. package/src/util/animation/ArrayAnimation.ts +0 -0
  2416. package/src/util/animation/ColorAnimation.ts +0 -0
  2417. package/src/util/animation/ValueAnimation.ts +0 -0
  2418. package/src/util/animation/__snapshots__/animations.spec.ts.snap +0 -0
  2419. package/src/util/animation/animate.ts +0 -0
  2420. package/src/util/animation/animations.spec.ts +0 -0
  2421. package/src/util/animation/easing.ts +0 -0
  2422. package/src/util/animation/index.ts +0 -0
  2423. package/src/util/animation/types.ts +0 -0
  2424. package/src/util/applyMixins.ts +0 -0
  2425. package/src/util/dom_event.spec.ts +0 -0
  2426. package/src/util/dom_event.ts +0 -0
  2427. package/src/util/dom_misc.ts +0 -0
  2428. package/src/util/index.spec.ts +0 -0
  2429. package/src/util/index.ts +0 -0
  2430. package/src/util/internals/applyCanvasTransform.ts +0 -0
  2431. package/src/util/internals/cleanupSvgAttribute.test.ts +0 -0
  2432. package/src/util/internals/cleanupSvgAttribute.ts +0 -0
  2433. package/src/util/internals/cloneStyles.spec.ts +0 -0
  2434. package/src/util/internals/cloneStyles.ts +0 -0
  2435. package/src/util/internals/console.ts +0 -0
  2436. package/src/util/internals/dom_style.spec.ts +0 -0
  2437. package/src/util/internals/dom_style.ts +0 -0
  2438. package/src/util/internals/findRight.ts +0 -0
  2439. package/src/util/internals/getRandomInt.test.ts +0 -0
  2440. package/src/util/internals/getRandomInt.ts +0 -0
  2441. package/src/util/internals/ifNaN.ts +0 -0
  2442. package/src/util/internals/removeFromArray.spec.ts +0 -0
  2443. package/src/util/internals/removeFromArray.ts +0 -0
  2444. package/src/util/internals/uid.ts +0 -0
  2445. package/src/util/lang_string.spec.ts +0 -0
  2446. package/src/util/lang_string.ts +0 -0
  2447. package/src/util/misc/boundingBoxFromPoints.spec.ts +0 -0
  2448. package/src/util/misc/boundingBoxFromPoints.ts +0 -0
  2449. package/src/util/misc/capValue.spec.ts +0 -0
  2450. package/src/util/misc/capValue.ts +0 -0
  2451. package/src/util/misc/cos.spec.ts +0 -0
  2452. package/src/util/misc/cos.ts +0 -0
  2453. package/src/util/misc/dom.spec.ts +0 -0
  2454. package/src/util/misc/dom.ts +0 -0
  2455. package/src/util/misc/findScaleTo.spec.ts +0 -0
  2456. package/src/util/misc/findScaleTo.ts +0 -0
  2457. package/src/util/misc/groupSVGElements.spec.ts +0 -0
  2458. package/src/util/misc/groupSVGElements.ts +0 -0
  2459. package/src/util/misc/isTransparent.ts +0 -0
  2460. package/src/util/misc/matrix.spec.ts +0 -0
  2461. package/src/util/misc/matrix.ts +0 -0
  2462. package/src/util/misc/mergeClipPaths.spec.ts +0 -0
  2463. package/src/util/misc/mergeClipPaths.ts +0 -0
  2464. package/src/util/misc/objectEnlive.spec.ts +0 -0
  2465. package/src/util/misc/objectEnlive.ts +0 -0
  2466. package/src/util/misc/objectTransforms.spec.ts +0 -0
  2467. package/src/util/misc/objectTransforms.ts +0 -0
  2468. package/src/util/misc/pick.spec.ts +0 -0
  2469. package/src/util/misc/pick.ts +0 -0
  2470. package/src/util/misc/planeChange.spec.ts +0 -0
  2471. package/src/util/misc/planeChange.ts +0 -0
  2472. package/src/util/misc/projectStroke/StrokeLineCapProjections.ts +0 -0
  2473. package/src/util/misc/projectStroke/StrokeLineJoinProjections.ts +0 -0
  2474. package/src/util/misc/projectStroke/StrokeProjectionsBase.ts +0 -0
  2475. package/src/util/misc/projectStroke/index.ts +0 -0
  2476. package/src/util/misc/projectStroke/types.ts +0 -0
  2477. package/src/util/misc/radiansDegreesConversion.spec.ts +0 -0
  2478. package/src/util/misc/radiansDegreesConversion.ts +0 -0
  2479. package/src/util/misc/resolveOrigin.ts +0 -0
  2480. package/src/util/misc/sin.ts +0 -0
  2481. package/src/util/misc/svgExport.ts +0 -0
  2482. package/src/util/misc/svgParsing.spec.ts +0 -0
  2483. package/src/util/misc/svgParsing.ts +0 -0
  2484. package/src/util/misc/textStyles.ts +0 -0
  2485. package/src/util/misc/toFixed.spec.ts +0 -0
  2486. package/src/util/misc/toFixed.ts +0 -0
  2487. package/src/util/misc/vectors.spec.ts +0 -0
  2488. package/src/util/misc/vectors.ts +0 -0
  2489. package/src/util/path/__snapshots__/index.spec.ts.snap +0 -0
  2490. package/src/util/path/index.spec.ts +0 -0
  2491. package/src/util/path/index.ts +0 -0
  2492. package/src/util/path/regex.ts +0 -0
  2493. package/src/util/path/typechecks.ts +0 -0
  2494. package/src/util/path/typedefs.ts +0 -0
  2495. package/src/util/transform_matrix_removal.ts +0 -0
  2496. package/src/util/typeAssertions.spec.ts +0 -0
  2497. package/src/util/typeAssertions.ts +0 -0
  2498. package/tsconfig-extensions.json +0 -0
  2499. package/tsconfig.json +0 -0
  2500. package/tsconfig.spec.json +0 -0
  2501. package/typedoc.config.json +0 -0
  2502. package/vitest.config.ts +0 -0
  2503. package/vitest.d.ts +0 -0
  2504. package/vitest.env.d.ts +0 -0
  2505. package/vitest.extend.ts +0 -0
  2506. package/vitest.setup.ts +0 -0
  2507. package/docs/fabric-konva-gap-analysis.md +0 -274
  2508. package/docs/konva-text-behavior-spec.md +0 -265
  2509. package/docs/text-engine-design.md +0 -698
@@ -410,7 +410,7 @@ class Cache {
410
410
  }
411
411
  const cache = new Cache();
412
412
 
413
- var version = "7.0.0-beta1";
413
+ var version = "7.0.1-beta1";
414
414
 
415
415
  // use this syntax so babel plugin see this import here
416
416
  const VERSION = version;
@@ -18729,8 +18729,8 @@ _defineProperty(StyledText, "_styleProperties", styleProperties);
18729
18729
  // Global measurement context - reused for performance
18730
18730
  let measurementContext = null;
18731
18731
 
18732
- /**
18733
- * Get or create the shared measurement context
18732
+ /**
18733
+ * Get or create the shared measurement context
18734
18734
  */
18735
18735
  function getMeasurementContext() {
18736
18736
  if (!measurementContext) {
@@ -18743,8 +18743,8 @@ function getMeasurementContext() {
18743
18743
  return measurementContext;
18744
18744
  }
18745
18745
 
18746
- /**
18747
- * Measure a single grapheme
18746
+ /**
18747
+ * Measure a single grapheme
18748
18748
  */
18749
18749
  function measureGrapheme(grapheme, options, ctx) {
18750
18750
  // Check cache first
@@ -18777,8 +18777,8 @@ function measureGrapheme(grapheme, options, ctx) {
18777
18777
  return measurement;
18778
18778
  }
18779
18779
 
18780
- /**
18781
- * Measure a grapheme with kerning relative to previous character
18780
+ /**
18781
+ * Measure a grapheme with kerning relative to previous character
18782
18782
  */
18783
18783
  function measureGraphemeWithKerning(grapheme, previousGrapheme, options, ctx) {
18784
18784
  // Get individual measurement
@@ -18819,8 +18819,8 @@ function measureGraphemeWithKerning(grapheme, previousGrapheme, options, ctx) {
18819
18819
  };
18820
18820
  }
18821
18821
 
18822
- /**
18823
- * Get font metrics for layout calculations
18822
+ /**
18823
+ * Get font metrics for layout calculations
18824
18824
  */
18825
18825
  function getFontMetrics(options) {
18826
18826
  var _metrics$fontBounding, _metrics$fontBounding2, _metrics$actualBoundi, _metrics$actualBoundi2;
@@ -18855,8 +18855,8 @@ function getFontMetrics(options) {
18855
18855
  return result;
18856
18856
  }
18857
18857
 
18858
- /**
18859
- * Apply font styling to canvas context
18858
+ /**
18859
+ * Apply font styling to canvas context
18860
18860
  */
18861
18861
  function applyFontStyle(ctx, options) {
18862
18862
  const fontDeclaration = getFontDeclaration(options);
@@ -18873,8 +18873,8 @@ function applyFontStyle(ctx, options) {
18873
18873
  ctx.textBaseline = 'alphabetic';
18874
18874
  }
18875
18875
 
18876
- /**
18877
- * Generate font declaration string
18876
+ /**
18877
+ * Generate font declaration string
18878
18878
  */
18879
18879
  function getFontDeclaration(options) {
18880
18880
  const {
@@ -18889,8 +18889,8 @@ function getFontDeclaration(options) {
18889
18889
  return `${fontStyle} ${fontWeight} ${fontSize}px ${normalizedFamily}`;
18890
18890
  }
18891
18891
 
18892
- /**
18893
- * LRU Cache implementation for measurements
18892
+ /**
18893
+ * LRU Cache implementation for measurements
18894
18894
  */
18895
18895
  class LRUCache {
18896
18896
  constructor() {
@@ -18952,8 +18952,8 @@ class LRUCache {
18952
18952
  }
18953
18953
  }
18954
18954
 
18955
- /**
18956
- * Advanced measurement cache with font-aware keys
18955
+ /**
18956
+ * Advanced measurement cache with font-aware keys
18957
18957
  */
18958
18958
  class MeasurementCache {
18959
18959
  constructor() {
@@ -18980,8 +18980,8 @@ class MeasurementCache {
18980
18980
  }
18981
18981
  }
18982
18982
 
18983
- /**
18984
- * Kerning cache for character pairs
18983
+ /**
18984
+ * Kerning cache for character pairs
18985
18985
  */
18986
18986
  class KerningCache {
18987
18987
  constructor() {
@@ -19009,8 +19009,8 @@ class KerningCache {
19009
19009
  }
19010
19010
  }
19011
19011
 
19012
- /**
19013
- * Font metrics cache
19012
+ /**
19013
+ * Font metrics cache
19014
19014
  */
19015
19015
  class FontMetricsCache {
19016
19016
  constructor() {
@@ -19037,17 +19037,17 @@ const measurementCache = new MeasurementCache();
19037
19037
  const kerningCache = new KerningCache();
19038
19038
  const fontMetricsCache = new FontMetricsCache();
19039
19039
 
19040
- /**
19041
- * Unicode and Internationalization Support
19042
- *
19043
- * Enhanced Unicode handling for complex scripts, RTL/LTR text,
19044
- * and grapheme cluster boundary detection.
19040
+ /**
19041
+ * Unicode and Internationalization Support
19042
+ *
19043
+ * Enhanced Unicode handling for complex scripts, RTL/LTR text,
19044
+ * and grapheme cluster boundary detection.
19045
19045
  */
19046
19046
 
19047
19047
 
19048
- /**
19049
- * Enhanced grapheme segmentation using Intl.Segmenter when available
19050
- * with fallback to existing graphemeSplit implementation
19048
+ /**
19049
+ * Enhanced grapheme segmentation using Intl.Segmenter when available
19050
+ * with fallback to existing graphemeSplit implementation
19051
19051
  */
19052
19052
  function segmentGraphemes(text) {
19053
19053
  // Use native Intl.Segmenter if available
@@ -19067,15 +19067,15 @@ function segmentGraphemes(text) {
19067
19067
  return graphemeSplit(text);
19068
19068
  }
19069
19069
 
19070
- /**
19071
- * Ellipsis Text Truncation System
19072
- *
19073
- * Implements text truncation with ellipsis when content exceeds bounds,
19074
- * using binary search for optimal truncation points.
19070
+ /**
19071
+ * Ellipsis Text Truncation System
19072
+ *
19073
+ * Implements text truncation with ellipsis when content exceeds bounds,
19074
+ * using binary search for optimal truncation points.
19075
19075
  */
19076
19076
 
19077
- /**
19078
- * Apply ellipsis truncation to text based on width/height constraints
19077
+ /**
19078
+ * Apply ellipsis truncation to text based on width/height constraints
19079
19079
  */
19080
19080
  function applyEllipsis(text, options) {
19081
19081
  const {
@@ -19145,8 +19145,8 @@ function applyEllipsis(text, options) {
19145
19145
  };
19146
19146
  }
19147
19147
 
19148
- /**
19149
- * Truncate text based on width constraint using binary search
19148
+ /**
19149
+ * Truncate text based on width constraint using binary search
19150
19150
  */
19151
19151
  function truncateByWidth(text, maxWidth, ellipsisChar, ellipsisWidth, measureFn) {
19152
19152
  const graphemes = segmentGraphemes(text);
@@ -19196,8 +19196,8 @@ function truncateByWidth(text, maxWidth, ellipsisChar, ellipsisWidth, measureFn)
19196
19196
  };
19197
19197
  }
19198
19198
 
19199
- /**
19200
- * Truncate text based on height constraint
19199
+ /**
19200
+ * Truncate text based on height constraint
19201
19201
  */
19202
19202
  function truncateByHeight(text, maxHeight, ellipsisChar, measureFn) {
19203
19203
  var _measureFn;
@@ -19245,19 +19245,19 @@ function truncateByHeight(text, maxHeight, ellipsisChar, measureFn) {
19245
19245
  return truncateByWidth(lines[0], firstLineWidth, ellipsisChar, 0, measureFn);
19246
19246
  }
19247
19247
 
19248
- /**
19249
- * Core Text Layout Engine
19250
- *
19251
- * Implements Konva-compatible text layout with support for:
19252
- * - Multiple wrap modes (word/char/none)
19253
- * - Ellipsis truncation
19254
- * - Justify alignment with proper space distribution
19255
- * - RTL/LTR text direction
19256
- * - Advanced grapheme handling
19248
+ /**
19249
+ * Core Text Layout Engine
19250
+ *
19251
+ * Implements Konva-compatible text layout with support for:
19252
+ * - Multiple wrap modes (word/char/none)
19253
+ * - Ellipsis truncation
19254
+ * - Justify alignment with proper space distribution
19255
+ * - RTL/LTR text direction
19256
+ * - Advanced grapheme handling
19257
19257
  */
19258
19258
 
19259
- /**
19260
- * Main text layout function - converts text and options into positioned layout
19259
+ /**
19260
+ * Main text layout function - converts text and options into positioned layout
19261
19261
  */
19262
19262
  function layoutText(options) {
19263
19263
  var _ellipsisResult;
@@ -19376,8 +19376,8 @@ function layoutText(options) {
19376
19376
  };
19377
19377
  }
19378
19378
 
19379
- /**
19380
- * Layout a single paragraph with wrapping
19379
+ /**
19380
+ * Layout a single paragraph with wrapping
19381
19381
  */
19382
19382
  function layoutParagraph(text, options) {
19383
19383
  const {
@@ -19412,8 +19412,8 @@ function layoutParagraph(text, options) {
19412
19412
  return layoutLines;
19413
19413
  }
19414
19414
 
19415
- /**
19416
- * Layout a single line of text (no wrapping)
19415
+ /**
19416
+ * Layout a single line of text (no wrapping)
19417
19417
  */
19418
19418
  function layoutSingleLine(text, options) {
19419
19419
  let textOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
@@ -19483,8 +19483,8 @@ function layoutSingleLine(text, options) {
19483
19483
  };
19484
19484
  }
19485
19485
 
19486
- /**
19487
- * Word-based wrapping algorithm
19486
+ /**
19487
+ * Word-based wrapping algorithm
19488
19488
  */
19489
19489
  function wrapByWords(text, maxWidth, options) {
19490
19490
  const lines = [];
@@ -19517,8 +19517,8 @@ function wrapByWords(text, maxWidth, options) {
19517
19517
  return lines.length > 0 ? lines : [''];
19518
19518
  }
19519
19519
 
19520
- /**
19521
- * Character-based wrapping algorithm
19520
+ /**
19521
+ * Character-based wrapping algorithm
19522
19522
  */
19523
19523
  function wrapByCharacters(text, maxWidth, options) {
19524
19524
  const lines = [];
@@ -19540,8 +19540,8 @@ function wrapByCharacters(text, maxWidth, options) {
19540
19540
  return lines.length > 0 ? lines : [''];
19541
19541
  }
19542
19542
 
19543
- /**
19544
- * Apply text alignment to lines
19543
+ /**
19544
+ * Apply text alignment to lines
19545
19545
  */
19546
19546
  function applyAlignment(lines, align, containerWidth, options) {
19547
19547
  return lines.map(line => {
@@ -19575,8 +19575,8 @@ function applyAlignment(lines, align, containerWidth, options) {
19575
19575
  });
19576
19576
  }
19577
19577
 
19578
- /**
19579
- * Apply justify alignment by expanding spaces
19578
+ /**
19579
+ * Apply justify alignment by expanding spaces
19580
19580
  */
19581
19581
  function applyJustification(line, containerWidth, options) {
19582
19582
  const spaces = line.graphemes.filter(g => /\s/.test(g)).length;
@@ -19599,8 +19599,8 @@ function applyJustification(line, containerWidth, options) {
19599
19599
  return line;
19600
19600
  }
19601
19601
 
19602
- /**
19603
- * Calculate vertical alignment offset
19602
+ /**
19603
+ * Calculate vertical alignment offset
19604
19604
  */
19605
19605
  function calculateVerticalOffset(contentHeight, containerHeight, align) {
19606
19606
  switch (align) {
@@ -19614,8 +19614,8 @@ function calculateVerticalOffset(contentHeight, containerHeight, align) {
19614
19614
  }
19615
19615
  }
19616
19616
 
19617
- /**
19618
- * Handle height overflow with ellipsis
19617
+ /**
19618
+ * Handle height overflow with ellipsis
19619
19619
  */
19620
19620
  function handleHeightOverflow(existingLines, overflowLine, remainingHeight, options) {
19621
19621
  // If ellipsis is enabled, try to fit part of the overflow line
@@ -19644,8 +19644,8 @@ function handleHeightOverflow(existingLines, overflowLine, remainingHeight, opti
19644
19644
  };
19645
19645
  }
19646
19646
 
19647
- /**
19648
- * Create empty line for empty paragraphs
19647
+ /**
19648
+ * Create empty line for empty paragraphs
19649
19649
  */
19650
19650
  function createEmptyLine(options) {
19651
19651
  const height = options.fontSize * options.lineHeight;
@@ -19661,8 +19661,8 @@ function createEmptyLine(options) {
19661
19661
  };
19662
19662
  }
19663
19663
 
19664
- /**
19665
- * Measure width of a line of text
19664
+ /**
19665
+ * Measure width of a line of text
19666
19666
  */
19667
19667
  function measureLineWidth(text, options) {
19668
19668
  const graphemes = segmentGraphemes(text);
@@ -19679,8 +19679,8 @@ function measureLineWidth(text, options) {
19679
19679
  return width;
19680
19680
  }
19681
19681
 
19682
- /**
19683
- * Convert layout options to measurement options
19682
+ /**
19683
+ * Convert layout options to measurement options
19684
19684
  */
19685
19685
  function createMeasurementOptions(options) {
19686
19686
  return {
@@ -19923,15 +19923,15 @@ class TextSVGExportMixin extends FabricObjectSVGExportMixin {
19923
19923
  }
19924
19924
  }
19925
19925
 
19926
- /**
19927
- * Browser Line Break Extraction
19928
- *
19929
- * Captures exact line breaks as rendered by the browser to ensure
19930
- * pixel-perfect consistency between DOM editing and canvas rendering.
19926
+ /**
19927
+ * Browser Line Break Extraction
19928
+ *
19929
+ * Captures exact line breaks as rendered by the browser to ensure
19930
+ * pixel-perfect consistency between DOM editing and canvas rendering.
19931
19931
  */
19932
19932
 
19933
- /**
19934
- * Segment text into graphemes safely using Intl.Segmenter or fallback
19933
+ /**
19934
+ * Segment text into graphemes safely using Intl.Segmenter or fallback
19935
19935
  */
19936
19936
  function segmentIntoGraphemes(text) {
19937
19937
  if (typeof Intl !== 'undefined' && Intl.Segmenter) {
@@ -19945,9 +19945,9 @@ function segmentIntoGraphemes(text) {
19945
19945
  return Array.from(text);
19946
19946
  }
19947
19947
 
19948
- /**
19949
- * Extract line break information from a textarea by creating a mirror element
19950
- * with identical computed styles and measuring grapheme positions.
19948
+ /**
19949
+ * Extract line break information from a textarea by creating a mirror element
19950
+ * with identical computed styles and measuring grapheme positions.
19951
19951
  */
19952
19952
  function extractLinesFromDOM(textarea) {
19953
19953
  const text = textarea.value;
@@ -20042,16 +20042,16 @@ function extractLinesFromDOM(textarea) {
20042
20042
  }
20043
20043
  }
20044
20044
 
20045
- /**
20046
- * Create a hash of layout-affecting properties to detect when browser lines are still valid
20045
+ /**
20046
+ * Create a hash of layout-affecting properties to detect when browser lines are still valid
20047
20047
  */
20048
20048
  function createLayoutHash(target) {
20049
20049
  const properties = [target.text, target.width, target.height, target.fontFamily, target.fontSize, target.fontWeight, target.fontStyle, target.lineHeight, target.charSpacing, target.textAlign, target.direction];
20050
20050
  return properties.map(p => String(p)).join('|');
20051
20051
  }
20052
20052
 
20053
- /**
20054
- * Check if stored browser lines are still valid for the current target state
20053
+ /**
20054
+ * Check if stored browser lines are still valid for the current target state
20055
20055
  */
20056
20056
  function areBrowserLinesValid(target, storedHash) {
20057
20057
  if (!storedHash || !target.__lastBrowserLines) {
@@ -20061,24 +20061,24 @@ function areBrowserLinesValid(target, storedHash) {
20061
20061
  return currentHash === storedHash;
20062
20062
  }
20063
20063
 
20064
- /**
20065
- * Store browser lines on a target object with validity hash
20064
+ /**
20065
+ * Store browser lines on a target object with validity hash
20066
20066
  */
20067
20067
  function storeBrowserLines(target, lines, layoutHash) {
20068
20068
  target.__lastBrowserLines = lines;
20069
20069
  target.__lastBrowserLinesHash = createLayoutHash(target);
20070
20070
  }
20071
20071
 
20072
- /**
20073
- * Clear stored browser lines from a target object
20072
+ /**
20073
+ * Clear stored browser lines from a target object
20074
20074
  */
20075
20075
  function clearBrowserLines(target) {
20076
20076
  delete target.__lastBrowserLines;
20077
20077
  delete target.__lastBrowserLinesHash;
20078
20078
  }
20079
20079
 
20080
- /**
20081
- * Get stored browser lines if they're still valid
20080
+ /**
20081
+ * Get stored browser lines if they're still valid
20082
20082
  */
20083
20083
  function getBrowserLines(target) {
20084
20084
  const lines = target.__lastBrowserLines;
@@ -20091,9 +20091,9 @@ function getBrowserLines(target) {
20091
20091
 
20092
20092
  let measuringContext;
20093
20093
 
20094
- /**
20095
- * Return a context for measurement of text string.
20096
- * if created it gets stored for reuse
20094
+ /**
20095
+ * Return a context for measurement of text string.
20096
+ * if created it gets stored for reuse
20097
20097
  */
20098
20098
  function getMeasuringContext() {
20099
20099
  if (!measuringContext) {
@@ -20106,17 +20106,17 @@ function getMeasuringContext() {
20106
20106
  return measuringContext;
20107
20107
  }
20108
20108
 
20109
- /**
20110
- * Measure and return the info of a single grapheme.
20111
- * needs the the info of previous graphemes already filled
20112
- * Override to customize measuring
20109
+ /**
20110
+ * Measure and return the info of a single grapheme.
20111
+ * needs the the info of previous graphemes already filled
20112
+ * Override to customize measuring
20113
20113
  */
20114
20114
 
20115
20115
  // @TODO this is not complete
20116
20116
 
20117
- /**
20118
- * Text class
20119
- * @see {@link http://fabricjs.com/fabric-intro-part-2#text}
20117
+ /**
20118
+ * Text class
20119
+ * @see {@link http://fabricjs.com/fabric-intro-part-2#text}
20120
20120
  */
20121
20121
  class FabricText extends StyledText {
20122
20122
  static getDefaults() {
@@ -20127,11 +20127,11 @@ class FabricText extends StyledText {
20127
20127
  }
20128
20128
  constructor(text, options) {
20129
20129
  super();
20130
- /**
20131
- * contains characters bounding boxes
20132
- * This variable is considered to be protected.
20133
- * But for how mixins are implemented right now, we can't leave it private
20134
- * @protected
20130
+ /**
20131
+ * contains characters bounding boxes
20132
+ * This variable is considered to be protected.
20133
+ * But for how mixins are implemented right now, we can't leave it private
20134
+ * @protected
20135
20135
  */
20136
20136
  _defineProperty(this, "__charBounds", []);
20137
20137
  Object.assign(this, FabricText.ownDefaults);
@@ -20148,9 +20148,9 @@ class FabricText extends StyledText {
20148
20148
  this.setCoords();
20149
20149
  }
20150
20150
 
20151
- /**
20152
- * If text has a path, it will add the extra information needed
20153
- * for path and text calculations
20151
+ /**
20152
+ * If text has a path, it will add the extra information needed
20153
+ * for path and text calculations
20154
20154
  */
20155
20155
  setPathInfo() {
20156
20156
  const path = this.path;
@@ -20159,10 +20159,10 @@ class FabricText extends StyledText {
20159
20159
  }
20160
20160
  }
20161
20161
 
20162
- /**
20163
- * @private
20164
- * Divides text into lines of text and lines of graphemes.
20165
- * Uses browser lines when available for pixel-perfect consistency.
20162
+ /**
20163
+ * @private
20164
+ * Divides text into lines of text and lines of graphemes.
20165
+ * Uses browser lines when available for pixel-perfect consistency.
20166
20166
  */
20167
20167
  _splitText() {
20168
20168
  // Check if we have valid browser lines and should use them
@@ -20178,9 +20178,9 @@ class FabricText extends StyledText {
20178
20178
  return newLines;
20179
20179
  }
20180
20180
 
20181
- /**
20182
- * Create TextLinesInfo from browser-extracted lines
20183
- * @private
20181
+ /**
20182
+ * Create TextLinesInfo from browser-extracted lines
20183
+ * @private
20184
20184
  */
20185
20185
  _splitTextFromBrowserLines(browserLines) {
20186
20186
  const lines = [];
@@ -20214,10 +20214,10 @@ class FabricText extends StyledText {
20214
20214
  return result;
20215
20215
  }
20216
20216
 
20217
- /**
20218
- * Initialize or update text dimensions.
20219
- * Updates this.width and this.height with the proper values.
20220
- * Does not return dimensions.
20217
+ /**
20218
+ * Initialize or update text dimensions.
20219
+ * Updates this.width and this.height with the proper values.
20220
+ * Does not return dimensions.
20221
20221
  */
20222
20222
  initDimensions() {
20223
20223
  // Use advanced layout if enabled
@@ -20240,11 +20240,12 @@ class FabricText extends StyledText {
20240
20240
  }
20241
20241
  }
20242
20242
 
20243
- /**
20244
- * Enlarge space boxes and shift the others
20243
+ /**
20244
+ * Enlarge space boxes and shift the others
20245
20245
  */
20246
20246
  enlargeSpaces() {
20247
20247
  let diffSpace, currentLineWidth, numberOfSpaces, accumulatedSpace, line, charBound, spaces;
20248
+ const isRtl = this.direction === 'rtl';
20248
20249
  for (let i = 0, len = this._textLines.length; i < len; i++) {
20249
20250
  if (this.textAlign !== JUSTIFY && (i === len - 1 || this.isEndOfWrapping(i))) {
20250
20251
  continue;
@@ -20255,33 +20256,62 @@ class FabricText extends StyledText {
20255
20256
  if (currentLineWidth < this.width && (spaces = this.textLines[i].match(this._reSpacesAndTabs))) {
20256
20257
  numberOfSpaces = spaces.length;
20257
20258
  diffSpace = (this.width - currentLineWidth) / numberOfSpaces;
20258
- for (let j = 0; j <= line.length; j++) {
20259
- charBound = this.__charBounds[i][j];
20260
- if (this._reSpaceAndTab.test(line[j])) {
20261
- charBound.width += diffSpace;
20262
- charBound.kernedWidth += diffSpace;
20263
- charBound.left += accumulatedSpace;
20264
- accumulatedSpace += diffSpace;
20265
- } else {
20266
- charBound.left += accumulatedSpace;
20259
+ if (isRtl) {
20260
+ for (let j = 0; j < line.length; j++) {
20261
+ if (this._reSpaceAndTab.test(line[j])) ;
20262
+ }
20263
+
20264
+ // For RTL, we need to work backwards through the visual positions
20265
+ // but still update logical positions correctly
20266
+ let spaceCount = 0;
20267
+ for (let j = 0; j <= line.length; j++) {
20268
+ charBound = this.__charBounds[i][j];
20269
+ if (charBound) {
20270
+ if (this._reSpaceAndTab.test(line[j])) {
20271
+ charBound.width += diffSpace;
20272
+ charBound.kernedWidth += diffSpace;
20273
+ spaceCount++;
20274
+ }
20275
+
20276
+ // For RTL, shift all characters to the right by the total expansion
20277
+ // minus the expansion that comes after this character
20278
+ const remainingSpaces = numberOfSpaces - spaceCount;
20279
+ const shiftAmount = remainingSpaces * diffSpace;
20280
+ charBound.left += shiftAmount;
20281
+ }
20282
+ }
20283
+ } else {
20284
+ // LTR processing (original logic)
20285
+ for (let j = 0; j <= line.length; j++) {
20286
+ charBound = this.__charBounds[i][j];
20287
+ if (charBound) {
20288
+ if (this._reSpaceAndTab.test(line[j])) {
20289
+ charBound.width += diffSpace;
20290
+ charBound.kernedWidth += diffSpace;
20291
+ charBound.left += accumulatedSpace;
20292
+ accumulatedSpace += diffSpace;
20293
+ } else {
20294
+ charBound.left += accumulatedSpace;
20295
+ }
20296
+ }
20267
20297
  }
20268
20298
  }
20269
20299
  }
20270
20300
  }
20271
20301
  }
20272
20302
 
20273
- /**
20274
- * Advanced layout using new text engine (Konva-compatible)
20275
- * @private
20303
+ /**
20304
+ * Advanced layout using new text engine (Konva-compatible)
20305
+ * @private
20276
20306
  */
20277
20307
  _layoutTextAdvanced() {
20278
20308
  const options = this._getAdvancedLayoutOptions();
20279
20309
  return layoutText(options);
20280
20310
  }
20281
20311
 
20282
- /**
20283
- * Get advanced layout options from current text properties
20284
- * @private
20312
+ /**
20313
+ * Get advanced layout options from current text properties
20314
+ * @private
20285
20315
  */
20286
20316
  _getAdvancedLayoutOptions() {
20287
20317
  return {
@@ -20303,9 +20333,9 @@ class FabricText extends StyledText {
20303
20333
  };
20304
20334
  }
20305
20335
 
20306
- /**
20307
- * Map Fabric textAlign to Konva align format
20308
- * @private
20336
+ /**
20337
+ * Map Fabric textAlign to Konva align format
20338
+ * @private
20309
20339
  */
20310
20340
  _mapTextAlignToAlign(textAlign) {
20311
20341
  switch (textAlign) {
@@ -20326,8 +20356,8 @@ class FabricText extends StyledText {
20326
20356
  }
20327
20357
  }
20328
20358
 
20329
- /**
20330
- * Enhanced initDimensions that uses advanced layout when enabled
20359
+ /**
20360
+ * Enhanced initDimensions that uses advanced layout when enabled
20331
20361
  */
20332
20362
  initDimensionsAdvanced() {
20333
20363
  if (!this.enableAdvancedLayout) {
@@ -20344,9 +20374,9 @@ class FabricText extends StyledText {
20344
20374
  this.dirty = true;
20345
20375
  }
20346
20376
 
20347
- /**
20348
- * Convert new layout format to legacy _textLines and __charBounds format
20349
- * @private
20377
+ /**
20378
+ * Convert new layout format to legacy _textLines and __charBounds format
20379
+ * @private
20350
20380
  */
20351
20381
  _convertLayoutToLegacyFormat(layout) {
20352
20382
  this._textLines = layout.lines.map(line => line.graphemes);
@@ -20368,30 +20398,30 @@ class FabricText extends StyledText {
20368
20398
  }
20369
20399
  }
20370
20400
 
20371
- /**
20372
- * Detect if the text line is ended with an hard break
20373
- * text and itext do not have wrapping, return false
20374
- * @return {Boolean}
20401
+ /**
20402
+ * Detect if the text line is ended with an hard break
20403
+ * text and itext do not have wrapping, return false
20404
+ * @return {Boolean}
20375
20405
  */
20376
20406
  isEndOfWrapping(lineIndex) {
20377
20407
  return lineIndex === this._textLines.length - 1;
20378
20408
  }
20379
20409
 
20380
- /**
20381
- * Detect if a line has a linebreak and so we need to account for it when moving
20382
- * and counting style.
20383
- * It return always 1 for text and Itext. Textbox has its own implementation
20384
- * @return Number
20410
+ /**
20411
+ * Detect if a line has a linebreak and so we need to account for it when moving
20412
+ * and counting style.
20413
+ * It return always 1 for text and Itext. Textbox has its own implementation
20414
+ * @return Number
20385
20415
  */
20386
20416
 
20387
20417
  missingNewlineOffset(_lineIndex) {
20388
20418
  return 1;
20389
20419
  }
20390
20420
 
20391
- /**
20392
- * Returns 2d representation (lineIndex and charIndex) of cursor
20393
- * @param {Number} selectionStart
20394
- * @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
20421
+ /**
20422
+ * Returns 2d representation (lineIndex and charIndex) of cursor
20423
+ * @param {Number} selectionStart
20424
+ * @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
20395
20425
  */
20396
20426
  get2DCursorLocation(selectionStart, skipWrapping) {
20397
20427
  const lines = skipWrapping ? this._unwrappedTextLines : this._textLines;
@@ -20411,24 +20441,24 @@ class FabricText extends StyledText {
20411
20441
  };
20412
20442
  }
20413
20443
 
20414
- /**
20415
- * Returns string representation of an instance
20416
- * @return {String} String representation of text object
20444
+ /**
20445
+ * Returns string representation of an instance
20446
+ * @return {String} String representation of text object
20417
20447
  */
20418
20448
  toString() {
20419
20449
  return `#<Text (${this.complexity()}): { "text": "${this.text}", "fontFamily": "${this.fontFamily}" }>`;
20420
20450
  }
20421
20451
 
20422
- /**
20423
- * Return the dimension and the zoom level needed to create a cache canvas
20424
- * big enough to host the object to be cached.
20425
- * @private
20426
- * @param {Object} dim.x width of object to be cached
20427
- * @param {Object} dim.y height of object to be cached
20428
- * @return {Object}.width width of canvas
20429
- * @return {Object}.height height of canvas
20430
- * @return {Object}.zoomX zoomX zoom value to unscale the canvas before drawing cache
20431
- * @return {Object}.zoomY zoomY zoom value to unscale the canvas before drawing cache
20452
+ /**
20453
+ * Return the dimension and the zoom level needed to create a cache canvas
20454
+ * big enough to host the object to be cached.
20455
+ * @private
20456
+ * @param {Object} dim.x width of object to be cached
20457
+ * @param {Object} dim.y height of object to be cached
20458
+ * @return {Object}.width width of canvas
20459
+ * @return {Object}.height height of canvas
20460
+ * @return {Object}.zoomX zoomX zoom value to unscale the canvas before drawing cache
20461
+ * @return {Object}.zoomY zoomY zoom value to unscale the canvas before drawing cache
20432
20462
  */
20433
20463
  _getCacheCanvasDimensions() {
20434
20464
  const dims = super._getCacheCanvasDimensions();
@@ -20438,9 +20468,9 @@ class FabricText extends StyledText {
20438
20468
  return dims;
20439
20469
  }
20440
20470
 
20441
- /**
20442
- * @private
20443
- * @param {CanvasRenderingContext2D} ctx Context to render on
20471
+ /**
20472
+ * @private
20473
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20444
20474
  */
20445
20475
  _render(ctx) {
20446
20476
  const path = this.path;
@@ -20453,9 +20483,9 @@ class FabricText extends StyledText {
20453
20483
  this._renderTextDecoration(ctx, 'linethrough');
20454
20484
  }
20455
20485
 
20456
- /**
20457
- * @private
20458
- * @param {CanvasRenderingContext2D} ctx Context to render on
20486
+ /**
20487
+ * @private
20488
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20459
20489
  */
20460
20490
  _renderText(ctx) {
20461
20491
  // Skip text rendering if in overlay editing mode
@@ -20471,15 +20501,15 @@ class FabricText extends StyledText {
20471
20501
  }
20472
20502
  }
20473
20503
 
20474
- /**
20475
- * Set the font parameter of the context with the object properties or with charStyle
20476
- * @private
20477
- * @param {CanvasRenderingContext2D} ctx Context to render on
20478
- * @param {Object} [charStyle] object with font style properties
20479
- * @param {String} [charStyle.fontFamily] Font Family
20480
- * @param {Number} [charStyle.fontSize] Font size in pixels. ( without px suffix )
20481
- * @param {String} [charStyle.fontWeight] Font weight
20482
- * @param {String} [charStyle.fontStyle] Font style (italic|normal)
20504
+ /**
20505
+ * Set the font parameter of the context with the object properties or with charStyle
20506
+ * @private
20507
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20508
+ * @param {Object} [charStyle] object with font style properties
20509
+ * @param {String} [charStyle.fontFamily] Font Family
20510
+ * @param {Number} [charStyle.fontSize] Font size in pixels. ( without px suffix )
20511
+ * @param {String} [charStyle.fontWeight] Font weight
20512
+ * @param {String} [charStyle.fontStyle] Font style (italic|normal)
20483
20513
  */
20484
20514
  _setTextStyles(ctx, charStyle, forMeasuring) {
20485
20515
  ctx.textBaseline = 'alphabetic';
@@ -20499,11 +20529,11 @@ class FabricText extends StyledText {
20499
20529
  ctx.font = this._getFontDeclaration(charStyle, forMeasuring);
20500
20530
  }
20501
20531
 
20502
- /**
20503
- * calculate and return the text Width measuring each line.
20504
- * @private
20505
- * @param {CanvasRenderingContext2D} ctx Context to render on
20506
- * @return {Number} Maximum width of Text object
20532
+ /**
20533
+ * calculate and return the text Width measuring each line.
20534
+ * @private
20535
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20536
+ * @return {Number} Maximum width of Text object
20507
20537
  */
20508
20538
  calcTextWidth() {
20509
20539
  let maxWidth = this.getLineWidth(0);
@@ -20516,23 +20546,23 @@ class FabricText extends StyledText {
20516
20546
  return maxWidth;
20517
20547
  }
20518
20548
 
20519
- /**
20520
- * @private
20521
- * @param {String} method Method name ("fillText" or "strokeText")
20522
- * @param {CanvasRenderingContext2D} ctx Context to render on
20523
- * @param {String} line Text to render
20524
- * @param {Number} left Left position of text
20525
- * @param {Number} top Top position of text
20526
- * @param {Number} lineIndex Index of a line in a text
20549
+ /**
20550
+ * @private
20551
+ * @param {String} method Method name ("fillText" or "strokeText")
20552
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20553
+ * @param {String} line Text to render
20554
+ * @param {Number} left Left position of text
20555
+ * @param {Number} top Top position of text
20556
+ * @param {Number} lineIndex Index of a line in a text
20527
20557
  */
20528
20558
  _renderTextLine(method, ctx, line, left, top, lineIndex) {
20529
20559
  this._renderChars(method, ctx, line, left, top, lineIndex);
20530
20560
  }
20531
20561
 
20532
- /**
20533
- * Renders the text background for lines, taking care of style
20534
- * @private
20535
- * @param {CanvasRenderingContext2D} ctx Context to render on
20562
+ /**
20563
+ * Renders the text background for lines, taking care of style
20564
+ * @private
20565
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20536
20566
  */
20537
20567
  _renderTextLinesBackground(ctx) {
20538
20568
  if (!this.textBackgroundColor && !this.styleHas('textBackgroundColor')) {
@@ -20595,15 +20625,15 @@ class FabricText extends StyledText {
20595
20625
  this._removeShadow(ctx);
20596
20626
  }
20597
20627
 
20598
- /**
20599
- * measure and return the width of a single character.
20600
- * possibly overridden to accommodate different measure logic or
20601
- * to hook some external lib for character measurement
20602
- * @private
20603
- * @param {String} _char, char to be measured
20604
- * @param {Object} charStyle style of char to be measured
20605
- * @param {String} [previousChar] previous char
20606
- * @param {Object} [prevCharStyle] style of previous char
20628
+ /**
20629
+ * measure and return the width of a single character.
20630
+ * possibly overridden to accommodate different measure logic or
20631
+ * to hook some external lib for character measurement
20632
+ * @private
20633
+ * @param {String} _char, char to be measured
20634
+ * @param {Object} charStyle style of char to be measured
20635
+ * @param {String} [previousChar] previous char
20636
+ * @param {Object} [prevCharStyle] style of previous char
20607
20637
  */
20608
20638
  _measureChar(_char, charStyle, previousChar, prevCharStyle) {
20609
20639
  const fontCache = cache.getFontCache(charStyle),
@@ -20648,19 +20678,19 @@ class FabricText extends StyledText {
20648
20678
  };
20649
20679
  }
20650
20680
 
20651
- /**
20652
- * Computes height of character at given position
20653
- * @param {Number} line the line index number
20654
- * @param {Number} _char the character index number
20655
- * @return {Number} fontSize of the character
20681
+ /**
20682
+ * Computes height of character at given position
20683
+ * @param {Number} line the line index number
20684
+ * @param {Number} _char the character index number
20685
+ * @return {Number} fontSize of the character
20656
20686
  */
20657
20687
  getHeightOfChar(line, _char) {
20658
20688
  return this.getValueOfPropertyAt(line, _char, 'fontSize');
20659
20689
  }
20660
20690
 
20661
- /**
20662
- * measure a text line measuring all characters.
20663
- * @param {Number} lineIndex line number
20691
+ /**
20692
+ * measure a text line measuring all characters.
20693
+ * @param {Number} lineIndex line number
20664
20694
  */
20665
20695
  measureLine(lineIndex) {
20666
20696
  const lineInfo = this._measureLine(lineIndex);
@@ -20673,11 +20703,11 @@ class FabricText extends StyledText {
20673
20703
  return lineInfo;
20674
20704
  }
20675
20705
 
20676
- /**
20677
- * measure every grapheme of a line, populating __charBounds
20678
- * @param {Number} lineIndex
20679
- * @return {Object} object.width total width of characters
20680
- * @return {Object} object.numOfSpaces length of chars that match this._reSpacesAndTabs
20706
+ /**
20707
+ * measure every grapheme of a line, populating __charBounds
20708
+ * @param {Number} lineIndex
20709
+ * @return {Object} object.width total width of characters
20710
+ * @return {Object} object.numOfSpaces length of chars that match this._reSpacesAndTabs
20681
20711
  */
20682
20712
  _measureLine(lineIndex) {
20683
20713
  let width = 0,
@@ -20740,13 +20770,13 @@ class FabricText extends StyledText {
20740
20770
  };
20741
20771
  }
20742
20772
 
20743
- /**
20744
- * Calculate the angle and the left,top position of the char that follow a path.
20745
- * It appends it to graphemeInfo to be reused later at rendering
20746
- * @private
20747
- * @param {Number} positionInPath to be measured
20748
- * @param {GraphemeBBox} graphemeInfo current grapheme box information
20749
- * @param {Object} startingPoint position of the point
20773
+ /**
20774
+ * Calculate the angle and the left,top position of the char that follow a path.
20775
+ * It appends it to graphemeInfo to be reused later at rendering
20776
+ * @private
20777
+ * @param {Number} positionInPath to be measured
20778
+ * @param {GraphemeBBox} graphemeInfo current grapheme box information
20779
+ * @param {Object} startingPoint position of the point
20750
20780
  */
20751
20781
  _setGraphemeOnPath(positionInPath, graphemeInfo) {
20752
20782
  const centerPosition = positionInPath + graphemeInfo.kernedWidth / 2,
@@ -20759,13 +20789,13 @@ class FabricText extends StyledText {
20759
20789
  graphemeInfo.angle = info.angle + (this.pathSide === RIGHT ? Math.PI : 0);
20760
20790
  }
20761
20791
 
20762
- /**
20763
- *
20764
- * @param {String} grapheme to be measured
20765
- * @param {Number} lineIndex index of the line where the char is
20766
- * @param {Number} charIndex position in the line
20767
- * @param {String} [prevGrapheme] character preceding the one to be measured
20768
- * @returns {GraphemeBBox} grapheme bbox
20792
+ /**
20793
+ *
20794
+ * @param {String} grapheme to be measured
20795
+ * @param {Number} lineIndex index of the line where the char is
20796
+ * @param {Number} charIndex position in the line
20797
+ * @param {String} [prevGrapheme] character preceding the one to be measured
20798
+ * @returns {GraphemeBBox} grapheme bbox
20769
20799
  */
20770
20800
  _getGraphemeBox(grapheme, lineIndex, charIndex, prevGrapheme, skipLeft) {
20771
20801
  const style = this.getCompleteStyleDeclaration(lineIndex, charIndex),
@@ -20793,10 +20823,10 @@ class FabricText extends StyledText {
20793
20823
  return box;
20794
20824
  }
20795
20825
 
20796
- /**
20797
- * Calculate height of line at 'lineIndex'
20798
- * @param {Number} lineIndex index of line to calculate
20799
- * @return {Number}
20826
+ /**
20827
+ * Calculate height of line at 'lineIndex'
20828
+ * @param {Number} lineIndex index of line to calculate
20829
+ * @return {Number}
20800
20830
  */
20801
20831
  getHeightOfLine(lineIndex) {
20802
20832
  if (this.__lineHeights[lineIndex]) {
@@ -20812,8 +20842,8 @@ class FabricText extends StyledText {
20812
20842
  return this.__lineHeights[lineIndex] = maxHeight * this.lineHeight * this._fontSizeMult;
20813
20843
  }
20814
20844
 
20815
- /**
20816
- * Calculate text box height
20845
+ /**
20846
+ * Calculate text box height
20817
20847
  */
20818
20848
  calcTextHeight() {
20819
20849
  let lineHeight,
@@ -20825,26 +20855,26 @@ class FabricText extends StyledText {
20825
20855
  return height;
20826
20856
  }
20827
20857
 
20828
- /**
20829
- * @private
20830
- * @return {Number} Left offset
20858
+ /**
20859
+ * @private
20860
+ * @return {Number} Left offset
20831
20861
  */
20832
20862
  _getLeftOffset() {
20833
20863
  return this.direction === 'ltr' ? -this.width / 2 : this.width / 2;
20834
20864
  }
20835
20865
 
20836
- /**
20837
- * @private
20838
- * @return {Number} Top offset
20866
+ /**
20867
+ * @private
20868
+ * @return {Number} Top offset
20839
20869
  */
20840
20870
  _getTopOffset() {
20841
20871
  return -this.height / 2;
20842
20872
  }
20843
20873
 
20844
- /**
20845
- * @private
20846
- * @param {CanvasRenderingContext2D} ctx Context to render on
20847
- * @param {String} method Method name ("fillText" or "strokeText")
20874
+ /**
20875
+ * @private
20876
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20877
+ * @param {String} method Method name ("fillText" or "strokeText")
20848
20878
  */
20849
20879
  _renderTextCommon(ctx, method) {
20850
20880
  ctx.save();
@@ -20861,9 +20891,9 @@ class FabricText extends StyledText {
20861
20891
  ctx.restore();
20862
20892
  }
20863
20893
 
20864
- /**
20865
- * @private
20866
- * @param {CanvasRenderingContext2D} ctx Context to render on
20894
+ /**
20895
+ * @private
20896
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20867
20897
  */
20868
20898
  _renderTextFill(ctx) {
20869
20899
  if (!this.fill && !this.styleHas(FILL)) {
@@ -20872,9 +20902,9 @@ class FabricText extends StyledText {
20872
20902
  this._renderTextCommon(ctx, 'fillText');
20873
20903
  }
20874
20904
 
20875
- /**
20876
- * @private
20877
- * @param {CanvasRenderingContext2D} ctx Context to render on
20905
+ /**
20906
+ * @private
20907
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20878
20908
  */
20879
20909
  _renderTextStroke(ctx) {
20880
20910
  if ((!this.stroke || this.strokeWidth === 0) && this.isEmptyStyles()) {
@@ -20891,14 +20921,14 @@ class FabricText extends StyledText {
20891
20921
  ctx.restore();
20892
20922
  }
20893
20923
 
20894
- /**
20895
- * @private
20896
- * @param {String} method fillText or strokeText.
20897
- * @param {CanvasRenderingContext2D} ctx Context to render on
20898
- * @param {Array} line Content of the line, splitted in an array by grapheme
20899
- * @param {Number} left
20900
- * @param {Number} top
20901
- * @param {Number} lineIndex
20924
+ /**
20925
+ * @private
20926
+ * @param {String} method fillText or strokeText.
20927
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20928
+ * @param {Array} line Content of the line, splitted in an array by grapheme
20929
+ * @param {Number} left
20930
+ * @param {Number} top
20931
+ * @param {Number} lineIndex
20902
20932
  */
20903
20933
  _renderChars(method, ctx, line, left, top, lineIndex) {
20904
20934
  const lineHeight = this.getHeightOfLine(lineIndex),
@@ -20921,7 +20951,15 @@ class FabricText extends StyledText {
20921
20951
  if (currentDirection !== this.direction) {
20922
20952
  ctx.canvas.setAttribute('dir', isLtr ? 'ltr' : 'rtl');
20923
20953
  ctx.direction = isLtr ? 'ltr' : 'rtl';
20924
- ctx.textAlign = isLtr ? LEFT : RIGHT;
20954
+
20955
+ // For justify alignments, we need to set the correct canvas text alignment
20956
+ // This is crucial for RTL text to render in the correct order
20957
+ if (isJustify) {
20958
+ // Justify uses LEFT alignment as a base, letting the character positioning handle justification
20959
+ ctx.textAlign = LEFT;
20960
+ } else {
20961
+ ctx.textAlign = isLtr ? LEFT : RIGHT;
20962
+ }
20925
20963
  }
20926
20964
  top -= lineHeight * this._fontSizeFraction / this.lineHeight;
20927
20965
  if (shortCut) {
@@ -20972,16 +21010,16 @@ class FabricText extends StyledText {
20972
21010
  ctx.restore();
20973
21011
  }
20974
21012
 
20975
- /**
20976
- * This function try to patch the missing gradientTransform on canvas gradients.
20977
- * transforming a context to transform the gradient, is going to transform the stroke too.
20978
- * we want to transform the gradient but not the stroke operation, so we create
20979
- * a transformed gradient on a pattern and then we use the pattern instead of the gradient.
20980
- * this method has drawbacks: is slow, is in low resolution, needs a patch for when the size
20981
- * is limited.
20982
- * @private
20983
- * @param {TFiller} filler a fabric gradient instance
20984
- * @return {CanvasPattern} a pattern to use as fill/stroke style
21013
+ /**
21014
+ * This function try to patch the missing gradientTransform on canvas gradients.
21015
+ * transforming a context to transform the gradient, is going to transform the stroke too.
21016
+ * we want to transform the gradient but not the stroke operation, so we create
21017
+ * a transformed gradient on a pattern and then we use the pattern instead of the gradient.
21018
+ * this method has drawbacks: is slow, is in low resolution, needs a patch for when the size
21019
+ * is limited.
21020
+ * @private
21021
+ * @param {TFiller} filler a fabric gradient instance
21022
+ * @return {CanvasPattern} a pattern to use as fill/stroke style
20985
21023
  */
20986
21024
  _applyPatternGradientTransformText(filler) {
20987
21025
  // TODO: verify compatibility with strokeUniform
@@ -21037,12 +21075,12 @@ class FabricText extends StyledText {
21037
21075
  };
21038
21076
  }
21039
21077
 
21040
- /**
21041
- * This function prepare the canvas for a stroke style, and stroke and strokeWidth
21042
- * need to be sent in as defined
21043
- * @param {CanvasRenderingContext2D} ctx
21044
- * @param {CompleteTextStyleDeclaration} style with stroke and strokeWidth defined
21045
- * @returns
21078
+ /**
21079
+ * This function prepare the canvas for a stroke style, and stroke and strokeWidth
21080
+ * need to be sent in as defined
21081
+ * @param {CanvasRenderingContext2D} ctx
21082
+ * @param {CompleteTextStyleDeclaration} style with stroke and strokeWidth defined
21083
+ * @returns
21046
21084
  */
21047
21085
  _setStrokeStyles(ctx, _ref) {
21048
21086
  let {
@@ -21057,12 +21095,12 @@ class FabricText extends StyledText {
21057
21095
  return this.handleFiller(ctx, 'strokeStyle', stroke);
21058
21096
  }
21059
21097
 
21060
- /**
21061
- * This function prepare the canvas for a ill style, and fill
21062
- * need to be sent in as defined
21063
- * @param {CanvasRenderingContext2D} ctx
21064
- * @param {CompleteTextStyleDeclaration} style with ill defined
21065
- * @returns
21098
+ /**
21099
+ * This function prepare the canvas for a ill style, and fill
21100
+ * need to be sent in as defined
21101
+ * @param {CanvasRenderingContext2D} ctx
21102
+ * @param {CompleteTextStyleDeclaration} style with ill defined
21103
+ * @returns
21066
21104
  */
21067
21105
  _setFillStyles(ctx, _ref2) {
21068
21106
  let {
@@ -21071,16 +21109,16 @@ class FabricText extends StyledText {
21071
21109
  return this.handleFiller(ctx, 'fillStyle', fill);
21072
21110
  }
21073
21111
 
21074
- /**
21075
- * @private
21076
- * @param {String} method
21077
- * @param {CanvasRenderingContext2D} ctx Context to render on
21078
- * @param {Number} lineIndex
21079
- * @param {Number} charIndex
21080
- * @param {String} _char
21081
- * @param {Number} left Left coordinate
21082
- * @param {Number} top Top coordinate
21083
- * @param {Number} lineHeight Height of the line
21112
+ /**
21113
+ * @private
21114
+ * @param {String} method
21115
+ * @param {CanvasRenderingContext2D} ctx Context to render on
21116
+ * @param {Number} lineIndex
21117
+ * @param {Number} charIndex
21118
+ * @param {String} _char
21119
+ * @param {Number} left Left coordinate
21120
+ * @param {Number} top Top coordinate
21121
+ * @param {Number} lineHeight Height of the line
21084
21122
  */
21085
21123
  _renderChar(method, ctx, lineIndex, charIndex, _char, left, top) {
21086
21124
  const decl = this._getStyleDeclaration(lineIndex, charIndex),
@@ -21109,30 +21147,30 @@ class FabricText extends StyledText {
21109
21147
  ctx.restore();
21110
21148
  }
21111
21149
 
21112
- /**
21113
- * Turns the character into a 'superior figure' (i.e. 'superscript')
21114
- * @param {Number} start selection start
21115
- * @param {Number} end selection end
21150
+ /**
21151
+ * Turns the character into a 'superior figure' (i.e. 'superscript')
21152
+ * @param {Number} start selection start
21153
+ * @param {Number} end selection end
21116
21154
  */
21117
21155
  setSuperscript(start, end) {
21118
21156
  this._setScript(start, end, this.superscript);
21119
21157
  }
21120
21158
 
21121
- /**
21122
- * Turns the character into an 'inferior figure' (i.e. 'subscript')
21123
- * @param {Number} start selection start
21124
- * @param {Number} end selection end
21159
+ /**
21160
+ * Turns the character into an 'inferior figure' (i.e. 'subscript')
21161
+ * @param {Number} start selection start
21162
+ * @param {Number} end selection end
21125
21163
  */
21126
21164
  setSubscript(start, end) {
21127
21165
  this._setScript(start, end, this.subscript);
21128
21166
  }
21129
21167
 
21130
- /**
21131
- * Applies 'schema' at given position
21132
- * @private
21133
- * @param {Number} start selection start
21134
- * @param {Number} end selection end
21135
- * @param {Number} schema
21168
+ /**
21169
+ * Applies 'schema' at given position
21170
+ * @private
21171
+ * @param {Number} start selection start
21172
+ * @param {Number} end selection end
21173
+ * @param {Number} schema
21136
21174
  */
21137
21175
  _setScript(start, end, schema) {
21138
21176
  const loc = this.get2DCursorLocation(start, true),
@@ -21145,10 +21183,10 @@ class FabricText extends StyledText {
21145
21183
  this.setSelectionStyles(style, start, end);
21146
21184
  }
21147
21185
 
21148
- /**
21149
- * @private
21150
- * @param {Number} lineIndex index text line
21151
- * @return {Number} Line left offset
21186
+ /**
21187
+ * @private
21188
+ * @param {Number} lineIndex index text line
21189
+ * @return {Number} Line left offset
21152
21190
  */
21153
21191
  _getLineLeftOffset(lineIndex) {
21154
21192
  const lineWidth = this.getLineWidth(lineIndex),
@@ -21157,9 +21195,21 @@ class FabricText extends StyledText {
21157
21195
  direction = this.direction,
21158
21196
  isEndOfWrapping = this.isEndOfWrapping(lineIndex);
21159
21197
  let leftOffset = 0;
21160
- if (textAlign === JUSTIFY || textAlign === JUSTIFY_CENTER && !isEndOfWrapping || textAlign === JUSTIFY_RIGHT && !isEndOfWrapping || textAlign === JUSTIFY_LEFT && !isEndOfWrapping) {
21161
- return 0;
21198
+
21199
+ // Handle justify alignments (excluding last lines and wrapped line ends)
21200
+ const isJustifyLine = textAlign === JUSTIFY || textAlign === JUSTIFY_CENTER && !isEndOfWrapping || textAlign === JUSTIFY_RIGHT && !isEndOfWrapping || textAlign === JUSTIFY_LEFT && !isEndOfWrapping;
21201
+ if (isJustifyLine) {
21202
+ // Justify lines should start at the left edge for LTR and right edge for RTL
21203
+ // The space distribution is handled by enlargeSpaces()
21204
+ if (direction === 'rtl') {
21205
+ // For RTL justify, we need to account for the line being right-aligned
21206
+ return 0;
21207
+ } else {
21208
+ return 0;
21209
+ }
21162
21210
  }
21211
+
21212
+ // Handle non-justify alignments
21163
21213
  if (textAlign === CENTER) {
21164
21214
  leftOffset = lineDiff / 2;
21165
21215
  }
@@ -21172,6 +21222,8 @@ class FabricText extends StyledText {
21172
21222
  if (textAlign === JUSTIFY_RIGHT) {
21173
21223
  leftOffset = lineDiff;
21174
21224
  }
21225
+
21226
+ // Apply RTL adjustments for non-justify alignments
21175
21227
  if (direction === 'rtl') {
21176
21228
  if (textAlign === RIGHT || textAlign === JUSTIFY || textAlign === JUSTIFY_RIGHT) {
21177
21229
  leftOffset = 0;
@@ -21184,8 +21236,8 @@ class FabricText extends StyledText {
21184
21236
  return leftOffset;
21185
21237
  }
21186
21238
 
21187
- /**
21188
- * @private
21239
+ /**
21240
+ * @private
21189
21241
  */
21190
21242
  _clearCache() {
21191
21243
  this._forceClearCache = false;
@@ -21194,12 +21246,12 @@ class FabricText extends StyledText {
21194
21246
  this.__charBounds = [];
21195
21247
  }
21196
21248
 
21197
- /**
21198
- * Measure a single line given its index. Used to calculate the initial
21199
- * text bounding box. The values are calculated and stored in __lineWidths cache.
21200
- * @private
21201
- * @param {Number} lineIndex line number
21202
- * @return {Number} Line width
21249
+ /**
21250
+ * Measure a single line given its index. Used to calculate the initial
21251
+ * text bounding box. The values are calculated and stored in __lineWidths cache.
21252
+ * @private
21253
+ * @param {Number} lineIndex line number
21254
+ * @return {Number} Line width
21203
21255
  */
21204
21256
  getLineWidth(lineIndex) {
21205
21257
  if (this.__lineWidths[lineIndex] !== undefined) {
@@ -21218,12 +21270,12 @@ class FabricText extends StyledText {
21218
21270
  return 0;
21219
21271
  }
21220
21272
 
21221
- /**
21222
- * Retrieves the value of property at given character position
21223
- * @param {Number} lineIndex the line number
21224
- * @param {Number} charIndex the character number
21225
- * @param {String} property the property name
21226
- * @returns the value of 'property'
21273
+ /**
21274
+ * Retrieves the value of property at given character position
21275
+ * @param {Number} lineIndex the line number
21276
+ * @param {Number} charIndex the character number
21277
+ * @param {String} property the property name
21278
+ * @returns the value of 'property'
21227
21279
  */
21228
21280
  getValueOfPropertyAt(lineIndex, charIndex, property) {
21229
21281
  var _charStyle$property;
@@ -21231,9 +21283,9 @@ class FabricText extends StyledText {
21231
21283
  return (_charStyle$property = charStyle[property]) !== null && _charStyle$property !== void 0 ? _charStyle$property : this[property];
21232
21284
  }
21233
21285
 
21234
- /**
21235
- * @private
21236
- * @param {CanvasRenderingContext2D} ctx Context to render on
21286
+ /**
21287
+ * @private
21288
+ * @param {CanvasRenderingContext2D} ctx Context to render on
21237
21289
  */
21238
21290
  _renderTextDecoration(ctx, type) {
21239
21291
  if (!this[type] && !this.styleHas(type)) {
@@ -21317,10 +21369,10 @@ class FabricText extends StyledText {
21317
21369
  this._removeShadow(ctx);
21318
21370
  }
21319
21371
 
21320
- /**
21321
- * return font declaration string for canvas context
21322
- * @param {Object} [styleObject] object
21323
- * @returns {String} font declaration formatted for canvas context.
21372
+ /**
21373
+ * return font declaration string for canvas context
21374
+ * @param {Object} [styleObject] object
21375
+ * @returns {String} font declaration formatted for canvas context.
21324
21376
  */
21325
21377
  _getFontDeclaration() {
21326
21378
  let {
@@ -21334,9 +21386,9 @@ class FabricText extends StyledText {
21334
21386
  return [fontStyle, fontWeight, `${forMeasuring ? this.CACHE_FONT_SIZE : fontSize}px`, parsedFontFamily].join(' ');
21335
21387
  }
21336
21388
 
21337
- /**
21338
- * Renders text instance on a specified context
21339
- * @param {CanvasRenderingContext2D} ctx Context to render on
21389
+ /**
21390
+ * Renders text instance on a specified context
21391
+ * @param {CanvasRenderingContext2D} ctx Context to render on
21340
21392
  */
21341
21393
  render(ctx) {
21342
21394
  if (!this.visible) {
@@ -21351,22 +21403,22 @@ class FabricText extends StyledText {
21351
21403
  super.render(ctx);
21352
21404
  }
21353
21405
 
21354
- /**
21355
- * Override this method to customize grapheme splitting
21356
- * @todo the util `graphemeSplit` needs to be injectable in some way.
21357
- * is more comfortable to inject the correct util rather than having to override text
21358
- * in the middle of the prototype chain
21359
- * @param {string} value
21360
- * @returns {string[]} array of graphemes
21406
+ /**
21407
+ * Override this method to customize grapheme splitting
21408
+ * @todo the util `graphemeSplit` needs to be injectable in some way.
21409
+ * is more comfortable to inject the correct util rather than having to override text
21410
+ * in the middle of the prototype chain
21411
+ * @param {string} value
21412
+ * @returns {string[]} array of graphemes
21361
21413
  */
21362
21414
  graphemeSplit(value) {
21363
21415
  return graphemeSplit(value);
21364
21416
  }
21365
21417
 
21366
- /**
21367
- * Returns the text as an array of lines.
21368
- * @param {String} text text to split
21369
- * @returns Lines in the text
21418
+ /**
21419
+ * Returns the text as an array of lines.
21420
+ * @param {String} text text to split
21421
+ * @returns Lines in the text
21370
21422
  */
21371
21423
  _splitTextIntoLines(text) {
21372
21424
  const lines = text.split(this._reNewline),
@@ -21386,10 +21438,10 @@ class FabricText extends StyledText {
21386
21438
  };
21387
21439
  }
21388
21440
 
21389
- /**
21390
- * Returns object representation of an instance
21391
- * @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
21392
- * @return {Object} Object representation of an instance
21441
+ /**
21442
+ * Returns object representation of an instance
21443
+ * @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
21444
+ * @return {Object} Object representation of an instance
21393
21445
  */
21394
21446
  toObject() {
21395
21447
  let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -21432,23 +21484,23 @@ class FabricText extends StyledText {
21432
21484
  return this;
21433
21485
  }
21434
21486
 
21435
- /**
21436
- * Returns complexity of an instance
21437
- * @return {Number} complexity
21487
+ /**
21488
+ * Returns complexity of an instance
21489
+ * @return {Number} complexity
21438
21490
  */
21439
21491
  complexity() {
21440
21492
  return 1;
21441
21493
  }
21442
21494
 
21443
- /**
21444
- * List of generic font families
21445
- * @see https://developer.mozilla.org/en-US/docs/Web/CSS/font-family#generic-name
21495
+ /**
21496
+ * List of generic font families
21497
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/font-family#generic-name
21446
21498
  */
21447
21499
 
21448
- /**
21449
- * Returns FabricText instance from an SVG element (<b>not yet implemented</b>)
21450
- * @param {HTMLElement} element Element to parse
21451
- * @param {Object} [options] Options object
21500
+ /**
21501
+ * Returns FabricText instance from an SVG element (<b>not yet implemented</b>)
21502
+ * @param {HTMLElement} element Element to parse
21503
+ * @param {Object} [options] Options object
21452
21504
  */
21453
21505
  static async fromElement(element, options, cssRules) {
21454
21506
  const parsedAttributes = parseAttributes(element, FabricText.ATTRIBUTE_NAMES, cssRules);
@@ -21487,10 +21539,10 @@ class FabricText extends StyledText {
21487
21539
  scaledDiff = lineHeightDiff * textHeightScaleFactor,
21488
21540
  textHeight = text.getScaledHeight() + scaledDiff;
21489
21541
  let offX = 0;
21490
- /*
21491
- Adjust positioning:
21492
- x/y attributes in SVG correspond to the bottom-left corner of text bounding box
21493
- fabric output by default at top, left.
21542
+ /*
21543
+ Adjust positioning:
21544
+ x/y attributes in SVG correspond to the bottom-left corner of text bounding box
21545
+ fabric output by default at top, left.
21494
21546
  */
21495
21547
  if (textAnchor === CENTER) {
21496
21548
  offX = text.getScaledWidth() / 2;
@@ -21508,10 +21560,10 @@ class FabricText extends StyledText {
21508
21560
 
21509
21561
  /* _FROM_SVG_END_ */
21510
21562
 
21511
- /**
21512
- * Returns FabricText instance from an object representation
21513
- * @param {Object} object plain js Object to create an instance from
21514
- * @returns {Promise<FabricText>}
21563
+ /**
21564
+ * Returns FabricText instance from an object representation
21565
+ * @param {Object} object plain js Object to create an instance from
21566
+ * @returns {Promise<FabricText>}
21515
21567
  */
21516
21568
  static fromObject(object) {
21517
21569
  return this._fromObject({
@@ -21522,10 +21574,10 @@ class FabricText extends StyledText {
21522
21574
  });
21523
21575
  }
21524
21576
  }
21525
- /**
21526
- * Properties that requires a text layout recalculation when changed
21527
- * @type string[]
21528
- * @protected
21577
+ /**
21578
+ * Properties that requires a text layout recalculation when changed
21579
+ * @type string[]
21580
+ * @protected
21529
21581
  */
21530
21582
  _defineProperty(FabricText, "textLayoutProperties", textLayoutProperties);
21531
21583
  _defineProperty(FabricText, "cacheProperties", [...cacheProperties, ...additionalProps]);
@@ -21533,9 +21585,9 @@ _defineProperty(FabricText, "ownDefaults", textDefaultValues);
21533
21585
  _defineProperty(FabricText, "type", 'Text');
21534
21586
  _defineProperty(FabricText, "genericFonts", ['serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui', 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong']);
21535
21587
  /* _FROM_SVG_START_ */
21536
- /**
21537
- * List of attribute names to account for when parsing SVG element (used by {@link FabricText.fromElement})
21538
- * @see: http://www.w3.org/TR/SVG/text.html#TextElement
21588
+ /**
21589
+ * List of attribute names to account for when parsing SVG element (used by {@link FabricText.fromElement})
21590
+ * @see: http://www.w3.org/TR/SVG/text.html#TextElement
21539
21591
  */
21540
21592
  _defineProperty(FabricText, "ATTRIBUTE_NAMES", SHARED_ATTRIBUTES.concat('x', 'y', 'dx', 'dy', 'font-family', 'font-style', 'font-weight', 'font-size', 'letter-spacing', 'text-decoration', 'text-anchor'));
21541
21593
  applyMixins(FabricText, [TextSVGExportMixin]);
@@ -21922,8 +21974,8 @@ class OverlayEditor {
21922
21974
  // We don't need to save/restore them here as it would conflict with IText's restoration
21923
21975
  }
21924
21976
 
21925
- /**
21926
- * Get the container element for the overlay (parent of upperCanvasEl)
21977
+ /**
21978
+ * Get the container element for the overlay (parent of upperCanvasEl)
21927
21979
  */
21928
21980
  getCanvasContainer() {
21929
21981
  const upperCanvas = this.canvas.upperCanvasEl;
@@ -21937,8 +21989,8 @@ class OverlayEditor {
21937
21989
  return container;
21938
21990
  }
21939
21991
 
21940
- /**
21941
- * Create the overlay DOM structure
21992
+ /**
21993
+ * Create the overlay DOM structure
21942
21994
  */
21943
21995
  createOverlayDOM() {
21944
21996
  // Host div for positioning and overflow control
@@ -21993,8 +22045,8 @@ class OverlayEditor {
21993
22045
  document.body.appendChild(this.hostDiv);
21994
22046
  }
21995
22047
 
21996
- /**
21997
- * Attach all event listeners
22048
+ /**
22049
+ * Attach all event listeners
21998
22050
  */
21999
22051
  attachEventListeners() {
22000
22052
  // Textarea events
@@ -22014,8 +22066,8 @@ class OverlayEditor {
22014
22066
  this.setupViewportChangeDetection();
22015
22067
  }
22016
22068
 
22017
- /**
22018
- * Remove all event listeners
22069
+ /**
22070
+ * Remove all event listeners
22019
22071
  */
22020
22072
  removeEventListeners() {
22021
22073
  this.textarea.removeEventListener('input', this.boundHandlers.onInput);
@@ -22032,16 +22084,16 @@ class OverlayEditor {
22032
22084
  this.restoreViewportChangeDetection();
22033
22085
  }
22034
22086
 
22035
- /**
22036
- * Simple method to refresh positioning when canvas changes
22087
+ /**
22088
+ * Simple method to refresh positioning when canvas changes
22037
22089
  */
22038
22090
  updatePosition() {
22039
22091
  this.applyOverlayStyle();
22040
22092
  }
22041
22093
 
22042
- /**
22043
- * Update the Fabric object bounds to match current textarea size
22044
- * This ensures Fabric.js selection controls follow the growing textbox
22094
+ /**
22095
+ * Update the Fabric object bounds to match current textarea size
22096
+ * This ensures Fabric.js selection controls follow the growing textbox
22045
22097
  */
22046
22098
  updateObjectBounds() {
22047
22099
  if (this.isDestroyed) return;
@@ -22075,15 +22127,15 @@ class OverlayEditor {
22075
22127
  }
22076
22128
  }
22077
22129
 
22078
- /**
22079
- * Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
22130
+ /**
22131
+ * Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
22080
22132
  */
22081
22133
  letterSpacingPx(charSpacing, fontSize) {
22082
22134
  return charSpacing / 1000 * fontSize;
22083
22135
  }
22084
22136
 
22085
- /**
22086
- * Detect text direction using first strong directional character
22137
+ /**
22138
+ * Detect text direction using first strong directional character
22087
22139
  */
22088
22140
  firstStrongDir(text) {
22089
22141
  // Hebrew: \u0590-\u05FF, Arabic: \u0600-\u06FF, \u0750-\u077F, \uFB50-\uFDFF, \uFE70-\uFEFF
@@ -22167,13 +22219,86 @@ class OverlayEditor {
22167
22219
  this.textarea.style.fontFamily = target.fontFamily || 'Arial';
22168
22220
  this.textarea.style.fontWeight = String(target.fontWeight || 'normal');
22169
22221
  this.textarea.style.fontStyle = target.fontStyle || 'normal';
22170
- this.textarea.style.textAlign = target.textAlign || 'left';
22222
+ // Handle text alignment and justification
22223
+ const textAlign = target.textAlign || 'left';
22224
+ let cssTextAlign = textAlign;
22225
+
22226
+ // Detect text direction from content for proper justify handling
22227
+ const autoDetectedDirection = this.firstStrongDir(this.textarea.value || '');
22228
+
22229
+ // DEBUG: Log alignment details
22230
+ console.log('🔍 ALIGNMENT DEBUG:');
22231
+ console.log(' Fabric textAlign:', textAlign);
22232
+ console.log(' Fabric direction:', target.direction);
22233
+ console.log(' Text content:', JSON.stringify(target.text));
22234
+ console.log(' Detected direction:', autoDetectedDirection);
22235
+
22236
+ // Map fabric.js justify to CSS
22237
+ if (textAlign.includes('justify')) {
22238
+ // Try to match fabric.js justify behavior more precisely
22239
+ try {
22240
+ // For justify, we need to replicate fabric.js space expansion
22241
+ // Use CSS justify but with specific settings to match fabric.js better
22242
+ cssTextAlign = 'justify';
22243
+
22244
+ // Set text-align-last based on justify type and detected direction
22245
+ // Smart justify: respect detected direction even when fabric alignment doesn't match
22246
+ if (textAlign === 'justify') {
22247
+ this.textarea.style.textAlignLast = autoDetectedDirection === 'rtl' ? 'right' : 'left';
22248
+ } else if (textAlign === 'justify-left') {
22249
+ // If text is RTL but fabric says justify-left, override to justify-right for better UX
22250
+ if (autoDetectedDirection === 'rtl') {
22251
+ this.textarea.style.textAlignLast = 'right';
22252
+ console.log(' → Overrode justify-left to justify-right for RTL text');
22253
+ } else {
22254
+ this.textarea.style.textAlignLast = 'left';
22255
+ }
22256
+ } else if (textAlign === 'justify-right') {
22257
+ // If text is LTR but fabric says justify-right, override to justify-left for better UX
22258
+ if (autoDetectedDirection === 'ltr') {
22259
+ this.textarea.style.textAlignLast = 'left';
22260
+ console.log(' → Overrode justify-right to justify-left for LTR text');
22261
+ } else {
22262
+ this.textarea.style.textAlignLast = 'right';
22263
+ }
22264
+ } else if (textAlign === 'justify-center') {
22265
+ this.textarea.style.textAlignLast = 'center';
22266
+ }
22267
+
22268
+ // Enhanced justify settings for better fabric.js matching
22269
+ this.textarea.style.textJustify = 'inter-word';
22270
+ this.textarea.style.wordSpacing = 'normal';
22271
+
22272
+ // Additional CSS properties for better justify matching
22273
+ this.textarea.style.textAlign = 'justify';
22274
+ this.textarea.style.textAlignLast = this.textarea.style.textAlignLast;
22275
+
22276
+ // Try to force better justify behavior
22277
+ this.textarea.style.textJustifyTrim = 'none';
22278
+ this.textarea.style.textAutospace = 'none';
22279
+ console.log(' → Applied justify alignment:', textAlign, 'with last-line:', this.textarea.style.textAlignLast);
22280
+ } catch (error) {
22281
+ console.warn(' → Justify setup failed, falling back to standard alignment:', error);
22282
+ cssTextAlign = textAlign.replace('justify-', '').replace('justify', 'left');
22283
+ }
22284
+ } else {
22285
+ this.textarea.style.textAlignLast = 'auto';
22286
+ this.textarea.style.textJustify = 'auto';
22287
+ this.textarea.style.wordSpacing = 'normal';
22288
+ console.log(' → Applied standard alignment:', cssTextAlign);
22289
+ }
22290
+ this.textarea.style.textAlign = cssTextAlign;
22171
22291
  this.textarea.style.color = ((_target$fill = target.fill) === null || _target$fill === void 0 ? void 0 : _target$fill.toString()) || '#000';
22172
22292
  this.textarea.style.letterSpacing = `${letterSpacingPx}px`;
22173
- this.textarea.style.direction = target.direction || this.firstStrongDir(this.textarea.value || '');
22293
+
22294
+ // Use the already detected direction from above
22295
+ const fabricDirection = target.direction;
22296
+
22297
+ // Use auto-detected direction for better BiDi support, but respect fabric direction if it makes sense
22298
+ this.textarea.style.direction = autoDetectedDirection || fabricDirection || 'ltr';
22174
22299
  this.textarea.style.fontVariant = 'normal';
22175
22300
  this.textarea.style.fontStretch = 'normal';
22176
- this.textarea.style.textRendering = 'optimizeLegibility';
22301
+ this.textarea.style.textRendering = 'auto'; // Changed from 'optimizeLegibility' to match canvas
22177
22302
  this.textarea.style.fontKerning = 'normal';
22178
22303
  this.textarea.style.fontFeatureSettings = 'normal';
22179
22304
  this.textarea.style.fontVariationSettings = 'normal';
@@ -22184,20 +22309,64 @@ class OverlayEditor {
22184
22309
  this.textarea.style.overflowWrap = 'break-word';
22185
22310
  this.textarea.style.whiteSpace = 'pre-wrap';
22186
22311
  this.textarea.style.hyphens = 'none';
22187
- this.textarea.style.webkitFontSmoothing = 'antialiased';
22188
- this.textarea.style.mozOsxFontSmoothing = 'grayscale';
22189
22312
 
22190
- // Debug: Compare textarea and canvas object bounding boxes
22191
- this.debugBoundingBoxComparison();
22313
+ // DEBUG: Log final CSS properties
22314
+ console.log('🎨 FINAL TEXTAREA CSS:');
22315
+ console.log(' textAlign:', this.textarea.style.textAlign);
22316
+ console.log(' textAlignLast:', this.textarea.style.textAlignLast);
22317
+ console.log(' direction:', this.textarea.style.direction);
22318
+ console.log(' unicodeBidi:', this.textarea.style.unicodeBidi);
22319
+ console.log(' width:', this.textarea.style.width);
22320
+ console.log(' textJustify:', this.textarea.style.textJustify);
22321
+ console.log(' wordSpacing:', this.textarea.style.wordSpacing);
22322
+ console.log(' whiteSpace:', this.textarea.style.whiteSpace);
22323
+
22324
+ // If justify, log Fabric object dimensions for comparison
22325
+ if (textAlign.includes('justify')) {
22326
+ var _calcTextWidth, _ref;
22327
+ console.log('🔧 FABRIC OBJECT JUSTIFY INFO:');
22328
+ console.log(' Fabric width:', target.width);
22329
+ console.log(' Fabric calcTextWidth:', (_calcTextWidth = (_ref = target).calcTextWidth) === null || _calcTextWidth === void 0 ? void 0 : _calcTextWidth.call(_ref));
22330
+ console.log(' Fabric textAlign:', target.textAlign);
22331
+ console.log(' Text lines:', target.textLines);
22332
+ }
22333
+
22334
+ // Debug font properties matching
22335
+ console.log('🔤 FONT PROPERTIES COMPARISON:');
22336
+ console.log(' Fabric fontFamily:', target.fontFamily);
22337
+ console.log(' Fabric fontWeight:', target.fontWeight);
22338
+ console.log(' Fabric fontStyle:', target.fontStyle);
22339
+ console.log(' Fabric fontSize:', target.fontSize);
22340
+ console.log(' → Textarea fontFamily:', this.textarea.style.fontFamily);
22341
+ console.log(' → Textarea fontWeight:', this.textarea.style.fontWeight);
22342
+ console.log(' → Textarea fontStyle:', this.textarea.style.fontStyle);
22343
+ console.log(' → Textarea fontSize:', this.textarea.style.fontSize);
22344
+ console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
22192
22345
 
22193
- // Debug: Compare text wrapping behavior
22194
- this.debugTextWrapping();
22346
+ // Enhanced font rendering to better match fabric.js canvas rendering
22347
+ // Default to auto for more natural rendering
22348
+ this.textarea.style.webkitFontSmoothing = 'auto';
22349
+ this.textarea.style.mozOsxFontSmoothing = 'auto';
22350
+ this.textarea.style.fontSmooth = 'auto';
22351
+ this.textarea.style.textSizeAdjust = 'none';
22352
+
22353
+ // For bold fonts, use subpixel rendering to match canvas thickness better
22354
+ const fontWeight = String(target.fontWeight || 'normal');
22355
+ const isBold = fontWeight === 'bold' || fontWeight === '700' || parseInt(fontWeight) >= 600;
22356
+ if (isBold) {
22357
+ this.textarea.style.webkitFontSmoothing = 'subpixel-antialiased';
22358
+ this.textarea.style.mozOsxFontSmoothing = 'unset';
22359
+ console.log('🔤 Applied enhanced bold rendering for better thickness matching');
22360
+ }
22361
+ console.log('🎨 FONT SMOOTHING APPLIED:');
22362
+ console.log(' webkitFontSmoothing:', this.textarea.style.webkitFontSmoothing);
22363
+ console.log(' mozOsxFontSmoothing:', this.textarea.style.mozOsxFontSmoothing);
22195
22364
 
22196
22365
  // Initial bounds are set correctly by Fabric.js - don't force update here
22197
22366
  }
22198
22367
 
22199
- /**
22200
- * Debug method to compare textarea and canvas object bounding boxes
22368
+ /**
22369
+ * Debug method to compare textarea and canvas object bounding boxes
22201
22370
  */
22202
22371
  debugBoundingBoxComparison() {
22203
22372
  const target = this.target;
@@ -22267,8 +22436,8 @@ class OverlayEditor {
22267
22436
  console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
22268
22437
  }
22269
22438
 
22270
- /**
22271
- * Debug method to compare text wrapping between textarea and Fabric text object
22439
+ /**
22440
+ * Debug method to compare text wrapping between textarea and Fabric text object
22272
22441
  */
22273
22442
  debugTextWrapping() {
22274
22443
  const target = this.target;
@@ -22353,8 +22522,8 @@ class OverlayEditor {
22353
22522
  console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
22354
22523
  }
22355
22524
 
22356
- /**
22357
- * Focus the textarea and position cursor at end
22525
+ /**
22526
+ * Focus the textarea and position cursor at end
22358
22527
  */
22359
22528
  focusTextarea() {
22360
22529
  // For overlay editing, we want to keep the object in "selection mode" not "editing mode"
@@ -22389,8 +22558,8 @@ class OverlayEditor {
22389
22558
  this.canvas.requestRenderAll();
22390
22559
  }
22391
22560
 
22392
- /**
22393
- * Refresh overlay positioning and styling
22561
+ /**
22562
+ * Refresh overlay positioning and styling
22394
22563
  */
22395
22564
  refresh() {
22396
22565
  if (this.isDestroyed) return;
@@ -22398,8 +22567,8 @@ class OverlayEditor {
22398
22567
  // Don't update object bounds on every refresh - only when textarea actually resizes
22399
22568
  }
22400
22569
 
22401
- /**
22402
- * Destroy the overlay editor
22570
+ /**
22571
+ * Destroy the overlay editor
22403
22572
  */
22404
22573
  destroy() {
22405
22574
  let commit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
@@ -22426,6 +22595,23 @@ class OverlayEditor {
22426
22595
  // Handle commit/cancel after restoring visibility
22427
22596
  if (commit && !this.isComposing) {
22428
22597
  const finalText = this.textarea.value;
22598
+
22599
+ // Auto-detect text direction and update fabric object if needed
22600
+ const detectedDirection = this.firstStrongDir(finalText);
22601
+ const currentDirection = this.target.direction || 'ltr';
22602
+ if (detectedDirection && detectedDirection !== currentDirection) {
22603
+ console.log(`🔄 Overlay Exit: Auto-detected direction change from "${currentDirection}" to "${detectedDirection}"`);
22604
+ console.log(` Text content: "${finalText.substring(0, 50)}..."`);
22605
+
22606
+ // Update the fabric object's direction
22607
+ this.target.set('direction', detectedDirection);
22608
+
22609
+ // Force a re-render to apply the direction change
22610
+ this.canvas.requestRenderAll();
22611
+ console.log(`✅ Fabric object direction updated to: ${detectedDirection}`);
22612
+ } else {
22613
+ console.log(`📝 Overlay Exit: Direction unchanged (${currentDirection}), text: "${finalText.substring(0, 30)}..."`);
22614
+ }
22429
22615
  if (this.onCommit) {
22430
22616
  this.onCommit(finalText);
22431
22617
  }
@@ -22550,8 +22736,8 @@ class OverlayEditor {
22550
22736
  }
22551
22737
  }
22552
22738
 
22553
- /**
22554
- * Setup detection for viewport changes (zoom/pan)
22739
+ /**
22740
+ * Setup detection for viewport changes (zoom/pan)
22555
22741
  */
22556
22742
  setupViewportChangeDetection() {
22557
22743
  // Store original methods
@@ -22580,8 +22766,8 @@ class OverlayEditor {
22580
22766
  };
22581
22767
  }
22582
22768
 
22583
- /**
22584
- * Restore original viewport methods
22769
+ /**
22770
+ * Restore original viewport methods
22585
22771
  */
22586
22772
  restoreViewportChangeDetection() {
22587
22773
  if (this.canvas.__originalSetZoom) {
@@ -22596,8 +22782,8 @@ class OverlayEditor {
22596
22782
  }
22597
22783
  }
22598
22784
 
22599
- /**
22600
- * Enter overlay text editing mode for a text object
22785
+ /**
22786
+ * Enter overlay text editing mode for a text object
22601
22787
  */
22602
22788
  function enterTextOverlayEdit(canvas, target, options) {
22603
22789
  // If already in overlay editing, destroy existing editor first
@@ -22621,35 +22807,35 @@ function enterTextOverlayEdit(canvas, target, options) {
22621
22807
  return editor;
22622
22808
  }
22623
22809
 
22624
- /**
22625
- * extend this regex to support non english languages
22626
- *
22627
- * - ` ` Matches a SPACE character (char code 32).
22628
- * - `\n` Matches a LINE FEED character (char code 10).
22629
- * - `.` Matches a "." character (char code 46).
22630
- * - `,` Matches a "," character (char code 44).
22631
- * - `;` Matches a ";" character (char code 59).
22632
- * - `!` Matches a "!" character (char code 33).
22633
- * - `\?` Matches a "?" character (char code 63).
22634
- * - `\-` Matches a "-" character (char code 45).
22810
+ /**
22811
+ * extend this regex to support non english languages
22812
+ *
22813
+ * - ` ` Matches a SPACE character (char code 32).
22814
+ * - `\n` Matches a LINE FEED character (char code 10).
22815
+ * - `.` Matches a "." character (char code 46).
22816
+ * - `,` Matches a "," character (char code 44).
22817
+ * - `;` Matches a ";" character (char code 59).
22818
+ * - `!` Matches a "!" character (char code 33).
22819
+ * - `\?` Matches a "?" character (char code 63).
22820
+ * - `\-` Matches a "-" character (char code 45).
22635
22821
  */
22636
22822
  // eslint-disable-next-line no-useless-escape
22637
22823
  const reNonWord = /[ \n\.,;!\?\-]/;
22638
22824
  class ITextBehavior extends FabricText {
22639
22825
  constructor() {
22640
22826
  super(...arguments);
22641
- /**
22642
- * Helps determining when the text is in composition, so that the cursor
22643
- * rendering is altered.
22827
+ /**
22828
+ * Helps determining when the text is in composition, so that the cursor
22829
+ * rendering is altered.
22644
22830
  */
22645
22831
  _defineProperty(this, "_currentCursorOpacity", 1);
22646
22832
  }
22647
- /**
22648
- * Keeps track if the IText object was selected before the actual click.
22649
- * This because we want to delay enter editing by a click.
22833
+ /**
22834
+ * Keeps track if the IText object was selected before the actual click.
22835
+ * This because we want to delay enter editing by a click.
22650
22836
  */
22651
- /**
22652
- * Initializes all the interactive behavior of IText
22837
+ /**
22838
+ * Initializes all the interactive behavior of IText
22653
22839
  */
22654
22840
  initBehavior() {
22655
22841
  this._tick = this._tick.bind(this);
@@ -22662,8 +22848,8 @@ class ITextBehavior extends FabricText {
22662
22848
  return super.onDeselect(options);
22663
22849
  }
22664
22850
 
22665
- /**
22666
- * @private
22851
+ /**
22852
+ * @private
22667
22853
  */
22668
22854
  _animateCursor(_ref) {
22669
22855
  let {
@@ -22688,8 +22874,8 @@ class ITextBehavior extends FabricText {
22688
22874
  });
22689
22875
  }
22690
22876
 
22691
- /**
22692
- * changes the cursor from visible to invisible
22877
+ /**
22878
+ * changes the cursor from visible to invisible
22693
22879
  */
22694
22880
  _tick(delay) {
22695
22881
  this._currentTickState = this._animateCursor({
@@ -22700,8 +22886,8 @@ class ITextBehavior extends FabricText {
22700
22886
  });
22701
22887
  }
22702
22888
 
22703
- /**
22704
- * Changes the cursor from invisible to visible
22889
+ /**
22890
+ * Changes the cursor from invisible to visible
22705
22891
  */
22706
22892
  _onTickComplete() {
22707
22893
  var _this$_currentTickCom;
@@ -22713,16 +22899,16 @@ class ITextBehavior extends FabricText {
22713
22899
  });
22714
22900
  }
22715
22901
 
22716
- /**
22717
- * Initializes delayed cursor
22902
+ /**
22903
+ * Initializes delayed cursor
22718
22904
  */
22719
22905
  initDelayedCursor(restart) {
22720
22906
  this.abortCursorAnimation();
22721
22907
  this._tick(restart ? 0 : this.cursorDelay);
22722
22908
  }
22723
22909
 
22724
- /**
22725
- * Aborts cursor animation, clears all timeouts and clear textarea context if necessary
22910
+ /**
22911
+ * Aborts cursor animation, clears all timeouts and clear textarea context if necessary
22726
22912
  */
22727
22913
  abortCursorAnimation() {
22728
22914
  let shouldClear = false;
@@ -22740,9 +22926,9 @@ class ITextBehavior extends FabricText {
22740
22926
  }
22741
22927
  }
22742
22928
 
22743
- /**
22744
- * Restart tue cursor animation if either is in complete state ( between animations )
22745
- * or if it never started before
22929
+ /**
22930
+ * Restart tue cursor animation if either is in complete state ( between animations )
22931
+ * or if it never started before
22746
22932
  */
22747
22933
  restartCursorIfNeeded() {
22748
22934
  if ([this._currentTickState, this._currentTickCompleteState].some(cursorAnimation => !cursorAnimation || cursorAnimation.isDone())) {
@@ -22750,8 +22936,8 @@ class ITextBehavior extends FabricText {
22750
22936
  }
22751
22937
  }
22752
22938
 
22753
- /**
22754
- * Selects entire text
22939
+ /**
22940
+ * Selects entire text
22755
22941
  */
22756
22942
  selectAll() {
22757
22943
  this.selectionStart = 0;
@@ -22761,26 +22947,26 @@ class ITextBehavior extends FabricText {
22761
22947
  return this;
22762
22948
  }
22763
22949
 
22764
- /**
22765
- * Selects entire text and updates the visual state
22950
+ /**
22951
+ * Selects entire text and updates the visual state
22766
22952
  */
22767
22953
  cmdAll() {
22768
22954
  this.selectAll();
22769
22955
  this.renderCursorOrSelection();
22770
22956
  }
22771
22957
 
22772
- /**
22773
- * Returns selected text
22774
- * @return {String}
22958
+ /**
22959
+ * Returns selected text
22960
+ * @return {String}
22775
22961
  */
22776
22962
  getSelectedText() {
22777
22963
  return this._text.slice(this.selectionStart, this.selectionEnd).join('');
22778
22964
  }
22779
22965
 
22780
- /**
22781
- * Find new selection index representing start of current word according to current selection index
22782
- * @param {Number} startFrom Current selection index
22783
- * @return {Number} New selection index
22966
+ /**
22967
+ * Find new selection index representing start of current word according to current selection index
22968
+ * @param {Number} startFrom Current selection index
22969
+ * @return {Number} New selection index
22784
22970
  */
22785
22971
  findWordBoundaryLeft(startFrom) {
22786
22972
  let offset = 0,
@@ -22800,10 +22986,10 @@ class ITextBehavior extends FabricText {
22800
22986
  return startFrom - offset;
22801
22987
  }
22802
22988
 
22803
- /**
22804
- * Find new selection index representing end of current word according to current selection index
22805
- * @param {Number} startFrom Current selection index
22806
- * @return {Number} New selection index
22989
+ /**
22990
+ * Find new selection index representing end of current word according to current selection index
22991
+ * @param {Number} startFrom Current selection index
22992
+ * @return {Number} New selection index
22807
22993
  */
22808
22994
  findWordBoundaryRight(startFrom) {
22809
22995
  let offset = 0,
@@ -22823,10 +23009,10 @@ class ITextBehavior extends FabricText {
22823
23009
  return startFrom + offset;
22824
23010
  }
22825
23011
 
22826
- /**
22827
- * Find new selection index representing start of current line according to current selection index
22828
- * @param {Number} startFrom Current selection index
22829
- * @return {Number} New selection index
23012
+ /**
23013
+ * Find new selection index representing start of current line according to current selection index
23014
+ * @param {Number} startFrom Current selection index
23015
+ * @return {Number} New selection index
22830
23016
  */
22831
23017
  findLineBoundaryLeft(startFrom) {
22832
23018
  let offset = 0,
@@ -22838,10 +23024,10 @@ class ITextBehavior extends FabricText {
22838
23024
  return startFrom - offset;
22839
23025
  }
22840
23026
 
22841
- /**
22842
- * Find new selection index representing end of current line according to current selection index
22843
- * @param {Number} startFrom Current selection index
22844
- * @return {Number} New selection index
23027
+ /**
23028
+ * Find new selection index representing end of current line according to current selection index
23029
+ * @param {Number} startFrom Current selection index
23030
+ * @return {Number} New selection index
22845
23031
  */
22846
23032
  findLineBoundaryRight(startFrom) {
22847
23033
  let offset = 0,
@@ -22853,11 +23039,11 @@ class ITextBehavior extends FabricText {
22853
23039
  return startFrom + offset;
22854
23040
  }
22855
23041
 
22856
- /**
22857
- * Finds index corresponding to beginning or end of a word
22858
- * @param {Number} selectionStart Index of a character
22859
- * @param {Number} direction 1 or -1
22860
- * @return {Number} Index of the beginning or end of a word
23042
+ /**
23043
+ * Finds index corresponding to beginning or end of a word
23044
+ * @param {Number} selectionStart Index of a character
23045
+ * @param {Number} direction 1 or -1
23046
+ * @return {Number} Index of the beginning or end of a word
22861
23047
  */
22862
23048
  searchWordBoundary(selectionStart, direction) {
22863
23049
  const text = this._text;
@@ -22875,9 +23061,9 @@ class ITextBehavior extends FabricText {
22875
23061
  return index;
22876
23062
  }
22877
23063
 
22878
- /**
22879
- * Selects the word that contains the char at index selectionStart
22880
- * @param {Number} selectionStart Index of a character
23064
+ /**
23065
+ * Selects the word that contains the char at index selectionStart
23066
+ * @param {Number} selectionStart Index of a character
22881
23067
  */
22882
23068
  selectWord(selectionStart) {
22883
23069
  selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
@@ -22893,9 +23079,9 @@ class ITextBehavior extends FabricText {
22893
23079
  this.renderCursorOrSelection();
22894
23080
  }
22895
23081
 
22896
- /**
22897
- * Selects the line that contains selectionStart
22898
- * @param {Number} selectionStart Index of a character
23082
+ /**
23083
+ * Selects the line that contains selectionStart
23084
+ * @param {Number} selectionStart Index of a character
22899
23085
  */
22900
23086
  selectLine(selectionStart) {
22901
23087
  selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
@@ -22907,8 +23093,8 @@ class ITextBehavior extends FabricText {
22907
23093
  this._updateTextarea();
22908
23094
  }
22909
23095
 
22910
- /**
22911
- * Enters editing state
23096
+ /**
23097
+ * Enters editing state
22912
23098
  */
22913
23099
  enterEditing(e) {
22914
23100
  if (this.isEditing || !this.editable) {
@@ -22928,8 +23114,8 @@ class ITextBehavior extends FabricText {
22928
23114
  }
22929
23115
  }
22930
23116
 
22931
- /**
22932
- * runs the actual logic that enter from editing state, see {@link enterEditing}
23117
+ /**
23118
+ * runs the actual logic that enter from editing state, see {@link enterEditing}
22933
23119
  */
22934
23120
  enterEditingImpl() {
22935
23121
  if (this.canvas) {
@@ -22953,8 +23139,8 @@ class ITextBehavior extends FabricText {
22953
23139
  }
22954
23140
  }
22955
23141
 
22956
- /**
22957
- * Enter overlay editing mode using DOM textarea overlay
23142
+ /**
23143
+ * Enter overlay editing mode using DOM textarea overlay
22958
23144
  */
22959
23145
  enterOverlayEditing() {
22960
23146
  this._saveEditingProps();
@@ -22975,8 +23161,8 @@ class ITextBehavior extends FabricText {
22975
23161
  });
22976
23162
  }
22977
23163
 
22978
- /**
22979
- * Commit overlay editing changes
23164
+ /**
23165
+ * Commit overlay editing changes
22980
23166
  */
22981
23167
  commitOverlayEdit(text) {
22982
23168
  const overlayEditor = this.__overlayEditor;
@@ -23000,8 +23186,8 @@ class ITextBehavior extends FabricText {
23000
23186
  this.canvas && this.canvas.requestRenderAll();
23001
23187
  }
23002
23188
 
23003
- /**
23004
- * Cancel overlay editing without changes
23189
+ /**
23190
+ * Cancel overlay editing without changes
23005
23191
  */
23006
23192
  cancelOverlayEdit() {
23007
23193
  // Restore original text
@@ -23009,8 +23195,8 @@ class ITextBehavior extends FabricText {
23009
23195
  this.exitEditing();
23010
23196
  }
23011
23197
 
23012
- /**
23013
- * called by {@link Canvas#textEditingManager}
23198
+ /**
23199
+ * called by {@link Canvas#textEditingManager}
23014
23200
  */
23015
23201
  updateSelectionOnMouseMove(e) {
23016
23202
  if (this.getActiveControl()) {
@@ -23038,8 +23224,8 @@ class ITextBehavior extends FabricText {
23038
23224
  }
23039
23225
  }
23040
23226
 
23041
- /**
23042
- * @private
23227
+ /**
23228
+ * @private
23043
23229
  */
23044
23230
  _setEditingProps() {
23045
23231
  this.hoverCursor = 'text';
@@ -23051,8 +23237,8 @@ class ITextBehavior extends FabricText {
23051
23237
  this.lockMovementX = this.lockMovementY = true;
23052
23238
  }
23053
23239
 
23054
- /**
23055
- * convert from textarea to grapheme indexes
23240
+ /**
23241
+ * convert from textarea to grapheme indexes
23056
23242
  */
23057
23243
  fromStringToGraphemeSelection(start, end, text) {
23058
23244
  const smallerTextStart = text.slice(0, start),
@@ -23071,8 +23257,8 @@ class ITextBehavior extends FabricText {
23071
23257
  };
23072
23258
  }
23073
23259
 
23074
- /**
23075
- * convert from fabric to textarea values
23260
+ /**
23261
+ * convert from fabric to textarea values
23076
23262
  */
23077
23263
  fromGraphemeToStringSelection(start, end, graphemes) {
23078
23264
  const smallerTextStart = graphemes.slice(0, start),
@@ -23091,8 +23277,8 @@ class ITextBehavior extends FabricText {
23091
23277
  };
23092
23278
  }
23093
23279
 
23094
- /**
23095
- * @private
23280
+ /**
23281
+ * @private
23096
23282
  */
23097
23283
  _updateTextarea() {
23098
23284
  this.cursorOffsetCache = {};
@@ -23107,8 +23293,8 @@ class ITextBehavior extends FabricText {
23107
23293
  this.updateTextareaPosition();
23108
23294
  }
23109
23295
 
23110
- /**
23111
- * @private
23296
+ /**
23297
+ * @private
23112
23298
  */
23113
23299
  updateFromTextArea() {
23114
23300
  if (!this.hiddenTextarea) {
@@ -23128,8 +23314,8 @@ class ITextBehavior extends FabricText {
23128
23314
  this.updateTextareaPosition();
23129
23315
  }
23130
23316
 
23131
- /**
23132
- * @private
23317
+ /**
23318
+ * @private
23133
23319
  */
23134
23320
  updateTextareaPosition() {
23135
23321
  if (this.selectionStart === this.selectionEnd) {
@@ -23139,9 +23325,9 @@ class ITextBehavior extends FabricText {
23139
23325
  }
23140
23326
  }
23141
23327
 
23142
- /**
23143
- * @private
23144
- * @return {Object} style contains style for hiddenTextarea
23328
+ /**
23329
+ * @private
23330
+ * @return {Object} style contains style for hiddenTextarea
23145
23331
  */
23146
23332
  _calcTextareaPosition() {
23147
23333
  if (!this.canvas) {
@@ -23188,8 +23374,8 @@ class ITextBehavior extends FabricText {
23188
23374
  };
23189
23375
  }
23190
23376
 
23191
- /**
23192
- * @private
23377
+ /**
23378
+ * @private
23193
23379
  */
23194
23380
  _saveEditingProps() {
23195
23381
  this._savedProps = {
@@ -23206,8 +23392,8 @@ class ITextBehavior extends FabricText {
23206
23392
  };
23207
23393
  }
23208
23394
 
23209
- /**
23210
- * @private
23395
+ /**
23396
+ * @private
23211
23397
  */
23212
23398
  _restoreEditingProps() {
23213
23399
  if (!this._savedProps) {
@@ -23227,9 +23413,9 @@ class ITextBehavior extends FabricText {
23227
23413
  delete this._savedProps;
23228
23414
  }
23229
23415
 
23230
- /**
23231
- * runs the actual logic that exits from editing state, see {@link exitEditing}
23232
- * But it does not fire events
23416
+ /**
23417
+ * runs the actual logic that exits from editing state, see {@link exitEditing}
23418
+ * But it does not fire events
23233
23419
  */
23234
23420
  exitEditingImpl() {
23235
23421
  const hiddenTextarea = this.hiddenTextarea;
@@ -23250,8 +23436,8 @@ class ITextBehavior extends FabricText {
23250
23436
  }
23251
23437
  }
23252
23438
 
23253
- /**
23254
- * Exits from editing state and fires relevant events
23439
+ /**
23440
+ * Exits from editing state and fires relevant events
23255
23441
  */
23256
23442
  exitEditing() {
23257
23443
  const isTextChanged = this._textBeforeEdit !== this.text;
@@ -23270,8 +23456,8 @@ class ITextBehavior extends FabricText {
23270
23456
  return this;
23271
23457
  }
23272
23458
 
23273
- /**
23274
- * @private
23459
+ /**
23460
+ * @private
23275
23461
  */
23276
23462
  _removeExtraneousStyles() {
23277
23463
  for (const prop in this.styles) {
@@ -23281,10 +23467,10 @@ class ITextBehavior extends FabricText {
23281
23467
  }
23282
23468
  }
23283
23469
 
23284
- /**
23285
- * remove and reflow a style block from start to end.
23286
- * @param {Number} start linear start position for removal (included in removal)
23287
- * @param {Number} end linear end position for removal ( excluded from removal )
23470
+ /**
23471
+ * remove and reflow a style block from start to end.
23472
+ * @param {Number} start linear start position for removal (included in removal)
23473
+ * @param {Number} end linear end position for removal ( excluded from removal )
23288
23474
  */
23289
23475
  removeStyleFromTo(start, end) {
23290
23476
  const {
@@ -23337,10 +23523,10 @@ class ITextBehavior extends FabricText {
23337
23523
  }
23338
23524
  }
23339
23525
 
23340
- /**
23341
- * Shifts line styles up or down
23342
- * @param {Number} lineIndex Index of a line
23343
- * @param {Number} offset Can any number?
23526
+ /**
23527
+ * Shifts line styles up or down
23528
+ * @param {Number} lineIndex Index of a line
23529
+ * @param {Number} offset Can any number?
23344
23530
  */
23345
23531
  shiftLineStyles(lineIndex, offset) {
23346
23532
  const clonedStyles = Object.assign({}, this.styles);
@@ -23355,15 +23541,15 @@ class ITextBehavior extends FabricText {
23355
23541
  }
23356
23542
  }
23357
23543
 
23358
- /**
23359
- * Handle insertion of more consecutive style lines for when one or more
23360
- * newlines gets added to the text. Since current style needs to be shifted
23361
- * first we shift the current style of the number lines needed, then we add
23362
- * new lines from the last to the first.
23363
- * @param {Number} lineIndex Index of a line
23364
- * @param {Number} charIndex Index of a char
23365
- * @param {Number} qty number of lines to add
23366
- * @param {Array} copiedStyle Array of objects styles
23544
+ /**
23545
+ * Handle insertion of more consecutive style lines for when one or more
23546
+ * newlines gets added to the text. Since current style needs to be shifted
23547
+ * first we shift the current style of the number lines needed, then we add
23548
+ * new lines from the last to the first.
23549
+ * @param {Number} lineIndex Index of a line
23550
+ * @param {Number} charIndex Index of a char
23551
+ * @param {Number} qty number of lines to add
23552
+ * @param {Array} copiedStyle Array of objects styles
23367
23553
  */
23368
23554
  insertNewlineStyleObject(lineIndex, charIndex, qty, copiedStyle) {
23369
23555
  const newLineStyles = {};
@@ -23423,12 +23609,12 @@ class ITextBehavior extends FabricText {
23423
23609
  this._forceClearCache = true;
23424
23610
  }
23425
23611
 
23426
- /**
23427
- * Inserts style object for a given line/char index
23428
- * @param {Number} lineIndex Index of a line
23429
- * @param {Number} charIndex Index of a char
23430
- * @param {Number} quantity number Style object to insert, if given
23431
- * @param {Array} copiedStyle array of style objects
23612
+ /**
23613
+ * Inserts style object for a given line/char index
23614
+ * @param {Number} lineIndex Index of a line
23615
+ * @param {Number} charIndex Index of a char
23616
+ * @param {Number} quantity number Style object to insert, if given
23617
+ * @param {Array} copiedStyle array of style objects
23432
23618
  */
23433
23619
  insertCharStyleObject(lineIndex, charIndex, quantity, copiedStyle) {
23434
23620
  if (!this.styles) {
@@ -23477,11 +23663,11 @@ class ITextBehavior extends FabricText {
23477
23663
  }
23478
23664
  }
23479
23665
 
23480
- /**
23481
- * Inserts style object(s)
23482
- * @param {Array} insertedText Characters at the location where style is inserted
23483
- * @param {Number} start cursor index for inserting style
23484
- * @param {Array} [copiedStyle] array of style objects to insert.
23666
+ /**
23667
+ * Inserts style object(s)
23668
+ * @param {Array} insertedText Characters at the location where style is inserted
23669
+ * @param {Number} start cursor index for inserting style
23670
+ * @param {Array} [copiedStyle] array of style objects to insert.
23485
23671
  */
23486
23672
  insertNewStyleBlock(insertedText, start, copiedStyle) {
23487
23673
  const cursorLoc = this.get2DCursorLocation(start, true),
@@ -23522,12 +23708,12 @@ class ITextBehavior extends FabricText {
23522
23708
  }
23523
23709
  }
23524
23710
 
23525
- /**
23526
- * Removes characters from start/end
23527
- * start/end ar per grapheme position in _text array.
23528
- *
23529
- * @param {Number} start
23530
- * @param {Number} end default to start + 1
23711
+ /**
23712
+ * Removes characters from start/end
23713
+ * start/end ar per grapheme position in _text array.
23714
+ *
23715
+ * @param {Number} start
23716
+ * @param {Number} end default to start + 1
23531
23717
  */
23532
23718
  removeChars(start) {
23533
23719
  let end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : start + 1;
@@ -23540,17 +23726,17 @@ class ITextBehavior extends FabricText {
23540
23726
  this._removeExtraneousStyles();
23541
23727
  }
23542
23728
 
23543
- /**
23544
- * insert characters at start position, before start position.
23545
- * start equal 1 it means the text get inserted between actual grapheme 0 and 1
23546
- * if style array is provided, it must be as the same length of text in graphemes
23547
- * if end is provided and is bigger than start, old text is replaced.
23548
- * start/end ar per grapheme position in _text array.
23549
- *
23550
- * @param {String} text text to insert
23551
- * @param {Array} style array of style objects
23552
- * @param {Number} start
23553
- * @param {Number} end default to start + 1
23729
+ /**
23730
+ * insert characters at start position, before start position.
23731
+ * start equal 1 it means the text get inserted between actual grapheme 0 and 1
23732
+ * if style array is provided, it must be as the same length of text in graphemes
23733
+ * if end is provided and is bigger than start, old text is replaced.
23734
+ * start/end ar per grapheme position in _text array.
23735
+ *
23736
+ * @param {String} text text to insert
23737
+ * @param {Array} style array of style objects
23738
+ * @param {Number} start
23739
+ * @param {Number} end default to start + 1
23554
23740
  */
23555
23741
  insertChars(text, style, start) {
23556
23742
  let end = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : start;
@@ -23567,9 +23753,9 @@ class ITextBehavior extends FabricText {
23567
23753
  this._removeExtraneousStyles();
23568
23754
  }
23569
23755
 
23570
- /**
23571
- * Set the selectionStart and selectionEnd according to the new position of cursor
23572
- * mimic the key - mouse navigation when shift is pressed.
23756
+ /**
23757
+ * Set the selectionStart and selectionEnd according to the new position of cursor
23758
+ * mimic the key - mouse navigation when shift is pressed.
23573
23759
  */
23574
23760
  setSelectionStartEndWithShift(start, end, newSelection) {
23575
23761
  if (newSelection <= start) {
@@ -24192,8 +24378,8 @@ class ITextKeyBehavior extends ITextBehavior {
24192
24378
  }
24193
24379
  }
24194
24380
 
24195
- /**
24196
- * `LEFT_CLICK === 0`
24381
+ /**
24382
+ * `LEFT_CLICK === 0`
24197
24383
  */
24198
24384
  const notALeftClick = e => !!e.button;
24199
24385
  class ITextClickBehavior extends ITextKeyBehavior {
@@ -24211,36 +24397,36 @@ class ITextClickBehavior extends ITextKeyBehavior {
24211
24397
  super.initBehavior();
24212
24398
  }
24213
24399
 
24214
- /**
24215
- * If this method returns true a mouse move operation over a text selection
24216
- * will not prevent the native mouse event allowing the browser to start a drag operation.
24217
- * shouldStartDragging can be read 'do not prevent default for mouse move event'
24218
- * To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
24219
- * @returns
24400
+ /**
24401
+ * If this method returns true a mouse move operation over a text selection
24402
+ * will not prevent the native mouse event allowing the browser to start a drag operation.
24403
+ * shouldStartDragging can be read 'do not prevent default for mouse move event'
24404
+ * To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
24405
+ * @returns
24220
24406
  */
24221
24407
  shouldStartDragging() {
24222
24408
  return this.draggableTextDelegate.isActive();
24223
24409
  }
24224
24410
 
24225
- /**
24226
- * @public override this method to control whether instance should/shouldn't become a drag source,
24227
- * @see also {@link DraggableTextDelegate#isActive}
24228
- * To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
24229
- * @returns {boolean} should handle event
24411
+ /**
24412
+ * @public override this method to control whether instance should/shouldn't become a drag source,
24413
+ * @see also {@link DraggableTextDelegate#isActive}
24414
+ * To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
24415
+ * @returns {boolean} should handle event
24230
24416
  */
24231
24417
  onDragStart(e) {
24232
24418
  return this.draggableTextDelegate.onDragStart(e);
24233
24419
  }
24234
24420
 
24235
- /**
24236
- * @public override this method to control whether instance should/shouldn't become a drop target
24421
+ /**
24422
+ * @public override this method to control whether instance should/shouldn't become a drop target
24237
24423
  */
24238
24424
  canDrop(e) {
24239
24425
  return this.draggableTextDelegate.canDrop(e);
24240
24426
  }
24241
24427
 
24242
- /**
24243
- * Default handler for double click, select a word or enter overlay editing
24428
+ /**
24429
+ * Default handler for double click, select a word or enter overlay editing
24244
24430
  */
24245
24431
  doubleClickHandler(options) {
24246
24432
  // Check if we should enter overlay editing mode
@@ -24257,8 +24443,8 @@ class ITextClickBehavior extends ITextKeyBehavior {
24257
24443
  this.renderCursorOrSelection();
24258
24444
  }
24259
24445
 
24260
- /**
24261
- * Default handler for triple click, select a line
24446
+ /**
24447
+ * Default handler for triple click, select a line
24262
24448
  */
24263
24449
  tripleClickHandler(options) {
24264
24450
  if (!this.isEditing) {
@@ -24268,13 +24454,13 @@ class ITextClickBehavior extends ITextKeyBehavior {
24268
24454
  this.renderCursorOrSelection();
24269
24455
  }
24270
24456
 
24271
- /**
24272
- * Default event handler for the basic functionalities needed on _mouseDown
24273
- * can be overridden to do something different.
24274
- * Scope of this implementation is: find the click position, set selectionStart
24275
- * find selectionEnd, initialize the drawing of either cursor or selection area
24276
- * initializing a mousedDown on a text area will cancel fabricjs knowledge of
24277
- * current compositionMode. It will be set to false.
24457
+ /**
24458
+ * Default event handler for the basic functionalities needed on _mouseDown
24459
+ * can be overridden to do something different.
24460
+ * Scope of this implementation is: find the click position, set selectionStart
24461
+ * find selectionEnd, initialize the drawing of either cursor or selection area
24462
+ * initializing a mousedDown on a text area will cancel fabricjs knowledge of
24463
+ * current compositionMode. It will be set to false.
24278
24464
  */
24279
24465
  _mouseDownHandler(_ref) {
24280
24466
  let {
@@ -24302,9 +24488,9 @@ class ITextClickBehavior extends ITextKeyBehavior {
24302
24488
  this.selected || (this.selected = alreadySelected || this.isEditing);
24303
24489
  }
24304
24490
 
24305
- /**
24306
- * standard handler for mouse up, overridable
24307
- * @private
24491
+ /**
24492
+ * standard handler for mouse up, overridable
24493
+ * @private
24308
24494
  */
24309
24495
  mouseUpHandler(_ref2) {
24310
24496
  let {
@@ -24335,9 +24521,9 @@ class ITextClickBehavior extends ITextKeyBehavior {
24335
24521
  }
24336
24522
  }
24337
24523
 
24338
- /**
24339
- * Changes cursor location in a text depending on passed pointer (x/y) object
24340
- * @param {TPointerEvent} e Event object
24524
+ /**
24525
+ * Changes cursor location in a text depending on passed pointer (x/y) object
24526
+ * @param {TPointerEvent} e Event object
24341
24527
  */
24342
24528
  setCursorByClick(e) {
24343
24529
  const newSelection = this.getSelectionStartFromPointer(e),
@@ -24355,10 +24541,10 @@ class ITextClickBehavior extends ITextKeyBehavior {
24355
24541
  }
24356
24542
  }
24357
24543
 
24358
- /**
24359
- * Returns index of a character corresponding to where an object was clicked
24360
- * @param {TPointerEvent} e Event object
24361
- * @return {Number} Index of a character
24544
+ /**
24545
+ * Returns index of a character corresponding to where an object was clicked
24546
+ * @param {TPointerEvent} e Event object
24547
+ * @return {Number} Index of a character
24362
24548
  */
24363
24549
  getSelectionStartFromPointer(e) {
24364
24550
  const mouseOffset = this.canvas.getScenePoint(e).transform(invertTransform(this.calcTransformMatrix())).add(new Point(-this._getLeftOffset(), -this._getTopOffset()));
@@ -24404,15 +24590,15 @@ class ITextClickBehavior extends ITextKeyBehavior {
24404
24590
  }
24405
24591
  }
24406
24592
 
24407
- /**
24408
- * Hit Testing and Cursor Positioning System
24409
- *
24410
- * Maps pointer coordinates to text positions and provides cursor rectangles
24411
- * for interactive text editing with grapheme-aware boundaries.
24593
+ /**
24594
+ * Hit Testing and Cursor Positioning System
24595
+ *
24596
+ * Maps pointer coordinates to text positions and provides cursor rectangles
24597
+ * for interactive text editing with grapheme-aware boundaries.
24412
24598
  */
24413
24599
 
24414
- /**
24415
- * Hit test a point against laid out text to find insertion position
24600
+ /**
24601
+ * Hit test a point against laid out text to find insertion position
24416
24602
  */
24417
24603
  function hitTest(x, y, layout, options) {
24418
24604
  if (layout.lines.length === 0) {
@@ -24456,8 +24642,8 @@ function hitTest(x, y, layout, options) {
24456
24642
  };
24457
24643
  }
24458
24644
 
24459
- /**
24460
- * Get cursor rectangle for a given insertion index
24645
+ /**
24646
+ * Get cursor rectangle for a given insertion index
24461
24647
  */
24462
24648
  function getCursorRect(insertionIndex, layout, options) {
24463
24649
  if (layout.lines.length === 0) {
@@ -24504,8 +24690,8 @@ function getCursorRect(insertionIndex, layout, options) {
24504
24690
 
24505
24691
  // Private helper functions
24506
24692
 
24507
- /**
24508
- * Find which line contains the given Y coordinate
24693
+ /**
24694
+ * Find which line contains the given Y coordinate
24509
24695
  */
24510
24696
  function findLineAtY(y, lines) {
24511
24697
  var _lines;
@@ -24528,8 +24714,8 @@ function findLineAtY(y, lines) {
24528
24714
  };
24529
24715
  }
24530
24716
 
24531
- /**
24532
- * Find character position within a line at given X coordinate
24717
+ /**
24718
+ * Find character position within a line at given X coordinate
24533
24719
  */
24534
24720
  function findCharAtX(x, line, options) {
24535
24721
  if (line.bounds.length === 0) {
@@ -24635,8 +24821,8 @@ function findCharAtX(x, line, options) {
24635
24821
  };
24636
24822
  }
24637
24823
 
24638
- /**
24639
- * Calculate total insertion index from line and character indices
24824
+ /**
24825
+ * Calculate total insertion index from line and character indices
24640
24826
  */
24641
24827
  function calculateInsertionIndex(lineIndex, graphemeIndex, layout) {
24642
24828
  let insertionIndex = 0;
@@ -24655,8 +24841,8 @@ function calculateInsertionIndex(lineIndex, graphemeIndex, layout) {
24655
24841
  return insertionIndex;
24656
24842
  }
24657
24843
 
24658
- /**
24659
- * Find line and grapheme position from insertion index
24844
+ /**
24845
+ * Find line and grapheme position from insertion index
24660
24846
  */
24661
24847
  function findPositionFromIndex(insertionIndex, layout) {
24662
24848
  let currentIndex = 0;
@@ -24698,8 +24884,8 @@ function findPositionFromIndex(insertionIndex, layout) {
24698
24884
  };
24699
24885
  }
24700
24886
 
24701
- /**
24702
- * Calculate Y position of a line
24887
+ /**
24888
+ * Calculate Y position of a line
24703
24889
  */
24704
24890
  function calculateLineY(lineIndex, layout, options) {
24705
24891
  let y = 0;
@@ -24802,48 +24988,48 @@ const iTextDefaultValues = {
24802
24988
 
24803
24989
  // @TODO this is not complete
24804
24990
 
24805
- /**
24806
- * @fires changed
24807
- * @fires selection:changed
24808
- * @fires editing:entered
24809
- * @fires editing:exited
24810
- * @fires dragstart
24811
- * @fires drag drag event firing on the drag source
24812
- * @fires dragend
24813
- * @fires copy
24814
- * @fires cut
24815
- * @fires paste
24816
- *
24817
- * #### Supported key combinations
24818
- * ```
24819
- * Move cursor: left, right, up, down
24820
- * Select character: shift + left, shift + right
24821
- * Select text vertically: shift + up, shift + down
24822
- * Move cursor by word: alt + left, alt + right
24823
- * Select words: shift + alt + left, shift + alt + right
24824
- * Move cursor to line start/end: cmd + left, cmd + right or home, end
24825
- * Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
24826
- * Jump to start/end of text: cmd + up, cmd + down
24827
- * Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
24828
- * Delete character: backspace
24829
- * Delete word: alt + backspace
24830
- * Delete line: cmd + backspace
24831
- * Forward delete: delete
24832
- * Copy text: ctrl/cmd + c
24833
- * Paste text: ctrl/cmd + v
24834
- * Cut text: ctrl/cmd + x
24835
- * Select entire text: ctrl/cmd + a
24836
- * Quit editing tab or esc
24837
- * ```
24838
- *
24839
- * #### Supported mouse/touch combination
24840
- * ```
24841
- * Position cursor: click/touch
24842
- * Create selection: click/touch & drag
24843
- * Create selection: click & shift + click
24844
- * Select word: double click
24845
- * Select line: triple click
24846
- * ```
24991
+ /**
24992
+ * @fires changed
24993
+ * @fires selection:changed
24994
+ * @fires editing:entered
24995
+ * @fires editing:exited
24996
+ * @fires dragstart
24997
+ * @fires drag drag event firing on the drag source
24998
+ * @fires dragend
24999
+ * @fires copy
25000
+ * @fires cut
25001
+ * @fires paste
25002
+ *
25003
+ * #### Supported key combinations
25004
+ * ```
25005
+ * Move cursor: left, right, up, down
25006
+ * Select character: shift + left, shift + right
25007
+ * Select text vertically: shift + up, shift + down
25008
+ * Move cursor by word: alt + left, alt + right
25009
+ * Select words: shift + alt + left, shift + alt + right
25010
+ * Move cursor to line start/end: cmd + left, cmd + right or home, end
25011
+ * Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
25012
+ * Jump to start/end of text: cmd + up, cmd + down
25013
+ * Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
25014
+ * Delete character: backspace
25015
+ * Delete word: alt + backspace
25016
+ * Delete line: cmd + backspace
25017
+ * Forward delete: delete
25018
+ * Copy text: ctrl/cmd + c
25019
+ * Paste text: ctrl/cmd + v
25020
+ * Cut text: ctrl/cmd + x
25021
+ * Select entire text: ctrl/cmd + a
25022
+ * Quit editing tab or esc
25023
+ * ```
25024
+ *
25025
+ * #### Supported mouse/touch combination
25026
+ * ```
25027
+ * Position cursor: click/touch
25028
+ * Create selection: click/touch & drag
25029
+ * Create selection: click & shift + click
25030
+ * Select word: double click
25031
+ * Select line: triple click
25032
+ * ```
24847
25033
  */
24848
25034
  class IText extends ITextClickBehavior {
24849
25035
  static getDefaults() {
@@ -24858,10 +25044,10 @@ class IText extends ITextClickBehavior {
24858
25044
  return type === 'itext' ? 'i-text' : type;
24859
25045
  }
24860
25046
 
24861
- /**
24862
- * Constructor
24863
- * @param {String} text Text string
24864
- * @param {Object} [options] Options object
25047
+ /**
25048
+ * Constructor
25049
+ * @param {String} text Text string
25050
+ * @param {Object} [options] Options object
24865
25051
  */
24866
25052
  constructor(text, options) {
24867
25053
  super(text, {
@@ -24871,11 +25057,11 @@ class IText extends ITextClickBehavior {
24871
25057
  this.initBehavior();
24872
25058
  }
24873
25059
 
24874
- /**
24875
- * While editing handle differently
24876
- * @private
24877
- * @param {string} key
24878
- * @param {*} value
25060
+ /**
25061
+ * While editing handle differently
25062
+ * @private
25063
+ * @param {string} key
25064
+ * @param {*} value
24879
25065
  */
24880
25066
  _set(key, value) {
24881
25067
  if (this.isEditing && this._savedProps && key in this._savedProps) {
@@ -24890,28 +25076,28 @@ class IText extends ITextClickBehavior {
24890
25076
  return super._set(key, value);
24891
25077
  }
24892
25078
 
24893
- /**
24894
- * Sets selection start (left boundary of a selection)
24895
- * @param {Number} index Index to set selection start to
25079
+ /**
25080
+ * Sets selection start (left boundary of a selection)
25081
+ * @param {Number} index Index to set selection start to
24896
25082
  */
24897
25083
  setSelectionStart(index) {
24898
25084
  index = Math.max(index, 0);
24899
25085
  this._updateAndFire('selectionStart', index);
24900
25086
  }
24901
25087
 
24902
- /**
24903
- * Sets selection end (right boundary of a selection)
24904
- * @param {Number} index Index to set selection end to
25088
+ /**
25089
+ * Sets selection end (right boundary of a selection)
25090
+ * @param {Number} index Index to set selection end to
24905
25091
  */
24906
25092
  setSelectionEnd(index) {
24907
25093
  index = Math.min(index, this.text.length);
24908
25094
  this._updateAndFire('selectionEnd', index);
24909
25095
  }
24910
25096
 
24911
- /**
24912
- * @private
24913
- * @param {String} property 'selectionStart' or 'selectionEnd'
24914
- * @param {Number} index new position of property
25097
+ /**
25098
+ * @private
25099
+ * @param {String} property 'selectionStart' or 'selectionEnd'
25100
+ * @param {Number} index new position of property
24915
25101
  */
24916
25102
  _updateAndFire(property, index) {
24917
25103
  if (this[property] !== index) {
@@ -24921,9 +25107,9 @@ class IText extends ITextClickBehavior {
24921
25107
  this._updateTextarea();
24922
25108
  }
24923
25109
 
24924
- /**
24925
- * Fires the even of selection changed
24926
- * @private
25110
+ /**
25111
+ * Fires the even of selection changed
25112
+ * @private
24927
25113
  */
24928
25114
  _fireSelectionChanged() {
24929
25115
  this.fire('selection:changed');
@@ -24932,25 +25118,25 @@ class IText extends ITextClickBehavior {
24932
25118
  });
24933
25119
  }
24934
25120
 
24935
- /**
24936
- * Initialize text dimensions. Render all text on given context
24937
- * or on a offscreen canvas to get the text width with measureText.
24938
- * Updates this.width and this.height with the proper values.
24939
- * Does not return dimensions.
24940
- * @private
25121
+ /**
25122
+ * Initialize text dimensions. Render all text on given context
25123
+ * or on a offscreen canvas to get the text width with measureText.
25124
+ * Updates this.width and this.height with the proper values.
25125
+ * Does not return dimensions.
25126
+ * @private
24941
25127
  */
24942
25128
  initDimensions() {
24943
25129
  this.isEditing && this.initDelayedCursor();
24944
25130
  super.initDimensions();
24945
25131
  }
24946
25132
 
24947
- /**
24948
- * Gets style of a current selection/cursor (at the start position)
24949
- * if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
24950
- * @param {Number} startIndex Start index to get styles at
24951
- * @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
24952
- * @param {Boolean} [complete] get full style or not
24953
- * @return {Array} styles an array with one, zero or more Style objects
25133
+ /**
25134
+ * Gets style of a current selection/cursor (at the start position)
25135
+ * if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
25136
+ * @param {Number} startIndex Start index to get styles at
25137
+ * @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
25138
+ * @param {Boolean} [complete] get full style or not
25139
+ * @return {Array} styles an array with one, zero or more Style objects
24954
25140
  */
24955
25141
  getSelectionStyles() {
24956
25142
  let startIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart || 0;
@@ -24959,11 +25145,11 @@ class IText extends ITextClickBehavior {
24959
25145
  return super.getSelectionStyles(startIndex, endIndex, complete);
24960
25146
  }
24961
25147
 
24962
- /**
24963
- * Sets style of a current selection, if no selection exist, do not set anything.
24964
- * @param {Object} [styles] Styles object
24965
- * @param {Number} [startIndex] Start index to get styles at
24966
- * @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
25148
+ /**
25149
+ * Sets style of a current selection, if no selection exist, do not set anything.
25150
+ * @param {Object} [styles] Styles object
25151
+ * @param {Number} [startIndex] Start index to get styles at
25152
+ * @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
24967
25153
  */
24968
25154
  setSelectionStyles(styles) {
24969
25155
  let startIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.selectionStart || 0;
@@ -24971,10 +25157,10 @@ class IText extends ITextClickBehavior {
24971
25157
  return super.setSelectionStyles(styles, startIndex, endIndex);
24972
25158
  }
24973
25159
 
24974
- /**
24975
- * Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
24976
- * @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
24977
- * @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
25160
+ /**
25161
+ * Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
25162
+ * @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
25163
+ * @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
24978
25164
  */
24979
25165
  get2DCursorLocation() {
24980
25166
  let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
@@ -24982,9 +25168,9 @@ class IText extends ITextClickBehavior {
24982
25168
  return super.get2DCursorLocation(selectionStart, skipWrapping);
24983
25169
  }
24984
25170
 
24985
- /**
24986
- * @private
24987
- * @param {CanvasRenderingContext2D} ctx Context to render on
25171
+ /**
25172
+ * @private
25173
+ * @param {CanvasRenderingContext2D} ctx Context to render on
24988
25174
  */
24989
25175
  render(ctx) {
24990
25176
  super.render(ctx);
@@ -24994,9 +25180,9 @@ class IText extends ITextClickBehavior {
24994
25180
  this.renderCursorOrSelection();
24995
25181
  }
24996
25182
 
24997
- /**
24998
- * @override block cursor/selection logic while rendering the exported canvas
24999
- * @todo this workaround should be replaced with a more robust solution
25183
+ /**
25184
+ * @override block cursor/selection logic while rendering the exported canvas
25185
+ * @todo this workaround should be replaced with a more robust solution
25000
25186
  */
25001
25187
  toCanvasElement(options) {
25002
25188
  const isEditing = this.isEditing;
@@ -25006,9 +25192,9 @@ class IText extends ITextClickBehavior {
25006
25192
  return canvas;
25007
25193
  }
25008
25194
 
25009
- /**
25010
- * Renders cursor or selection (depending on what exists)
25011
- * it does on the contextTop. If contextTop is not available, do nothing.
25195
+ /**
25196
+ * Renders cursor or selection (depending on what exists)
25197
+ * it does on the contextTop. If contextTop is not available, do nothing.
25012
25198
  */
25013
25199
  renderCursorOrSelection() {
25014
25200
  if (!this.isEditing || !this.canvas) {
@@ -25064,12 +25250,12 @@ class IText extends ITextClickBehavior {
25064
25250
  ctx.restore();
25065
25251
  }
25066
25252
 
25067
- /**
25068
- * Finds and returns an array of clip paths that are applied to the parent
25069
- * group(s) of the current FabricObject instance. The object's hierarchy is
25070
- * traversed upwards (from the current object towards the root of the canvas),
25071
- * checking each parent object for the presence of a `clipPath` that is not
25072
- * absolutely positioned.
25253
+ /**
25254
+ * Finds and returns an array of clip paths that are applied to the parent
25255
+ * group(s) of the current FabricObject instance. The object's hierarchy is
25256
+ * traversed upwards (from the current object towards the root of the canvas),
25257
+ * checking each parent object for the presence of a `clipPath` that is not
25258
+ * absolutely positioned.
25073
25259
  */
25074
25260
  findAncestorsWithClipPath() {
25075
25261
  const clipPathAncestors = [];
@@ -25084,13 +25270,13 @@ class IText extends ITextClickBehavior {
25084
25270
  return clipPathAncestors;
25085
25271
  }
25086
25272
 
25087
- /**
25088
- * Returns cursor boundaries (left, top, leftOffset, topOffset)
25089
- * left/top are left/top of entire text box
25090
- * leftOffset/topOffset are offset from that left/top point of a text box
25091
- * @private
25092
- * @param {number} [index] index from start
25093
- * @param {boolean} [skipCaching]
25273
+ /**
25274
+ * Returns cursor boundaries (left, top, leftOffset, topOffset)
25275
+ * left/top are left/top of entire text box
25276
+ * leftOffset/topOffset are offset from that left/top point of a text box
25277
+ * @private
25278
+ * @param {number} [index] index from start
25279
+ * @param {boolean} [skipCaching]
25094
25280
  */
25095
25281
  _getCursorBoundaries() {
25096
25282
  let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
@@ -25104,11 +25290,11 @@ class IText extends ITextClickBehavior {
25104
25290
  return this._getCursorBoundariesOriginal(index, skipCaching);
25105
25291
  }
25106
25292
 
25107
- /**
25108
- * Caches and returns cursor left/top offset relative to instance's center point
25109
- * @private
25110
- * @param {number} index index from start
25111
- * @param {boolean} [skipCaching]
25293
+ /**
25294
+ * Caches and returns cursor left/top offset relative to instance's center point
25295
+ * @private
25296
+ * @param {number} index index from start
25297
+ * @param {boolean} [skipCaching]
25112
25298
  */
25113
25299
  _getCursorBoundariesOffsets(index, skipCaching) {
25114
25300
  if (skipCaching) {
@@ -25120,9 +25306,9 @@ class IText extends ITextClickBehavior {
25120
25306
  return this.cursorOffsetCache = this.__getCursorBoundariesOffsets(index);
25121
25307
  }
25122
25308
 
25123
- /**
25124
- * Enhanced cursor boundaries using advanced hit testing when available
25125
- * @private
25309
+ /**
25310
+ * Enhanced cursor boundaries using advanced hit testing when available
25311
+ * @private
25126
25312
  */
25127
25313
  _getCursorBoundariesAdvanced(index) {
25128
25314
  if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
@@ -25138,9 +25324,9 @@ class IText extends ITextClickBehavior {
25138
25324
  };
25139
25325
  }
25140
25326
 
25141
- /**
25142
- * Enhanced selection start from pointer using BiDi-aware hit testing
25143
- * @override
25327
+ /**
25328
+ * Enhanced selection start from pointer using BiDi-aware hit testing
25329
+ * @override
25144
25330
  */
25145
25331
  getSelectionStartFromPointer(e) {
25146
25332
  if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
@@ -25154,9 +25340,9 @@ class IText extends ITextClickBehavior {
25154
25340
  return Math.min(hitResult.charIndex, this._text.length);
25155
25341
  }
25156
25342
 
25157
- /**
25158
- * Original cursor boundaries implementation
25159
- * @private
25343
+ /**
25344
+ * Original cursor boundaries implementation
25345
+ * @private
25160
25346
  */
25161
25347
  _getCursorBoundariesOriginal(index, skipCaching) {
25162
25348
  const left = this._getLeftOffset(),
@@ -25170,10 +25356,10 @@ class IText extends ITextClickBehavior {
25170
25356
  };
25171
25357
  }
25172
25358
 
25173
- /**
25174
- * Calculates cursor left/top offset relative to instance's center point
25175
- * @private
25176
- * @param {number} index index from start
25359
+ /**
25360
+ * Calculates cursor left/top offset relative to instance's center point
25361
+ * @private
25362
+ * @param {number} index index from start
25177
25363
  */
25178
25364
  __getCursorBoundariesOffsets(index) {
25179
25365
  let topOffset = 0,
@@ -25207,29 +25393,29 @@ class IText extends ITextClickBehavior {
25207
25393
  return boundaries;
25208
25394
  }
25209
25395
 
25210
- /**
25211
- * Renders cursor on context Top, outside the animation cycle, on request
25212
- * Used for the drag/drop effect.
25213
- * If contextTop is not available, do nothing.
25396
+ /**
25397
+ * Renders cursor on context Top, outside the animation cycle, on request
25398
+ * Used for the drag/drop effect.
25399
+ * If contextTop is not available, do nothing.
25214
25400
  */
25215
25401
  renderCursorAt(selectionStart) {
25216
25402
  this._renderCursor(this.canvas.contextTop, this._getCursorBoundaries(selectionStart, true), selectionStart);
25217
25403
  }
25218
25404
 
25219
- /**
25220
- * Renders cursor
25221
- * @param {Object} boundaries
25222
- * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25405
+ /**
25406
+ * Renders cursor
25407
+ * @param {Object} boundaries
25408
+ * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25223
25409
  */
25224
25410
  renderCursor(ctx, boundaries) {
25225
25411
  this._renderCursor(ctx, boundaries, this.selectionStart);
25226
25412
  }
25227
25413
 
25228
- /**
25229
- * Return the data needed to render the cursor for given selection start
25230
- * The left,top are relative to the object, while width and height are prescaled
25231
- * to look think with canvas zoom and object scaling,
25232
- * so they depend on canvas and object scaling
25414
+ /**
25415
+ * Return the data needed to render the cursor for given selection start
25416
+ * The left,top are relative to the object, while width and height are prescaled
25417
+ * to look think with canvas zoom and object scaling,
25418
+ * so they depend on canvas and object scaling
25233
25419
  */
25234
25420
  getCursorRenderingData() {
25235
25421
  let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
@@ -25252,9 +25438,9 @@ class IText extends ITextClickBehavior {
25252
25438
  };
25253
25439
  }
25254
25440
 
25255
- /**
25256
- * Render the cursor at the given selectionStart.
25257
- * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25441
+ /**
25442
+ * Render the cursor at the given selectionStart.
25443
+ * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25258
25444
  */
25259
25445
  _renderCursor(ctx, boundaries, selectionStart) {
25260
25446
  const {
@@ -25270,10 +25456,10 @@ class IText extends ITextClickBehavior {
25270
25456
  ctx.fillRect(left, top, width, height);
25271
25457
  }
25272
25458
 
25273
- /**
25274
- * Renders text selection
25275
- * @param {Object} boundaries Object with left/top/leftOffset/topOffset
25276
- * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25459
+ /**
25460
+ * Renders text selection
25461
+ * @param {Object} boundaries Object with left/top/leftOffset/topOffset
25462
+ * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25277
25463
  */
25278
25464
  renderSelection(ctx, boundaries) {
25279
25465
  const selection = {
@@ -25283,8 +25469,8 @@ class IText extends ITextClickBehavior {
25283
25469
  this._renderSelection(ctx, selection, boundaries);
25284
25470
  }
25285
25471
 
25286
- /**
25287
- * Renders drag start text selection
25472
+ /**
25473
+ * Renders drag start text selection
25288
25474
  */
25289
25475
  renderDragSourceEffect() {
25290
25476
  const dragStartSelection = this.draggableTextDelegate.getDragStartSelection();
@@ -25295,12 +25481,12 @@ class IText extends ITextClickBehavior {
25295
25481
  this.renderCursorAt(dragSelection);
25296
25482
  }
25297
25483
 
25298
- /**
25299
- * Renders text selection
25300
- * @private
25301
- * @param {{ selectionStart: number, selectionEnd: number }} selection
25302
- * @param {Object} boundaries Object with left/top/leftOffset/topOffset
25303
- * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25484
+ /**
25485
+ * Renders text selection
25486
+ * @private
25487
+ * @param {{ selectionStart: number, selectionEnd: number }} selection
25488
+ * @param {Object} boundaries Object with left/top/leftOffset/topOffset
25489
+ * @param {CanvasRenderingContext2D} ctx transformed context to draw on
25304
25490
  */
25305
25491
  _renderSelection(ctx, selection, boundaries) {
25306
25492
  const selectionStart = selection.selectionStart,
@@ -25362,34 +25548,34 @@ class IText extends ITextClickBehavior {
25362
25548
  }
25363
25549
  }
25364
25550
 
25365
- /**
25366
- * High level function to know the height of the cursor.
25367
- * the currentChar is the one that precedes the cursor
25368
- * Returns fontSize of char at the current cursor
25369
- * Unused from the library, is for the end user
25370
- * @return {Number} Character font size
25551
+ /**
25552
+ * High level function to know the height of the cursor.
25553
+ * the currentChar is the one that precedes the cursor
25554
+ * Returns fontSize of char at the current cursor
25555
+ * Unused from the library, is for the end user
25556
+ * @return {Number} Character font size
25371
25557
  */
25372
25558
  getCurrentCharFontSize() {
25373
25559
  const cp = this._getCurrentCharIndex();
25374
25560
  return this.getValueOfPropertyAt(cp.l, cp.c, 'fontSize');
25375
25561
  }
25376
25562
 
25377
- /**
25378
- * High level function to know the color of the cursor.
25379
- * the currentChar is the one that precedes the cursor
25380
- * Returns color (fill) of char at the current cursor
25381
- * if the text object has a pattern or gradient for filler, it will return that.
25382
- * Unused by the library, is for the end user
25383
- * @return {String | TFiller} Character color (fill)
25563
+ /**
25564
+ * High level function to know the color of the cursor.
25565
+ * the currentChar is the one that precedes the cursor
25566
+ * Returns color (fill) of char at the current cursor
25567
+ * if the text object has a pattern or gradient for filler, it will return that.
25568
+ * Unused by the library, is for the end user
25569
+ * @return {String | TFiller} Character color (fill)
25384
25570
  */
25385
25571
  getCurrentCharColor() {
25386
25572
  const cp = this._getCurrentCharIndex();
25387
25573
  return this.getValueOfPropertyAt(cp.l, cp.c, FILL);
25388
25574
  }
25389
25575
 
25390
- /**
25391
- * Returns the cursor position for the getCurrent.. functions
25392
- * @private
25576
+ /**
25577
+ * Returns the cursor position for the getCurrent.. functions
25578
+ * @private
25393
25579
  */
25394
25580
  _getCurrentCharIndex() {
25395
25581
  const cursorPosition = this.get2DCursorLocation(this.selectionStart, true),
@@ -25405,52 +25591,52 @@ class IText extends ITextClickBehavior {
25405
25591
  super.dispose();
25406
25592
  }
25407
25593
  }
25408
- /**
25409
- * Index where text selection starts (or where cursor is when there is no selection)
25410
- * @type Number
25594
+ /**
25595
+ * Index where text selection starts (or where cursor is when there is no selection)
25596
+ * @type Number
25411
25597
  */
25412
- /**
25413
- * Index where text selection ends
25414
- * @type Number
25598
+ /**
25599
+ * Index where text selection ends
25600
+ * @type Number
25415
25601
  */
25416
- /**
25417
- * Color of text selection
25418
- * @type String
25602
+ /**
25603
+ * Color of text selection
25604
+ * @type String
25419
25605
  */
25420
- /**
25421
- * Indicates whether text is in editing mode
25422
- * @type Boolean
25606
+ /**
25607
+ * Indicates whether text is in editing mode
25608
+ * @type Boolean
25423
25609
  */
25424
- /**
25425
- * Indicates whether a text can be edited
25426
- * @type Boolean
25610
+ /**
25611
+ * Indicates whether a text can be edited
25612
+ * @type Boolean
25427
25613
  */
25428
- /**
25429
- * Border color of text object while it's in editing mode
25430
- * @type String
25614
+ /**
25615
+ * Border color of text object while it's in editing mode
25616
+ * @type String
25431
25617
  */
25432
- /**
25433
- * Width of cursor (in px)
25434
- * @type Number
25618
+ /**
25619
+ * Width of cursor (in px)
25620
+ * @type Number
25435
25621
  */
25436
- /**
25437
- * Color of text cursor color in editing mode.
25438
- * if not set (default) will take color from the text.
25439
- * if set to a color value that fabric can understand, it will
25440
- * be used instead of the color of the text at the current position.
25441
- * @type String
25622
+ /**
25623
+ * Color of text cursor color in editing mode.
25624
+ * if not set (default) will take color from the text.
25625
+ * if set to a color value that fabric can understand, it will
25626
+ * be used instead of the color of the text at the current position.
25627
+ * @type String
25442
25628
  */
25443
- /**
25444
- * Delay between cursor blink (in ms)
25445
- * @type Number
25629
+ /**
25630
+ * Delay between cursor blink (in ms)
25631
+ * @type Number
25446
25632
  */
25447
- /**
25448
- * Duration of cursor fade in (in ms)
25449
- * @type Number
25633
+ /**
25634
+ * Duration of cursor fade in (in ms)
25635
+ * @type Number
25450
25636
  */
25451
- /**
25452
- * Indicates whether internal text char widths can be cached
25453
- * @type Boolean
25637
+ /**
25638
+ * Indicates whether internal text char widths can be cached
25639
+ * @type Boolean
25454
25640
  */
25455
25641
  _defineProperty(IText, "ownDefaults", iTextDefaultValues);
25456
25642
  _defineProperty(IText, "type", 'IText');
@@ -25472,11 +25658,11 @@ const textboxDefaultValues = {
25472
25658
 
25473
25659
  // @TODO this is not complete
25474
25660
 
25475
- /**
25476
- * Textbox class, based on IText, allows the user to resize the text rectangle
25477
- * and wraps lines automatically. Textboxes have their Y scaling locked, the
25478
- * user can only change width. Height is adjusted automatically based on the
25479
- * wrapping of lines.
25661
+ /**
25662
+ * Textbox class, based on IText, allows the user to resize the text rectangle
25663
+ * and wraps lines automatically. Textboxes have their Y scaling locked, the
25664
+ * user can only change width. Height is adjusted automatically based on the
25665
+ * wrapping of lines.
25480
25666
  */
25481
25667
  class Textbox extends IText {
25482
25668
  static getDefaults() {
@@ -25486,10 +25672,10 @@ class Textbox extends IText {
25486
25672
  };
25487
25673
  }
25488
25674
 
25489
- /**
25490
- * Constructor
25491
- * @param {String} text Text string
25492
- * @param {Object} [options] Options object
25675
+ /**
25676
+ * Constructor
25677
+ * @param {String} text Text string
25678
+ * @param {Object} [options] Options object
25493
25679
  */
25494
25680
  constructor(text, options) {
25495
25681
  super(text, {
@@ -25499,10 +25685,10 @@ class Textbox extends IText {
25499
25685
  this.initializeEventListeners();
25500
25686
  }
25501
25687
 
25502
- /**
25503
- * Creates the default control object.
25504
- * If you prefer to have on instance of controls shared among all objects
25505
- * make this function return an empty object and add controls to the ownDefaults object
25688
+ /**
25689
+ * Creates the default control object.
25690
+ * If you prefer to have on instance of controls shared among all objects
25691
+ * make this function return an empty object and add controls to the ownDefaults object
25506
25692
  */
25507
25693
  static createControls() {
25508
25694
  return {
@@ -25510,11 +25696,11 @@ class Textbox extends IText {
25510
25696
  };
25511
25697
  }
25512
25698
 
25513
- /**
25514
- * Unlike superclass's version of this function, Textbox does not update
25515
- * its width.
25516
- * @private
25517
- * @override
25699
+ /**
25700
+ * Unlike superclass's version of this function, Textbox does not update
25701
+ * its width.
25702
+ * @private
25703
+ * @override
25518
25704
  */
25519
25705
  initDimensions() {
25520
25706
  if (!this.initialized) {
@@ -25543,9 +25729,9 @@ class Textbox extends IText {
25543
25729
  this.height = this.calcTextHeight();
25544
25730
  }
25545
25731
 
25546
- /**
25547
- * Advanced dimensions calculation using new layout engine
25548
- * @private
25732
+ /**
25733
+ * Advanced dimensions calculation using new layout engine
25734
+ * @private
25549
25735
  */
25550
25736
  initDimensionsAdvanced() {
25551
25737
  if (!this.initialized) {
@@ -25600,9 +25786,9 @@ class Textbox extends IText {
25600
25786
  this.dirty = true;
25601
25787
  }
25602
25788
 
25603
- /**
25604
- * Generate style map from new layout format
25605
- * @private
25789
+ /**
25790
+ * Generate style map from new layout format
25791
+ * @private
25606
25792
  */
25607
25793
  _generateStyleMapFromLayout(layout) {
25608
25794
  const map = {};
@@ -25624,12 +25810,12 @@ class Textbox extends IText {
25624
25810
  return map;
25625
25811
  }
25626
25812
 
25627
- /**
25628
- * Generate an object that translates the style object so that it is
25629
- * broken up by visual lines (new lines and automatic wrapping).
25630
- * The original text styles object is broken up by actual lines (new lines only),
25631
- * which is only sufficient for Text / IText
25632
- * @private
25813
+ /**
25814
+ * Generate an object that translates the style object so that it is
25815
+ * broken up by visual lines (new lines and automatic wrapping).
25816
+ * The original text styles object is broken up by actual lines (new lines only),
25817
+ * which is only sufficient for Text / IText
25818
+ * @private
25633
25819
  */
25634
25820
  _generateStyleMap(textInfo) {
25635
25821
  let realLineCount = 0,
@@ -25656,10 +25842,10 @@ class Textbox extends IText {
25656
25842
  return map;
25657
25843
  }
25658
25844
 
25659
- /**
25660
- * Returns true if object has a style property or has it on a specified line
25661
- * @param {Number} lineIndex
25662
- * @return {Boolean}
25845
+ /**
25846
+ * Returns true if object has a style property or has it on a specified line
25847
+ * @param {Number} lineIndex
25848
+ * @return {Boolean}
25663
25849
  */
25664
25850
  styleHas(property, lineIndex) {
25665
25851
  if (this._styleMap && !this.isWrapping) {
@@ -25671,10 +25857,10 @@ class Textbox extends IText {
25671
25857
  return super.styleHas(property, lineIndex);
25672
25858
  }
25673
25859
 
25674
- /**
25675
- * Returns true if object has no styling or no styling in a line
25676
- * @param {Number} lineIndex , lineIndex is on wrapped lines.
25677
- * @return {Boolean}
25860
+ /**
25861
+ * Returns true if object has no styling or no styling in a line
25862
+ * @param {Number} lineIndex , lineIndex is on wrapped lines.
25863
+ * @return {Boolean}
25678
25864
  */
25679
25865
  isEmptyStyles(lineIndex) {
25680
25866
  if (!this.styles) {
@@ -25711,11 +25897,11 @@ class Textbox extends IText {
25711
25897
  return true;
25712
25898
  }
25713
25899
 
25714
- /**
25715
- * @protected
25716
- * @param {Number} lineIndex
25717
- * @param {Number} charIndex
25718
- * @return {TextStyleDeclaration} a style object reference to the existing one or a new empty object when undefined
25900
+ /**
25901
+ * @protected
25902
+ * @param {Number} lineIndex
25903
+ * @param {Number} charIndex
25904
+ * @return {TextStyleDeclaration} a style object reference to the existing one or a new empty object when undefined
25719
25905
  */
25720
25906
  _getStyleDeclaration(lineIndex, charIndex) {
25721
25907
  if (this._styleMap && !this.isWrapping) {
@@ -25729,59 +25915,59 @@ class Textbox extends IText {
25729
25915
  return super._getStyleDeclaration(lineIndex, charIndex);
25730
25916
  }
25731
25917
 
25732
- /**
25733
- * @param {Number} lineIndex
25734
- * @param {Number} charIndex
25735
- * @param {Object} style
25736
- * @private
25918
+ /**
25919
+ * @param {Number} lineIndex
25920
+ * @param {Number} charIndex
25921
+ * @param {Object} style
25922
+ * @private
25737
25923
  */
25738
25924
  _setStyleDeclaration(lineIndex, charIndex, style) {
25739
25925
  const map = this._styleMap[lineIndex];
25740
25926
  super._setStyleDeclaration(map.line, map.offset + charIndex, style);
25741
25927
  }
25742
25928
 
25743
- /**
25744
- * @param {Number} lineIndex
25745
- * @param {Number} charIndex
25746
- * @private
25929
+ /**
25930
+ * @param {Number} lineIndex
25931
+ * @param {Number} charIndex
25932
+ * @private
25747
25933
  */
25748
25934
  _deleteStyleDeclaration(lineIndex, charIndex) {
25749
25935
  const map = this._styleMap[lineIndex];
25750
25936
  super._deleteStyleDeclaration(map.line, map.offset + charIndex);
25751
25937
  }
25752
25938
 
25753
- /**
25754
- * probably broken need a fix
25755
- * Returns the real style line that correspond to the wrapped lineIndex line
25756
- * Used just to verify if the line does exist or not.
25757
- * @param {Number} lineIndex
25758
- * @returns {Boolean} if the line exists or not
25759
- * @private
25939
+ /**
25940
+ * probably broken need a fix
25941
+ * Returns the real style line that correspond to the wrapped lineIndex line
25942
+ * Used just to verify if the line does exist or not.
25943
+ * @param {Number} lineIndex
25944
+ * @returns {Boolean} if the line exists or not
25945
+ * @private
25760
25946
  */
25761
25947
  _getLineStyle(lineIndex) {
25762
25948
  const map = this._styleMap[lineIndex];
25763
25949
  return !!this.styles[map.line];
25764
25950
  }
25765
25951
 
25766
- /**
25767
- * Set the line style to an empty object so that is initialized
25768
- * @param {Number} lineIndex
25769
- * @param {Object} style
25770
- * @private
25952
+ /**
25953
+ * Set the line style to an empty object so that is initialized
25954
+ * @param {Number} lineIndex
25955
+ * @param {Object} style
25956
+ * @private
25771
25957
  */
25772
25958
  _setLineStyle(lineIndex) {
25773
25959
  const map = this._styleMap[lineIndex];
25774
25960
  super._setLineStyle(map.line);
25775
25961
  }
25776
25962
 
25777
- /**
25778
- * Wraps text using the 'width' property of Textbox. First this function
25779
- * splits text on newlines, so we preserve newlines entered by the user.
25780
- * Then it wraps each line using the width of the Textbox by calling
25781
- * _wrapLine().
25782
- * @param {Array} lines The string array of text that is split into lines
25783
- * @param {Number} desiredWidth width you want to wrap to
25784
- * @returns {Array} Array of lines
25963
+ /**
25964
+ * Wraps text using the 'width' property of Textbox. First this function
25965
+ * splits text on newlines, so we preserve newlines entered by the user.
25966
+ * Then it wraps each line using the width of the Textbox by calling
25967
+ * _wrapLine().
25968
+ * @param {Array} lines The string array of text that is split into lines
25969
+ * @param {Number} desiredWidth width you want to wrap to
25970
+ * @returns {Array} Array of lines
25785
25971
  */
25786
25972
  _wrapText(lines, desiredWidth) {
25787
25973
  this.isWrapping = true;
@@ -25795,12 +25981,12 @@ class Textbox extends IText {
25795
25981
  return wrapped;
25796
25982
  }
25797
25983
 
25798
- /**
25799
- * For each line of text terminated by an hard line stop,
25800
- * measure each word width and extract the largest word from all.
25801
- * The returned words here are the one that at the end will be rendered.
25802
- * @param {string[]} lines the lines we need to measure
25803
- *
25984
+ /**
25985
+ * For each line of text terminated by an hard line stop,
25986
+ * measure each word width and extract the largest word from all.
25987
+ * The returned words here are the one that at the end will be rendered.
25988
+ * @param {string[]} lines the lines we need to measure
25989
+ *
25804
25990
  */
25805
25991
  getGraphemeDataForRender(lines) {
25806
25992
  const splitByGrapheme = this.splitByGrapheme,
@@ -25833,17 +26019,17 @@ class Textbox extends IText {
25833
26019
  };
25834
26020
  }
25835
26021
 
25836
- /**
25837
- * Helper function to measure a string of text, given its lineIndex and charIndex offset
25838
- * It gets called when charBounds are not available yet.
25839
- * Override if necessary
25840
- * Use with {@link Textbox#wordSplit}
25841
- *
25842
- * @param {CanvasRenderingContext2D} ctx
25843
- * @param {String} text
25844
- * @param {number} lineIndex
25845
- * @param {number} charOffset
25846
- * @returns {number}
26022
+ /**
26023
+ * Helper function to measure a string of text, given its lineIndex and charIndex offset
26024
+ * It gets called when charBounds are not available yet.
26025
+ * Override if necessary
26026
+ * Use with {@link Textbox#wordSplit}
26027
+ *
26028
+ * @param {CanvasRenderingContext2D} ctx
26029
+ * @param {String} text
26030
+ * @param {number} lineIndex
26031
+ * @param {number} charOffset
26032
+ * @returns {number}
25847
26033
  */
25848
26034
  _measureWord(word, lineIndex) {
25849
26035
  let charOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
@@ -25858,26 +26044,26 @@ class Textbox extends IText {
25858
26044
  return width;
25859
26045
  }
25860
26046
 
25861
- /**
25862
- * Override this method to customize word splitting
25863
- * Use with {@link Textbox#_measureWord}
25864
- * @param {string} value
25865
- * @returns {string[]} array of words
26047
+ /**
26048
+ * Override this method to customize word splitting
26049
+ * Use with {@link Textbox#_measureWord}
26050
+ * @param {string} value
26051
+ * @returns {string[]} array of words
25866
26052
  */
25867
26053
  wordSplit(value) {
25868
26054
  return value.split(this._wordJoiners);
25869
26055
  }
25870
26056
 
25871
- /**
25872
- * Wraps a line of text using the width of the Textbox as desiredWidth
25873
- * and leveraging the known width o words from GraphemeData
25874
- * @private
25875
- * @param {Number} lineIndex
25876
- * @param {Number} desiredWidth width you want to wrap the line to
25877
- * @param {GraphemeData} graphemeData an object containing all the lines' words width.
25878
- * @param {Number} reservedSpace space to remove from wrapping for custom functionalities
25879
- * @returns {Array} Array of line(s) into which the given text is wrapped
25880
- * to.
26057
+ /**
26058
+ * Wraps a line of text using the width of the Textbox as desiredWidth
26059
+ * and leveraging the known width o words from GraphemeData
26060
+ * @private
26061
+ * @param {Number} lineIndex
26062
+ * @param {Number} desiredWidth width you want to wrap the line to
26063
+ * @param {GraphemeData} graphemeData an object containing all the lines' words width.
26064
+ * @param {Number} reservedSpace space to remove from wrapping for custom functionalities
26065
+ * @returns {Array} Array of line(s) into which the given text is wrapped
26066
+ * to.
25881
26067
  */
25882
26068
  _wrapLine(lineIndex, desiredWidth, _ref) {
25883
26069
  let {
@@ -25935,11 +26121,11 @@ class Textbox extends IText {
25935
26121
  return graphemeLines;
25936
26122
  }
25937
26123
 
25938
- /**
25939
- * Detect if the text line is ended with an hard break
25940
- * text and itext do not have wrapping, return false
25941
- * @param {Number} lineIndex text to split
25942
- * @return {Boolean}
26124
+ /**
26125
+ * Detect if the text line is ended with an hard break
26126
+ * text and itext do not have wrapping, return false
26127
+ * @param {Number} lineIndex text to split
26128
+ * @return {Boolean}
25943
26129
  */
25944
26130
  isEndOfWrapping(lineIndex) {
25945
26131
  if (!this._styleMap[lineIndex + 1]) {
@@ -25953,12 +26139,12 @@ class Textbox extends IText {
25953
26139
  return false;
25954
26140
  }
25955
26141
 
25956
- /**
25957
- * Detect if a line has a linebreak and so we need to account for it when moving
25958
- * and counting style.
25959
- * This is important only for splitByGrapheme at the end of wrapping.
25960
- * If we are not wrapping the offset is always 1
25961
- * @return Number
26142
+ /**
26143
+ * Detect if a line has a linebreak and so we need to account for it when moving
26144
+ * and counting style.
26145
+ * This is important only for splitByGrapheme at the end of wrapping.
26146
+ * If we are not wrapping the offset is always 1
26147
+ * @return Number
25962
26148
  */
25963
26149
  missingNewlineOffset(lineIndex, skipWrapping) {
25964
26150
  if (this.splitByGrapheme && !skipWrapping) {
@@ -25967,12 +26153,12 @@ class Textbox extends IText {
25967
26153
  return 1;
25968
26154
  }
25969
26155
 
25970
- /**
25971
- * Gets lines of text to render in the Textbox. This function calculates
25972
- * text wrapping on the fly every time it is called.
25973
- * @param {String} text text to split
25974
- * @returns {Array} Array of lines in the Textbox.
25975
- * @override
26156
+ /**
26157
+ * Gets lines of text to render in the Textbox. This function calculates
26158
+ * text wrapping on the fly every time it is called.
26159
+ * @param {String} text text to split
26160
+ * @returns {Array} Array of lines in the Textbox.
26161
+ * @override
25976
26162
  */
25977
26163
  _splitTextIntoLines(text) {
25978
26164
  const newText = super._splitTextIntoLines(text),
@@ -26004,9 +26190,9 @@ class Textbox extends IText {
26004
26190
  }
26005
26191
  }
26006
26192
 
26007
- /**
26008
- * Initialize event listeners for safety snap functionality
26009
- * @private
26193
+ /**
26194
+ * Initialize event listeners for safety snap functionality
26195
+ * @private
26010
26196
  */
26011
26197
  initializeEventListeners() {
26012
26198
  var _this$canvas;
@@ -26016,30 +26202,17 @@ class Textbox extends IText {
26016
26202
  // Detect resize origin during resizing
26017
26203
  this.on('resizing', e => {
26018
26204
  // Check transform origin to determine which side is being resized
26019
- console.log('🔍 Resize event data:', e);
26020
26205
  if (e.transform) {
26021
26206
  const {
26022
- originX,
26023
- originY
26207
+ originX
26024
26208
  } = e.transform;
26025
- console.log('🔍 Transform origins:', {
26026
- originX,
26027
- originY
26028
- });
26029
26209
  // originX tells us which side is the anchor - opposite side is being dragged
26030
26210
  resizeOrigin = originX === 'right' ? 'left' : originX === 'left' ? 'right' : null;
26031
- console.log('🎯 Setting resizeOrigin to:', resizeOrigin);
26032
26211
  } else if (e.originX) {
26033
26212
  const {
26034
- originX,
26035
- originY
26213
+ originX
26036
26214
  } = e;
26037
- console.log('🔍 Event origins:', {
26038
- originX,
26039
- originY
26040
- });
26041
26215
  resizeOrigin = originX === 'right' ? 'left' : originX === 'left' ? 'right' : null;
26042
- console.log('🎯 Setting resizeOrigin to:', resizeOrigin);
26043
26216
  }
26044
26217
  });
26045
26218
 
@@ -26047,9 +26220,6 @@ class Textbox extends IText {
26047
26220
  // Use 'modified' event which fires after user releases the mouse
26048
26221
  this.on('modified', () => {
26049
26222
  const currentResizeOrigin = resizeOrigin; // Capture the value before reset
26050
- console.log('✅ Modified event fired - resize complete, triggering safety snap', {
26051
- resizeOrigin: currentResizeOrigin
26052
- });
26053
26223
  // Small delay to ensure text layout is updated
26054
26224
  setTimeout(() => this.safetySnapWidth(currentResizeOrigin), 10);
26055
26225
  resizeOrigin = null; // Reset after capturing
@@ -26059,53 +26229,31 @@ class Textbox extends IText {
26059
26229
  (_this$canvas = this.canvas) === null || _this$canvas === void 0 || _this$canvas.on('object:modified', e => {
26060
26230
  if (e.target === this) {
26061
26231
  const currentResizeOrigin = resizeOrigin; // Capture the value before reset
26062
- console.log('✅ Canvas object:modified fired for this textbox');
26063
26232
  setTimeout(() => this.safetySnapWidth(currentResizeOrigin), 10);
26064
26233
  resizeOrigin = null; // Reset after capturing
26065
26234
  }
26066
26235
  });
26067
26236
  }
26068
26237
 
26069
- /**
26070
- * Safety snap to prevent glyph clipping after manual resize.
26071
- * Similar to Polotno - checks if any glyphs are too close to edges
26072
- * and automatically expands width if needed.
26073
- * @private
26074
- * @param resizeOrigin - Which side was used for resizing ('left' or 'right')
26238
+ /**
26239
+ * Safety snap to prevent glyph clipping after manual resize.
26240
+ * Similar to Polotno - checks if any glyphs are too close to edges
26241
+ * and automatically expands width if needed.
26242
+ * @private
26243
+ * @param resizeOrigin - Which side was used for resizing ('left' or 'right')
26075
26244
  */
26076
26245
  safetySnapWidth(resizeOrigin) {
26077
- var _this$_textLines;
26078
- console.log('🔍 safetySnapWidth called', {
26079
- isWrapping: this.isWrapping,
26080
- hasTextLines: !!this._textLines,
26081
- lineCount: ((_this$_textLines = this._textLines) === null || _this$_textLines === void 0 ? void 0 : _this$_textLines.length) || 0,
26082
- currentWidth: this.width,
26083
- type: this.type,
26084
- text: this.text
26085
- });
26086
-
26087
26246
  // For Textbox objects, we always want to check for clipping regardless of isWrapping flag
26088
26247
  if (!this._textLines || this.type.toLowerCase() !== 'textbox' || this._textLines.length === 0) {
26089
- var _this$_textLines2;
26090
- console.log('❌ Early return - missing requirements', {
26091
- hasTextLines: !!this._textLines,
26092
- typeMatch: this.type.toLowerCase() === 'textbox',
26093
- actualType: this.type,
26094
- hasLines: ((_this$_textLines2 = this._textLines) === null || _this$_textLines2 === void 0 ? void 0 : _this$_textLines2.length) > 0
26095
- });
26096
26248
  return;
26097
26249
  }
26098
26250
  const lineCount = this._textLines.length;
26099
26251
  if (lineCount === 0) return;
26100
-
26101
- // Check all lines, not just the last one
26102
- let maxActualLineWidth = 0; // Actual measured width without buffers
26103
26252
  let maxRequiredWidth = 0; // Width including RTL buffer
26104
26253
 
26105
26254
  for (let i = 0; i < lineCount; i++) {
26106
26255
  const lineText = this._textLines[i].join(''); // Convert grapheme array to string
26107
26256
  const lineWidth = this.getLineWidth(i);
26108
- maxActualLineWidth = Math.max(maxActualLineWidth, lineWidth);
26109
26257
 
26110
26258
  // RTL detection - regex for Arabic, Hebrew, and other RTL characters
26111
26259
  const rtlRegex = /[\u0590-\u05FF\u0600-\u06FF\u0750-\u077F\uFB50-\uFDFF\uFE70-\uFEFF]/;
@@ -26125,11 +26273,6 @@ class Textbox extends IText {
26125
26273
  var _this$canvas2;
26126
26274
  // Set width to exactly what's needed + minimal safety margin
26127
26275
  const newWidth = maxRequiredWidth + 1; // Add just 1px safety margin
26128
- console.log(`Safety snap: ${this.width.toFixed(0)}px -> ${newWidth.toFixed(0)}px`, {
26129
- maxActualLineWidth: maxActualLineWidth.toFixed(1),
26130
- maxRequiredWidth: maxRequiredWidth.toFixed(1),
26131
- difference: (newWidth - this.width).toFixed(1)
26132
- });
26133
26276
 
26134
26277
  // Store original position before width change
26135
26278
  const originalLeft = this.left;
@@ -26145,19 +26288,12 @@ class Textbox extends IText {
26145
26288
  // Only compensate position when resizing from left handle
26146
26289
  // Right handle resize doesn't shift the text position
26147
26290
  if (resizeOrigin === 'left') {
26148
- console.log('🔧 Compensating for left-side resize', {
26149
- originalLeft,
26150
- widthIncrease,
26151
- newLeft: originalLeft - widthIncrease
26152
- });
26153
26291
  // When resizing from left, the expansion pushes text right
26154
26292
  // Compensate by moving the textbox left by the width increase
26155
26293
  this.set({
26156
26294
  'left': originalLeft - widthIncrease,
26157
26295
  'top': originalTop
26158
26296
  });
26159
- } else {
26160
- console.log('✅ Right-side resize, no compensation needed');
26161
26297
  }
26162
26298
  this.setCoords();
26163
26299
 
@@ -26171,31 +26307,31 @@ class Textbox extends IText {
26171
26307
  }
26172
26308
  }
26173
26309
 
26174
- /**
26175
- * Returns object representation of an instance
26176
- * @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
26177
- * @return {Object} object representation of an instance
26310
+ /**
26311
+ * Returns object representation of an instance
26312
+ * @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
26313
+ * @return {Object} object representation of an instance
26178
26314
  */
26179
26315
  toObject() {
26180
26316
  let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
26181
26317
  return super.toObject(['minWidth', 'splitByGrapheme', ...propertiesToInclude]);
26182
26318
  }
26183
26319
  }
26184
- /**
26185
- * Minimum width of textbox, in pixels.
26186
- * @type Number
26187
- */
26188
- /**
26189
- * Minimum calculated width of a textbox, in pixels.
26190
- * fixed to 2 so that an empty textbox cannot go to 0
26191
- * and is still selectable without text.
26192
- * @type Number
26193
- */
26194
- /**
26195
- * Use this boolean property in order to split strings that have no white space concept.
26196
- * this is a cheap way to help with chinese/japanese
26197
- * @type Boolean
26198
- * @since 2.6.0
26320
+ /**
26321
+ * Minimum width of textbox, in pixels.
26322
+ * @type Number
26323
+ */
26324
+ /**
26325
+ * Minimum calculated width of a textbox, in pixels.
26326
+ * fixed to 2 so that an empty textbox cannot go to 0
26327
+ * and is still selectable without text.
26328
+ * @type Number
26329
+ */
26330
+ /**
26331
+ * Use this boolean property in order to split strings that have no white space concept.
26332
+ * this is a cheap way to help with chinese/japanese
26333
+ * @type Boolean
26334
+ * @since 2.6.0
26199
26335
  */
26200
26336
  _defineProperty(Textbox, "type", 'Textbox');
26201
26337
  _defineProperty(Textbox, "textLayoutProperties", [...IText.textLayoutProperties, 'width']);