fabric 7.4.0 → 7.5.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2408) hide show
  1. package/README.md +76 -11
  2. package/dist/fabric.min.mjs +1 -1
  3. package/dist/fabric.mjs +1 -57
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1480 -1368
  7. package/dist/index.js.map +1 -1
  8. package/dist/index.min.js +71 -39
  9. package/dist/index.min.js.map +1 -1
  10. package/dist/index.min.mjs +1 -440
  11. package/dist/index.mjs +1 -22871
  12. package/dist/index.node.cjs +4698 -4605
  13. package/dist/index.node.cjs.map +1 -1
  14. package/dist/index.node.d.ts +1 -19
  15. package/dist/index.node.d.ts.map +1 -1
  16. package/dist/index.node.mjs +1 -22721
  17. package/dist-extensions/extensions/index.d.ts +5 -9
  18. package/dist-extensions/extensions/index.d.ts.map +1 -1
  19. package/dist-extensions/fabric-extensions.min.js +1 -1
  20. package/dist-extensions/fabric-extensions.min.js.map +1 -1
  21. package/dist-extensions/index.mjs +5 -9
  22. package/package.json +74 -60
  23. package/.agents/skills/fabricjs-open-pr/SKILL.md +0 -134
  24. package/.browserslistrc +0 -8
  25. package/.editorconfig +0 -12
  26. package/.gitattributes +0 -2
  27. package/.gitpod.yml +0 -22
  28. package/.husky/pre-commit +0 -1
  29. package/.nvmrc +0 -1
  30. package/.oxfmtrc.json +0 -32
  31. package/AGENTS.md +0 -91
  32. package/CHANGELOG.md +0 -2137
  33. package/CODE_OF_CONDUCT.md +0 -15
  34. package/CONTRIBUTING.md +0 -201
  35. package/CONTRIBUTOR_LADDER.md +0 -124
  36. package/SCORECARD_REMEDIATION_PLAN.md +0 -78
  37. package/SECURITY.md +0 -12
  38. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/defineProperty.min.mjs +0 -1
  39. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/defineProperty.mjs +0 -12
  40. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPrimitive.min.mjs +0 -1
  41. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPrimitive.mjs +0 -14
  42. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPropertyKey.min.mjs +0 -1
  43. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPropertyKey.mjs +0 -9
  44. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/typeof.min.mjs +0 -1
  45. package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/typeof.mjs +0 -11
  46. package/dist/_virtual/_rolldown/runtime.min.mjs +0 -1
  47. package/dist/_virtual/_rolldown/runtime.mjs +0 -13
  48. package/dist/fabric.d.ts +0 -116
  49. package/dist/fabric.d.ts.map +0 -1
  50. package/dist/index.min.mjs.map +0 -1
  51. package/dist/index.mjs.map +0 -1
  52. package/dist/index.node.mjs.map +0 -1
  53. package/dist/package.min.mjs +0 -2
  54. package/dist/package.min.mjs.map +0 -1
  55. package/dist/package.mjs +0 -6
  56. package/dist/package.mjs.map +0 -1
  57. package/dist/src/ClassRegistry.d.ts +0 -14
  58. package/dist/src/ClassRegistry.d.ts.map +0 -1
  59. package/dist/src/ClassRegistry.min.mjs +0 -2
  60. package/dist/src/ClassRegistry.min.mjs.map +0 -1
  61. package/dist/src/ClassRegistry.mjs +0 -35
  62. package/dist/src/ClassRegistry.mjs.map +0 -1
  63. package/dist/src/Collection.d.ts +0 -141
  64. package/dist/src/Collection.d.ts.map +0 -1
  65. package/dist/src/Collection.min.mjs +0 -2
  66. package/dist/src/Collection.min.mjs.map +0 -1
  67. package/dist/src/Collection.mjs +0 -257
  68. package/dist/src/Collection.mjs.map +0 -1
  69. package/dist/src/CommonMethods.d.ts +0 -32
  70. package/dist/src/CommonMethods.d.ts.map +0 -1
  71. package/dist/src/CommonMethods.min.mjs +0 -2
  72. package/dist/src/CommonMethods.min.mjs.map +0 -1
  73. package/dist/src/CommonMethods.mjs +0 -52
  74. package/dist/src/CommonMethods.mjs.map +0 -1
  75. package/dist/src/EventTypeDefs.d.ts +0 -283
  76. package/dist/src/EventTypeDefs.d.ts.map +0 -1
  77. package/dist/src/Intersection.d.ts +0 -112
  78. package/dist/src/Intersection.d.ts.map +0 -1
  79. package/dist/src/Intersection.min.mjs +0 -2
  80. package/dist/src/Intersection.min.mjs.map +0 -1
  81. package/dist/src/Intersection.mjs +0 -189
  82. package/dist/src/Intersection.mjs.map +0 -1
  83. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -22
  84. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -1
  85. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs +0 -2
  86. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs.map +0 -1
  87. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs +0 -48
  88. package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs.map +0 -1
  89. package/dist/src/LayoutManager/LayoutManager.d.ts +0 -56
  90. package/dist/src/LayoutManager/LayoutManager.d.ts.map +0 -1
  91. package/dist/src/LayoutManager/LayoutManager.min.mjs +0 -2
  92. package/dist/src/LayoutManager/LayoutManager.min.mjs.map +0 -1
  93. package/dist/src/LayoutManager/LayoutManager.mjs +0 -199
  94. package/dist/src/LayoutManager/LayoutManager.mjs.map +0 -1
  95. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -13
  96. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -1
  97. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs +0 -2
  98. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs.map +0 -1
  99. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs +0 -50
  100. package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs.map +0 -1
  101. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -14
  102. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -1
  103. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs +0 -2
  104. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs.map +0 -1
  105. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs +0 -22
  106. package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs.map +0 -1
  107. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -14
  108. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -1
  109. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs +0 -2
  110. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs.map +0 -1
  111. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs +0 -22
  112. package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs.map +0 -1
  113. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -30
  114. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -1
  115. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs +0 -2
  116. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs.map +0 -1
  117. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs +0 -62
  118. package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs.map +0 -1
  119. package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -10
  120. package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -1
  121. package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs +0 -2
  122. package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs.map +0 -1
  123. package/dist/src/LayoutManager/LayoutStrategies/utils.mjs +0 -24
  124. package/dist/src/LayoutManager/LayoutStrategies/utils.mjs.map +0 -1
  125. package/dist/src/LayoutManager/constants.d.ts +0 -7
  126. package/dist/src/LayoutManager/constants.d.ts.map +0 -1
  127. package/dist/src/LayoutManager/constants.min.mjs +0 -2
  128. package/dist/src/LayoutManager/constants.min.mjs.map +0 -1
  129. package/dist/src/LayoutManager/constants.mjs +0 -11
  130. package/dist/src/LayoutManager/constants.mjs.map +0 -1
  131. package/dist/src/LayoutManager/index.d.ts +0 -7
  132. package/dist/src/LayoutManager/index.d.ts.map +0 -1
  133. package/dist/src/LayoutManager/types.d.ts +0 -106
  134. package/dist/src/LayoutManager/types.d.ts.map +0 -1
  135. package/dist/src/Observable.d.ts +0 -68
  136. package/dist/src/Observable.d.ts.map +0 -1
  137. package/dist/src/Observable.min.mjs +0 -2
  138. package/dist/src/Observable.min.mjs.map +0 -1
  139. package/dist/src/Observable.mjs +0 -76
  140. package/dist/src/Observable.mjs.map +0 -1
  141. package/dist/src/Pattern/Pattern.d.ts +0 -95
  142. package/dist/src/Pattern/Pattern.d.ts.map +0 -1
  143. package/dist/src/Pattern/Pattern.min.mjs +0 -3
  144. package/dist/src/Pattern/Pattern.min.mjs.map +0 -1
  145. package/dist/src/Pattern/Pattern.mjs +0 -147
  146. package/dist/src/Pattern/Pattern.mjs.map +0 -1
  147. package/dist/src/Pattern/index.d.ts +0 -3
  148. package/dist/src/Pattern/index.d.ts.map +0 -1
  149. package/dist/src/Pattern/types.d.ts +0 -12
  150. package/dist/src/Pattern/types.d.ts.map +0 -1
  151. package/dist/src/Point.d.ts +0 -219
  152. package/dist/src/Point.d.ts.map +0 -1
  153. package/dist/src/Point.min.mjs +0 -2
  154. package/dist/src/Point.min.mjs.map +0 -1
  155. package/dist/src/Point.mjs +0 -316
  156. package/dist/src/Point.mjs.map +0 -1
  157. package/dist/src/Shadow.d.ts +0 -89
  158. package/dist/src/Shadow.d.ts.map +0 -1
  159. package/dist/src/Shadow.min.mjs +0 -2
  160. package/dist/src/Shadow.min.mjs.map +0 -1
  161. package/dist/src/Shadow.mjs +0 -116
  162. package/dist/src/Shadow.mjs.map +0 -1
  163. package/dist/src/brushes/BaseBrush.d.ts +0 -94
  164. package/dist/src/brushes/BaseBrush.d.ts.map +0 -1
  165. package/dist/src/brushes/BaseBrush.min.mjs +0 -2
  166. package/dist/src/brushes/BaseBrush.min.mjs.map +0 -1
  167. package/dist/src/brushes/BaseBrush.mjs +0 -145
  168. package/dist/src/brushes/BaseBrush.mjs.map +0 -1
  169. package/dist/src/brushes/CircleBrush.d.ts +0 -43
  170. package/dist/src/brushes/CircleBrush.d.ts.map +0 -1
  171. package/dist/src/brushes/CircleBrush.min.mjs +0 -2
  172. package/dist/src/brushes/CircleBrush.min.mjs.map +0 -1
  173. package/dist/src/brushes/CircleBrush.mjs +0 -118
  174. package/dist/src/brushes/CircleBrush.mjs.map +0 -1
  175. package/dist/src/brushes/PatternBrush.d.ts +0 -23
  176. package/dist/src/brushes/PatternBrush.d.ts.map +0 -1
  177. package/dist/src/brushes/PatternBrush.min.mjs +0 -2
  178. package/dist/src/brushes/PatternBrush.min.mjs.map +0 -1
  179. package/dist/src/brushes/PatternBrush.mjs +0 -53
  180. package/dist/src/brushes/PatternBrush.mjs.map +0 -1
  181. package/dist/src/brushes/PencilBrush.d.ts +0 -92
  182. package/dist/src/brushes/PencilBrush.d.ts.map +0 -1
  183. package/dist/src/brushes/PencilBrush.min.mjs +0 -2
  184. package/dist/src/brushes/PencilBrush.min.mjs.map +0 -1
  185. package/dist/src/brushes/PencilBrush.mjs +0 -233
  186. package/dist/src/brushes/PencilBrush.mjs.map +0 -1
  187. package/dist/src/brushes/SprayBrush.d.ts +0 -68
  188. package/dist/src/brushes/SprayBrush.d.ts.map +0 -1
  189. package/dist/src/brushes/SprayBrush.min.mjs +0 -2
  190. package/dist/src/brushes/SprayBrush.min.mjs.map +0 -1
  191. package/dist/src/brushes/SprayBrush.mjs +0 -187
  192. package/dist/src/brushes/SprayBrush.mjs.map +0 -1
  193. package/dist/src/brushes/typedefs.d.ts +0 -18
  194. package/dist/src/brushes/typedefs.d.ts.map +0 -1
  195. package/dist/src/cache.d.ts +0 -49
  196. package/dist/src/cache.d.ts.map +0 -1
  197. package/dist/src/cache.min.mjs +0 -2
  198. package/dist/src/cache.min.mjs.map +0 -1
  199. package/dist/src/cache.mjs +0 -64
  200. package/dist/src/cache.mjs.map +0 -1
  201. package/dist/src/canvas/Canvas.d.ts +0 -354
  202. package/dist/src/canvas/Canvas.d.ts.map +0 -1
  203. package/dist/src/canvas/Canvas.min.mjs +0 -2
  204. package/dist/src/canvas/Canvas.min.mjs.map +0 -1
  205. package/dist/src/canvas/Canvas.mjs +0 -1006
  206. package/dist/src/canvas/Canvas.mjs.map +0 -1
  207. package/dist/src/canvas/CanvasOptions.d.ts +0 -219
  208. package/dist/src/canvas/CanvasOptions.d.ts.map +0 -1
  209. package/dist/src/canvas/CanvasOptions.min.mjs +0 -2
  210. package/dist/src/canvas/CanvasOptions.min.mjs.map +0 -1
  211. package/dist/src/canvas/CanvasOptions.mjs +0 -34
  212. package/dist/src/canvas/CanvasOptions.mjs.map +0 -1
  213. package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -30
  214. package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -1
  215. package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs +0 -2
  216. package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs.map +0 -1
  217. package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs +0 -92
  218. package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs.map +0 -1
  219. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -29
  220. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -1
  221. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs +0 -2
  222. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs.map +0 -1
  223. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs +0 -55
  224. package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs.map +0 -1
  225. package/dist/src/canvas/DOMManagers/util.d.ts +0 -23
  226. package/dist/src/canvas/DOMManagers/util.d.ts.map +0 -1
  227. package/dist/src/canvas/DOMManagers/util.min.mjs +0 -2
  228. package/dist/src/canvas/DOMManagers/util.min.mjs.map +0 -1
  229. package/dist/src/canvas/DOMManagers/util.mjs +0 -59
  230. package/dist/src/canvas/DOMManagers/util.mjs.map +0 -1
  231. package/dist/src/canvas/SelectableCanvas.d.ts +0 -552
  232. package/dist/src/canvas/SelectableCanvas.d.ts.map +0 -1
  233. package/dist/src/canvas/SelectableCanvas.min.mjs +0 -2
  234. package/dist/src/canvas/SelectableCanvas.min.mjs.map +0 -1
  235. package/dist/src/canvas/SelectableCanvas.mjs +0 -935
  236. package/dist/src/canvas/SelectableCanvas.mjs.map +0 -1
  237. package/dist/src/canvas/StaticCanvas.d.ts +0 -607
  238. package/dist/src/canvas/StaticCanvas.d.ts.map +0 -1
  239. package/dist/src/canvas/StaticCanvas.min.mjs +0 -11
  240. package/dist/src/canvas/StaticCanvas.min.mjs.map +0 -1
  241. package/dist/src/canvas/StaticCanvas.mjs +0 -934
  242. package/dist/src/canvas/StaticCanvas.mjs.map +0 -1
  243. package/dist/src/canvas/StaticCanvasOptions.d.ts +0 -142
  244. package/dist/src/canvas/StaticCanvasOptions.d.ts.map +0 -1
  245. package/dist/src/canvas/StaticCanvasOptions.min.mjs +0 -2
  246. package/dist/src/canvas/StaticCanvasOptions.min.mjs.map +0 -1
  247. package/dist/src/canvas/StaticCanvasOptions.mjs +0 -22
  248. package/dist/src/canvas/StaticCanvasOptions.mjs.map +0 -1
  249. package/dist/src/canvas/TextEditingManager.d.ts +0 -21
  250. package/dist/src/canvas/TextEditingManager.d.ts.map +0 -1
  251. package/dist/src/canvas/TextEditingManager.min.mjs +0 -2
  252. package/dist/src/canvas/TextEditingManager.min.mjs.map +0 -1
  253. package/dist/src/canvas/TextEditingManager.mjs +0 -55
  254. package/dist/src/canvas/TextEditingManager.mjs.map +0 -1
  255. package/dist/src/canvas/canvas_gestures.mixin.d.ts +0 -2
  256. package/dist/src/canvas/canvas_gestures.mixin.d.ts.map +0 -1
  257. package/dist/src/color/Color.d.ts +0 -146
  258. package/dist/src/color/Color.d.ts.map +0 -1
  259. package/dist/src/color/Color.min.mjs +0 -2
  260. package/dist/src/color/Color.min.mjs.map +0 -1
  261. package/dist/src/color/Color.mjs +0 -294
  262. package/dist/src/color/Color.mjs.map +0 -1
  263. package/dist/src/color/color_map.d.ts +0 -155
  264. package/dist/src/color/color_map.d.ts.map +0 -1
  265. package/dist/src/color/color_map.min.mjs +0 -2
  266. package/dist/src/color/color_map.min.mjs.map +0 -1
  267. package/dist/src/color/color_map.mjs +0 -159
  268. package/dist/src/color/color_map.mjs.map +0 -1
  269. package/dist/src/color/constants.d.ts +0 -117
  270. package/dist/src/color/constants.d.ts.map +0 -1
  271. package/dist/src/color/constants.min.mjs +0 -2
  272. package/dist/src/color/constants.min.mjs.map +0 -1
  273. package/dist/src/color/constants.mjs +0 -121
  274. package/dist/src/color/constants.mjs.map +0 -1
  275. package/dist/src/color/typedefs.d.ts +0 -16
  276. package/dist/src/color/typedefs.d.ts.map +0 -1
  277. package/dist/src/color/util.d.ts +0 -27
  278. package/dist/src/color/util.d.ts.map +0 -1
  279. package/dist/src/color/util.min.mjs +0 -2
  280. package/dist/src/color/util.min.mjs.map +0 -1
  281. package/dist/src/color/util.mjs +0 -75
  282. package/dist/src/color/util.mjs.map +0 -1
  283. package/dist/src/config.d.ts +0 -113
  284. package/dist/src/config.d.ts.map +0 -1
  285. package/dist/src/config.min.mjs +0 -2
  286. package/dist/src/config.min.mjs.map +0 -1
  287. package/dist/src/config.mjs +0 -193
  288. package/dist/src/config.mjs.map +0 -1
  289. package/dist/src/constants.d.ts +0 -40
  290. package/dist/src/constants.d.ts.map +0 -1
  291. package/dist/src/constants.min.mjs +0 -2
  292. package/dist/src/constants.min.mjs.map +0 -1
  293. package/dist/src/constants.mjs +0 -45
  294. package/dist/src/constants.mjs.map +0 -1
  295. package/dist/src/controls/Control.d.ts +0 -250
  296. package/dist/src/controls/Control.d.ts.map +0 -1
  297. package/dist/src/controls/Control.min.mjs +0 -2
  298. package/dist/src/controls/Control.min.mjs.map +0 -1
  299. package/dist/src/controls/Control.mjs +0 -326
  300. package/dist/src/controls/Control.mjs.map +0 -1
  301. package/dist/src/controls/changeWidth.d.ts +0 -35
  302. package/dist/src/controls/changeWidth.d.ts.map +0 -1
  303. package/dist/src/controls/changeWidth.min.mjs +0 -2
  304. package/dist/src/controls/changeWidth.min.mjs.map +0 -1
  305. package/dist/src/controls/changeWidth.mjs +0 -52
  306. package/dist/src/controls/changeWidth.mjs.map +0 -1
  307. package/dist/src/controls/commonControls.d.ts +0 -28
  308. package/dist/src/controls/commonControls.d.ts.map +0 -1
  309. package/dist/src/controls/commonControls.min.mjs +0 -2
  310. package/dist/src/controls/commonControls.min.mjs.map +0 -1
  311. package/dist/src/controls/commonControls.mjs +0 -94
  312. package/dist/src/controls/commonControls.mjs.map +0 -1
  313. package/dist/src/controls/controlRendering.d.ts +0 -29
  314. package/dist/src/controls/controlRendering.d.ts.map +0 -1
  315. package/dist/src/controls/controlRendering.min.mjs +0 -2
  316. package/dist/src/controls/controlRendering.min.mjs.map +0 -1
  317. package/dist/src/controls/controlRendering.mjs +0 -50
  318. package/dist/src/controls/controlRendering.mjs.map +0 -1
  319. package/dist/src/controls/drag.d.ts +0 -12
  320. package/dist/src/controls/drag.d.ts.map +0 -1
  321. package/dist/src/controls/drag.min.mjs +0 -2
  322. package/dist/src/controls/drag.min.mjs.map +0 -1
  323. package/dist/src/controls/drag.mjs +0 -24
  324. package/dist/src/controls/drag.mjs.map +0 -1
  325. package/dist/src/controls/fireEvent.d.ts +0 -3
  326. package/dist/src/controls/fireEvent.d.ts.map +0 -1
  327. package/dist/src/controls/fireEvent.min.mjs +0 -2
  328. package/dist/src/controls/fireEvent.min.mjs.map +0 -1
  329. package/dist/src/controls/fireEvent.mjs +0 -14
  330. package/dist/src/controls/fireEvent.mjs.map +0 -1
  331. package/dist/src/controls/index.d.ts +0 -15
  332. package/dist/src/controls/index.d.ts.map +0 -1
  333. package/dist/src/controls/index.min.mjs +0 -2
  334. package/dist/src/controls/index.min.mjs.map +0 -1
  335. package/dist/src/controls/index.mjs +0 -53
  336. package/dist/src/controls/index.mjs.map +0 -1
  337. package/dist/src/controls/pathControl.d.ts +0 -12
  338. package/dist/src/controls/pathControl.d.ts.map +0 -1
  339. package/dist/src/controls/pathControl.min.mjs +0 -2
  340. package/dist/src/controls/pathControl.min.mjs.map +0 -1
  341. package/dist/src/controls/pathControl.mjs +0 -126
  342. package/dist/src/controls/pathControl.mjs.map +0 -1
  343. package/dist/src/controls/polyControl.d.ts +0 -30
  344. package/dist/src/controls/polyControl.d.ts.map +0 -1
  345. package/dist/src/controls/polyControl.min.mjs +0 -2
  346. package/dist/src/controls/polyControl.min.mjs.map +0 -1
  347. package/dist/src/controls/polyControl.mjs +0 -64
  348. package/dist/src/controls/polyControl.mjs.map +0 -1
  349. package/dist/src/controls/rotate.d.ts +0 -12
  350. package/dist/src/controls/rotate.d.ts.map +0 -1
  351. package/dist/src/controls/rotate.min.mjs +0 -2
  352. package/dist/src/controls/rotate.min.mjs.map +0 -1
  353. package/dist/src/controls/rotate.mjs +0 -49
  354. package/dist/src/controls/rotate.mjs.map +0 -1
  355. package/dist/src/controls/scale.d.ts +0 -42
  356. package/dist/src/controls/scale.d.ts.map +0 -1
  357. package/dist/src/controls/scale.min.mjs +0 -2
  358. package/dist/src/controls/scale.min.mjs.map +0 -1
  359. package/dist/src/controls/scale.mjs +0 -159
  360. package/dist/src/controls/scale.mjs.map +0 -1
  361. package/dist/src/controls/scaleSkew.d.ts +0 -39
  362. package/dist/src/controls/scaleSkew.d.ts.map +0 -1
  363. package/dist/src/controls/scaleSkew.min.mjs +0 -2
  364. package/dist/src/controls/scaleSkew.min.mjs.map +0 -1
  365. package/dist/src/controls/scaleSkew.mjs +0 -58
  366. package/dist/src/controls/scaleSkew.mjs.map +0 -1
  367. package/dist/src/controls/skew.d.ts +0 -33
  368. package/dist/src/controls/skew.d.ts.map +0 -1
  369. package/dist/src/controls/skew.min.mjs +0 -2
  370. package/dist/src/controls/skew.min.mjs.map +0 -1
  371. package/dist/src/controls/skew.mjs +0 -114
  372. package/dist/src/controls/skew.mjs.map +0 -1
  373. package/dist/src/controls/util.d.ts +0 -42
  374. package/dist/src/controls/util.d.ts.map +0 -1
  375. package/dist/src/controls/util.min.mjs +0 -2
  376. package/dist/src/controls/util.min.mjs.map +0 -1
  377. package/dist/src/controls/util.mjs +0 -81
  378. package/dist/src/controls/util.mjs.map +0 -1
  379. package/dist/src/controls/wrapWithFireEvent.d.ts +0 -10
  380. package/dist/src/controls/wrapWithFireEvent.d.ts.map +0 -1
  381. package/dist/src/controls/wrapWithFireEvent.min.mjs +0 -2
  382. package/dist/src/controls/wrapWithFireEvent.min.mjs.map +0 -1
  383. package/dist/src/controls/wrapWithFireEvent.mjs +0 -24
  384. package/dist/src/controls/wrapWithFireEvent.mjs.map +0 -1
  385. package/dist/src/controls/wrapWithFixedAnchor.d.ts +0 -9
  386. package/dist/src/controls/wrapWithFixedAnchor.d.ts.map +0 -1
  387. package/dist/src/controls/wrapWithFixedAnchor.min.mjs +0 -2
  388. package/dist/src/controls/wrapWithFixedAnchor.min.mjs.map +0 -1
  389. package/dist/src/controls/wrapWithFixedAnchor.mjs +0 -18
  390. package/dist/src/controls/wrapWithFixedAnchor.mjs.map +0 -1
  391. package/dist/src/env/browser.d.ts +0 -3
  392. package/dist/src/env/browser.d.ts.map +0 -1
  393. package/dist/src/env/browser.min.mjs +0 -2
  394. package/dist/src/env/browser.min.mjs.map +0 -1
  395. package/dist/src/env/browser.mjs +0 -17
  396. package/dist/src/env/browser.mjs.map +0 -1
  397. package/dist/src/env/index.d.ts +0 -34
  398. package/dist/src/env/index.d.ts.map +0 -1
  399. package/dist/src/env/index.min.mjs +0 -2
  400. package/dist/src/env/index.min.mjs.map +0 -1
  401. package/dist/src/env/index.mjs +0 -44
  402. package/dist/src/env/index.mjs.map +0 -1
  403. package/dist/src/env/node.d.ts +0 -6
  404. package/dist/src/env/node.d.ts.map +0 -1
  405. package/dist/src/env/types.d.ts +0 -16
  406. package/dist/src/env/types.d.ts.map +0 -1
  407. package/dist/src/filters/BaseFilter.d.ts +0 -153
  408. package/dist/src/filters/BaseFilter.d.ts.map +0 -1
  409. package/dist/src/filters/BaseFilter.min.mjs +0 -2
  410. package/dist/src/filters/BaseFilter.min.mjs.map +0 -1
  411. package/dist/src/filters/BaseFilter.mjs +0 -261
  412. package/dist/src/filters/BaseFilter.mjs.map +0 -1
  413. package/dist/src/filters/BlendColor.d.ts +0 -65
  414. package/dist/src/filters/BlendColor.d.ts.map +0 -1
  415. package/dist/src/filters/BlendColor.min.mjs +0 -2
  416. package/dist/src/filters/BlendColor.min.mjs.map +0 -1
  417. package/dist/src/filters/BlendColor.mjs +0 -143
  418. package/dist/src/filters/BlendColor.mjs.map +0 -1
  419. package/dist/src/filters/BlendImage.d.ts +0 -97
  420. package/dist/src/filters/BlendImage.d.ts.map +0 -1
  421. package/dist/src/filters/BlendImage.min.mjs +0 -2
  422. package/dist/src/filters/BlendImage.min.mjs.map +0 -1
  423. package/dist/src/filters/BlendImage.mjs +0 -151
  424. package/dist/src/filters/BlendImage.mjs.map +0 -1
  425. package/dist/src/filters/Blur.d.ts +0 -49
  426. package/dist/src/filters/Blur.d.ts.map +0 -1
  427. package/dist/src/filters/Blur.min.mjs +0 -2
  428. package/dist/src/filters/Blur.min.mjs.map +0 -1
  429. package/dist/src/filters/Blur.mjs +0 -129
  430. package/dist/src/filters/Blur.mjs.map +0 -1
  431. package/dist/src/filters/Boilerplate.d.ts +0 -45
  432. package/dist/src/filters/Boilerplate.d.ts.map +0 -1
  433. package/dist/src/filters/Brightness.d.ts +0 -45
  434. package/dist/src/filters/Brightness.d.ts.map +0 -1
  435. package/dist/src/filters/Brightness.min.mjs +0 -2
  436. package/dist/src/filters/Brightness.min.mjs.map +0 -1
  437. package/dist/src/filters/Brightness.mjs +0 -54
  438. package/dist/src/filters/Brightness.mjs.map +0 -1
  439. package/dist/src/filters/Canvas2dFilterBackend.d.ts +0 -27
  440. package/dist/src/filters/Canvas2dFilterBackend.d.ts.map +0 -1
  441. package/dist/src/filters/Canvas2dFilterBackend.min.mjs +0 -2
  442. package/dist/src/filters/Canvas2dFilterBackend.min.mjs.map +0 -1
  443. package/dist/src/filters/Canvas2dFilterBackend.mjs +0 -60
  444. package/dist/src/filters/Canvas2dFilterBackend.mjs.map +0 -1
  445. package/dist/src/filters/ColorMatrix.d.ts +0 -62
  446. package/dist/src/filters/ColorMatrix.d.ts.map +0 -1
  447. package/dist/src/filters/ColorMatrix.min.mjs +0 -2
  448. package/dist/src/filters/ColorMatrix.min.mjs.map +0 -1
  449. package/dist/src/filters/ColorMatrix.mjs +0 -122
  450. package/dist/src/filters/ColorMatrix.mjs.map +0 -1
  451. package/dist/src/filters/ColorMatrixFilters.d.ts +0 -15
  452. package/dist/src/filters/ColorMatrixFilters.d.ts.map +0 -1
  453. package/dist/src/filters/ColorMatrixFilters.min.mjs +0 -2
  454. package/dist/src/filters/ColorMatrixFilters.min.mjs.map +0 -1
  455. package/dist/src/filters/ColorMatrixFilters.mjs +0 -178
  456. package/dist/src/filters/ColorMatrixFilters.mjs.map +0 -1
  457. package/dist/src/filters/Composed.d.ts +0 -51
  458. package/dist/src/filters/Composed.d.ts.map +0 -1
  459. package/dist/src/filters/Composed.min.mjs +0 -2
  460. package/dist/src/filters/Composed.min.mjs.map +0 -1
  461. package/dist/src/filters/Composed.mjs +0 -55
  462. package/dist/src/filters/Composed.mjs.map +0 -1
  463. package/dist/src/filters/Contrast.d.ts +0 -44
  464. package/dist/src/filters/Contrast.d.ts.map +0 -1
  465. package/dist/src/filters/Contrast.min.mjs +0 -2
  466. package/dist/src/filters/Contrast.min.mjs.map +0 -1
  467. package/dist/src/filters/Contrast.mjs +0 -54
  468. package/dist/src/filters/Contrast.mjs.map +0 -1
  469. package/dist/src/filters/Convolute.d.ts +0 -81
  470. package/dist/src/filters/Convolute.d.ts.map +0 -1
  471. package/dist/src/filters/Convolute.min.mjs +0 -2
  472. package/dist/src/filters/Convolute.min.mjs.map +0 -1
  473. package/dist/src/filters/Convolute.mjs +0 -134
  474. package/dist/src/filters/Convolute.mjs.map +0 -1
  475. package/dist/src/filters/FilterBackend.d.ts +0 -15
  476. package/dist/src/filters/FilterBackend.d.ts.map +0 -1
  477. package/dist/src/filters/FilterBackend.min.mjs +0 -2
  478. package/dist/src/filters/FilterBackend.min.mjs.map +0 -1
  479. package/dist/src/filters/FilterBackend.mjs +0 -32
  480. package/dist/src/filters/FilterBackend.mjs.map +0 -1
  481. package/dist/src/filters/GLProbes/GLProbe.d.ts +0 -7
  482. package/dist/src/filters/GLProbes/GLProbe.d.ts.map +0 -1
  483. package/dist/src/filters/GLProbes/GLProbe.min.mjs +0 -2
  484. package/dist/src/filters/GLProbes/GLProbe.min.mjs.map +0 -1
  485. package/dist/src/filters/GLProbes/GLProbe.mjs +0 -6
  486. package/dist/src/filters/GLProbes/GLProbe.mjs.map +0 -1
  487. package/dist/src/filters/GLProbes/NodeGLProbe.d.ts +0 -11
  488. package/dist/src/filters/GLProbes/NodeGLProbe.d.ts.map +0 -1
  489. package/dist/src/filters/GLProbes/WebGLProbe.d.ts +0 -20
  490. package/dist/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -1
  491. package/dist/src/filters/GLProbes/WebGLProbe.min.mjs +0 -2
  492. package/dist/src/filters/GLProbes/WebGLProbe.min.mjs.map +0 -1
  493. package/dist/src/filters/GLProbes/WebGLProbe.mjs +0 -45
  494. package/dist/src/filters/GLProbes/WebGLProbe.mjs.map +0 -1
  495. package/dist/src/filters/Gamma.d.ts +0 -57
  496. package/dist/src/filters/Gamma.d.ts.map +0 -1
  497. package/dist/src/filters/Gamma.min.mjs +0 -2
  498. package/dist/src/filters/Gamma.min.mjs.map +0 -1
  499. package/dist/src/filters/Gamma.mjs +0 -81
  500. package/dist/src/filters/Gamma.mjs.map +0 -1
  501. package/dist/src/filters/Grayscale.d.ts +0 -44
  502. package/dist/src/filters/Grayscale.d.ts.map +0 -1
  503. package/dist/src/filters/Grayscale.min.mjs +0 -2
  504. package/dist/src/filters/Grayscale.min.mjs.map +0 -1
  505. package/dist/src/filters/Grayscale.mjs +0 -71
  506. package/dist/src/filters/Grayscale.mjs.map +0 -1
  507. package/dist/src/filters/HueRotation.d.ts +0 -34
  508. package/dist/src/filters/HueRotation.d.ts.map +0 -1
  509. package/dist/src/filters/HueRotation.min.mjs +0 -2
  510. package/dist/src/filters/HueRotation.min.mjs.map +0 -1
  511. package/dist/src/filters/HueRotation.mjs +0 -66
  512. package/dist/src/filters/HueRotation.mjs.map +0 -1
  513. package/dist/src/filters/Invert.d.ts +0 -51
  514. package/dist/src/filters/Invert.d.ts.map +0 -1
  515. package/dist/src/filters/Invert.min.mjs +0 -2
  516. package/dist/src/filters/Invert.min.mjs.map +0 -1
  517. package/dist/src/filters/Invert.mjs +0 -61
  518. package/dist/src/filters/Invert.mjs.map +0 -1
  519. package/dist/src/filters/Noise.d.ts +0 -43
  520. package/dist/src/filters/Noise.d.ts.map +0 -1
  521. package/dist/src/filters/Noise.min.mjs +0 -2
  522. package/dist/src/filters/Noise.min.mjs.map +0 -1
  523. package/dist/src/filters/Noise.mjs +0 -57
  524. package/dist/src/filters/Noise.mjs.map +0 -1
  525. package/dist/src/filters/Pixelate.d.ts +0 -41
  526. package/dist/src/filters/Pixelate.d.ts.map +0 -1
  527. package/dist/src/filters/Pixelate.min.mjs +0 -2
  528. package/dist/src/filters/Pixelate.min.mjs.map +0 -1
  529. package/dist/src/filters/Pixelate.mjs +0 -65
  530. package/dist/src/filters/Pixelate.mjs.map +0 -1
  531. package/dist/src/filters/RemoveColor.d.ts +0 -51
  532. package/dist/src/filters/RemoveColor.d.ts.map +0 -1
  533. package/dist/src/filters/RemoveColor.min.mjs +0 -2
  534. package/dist/src/filters/RemoveColor.min.mjs.map +0 -1
  535. package/dist/src/filters/RemoveColor.mjs +0 -76
  536. package/dist/src/filters/RemoveColor.mjs.map +0 -1
  537. package/dist/src/filters/Resize.d.ts +0 -134
  538. package/dist/src/filters/Resize.d.ts.map +0 -1
  539. package/dist/src/filters/Resize.min.mjs +0 -3
  540. package/dist/src/filters/Resize.min.mjs.map +0 -1
  541. package/dist/src/filters/Resize.mjs +0 -349
  542. package/dist/src/filters/Resize.mjs.map +0 -1
  543. package/dist/src/filters/Saturation.d.ts +0 -45
  544. package/dist/src/filters/Saturation.d.ts.map +0 -1
  545. package/dist/src/filters/Saturation.min.mjs +0 -2
  546. package/dist/src/filters/Saturation.min.mjs.map +0 -1
  547. package/dist/src/filters/Saturation.mjs +0 -58
  548. package/dist/src/filters/Saturation.mjs.map +0 -1
  549. package/dist/src/filters/Vibrance.d.ts +0 -45
  550. package/dist/src/filters/Vibrance.d.ts.map +0 -1
  551. package/dist/src/filters/Vibrance.min.mjs +0 -2
  552. package/dist/src/filters/Vibrance.min.mjs.map +0 -1
  553. package/dist/src/filters/Vibrance.mjs +0 -60
  554. package/dist/src/filters/Vibrance.mjs.map +0 -1
  555. package/dist/src/filters/WebGLFilterBackend.d.ts +0 -131
  556. package/dist/src/filters/WebGLFilterBackend.d.ts.map +0 -1
  557. package/dist/src/filters/WebGLFilterBackend.min.mjs +0 -2
  558. package/dist/src/filters/WebGLFilterBackend.min.mjs.map +0 -1
  559. package/dist/src/filters/WebGLFilterBackend.mjs +0 -260
  560. package/dist/src/filters/WebGLFilterBackend.mjs.map +0 -1
  561. package/dist/src/filters/filters.d.ts +0 -23
  562. package/dist/src/filters/filters.d.ts.map +0 -1
  563. package/dist/src/filters/filters.min.mjs +0 -2
  564. package/dist/src/filters/filters.min.mjs.map +0 -1
  565. package/dist/src/filters/filters.mjs +0 -54
  566. package/dist/src/filters/filters.mjs.map +0 -1
  567. package/dist/src/filters/index.d.ts +0 -7
  568. package/dist/src/filters/index.d.ts.map +0 -1
  569. package/dist/src/filters/shaders/baseFilter.d.ts +0 -4
  570. package/dist/src/filters/shaders/baseFilter.d.ts.map +0 -1
  571. package/dist/src/filters/shaders/baseFilter.min.mjs +0 -8
  572. package/dist/src/filters/shaders/baseFilter.min.mjs.map +0 -1
  573. package/dist/src/filters/shaders/baseFilter.mjs +0 -20
  574. package/dist/src/filters/shaders/baseFilter.mjs.map +0 -1
  575. package/dist/src/filters/shaders/blendColor.d.ts +0 -13
  576. package/dist/src/filters/shaders/blendColor.d.ts.map +0 -1
  577. package/dist/src/filters/shaders/blendColor.min.mjs +0 -29
  578. package/dist/src/filters/shaders/blendColor.min.mjs.map +0 -1
  579. package/dist/src/filters/shaders/blendColor.mjs +0 -36
  580. package/dist/src/filters/shaders/blendColor.mjs.map +0 -1
  581. package/dist/src/filters/shaders/blendImage.d.ts +0 -4
  582. package/dist/src/filters/shaders/blendImage.d.ts.map +0 -1
  583. package/dist/src/filters/shaders/blendImage.min.mjs +0 -38
  584. package/dist/src/filters/shaders/blendImage.min.mjs.map +0 -1
  585. package/dist/src/filters/shaders/blendImage.mjs +0 -46
  586. package/dist/src/filters/shaders/blendImage.mjs.map +0 -1
  587. package/dist/src/filters/shaders/blur.d.ts +0 -2
  588. package/dist/src/filters/shaders/blur.d.ts.map +0 -1
  589. package/dist/src/filters/shaders/blur.min.mjs +0 -31
  590. package/dist/src/filters/shaders/blur.min.mjs.map +0 -1
  591. package/dist/src/filters/shaders/blur.mjs +0 -35
  592. package/dist/src/filters/shaders/blur.mjs.map +0 -1
  593. package/dist/src/filters/shaders/brightness.d.ts +0 -2
  594. package/dist/src/filters/shaders/brightness.d.ts.map +0 -1
  595. package/dist/src/filters/shaders/brightness.min.mjs +0 -12
  596. package/dist/src/filters/shaders/brightness.min.mjs.map +0 -1
  597. package/dist/src/filters/shaders/brightness.mjs +0 -16
  598. package/dist/src/filters/shaders/brightness.mjs.map +0 -1
  599. package/dist/src/filters/shaders/colorMatrix.d.ts +0 -2
  600. package/dist/src/filters/shaders/colorMatrix.d.ts.map +0 -1
  601. package/dist/src/filters/shaders/colorMatrix.min.mjs +0 -13
  602. package/dist/src/filters/shaders/colorMatrix.min.mjs.map +0 -1
  603. package/dist/src/filters/shaders/colorMatrix.mjs +0 -17
  604. package/dist/src/filters/shaders/colorMatrix.mjs.map +0 -1
  605. package/dist/src/filters/shaders/constrast.d.ts +0 -2
  606. package/dist/src/filters/shaders/constrast.d.ts.map +0 -1
  607. package/dist/src/filters/shaders/constrast.min.mjs +0 -12
  608. package/dist/src/filters/shaders/constrast.min.mjs.map +0 -1
  609. package/dist/src/filters/shaders/constrast.mjs +0 -16
  610. package/dist/src/filters/shaders/constrast.mjs.map +0 -1
  611. package/dist/src/filters/shaders/convolute.d.ts +0 -11
  612. package/dist/src/filters/shaders/convolute.d.ts.map +0 -1
  613. package/dist/src/filters/shaders/convolute.min.mjs +0 -146
  614. package/dist/src/filters/shaders/convolute.min.mjs.map +0 -1
  615. package/dist/src/filters/shaders/convolute.mjs +0 -159
  616. package/dist/src/filters/shaders/convolute.mjs.map +0 -1
  617. package/dist/src/filters/shaders/gamma.d.ts +0 -2
  618. package/dist/src/filters/shaders/gamma.d.ts.map +0 -1
  619. package/dist/src/filters/shaders/gamma.min.mjs +0 -16
  620. package/dist/src/filters/shaders/gamma.min.mjs.map +0 -1
  621. package/dist/src/filters/shaders/gamma.mjs +0 -20
  622. package/dist/src/filters/shaders/gamma.mjs.map +0 -1
  623. package/dist/src/filters/shaders/grayscale.d.ts +0 -3
  624. package/dist/src/filters/shaders/grayscale.d.ts.map +0 -1
  625. package/dist/src/filters/shaders/grayscale.min.mjs +0 -31
  626. package/dist/src/filters/shaders/grayscale.min.mjs.map +0 -1
  627. package/dist/src/filters/shaders/grayscale.mjs +0 -39
  628. package/dist/src/filters/shaders/grayscale.mjs.map +0 -1
  629. package/dist/src/filters/shaders/invert.d.ts +0 -2
  630. package/dist/src/filters/shaders/invert.d.ts.map +0 -1
  631. package/dist/src/filters/shaders/invert.min.mjs +0 -20
  632. package/dist/src/filters/shaders/invert.min.mjs.map +0 -1
  633. package/dist/src/filters/shaders/invert.mjs +0 -24
  634. package/dist/src/filters/shaders/invert.mjs.map +0 -1
  635. package/dist/src/filters/shaders/noise.d.ts +0 -2
  636. package/dist/src/filters/shaders/noise.d.ts.map +0 -1
  637. package/dist/src/filters/shaders/noise.min.mjs +0 -17
  638. package/dist/src/filters/shaders/noise.min.mjs.map +0 -1
  639. package/dist/src/filters/shaders/noise.mjs +0 -21
  640. package/dist/src/filters/shaders/noise.mjs.map +0 -1
  641. package/dist/src/filters/shaders/pixelate.d.ts +0 -2
  642. package/dist/src/filters/shaders/pixelate.d.ts.map +0 -1
  643. package/dist/src/filters/shaders/pixelate.min.mjs +0 -20
  644. package/dist/src/filters/shaders/pixelate.min.mjs.map +0 -1
  645. package/dist/src/filters/shaders/pixelate.mjs +0 -24
  646. package/dist/src/filters/shaders/pixelate.mjs.map +0 -1
  647. package/dist/src/filters/shaders/removeColor.d.ts +0 -2
  648. package/dist/src/filters/shaders/removeColor.d.ts.map +0 -1
  649. package/dist/src/filters/shaders/removeColor.min.mjs +0 -14
  650. package/dist/src/filters/shaders/removeColor.min.mjs.map +0 -1
  651. package/dist/src/filters/shaders/removeColor.mjs +0 -18
  652. package/dist/src/filters/shaders/removeColor.mjs.map +0 -1
  653. package/dist/src/filters/shaders/saturation.d.ts +0 -2
  654. package/dist/src/filters/shaders/saturation.d.ts.map +0 -1
  655. package/dist/src/filters/shaders/saturation.min.mjs +0 -16
  656. package/dist/src/filters/shaders/saturation.min.mjs.map +0 -1
  657. package/dist/src/filters/shaders/saturation.mjs +0 -20
  658. package/dist/src/filters/shaders/saturation.mjs.map +0 -1
  659. package/dist/src/filters/shaders/vibrance.d.ts +0 -2
  660. package/dist/src/filters/shaders/vibrance.d.ts.map +0 -1
  661. package/dist/src/filters/shaders/vibrance.min.mjs +0 -17
  662. package/dist/src/filters/shaders/vibrance.min.mjs.map +0 -1
  663. package/dist/src/filters/shaders/vibrance.mjs +0 -21
  664. package/dist/src/filters/shaders/vibrance.mjs.map +0 -1
  665. package/dist/src/filters/typedefs.d.ts +0 -70
  666. package/dist/src/filters/typedefs.d.ts.map +0 -1
  667. package/dist/src/filters/utils.d.ts +0 -10
  668. package/dist/src/filters/utils.d.ts.map +0 -1
  669. package/dist/src/filters/utils.min.mjs +0 -2
  670. package/dist/src/filters/utils.min.mjs.map +0 -1
  671. package/dist/src/filters/utils.mjs +0 -37
  672. package/dist/src/filters/utils.mjs.map +0 -1
  673. package/dist/src/gradient/Gradient.d.ts +0 -142
  674. package/dist/src/gradient/Gradient.d.ts.map +0 -1
  675. package/dist/src/gradient/Gradient.min.mjs +0 -5
  676. package/dist/src/gradient/Gradient.min.mjs.map +0 -1
  677. package/dist/src/gradient/Gradient.mjs +0 -231
  678. package/dist/src/gradient/Gradient.mjs.map +0 -1
  679. package/dist/src/gradient/constants.d.ts +0 -15
  680. package/dist/src/gradient/constants.d.ts.map +0 -1
  681. package/dist/src/gradient/constants.min.mjs +0 -2
  682. package/dist/src/gradient/constants.min.mjs.map +0 -1
  683. package/dist/src/gradient/constants.mjs +0 -16
  684. package/dist/src/gradient/constants.mjs.map +0 -1
  685. package/dist/src/gradient/index.d.ts +0 -3
  686. package/dist/src/gradient/index.d.ts.map +0 -1
  687. package/dist/src/gradient/parser/misc.d.ts +0 -4
  688. package/dist/src/gradient/parser/misc.d.ts.map +0 -1
  689. package/dist/src/gradient/parser/misc.min.mjs +0 -2
  690. package/dist/src/gradient/parser/misc.min.mjs.map +0 -1
  691. package/dist/src/gradient/parser/misc.mjs +0 -11
  692. package/dist/src/gradient/parser/misc.mjs.map +0 -1
  693. package/dist/src/gradient/parser/parseColorStops.d.ts +0 -3
  694. package/dist/src/gradient/parser/parseColorStops.d.ts.map +0 -1
  695. package/dist/src/gradient/parser/parseColorStops.min.mjs +0 -2
  696. package/dist/src/gradient/parser/parseColorStops.min.mjs.map +0 -1
  697. package/dist/src/gradient/parser/parseColorStops.mjs +0 -36
  698. package/dist/src/gradient/parser/parseColorStops.mjs.map +0 -1
  699. package/dist/src/gradient/parser/parseCoords.d.ts +0 -17
  700. package/dist/src/gradient/parser/parseCoords.d.ts.map +0 -1
  701. package/dist/src/gradient/parser/parseCoords.min.mjs +0 -2
  702. package/dist/src/gradient/parser/parseCoords.min.mjs.map +0 -1
  703. package/dist/src/gradient/parser/parseCoords.mjs +0 -54
  704. package/dist/src/gradient/parser/parseCoords.mjs.map +0 -1
  705. package/dist/src/gradient/typedefs.d.ts +0 -93
  706. package/dist/src/gradient/typedefs.d.ts.map +0 -1
  707. package/dist/src/mixins/eraser_brush.mixin.d.ts +0 -2
  708. package/dist/src/mixins/eraser_brush.mixin.d.ts.map +0 -1
  709. package/dist/src/parkinglot/canvas_animation.mixin.d.ts +0 -2
  710. package/dist/src/parkinglot/canvas_animation.mixin.d.ts.map +0 -1
  711. package/dist/src/parkinglot/straighten.d.ts +0 -12
  712. package/dist/src/parkinglot/straighten.d.ts.map +0 -1
  713. package/dist/src/parser/applyViewboxTransform.d.ts +0 -13
  714. package/dist/src/parser/applyViewboxTransform.d.ts.map +0 -1
  715. package/dist/src/parser/applyViewboxTransform.min.mjs +0 -2
  716. package/dist/src/parser/applyViewboxTransform.min.mjs.map +0 -1
  717. package/dist/src/parser/applyViewboxTransform.mjs +0 -94
  718. package/dist/src/parser/applyViewboxTransform.mjs.map +0 -1
  719. package/dist/src/parser/attributes.d.ts +0 -6
  720. package/dist/src/parser/attributes.d.ts.map +0 -1
  721. package/dist/src/parser/attributes.min.mjs +0 -2
  722. package/dist/src/parser/attributes.min.mjs.map +0 -1
  723. package/dist/src/parser/attributes.mjs +0 -31
  724. package/dist/src/parser/attributes.mjs.map +0 -1
  725. package/dist/src/parser/constants.d.ts +0 -43
  726. package/dist/src/parser/constants.d.ts.map +0 -1
  727. package/dist/src/parser/constants.min.mjs +0 -2
  728. package/dist/src/parser/constants.min.mjs.map +0 -1
  729. package/dist/src/parser/constants.mjs +0 -88
  730. package/dist/src/parser/constants.mjs.map +0 -1
  731. package/dist/src/parser/doesSomeParentMatch.d.ts +0 -2
  732. package/dist/src/parser/doesSomeParentMatch.d.ts.map +0 -1
  733. package/dist/src/parser/doesSomeParentMatch.min.mjs +0 -2
  734. package/dist/src/parser/doesSomeParentMatch.min.mjs.map +0 -1
  735. package/dist/src/parser/doesSomeParentMatch.mjs +0 -15
  736. package/dist/src/parser/doesSomeParentMatch.mjs.map +0 -1
  737. package/dist/src/parser/elementMatchesRule.d.ts +0 -5
  738. package/dist/src/parser/elementMatchesRule.d.ts.map +0 -1
  739. package/dist/src/parser/elementMatchesRule.min.mjs +0 -2
  740. package/dist/src/parser/elementMatchesRule.min.mjs.map +0 -1
  741. package/dist/src/parser/elementMatchesRule.mjs +0 -16
  742. package/dist/src/parser/elementMatchesRule.mjs.map +0 -1
  743. package/dist/src/parser/elements_parser.d.ts +0 -33
  744. package/dist/src/parser/elements_parser.d.ts.map +0 -1
  745. package/dist/src/parser/elements_parser.min.mjs +0 -2
  746. package/dist/src/parser/elements_parser.min.mjs.map +0 -1
  747. package/dist/src/parser/elements_parser.mjs +0 -106
  748. package/dist/src/parser/elements_parser.mjs.map +0 -1
  749. package/dist/src/parser/getCSSRules.d.ts +0 -8
  750. package/dist/src/parser/getCSSRules.d.ts.map +0 -1
  751. package/dist/src/parser/getCSSRules.min.mjs +0 -2
  752. package/dist/src/parser/getCSSRules.min.mjs.map +0 -1
  753. package/dist/src/parser/getCSSRules.mjs +0 -38
  754. package/dist/src/parser/getCSSRules.mjs.map +0 -1
  755. package/dist/src/parser/getGlobalStylesForElement.d.ts +0 -6
  756. package/dist/src/parser/getGlobalStylesForElement.d.ts.map +0 -1
  757. package/dist/src/parser/getGlobalStylesForElement.min.mjs +0 -2
  758. package/dist/src/parser/getGlobalStylesForElement.min.mjs.map +0 -1
  759. package/dist/src/parser/getGlobalStylesForElement.mjs +0 -17
  760. package/dist/src/parser/getGlobalStylesForElement.mjs.map +0 -1
  761. package/dist/src/parser/getGradientDefs.d.ts +0 -7
  762. package/dist/src/parser/getGradientDefs.d.ts.map +0 -1
  763. package/dist/src/parser/getGradientDefs.min.mjs +0 -2
  764. package/dist/src/parser/getGradientDefs.min.mjs.map +0 -1
  765. package/dist/src/parser/getGradientDefs.mjs +0 -30
  766. package/dist/src/parser/getGradientDefs.mjs.map +0 -1
  767. package/dist/src/parser/getMultipleNodes.d.ts +0 -2
  768. package/dist/src/parser/getMultipleNodes.d.ts.map +0 -1
  769. package/dist/src/parser/getMultipleNodes.min.mjs +0 -2
  770. package/dist/src/parser/getMultipleNodes.min.mjs.map +0 -1
  771. package/dist/src/parser/getMultipleNodes.mjs +0 -14
  772. package/dist/src/parser/getMultipleNodes.mjs.map +0 -1
  773. package/dist/src/parser/getSvgRegex.d.ts +0 -2
  774. package/dist/src/parser/getSvgRegex.d.ts.map +0 -1
  775. package/dist/src/parser/getSvgRegex.min.mjs +0 -2
  776. package/dist/src/parser/getSvgRegex.min.mjs.map +0 -1
  777. package/dist/src/parser/getSvgRegex.mjs +0 -8
  778. package/dist/src/parser/getSvgRegex.mjs.map +0 -1
  779. package/dist/src/parser/getTagName.d.ts +0 -2
  780. package/dist/src/parser/getTagName.d.ts.map +0 -1
  781. package/dist/src/parser/getTagName.min.mjs +0 -2
  782. package/dist/src/parser/getTagName.min.mjs.map +0 -1
  783. package/dist/src/parser/getTagName.mjs +0 -6
  784. package/dist/src/parser/getTagName.mjs.map +0 -1
  785. package/dist/src/parser/hasInvalidAncestor.d.ts +0 -2
  786. package/dist/src/parser/hasInvalidAncestor.d.ts.map +0 -1
  787. package/dist/src/parser/hasInvalidAncestor.min.mjs +0 -2
  788. package/dist/src/parser/hasInvalidAncestor.min.mjs.map +0 -1
  789. package/dist/src/parser/hasInvalidAncestor.mjs +0 -14
  790. package/dist/src/parser/hasInvalidAncestor.mjs.map +0 -1
  791. package/dist/src/parser/loadSVGFromString.d.ts +0 -17
  792. package/dist/src/parser/loadSVGFromString.d.ts.map +0 -1
  793. package/dist/src/parser/loadSVGFromString.min.mjs +0 -2
  794. package/dist/src/parser/loadSVGFromString.min.mjs.map +0 -1
  795. package/dist/src/parser/loadSVGFromString.mjs +0 -23
  796. package/dist/src/parser/loadSVGFromString.mjs.map +0 -1
  797. package/dist/src/parser/loadSVGFromURL.d.ts +0 -18
  798. package/dist/src/parser/loadSVGFromURL.d.ts.map +0 -1
  799. package/dist/src/parser/loadSVGFromURL.min.mjs +0 -2
  800. package/dist/src/parser/loadSVGFromURL.min.mjs.map +0 -1
  801. package/dist/src/parser/loadSVGFromURL.mjs +0 -32
  802. package/dist/src/parser/loadSVGFromURL.mjs.map +0 -1
  803. package/dist/src/parser/normalizeAttr.d.ts +0 -3
  804. package/dist/src/parser/normalizeAttr.d.ts.map +0 -1
  805. package/dist/src/parser/normalizeAttr.min.mjs +0 -2
  806. package/dist/src/parser/normalizeAttr.min.mjs.map +0 -1
  807. package/dist/src/parser/normalizeAttr.mjs +0 -10
  808. package/dist/src/parser/normalizeAttr.mjs.map +0 -1
  809. package/dist/src/parser/normalizeValue.d.ts +0 -2
  810. package/dist/src/parser/normalizeValue.d.ts.map +0 -1
  811. package/dist/src/parser/normalizeValue.min.mjs +0 -2
  812. package/dist/src/parser/normalizeValue.min.mjs.map +0 -1
  813. package/dist/src/parser/normalizeValue.mjs +0 -39
  814. package/dist/src/parser/normalizeValue.mjs.map +0 -1
  815. package/dist/src/parser/parseAttributes.d.ts +0 -10
  816. package/dist/src/parser/parseAttributes.d.ts.map +0 -1
  817. package/dist/src/parser/parseAttributes.min.mjs +0 -2
  818. package/dist/src/parser/parseAttributes.min.mjs.map +0 -1
  819. package/dist/src/parser/parseAttributes.mjs +0 -53
  820. package/dist/src/parser/parseAttributes.mjs.map +0 -1
  821. package/dist/src/parser/parseFontDeclaration.d.ts +0 -7
  822. package/dist/src/parser/parseFontDeclaration.d.ts.map +0 -1
  823. package/dist/src/parser/parseFontDeclaration.min.mjs +0 -2
  824. package/dist/src/parser/parseFontDeclaration.min.mjs.map +0 -1
  825. package/dist/src/parser/parseFontDeclaration.mjs +0 -23
  826. package/dist/src/parser/parseFontDeclaration.mjs.map +0 -1
  827. package/dist/src/parser/parsePointsAttribute.d.ts +0 -8
  828. package/dist/src/parser/parsePointsAttribute.d.ts.map +0 -1
  829. package/dist/src/parser/parsePointsAttribute.min.mjs +0 -2
  830. package/dist/src/parser/parsePointsAttribute.min.mjs.map +0 -1
  831. package/dist/src/parser/parsePointsAttribute.mjs +0 -20
  832. package/dist/src/parser/parsePointsAttribute.mjs.map +0 -1
  833. package/dist/src/parser/parseSVGDocument.d.ts +0 -19
  834. package/dist/src/parser/parseSVGDocument.d.ts.map +0 -1
  835. package/dist/src/parser/parseSVGDocument.min.mjs +0 -2
  836. package/dist/src/parser/parseSVGDocument.min.mjs.map +0 -1
  837. package/dist/src/parser/parseSVGDocument.mjs +0 -67
  838. package/dist/src/parser/parseSVGDocument.mjs.map +0 -1
  839. package/dist/src/parser/parseStyleAttribute.d.ts +0 -7
  840. package/dist/src/parser/parseStyleAttribute.d.ts.map +0 -1
  841. package/dist/src/parser/parseStyleAttribute.min.mjs +0 -2
  842. package/dist/src/parser/parseStyleAttribute.min.mjs.map +0 -1
  843. package/dist/src/parser/parseStyleAttribute.mjs +0 -19
  844. package/dist/src/parser/parseStyleAttribute.mjs.map +0 -1
  845. package/dist/src/parser/parseStyleObject.d.ts +0 -8
  846. package/dist/src/parser/parseStyleObject.d.ts.map +0 -1
  847. package/dist/src/parser/parseStyleObject.min.mjs +0 -2
  848. package/dist/src/parser/parseStyleObject.min.mjs.map +0 -1
  849. package/dist/src/parser/parseStyleObject.mjs +0 -17
  850. package/dist/src/parser/parseStyleObject.mjs.map +0 -1
  851. package/dist/src/parser/parseStyleString.d.ts +0 -8
  852. package/dist/src/parser/parseStyleString.d.ts.map +0 -1
  853. package/dist/src/parser/parseStyleString.min.mjs +0 -2
  854. package/dist/src/parser/parseStyleString.min.mjs.map +0 -1
  855. package/dist/src/parser/parseStyleString.mjs +0 -18
  856. package/dist/src/parser/parseStyleString.mjs.map +0 -1
  857. package/dist/src/parser/parseTransformAttribute.d.ts +0 -8
  858. package/dist/src/parser/parseTransformAttribute.d.ts.map +0 -1
  859. package/dist/src/parser/parseTransformAttribute.min.mjs +0 -2
  860. package/dist/src/parser/parseTransformAttribute.min.mjs.map +0 -1
  861. package/dist/src/parser/parseTransformAttribute.mjs +0 -70
  862. package/dist/src/parser/parseTransformAttribute.mjs.map +0 -1
  863. package/dist/src/parser/parseUseDirectives.d.ts +0 -2
  864. package/dist/src/parser/parseUseDirectives.d.ts.map +0 -1
  865. package/dist/src/parser/parseUseDirectives.min.mjs +0 -2
  866. package/dist/src/parser/parseUseDirectives.min.mjs.map +0 -1
  867. package/dist/src/parser/parseUseDirectives.mjs +0 -60
  868. package/dist/src/parser/parseUseDirectives.mjs.map +0 -1
  869. package/dist/src/parser/percent.d.ts +0 -14
  870. package/dist/src/parser/percent.d.ts.map +0 -1
  871. package/dist/src/parser/percent.min.mjs +0 -2
  872. package/dist/src/parser/percent.min.mjs.map +0 -1
  873. package/dist/src/parser/percent.mjs +0 -24
  874. package/dist/src/parser/percent.mjs.map +0 -1
  875. package/dist/src/parser/recursivelyParseGradientsXlink.d.ts +0 -2
  876. package/dist/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -1
  877. package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs +0 -2
  878. package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs.map +0 -1
  879. package/dist/src/parser/recursivelyParseGradientsXlink.mjs +0 -35
  880. package/dist/src/parser/recursivelyParseGradientsXlink.mjs.map +0 -1
  881. package/dist/src/parser/selectorMatches.d.ts +0 -2
  882. package/dist/src/parser/selectorMatches.d.ts.map +0 -1
  883. package/dist/src/parser/selectorMatches.min.mjs +0 -2
  884. package/dist/src/parser/selectorMatches.min.mjs.map +0 -1
  885. package/dist/src/parser/selectorMatches.mjs +0 -26
  886. package/dist/src/parser/selectorMatches.mjs.map +0 -1
  887. package/dist/src/parser/setStrokeFillOpacity.d.ts +0 -6
  888. package/dist/src/parser/setStrokeFillOpacity.d.ts.map +0 -1
  889. package/dist/src/parser/setStrokeFillOpacity.min.mjs +0 -2
  890. package/dist/src/parser/setStrokeFillOpacity.min.mjs.map +0 -1
  891. package/dist/src/parser/setStrokeFillOpacity.mjs +0 -30
  892. package/dist/src/parser/setStrokeFillOpacity.mjs.map +0 -1
  893. package/dist/src/parser/typedefs.d.ts +0 -10
  894. package/dist/src/parser/typedefs.d.ts.map +0 -1
  895. package/dist/src/shapes/ActiveSelection.d.ts +0 -105
  896. package/dist/src/shapes/ActiveSelection.d.ts.map +0 -1
  897. package/dist/src/shapes/ActiveSelection.min.mjs +0 -2
  898. package/dist/src/shapes/ActiveSelection.min.mjs.map +0 -1
  899. package/dist/src/shapes/ActiveSelection.mjs +0 -166
  900. package/dist/src/shapes/ActiveSelection.mjs.map +0 -1
  901. package/dist/src/shapes/Circle.d.ts +0 -107
  902. package/dist/src/shapes/Circle.d.ts.map +0 -1
  903. package/dist/src/shapes/Circle.min.mjs +0 -4
  904. package/dist/src/shapes/Circle.min.mjs.map +0 -1
  905. package/dist/src/shapes/Circle.mjs +0 -153
  906. package/dist/src/shapes/Circle.mjs.map +0 -1
  907. package/dist/src/shapes/Ellipse.d.ts +0 -82
  908. package/dist/src/shapes/Ellipse.d.ts.map +0 -1
  909. package/dist/src/shapes/Ellipse.min.mjs +0 -2
  910. package/dist/src/shapes/Ellipse.min.mjs.map +0 -1
  911. package/dist/src/shapes/Ellipse.mjs +0 -124
  912. package/dist/src/shapes/Ellipse.mjs.map +0 -1
  913. package/dist/src/shapes/Group.d.ts +0 -301
  914. package/dist/src/shapes/Group.d.ts.map +0 -1
  915. package/dist/src/shapes/Group.min.mjs +0 -4
  916. package/dist/src/shapes/Group.min.mjs.map +0 -1
  917. package/dist/src/shapes/Group.mjs +0 -485
  918. package/dist/src/shapes/Group.mjs.map +0 -1
  919. package/dist/src/shapes/IText/DraggableTextDelegate.d.ts +0 -78
  920. package/dist/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -1
  921. package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs +0 -2
  922. package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs.map +0 -1
  923. package/dist/src/shapes/IText/DraggableTextDelegate.mjs +0 -287
  924. package/dist/src/shapes/IText/DraggableTextDelegate.mjs.map +0 -1
  925. package/dist/src/shapes/IText/IText.d.ts +0 -331
  926. package/dist/src/shapes/IText/IText.d.ts.map +0 -1
  927. package/dist/src/shapes/IText/IText.min.mjs +0 -2
  928. package/dist/src/shapes/IText/IText.min.mjs.map +0 -1
  929. package/dist/src/shapes/IText/IText.mjs +0 -471
  930. package/dist/src/shapes/IText/IText.mjs.map +0 -1
  931. package/dist/src/shapes/IText/ITextBehavior.d.ts +0 -312
  932. package/dist/src/shapes/IText/ITextBehavior.d.ts.map +0 -1
  933. package/dist/src/shapes/IText/ITextBehavior.min.mjs +0 -3
  934. package/dist/src/shapes/IText/ITextBehavior.min.mjs.map +0 -1
  935. package/dist/src/shapes/IText/ITextBehavior.mjs +0 -688
  936. package/dist/src/shapes/IText/ITextBehavior.mjs.map +0 -1
  937. package/dist/src/shapes/IText/ITextClickBehavior.d.ts +0 -63
  938. package/dist/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -1
  939. package/dist/src/shapes/IText/ITextClickBehavior.min.mjs +0 -2
  940. package/dist/src/shapes/IText/ITextClickBehavior.min.mjs.map +0 -1
  941. package/dist/src/shapes/IText/ITextClickBehavior.mjs +0 -154
  942. package/dist/src/shapes/IText/ITextClickBehavior.mjs.map +0 -1
  943. package/dist/src/shapes/IText/ITextKeyBehavior.d.ts +0 -197
  944. package/dist/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -1
  945. package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs +0 -2
  946. package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs.map +0 -1
  947. package/dist/src/shapes/IText/ITextKeyBehavior.mjs +0 -415
  948. package/dist/src/shapes/IText/ITextKeyBehavior.mjs.map +0 -1
  949. package/dist/src/shapes/IText/constants.d.ts +0 -13
  950. package/dist/src/shapes/IText/constants.d.ts.map +0 -1
  951. package/dist/src/shapes/IText/constants.min.mjs +0 -2
  952. package/dist/src/shapes/IText/constants.min.mjs.map +0 -1
  953. package/dist/src/shapes/IText/constants.mjs +0 -45
  954. package/dist/src/shapes/IText/constants.mjs.map +0 -1
  955. package/dist/src/shapes/Image.d.ts +0 -297
  956. package/dist/src/shapes/Image.d.ts.map +0 -1
  957. package/dist/src/shapes/Image.min.mjs +0 -5
  958. package/dist/src/shapes/Image.min.mjs.map +0 -1
  959. package/dist/src/shapes/Image.mjs +0 -467
  960. package/dist/src/shapes/Image.mjs.map +0 -1
  961. package/dist/src/shapes/Line.d.ts +0 -118
  962. package/dist/src/shapes/Line.d.ts.map +0 -1
  963. package/dist/src/shapes/Line.min.mjs +0 -2
  964. package/dist/src/shapes/Line.min.mjs.map +0 -1
  965. package/dist/src/shapes/Line.mjs +0 -195
  966. package/dist/src/shapes/Line.mjs.map +0 -1
  967. package/dist/src/shapes/Object/FabricObject.d.ts +0 -11
  968. package/dist/src/shapes/Object/FabricObject.d.ts.map +0 -1
  969. package/dist/src/shapes/Object/FabricObject.min.mjs +0 -2
  970. package/dist/src/shapes/Object/FabricObject.min.mjs.map +0 -1
  971. package/dist/src/shapes/Object/FabricObject.mjs +0 -14
  972. package/dist/src/shapes/Object/FabricObject.mjs.map +0 -1
  973. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -72
  974. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -1
  975. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs +0 -6
  976. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs.map +0 -1
  977. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs +0 -123
  978. package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs.map +0 -1
  979. package/dist/src/shapes/Object/InteractiveObject.d.ts +0 -317
  980. package/dist/src/shapes/Object/InteractiveObject.d.ts.map +0 -1
  981. package/dist/src/shapes/Object/InteractiveObject.min.mjs +0 -2
  982. package/dist/src/shapes/Object/InteractiveObject.min.mjs.map +0 -1
  983. package/dist/src/shapes/Object/InteractiveObject.mjs +0 -406
  984. package/dist/src/shapes/Object/InteractiveObject.mjs.map +0 -1
  985. package/dist/src/shapes/Object/Object.d.ts +0 -718
  986. package/dist/src/shapes/Object/Object.d.ts.map +0 -1
  987. package/dist/src/shapes/Object/Object.min.mjs +0 -2
  988. package/dist/src/shapes/Object/Object.min.mjs.map +0 -1
  989. package/dist/src/shapes/Object/Object.mjs +0 -1115
  990. package/dist/src/shapes/Object/Object.mjs.map +0 -1
  991. package/dist/src/shapes/Object/ObjectGeometry.d.ts +0 -350
  992. package/dist/src/shapes/Object/ObjectGeometry.d.ts.map +0 -1
  993. package/dist/src/shapes/Object/ObjectGeometry.min.mjs +0 -2
  994. package/dist/src/shapes/Object/ObjectGeometry.min.mjs.map +0 -1
  995. package/dist/src/shapes/Object/ObjectGeometry.mjs +0 -510
  996. package/dist/src/shapes/Object/ObjectGeometry.mjs.map +0 -1
  997. package/dist/src/shapes/Object/defaultValues.d.ts +0 -8
  998. package/dist/src/shapes/Object/defaultValues.d.ts.map +0 -1
  999. package/dist/src/shapes/Object/defaultValues.min.mjs +0 -2
  1000. package/dist/src/shapes/Object/defaultValues.min.mjs.map +0 -1
  1001. package/dist/src/shapes/Object/defaultValues.mjs +0 -112
  1002. package/dist/src/shapes/Object/defaultValues.mjs.map +0 -1
  1003. package/dist/src/shapes/Object/types/BaseProps.d.ts +0 -92
  1004. package/dist/src/shapes/Object/types/BaseProps.d.ts.map +0 -1
  1005. package/dist/src/shapes/Object/types/BorderProps.d.ts +0 -37
  1006. package/dist/src/shapes/Object/types/BorderProps.d.ts.map +0 -1
  1007. package/dist/src/shapes/Object/types/ControlProps.d.ts +0 -63
  1008. package/dist/src/shapes/Object/types/ControlProps.d.ts.map +0 -1
  1009. package/dist/src/shapes/Object/types/FabricObjectProps.d.ts +0 -62
  1010. package/dist/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -1
  1011. package/dist/src/shapes/Object/types/FillStrokeProps.d.ts +0 -78
  1012. package/dist/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -1
  1013. package/dist/src/shapes/Object/types/LockInteractionProps.d.ts +0 -43
  1014. package/dist/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -1
  1015. package/dist/src/shapes/Object/types/ObjectProps.d.ts +0 -41
  1016. package/dist/src/shapes/Object/types/ObjectProps.d.ts.map +0 -1
  1017. package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -32
  1018. package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -1
  1019. package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -63
  1020. package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -1
  1021. package/dist/src/shapes/Object/types/index.d.ts +0 -6
  1022. package/dist/src/shapes/Object/types/index.d.ts.map +0 -1
  1023. package/dist/src/shapes/Path.d.ts +0 -208
  1024. package/dist/src/shapes/Path.d.ts.map +0 -1
  1025. package/dist/src/shapes/Path.min.mjs +0 -2
  1026. package/dist/src/shapes/Path.min.mjs.map +0 -1
  1027. package/dist/src/shapes/Path.mjs +0 -259
  1028. package/dist/src/shapes/Path.mjs.map +0 -1
  1029. package/dist/src/shapes/Polygon.d.ts +0 -7
  1030. package/dist/src/shapes/Polygon.d.ts.map +0 -1
  1031. package/dist/src/shapes/Polygon.min.mjs +0 -2
  1032. package/dist/src/shapes/Polygon.min.mjs.map +0 -1
  1033. package/dist/src/shapes/Polygon.mjs +0 -17
  1034. package/dist/src/shapes/Polygon.mjs.map +0 -1
  1035. package/dist/src/shapes/Polyline.d.ts +0 -149
  1036. package/dist/src/shapes/Polyline.d.ts.map +0 -1
  1037. package/dist/src/shapes/Polyline.min.mjs +0 -2
  1038. package/dist/src/shapes/Polyline.min.mjs.map +0 -1
  1039. package/dist/src/shapes/Polyline.mjs +0 -265
  1040. package/dist/src/shapes/Polyline.mjs.map +0 -1
  1041. package/dist/src/shapes/Rect.d.ts +0 -77
  1042. package/dist/src/shapes/Rect.d.ts.map +0 -1
  1043. package/dist/src/shapes/Rect.min.mjs +0 -2
  1044. package/dist/src/shapes/Rect.min.mjs.map +0 -1
  1045. package/dist/src/shapes/Rect.mjs +0 -121
  1046. package/dist/src/shapes/Rect.mjs.map +0 -1
  1047. package/dist/src/shapes/Text/StyledText.d.ts +0 -126
  1048. package/dist/src/shapes/Text/StyledText.d.ts.map +0 -1
  1049. package/dist/src/shapes/Text/StyledText.min.mjs +0 -2
  1050. package/dist/src/shapes/Text/StyledText.min.mjs.map +0 -1
  1051. package/dist/src/shapes/Text/StyledText.mjs +0 -199
  1052. package/dist/src/shapes/Text/StyledText.mjs.map +0 -1
  1053. package/dist/src/shapes/Text/Text.d.ts +0 -709
  1054. package/dist/src/shapes/Text/Text.d.ts.map +0 -1
  1055. package/dist/src/shapes/Text/Text.min.mjs +0 -3
  1056. package/dist/src/shapes/Text/Text.min.mjs.map +0 -1
  1057. package/dist/src/shapes/Text/Text.mjs +0 -1040
  1058. package/dist/src/shapes/Text/Text.mjs.map +0 -1
  1059. package/dist/src/shapes/Text/TextSVGExportMixin.d.ts +0 -40
  1060. package/dist/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -1
  1061. package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs +0 -3
  1062. package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs.map +0 -1
  1063. package/dist/src/shapes/Text/TextSVGExportMixin.mjs +0 -212
  1064. package/dist/src/shapes/Text/TextSVGExportMixin.mjs.map +0 -1
  1065. package/dist/src/shapes/Text/constants.d.ts +0 -15
  1066. package/dist/src/shapes/Text/constants.d.ts.map +0 -1
  1067. package/dist/src/shapes/Text/constants.min.mjs +0 -2
  1068. package/dist/src/shapes/Text/constants.min.mjs.map +0 -1
  1069. package/dist/src/shapes/Text/constants.mjs +0 -97
  1070. package/dist/src/shapes/Text/constants.mjs.map +0 -1
  1071. package/dist/src/shapes/Textbox.d.ts +0 -223
  1072. package/dist/src/shapes/Textbox.d.ts.map +0 -1
  1073. package/dist/src/shapes/Textbox.min.mjs +0 -3
  1074. package/dist/src/shapes/Textbox.min.mjs.map +0 -1
  1075. package/dist/src/shapes/Textbox.mjs +0 -372
  1076. package/dist/src/shapes/Textbox.mjs.map +0 -1
  1077. package/dist/src/shapes/Triangle.d.ts +0 -27
  1078. package/dist/src/shapes/Triangle.d.ts.map +0 -1
  1079. package/dist/src/shapes/Triangle.min.mjs +0 -2
  1080. package/dist/src/shapes/Triangle.min.mjs.map +0 -1
  1081. package/dist/src/shapes/Triangle.mjs +0 -61
  1082. package/dist/src/shapes/Triangle.mjs.map +0 -1
  1083. package/dist/src/typedefs.d.ts +0 -99
  1084. package/dist/src/typedefs.d.ts.map +0 -1
  1085. package/dist/src/util/animation/AnimationBase.d.ts +0 -55
  1086. package/dist/src/util/animation/AnimationBase.d.ts.map +0 -1
  1087. package/dist/src/util/animation/AnimationBase.min.mjs +0 -2
  1088. package/dist/src/util/animation/AnimationBase.min.mjs.map +0 -1
  1089. package/dist/src/util/animation/AnimationBase.mjs +0 -99
  1090. package/dist/src/util/animation/AnimationBase.mjs.map +0 -1
  1091. package/dist/src/util/animation/AnimationFrameProvider.d.ts +0 -3
  1092. package/dist/src/util/animation/AnimationFrameProvider.d.ts.map +0 -1
  1093. package/dist/src/util/animation/AnimationFrameProvider.min.mjs +0 -2
  1094. package/dist/src/util/animation/AnimationFrameProvider.min.mjs.map +0 -1
  1095. package/dist/src/util/animation/AnimationFrameProvider.mjs +0 -12
  1096. package/dist/src/util/animation/AnimationFrameProvider.mjs.map +0 -1
  1097. package/dist/src/util/animation/AnimationRegistry.d.ts +0 -29
  1098. package/dist/src/util/animation/AnimationRegistry.d.ts.map +0 -1
  1099. package/dist/src/util/animation/AnimationRegistry.min.mjs +0 -2
  1100. package/dist/src/util/animation/AnimationRegistry.min.mjs.map +0 -1
  1101. package/dist/src/util/animation/AnimationRegistry.mjs +0 -50
  1102. package/dist/src/util/animation/AnimationRegistry.mjs.map +0 -1
  1103. package/dist/src/util/animation/ArrayAnimation.d.ts +0 -10
  1104. package/dist/src/util/animation/ArrayAnimation.d.ts.map +0 -1
  1105. package/dist/src/util/animation/ArrayAnimation.min.mjs +0 -2
  1106. package/dist/src/util/animation/ArrayAnimation.min.mjs.map +0 -1
  1107. package/dist/src/util/animation/ArrayAnimation.mjs +0 -22
  1108. package/dist/src/util/animation/ArrayAnimation.mjs.map +0 -1
  1109. package/dist/src/util/animation/ColorAnimation.d.ts +0 -11
  1110. package/dist/src/util/animation/ColorAnimation.d.ts.map +0 -1
  1111. package/dist/src/util/animation/ColorAnimation.min.mjs +0 -2
  1112. package/dist/src/util/animation/ColorAnimation.min.mjs.map +0 -1
  1113. package/dist/src/util/animation/ColorAnimation.mjs +0 -40
  1114. package/dist/src/util/animation/ColorAnimation.mjs.map +0 -1
  1115. package/dist/src/util/animation/ValueAnimation.d.ts +0 -10
  1116. package/dist/src/util/animation/ValueAnimation.d.ts.map +0 -1
  1117. package/dist/src/util/animation/ValueAnimation.min.mjs +0 -2
  1118. package/dist/src/util/animation/ValueAnimation.min.mjs.map +0 -1
  1119. package/dist/src/util/animation/ValueAnimation.mjs +0 -22
  1120. package/dist/src/util/animation/ValueAnimation.mjs.map +0 -1
  1121. package/dist/src/util/animation/animate.d.ts +0 -37
  1122. package/dist/src/util/animation/animate.d.ts.map +0 -1
  1123. package/dist/src/util/animation/animate.min.mjs +0 -2
  1124. package/dist/src/util/animation/animate.min.mjs.map +0 -1
  1125. package/dist/src/util/animation/animate.mjs +0 -21
  1126. package/dist/src/util/animation/animate.mjs.map +0 -1
  1127. package/dist/src/util/animation/easing.d.ts +0 -130
  1128. package/dist/src/util/animation/easing.d.ts.map +0 -1
  1129. package/dist/src/util/animation/easing.min.mjs +0 -2
  1130. package/dist/src/util/animation/easing.min.mjs.map +0 -1
  1131. package/dist/src/util/animation/easing.mjs +0 -245
  1132. package/dist/src/util/animation/easing.mjs.map +0 -1
  1133. package/dist/src/util/animation/index.d.ts +0 -3
  1134. package/dist/src/util/animation/index.d.ts.map +0 -1
  1135. package/dist/src/util/animation/types.d.ts +0 -87
  1136. package/dist/src/util/animation/types.d.ts.map +0 -1
  1137. package/dist/src/util/applyMixins.d.ts +0 -8
  1138. package/dist/src/util/applyMixins.d.ts.map +0 -1
  1139. package/dist/src/util/applyMixins.min.mjs +0 -2
  1140. package/dist/src/util/applyMixins.min.mjs.map +0 -1
  1141. package/dist/src/util/applyMixins.mjs +0 -16
  1142. package/dist/src/util/applyMixins.mjs.map +0 -1
  1143. package/dist/src/util/dom_event.d.ts +0 -6
  1144. package/dist/src/util/dom_event.d.ts.map +0 -1
  1145. package/dist/src/util/dom_event.min.mjs +0 -2
  1146. package/dist/src/util/dom_event.min.mjs.map +0 -1
  1147. package/dist/src/util/dom_event.mjs +0 -26
  1148. package/dist/src/util/dom_event.mjs.map +0 -1
  1149. package/dist/src/util/dom_misc.d.ts +0 -12
  1150. package/dist/src/util/dom_misc.d.ts.map +0 -1
  1151. package/dist/src/util/dom_misc.min.mjs +0 -2
  1152. package/dist/src/util/dom_misc.min.mjs.map +0 -1
  1153. package/dist/src/util/dom_misc.mjs +0 -43
  1154. package/dist/src/util/dom_misc.mjs.map +0 -1
  1155. package/dist/src/util/index.d.ts +0 -35
  1156. package/dist/src/util/index.d.ts.map +0 -1
  1157. package/dist/src/util/index.min.mjs +0 -2
  1158. package/dist/src/util/index.min.mjs.map +0 -1
  1159. package/dist/src/util/index.mjs +0 -120
  1160. package/dist/src/util/index.mjs.map +0 -1
  1161. package/dist/src/util/internals/applyCanvasTransform.d.ts +0 -11
  1162. package/dist/src/util/internals/applyCanvasTransform.d.ts.map +0 -1
  1163. package/dist/src/util/internals/applyCanvasTransform.min.mjs +0 -2
  1164. package/dist/src/util/internals/applyCanvasTransform.min.mjs.map +0 -1
  1165. package/dist/src/util/internals/applyCanvasTransform.mjs +0 -19
  1166. package/dist/src/util/internals/applyCanvasTransform.mjs.map +0 -1
  1167. package/dist/src/util/internals/cleanupSvgAttribute.d.ts +0 -2
  1168. package/dist/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -1
  1169. package/dist/src/util/internals/cleanupSvgAttribute.min.mjs +0 -2
  1170. package/dist/src/util/internals/cleanupSvgAttribute.min.mjs.map +0 -1
  1171. package/dist/src/util/internals/cleanupSvgAttribute.mjs +0 -9
  1172. package/dist/src/util/internals/cleanupSvgAttribute.mjs.map +0 -1
  1173. package/dist/src/util/internals/cloneStyles.d.ts +0 -3
  1174. package/dist/src/util/internals/cloneStyles.d.ts.map +0 -1
  1175. package/dist/src/util/internals/cloneStyles.min.mjs +0 -2
  1176. package/dist/src/util/internals/cloneStyles.min.mjs.map +0 -1
  1177. package/dist/src/util/internals/cloneStyles.mjs +0 -15
  1178. package/dist/src/util/internals/cloneStyles.mjs.map +0 -1
  1179. package/dist/src/util/internals/console.d.ts +0 -8
  1180. package/dist/src/util/internals/console.d.ts.map +0 -1
  1181. package/dist/src/util/internals/console.min.mjs +0 -2
  1182. package/dist/src/util/internals/console.min.mjs.map +0 -1
  1183. package/dist/src/util/internals/console.mjs +0 -16
  1184. package/dist/src/util/internals/console.mjs.map +0 -1
  1185. package/dist/src/util/internals/dom_style.d.ts +0 -7
  1186. package/dist/src/util/internals/dom_style.d.ts.map +0 -1
  1187. package/dist/src/util/internals/dom_style.min.mjs +0 -2
  1188. package/dist/src/util/internals/dom_style.min.mjs.map +0 -1
  1189. package/dist/src/util/internals/dom_style.mjs +0 -15
  1190. package/dist/src/util/internals/dom_style.mjs.map +0 -1
  1191. package/dist/src/util/internals/findRight.d.ts +0 -2
  1192. package/dist/src/util/internals/findRight.d.ts.map +0 -1
  1193. package/dist/src/util/internals/findRight.min.mjs +0 -2
  1194. package/dist/src/util/internals/findRight.min.mjs.map +0 -1
  1195. package/dist/src/util/internals/findRight.mjs +0 -9
  1196. package/dist/src/util/internals/findRight.mjs.map +0 -1
  1197. package/dist/src/util/internals/getRandomInt.d.ts +0 -8
  1198. package/dist/src/util/internals/getRandomInt.d.ts.map +0 -1
  1199. package/dist/src/util/internals/getRandomInt.min.mjs +0 -2
  1200. package/dist/src/util/internals/getRandomInt.min.mjs.map +0 -1
  1201. package/dist/src/util/internals/getRandomInt.mjs +0 -12
  1202. package/dist/src/util/internals/getRandomInt.mjs.map +0 -1
  1203. package/dist/src/util/internals/ifNaN.d.ts +0 -8
  1204. package/dist/src/util/internals/ifNaN.d.ts.map +0 -1
  1205. package/dist/src/util/internals/ifNaN.min.mjs +0 -2
  1206. package/dist/src/util/internals/ifNaN.min.mjs.map +0 -1
  1207. package/dist/src/util/internals/ifNaN.mjs +0 -14
  1208. package/dist/src/util/internals/ifNaN.mjs.map +0 -1
  1209. package/dist/src/util/internals/normalizeWhiteSpace.d.ts +0 -2
  1210. package/dist/src/util/internals/normalizeWhiteSpace.d.ts.map +0 -1
  1211. package/dist/src/util/internals/normalizeWhiteSpace.min.mjs +0 -2
  1212. package/dist/src/util/internals/normalizeWhiteSpace.min.mjs.map +0 -1
  1213. package/dist/src/util/internals/normalizeWhiteSpace.mjs +0 -6
  1214. package/dist/src/util/internals/normalizeWhiteSpace.mjs.map +0 -1
  1215. package/dist/src/util/internals/removeFromArray.d.ts +0 -9
  1216. package/dist/src/util/internals/removeFromArray.d.ts.map +0 -1
  1217. package/dist/src/util/internals/removeFromArray.min.mjs +0 -2
  1218. package/dist/src/util/internals/removeFromArray.min.mjs.map +0 -1
  1219. package/dist/src/util/internals/removeFromArray.mjs +0 -17
  1220. package/dist/src/util/internals/removeFromArray.mjs.map +0 -1
  1221. package/dist/src/util/internals/svgExportCheck.d.ts +0 -4
  1222. package/dist/src/util/internals/svgExportCheck.d.ts.map +0 -1
  1223. package/dist/src/util/internals/svgExportCheck.min.mjs +0 -2
  1224. package/dist/src/util/internals/svgExportCheck.min.mjs.map +0 -1
  1225. package/dist/src/util/internals/svgExportCheck.mjs +0 -12
  1226. package/dist/src/util/internals/svgExportCheck.mjs.map +0 -1
  1227. package/dist/src/util/internals/uid.d.ts +0 -2
  1228. package/dist/src/util/internals/uid.d.ts.map +0 -1
  1229. package/dist/src/util/internals/uid.min.mjs +0 -2
  1230. package/dist/src/util/internals/uid.min.mjs.map +0 -1
  1231. package/dist/src/util/internals/uid.mjs +0 -7
  1232. package/dist/src/util/internals/uid.mjs.map +0 -1
  1233. package/dist/src/util/lang_string.d.ts +0 -22
  1234. package/dist/src/util/lang_string.d.ts.map +0 -1
  1235. package/dist/src/util/lang_string.min.mjs +0 -2
  1236. package/dist/src/util/lang_string.min.mjs.map +0 -1
  1237. package/dist/src/util/lang_string.mjs +0 -68
  1238. package/dist/src/util/lang_string.mjs.map +0 -1
  1239. package/dist/src/util/misc/boundingBoxFromPoints.d.ts +0 -9
  1240. package/dist/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -1
  1241. package/dist/src/util/misc/boundingBoxFromPoints.min.mjs +0 -2
  1242. package/dist/src/util/misc/boundingBoxFromPoints.min.mjs.map +0 -1
  1243. package/dist/src/util/misc/boundingBoxFromPoints.mjs +0 -26
  1244. package/dist/src/util/misc/boundingBoxFromPoints.mjs.map +0 -1
  1245. package/dist/src/util/misc/capValue.d.ts +0 -2
  1246. package/dist/src/util/misc/capValue.d.ts.map +0 -1
  1247. package/dist/src/util/misc/capValue.min.mjs +0 -2
  1248. package/dist/src/util/misc/capValue.min.mjs.map +0 -1
  1249. package/dist/src/util/misc/capValue.mjs +0 -6
  1250. package/dist/src/util/misc/capValue.mjs.map +0 -1
  1251. package/dist/src/util/misc/cos.d.ts +0 -10
  1252. package/dist/src/util/misc/cos.d.ts.map +0 -1
  1253. package/dist/src/util/misc/cos.min.mjs +0 -2
  1254. package/dist/src/util/misc/cos.min.mjs.map +0 -1
  1255. package/dist/src/util/misc/cos.mjs +0 -22
  1256. package/dist/src/util/misc/cos.mjs.map +0 -1
  1257. package/dist/src/util/misc/dom.d.ts +0 -35
  1258. package/dist/src/util/misc/dom.d.ts.map +0 -1
  1259. package/dist/src/util/misc/dom.min.mjs +0 -2
  1260. package/dist/src/util/misc/dom.min.mjs.map +0 -1
  1261. package/dist/src/util/misc/dom.mjs +0 -58
  1262. package/dist/src/util/misc/dom.mjs.map +0 -1
  1263. package/dist/src/util/misc/findScaleTo.d.ts +0 -20
  1264. package/dist/src/util/misc/findScaleTo.d.ts.map +0 -1
  1265. package/dist/src/util/misc/findScaleTo.min.mjs +0 -2
  1266. package/dist/src/util/misc/findScaleTo.min.mjs.map +0 -1
  1267. package/dist/src/util/misc/findScaleTo.mjs +0 -23
  1268. package/dist/src/util/misc/findScaleTo.mjs.map +0 -1
  1269. package/dist/src/util/misc/groupSVGElements.d.ts +0 -10
  1270. package/dist/src/util/misc/groupSVGElements.d.ts.map +0 -1
  1271. package/dist/src/util/misc/groupSVGElements.min.mjs +0 -2
  1272. package/dist/src/util/misc/groupSVGElements.min.mjs.map +0 -1
  1273. package/dist/src/util/misc/groupSVGElements.mjs +0 -16
  1274. package/dist/src/util/misc/groupSVGElements.mjs.map +0 -1
  1275. package/dist/src/util/misc/isTransparent.d.ts +0 -11
  1276. package/dist/src/util/misc/isTransparent.d.ts.map +0 -1
  1277. package/dist/src/util/misc/isTransparent.min.mjs +0 -2
  1278. package/dist/src/util/misc/isTransparent.min.mjs.map +0 -1
  1279. package/dist/src/util/misc/isTransparent.mjs +0 -21
  1280. package/dist/src/util/misc/isTransparent.mjs.map +0 -1
  1281. package/dist/src/util/misc/matrix.d.ts +0 -184
  1282. package/dist/src/util/misc/matrix.d.ts.map +0 -1
  1283. package/dist/src/util/misc/matrix.min.mjs +0 -2
  1284. package/dist/src/util/misc/matrix.min.mjs.map +0 -1
  1285. package/dist/src/util/misc/matrix.mjs +0 -252
  1286. package/dist/src/util/misc/matrix.mjs.map +0 -1
  1287. package/dist/src/util/misc/mergeClipPaths.d.ts +0 -22
  1288. package/dist/src/util/misc/mergeClipPaths.d.ts.map +0 -1
  1289. package/dist/src/util/misc/mergeClipPaths.min.mjs +0 -2
  1290. package/dist/src/util/misc/mergeClipPaths.min.mjs.map +0 -1
  1291. package/dist/src/util/misc/mergeClipPaths.mjs +0 -40
  1292. package/dist/src/util/misc/mergeClipPaths.mjs.map +0 -1
  1293. package/dist/src/util/misc/objectEnlive.d.ts +0 -46
  1294. package/dist/src/util/misc/objectEnlive.d.ts.map +0 -1
  1295. package/dist/src/util/misc/objectEnlive.min.mjs +0 -2
  1296. package/dist/src/util/misc/objectEnlive.min.mjs.map +0 -1
  1297. package/dist/src/util/misc/objectEnlive.mjs +0 -116
  1298. package/dist/src/util/misc/objectEnlive.mjs.map +0 -1
  1299. package/dist/src/util/misc/objectTransforms.d.ts +0 -62
  1300. package/dist/src/util/misc/objectTransforms.d.ts.map +0 -1
  1301. package/dist/src/util/misc/objectTransforms.min.mjs +0 -2
  1302. package/dist/src/util/misc/objectTransforms.min.mjs.map +0 -1
  1303. package/dist/src/util/misc/objectTransforms.mjs +0 -95
  1304. package/dist/src/util/misc/objectTransforms.mjs.map +0 -1
  1305. package/dist/src/util/misc/pick.d.ts +0 -9
  1306. package/dist/src/util/misc/pick.d.ts.map +0 -1
  1307. package/dist/src/util/misc/pick.min.mjs +0 -2
  1308. package/dist/src/util/misc/pick.min.mjs.map +0 -1
  1309. package/dist/src/util/misc/pick.mjs +0 -23
  1310. package/dist/src/util/misc/pick.mjs.map +0 -1
  1311. package/dist/src/util/misc/planeChange.d.ts +0 -64
  1312. package/dist/src/util/misc/planeChange.d.ts.map +0 -1
  1313. package/dist/src/util/misc/planeChange.min.mjs +0 -2
  1314. package/dist/src/util/misc/planeChange.min.mjs.map +0 -1
  1315. package/dist/src/util/misc/planeChange.mjs +0 -72
  1316. package/dist/src/util/misc/planeChange.mjs.map +0 -1
  1317. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -52
  1318. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -1
  1319. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs +0 -2
  1320. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs.map +0 -1
  1321. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs +0 -87
  1322. package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs.map +0 -1
  1323. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -90
  1324. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -1
  1325. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs +0 -2
  1326. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs.map +0 -1
  1327. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs +0 -168
  1328. package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs.map +0 -1
  1329. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -27
  1330. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -1
  1331. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs +0 -2
  1332. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs.map +0 -1
  1333. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs +0 -43
  1334. package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs.map +0 -1
  1335. package/dist/src/util/misc/projectStroke/index.d.ts +0 -12
  1336. package/dist/src/util/misc/projectStroke/index.d.ts.map +0 -1
  1337. package/dist/src/util/misc/projectStroke/index.min.mjs +0 -2
  1338. package/dist/src/util/misc/projectStroke/index.min.mjs.map +0 -1
  1339. package/dist/src/util/misc/projectStroke/index.mjs +0 -47
  1340. package/dist/src/util/misc/projectStroke/index.mjs.map +0 -1
  1341. package/dist/src/util/misc/projectStroke/types.d.ts +0 -23
  1342. package/dist/src/util/misc/projectStroke/types.d.ts.map +0 -1
  1343. package/dist/src/util/misc/radiansDegreesConversion.d.ts +0 -14
  1344. package/dist/src/util/misc/radiansDegreesConversion.d.ts.map +0 -1
  1345. package/dist/src/util/misc/radiansDegreesConversion.min.mjs +0 -2
  1346. package/dist/src/util/misc/radiansDegreesConversion.min.mjs.map +0 -1
  1347. package/dist/src/util/misc/radiansDegreesConversion.mjs +0 -18
  1348. package/dist/src/util/misc/radiansDegreesConversion.mjs.map +0 -1
  1349. package/dist/src/util/misc/resolveOrigin.d.ts +0 -9
  1350. package/dist/src/util/misc/resolveOrigin.d.ts.map +0 -1
  1351. package/dist/src/util/misc/resolveOrigin.min.mjs +0 -2
  1352. package/dist/src/util/misc/resolveOrigin.min.mjs.map +0 -1
  1353. package/dist/src/util/misc/resolveOrigin.mjs +0 -19
  1354. package/dist/src/util/misc/resolveOrigin.mjs.map +0 -1
  1355. package/dist/src/util/misc/sin.d.ts +0 -10
  1356. package/dist/src/util/misc/sin.d.ts.map +0 -1
  1357. package/dist/src/util/misc/sin.min.mjs +0 -2
  1358. package/dist/src/util/misc/sin.min.mjs.map +0 -1
  1359. package/dist/src/util/misc/sin.mjs +0 -24
  1360. package/dist/src/util/misc/sin.mjs.map +0 -1
  1361. package/dist/src/util/misc/svgExport.d.ts +0 -8
  1362. package/dist/src/util/misc/svgExport.d.ts.map +0 -1
  1363. package/dist/src/util/misc/svgExport.min.mjs +0 -2
  1364. package/dist/src/util/misc/svgExport.min.mjs.map +0 -1
  1365. package/dist/src/util/misc/svgExport.mjs +0 -13
  1366. package/dist/src/util/misc/svgExport.mjs.map +0 -1
  1367. package/dist/src/util/misc/svgParsing.d.ts +0 -40
  1368. package/dist/src/util/misc/svgParsing.d.ts.map +0 -1
  1369. package/dist/src/util/misc/svgParsing.min.mjs +0 -2
  1370. package/dist/src/util/misc/svgParsing.min.mjs.map +0 -1
  1371. package/dist/src/util/misc/svgParsing.mjs +0 -125
  1372. package/dist/src/util/misc/svgParsing.mjs.map +0 -1
  1373. package/dist/src/util/misc/textStyles.d.ts +0 -32
  1374. package/dist/src/util/misc/textStyles.d.ts.map +0 -1
  1375. package/dist/src/util/misc/textStyles.min.mjs +0 -3
  1376. package/dist/src/util/misc/textStyles.min.mjs.map +0 -1
  1377. package/dist/src/util/misc/textStyles.mjs +0 -73
  1378. package/dist/src/util/misc/textStyles.mjs.map +0 -1
  1379. package/dist/src/util/misc/toFixed.d.ts +0 -8
  1380. package/dist/src/util/misc/toFixed.d.ts.map +0 -1
  1381. package/dist/src/util/misc/toFixed.min.mjs +0 -2
  1382. package/dist/src/util/misc/toFixed.min.mjs.map +0 -1
  1383. package/dist/src/util/misc/toFixed.mjs +0 -12
  1384. package/dist/src/util/misc/toFixed.mjs.map +0 -1
  1385. package/dist/src/util/misc/vectors.d.ts +0 -72
  1386. package/dist/src/util/misc/vectors.d.ts.map +0 -1
  1387. package/dist/src/util/misc/vectors.min.mjs +0 -2
  1388. package/dist/src/util/misc/vectors.min.mjs.map +0 -1
  1389. package/dist/src/util/misc/vectors.mjs +0 -80
  1390. package/dist/src/util/misc/vectors.mjs.map +0 -1
  1391. package/dist/src/util/path/index.d.ts +0 -95
  1392. package/dist/src/util/path/index.d.ts.map +0 -1
  1393. package/dist/src/util/path/index.min.mjs +0 -2
  1394. package/dist/src/util/path/index.min.mjs.map +0 -1
  1395. package/dist/src/util/path/index.mjs +0 -696
  1396. package/dist/src/util/path/index.mjs.map +0 -1
  1397. package/dist/src/util/path/regex.d.ts +0 -3
  1398. package/dist/src/util/path/regex.d.ts.map +0 -1
  1399. package/dist/src/util/path/regex.min.mjs +0 -2
  1400. package/dist/src/util/path/regex.min.mjs.map +0 -1
  1401. package/dist/src/util/path/regex.mjs +0 -16
  1402. package/dist/src/util/path/regex.mjs.map +0 -1
  1403. package/dist/src/util/path/typechecks.d.ts +0 -24
  1404. package/dist/src/util/path/typechecks.d.ts.map +0 -1
  1405. package/dist/src/util/path/typedefs.d.ts +0 -222
  1406. package/dist/src/util/path/typedefs.d.ts.map +0 -1
  1407. package/dist/src/util/transform_matrix_removal.d.ts +0 -15
  1408. package/dist/src/util/transform_matrix_removal.d.ts.map +0 -1
  1409. package/dist/src/util/transform_matrix_removal.min.mjs +0 -2
  1410. package/dist/src/util/transform_matrix_removal.min.mjs.map +0 -1
  1411. package/dist/src/util/transform_matrix_removal.mjs +0 -50
  1412. package/dist/src/util/transform_matrix_removal.mjs.map +0 -1
  1413. package/dist/src/util/typeAssertions.d.ts +0 -13
  1414. package/dist/src/util/typeAssertions.d.ts.map +0 -1
  1415. package/dist/src/util/typeAssertions.min.mjs +0 -2
  1416. package/dist/src/util/typeAssertions.min.mjs.map +0 -1
  1417. package/dist/src/util/typeAssertions.mjs +0 -21
  1418. package/dist/src/util/typeAssertions.mjs.map +0 -1
  1419. package/dist-extensions/_virtual/_@oxc-project_runtime@0.126.0/helpers/defineProperty.mjs +0 -12
  1420. package/dist-extensions/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPrimitive.mjs +0 -14
  1421. package/dist-extensions/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPropertyKey.mjs +0 -9
  1422. package/dist-extensions/_virtual/_@oxc-project_runtime@0.126.0/helpers/typeof.mjs +0 -11
  1423. package/dist-extensions/aligning_guidelines/index.mjs +0 -224
  1424. package/dist-extensions/aligning_guidelines/index.mjs.map +0 -1
  1425. package/dist-extensions/aligning_guidelines/util/basic.mjs +0 -51
  1426. package/dist-extensions/aligning_guidelines/util/basic.mjs.map +0 -1
  1427. package/dist-extensions/aligning_guidelines/util/collect-line.mjs +0 -62
  1428. package/dist-extensions/aligning_guidelines/util/collect-line.mjs.map +0 -1
  1429. package/dist-extensions/aligning_guidelines/util/collect-point.mjs +0 -66
  1430. package/dist-extensions/aligning_guidelines/util/collect-point.mjs.map +0 -1
  1431. package/dist-extensions/aligning_guidelines/util/draw.mjs +0 -72
  1432. package/dist-extensions/aligning_guidelines/util/draw.mjs.map +0 -1
  1433. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs +0 -38
  1434. package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs.map +0 -1
  1435. package/dist-extensions/cropping_controls/controlRendering.mjs +0 -90
  1436. package/dist-extensions/cropping_controls/controlRendering.mjs.map +0 -1
  1437. package/dist-extensions/cropping_controls/croppingControls.mjs +0 -179
  1438. package/dist-extensions/cropping_controls/croppingControls.mjs.map +0 -1
  1439. package/dist-extensions/cropping_controls/croppingHandlers.mjs +0 -234
  1440. package/dist-extensions/cropping_controls/croppingHandlers.mjs.map +0 -1
  1441. package/dist-extensions/cropping_controls/enterCropMode.mjs +0 -35
  1442. package/dist-extensions/cropping_controls/enterCropMode.mjs.map +0 -1
  1443. package/dist-extensions/data_updaters/gradient/index.mjs +0 -32
  1444. package/dist-extensions/data_updaters/gradient/index.mjs.map +0 -1
  1445. package/dist-extensions/data_updaters/origins/index.mjs +0 -37
  1446. package/dist-extensions/data_updaters/origins/index.mjs.map +0 -1
  1447. package/dist-extensions/extensions/aligning_guidelines/index.d.ts +0 -50
  1448. package/dist-extensions/extensions/aligning_guidelines/index.d.ts.map +0 -1
  1449. package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts +0 -42
  1450. package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts.map +0 -1
  1451. package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts +0 -10
  1452. package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts.map +0 -1
  1453. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts +0 -8
  1454. package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -1
  1455. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts +0 -24
  1456. package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -1
  1457. package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts +0 -8
  1458. package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts.map +0 -1
  1459. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -3
  1460. package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -1
  1461. package/dist-extensions/extensions/cropping_controls/controlRendering.d.ts +0 -22
  1462. package/dist-extensions/extensions/cropping_controls/controlRendering.d.ts.map +0 -1
  1463. package/dist-extensions/extensions/cropping_controls/croppingControls.d.ts +0 -22
  1464. package/dist-extensions/extensions/cropping_controls/croppingControls.d.ts.map +0 -1
  1465. package/dist-extensions/extensions/cropping_controls/croppingHandlers.d.ts +0 -55
  1466. package/dist-extensions/extensions/cropping_controls/croppingHandlers.d.ts.map +0 -1
  1467. package/dist-extensions/extensions/cropping_controls/enterCropMode.d.ts +0 -9
  1468. package/dist-extensions/extensions/cropping_controls/enterCropMode.d.ts.map +0 -1
  1469. package/dist-extensions/extensions/data_updaters/gradient/index.d.ts +0 -11
  1470. package/dist-extensions/extensions/data_updaters/gradient/index.d.ts.map +0 -1
  1471. package/dist-extensions/extensions/data_updaters/origins/index.d.ts +0 -21
  1472. package/dist-extensions/extensions/data_updaters/origins/index.d.ts.map +0 -1
  1473. package/dist-extensions/extensions/linear_gradient_controls/index.d.ts +0 -2
  1474. package/dist-extensions/extensions/linear_gradient_controls/index.d.ts.map +0 -1
  1475. package/dist-extensions/extensions/linear_gradient_controls/linearGradientControls.d.ts +0 -4
  1476. package/dist-extensions/extensions/linear_gradient_controls/linearGradientControls.d.ts.map +0 -1
  1477. package/dist-extensions/extensions/linear_gradient_controls/linearGradientHandlers.d.ts +0 -10
  1478. package/dist-extensions/extensions/linear_gradient_controls/linearGradientHandlers.d.ts.map +0 -1
  1479. package/dist-extensions/extensions/westures_integration/index.d.ts +0 -16
  1480. package/dist-extensions/extensions/westures_integration/index.d.ts.map +0 -1
  1481. package/dist-extensions/fabric.d.ts +0 -116
  1482. package/dist-extensions/fabric.d.ts.map +0 -1
  1483. package/dist-extensions/index.d.ts +0 -2
  1484. package/dist-extensions/index.d.ts.map +0 -1
  1485. package/dist-extensions/linear_gradient_controls/linearGradientControls.mjs +0 -30
  1486. package/dist-extensions/linear_gradient_controls/linearGradientControls.mjs.map +0 -1
  1487. package/dist-extensions/linear_gradient_controls/linearGradientHandlers.mjs +0 -71
  1488. package/dist-extensions/linear_gradient_controls/linearGradientHandlers.mjs.map +0 -1
  1489. package/dist-extensions/src/ClassRegistry.d.ts +0 -14
  1490. package/dist-extensions/src/ClassRegistry.d.ts.map +0 -1
  1491. package/dist-extensions/src/Collection.d.ts +0 -141
  1492. package/dist-extensions/src/Collection.d.ts.map +0 -1
  1493. package/dist-extensions/src/CommonMethods.d.ts +0 -32
  1494. package/dist-extensions/src/CommonMethods.d.ts.map +0 -1
  1495. package/dist-extensions/src/EventTypeDefs.d.ts +0 -283
  1496. package/dist-extensions/src/EventTypeDefs.d.ts.map +0 -1
  1497. package/dist-extensions/src/Intersection.d.ts +0 -112
  1498. package/dist-extensions/src/Intersection.d.ts.map +0 -1
  1499. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -22
  1500. package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -1
  1501. package/dist-extensions/src/LayoutManager/LayoutManager.d.ts +0 -56
  1502. package/dist-extensions/src/LayoutManager/LayoutManager.d.ts.map +0 -1
  1503. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -13
  1504. package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -1
  1505. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -14
  1506. package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -1
  1507. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -14
  1508. package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -1
  1509. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -30
  1510. package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -1
  1511. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -10
  1512. package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -1
  1513. package/dist-extensions/src/LayoutManager/constants.d.ts +0 -7
  1514. package/dist-extensions/src/LayoutManager/constants.d.ts.map +0 -1
  1515. package/dist-extensions/src/LayoutManager/index.d.ts +0 -7
  1516. package/dist-extensions/src/LayoutManager/index.d.ts.map +0 -1
  1517. package/dist-extensions/src/LayoutManager/types.d.ts +0 -106
  1518. package/dist-extensions/src/LayoutManager/types.d.ts.map +0 -1
  1519. package/dist-extensions/src/Observable.d.ts +0 -68
  1520. package/dist-extensions/src/Observable.d.ts.map +0 -1
  1521. package/dist-extensions/src/Pattern/Pattern.d.ts +0 -95
  1522. package/dist-extensions/src/Pattern/Pattern.d.ts.map +0 -1
  1523. package/dist-extensions/src/Pattern/index.d.ts +0 -3
  1524. package/dist-extensions/src/Pattern/index.d.ts.map +0 -1
  1525. package/dist-extensions/src/Pattern/types.d.ts +0 -12
  1526. package/dist-extensions/src/Pattern/types.d.ts.map +0 -1
  1527. package/dist-extensions/src/Point.d.ts +0 -219
  1528. package/dist-extensions/src/Point.d.ts.map +0 -1
  1529. package/dist-extensions/src/Shadow.d.ts +0 -89
  1530. package/dist-extensions/src/Shadow.d.ts.map +0 -1
  1531. package/dist-extensions/src/brushes/BaseBrush.d.ts +0 -94
  1532. package/dist-extensions/src/brushes/BaseBrush.d.ts.map +0 -1
  1533. package/dist-extensions/src/brushes/CircleBrush.d.ts +0 -43
  1534. package/dist-extensions/src/brushes/CircleBrush.d.ts.map +0 -1
  1535. package/dist-extensions/src/brushes/PatternBrush.d.ts +0 -23
  1536. package/dist-extensions/src/brushes/PatternBrush.d.ts.map +0 -1
  1537. package/dist-extensions/src/brushes/PencilBrush.d.ts +0 -92
  1538. package/dist-extensions/src/brushes/PencilBrush.d.ts.map +0 -1
  1539. package/dist-extensions/src/brushes/SprayBrush.d.ts +0 -68
  1540. package/dist-extensions/src/brushes/SprayBrush.d.ts.map +0 -1
  1541. package/dist-extensions/src/brushes/typedefs.d.ts +0 -18
  1542. package/dist-extensions/src/brushes/typedefs.d.ts.map +0 -1
  1543. package/dist-extensions/src/cache.d.ts +0 -49
  1544. package/dist-extensions/src/cache.d.ts.map +0 -1
  1545. package/dist-extensions/src/canvas/Canvas.d.ts +0 -354
  1546. package/dist-extensions/src/canvas/Canvas.d.ts.map +0 -1
  1547. package/dist-extensions/src/canvas/CanvasOptions.d.ts +0 -219
  1548. package/dist-extensions/src/canvas/CanvasOptions.d.ts.map +0 -1
  1549. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -30
  1550. package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -1
  1551. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -29
  1552. package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -1
  1553. package/dist-extensions/src/canvas/DOMManagers/util.d.ts +0 -23
  1554. package/dist-extensions/src/canvas/DOMManagers/util.d.ts.map +0 -1
  1555. package/dist-extensions/src/canvas/SelectableCanvas.d.ts +0 -552
  1556. package/dist-extensions/src/canvas/SelectableCanvas.d.ts.map +0 -1
  1557. package/dist-extensions/src/canvas/StaticCanvas.d.ts +0 -607
  1558. package/dist-extensions/src/canvas/StaticCanvas.d.ts.map +0 -1
  1559. package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts +0 -142
  1560. package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts.map +0 -1
  1561. package/dist-extensions/src/canvas/TextEditingManager.d.ts +0 -21
  1562. package/dist-extensions/src/canvas/TextEditingManager.d.ts.map +0 -1
  1563. package/dist-extensions/src/color/Color.d.ts +0 -146
  1564. package/dist-extensions/src/color/Color.d.ts.map +0 -1
  1565. package/dist-extensions/src/color/color_map.d.ts +0 -155
  1566. package/dist-extensions/src/color/color_map.d.ts.map +0 -1
  1567. package/dist-extensions/src/color/constants.d.ts +0 -117
  1568. package/dist-extensions/src/color/constants.d.ts.map +0 -1
  1569. package/dist-extensions/src/color/typedefs.d.ts +0 -16
  1570. package/dist-extensions/src/color/typedefs.d.ts.map +0 -1
  1571. package/dist-extensions/src/color/util.d.ts +0 -27
  1572. package/dist-extensions/src/color/util.d.ts.map +0 -1
  1573. package/dist-extensions/src/config.d.ts +0 -113
  1574. package/dist-extensions/src/config.d.ts.map +0 -1
  1575. package/dist-extensions/src/constants.d.ts +0 -40
  1576. package/dist-extensions/src/constants.d.ts.map +0 -1
  1577. package/dist-extensions/src/controls/Control.d.ts +0 -250
  1578. package/dist-extensions/src/controls/Control.d.ts.map +0 -1
  1579. package/dist-extensions/src/controls/changeWidth.d.ts +0 -35
  1580. package/dist-extensions/src/controls/changeWidth.d.ts.map +0 -1
  1581. package/dist-extensions/src/controls/commonControls.d.ts +0 -28
  1582. package/dist-extensions/src/controls/commonControls.d.ts.map +0 -1
  1583. package/dist-extensions/src/controls/controlRendering.d.ts +0 -29
  1584. package/dist-extensions/src/controls/controlRendering.d.ts.map +0 -1
  1585. package/dist-extensions/src/controls/drag.d.ts +0 -12
  1586. package/dist-extensions/src/controls/drag.d.ts.map +0 -1
  1587. package/dist-extensions/src/controls/fireEvent.d.ts +0 -3
  1588. package/dist-extensions/src/controls/fireEvent.d.ts.map +0 -1
  1589. package/dist-extensions/src/controls/index.d.ts +0 -15
  1590. package/dist-extensions/src/controls/index.d.ts.map +0 -1
  1591. package/dist-extensions/src/controls/pathControl.d.ts +0 -12
  1592. package/dist-extensions/src/controls/pathControl.d.ts.map +0 -1
  1593. package/dist-extensions/src/controls/polyControl.d.ts +0 -30
  1594. package/dist-extensions/src/controls/polyControl.d.ts.map +0 -1
  1595. package/dist-extensions/src/controls/rotate.d.ts +0 -12
  1596. package/dist-extensions/src/controls/rotate.d.ts.map +0 -1
  1597. package/dist-extensions/src/controls/scale.d.ts +0 -42
  1598. package/dist-extensions/src/controls/scale.d.ts.map +0 -1
  1599. package/dist-extensions/src/controls/scaleSkew.d.ts +0 -39
  1600. package/dist-extensions/src/controls/scaleSkew.d.ts.map +0 -1
  1601. package/dist-extensions/src/controls/skew.d.ts +0 -33
  1602. package/dist-extensions/src/controls/skew.d.ts.map +0 -1
  1603. package/dist-extensions/src/controls/util.d.ts +0 -42
  1604. package/dist-extensions/src/controls/util.d.ts.map +0 -1
  1605. package/dist-extensions/src/controls/wrapWithFireEvent.d.ts +0 -10
  1606. package/dist-extensions/src/controls/wrapWithFireEvent.d.ts.map +0 -1
  1607. package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts +0 -9
  1608. package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts.map +0 -1
  1609. package/dist-extensions/src/env/browser.d.ts +0 -3
  1610. package/dist-extensions/src/env/browser.d.ts.map +0 -1
  1611. package/dist-extensions/src/env/index.d.ts +0 -34
  1612. package/dist-extensions/src/env/index.d.ts.map +0 -1
  1613. package/dist-extensions/src/env/types.d.ts +0 -16
  1614. package/dist-extensions/src/env/types.d.ts.map +0 -1
  1615. package/dist-extensions/src/filters/BaseFilter.d.ts +0 -153
  1616. package/dist-extensions/src/filters/BaseFilter.d.ts.map +0 -1
  1617. package/dist-extensions/src/filters/BlendColor.d.ts +0 -65
  1618. package/dist-extensions/src/filters/BlendColor.d.ts.map +0 -1
  1619. package/dist-extensions/src/filters/BlendImage.d.ts +0 -97
  1620. package/dist-extensions/src/filters/BlendImage.d.ts.map +0 -1
  1621. package/dist-extensions/src/filters/Blur.d.ts +0 -49
  1622. package/dist-extensions/src/filters/Blur.d.ts.map +0 -1
  1623. package/dist-extensions/src/filters/Brightness.d.ts +0 -45
  1624. package/dist-extensions/src/filters/Brightness.d.ts.map +0 -1
  1625. package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts +0 -27
  1626. package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts.map +0 -1
  1627. package/dist-extensions/src/filters/ColorMatrix.d.ts +0 -62
  1628. package/dist-extensions/src/filters/ColorMatrix.d.ts.map +0 -1
  1629. package/dist-extensions/src/filters/ColorMatrixFilters.d.ts +0 -15
  1630. package/dist-extensions/src/filters/ColorMatrixFilters.d.ts.map +0 -1
  1631. package/dist-extensions/src/filters/Composed.d.ts +0 -51
  1632. package/dist-extensions/src/filters/Composed.d.ts.map +0 -1
  1633. package/dist-extensions/src/filters/Contrast.d.ts +0 -44
  1634. package/dist-extensions/src/filters/Contrast.d.ts.map +0 -1
  1635. package/dist-extensions/src/filters/Convolute.d.ts +0 -81
  1636. package/dist-extensions/src/filters/Convolute.d.ts.map +0 -1
  1637. package/dist-extensions/src/filters/FilterBackend.d.ts +0 -15
  1638. package/dist-extensions/src/filters/FilterBackend.d.ts.map +0 -1
  1639. package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts +0 -7
  1640. package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts.map +0 -1
  1641. package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts +0 -20
  1642. package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -1
  1643. package/dist-extensions/src/filters/Gamma.d.ts +0 -57
  1644. package/dist-extensions/src/filters/Gamma.d.ts.map +0 -1
  1645. package/dist-extensions/src/filters/Grayscale.d.ts +0 -44
  1646. package/dist-extensions/src/filters/Grayscale.d.ts.map +0 -1
  1647. package/dist-extensions/src/filters/HueRotation.d.ts +0 -34
  1648. package/dist-extensions/src/filters/HueRotation.d.ts.map +0 -1
  1649. package/dist-extensions/src/filters/Invert.d.ts +0 -51
  1650. package/dist-extensions/src/filters/Invert.d.ts.map +0 -1
  1651. package/dist-extensions/src/filters/Noise.d.ts +0 -43
  1652. package/dist-extensions/src/filters/Noise.d.ts.map +0 -1
  1653. package/dist-extensions/src/filters/Pixelate.d.ts +0 -41
  1654. package/dist-extensions/src/filters/Pixelate.d.ts.map +0 -1
  1655. package/dist-extensions/src/filters/RemoveColor.d.ts +0 -51
  1656. package/dist-extensions/src/filters/RemoveColor.d.ts.map +0 -1
  1657. package/dist-extensions/src/filters/Resize.d.ts +0 -134
  1658. package/dist-extensions/src/filters/Resize.d.ts.map +0 -1
  1659. package/dist-extensions/src/filters/Saturation.d.ts +0 -45
  1660. package/dist-extensions/src/filters/Saturation.d.ts.map +0 -1
  1661. package/dist-extensions/src/filters/Vibrance.d.ts +0 -45
  1662. package/dist-extensions/src/filters/Vibrance.d.ts.map +0 -1
  1663. package/dist-extensions/src/filters/WebGLFilterBackend.d.ts +0 -131
  1664. package/dist-extensions/src/filters/WebGLFilterBackend.d.ts.map +0 -1
  1665. package/dist-extensions/src/filters/filters.d.ts +0 -23
  1666. package/dist-extensions/src/filters/filters.d.ts.map +0 -1
  1667. package/dist-extensions/src/filters/index.d.ts +0 -7
  1668. package/dist-extensions/src/filters/index.d.ts.map +0 -1
  1669. package/dist-extensions/src/filters/shaders/baseFilter.d.ts +0 -4
  1670. package/dist-extensions/src/filters/shaders/baseFilter.d.ts.map +0 -1
  1671. package/dist-extensions/src/filters/shaders/blendColor.d.ts +0 -13
  1672. package/dist-extensions/src/filters/shaders/blendColor.d.ts.map +0 -1
  1673. package/dist-extensions/src/filters/shaders/blendImage.d.ts +0 -4
  1674. package/dist-extensions/src/filters/shaders/blendImage.d.ts.map +0 -1
  1675. package/dist-extensions/src/filters/shaders/blur.d.ts +0 -2
  1676. package/dist-extensions/src/filters/shaders/blur.d.ts.map +0 -1
  1677. package/dist-extensions/src/filters/shaders/brightness.d.ts +0 -2
  1678. package/dist-extensions/src/filters/shaders/brightness.d.ts.map +0 -1
  1679. package/dist-extensions/src/filters/shaders/colorMatrix.d.ts +0 -2
  1680. package/dist-extensions/src/filters/shaders/colorMatrix.d.ts.map +0 -1
  1681. package/dist-extensions/src/filters/shaders/constrast.d.ts +0 -2
  1682. package/dist-extensions/src/filters/shaders/constrast.d.ts.map +0 -1
  1683. package/dist-extensions/src/filters/shaders/convolute.d.ts +0 -11
  1684. package/dist-extensions/src/filters/shaders/convolute.d.ts.map +0 -1
  1685. package/dist-extensions/src/filters/shaders/gamma.d.ts +0 -2
  1686. package/dist-extensions/src/filters/shaders/gamma.d.ts.map +0 -1
  1687. package/dist-extensions/src/filters/shaders/grayscale.d.ts +0 -3
  1688. package/dist-extensions/src/filters/shaders/grayscale.d.ts.map +0 -1
  1689. package/dist-extensions/src/filters/shaders/invert.d.ts +0 -2
  1690. package/dist-extensions/src/filters/shaders/invert.d.ts.map +0 -1
  1691. package/dist-extensions/src/filters/shaders/noise.d.ts +0 -2
  1692. package/dist-extensions/src/filters/shaders/noise.d.ts.map +0 -1
  1693. package/dist-extensions/src/filters/shaders/pixelate.d.ts +0 -2
  1694. package/dist-extensions/src/filters/shaders/pixelate.d.ts.map +0 -1
  1695. package/dist-extensions/src/filters/shaders/removeColor.d.ts +0 -2
  1696. package/dist-extensions/src/filters/shaders/removeColor.d.ts.map +0 -1
  1697. package/dist-extensions/src/filters/shaders/saturation.d.ts +0 -2
  1698. package/dist-extensions/src/filters/shaders/saturation.d.ts.map +0 -1
  1699. package/dist-extensions/src/filters/shaders/vibrance.d.ts +0 -2
  1700. package/dist-extensions/src/filters/shaders/vibrance.d.ts.map +0 -1
  1701. package/dist-extensions/src/filters/typedefs.d.ts +0 -70
  1702. package/dist-extensions/src/filters/typedefs.d.ts.map +0 -1
  1703. package/dist-extensions/src/filters/utils.d.ts +0 -10
  1704. package/dist-extensions/src/filters/utils.d.ts.map +0 -1
  1705. package/dist-extensions/src/gradient/Gradient.d.ts +0 -142
  1706. package/dist-extensions/src/gradient/Gradient.d.ts.map +0 -1
  1707. package/dist-extensions/src/gradient/constants.d.ts +0 -15
  1708. package/dist-extensions/src/gradient/constants.d.ts.map +0 -1
  1709. package/dist-extensions/src/gradient/index.d.ts +0 -3
  1710. package/dist-extensions/src/gradient/index.d.ts.map +0 -1
  1711. package/dist-extensions/src/gradient/parser/misc.d.ts +0 -4
  1712. package/dist-extensions/src/gradient/parser/misc.d.ts.map +0 -1
  1713. package/dist-extensions/src/gradient/parser/parseColorStops.d.ts +0 -3
  1714. package/dist-extensions/src/gradient/parser/parseColorStops.d.ts.map +0 -1
  1715. package/dist-extensions/src/gradient/parser/parseCoords.d.ts +0 -17
  1716. package/dist-extensions/src/gradient/parser/parseCoords.d.ts.map +0 -1
  1717. package/dist-extensions/src/gradient/typedefs.d.ts +0 -93
  1718. package/dist-extensions/src/gradient/typedefs.d.ts.map +0 -1
  1719. package/dist-extensions/src/parser/applyViewboxTransform.d.ts +0 -13
  1720. package/dist-extensions/src/parser/applyViewboxTransform.d.ts.map +0 -1
  1721. package/dist-extensions/src/parser/attributes.d.ts +0 -6
  1722. package/dist-extensions/src/parser/attributes.d.ts.map +0 -1
  1723. package/dist-extensions/src/parser/constants.d.ts +0 -43
  1724. package/dist-extensions/src/parser/constants.d.ts.map +0 -1
  1725. package/dist-extensions/src/parser/doesSomeParentMatch.d.ts +0 -2
  1726. package/dist-extensions/src/parser/doesSomeParentMatch.d.ts.map +0 -1
  1727. package/dist-extensions/src/parser/elementMatchesRule.d.ts +0 -5
  1728. package/dist-extensions/src/parser/elementMatchesRule.d.ts.map +0 -1
  1729. package/dist-extensions/src/parser/elements_parser.d.ts +0 -33
  1730. package/dist-extensions/src/parser/elements_parser.d.ts.map +0 -1
  1731. package/dist-extensions/src/parser/getCSSRules.d.ts +0 -8
  1732. package/dist-extensions/src/parser/getCSSRules.d.ts.map +0 -1
  1733. package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts +0 -6
  1734. package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts.map +0 -1
  1735. package/dist-extensions/src/parser/getGradientDefs.d.ts +0 -7
  1736. package/dist-extensions/src/parser/getGradientDefs.d.ts.map +0 -1
  1737. package/dist-extensions/src/parser/getMultipleNodes.d.ts +0 -2
  1738. package/dist-extensions/src/parser/getMultipleNodes.d.ts.map +0 -1
  1739. package/dist-extensions/src/parser/getSvgRegex.d.ts +0 -2
  1740. package/dist-extensions/src/parser/getSvgRegex.d.ts.map +0 -1
  1741. package/dist-extensions/src/parser/getTagName.d.ts +0 -2
  1742. package/dist-extensions/src/parser/getTagName.d.ts.map +0 -1
  1743. package/dist-extensions/src/parser/hasInvalidAncestor.d.ts +0 -2
  1744. package/dist-extensions/src/parser/hasInvalidAncestor.d.ts.map +0 -1
  1745. package/dist-extensions/src/parser/loadSVGFromString.d.ts +0 -17
  1746. package/dist-extensions/src/parser/loadSVGFromString.d.ts.map +0 -1
  1747. package/dist-extensions/src/parser/loadSVGFromURL.d.ts +0 -18
  1748. package/dist-extensions/src/parser/loadSVGFromURL.d.ts.map +0 -1
  1749. package/dist-extensions/src/parser/normalizeAttr.d.ts +0 -3
  1750. package/dist-extensions/src/parser/normalizeAttr.d.ts.map +0 -1
  1751. package/dist-extensions/src/parser/normalizeValue.d.ts +0 -2
  1752. package/dist-extensions/src/parser/normalizeValue.d.ts.map +0 -1
  1753. package/dist-extensions/src/parser/parseAttributes.d.ts +0 -10
  1754. package/dist-extensions/src/parser/parseAttributes.d.ts.map +0 -1
  1755. package/dist-extensions/src/parser/parseFontDeclaration.d.ts +0 -7
  1756. package/dist-extensions/src/parser/parseFontDeclaration.d.ts.map +0 -1
  1757. package/dist-extensions/src/parser/parsePointsAttribute.d.ts +0 -8
  1758. package/dist-extensions/src/parser/parsePointsAttribute.d.ts.map +0 -1
  1759. package/dist-extensions/src/parser/parseSVGDocument.d.ts +0 -19
  1760. package/dist-extensions/src/parser/parseSVGDocument.d.ts.map +0 -1
  1761. package/dist-extensions/src/parser/parseStyleAttribute.d.ts +0 -7
  1762. package/dist-extensions/src/parser/parseStyleAttribute.d.ts.map +0 -1
  1763. package/dist-extensions/src/parser/parseStyleObject.d.ts +0 -8
  1764. package/dist-extensions/src/parser/parseStyleObject.d.ts.map +0 -1
  1765. package/dist-extensions/src/parser/parseStyleString.d.ts +0 -8
  1766. package/dist-extensions/src/parser/parseStyleString.d.ts.map +0 -1
  1767. package/dist-extensions/src/parser/parseTransformAttribute.d.ts +0 -8
  1768. package/dist-extensions/src/parser/parseTransformAttribute.d.ts.map +0 -1
  1769. package/dist-extensions/src/parser/parseUseDirectives.d.ts +0 -2
  1770. package/dist-extensions/src/parser/parseUseDirectives.d.ts.map +0 -1
  1771. package/dist-extensions/src/parser/percent.d.ts +0 -14
  1772. package/dist-extensions/src/parser/percent.d.ts.map +0 -1
  1773. package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts +0 -2
  1774. package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -1
  1775. package/dist-extensions/src/parser/selectorMatches.d.ts +0 -2
  1776. package/dist-extensions/src/parser/selectorMatches.d.ts.map +0 -1
  1777. package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts +0 -6
  1778. package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts.map +0 -1
  1779. package/dist-extensions/src/parser/typedefs.d.ts +0 -10
  1780. package/dist-extensions/src/parser/typedefs.d.ts.map +0 -1
  1781. package/dist-extensions/src/shapes/ActiveSelection.d.ts +0 -105
  1782. package/dist-extensions/src/shapes/ActiveSelection.d.ts.map +0 -1
  1783. package/dist-extensions/src/shapes/Circle.d.ts +0 -107
  1784. package/dist-extensions/src/shapes/Circle.d.ts.map +0 -1
  1785. package/dist-extensions/src/shapes/Ellipse.d.ts +0 -82
  1786. package/dist-extensions/src/shapes/Ellipse.d.ts.map +0 -1
  1787. package/dist-extensions/src/shapes/Group.d.ts +0 -301
  1788. package/dist-extensions/src/shapes/Group.d.ts.map +0 -1
  1789. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts +0 -78
  1790. package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -1
  1791. package/dist-extensions/src/shapes/IText/IText.d.ts +0 -331
  1792. package/dist-extensions/src/shapes/IText/IText.d.ts.map +0 -1
  1793. package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts +0 -312
  1794. package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts.map +0 -1
  1795. package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts +0 -63
  1796. package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -1
  1797. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts +0 -197
  1798. package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -1
  1799. package/dist-extensions/src/shapes/IText/constants.d.ts +0 -13
  1800. package/dist-extensions/src/shapes/IText/constants.d.ts.map +0 -1
  1801. package/dist-extensions/src/shapes/Image.d.ts +0 -297
  1802. package/dist-extensions/src/shapes/Image.d.ts.map +0 -1
  1803. package/dist-extensions/src/shapes/Line.d.ts +0 -118
  1804. package/dist-extensions/src/shapes/Line.d.ts.map +0 -1
  1805. package/dist-extensions/src/shapes/Object/FabricObject.d.ts +0 -11
  1806. package/dist-extensions/src/shapes/Object/FabricObject.d.ts.map +0 -1
  1807. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -72
  1808. package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -1
  1809. package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts +0 -317
  1810. package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts.map +0 -1
  1811. package/dist-extensions/src/shapes/Object/Object.d.ts +0 -718
  1812. package/dist-extensions/src/shapes/Object/Object.d.ts.map +0 -1
  1813. package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts +0 -350
  1814. package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts.map +0 -1
  1815. package/dist-extensions/src/shapes/Object/defaultValues.d.ts +0 -8
  1816. package/dist-extensions/src/shapes/Object/defaultValues.d.ts.map +0 -1
  1817. package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts +0 -92
  1818. package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts.map +0 -1
  1819. package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts +0 -37
  1820. package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts.map +0 -1
  1821. package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts +0 -63
  1822. package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts.map +0 -1
  1823. package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts +0 -62
  1824. package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -1
  1825. package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts +0 -78
  1826. package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -1
  1827. package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts +0 -43
  1828. package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -1
  1829. package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts +0 -41
  1830. package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts.map +0 -1
  1831. package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -32
  1832. package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -1
  1833. package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -63
  1834. package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -1
  1835. package/dist-extensions/src/shapes/Object/types/index.d.ts +0 -6
  1836. package/dist-extensions/src/shapes/Object/types/index.d.ts.map +0 -1
  1837. package/dist-extensions/src/shapes/Path.d.ts +0 -208
  1838. package/dist-extensions/src/shapes/Path.d.ts.map +0 -1
  1839. package/dist-extensions/src/shapes/Polygon.d.ts +0 -7
  1840. package/dist-extensions/src/shapes/Polygon.d.ts.map +0 -1
  1841. package/dist-extensions/src/shapes/Polyline.d.ts +0 -149
  1842. package/dist-extensions/src/shapes/Polyline.d.ts.map +0 -1
  1843. package/dist-extensions/src/shapes/Rect.d.ts +0 -77
  1844. package/dist-extensions/src/shapes/Rect.d.ts.map +0 -1
  1845. package/dist-extensions/src/shapes/Text/StyledText.d.ts +0 -126
  1846. package/dist-extensions/src/shapes/Text/StyledText.d.ts.map +0 -1
  1847. package/dist-extensions/src/shapes/Text/Text.d.ts +0 -709
  1848. package/dist-extensions/src/shapes/Text/Text.d.ts.map +0 -1
  1849. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts +0 -40
  1850. package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -1
  1851. package/dist-extensions/src/shapes/Text/constants.d.ts +0 -15
  1852. package/dist-extensions/src/shapes/Text/constants.d.ts.map +0 -1
  1853. package/dist-extensions/src/shapes/Textbox.d.ts +0 -223
  1854. package/dist-extensions/src/shapes/Textbox.d.ts.map +0 -1
  1855. package/dist-extensions/src/shapes/Triangle.d.ts +0 -27
  1856. package/dist-extensions/src/shapes/Triangle.d.ts.map +0 -1
  1857. package/dist-extensions/src/typedefs.d.ts +0 -99
  1858. package/dist-extensions/src/typedefs.d.ts.map +0 -1
  1859. package/dist-extensions/src/util/animation/AnimationBase.d.ts +0 -55
  1860. package/dist-extensions/src/util/animation/AnimationBase.d.ts.map +0 -1
  1861. package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts +0 -3
  1862. package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts.map +0 -1
  1863. package/dist-extensions/src/util/animation/AnimationRegistry.d.ts +0 -29
  1864. package/dist-extensions/src/util/animation/AnimationRegistry.d.ts.map +0 -1
  1865. package/dist-extensions/src/util/animation/ArrayAnimation.d.ts +0 -10
  1866. package/dist-extensions/src/util/animation/ArrayAnimation.d.ts.map +0 -1
  1867. package/dist-extensions/src/util/animation/ColorAnimation.d.ts +0 -11
  1868. package/dist-extensions/src/util/animation/ColorAnimation.d.ts.map +0 -1
  1869. package/dist-extensions/src/util/animation/ValueAnimation.d.ts +0 -10
  1870. package/dist-extensions/src/util/animation/ValueAnimation.d.ts.map +0 -1
  1871. package/dist-extensions/src/util/animation/animate.d.ts +0 -37
  1872. package/dist-extensions/src/util/animation/animate.d.ts.map +0 -1
  1873. package/dist-extensions/src/util/animation/easing.d.ts +0 -130
  1874. package/dist-extensions/src/util/animation/easing.d.ts.map +0 -1
  1875. package/dist-extensions/src/util/animation/index.d.ts +0 -3
  1876. package/dist-extensions/src/util/animation/index.d.ts.map +0 -1
  1877. package/dist-extensions/src/util/animation/types.d.ts +0 -87
  1878. package/dist-extensions/src/util/animation/types.d.ts.map +0 -1
  1879. package/dist-extensions/src/util/applyMixins.d.ts +0 -8
  1880. package/dist-extensions/src/util/applyMixins.d.ts.map +0 -1
  1881. package/dist-extensions/src/util/dom_event.d.ts +0 -6
  1882. package/dist-extensions/src/util/dom_event.d.ts.map +0 -1
  1883. package/dist-extensions/src/util/dom_misc.d.ts +0 -12
  1884. package/dist-extensions/src/util/dom_misc.d.ts.map +0 -1
  1885. package/dist-extensions/src/util/index.d.ts +0 -35
  1886. package/dist-extensions/src/util/index.d.ts.map +0 -1
  1887. package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts +0 -11
  1888. package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts.map +0 -1
  1889. package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts +0 -2
  1890. package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -1
  1891. package/dist-extensions/src/util/internals/cloneStyles.d.ts +0 -3
  1892. package/dist-extensions/src/util/internals/cloneStyles.d.ts.map +0 -1
  1893. package/dist-extensions/src/util/internals/console.d.ts +0 -8
  1894. package/dist-extensions/src/util/internals/console.d.ts.map +0 -1
  1895. package/dist-extensions/src/util/internals/dom_style.d.ts +0 -7
  1896. package/dist-extensions/src/util/internals/dom_style.d.ts.map +0 -1
  1897. package/dist-extensions/src/util/internals/findRight.d.ts +0 -2
  1898. package/dist-extensions/src/util/internals/findRight.d.ts.map +0 -1
  1899. package/dist-extensions/src/util/internals/getRandomInt.d.ts +0 -8
  1900. package/dist-extensions/src/util/internals/getRandomInt.d.ts.map +0 -1
  1901. package/dist-extensions/src/util/internals/ifNaN.d.ts +0 -8
  1902. package/dist-extensions/src/util/internals/ifNaN.d.ts.map +0 -1
  1903. package/dist-extensions/src/util/internals/normalizeWhiteSpace.d.ts +0 -2
  1904. package/dist-extensions/src/util/internals/normalizeWhiteSpace.d.ts.map +0 -1
  1905. package/dist-extensions/src/util/internals/removeFromArray.d.ts +0 -9
  1906. package/dist-extensions/src/util/internals/removeFromArray.d.ts.map +0 -1
  1907. package/dist-extensions/src/util/internals/svgExportCheck.d.ts +0 -4
  1908. package/dist-extensions/src/util/internals/svgExportCheck.d.ts.map +0 -1
  1909. package/dist-extensions/src/util/internals/uid.d.ts +0 -2
  1910. package/dist-extensions/src/util/internals/uid.d.ts.map +0 -1
  1911. package/dist-extensions/src/util/lang_string.d.ts +0 -22
  1912. package/dist-extensions/src/util/lang_string.d.ts.map +0 -1
  1913. package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts +0 -9
  1914. package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -1
  1915. package/dist-extensions/src/util/misc/capValue.d.ts +0 -2
  1916. package/dist-extensions/src/util/misc/capValue.d.ts.map +0 -1
  1917. package/dist-extensions/src/util/misc/cos.d.ts +0 -10
  1918. package/dist-extensions/src/util/misc/cos.d.ts.map +0 -1
  1919. package/dist-extensions/src/util/misc/dom.d.ts +0 -35
  1920. package/dist-extensions/src/util/misc/dom.d.ts.map +0 -1
  1921. package/dist-extensions/src/util/misc/findScaleTo.d.ts +0 -20
  1922. package/dist-extensions/src/util/misc/findScaleTo.d.ts.map +0 -1
  1923. package/dist-extensions/src/util/misc/groupSVGElements.d.ts +0 -10
  1924. package/dist-extensions/src/util/misc/groupSVGElements.d.ts.map +0 -1
  1925. package/dist-extensions/src/util/misc/isTransparent.d.ts +0 -11
  1926. package/dist-extensions/src/util/misc/isTransparent.d.ts.map +0 -1
  1927. package/dist-extensions/src/util/misc/matrix.d.ts +0 -184
  1928. package/dist-extensions/src/util/misc/matrix.d.ts.map +0 -1
  1929. package/dist-extensions/src/util/misc/mergeClipPaths.d.ts +0 -22
  1930. package/dist-extensions/src/util/misc/mergeClipPaths.d.ts.map +0 -1
  1931. package/dist-extensions/src/util/misc/objectEnlive.d.ts +0 -46
  1932. package/dist-extensions/src/util/misc/objectEnlive.d.ts.map +0 -1
  1933. package/dist-extensions/src/util/misc/objectTransforms.d.ts +0 -62
  1934. package/dist-extensions/src/util/misc/objectTransforms.d.ts.map +0 -1
  1935. package/dist-extensions/src/util/misc/pick.d.ts +0 -9
  1936. package/dist-extensions/src/util/misc/pick.d.ts.map +0 -1
  1937. package/dist-extensions/src/util/misc/planeChange.d.ts +0 -64
  1938. package/dist-extensions/src/util/misc/planeChange.d.ts.map +0 -1
  1939. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -52
  1940. package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -1
  1941. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -90
  1942. package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -1
  1943. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -27
  1944. package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -1
  1945. package/dist-extensions/src/util/misc/projectStroke/index.d.ts +0 -12
  1946. package/dist-extensions/src/util/misc/projectStroke/index.d.ts.map +0 -1
  1947. package/dist-extensions/src/util/misc/projectStroke/types.d.ts +0 -23
  1948. package/dist-extensions/src/util/misc/projectStroke/types.d.ts.map +0 -1
  1949. package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts +0 -14
  1950. package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts.map +0 -1
  1951. package/dist-extensions/src/util/misc/resolveOrigin.d.ts +0 -9
  1952. package/dist-extensions/src/util/misc/resolveOrigin.d.ts.map +0 -1
  1953. package/dist-extensions/src/util/misc/sin.d.ts +0 -10
  1954. package/dist-extensions/src/util/misc/sin.d.ts.map +0 -1
  1955. package/dist-extensions/src/util/misc/svgExport.d.ts +0 -8
  1956. package/dist-extensions/src/util/misc/svgExport.d.ts.map +0 -1
  1957. package/dist-extensions/src/util/misc/svgParsing.d.ts +0 -40
  1958. package/dist-extensions/src/util/misc/svgParsing.d.ts.map +0 -1
  1959. package/dist-extensions/src/util/misc/textStyles.d.ts +0 -32
  1960. package/dist-extensions/src/util/misc/textStyles.d.ts.map +0 -1
  1961. package/dist-extensions/src/util/misc/toFixed.d.ts +0 -8
  1962. package/dist-extensions/src/util/misc/toFixed.d.ts.map +0 -1
  1963. package/dist-extensions/src/util/misc/vectors.d.ts +0 -72
  1964. package/dist-extensions/src/util/misc/vectors.d.ts.map +0 -1
  1965. package/dist-extensions/src/util/path/index.d.ts +0 -95
  1966. package/dist-extensions/src/util/path/index.d.ts.map +0 -1
  1967. package/dist-extensions/src/util/path/regex.d.ts +0 -3
  1968. package/dist-extensions/src/util/path/regex.d.ts.map +0 -1
  1969. package/dist-extensions/src/util/path/typedefs.d.ts +0 -222
  1970. package/dist-extensions/src/util/path/typedefs.d.ts.map +0 -1
  1971. package/dist-extensions/src/util/transform_matrix_removal.d.ts +0 -15
  1972. package/dist-extensions/src/util/transform_matrix_removal.d.ts.map +0 -1
  1973. package/dist-extensions/src/util/typeAssertions.d.ts +0 -13
  1974. package/dist-extensions/src/util/typeAssertions.d.ts.map +0 -1
  1975. package/dist-extensions/westures_integration/index.mjs +0 -60
  1976. package/dist-extensions/westures_integration/index.mjs.map +0 -1
  1977. package/eslint.config.mjs +0 -119
  1978. package/extensions/aligning_guidelines/README.MD +0 -178
  1979. package/extensions/aligning_guidelines/index.ts +0 -263
  1980. package/extensions/aligning_guidelines/typedefs.ts +0 -41
  1981. package/extensions/aligning_guidelines/util/basic.spec.ts +0 -90
  1982. package/extensions/aligning_guidelines/util/basic.ts +0 -50
  1983. package/extensions/aligning_guidelines/util/collect-line.ts +0 -65
  1984. package/extensions/aligning_guidelines/util/collect-point.ts +0 -116
  1985. package/extensions/aligning_guidelines/util/draw.ts +0 -84
  1986. package/extensions/aligning_guidelines/util/get-objects-by-target.ts +0 -45
  1987. package/extensions/cropping_controls/controlRendering.ts +0 -170
  1988. package/extensions/cropping_controls/croppingControls.spec.ts +0 -115
  1989. package/extensions/cropping_controls/croppingControls.ts +0 -228
  1990. package/extensions/cropping_controls/croppingHandlers.spec.ts +0 -1234
  1991. package/extensions/cropping_controls/croppingHandlers.ts +0 -491
  1992. package/extensions/cropping_controls/enterCropMode.ts +0 -32
  1993. package/extensions/data_updaters/README.md +0 -9
  1994. package/extensions/data_updaters/gradient/__snapshots__/index.spec.ts.snap +0 -75
  1995. package/extensions/data_updaters/gradient/index.spec.ts +0 -126
  1996. package/extensions/data_updaters/gradient/index.ts +0 -58
  1997. package/extensions/data_updaters/origins/README.md +0 -32
  1998. package/extensions/data_updaters/origins/index.spec.ts +0 -100
  1999. package/extensions/data_updaters/origins/index.ts +0 -71
  2000. package/extensions/index.ts +0 -34
  2001. package/extensions/linear_gradient_controls/index.ts +0 -1
  2002. package/extensions/linear_gradient_controls/linearGradientControls.spec.ts +0 -51
  2003. package/extensions/linear_gradient_controls/linearGradientControls.ts +0 -40
  2004. package/extensions/linear_gradient_controls/linearGradientHandlers.spec.ts +0 -186
  2005. package/extensions/linear_gradient_controls/linearGradientHandlers.ts +0 -186
  2006. package/extensions/types.d.ts +0 -1
  2007. package/extensions/westures_integration/index.ts +0 -133
  2008. package/fabric.ts +0 -183
  2009. package/index.node.ts +0 -48
  2010. package/index.ts +0 -1
  2011. package/lib/aligning_guidelines.js +0 -286
  2012. package/lib/centering_guidelines.js +0 -90
  2013. package/lib/event.js +0 -1963
  2014. package/playwright.config.ts +0 -76
  2015. package/playwright.setup.ts +0 -76
  2016. package/publish-next.js +0 -15
  2017. package/rolldown.config.mjs +0 -164
  2018. package/scripts/build.mjs +0 -64
  2019. package/scripts/buildLock.mjs +0 -115
  2020. package/scripts/buildReporter.mjs +0 -15
  2021. package/scripts/buildStats.mjs +0 -40
  2022. package/scripts/colors.mjs +0 -10
  2023. package/scripts/dataUpdater.mjs +0 -350
  2024. package/scripts/date-time.mjs +0 -19
  2025. package/scripts/dirname.mjs +0 -14
  2026. package/scripts/git.mjs +0 -36
  2027. package/scripts/index.mjs +0 -195
  2028. package/scripts/sandbox.mjs +0 -148
  2029. package/scripts/updater-reference.mjs +0 -66
  2030. package/sonar-project.properties +0 -23
  2031. package/src/ClassRegistry.spec.ts +0 -90
  2032. package/src/ClassRegistry.ts +0 -62
  2033. package/src/Collection.spec.ts +0 -463
  2034. package/src/Collection.ts +0 -355
  2035. package/src/CommonMethods.ts +0 -62
  2036. package/src/EventTypeDefs.ts +0 -360
  2037. package/src/Intersection.spec.ts +0 -753
  2038. package/src/Intersection.ts +0 -324
  2039. package/src/LayoutManager/ActiveSelectionLayoutManager.spec.ts +0 -189
  2040. package/src/LayoutManager/ActiveSelectionLayoutManager.ts +0 -54
  2041. package/src/LayoutManager/LayoutManager.spec.ts +0 -875
  2042. package/src/LayoutManager/LayoutManager.ts +0 -358
  2043. package/src/LayoutManager/LayoutStrategies/ClipPathLayout.ts +0 -74
  2044. package/src/LayoutManager/LayoutStrategies/FitContentLayout.ts +0 -21
  2045. package/src/LayoutManager/LayoutStrategies/FixedLayout.ts +0 -27
  2046. package/src/LayoutManager/LayoutStrategies/LayoutStrategy.ts +0 -109
  2047. package/src/LayoutManager/LayoutStrategies/utils.ts +0 -56
  2048. package/src/LayoutManager/README.md +0 -125
  2049. package/src/LayoutManager/__snapshots__/LayoutManager.spec.ts.snap +0 -71
  2050. package/src/LayoutManager/constants.ts +0 -6
  2051. package/src/LayoutManager/index.ts +0 -6
  2052. package/src/LayoutManager/types.ts +0 -149
  2053. package/src/Observable.spec.ts +0 -449
  2054. package/src/Observable.ts +0 -179
  2055. package/src/Pattern/Pattern.spec.ts +0 -202
  2056. package/src/Pattern/Pattern.ts +0 -217
  2057. package/src/Pattern/index.ts +0 -2
  2058. package/src/Pattern/types.ts +0 -20
  2059. package/src/Point.spec.ts +0 -573
  2060. package/src/Point.ts +0 -374
  2061. package/src/Shadow.spec.ts +0 -274
  2062. package/src/Shadow.ts +0 -237
  2063. package/src/__snapshots__/Shadow.spec.ts.snap +0 -27
  2064. package/src/brushes/BaseBrush.spec.ts +0 -17
  2065. package/src/brushes/BaseBrush.ts +0 -154
  2066. package/src/brushes/CircleBrush.test.ts +0 -13
  2067. package/src/brushes/CircleBrush.ts +0 -139
  2068. package/src/brushes/PatternBrush.ts +0 -70
  2069. package/src/brushes/PencilBrush.spec.ts +0 -275
  2070. package/src/brushes/PencilBrush.ts +0 -302
  2071. package/src/brushes/SprayBrush.ts +0 -207
  2072. package/src/brushes/__snapshots__/PencilBrush.spec.ts.snap +0 -59
  2073. package/src/brushes/typedefs.ts +0 -18
  2074. package/src/cache.spec.ts +0 -75
  2075. package/src/cache.ts +0 -92
  2076. package/src/canvas/Canvas-dispose.spec.ts +0 -537
  2077. package/src/canvas/Canvas-events.spec.ts +0 -1917
  2078. package/src/canvas/Canvas.fixtures.ts +0 -258
  2079. package/src/canvas/Canvas.spec.ts +0 -2662
  2080. package/src/canvas/Canvas.ts +0 -1631
  2081. package/src/canvas/CanvasOptions.ts +0 -288
  2082. package/src/canvas/DOMManagers/CanvasDOMManager.ts +0 -129
  2083. package/src/canvas/DOMManagers/StaticCanvasDOMManager.ts +0 -80
  2084. package/src/canvas/DOMManagers/util.spec.ts +0 -28
  2085. package/src/canvas/DOMManagers/util.ts +0 -85
  2086. package/src/canvas/SelectableCanvas.spec.ts +0 -505
  2087. package/src/canvas/SelectableCanvas.ts +0 -1494
  2088. package/src/canvas/StaticCanvas.fixtures.ts +0 -292
  2089. package/src/canvas/StaticCanvas.spec.ts +0 -2326
  2090. package/src/canvas/StaticCanvas.ts +0 -1495
  2091. package/src/canvas/StaticCanvasOptions.ts +0 -186
  2092. package/src/canvas/TextEditingManager.ts +0 -68
  2093. package/src/canvas/__tests__/SelectableCanvas.spec.ts +0 -62
  2094. package/src/canvas/__tests__/__snapshots__/eventData.test.ts.snap +0 -755
  2095. package/src/canvas/__tests__/eventData.test.ts +0 -939
  2096. package/src/canvas/canvas_gestures.mixin.ts +0 -208
  2097. package/src/color/Color.ts +0 -334
  2098. package/src/color/color.test.ts +0 -329
  2099. package/src/color/color_map.ts +0 -154
  2100. package/src/color/constants.ts +0 -120
  2101. package/src/color/typedefs.ts +0 -18
  2102. package/src/color/util.ts +0 -93
  2103. package/src/config.ts +0 -158
  2104. package/src/constants.ts +0 -52
  2105. package/src/controls/Control-cursor.spec.ts +0 -65
  2106. package/src/controls/Control-handlers.spec.ts +0 -297
  2107. package/src/controls/Control.spec.ts +0 -172
  2108. package/src/controls/Control.ts +0 -451
  2109. package/src/controls/changeHeight.spec.ts +0 -147
  2110. package/src/controls/changeWidth.test.ts +0 -147
  2111. package/src/controls/changeWidth.ts +0 -88
  2112. package/src/controls/commonControls.ts +0 -106
  2113. package/src/controls/controlRendering.ts +0 -108
  2114. package/src/controls/drag.ts +0 -32
  2115. package/src/controls/fireEvent.ts +0 -18
  2116. package/src/controls/index.ts +0 -29
  2117. package/src/controls/pathControl.spec.ts +0 -77
  2118. package/src/controls/pathControl.ts +0 -293
  2119. package/src/controls/polyControl.spec.ts +0 -51
  2120. package/src/controls/polyControl.ts +0 -131
  2121. package/src/controls/rotate.ts +0 -84
  2122. package/src/controls/scale.test.ts +0 -137
  2123. package/src/controls/scale.ts +0 -278
  2124. package/src/controls/scaleSkew.ts +0 -94
  2125. package/src/controls/skew.ts +0 -251
  2126. package/src/controls/util.ts +0 -162
  2127. package/src/controls/wrapWithFireEvent.ts +0 -34
  2128. package/src/controls/wrapWithFixedAnchor.spec.ts +0 -124
  2129. package/src/controls/wrapWithFixedAnchor.ts +0 -25
  2130. package/src/env/browser.ts +0 -21
  2131. package/src/env/env.spec.ts +0 -47
  2132. package/src/env/index.ts +0 -47
  2133. package/src/env/node.ts +0 -49
  2134. package/src/env/types.ts +0 -16
  2135. package/src/filters/BaseFilter.spec.ts +0 -16
  2136. package/src/filters/BaseFilter.ts +0 -416
  2137. package/src/filters/BlendColor.ts +0 -197
  2138. package/src/filters/BlendImage.ts +0 -220
  2139. package/src/filters/Blur.ts +0 -205
  2140. package/src/filters/Boilerplate.ts +0 -84
  2141. package/src/filters/Brightness.ts +0 -75
  2142. package/src/filters/Canvas2dFilterBackend.ts +0 -68
  2143. package/src/filters/ColorMatrix.spec.ts +0 -39
  2144. package/src/filters/ColorMatrix.ts +0 -141
  2145. package/src/filters/ColorMatrixFilters.ts +0 -84
  2146. package/src/filters/Composed.ts +0 -87
  2147. package/src/filters/Contrast.ts +0 -76
  2148. package/src/filters/Convolute.ts +0 -173
  2149. package/src/filters/FilterBackend.ts +0 -38
  2150. package/src/filters/GLProbes/GLProbe.ts +0 -7
  2151. package/src/filters/GLProbes/NodeGLProbe.ts +0 -15
  2152. package/src/filters/GLProbes/WebGLProbe.ts +0 -49
  2153. package/src/filters/Gamma.ts +0 -119
  2154. package/src/filters/Grayscale.ts +0 -91
  2155. package/src/filters/HueRotation.ts +0 -95
  2156. package/src/filters/Invert.ts +0 -88
  2157. package/src/filters/Noise.ts +0 -76
  2158. package/src/filters/Pixelate.ts +0 -85
  2159. package/src/filters/RemoveColor.ts +0 -121
  2160. package/src/filters/Resize.ts +0 -544
  2161. package/src/filters/Saturation.ts +0 -80
  2162. package/src/filters/Vibrance.ts +0 -82
  2163. package/src/filters/WebGLFilterBackend.spec.ts +0 -50
  2164. package/src/filters/WebGLFilterBackend.ts +0 -416
  2165. package/src/filters/filters.ts +0 -30
  2166. package/src/filters/index.ts +0 -12
  2167. package/src/filters/shaders/baseFilter.ts +0 -17
  2168. package/src/filters/shaders/blendColor.ts +0 -33
  2169. package/src/filters/shaders/blendImage.ts +0 -44
  2170. package/src/filters/shaders/blur.ts +0 -30
  2171. package/src/filters/shaders/brightness.ts +0 -11
  2172. package/src/filters/shaders/colorMatrix.ts +0 -12
  2173. package/src/filters/shaders/constrast.ts +0 -11
  2174. package/src/filters/shaders/convolute.ts +0 -154
  2175. package/src/filters/shaders/gamma.ts +0 -15
  2176. package/src/filters/shaders/grayscale.ts +0 -36
  2177. package/src/filters/shaders/invert.ts +0 -19
  2178. package/src/filters/shaders/noise.ts +0 -16
  2179. package/src/filters/shaders/pixelate.ts +0 -19
  2180. package/src/filters/shaders/removeColor.ts +0 -13
  2181. package/src/filters/shaders/saturation.ts +0 -15
  2182. package/src/filters/shaders/vibrance.ts +0 -16
  2183. package/src/filters/typedefs.ts +0 -81
  2184. package/src/filters/utils.ts +0 -52
  2185. package/src/gradient/Gradient.spec.ts +0 -847
  2186. package/src/gradient/Gradient.ts +0 -424
  2187. package/src/gradient/constants.ts +0 -12
  2188. package/src/gradient/index.ts +0 -2
  2189. package/src/gradient/parser/misc.ts +0 -13
  2190. package/src/gradient/parser/parseColorStops.ts +0 -58
  2191. package/src/gradient/parser/parseCoords.ts +0 -75
  2192. package/src/gradient/typedefs.ts +0 -108
  2193. package/src/mixins/eraser_brush.mixin.ts +0 -869
  2194. package/src/parkinglot/canvas_animation.mixin.ts +0 -120
  2195. package/src/parkinglot/straighten.ts +0 -76
  2196. package/src/parser/applyViewboxTransform.spec.ts +0 -346
  2197. package/src/parser/applyViewboxTransform.ts +0 -172
  2198. package/src/parser/attributes.ts +0 -27
  2199. package/src/parser/constants.spec.ts +0 -36
  2200. package/src/parser/constants.ts +0 -92
  2201. package/src/parser/doesSomeParentMatch.ts +0 -21
  2202. package/src/parser/elementMatchesRule.ts +0 -19
  2203. package/src/parser/elements_parser.ts +0 -230
  2204. package/src/parser/getCSSRules.spec.ts +0 -51
  2205. package/src/parser/getCSSRules.ts +0 -68
  2206. package/src/parser/getGlobalStylesForElement.ts +0 -22
  2207. package/src/parser/getGradientDefs.ts +0 -33
  2208. package/src/parser/getMultipleNodes.ts +0 -19
  2209. package/src/parser/getSvgRegex.ts +0 -3
  2210. package/src/parser/getTagName.ts +0 -1
  2211. package/src/parser/hasInvalidAncestor.ts +0 -20
  2212. package/src/parser/loadSVGFromString.test.ts +0 -75
  2213. package/src/parser/loadSVGFromString.ts +0 -28
  2214. package/src/parser/loadSVGFromURL.ts +0 -42
  2215. package/src/parser/normalizeAttr.ts +0 -5
  2216. package/src/parser/normalizeValue.ts +0 -76
  2217. package/src/parser/parseAttributes.ts +0 -92
  2218. package/src/parser/parseFontDeclaration.ts +0 -44
  2219. package/src/parser/parsePointsAttribute.ts +0 -31
  2220. package/src/parser/parseSVGDocument.ts +0 -93
  2221. package/src/parser/parseStyleAttribute.ts +0 -26
  2222. package/src/parser/parseStyleObject.ts +0 -17
  2223. package/src/parser/parseStyleString.ts +0 -19
  2224. package/src/parser/parseTransformAttribute.ts +0 -92
  2225. package/src/parser/parseUseDirectives.test.ts +0 -115
  2226. package/src/parser/parseUseDirectives.ts +0 -91
  2227. package/src/parser/parser.spec.ts +0 -750
  2228. package/src/parser/percent.ts +0 -31
  2229. package/src/parser/recursivelyParseGradientsXlink.ts +0 -40
  2230. package/src/parser/selectorMatches.ts +0 -26
  2231. package/src/parser/setStrokeFillOpacity.ts +0 -41
  2232. package/src/parser/typedefs.ts +0 -15
  2233. package/src/shapes/ActiveSelection.spec.ts +0 -374
  2234. package/src/shapes/ActiveSelection.ts +0 -254
  2235. package/src/shapes/Circle.spec.ts +0 -265
  2236. package/src/shapes/Circle.ts +0 -257
  2237. package/src/shapes/Ellipse.spec.ts +0 -225
  2238. package/src/shapes/Ellipse.ts +0 -181
  2239. package/src/shapes/Group.spec.ts +0 -1753
  2240. package/src/shapes/Group.ts +0 -717
  2241. package/src/shapes/IText/DraggableTextDelegate.ts +0 -387
  2242. package/src/shapes/IText/IText-click-behavior.spec.ts +0 -435
  2243. package/src/shapes/IText/IText.test.ts +0 -1226
  2244. package/src/shapes/IText/IText.ts +0 -779
  2245. package/src/shapes/IText/ITextBehavior.test.ts +0 -251
  2246. package/src/shapes/IText/ITextBehavior.ts +0 -1119
  2247. package/src/shapes/IText/ITextClickBehavior.ts +0 -242
  2248. package/src/shapes/IText/ITextKeyBehavior.test.ts +0 -380
  2249. package/src/shapes/IText/ITextKeyBehavior.ts +0 -692
  2250. package/src/shapes/IText/__snapshots__/IText.test.ts.snap +0 -50
  2251. package/src/shapes/IText/__snapshots__/ITextBehavior.test.ts.snap +0 -1110
  2252. package/src/shapes/IText/constants.ts +0 -65
  2253. package/src/shapes/Image-filters.spec.ts +0 -1904
  2254. package/src/shapes/Image.spec.ts +0 -1034
  2255. package/src/shapes/Image.ts +0 -859
  2256. package/src/shapes/Line.spec.ts +0 -159
  2257. package/src/shapes/Line.ts +0 -283
  2258. package/src/shapes/Object/FabricObject.spec.ts +0 -19
  2259. package/src/shapes/Object/FabricObject.ts +0 -33
  2260. package/src/shapes/Object/FabricObjectSVGExportMixin.ts +0 -270
  2261. package/src/shapes/Object/InteractiveObject.spec.ts +0 -70
  2262. package/src/shapes/Object/InteractiveObject.ts +0 -737
  2263. package/src/shapes/Object/Object-clip-path.spec.ts +0 -197
  2264. package/src/shapes/Object/Object-interactivity.spec.ts +0 -952
  2265. package/src/shapes/Object/Object.spec.ts +0 -1874
  2266. package/src/shapes/Object/Object.ts +0 -1940
  2267. package/src/shapes/Object/ObjectGeometry.spec.ts +0 -1173
  2268. package/src/shapes/Object/ObjectGeometry.ts +0 -819
  2269. package/src/shapes/Object/ObjectOrigin.spec.ts +0 -469
  2270. package/src/shapes/Object/ObjectSerialization.spec.ts +0 -63
  2271. package/src/shapes/Object/StackedObject.spec.ts +0 -369
  2272. package/src/shapes/Object/__snapshots__/InteractiveObject.spec.ts.snap +0 -75
  2273. package/src/shapes/Object/__snapshots__/ObjectGeometry.spec.ts.snap +0 -22
  2274. package/src/shapes/Object/defaultValues.ts +0 -129
  2275. package/src/shapes/Object/objectSvgExport.spec.ts +0 -139
  2276. package/src/shapes/Object/types/BaseProps.ts +0 -104
  2277. package/src/shapes/Object/types/BorderProps.ts +0 -40
  2278. package/src/shapes/Object/types/ControlProps.ts +0 -70
  2279. package/src/shapes/Object/types/FabricObjectProps.ts +0 -70
  2280. package/src/shapes/Object/types/FillStrokeProps.ts +0 -88
  2281. package/src/shapes/Object/types/LockInteractionProps.ts +0 -49
  2282. package/src/shapes/Object/types/ObjectProps.ts +0 -49
  2283. package/src/shapes/Object/types/ObjectTransformProps.ts +0 -35
  2284. package/src/shapes/Object/types/SerializedObjectProps.ts +0 -70
  2285. package/src/shapes/Object/types/index.ts +0 -7
  2286. package/src/shapes/Path.spec.ts +0 -629
  2287. package/src/shapes/Path.ts +0 -412
  2288. package/src/shapes/Polygon.spec.ts +0 -509
  2289. package/src/shapes/Polygon.ts +0 -15
  2290. package/src/shapes/Polyline.spec.ts +0 -347
  2291. package/src/shapes/Polyline.ts +0 -428
  2292. package/src/shapes/Rect.spec.ts +0 -256
  2293. package/src/shapes/Rect.ts +0 -221
  2294. package/src/shapes/Text/StyledText.spec.ts +0 -61
  2295. package/src/shapes/Text/StyledText.ts +0 -332
  2296. package/src/shapes/Text/Text.spec.ts +0 -1349
  2297. package/src/shapes/Text/Text.ts +0 -1971
  2298. package/src/shapes/Text/TextSVGExportMixin.spec.ts +0 -152
  2299. package/src/shapes/Text/TextSVGExportMixin.ts +0 -410
  2300. package/src/shapes/Text/__snapshots__/Text.spec.ts.snap +0 -225
  2301. package/src/shapes/Text/__snapshots__/TextSVGExportMixin.spec.ts.snap +0 -60
  2302. package/src/shapes/Text/constants.ts +0 -122
  2303. package/src/shapes/Textbox.spec.ts +0 -976
  2304. package/src/shapes/Textbox.ts +0 -579
  2305. package/src/shapes/Triangle.ts +0 -69
  2306. package/src/shapes/__snapshots__/Group.spec.ts.snap +0 -37
  2307. package/src/shapes/__snapshots__/Image.spec.ts.snap +0 -22
  2308. package/src/shapes/__snapshots__/Textbox.spec.ts.snap +0 -165
  2309. package/src/typedefs.ts +0 -132
  2310. package/src/util/__snapshots__/index.spec.ts.snap +0 -124
  2311. package/src/util/animation/AnimationBase.ts +0 -175
  2312. package/src/util/animation/AnimationFrameProvider.ts +0 -9
  2313. package/src/util/animation/AnimationRegistry.ts +0 -59
  2314. package/src/util/animation/ArrayAnimation.ts +0 -27
  2315. package/src/util/animation/ColorAnimation.ts +0 -74
  2316. package/src/util/animation/ValueAnimation.ts +0 -29
  2317. package/src/util/animation/__snapshots__/animations.spec.ts.snap +0 -2772
  2318. package/src/util/animation/animate.ts +0 -74
  2319. package/src/util/animation/animations.spec.ts +0 -520
  2320. package/src/util/animation/easing.ts +0 -327
  2321. package/src/util/animation/index.ts +0 -2
  2322. package/src/util/animation/types.ts +0 -136
  2323. package/src/util/applyMixins.ts +0 -22
  2324. package/src/util/dom_event.spec.ts +0 -23
  2325. package/src/util/dom_event.ts +0 -29
  2326. package/src/util/dom_misc.ts +0 -55
  2327. package/src/util/index.spec.ts +0 -24
  2328. package/src/util/index.ts +0 -116
  2329. package/src/util/internals/applyCanvasTransform.ts +0 -19
  2330. package/src/util/internals/cleanupSvgAttribute.test.ts +0 -17
  2331. package/src/util/internals/cleanupSvgAttribute.ts +0 -12
  2332. package/src/util/internals/cloneStyles.spec.ts +0 -48
  2333. package/src/util/internals/cloneStyles.ts +0 -12
  2334. package/src/util/internals/console.ts +0 -18
  2335. package/src/util/internals/dom_style.spec.ts +0 -17
  2336. package/src/util/internals/dom_style.ts +0 -16
  2337. package/src/util/internals/findRight.ts +0 -11
  2338. package/src/util/internals/getRandomInt.test.ts +0 -49
  2339. package/src/util/internals/getRandomInt.ts +0 -8
  2340. package/src/util/internals/ifNaN.ts +0 -9
  2341. package/src/util/internals/normalizeWhiteSpace.ts +0 -1
  2342. package/src/util/internals/removeFromArray.spec.ts +0 -30
  2343. package/src/util/internals/removeFromArray.ts +0 -14
  2344. package/src/util/internals/svgExportCheck.ts +0 -20
  2345. package/src/util/internals/uid.ts +0 -3
  2346. package/src/util/lang_string.spec.ts +0 -51
  2347. package/src/util/lang_string.ts +0 -107
  2348. package/src/util/misc/boundingBoxFromPoints.spec.ts +0 -25
  2349. package/src/util/misc/boundingBoxFromPoints.ts +0 -29
  2350. package/src/util/misc/capValue.spec.ts +0 -22
  2351. package/src/util/misc/capValue.ts +0 -2
  2352. package/src/util/misc/cos.spec.ts +0 -12
  2353. package/src/util/misc/cos.ts +0 -24
  2354. package/src/util/misc/dom.spec.ts +0 -75
  2355. package/src/util/misc/dom.ts +0 -77
  2356. package/src/util/misc/findScaleTo.spec.ts +0 -68
  2357. package/src/util/misc/findScaleTo.ts +0 -29
  2358. package/src/util/misc/groupSVGElements.spec.ts +0 -41
  2359. package/src/util/misc/groupSVGElements.ts +0 -19
  2360. package/src/util/misc/isTransparent.ts +0 -28
  2361. package/src/util/misc/matrix.spec.ts +0 -251
  2362. package/src/util/misc/matrix.ts +0 -339
  2363. package/src/util/misc/mergeClipPaths.spec.ts +0 -114
  2364. package/src/util/misc/mergeClipPaths.ts +0 -39
  2365. package/src/util/misc/objectEnlive.spec.ts +0 -129
  2366. package/src/util/misc/objectEnlive.ts +0 -206
  2367. package/src/util/misc/objectTransforms.spec.ts +0 -67
  2368. package/src/util/misc/objectTransforms.ts +0 -122
  2369. package/src/util/misc/pick.spec.ts +0 -32
  2370. package/src/util/misc/pick.ts +0 -29
  2371. package/src/util/misc/planeChange.spec.ts +0 -102
  2372. package/src/util/misc/planeChange.ts +0 -92
  2373. package/src/util/misc/projectStroke/StrokeLineCapProjections.ts +0 -148
  2374. package/src/util/misc/projectStroke/StrokeLineJoinProjections.ts +0 -314
  2375. package/src/util/misc/projectStroke/StrokeProjectionsBase.ts +0 -66
  2376. package/src/util/misc/projectStroke/index.ts +0 -81
  2377. package/src/util/misc/projectStroke/types.ts +0 -24
  2378. package/src/util/misc/radiansDegreesConversion.spec.ts +0 -27
  2379. package/src/util/misc/radiansDegreesConversion.ts +0 -18
  2380. package/src/util/misc/resolveOrigin.ts +0 -22
  2381. package/src/util/misc/sin.ts +0 -26
  2382. package/src/util/misc/svgExport.ts +0 -15
  2383. package/src/util/misc/svgParsing.spec.ts +0 -103
  2384. package/src/util/misc/svgParsing.ts +0 -180
  2385. package/src/util/misc/textStyles.ts +0 -138
  2386. package/src/util/misc/toFixed.spec.ts +0 -26
  2387. package/src/util/misc/toFixed.ts +0 -8
  2388. package/src/util/misc/vectors.spec.ts +0 -136
  2389. package/src/util/misc/vectors.ts +0 -100
  2390. package/src/util/path/__snapshots__/index.spec.ts.snap +0 -844
  2391. package/src/util/path/index.spec.ts +0 -165
  2392. package/src/util/path/index.ts +0 -1045
  2393. package/src/util/path/regex.ts +0 -46
  2394. package/src/util/path/typechecks.ts +0 -145
  2395. package/src/util/path/typedefs.ts +0 -326
  2396. package/src/util/transform_matrix_removal.ts +0 -61
  2397. package/src/util/typeAssertions.spec.ts +0 -127
  2398. package/src/util/typeAssertions.ts +0 -47
  2399. package/tsconfig-extensions.json +0 -114
  2400. package/tsconfig.build.json +0 -19
  2401. package/tsconfig.json +0 -118
  2402. package/tsconfig.spec.json +0 -26
  2403. package/typedoc.config.json +0 -13
  2404. package/vitest.config.ts +0 -116
  2405. package/vitest.d.ts +0 -32
  2406. package/vitest.env.d.ts +0 -14
  2407. package/vitest.extend.ts +0 -152
  2408. package/vitest.setup.ts +0 -24
@@ -1 +0,0 @@
1
- {"version":3,"file":"Text.mjs","names":[],"sources":["../../../../src/shapes/Text/Text.ts"],"sourcesContent":["import { cache } from '../../cache';\nimport type { NORMAL } from '../../constants';\nimport { DEFAULT_SVG_FONT_SIZE, FILL, LTR, RTL, STROKE } from '../../constants';\nimport type { ObjectEvents } from '../../EventTypeDefs';\nimport type {\n CompleteTextStyleDeclaration,\n TextStyle,\n TextStyleDeclaration,\n} from './StyledText';\nimport { StyledText } from './StyledText';\nimport { SHARED_ATTRIBUTES } from '../../parser/attributes';\nimport { parseAttributes } from '../../parser/parseAttributes';\nimport type {\n Abortable,\n TCacheCanvasDimensions,\n TClassProperties,\n TFiller,\n TOptions,\n} from '../../typedefs';\nimport { classRegistry } from '../../ClassRegistry';\nimport { graphemeSplit } from '../../util/lang_string';\nimport { createCanvasElementFor } from '../../util/misc/dom';\nimport type { TextStyleArray } from '../../util/misc/textStyles';\nimport {\n hasStyleChanged,\n stylesFromArray,\n stylesToArray,\n} from '../../util/misc/textStyles';\nimport { getPathSegmentsInfo, getPointOnPath } from '../../util/path';\nimport { cacheProperties } from '../Object/FabricObject';\nimport type { Path } from '../Path';\nimport { TextSVGExportMixin } from './TextSVGExportMixin';\nimport { applyMixins } from '../../util/applyMixins';\nimport type { FabricObjectProps, SerializedObjectProps } from '../Object/types';\nimport type { StylePropertiesType } from './constants';\nimport {\n additionalProps,\n textDefaultValues,\n textLayoutProperties,\n JUSTIFY,\n JUSTIFY_CENTER,\n JUSTIFY_LEFT,\n JUSTIFY_RIGHT,\n TEXT_DECORATION_COLOR,\n TEXT_DECORATION_THICKNESS,\n} from './constants';\nimport { CENTER, LEFT, RIGHT, TOP, BOTTOM } from '../../constants';\nimport { isFiller } from '../../util/typeAssertions';\nimport type { Gradient } from '../../gradient/Gradient';\nimport type { Pattern } from '../../Pattern';\nimport type { CSSRules } from '../../parser/typedefs';\nimport { normalizeWs } from '../../util/internals/normalizeWhiteSpace';\n\nlet measuringContext: CanvasRenderingContext2D | null;\n\n/**\n * Return a context for measurement of text string.\n * if created it gets stored for reuse\n */\nfunction getMeasuringContext() {\n if (!measuringContext) {\n const canvas = createCanvasElementFor({\n width: 0,\n height: 0,\n });\n measuringContext = canvas.getContext('2d');\n }\n return measuringContext;\n}\n\nexport type TPathSide = 'left' | 'right';\n\nexport type TPathAlign = 'baseline' | 'center' | 'ascender' | 'descender';\n\nexport type TextLinesInfo = {\n lines: string[];\n graphemeLines: string[][];\n graphemeText: string[];\n _unwrappedLines: string[][];\n};\n\nexport type TextAlign =\n | typeof LEFT\n | typeof CENTER\n | typeof RIGHT\n | typeof JUSTIFY\n | typeof JUSTIFY_LEFT\n | typeof JUSTIFY_CENTER\n | typeof JUSTIFY_RIGHT;\n\nexport type FontStyle = '' | typeof NORMAL | 'italic' | 'oblique';\n\n/**\n * Measure and return the info of a single grapheme.\n * needs the the info of previous graphemes already filled\n * Override to customize measuring\n */\nexport type GraphemeBBox = {\n width: number;\n height: number;\n kernedWidth: number;\n left: number;\n deltaY: number;\n renderLeft?: number;\n renderTop?: number;\n angle?: number;\n};\n\n// @TODO this is not complete\ninterface UniqueTextProps {\n charSpacing: number;\n lineHeight: number;\n fontSize: number;\n fontWeight: string | number;\n fontFamily: string;\n fontStyle: FontStyle;\n pathSide: TPathSide;\n pathAlign: TPathAlign;\n underline: boolean;\n overline: boolean;\n linethrough: boolean;\n textAlign: TextAlign;\n direction: CanvasDirection;\n path?: Path;\n textDecorationThickness: number;\n textDecorationColor?: string;\n}\n\nexport interface SerializedTextProps\n extends SerializedObjectProps, UniqueTextProps {\n styles: TextStyleArray | TextStyle;\n}\n\nexport interface TextProps extends FabricObjectProps, UniqueTextProps {\n styles: TextStyle;\n}\n\n/**\n * Text class\n * @see {@link http://fabric5.fabricjs.com/fabric-intro-part-2#text}\n */\nexport class FabricText<\n Props extends TOptions<TextProps> = Partial<TextProps>,\n SProps extends SerializedTextProps = SerializedTextProps,\n EventSpec extends ObjectEvents = ObjectEvents,\n>\n extends StyledText<Props, SProps, EventSpec>\n implements UniqueTextProps\n{\n /**\n * Properties that requires a text layout recalculation when changed\n * @type string[]\n * @protected\n */\n static textLayoutProperties: string[] = textLayoutProperties;\n\n /**\n * @private\n */\n declare _reNewline: RegExp;\n\n /**\n * Use this regular expression to filter for whitespaces that is not a new line.\n * Mostly used when text is 'justify' aligned.\n * @private\n */\n declare _reSpacesAndTabs: RegExp;\n\n /**\n * Use this regular expression to filter for whitespace that is not a new line.\n * Mostly used when text is 'justify' aligned.\n * @private\n */\n declare _reSpaceAndTab: RegExp;\n\n /**\n * Use this regular expression to filter consecutive groups of non spaces.\n * Mostly used when text is 'justify' aligned.\n * @private\n */\n declare _reWords: RegExp;\n\n declare text: string;\n\n /**\n * Font size (in pixels)\n * @type Number\n */\n declare fontSize: number;\n\n /**\n * Font weight (e.g. bold, normal, 400, 600, 800)\n * @type {(Number|String)}\n */\n declare fontWeight: string | number;\n\n /**\n * Font family\n * @type String\n */\n declare fontFamily: string;\n\n /**\n * Text decoration underline.\n * @type Boolean\n */\n declare underline: boolean;\n\n /**\n * Text decoration overline.\n * @type Boolean\n */\n declare overline: boolean;\n\n /**\n * Text decoration linethrough.\n * @type Boolean\n */\n declare linethrough: boolean;\n\n /**\n * Text alignment. Possible values: \"left\", \"center\", \"right\", \"justify\",\n * \"justify-left\", \"justify-center\" or \"justify-right\".\n * @type TextAlign\n */\n declare textAlign: TextAlign;\n\n /**\n * Font style . Possible values: \"\", \"normal\", \"italic\" or \"oblique\".\n * @type FontStyle\n */\n declare fontStyle: FontStyle;\n\n /**\n * Line height\n * @type Number\n */\n declare lineHeight: number;\n\n /**\n * Superscript schema object (minimum overlap)\n */\n declare superscript: {\n /**\n * fontSize factor\n * @default 0.6\n */\n size: number;\n /**\n * baseline-shift factor (upwards)\n * @default -0.35\n */\n baseline: number;\n };\n\n /**\n * Subscript schema object (minimum overlap)\n */\n declare subscript: {\n /**\n * fontSize factor\n * @default 0.6\n */\n size: number;\n /**\n * baseline-shift factor (downwards)\n * @default 0.11\n */\n baseline: number;\n };\n\n /**\n * Background color of text lines\n * @type String\n */\n declare textBackgroundColor: string;\n\n declare styles: TextStyle;\n\n /**\n * Path that the text should follow.\n * since 4.6.0 the path will be drawn automatically.\n * if you want to make the path visible, give it a stroke and strokeWidth or fill value\n * if you want it to be hidden, assign visible = false to the path.\n * This feature is in BETA, and SVG import/export is not yet supported.\n * @type Path\n * @example\n * const textPath = new Text('Text on a path', {\n * top: 150,\n * left: 150,\n * textAlign: 'center',\n * charSpacing: -50,\n * path: new Path('M 0 0 C 50 -100 150 -100 200 0', {\n * strokeWidth: 1,\n * visible: false\n * }),\n * pathSide: 'left',\n * pathStartOffset: 0\n * });\n */\n declare path?: Path;\n\n /**\n * The text decoration thickness for underline, overline and strikethrough\n * The thickness is expressed in thousandths of fontSize ( em ).\n * The original value was 1/15 that translates to 66.6667 thousandths.\n * The choice of unit of measure is to align with charSpacing.\n * You can slim the thickness without issues, while large underline or overline may end up\n * outside the bounding box of the text. In order to fix that a bigger refactor of the code\n * is needed and is out of scope for now. If you need such large overline on the first line\n * of text or large underline on the last line of text, consider disabling caching as a\n * workaround\n * @default 66.667\n */\n declare textDecorationThickness: number;\n\n /**\n * Optional text decoration color for underline, overline and strikethrough.\n * When undefined, decoration color falls back to the text fill color.\n * This feature is not really supported by anything else than svg 2 specs with css3 support.\n * Chrome does not support this, nor firefox apparently.\n */\n declare textDecorationColor?: string;\n\n /**\n * Offset amount for text path starting position\n * Only used when text has a path\n */\n declare pathStartOffset: number;\n\n /**\n * Which side of the path the text should be drawn on.\n * Only used when text has a path\n * @type {TPathSide} 'left|right'\n */\n declare pathSide: TPathSide;\n\n /**\n * How text is aligned to the path. This property determines\n * the perpendicular position of each character relative to the path.\n * (one of \"baseline\", \"center\", \"ascender\", \"descender\")\n * This feature is in BETA, and its behavior may change\n * @type TPathAlign\n */\n declare pathAlign: TPathAlign;\n\n /**\n * @private\n */\n declare _fontSizeFraction: number;\n\n /**\n * @private\n */\n declare offsets: { underline: number; linethrough: number; overline: number };\n\n /**\n * Text Line proportion to font Size (in pixels)\n * @type Number\n */\n declare _fontSizeMult: number;\n\n /**\n * additional space between characters\n * expressed in thousands of em unit\n * @type Number\n */\n declare charSpacing: number;\n\n /**\n * Baseline shift, styles only, keep at 0 for the main text object\n * @type {Number}\n */\n declare deltaY: number;\n\n /**\n * WARNING: EXPERIMENTAL. NOT SUPPORTED YET\n * determine the direction of the text.\n * This has to be set manually together with textAlign and originX for proper\n * experience.\n * some interesting link for the future\n * https://www.w3.org/International/questions/qa-bidi-unicode-controls\n * @since 4.5.0\n * @type {CanvasDirection} 'ltr|rtl'\n */\n declare direction: CanvasDirection;\n\n /**\n * contains characters bounding boxes\n * This variable is considered to be protected.\n * But for how mixins are implemented right now, we can't leave it private\n * @protected\n */\n __charBounds: GraphemeBBox[][] = [];\n\n /**\n * use this size when measuring text. To avoid IE11 rounding errors\n * @type {Number}\n * @readonly\n * @private\n */\n declare CACHE_FONT_SIZE: number;\n\n /**\n * contains the min text width to avoid getting 0\n * @type {Number}\n */\n declare MIN_TEXT_WIDTH: number;\n\n /**\n * contains the the text of the object, divided in lines as they are displayed\n * on screen. Wrapping will divide the text independently of line breaks\n * @type {string[]}\n */\n declare textLines: string[];\n\n /**\n * same as textlines, but each line is an array of graphemes as split by splitByGrapheme\n * @type {string[]}\n */\n declare _textLines: string[][];\n\n declare _unwrappedTextLines: string[][];\n declare _text: string[];\n declare cursorWidth: number;\n declare __lineHeights: number[];\n declare __lineWidths: number[];\n declare initialized?: true;\n\n static cacheProperties = [...cacheProperties, ...additionalProps];\n\n static ownDefaults = textDefaultValues;\n\n static type = 'Text';\n\n static getDefaults(): Record<string, any> {\n return { ...super.getDefaults(), ...FabricText.ownDefaults };\n }\n\n constructor(text: string, options?: Props) {\n super();\n Object.assign(this, FabricText.ownDefaults);\n this.setOptions(options);\n if (!this.styles) {\n this.styles = {};\n }\n this.text = text;\n this.initialized = true;\n if (this.path) {\n this.setPathInfo();\n }\n this.initDimensions();\n this.setCoords();\n }\n\n /**\n * If text has a path, it will add the extra information needed\n * for path and text calculations\n */\n setPathInfo() {\n const path = this.path;\n if (path) {\n path.segmentsInfo = getPathSegmentsInfo(path.path);\n }\n }\n\n /**\n * @private\n * Divides text into lines of text and lines of graphemes.\n */\n _splitText(): TextLinesInfo {\n const newLines = this._splitTextIntoLines(this.text);\n this.textLines = newLines.lines;\n this._textLines = newLines.graphemeLines;\n this._unwrappedTextLines = newLines._unwrappedLines;\n this._text = newLines.graphemeText;\n return newLines;\n }\n\n /**\n * Initialize or update text dimensions.\n * Updates this.width and this.height with the proper values.\n * Does not return dimensions.\n */\n initDimensions() {\n this._splitText();\n this._clearCache();\n this.dirty = true;\n if (this.path) {\n this.width = this.path.width;\n this.height = this.path.height;\n } else {\n this.width =\n this.calcTextWidth() || this.cursorWidth || this.MIN_TEXT_WIDTH;\n this.height = this.calcTextHeight();\n }\n if (this.textAlign.includes(JUSTIFY)) {\n // once text is measured we need to make space fatter to make justified text.\n this.enlargeSpaces();\n }\n }\n\n /**\n * Enlarge space boxes and shift the others\n */\n enlargeSpaces() {\n let diffSpace,\n currentLineWidth,\n numberOfSpaces,\n accumulatedSpace,\n line,\n charBound,\n spaces;\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n if (\n this.textAlign !== JUSTIFY &&\n (i === len - 1 || this.isEndOfWrapping(i))\n ) {\n continue;\n }\n accumulatedSpace = 0;\n line = this._textLines[i];\n currentLineWidth = this.getLineWidth(i);\n if (\n currentLineWidth < this.width &&\n (spaces = this.textLines[i].match(this._reSpacesAndTabs))\n ) {\n numberOfSpaces = spaces.length;\n diffSpace = (this.width - currentLineWidth) / numberOfSpaces;\n for (let j = 0; j <= line.length; j++) {\n charBound = this.__charBounds[i][j];\n if (this._reSpaceAndTab.test(line[j])) {\n charBound.width += diffSpace;\n charBound.kernedWidth += diffSpace;\n charBound.left += accumulatedSpace;\n accumulatedSpace += diffSpace;\n } else {\n charBound.left += accumulatedSpace;\n }\n }\n }\n }\n }\n\n /**\n * Detect if the text line is ended with an hard break\n * text and itext do not have wrapping, return false\n * @return {Boolean}\n */\n isEndOfWrapping(lineIndex: number): boolean {\n return lineIndex === this._textLines.length - 1;\n }\n\n /**\n * Detect if a line has a linebreak and so we need to account for it when moving\n * and counting style.\n * It return always 1 for text and Itext. Textbox has its own implementation\n * @return Number\n */\n missingNewlineOffset(lineIndex: number, skipWrapping?: boolean): 0 | 1;\n missingNewlineOffset(_lineIndex: number): 1 {\n return 1;\n }\n\n /**\n * Returns 2d representation (lineIndex and charIndex) of cursor\n * @param {Number} selectionStart\n * @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.\n */\n get2DCursorLocation(selectionStart: number, skipWrapping?: boolean) {\n const lines = skipWrapping ? this._unwrappedTextLines : this._textLines;\n let i: number;\n for (i = 0; i < lines.length; i++) {\n if (selectionStart <= lines[i].length) {\n return {\n lineIndex: i,\n charIndex: selectionStart,\n };\n }\n selectionStart -=\n lines[i].length + this.missingNewlineOffset(i, skipWrapping);\n }\n return {\n lineIndex: i - 1,\n charIndex:\n lines[i - 1].length < selectionStart\n ? lines[i - 1].length\n : selectionStart,\n };\n }\n\n /**\n * Returns string representation of an instance\n * @return {String} String representation of text object\n */\n toString(): string {\n return `#<Text (${this.complexity()}): { \"text\": \"${\n this.text\n }\", \"fontFamily\": \"${this.fontFamily}\" }>`;\n }\n\n /**\n * Return the dimension and the zoom level needed to create a cache canvas\n * big enough to host the object to be cached.\n * @private\n * @param {Object} dim.x width of object to be cached\n * @param {Object} dim.y height of object to be cached\n * @return {Object}.width width of canvas\n * @return {Object}.height height of canvas\n * @return {Object}.zoomX zoomX zoom value to unscale the canvas before drawing cache\n * @return {Object}.zoomY zoomY zoom value to unscale the canvas before drawing cache\n */\n _getCacheCanvasDimensions(): TCacheCanvasDimensions {\n const dims = super._getCacheCanvasDimensions();\n const fontSize = this.fontSize;\n dims.width += fontSize * dims.zoomX;\n dims.height += fontSize * dims.zoomY;\n return dims;\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _render(ctx: CanvasRenderingContext2D) {\n const path = this.path;\n path && !path.isNotVisible() && path._render(ctx);\n this._setTextStyles(ctx);\n this._renderTextLinesBackground(ctx);\n this._renderTextDecoration(ctx, 'underline');\n this._renderText(ctx);\n this._renderTextDecoration(ctx, 'overline');\n this._renderTextDecoration(ctx, 'linethrough');\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _renderText(ctx: CanvasRenderingContext2D) {\n if (this.paintFirst === STROKE) {\n this._renderTextStroke(ctx);\n this._renderTextFill(ctx);\n } else {\n this._renderTextFill(ctx);\n this._renderTextStroke(ctx);\n }\n }\n\n /**\n * Set the font parameter of the context with the object properties or with charStyle\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @param {Object} [charStyle] object with font style properties\n * @param {String} [charStyle.fontFamily] Font Family\n * @param {Number} [charStyle.fontSize] Font size in pixels. ( without px suffix )\n * @param {String} [charStyle.fontWeight] Font weight\n * @param {String} [charStyle.fontStyle] Font style (italic|normal)\n */\n _setTextStyles(\n ctx: CanvasRenderingContext2D,\n charStyle?: any,\n forMeasuring?: boolean,\n ) {\n ctx.textBaseline = 'alphabetic';\n if (this.path) {\n switch (this.pathAlign) {\n case CENTER:\n ctx.textBaseline = 'middle';\n break;\n case 'ascender':\n ctx.textBaseline = TOP;\n break;\n case 'descender':\n ctx.textBaseline = BOTTOM;\n break;\n }\n }\n ctx.font = this._getFontDeclaration(charStyle, forMeasuring);\n }\n\n /**\n * calculate and return the text Width measuring each line.\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @return {Number} Maximum width of Text object\n */\n calcTextWidth(): number {\n let maxWidth = this.getLineWidth(0);\n\n for (let i = 1, len = this._textLines.length; i < len; i++) {\n const currentLineWidth = this.getLineWidth(i);\n if (currentLineWidth > maxWidth) {\n maxWidth = currentLineWidth;\n }\n }\n return maxWidth;\n }\n\n /**\n * @private\n * @param {String} method Method name (\"fillText\" or \"strokeText\")\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @param {String} line Text to render\n * @param {Number} left Left position of text\n * @param {Number} top Top position of text\n * @param {Number} lineIndex Index of a line in a text\n */\n _renderTextLine(\n method: 'fillText' | 'strokeText',\n ctx: CanvasRenderingContext2D,\n line: string[],\n left: number,\n top: number,\n lineIndex: number,\n ) {\n this._renderChars(method, ctx, line, left, top, lineIndex);\n }\n\n /**\n * Renders the text background for lines, taking care of style\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _renderTextLinesBackground(ctx: CanvasRenderingContext2D) {\n if (!this.textBackgroundColor && !this.styleHas('textBackgroundColor')) {\n return;\n }\n const originalFill = ctx.fillStyle,\n leftOffset = this._getLeftOffset();\n let lineTopOffset = this._getTopOffset();\n\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n const heightOfLine = this.getHeightOfLine(i);\n if (\n !this.textBackgroundColor &&\n !this.styleHas('textBackgroundColor', i)\n ) {\n lineTopOffset += heightOfLine;\n continue;\n }\n const jlen = this._textLines[i].length;\n const lineLeftOffset = this._getLineLeftOffset(i);\n let boxWidth = 0;\n let boxStart = 0;\n let drawStart;\n let currentColor;\n let lastColor = this.getValueOfPropertyAt(i, 0, 'textBackgroundColor');\n const bgHeight = this.getHeightOfLineImpl(i);\n for (let j = 0; j < jlen; j++) {\n // at this point charbox are either standard or full with pathInfo if there is a path.\n const charBox = this.__charBounds[i][j] as Required<GraphemeBBox>;\n currentColor = this.getValueOfPropertyAt(i, j, 'textBackgroundColor');\n if (this.path) {\n ctx.save();\n ctx.translate(charBox.renderLeft, charBox.renderTop);\n ctx.rotate(charBox.angle);\n ctx.fillStyle = currentColor;\n currentColor &&\n ctx.fillRect(\n -charBox.width / 2,\n -bgHeight * (1 - this._fontSizeFraction),\n charBox.width,\n bgHeight,\n );\n ctx.restore();\n } else if (currentColor !== lastColor) {\n drawStart = leftOffset + lineLeftOffset + boxStart;\n if (this.direction === RTL) {\n drawStart = this.width - drawStart - boxWidth;\n }\n ctx.fillStyle = lastColor;\n lastColor &&\n ctx.fillRect(drawStart, lineTopOffset, boxWidth, bgHeight);\n boxStart = charBox.left;\n boxWidth = charBox.width;\n lastColor = currentColor;\n } else {\n boxWidth += charBox.kernedWidth;\n }\n }\n if (currentColor && !this.path) {\n drawStart = leftOffset + lineLeftOffset + boxStart;\n if (this.direction === RTL) {\n drawStart = this.width - drawStart - boxWidth;\n }\n ctx.fillStyle = currentColor;\n ctx.fillRect(drawStart, lineTopOffset, boxWidth, bgHeight);\n }\n lineTopOffset += heightOfLine;\n }\n ctx.fillStyle = originalFill;\n // if there is text background color no\n // other shadows should be casted\n this._removeShadow(ctx);\n }\n\n /**\n * measure and return the width of a single character.\n * possibly overridden to accommodate different measure logic or\n * to hook some external lib for character measurement\n * @private\n * @param {String} _char, char to be measured\n * @param {Object} charStyle style of char to be measured\n * @param {String} [previousChar] previous char\n * @param {Object} [prevCharStyle] style of previous char\n */\n _measureChar(\n _char: string,\n charStyle: CompleteTextStyleDeclaration,\n previousChar: string | undefined,\n prevCharStyle: CompleteTextStyleDeclaration | Record<string, never>,\n ) {\n const fontCache = cache.getFontCache(charStyle),\n fontDeclaration = this._getFontDeclaration(charStyle),\n couple = previousChar ? previousChar + _char : _char,\n stylesAreEqual =\n previousChar &&\n fontDeclaration === this._getFontDeclaration(prevCharStyle),\n fontMultiplier = charStyle.fontSize / this.CACHE_FONT_SIZE;\n let width: number | undefined,\n coupleWidth: number | undefined,\n previousWidth: number | undefined,\n kernedWidth: number | undefined;\n\n if (previousChar && fontCache.has(previousChar)) {\n previousWidth = fontCache.get(previousChar);\n }\n if (fontCache.has(_char)) {\n kernedWidth = width = fontCache.get(_char);\n }\n if (stylesAreEqual && fontCache.has(couple)) {\n coupleWidth = fontCache.get(couple)!;\n kernedWidth = coupleWidth - previousWidth!;\n }\n if (\n width === undefined ||\n previousWidth === undefined ||\n coupleWidth === undefined\n ) {\n const ctx = getMeasuringContext()!;\n // send a TRUE to specify measuring font size CACHE_FONT_SIZE\n this._setTextStyles(ctx, charStyle, true);\n if (width === undefined) {\n kernedWidth = width = ctx.measureText(_char).width;\n fontCache.set(_char, width);\n }\n if (previousWidth === undefined && stylesAreEqual && previousChar) {\n previousWidth = ctx.measureText(previousChar).width;\n fontCache.set(previousChar, previousWidth);\n }\n if (stylesAreEqual && coupleWidth === undefined) {\n // we can measure the kerning couple and subtract the width of the previous character\n coupleWidth = ctx.measureText(couple).width;\n fontCache.set(couple, coupleWidth);\n // safe to use the non-null since if undefined we defined it before.\n kernedWidth = coupleWidth - previousWidth!;\n }\n }\n return {\n width: width * fontMultiplier,\n kernedWidth: kernedWidth! * fontMultiplier,\n };\n }\n\n /**\n * Computes height of character at given position\n * @param {Number} line the line index number\n * @param {Number} _char the character index number\n * @return {Number} fontSize of the character\n */\n getHeightOfChar(line: number, _char: number): number {\n return this.getValueOfPropertyAt(line, _char, 'fontSize');\n }\n\n /**\n * measure a text line measuring all characters.\n * @param {Number} lineIndex line number\n */\n measureLine(lineIndex: number) {\n const lineInfo = this._measureLine(lineIndex);\n if (this.charSpacing !== 0) {\n lineInfo.width -= this._getWidthOfCharSpacing();\n }\n if (lineInfo.width < 0) {\n lineInfo.width = 0;\n }\n return lineInfo;\n }\n\n /**\n * measure every grapheme of a line, populating __charBounds\n * @param {Number} lineIndex\n * @return {Object} object.width total width of characters\n * @return {Object} object.numOfSpaces length of chars that match this._reSpacesAndTabs\n */\n _measureLine(lineIndex: number) {\n let width = 0,\n prevGrapheme: string | undefined,\n graphemeInfo: GraphemeBBox | undefined;\n\n const reverse = this.pathSide === RIGHT,\n path = this.path,\n line = this._textLines[lineIndex],\n llength = line.length,\n lineBounds = new Array<GraphemeBBox>(llength);\n\n this.__charBounds[lineIndex] = lineBounds;\n for (let i = 0; i < llength; i++) {\n const grapheme = line[i];\n graphemeInfo = this._getGraphemeBox(grapheme, lineIndex, i, prevGrapheme);\n lineBounds[i] = graphemeInfo;\n width += graphemeInfo.kernedWidth;\n prevGrapheme = grapheme;\n }\n // this latest bound box represent the last character of the line\n // to simplify cursor handling in interactive mode.\n lineBounds[llength] = {\n left: graphemeInfo ? graphemeInfo.left + graphemeInfo.width : 0,\n width: 0,\n kernedWidth: 0,\n height: this.fontSize,\n deltaY: 0,\n } as GraphemeBBox;\n if (path && path.segmentsInfo) {\n let positionInPath = 0;\n const totalPathLength =\n path.segmentsInfo[path.segmentsInfo.length - 1].length;\n switch (this.textAlign) {\n case LEFT:\n positionInPath = reverse ? totalPathLength - width : 0;\n break;\n case CENTER:\n positionInPath = (totalPathLength - width) / 2;\n break;\n case RIGHT:\n positionInPath = reverse ? 0 : totalPathLength - width;\n break;\n //todo - add support for justify\n }\n positionInPath += this.pathStartOffset * (reverse ? -1 : 1);\n for (\n let i = reverse ? llength - 1 : 0;\n reverse ? i >= 0 : i < llength;\n reverse ? i-- : i++\n ) {\n graphemeInfo = lineBounds[i];\n if (positionInPath > totalPathLength) {\n positionInPath %= totalPathLength;\n } else if (positionInPath < 0) {\n positionInPath += totalPathLength;\n }\n // it would probably much faster to send all the grapheme position for a line\n // and calculate path position/angle at once.\n this._setGraphemeOnPath(positionInPath, graphemeInfo);\n positionInPath += graphemeInfo.kernedWidth;\n }\n }\n return { width: width, numOfSpaces: 0 };\n }\n\n /**\n * Calculate the angle and the left,top position of the char that follow a path.\n * It appends it to graphemeInfo to be reused later at rendering\n * @private\n * @param {Number} positionInPath to be measured\n * @param {GraphemeBBox} graphemeInfo current grapheme box information\n * @param {Object} startingPoint position of the point\n */\n _setGraphemeOnPath(positionInPath: number, graphemeInfo: GraphemeBBox) {\n const centerPosition = positionInPath + graphemeInfo.kernedWidth / 2,\n path = this.path!;\n\n // we are at currentPositionOnPath. we want to know what point on the path is.\n const info = getPointOnPath(path.path, centerPosition, path.segmentsInfo)!;\n graphemeInfo.renderLeft = info.x - path.pathOffset.x;\n graphemeInfo.renderTop = info.y - path.pathOffset.y;\n graphemeInfo.angle = info.angle + (this.pathSide === RIGHT ? Math.PI : 0);\n }\n\n /**\n *\n * @param {String} grapheme to be measured\n * @param {Number} lineIndex index of the line where the char is\n * @param {Number} charIndex position in the line\n * @param {String} [prevGrapheme] character preceding the one to be measured\n * @returns {GraphemeBBox} grapheme bbox\n */\n _getGraphemeBox(\n grapheme: string,\n lineIndex: number,\n charIndex: number,\n prevGrapheme?: string,\n skipLeft?: boolean,\n ): GraphemeBBox {\n const style = this.getCompleteStyleDeclaration(lineIndex, charIndex),\n prevStyle = prevGrapheme\n ? this.getCompleteStyleDeclaration(lineIndex, charIndex - 1)\n : {},\n info = this._measureChar(grapheme, style, prevGrapheme, prevStyle);\n let kernedWidth = info.kernedWidth,\n width = info.width,\n charSpacing;\n\n if (this.charSpacing !== 0) {\n charSpacing = this._getWidthOfCharSpacing();\n width += charSpacing;\n kernedWidth += charSpacing;\n }\n\n const box: GraphemeBBox = {\n width,\n left: 0,\n height: style.fontSize,\n kernedWidth,\n deltaY: style.deltaY,\n };\n if (charIndex > 0 && !skipLeft) {\n const previousBox = this.__charBounds[lineIndex][charIndex - 1];\n box.left =\n previousBox.left + previousBox.width + info.kernedWidth - info.width;\n }\n return box;\n }\n\n /**\n * Calculate height of line at 'lineIndex',\n * without the lineHeigth multiplication factor\n * @private\n * @param {Number} lineIndex index of line to calculate\n * @return {Number}\n */\n private getHeightOfLineImpl(lineIndex: number): number {\n const lh = this.__lineHeights;\n if (lh[lineIndex]) {\n return lh[lineIndex];\n }\n\n // char 0 is measured before the line cycle because it needs to char\n // emptylines\n let maxHeight = this.getHeightOfChar(lineIndex, 0);\n for (let i = 1, len = this._textLines[lineIndex].length; i < len; i++) {\n maxHeight = Math.max(this.getHeightOfChar(lineIndex, i), maxHeight);\n }\n\n return (lh[lineIndex] = maxHeight * this._fontSizeMult);\n }\n\n /**\n * Calculate height of line at 'lineIndex'\n * @param {Number} lineIndex index of line to calculate\n * @return {Number}\n */\n getHeightOfLine(lineIndex: number): number {\n return this.getHeightOfLineImpl(lineIndex) * this.lineHeight;\n }\n\n /**\n * Calculate text box height\n */\n calcTextHeight() {\n let height = 0;\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n height +=\n i === len - 1 ? this.getHeightOfLineImpl(i) : this.getHeightOfLine(i);\n }\n return height;\n }\n\n /**\n * @private\n * @return {Number} Left offset\n */\n _getLeftOffset(): number {\n return this.direction === LTR ? -this.width / 2 : this.width / 2;\n }\n\n /**\n * @private\n * @return {Number} Top offset\n */\n _getTopOffset(): number {\n return -this.height / 2;\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @param {String} method Method name (\"fillText\" or \"strokeText\")\n */\n _renderTextCommon(\n ctx: CanvasRenderingContext2D,\n method: 'fillText' | 'strokeText',\n ) {\n ctx.save();\n let lineHeights = 0;\n const left = this._getLeftOffset(),\n top = this._getTopOffset();\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n this._renderTextLine(\n method,\n ctx,\n this._textLines[i],\n left + this._getLineLeftOffset(i),\n top + lineHeights + this.getHeightOfLineImpl(i),\n i,\n );\n lineHeights += this.getHeightOfLine(i);\n }\n ctx.restore();\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _renderTextFill(ctx: CanvasRenderingContext2D) {\n if (!this.fill && !this.styleHas(FILL)) {\n return;\n }\n\n this._renderTextCommon(ctx, 'fillText');\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _renderTextStroke(ctx: CanvasRenderingContext2D) {\n if ((!this.stroke || this.strokeWidth === 0) && this.isEmptyStyles()) {\n return;\n }\n\n if (this.shadow && !this.shadow.affectStroke) {\n this._removeShadow(ctx);\n }\n\n ctx.save();\n this._setLineDash(ctx, this.strokeDashArray);\n ctx.beginPath();\n this._renderTextCommon(ctx, 'strokeText');\n ctx.closePath();\n ctx.restore();\n }\n\n /**\n * @private\n * @param {String} method fillText or strokeText.\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @param {Array} line Content of the line, split in an array by grapheme\n * @param {Number} left\n * @param {Number} top\n * @param {Number} lineIndex\n */\n _renderChars(\n method: 'fillText' | 'strokeText',\n ctx: CanvasRenderingContext2D,\n line: Array<any>,\n left: number,\n top: number,\n lineIndex: number,\n ) {\n const isJustify = this.textAlign.includes(JUSTIFY),\n path = this.path,\n shortCut =\n !isJustify &&\n this.charSpacing === 0 &&\n this.isEmptyStyles(lineIndex) &&\n !path,\n isLtr = this.direction === LTR,\n sign = this.direction === LTR ? 1 : -1,\n // this was changed in the PR #7674\n // currentDirection = ctx.canvas.getAttribute('dir');\n currentDirection = ctx.direction;\n\n let actualStyle,\n nextStyle,\n charsToRender = '',\n charBox,\n boxWidth = 0,\n timeToRender,\n drawingLeft;\n\n ctx.save();\n if (currentDirection !== this.direction) {\n ctx.canvas.setAttribute('dir', isLtr ? LTR : RTL);\n ctx.direction = isLtr ? LTR : RTL;\n ctx.textAlign = isLtr ? LEFT : RIGHT;\n }\n top -= this.getHeightOfLineImpl(lineIndex) * this._fontSizeFraction;\n if (shortCut) {\n // render all the line in one pass without checking\n // drawingLeft = isLtr ? left : left - this.getLineWidth(lineIndex);\n this._renderChar(method, ctx, lineIndex, 0, line.join(''), left, top);\n ctx.restore();\n return;\n }\n for (let i = 0, len = line.length - 1; i <= len; i++) {\n timeToRender = i === len || this.charSpacing || path;\n charsToRender += line[i];\n charBox = this.__charBounds[lineIndex][i] as Required<GraphemeBBox>;\n if (boxWidth === 0) {\n left += sign * (charBox.kernedWidth - charBox.width);\n boxWidth += charBox.width;\n } else {\n boxWidth += charBox.kernedWidth;\n }\n if (isJustify && !timeToRender) {\n if (this._reSpaceAndTab.test(line[i])) {\n timeToRender = true;\n }\n }\n if (!timeToRender) {\n // if we have charSpacing, we render char by char\n actualStyle =\n actualStyle || this.getCompleteStyleDeclaration(lineIndex, i);\n nextStyle = this.getCompleteStyleDeclaration(lineIndex, i + 1);\n timeToRender = hasStyleChanged(actualStyle, nextStyle, false);\n }\n if (timeToRender) {\n if (path) {\n ctx.save();\n ctx.translate(charBox.renderLeft, charBox.renderTop);\n ctx.rotate(charBox.angle);\n this._renderChar(\n method,\n ctx,\n lineIndex,\n i,\n charsToRender,\n -boxWidth / 2,\n 0,\n );\n ctx.restore();\n } else {\n drawingLeft = left;\n this._renderChar(\n method,\n ctx,\n lineIndex,\n i,\n charsToRender,\n drawingLeft,\n top,\n );\n }\n charsToRender = '';\n actualStyle = nextStyle;\n left += sign * boxWidth;\n boxWidth = 0;\n }\n }\n ctx.restore();\n }\n\n /**\n * This function try to patch the missing gradientTransform on canvas gradients.\n * transforming a context to transform the gradient, is going to transform the stroke too.\n * we want to transform the gradient but not the stroke operation, so we create\n * a transformed gradient on a pattern and then we use the pattern instead of the gradient.\n * this method has drawbacks: is slow, is in low resolution, needs a patch for when the size\n * is limited.\n * @private\n * @param {TFiller} filler a fabric gradient instance\n * @return {CanvasPattern} a pattern to use as fill/stroke style\n */\n _applyPatternGradientTransformText(filler: TFiller) {\n // TODO: verify compatibility with strokeUniform\n const width = this.width + this.strokeWidth,\n height = this.height + this.strokeWidth,\n pCanvas = createCanvasElementFor({\n width,\n height,\n }),\n pCtx = pCanvas.getContext('2d')!;\n pCanvas.width = width;\n pCanvas.height = height;\n pCtx.beginPath();\n pCtx.moveTo(0, 0);\n pCtx.lineTo(width, 0);\n pCtx.lineTo(width, height);\n pCtx.lineTo(0, height);\n pCtx.closePath();\n pCtx.translate(width / 2, height / 2);\n pCtx.fillStyle = filler.toLive(pCtx)!;\n this._applyPatternGradientTransform(pCtx, filler);\n pCtx.fill();\n return pCtx.createPattern(pCanvas, 'no-repeat')!;\n }\n\n handleFiller<T extends 'fill' | 'stroke'>(\n ctx: CanvasRenderingContext2D,\n property: `${T}Style`,\n filler: TFiller | string,\n ): { offsetX: number; offsetY: number } {\n let offsetX: number, offsetY: number;\n if (isFiller(filler)) {\n if (\n (filler as Gradient<'linear'>).gradientUnits === 'percentage' ||\n (filler as Gradient<'linear'>).gradientTransform ||\n (filler as Pattern).patternTransform\n ) {\n // need to transform gradient in a pattern.\n // this is a slow process. If you are hitting this codepath, and the object\n // is not using caching, you should consider switching it on.\n // we need a canvas as big as the current object caching canvas.\n offsetX = -this.width / 2;\n offsetY = -this.height / 2;\n ctx.translate(offsetX, offsetY);\n ctx[property] = this._applyPatternGradientTransformText(filler);\n return { offsetX, offsetY };\n } else {\n // is a simple gradient or pattern\n ctx[property] = filler.toLive(ctx)!;\n return this._applyPatternGradientTransform(ctx, filler);\n }\n } else {\n // is a color\n ctx[property] = filler;\n }\n return { offsetX: 0, offsetY: 0 };\n }\n\n /**\n * This function prepare the canvas for a stroke style, and stroke and strokeWidth\n * need to be sent in as defined\n * @param {CanvasRenderingContext2D} ctx\n * @param {CompleteTextStyleDeclaration} style with stroke and strokeWidth defined\n * @returns\n */\n _setStrokeStyles(\n ctx: CanvasRenderingContext2D,\n {\n stroke,\n strokeWidth,\n }: Pick<CompleteTextStyleDeclaration, 'stroke' | 'strokeWidth'>,\n ) {\n ctx.lineWidth = strokeWidth;\n ctx.lineCap = this.strokeLineCap;\n ctx.lineDashOffset = this.strokeDashOffset;\n ctx.lineJoin = this.strokeLineJoin;\n ctx.miterLimit = this.strokeMiterLimit;\n return this.handleFiller(ctx, 'strokeStyle', stroke!);\n }\n\n /**\n * This function prepare the canvas for a ill style, and fill\n * need to be sent in as defined\n * @param {CanvasRenderingContext2D} ctx\n * @param {CompleteTextStyleDeclaration} style with ill defined\n * @returns\n */\n _setFillStyles(ctx: CanvasRenderingContext2D, { fill }: Pick<this, 'fill'>) {\n return this.handleFiller(ctx, 'fillStyle', fill!);\n }\n\n /**\n * @private\n * @param {String} method\n * @param {CanvasRenderingContext2D} ctx Context to render on\n * @param {Number} lineIndex\n * @param {Number} charIndex\n * @param {String} _char\n * @param {Number} left Left coordinate\n * @param {Number} top Top coordinate\n * @param {Number} lineHeight Height of the line\n */\n _renderChar(\n method: 'fillText' | 'strokeText',\n ctx: CanvasRenderingContext2D,\n lineIndex: number,\n charIndex: number,\n _char: string,\n left: number,\n top: number,\n ) {\n const decl = this._getStyleDeclaration(lineIndex, charIndex),\n fullDecl = this.getCompleteStyleDeclaration(lineIndex, charIndex),\n shouldFill = method === 'fillText' && fullDecl.fill,\n shouldStroke =\n method === 'strokeText' && fullDecl.stroke && fullDecl.strokeWidth;\n\n if (!shouldStroke && !shouldFill) {\n return;\n }\n ctx.save();\n\n ctx.font = this._getFontDeclaration(fullDecl);\n\n if (decl.textBackgroundColor) {\n this._removeShadow(ctx);\n }\n if (decl.deltaY) {\n top += decl.deltaY;\n }\n\n if (shouldFill) {\n const fillOffsets = this._setFillStyles(ctx, fullDecl);\n ctx.fillText(\n _char,\n left - fillOffsets.offsetX,\n top - fillOffsets.offsetY,\n );\n }\n\n if (shouldStroke) {\n const strokeOffsets = this._setStrokeStyles(ctx, fullDecl);\n ctx.strokeText(\n _char,\n left - strokeOffsets.offsetX,\n top - strokeOffsets.offsetY,\n );\n }\n\n ctx.restore();\n }\n\n /**\n * Turns the character into a 'superior figure' (i.e. 'superscript')\n * @param {Number} start selection start\n * @param {Number} end selection end\n */\n setSuperscript(start: number, end: number) {\n this._setScript(start, end, this.superscript);\n }\n\n /**\n * Turns the character into an 'inferior figure' (i.e. 'subscript')\n * @param {Number} start selection start\n * @param {Number} end selection end\n */\n setSubscript(start: number, end: number) {\n this._setScript(start, end, this.subscript);\n }\n\n /**\n * Applies 'schema' at given position\n * @private\n * @param {Number} start selection start\n * @param {Number} end selection end\n * @param {Number} schema\n */\n protected _setScript(\n start: number,\n end: number,\n schema: {\n size: number;\n baseline: number;\n },\n ) {\n const loc = this.get2DCursorLocation(start, true),\n fontSize = this.getValueOfPropertyAt(\n loc.lineIndex,\n loc.charIndex,\n 'fontSize',\n ),\n dy = this.getValueOfPropertyAt(loc.lineIndex, loc.charIndex, 'deltaY'),\n style = {\n fontSize: fontSize * schema.size,\n deltaY: dy + fontSize * schema.baseline,\n };\n this.setSelectionStyles(style, start, end);\n }\n\n /**\n * @private\n * @param {Number} lineIndex index text line\n * @return {Number} Line left offset\n */\n _getLineLeftOffset(lineIndex: number): number {\n const lineWidth = this.getLineWidth(lineIndex),\n lineDiff = this.width - lineWidth,\n textAlign = this.textAlign,\n direction = this.direction,\n isEndOfWrapping = this.isEndOfWrapping(lineIndex);\n let leftOffset = 0;\n if (\n textAlign === JUSTIFY ||\n (textAlign === JUSTIFY_CENTER && !isEndOfWrapping) ||\n (textAlign === JUSTIFY_RIGHT && !isEndOfWrapping) ||\n (textAlign === JUSTIFY_LEFT && !isEndOfWrapping)\n ) {\n return 0;\n }\n if (textAlign === CENTER) {\n leftOffset = lineDiff / 2;\n }\n if (textAlign === RIGHT) {\n leftOffset = lineDiff;\n }\n if (textAlign === JUSTIFY_CENTER) {\n leftOffset = lineDiff / 2;\n }\n if (textAlign === JUSTIFY_RIGHT) {\n leftOffset = lineDiff;\n }\n if (direction === RTL) {\n if (textAlign === RIGHT || textAlign === JUSTIFY_RIGHT) {\n leftOffset = 0;\n } else if (textAlign === LEFT || textAlign === JUSTIFY_LEFT) {\n leftOffset = -lineDiff;\n } else if (textAlign === CENTER || textAlign === JUSTIFY_CENTER) {\n leftOffset = -lineDiff / 2;\n }\n }\n return leftOffset;\n }\n\n /**\n * @private\n */\n _clearCache() {\n this._forceClearCache = false;\n this.__lineWidths = [];\n this.__lineHeights = [];\n this.__charBounds = [];\n }\n\n /**\n * Measure a single line given its index. Used to calculate the initial\n * text bounding box. The values are calculated and stored in __lineWidths cache.\n * @private\n * @param {Number} lineIndex line number\n * @return {Number} Line width\n */\n getLineWidth(lineIndex: number): number {\n if (this.__lineWidths[lineIndex] !== undefined) {\n return this.__lineWidths[lineIndex];\n }\n\n const { width } = this.measureLine(lineIndex);\n this.__lineWidths[lineIndex] = width;\n return width;\n }\n\n _getWidthOfCharSpacing() {\n if (this.charSpacing !== 0) {\n return (this.fontSize * this.charSpacing) / 1000;\n }\n return 0;\n }\n\n /**\n * Retrieves the value of property at given character position\n * @param {Number} lineIndex the line number\n * @param {Number} charIndex the character number\n * @param {String} property the property name\n * @returns the value of 'property'\n */\n getValueOfPropertyAt<T extends StylePropertiesType>(\n lineIndex: number,\n charIndex: number,\n property: T,\n ): this[T] {\n const charStyle = this._getStyleDeclaration(lineIndex, charIndex);\n return (charStyle[property] ?? this[property]) as this[T];\n }\n\n /**\n * @private\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n _renderTextDecoration(\n ctx: CanvasRenderingContext2D,\n type: 'underline' | 'linethrough' | 'overline',\n ) {\n if (!this[type] && !this.styleHas(type)) {\n return;\n }\n let topOffset = this._getTopOffset();\n const leftOffset = this._getLeftOffset(),\n path = this.path,\n charSpacing = this._getWidthOfCharSpacing(),\n offsetAligner =\n type === 'linethrough' ? 0.5 : type === 'overline' ? 1 : 0,\n offsetY = this.offsets[type];\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n const heightOfLine = this.getHeightOfLine(i);\n if (!this[type] && !this.styleHas(type, i)) {\n topOffset += heightOfLine;\n continue;\n }\n const line = this._textLines[i];\n const maxHeight = heightOfLine / this.lineHeight;\n const lineLeftOffset = this._getLineLeftOffset(i);\n let boxStart = 0;\n let boxWidth = 0;\n let lastDecoration = this.getValueOfPropertyAt(i, 0, type);\n let lastFill = this.getValueOfPropertyAt(i, 0, FILL);\n let lastDecorationColor =\n this.getValueOfPropertyAt(i, 0, TEXT_DECORATION_COLOR) || lastFill;\n let lastTickness = this.getValueOfPropertyAt(\n i,\n 0,\n TEXT_DECORATION_THICKNESS,\n );\n let currentDecoration = lastDecoration;\n let currentFill: typeof lastFill;\n let currentDecorationColor = lastDecorationColor;\n let currentTickness = lastTickness;\n const top = topOffset + maxHeight * (1 - this._fontSizeFraction);\n let size = this.getHeightOfChar(i, 0);\n let dy = this.getValueOfPropertyAt(i, 0, 'deltaY');\n for (let j = 0, jlen = line.length; j < jlen; j++) {\n const charBox = this.__charBounds[i][j] as Required<GraphemeBBox>;\n currentDecoration = this.getValueOfPropertyAt(i, j, type);\n currentFill = this.getValueOfPropertyAt(i, j, FILL);\n currentDecorationColor =\n this.getValueOfPropertyAt(i, j, TEXT_DECORATION_COLOR) || currentFill;\n currentTickness = this.getValueOfPropertyAt(\n i,\n j,\n TEXT_DECORATION_THICKNESS,\n );\n const currentSize = this.getHeightOfChar(i, j);\n const currentDy = this.getValueOfPropertyAt(i, j, 'deltaY');\n if (path && currentDecoration && currentFill) {\n const finalTickness = (this.fontSize * currentTickness) / 1000;\n ctx.save();\n // bug? verify currentDecorationColor is a valid fill here.\n ctx.fillStyle = currentDecorationColor as string;\n ctx.translate(charBox.renderLeft, charBox.renderTop);\n ctx.rotate(charBox.angle);\n ctx.fillRect(\n -charBox.kernedWidth / 2,\n offsetY * currentSize + currentDy - offsetAligner * finalTickness,\n charBox.kernedWidth,\n finalTickness,\n );\n ctx.restore();\n } else if (\n (currentDecoration !== lastDecoration ||\n currentFill !== lastFill ||\n currentDecorationColor !== lastDecorationColor ||\n currentSize !== size ||\n currentTickness !== lastTickness ||\n currentDy !== dy) &&\n boxWidth > 0\n ) {\n const finalTickness = (this.fontSize * lastTickness) / 1000;\n let drawStart = leftOffset + lineLeftOffset + boxStart;\n if (this.direction === RTL) {\n drawStart = this.width - drawStart - boxWidth;\n }\n if (lastDecoration && lastDecorationColor && lastTickness) {\n // bug? verify lastDecorationColor is a valid fill here.\n ctx.fillStyle = lastDecorationColor as string;\n ctx.fillRect(\n drawStart,\n top + offsetY * size + dy - offsetAligner * finalTickness,\n boxWidth,\n finalTickness,\n );\n }\n boxStart = charBox.left;\n boxWidth = charBox.width;\n lastDecoration = currentDecoration;\n lastDecorationColor = currentDecorationColor;\n lastTickness = currentTickness;\n lastFill = currentFill;\n size = currentSize;\n dy = currentDy;\n } else {\n boxWidth += charBox.kernedWidth;\n }\n }\n let drawStart = leftOffset + lineLeftOffset + boxStart;\n if (this.direction === RTL) {\n drawStart = this.width - drawStart - boxWidth;\n }\n ctx.fillStyle = currentDecorationColor as string;\n const finalTickness = (this.fontSize * currentTickness) / 1000;\n currentDecoration &&\n currentDecorationColor &&\n currentTickness &&\n ctx.fillRect(\n drawStart,\n top + offsetY * size + dy - offsetAligner * finalTickness,\n boxWidth - charSpacing,\n finalTickness,\n );\n topOffset += heightOfLine;\n }\n // if there is text background color no\n // other shadows should be casted\n this._removeShadow(ctx);\n }\n\n /**\n * return font declaration string for canvas context\n * @param {Object} [styleObject] object\n * @returns {String} font declaration formatted for canvas context.\n */\n _getFontDeclaration(\n {\n fontFamily = this.fontFamily,\n fontStyle = this.fontStyle,\n fontWeight = this.fontWeight,\n fontSize = this.fontSize,\n }: Partial<\n Pick<\n TextStyleDeclaration,\n 'fontFamily' | 'fontStyle' | 'fontWeight' | 'fontSize'\n >\n > = {},\n forMeasuring?: boolean,\n ): string {\n const parsedFontFamily =\n fontFamily.includes(\"'\") ||\n fontFamily.includes('\"') ||\n fontFamily.includes(',') ||\n FabricText.genericFonts.includes(fontFamily.toLowerCase())\n ? fontFamily\n : `\"${fontFamily}\"`;\n return [\n fontStyle,\n fontWeight,\n `${forMeasuring ? this.CACHE_FONT_SIZE : fontSize}px`,\n parsedFontFamily,\n ].join(' ');\n }\n\n /**\n * Renders text instance on a specified context\n * @param {CanvasRenderingContext2D} ctx Context to render on\n */\n render(ctx: CanvasRenderingContext2D) {\n if (!this.visible) {\n return;\n }\n if (\n this.canvas &&\n this.canvas.skipOffscreen &&\n !this.group &&\n !this.isOnScreen()\n ) {\n return;\n }\n if (this._forceClearCache) {\n this.initDimensions();\n }\n super.render(ctx);\n }\n\n /**\n * Override this method to customize grapheme splitting\n * @todo the util `graphemeSplit` needs to be injectable in some way.\n * is more comfortable to inject the correct util rather than having to override text\n * in the middle of the prototype chain\n * @param {string} value\n * @returns {string[]} array of graphemes\n */\n graphemeSplit(value: string): string[] {\n return graphemeSplit(value);\n }\n\n /**\n * Returns the text as an array of lines.\n * @param {String} text text to split\n * @returns Lines in the text\n */\n _splitTextIntoLines(text: string): TextLinesInfo {\n const lines = text.split(this._reNewline),\n newLines = new Array<string[]>(lines.length),\n newLine = ['\\n'];\n let newText: string[] = [];\n for (let i = 0; i < lines.length; i++) {\n newLines[i] = this.graphemeSplit(lines[i]);\n newText = newText.concat(newLines[i], newLine);\n }\n newText.pop();\n return {\n _unwrappedLines: newLines,\n lines: lines,\n graphemeText: newText,\n graphemeLines: newLines,\n };\n }\n\n /**\n * Returns object representation of an instance\n * @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output\n * @return {Object} Object representation of an instance\n */\n toObject<\n T extends Omit<Props & TClassProperties<this>, keyof SProps>,\n K extends keyof T = never,\n >(propertiesToInclude: K[] = []): Pick<T, K> & SProps {\n return {\n ...super.toObject([...additionalProps, ...propertiesToInclude] as K[]),\n styles: stylesToArray(this.styles, this.text),\n ...(this.path ? { path: this.path.toObject() } : {}),\n };\n }\n\n set(key: string | any, value?: any) {\n const { textLayoutProperties } = this.constructor as typeof FabricText;\n super.set(key, value);\n let needsDims = false;\n let isAddingPath = false;\n if (typeof key === 'object') {\n for (const _key in key) {\n if (_key === 'path') {\n this.setPathInfo();\n }\n needsDims = needsDims || textLayoutProperties.includes(_key);\n isAddingPath = isAddingPath || _key === 'path';\n }\n } else {\n needsDims = textLayoutProperties.includes(key);\n isAddingPath = key === 'path';\n }\n if (isAddingPath) {\n this.setPathInfo();\n }\n if (needsDims && this.initialized) {\n this.initDimensions();\n this.setCoords();\n }\n return this;\n }\n\n /**\n * Returns complexity of an instance\n * @return {Number} complexity\n */\n complexity(): number {\n return 1;\n }\n\n /**\n * List of generic font families\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/font-family#generic-name\n */\n static genericFonts = [\n 'serif',\n 'sans-serif',\n 'monospace',\n 'cursive',\n 'fantasy',\n 'system-ui',\n 'ui-serif',\n 'ui-sans-serif',\n 'ui-monospace',\n 'ui-rounded',\n 'math',\n 'emoji',\n 'fangsong',\n ];\n\n /* _FROM_SVG_START_ */\n\n /**\n * List of attribute names to account for when parsing SVG element (used by {@link FabricText.fromElement})\n * @see: http://www.w3.org/TR/SVG/text.html#TextElement\n */\n static ATTRIBUTE_NAMES = SHARED_ATTRIBUTES.concat(\n 'x',\n 'y',\n 'dx',\n 'dy',\n 'font-family',\n 'font-style',\n 'font-weight',\n 'font-size',\n 'letter-spacing',\n 'text-decoration',\n 'text-decoration-thickness',\n 'text-decoration-color',\n 'text-anchor',\n );\n\n /**\n * Returns FabricText instance from an SVG element (<b>not yet implemented</b>)\n * @param {HTMLElement} element Element to parse\n * @param {Object} [options] Options object\n */\n static async fromElement(\n element: HTMLElement | SVGElement,\n options?: Abortable,\n cssRules?: CSSRules,\n ) {\n const parsedAttributes = parseAttributes(\n element,\n FabricText.ATTRIBUTE_NAMES,\n cssRules,\n );\n\n const {\n textAnchor = LEFT as typeof LEFT | typeof CENTER | typeof RIGHT,\n textDecoration = '',\n dx = 0,\n dy = 0,\n top = 0,\n left = 0,\n fontSize = DEFAULT_SVG_FONT_SIZE,\n strokeWidth = 1,\n ...restOfOptions\n } = { ...options, ...parsedAttributes };\n\n const textContent = normalizeWs(element.textContent || '').trim();\n\n // this code here is probably the usual issue for SVG center find\n // this can later looked at again and probably removed.\n\n const text = new this(textContent, {\n left: left + dx,\n top: top + dy,\n underline: textDecoration.includes('underline'),\n overline: textDecoration.includes('overline'),\n linethrough: textDecoration.includes('line-through'),\n // we initialize this as 0\n strokeWidth: 0,\n fontSize,\n ...restOfOptions,\n }),\n textHeightScaleFactor = text.getScaledHeight() / text.height,\n lineHeightDiff =\n (text.height + text.strokeWidth) * text.lineHeight - text.height,\n scaledDiff = lineHeightDiff * textHeightScaleFactor,\n textHeight = text.getScaledHeight() + scaledDiff;\n\n let offX = 0;\n /*\n Adjust positioning:\n x/y attributes in SVG correspond to the bottom-left corner of text bounding box\n fabric output by default at top, left.\n */\n if (textAnchor === CENTER) {\n offX = text.getScaledWidth() / 2;\n }\n if (textAnchor === RIGHT) {\n offX = text.getScaledWidth();\n }\n text.set({\n left: text.left - offX,\n top:\n text.top -\n (textHeight - text.fontSize * (0.07 + text._fontSizeFraction)) /\n text.lineHeight,\n strokeWidth,\n });\n return text;\n }\n\n /* _FROM_SVG_END_ */\n\n /**\n * Returns FabricText instance from an object representation\n * @param {Object} object plain js Object to create an instance from\n * @returns {Promise<FabricText>}\n */\n static fromObject<\n T extends TOptions<SerializedTextProps>,\n S extends FabricText,\n >(object: T) {\n return this._fromObject<S>(\n {\n ...object,\n styles: stylesFromArray(object.styles || {}, object.text),\n },\n {\n extraParam: 'text',\n },\n );\n }\n}\n\napplyMixins(FabricText, [TextSVGExportMixin]);\nclassRegistry.setClass(FabricText);\nclassRegistry.setSVGClass(FabricText);\n"],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- import type { TSVGReviver } from '../../typedefs';
2
- import { FabricObjectSVGExportMixin } from '../Object/FabricObjectSVGExportMixin';
3
- import { type TextStyleDeclaration } from './StyledText';
4
- import type { FabricText } from './Text';
5
- export declare class TextSVGExportMixin extends FabricObjectSVGExportMixin {
6
- _toSVG(this: TextSVGExportMixin & FabricText): string[];
7
- toSVG(this: TextSVGExportMixin & FabricText, reviver?: TSVGReviver): string;
8
- private _getSVGLeftTopOffsets;
9
- private _wrapSVGTextAndBg;
10
- /**
11
- * @private
12
- * @param {Number} textTopOffset Text top offset
13
- * @param {Number} textLeftOffset Text left offset
14
- * @return {Object}
15
- */
16
- private _getSVGTextAndBg;
17
- private _createTextCharSpan;
18
- private _setSVGTextLineText;
19
- private _setSVGTextLineBg;
20
- /**
21
- * Returns styles-string for svg-export
22
- * @param {Boolean} skipShadow a boolean to skip shadow filter output
23
- * @return {String}
24
- */
25
- getSvgStyles(this: TextSVGExportMixin & FabricText, skipShadow?: boolean): string;
26
- /**
27
- * Returns styles-string for svg-export
28
- * @param {Object} style the object from which to retrieve style properties
29
- * @param {Boolean} useWhiteSpace a boolean to include an additional attribute in the style.
30
- * @return {String}
31
- */
32
- getSvgSpanStyles(this: TextSVGExportMixin & FabricText, style: TextStyleDeclaration, useWhiteSpace?: boolean): string;
33
- /**
34
- * Returns text-decoration property for svg-export
35
- * @param {Object} style the object from which to retrieve style properties
36
- * @return {String}
37
- */
38
- getSvgTextDecoration(this: TextSVGExportMixin & FabricText, style: TextStyleDeclaration): string;
39
- }
40
- //# sourceMappingURL=TextSVGExportMixin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextSVGExportMixin.d.ts","sourceRoot":"","sources":["../../../../src/shapes/Text/TextSVGExportMixin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAKlD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAMzD,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,QAAQ,CAAC;AAyBvD,qBAAa,kBAAmB,SAAQ,0BAA0B;IAChE,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,UAAU,GAAG,MAAM,EAAE;IAMvD,KAAK,CAAC,IAAI,EAAE,kBAAkB,GAAG,UAAU,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM;IAoB3E,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,iBAAiB;IA+BzB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAmDxB,OAAO,CAAC,mBAAmB;IAoC3B,OAAO,CAAC,mBAAmB;IAiE3B,OAAO,CAAC,iBAAiB;IA8CzB;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,kBAAkB,GAAG,UAAU,EAAE,UAAU,CAAC,EAAE,OAAO;IASxE;;;;;OAKG;IACH,gBAAgB,CACd,IAAI,EAAE,kBAAkB,GAAG,UAAU,EACrC,KAAK,EAAE,oBAAoB,EAC3B,aAAa,CAAC,EAAE,OAAO;IAyDzB;;;;OAIG;IACH,oBAAoB,CAClB,IAAI,EAAE,kBAAkB,GAAG,UAAU,EACrC,KAAK,EAAE,oBAAoB;CAc9B"}
@@ -1,3 +0,0 @@
1
- import{config as e}from"../../config.min.mjs";import{FILL as t,STROKE as n}from"../../constants.min.mjs";import{Point as r}from"../../Point.min.mjs";import{radiansToDegrees as i}from"../../util/misc/radiansDegreesConversion.min.mjs";import{createRotateMatrix as a}from"../../util/misc/matrix.min.mjs";import{toFixed as o}from"../../util/misc/toFixed.min.mjs";import{matrixToSVG as s}from"../../util/misc/svgExport.min.mjs";import{escapeXml as c}from"../../util/lang_string.min.mjs";import{getSafeSvgStyleNumber as l,getSafeSvgStyleToken as u,isSafeSvgStyleValue as d}from"../../util/internals/svgExportCheck.min.mjs";import{colorPropToSVG as f,createSVGRect as p}from"../../util/misc/svgParsing.min.mjs";import{FabricObjectSVGExportMixin as m}from"../Object/FabricObjectSVGExportMixin.min.mjs";import{JUSTIFY as h,TEXT_DECORATION_COLOR as g}from"./constants.min.mjs";import{hasStyleChanged as _}from"../../util/misc/textStyles.min.mjs";const v=/ +/g,y=/"/g;function b(e,t,n,r,i){return`\t\t${p(e,{left:t,top:n,width:r,height:i})}\n`}var x=class extends m{_toSVG(){let e=this._getSVGLeftTopOffsets(),t=this._getSVGTextAndBg(e.textTop,e.textLeft);return this._wrapSVGTextAndBg(t)}toSVG(e){let t=this._createBaseSVGMarkup(this._toSVG(),{reviver:e,noStyle:!0,withShadow:!0}),n=this.path;return n?t+n._createBaseSVGMarkup(n._toSVG(),{reviver:e,withShadow:!0,additionalTransform:s(this.calcOwnMatrix())}):t}_getSVGLeftTopOffsets(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}}_wrapSVGTextAndBg({textBgRects:e,textSpans:t}){let n=this.getSvgTextDecoration(this);return[e.join(``),` <text xml:space="preserve" `,`font-family="${c(this.fontFamily.replace(y,`'`))}" `,`font-size="${c(this.fontSize)}" `,this.fontStyle?`font-style="${c(this.fontStyle)}" `:``,this.fontWeight?`font-weight="${c(this.fontWeight)}" `:``,n?`text-decoration="${n}" `:``,this.direction===`rtl`?`direction="rtl" `:``,`style="`,this.getSvgStyles(!0),`"`,this.addPaintOrder(),` >`,t.join(``),`</text>
2
- `]}_getSVGTextAndBg(e,t){let n=[],r=[],i,a=e;this.backgroundColor&&r.push(b(this.backgroundColor,-this.width/2,-this.height/2,this.width,this.height));for(let e=0,o=this._textLines.length;e<o;e++)i=this._getLineLeftOffset(e),this.direction===`rtl`&&(i+=this.width),(this.textBackgroundColor||this.styleHas(`textBackgroundColor`,e))&&this._setSVGTextLineBg(r,e,t+i,a),this._setSVGTextLineText(n,e,t+i,a),a+=this.getHeightOfLine(e);return{textSpans:n,textBgRects:r}}_createTextCharSpan(t,n,s,l,u){let d=e.NUM_FRACTION_DIGITS,f=this.getSvgSpanStyles(n,t!==t.trim()||!!t.match(v)),p=f?`style="${f}"`:``,m=n.deltaY,h=m?` dy="${o(m,d)}" `:``,{angle:g,renderLeft:_,renderTop:y,width:b}=u,x=``;if(_!==void 0){let e=b/2;g&&(x=` rotate="${o(i(g),d)}"`);let t=a({angle:i(g)});t[4]=_,t[5]=y;let n=new r(-e,0).transform(t);s=n.x,l=n.y}return`<tspan x="${o(s,d)}" y="${o(l,d)}" ${h}${x}${p}>${c(t)}</tspan>`}_setSVGTextLineText(e,t,n,r){let i=this.getHeightOfLine(t),a=this.textAlign.includes(h),o=this._textLines[t],s,c,l,u,d,f=``,p=0;r+=i*(1-this._fontSizeFraction)/this.lineHeight;for(let i=0,m=o.length-1;i<=m;i++)d=i===m||this.charSpacing||this.path,f+=o[i],l=this.__charBounds[t][i],p===0?(n+=l.kernedWidth-l.width,p+=l.width):p+=l.kernedWidth,a&&!d&&this._reSpaceAndTab.test(o[i])&&(d=!0),d||(s=s||this.getCompleteStyleDeclaration(t,i),c=this.getCompleteStyleDeclaration(t,i+1),d=_(s,c,!0)),d&&(u=this._getStyleDeclaration(t,i),e.push(this._createTextCharSpan(f,u,n,r,l)),f=``,s=c,this.direction===`rtl`?n-=p:n+=p,p=0)}_setSVGTextLineBg(e,t,n,r){let i=this._textLines[t],a=this.getHeightOfLine(t)/this.lineHeight,o,s=0,c=0,l=this.getValueOfPropertyAt(t,0,`textBackgroundColor`);for(let u=0;u<i.length;u++){let{left:i,width:d,kernedWidth:f}=this.__charBounds[t][u];o=this.getValueOfPropertyAt(t,u,`textBackgroundColor`),o===l?s+=f:(l&&e.push(b(l,n+c,r,s,a)),c=i,s=d,l=o)}o&&e.push(b(l,n+c,r,s,a))}getSvgStyles(t){let n=d(this.textDecorationColor)?` text-decoration-color: ${c(this[g])};`:``;return`${super.getSvgStyles(t)} text-decoration-thickness: ${o(this.textDecorationThickness*this.getObjectScaling().y/10,e.NUM_FRACTION_DIGITS)}%;${n} white-space: pre;`}getSvgSpanStyles(r,i){let{fontFamily:a,strokeWidth:s,stroke:d,fill:p,fontSize:m,fontStyle:h,fontWeight:g,textDecorationThickness:_,textDecorationColor:v,linethrough:y,overline:b,underline:x}=r,S=this.getSvgTextDecoration({underline:x==null?this.underline:x,overline:b==null?this.overline:b,linethrough:y==null?this.linethrough:y}),C=_||this.textDecorationThickness,w=v||this.textDecorationColor,T=l(s),E=u(a),D=l(m),O=u(h),k=l(g)||u(g),A=u(w);return[d?f(n,d):``,T?`stroke-width: ${c(T)}; `:``,E?`font-family: ${E.includes(`'`)||E.includes(`"`)?c(E):`'${c(E)}'`}; `:``,D?`font-size: ${c(D)}px; `:``,O?`font-style: ${c(O)}; `:``,k?`font-weight: ${c(k)}; `:``,S?`text-decoration: ${S}; text-decoration-thickness: ${o(C*this.getObjectScaling().y/10,e.NUM_FRACTION_DIGITS)}%;${A?` text-decoration-color: ${c(A)};`:``} `:``,p?f(t,p):``,i?`white-space: pre; `:``].join(``)}getSvgTextDecoration(e){return[`overline`,`underline`,`line-through`].filter(t=>e[t.replace(`-`,``)]).join(` `)}};export{x as TextSVGExportMixin};
3
- //# sourceMappingURL=TextSVGExportMixin.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextSVGExportMixin.min.mjs","names":[],"sources":["../../../../src/shapes/Text/TextSVGExportMixin.ts"],"sourcesContent":["import { config } from '../../config';\nimport type { TSVGReviver } from '../../typedefs';\nimport { escapeXml } from '../../util/lang_string';\nimport { colorPropToSVG, createSVGRect } from '../../util/misc/svgParsing';\nimport { hasStyleChanged } from '../../util/misc/textStyles';\nimport { toFixed } from '../../util/misc/toFixed';\nimport { FabricObjectSVGExportMixin } from '../Object/FabricObjectSVGExportMixin';\nimport { type TextStyleDeclaration } from './StyledText';\nimport {\n JUSTIFY,\n TEXT_DECORATION_COLOR,\n TEXT_DECORATION_THICKNESS,\n} from '../Text/constants';\nimport type { FabricText, GraphemeBBox } from './Text';\nimport { STROKE, FILL } from '../../constants';\nimport { createRotateMatrix } from '../../util/misc/matrix';\nimport { radiansToDegrees } from '../../util/misc/radiansDegreesConversion';\nimport { Point } from '../../Point';\nimport {\n getSafeSvgStyleNumber,\n getSafeSvgStyleToken,\n isSafeSvgStyleValue,\n} from '../../util/internals/svgExportCheck';\nimport { matrixToSVG } from '../../util/misc/svgExport';\n\nconst multipleSpacesRegex = / +/g;\nconst dblQuoteRegex = /\"/g;\n\nfunction createSVGInlineRect(\n color: string,\n left: number,\n top: number,\n width: number,\n height: number,\n) {\n return `\\t\\t${createSVGRect(color, { left, top, width, height })}\\n`;\n}\n\nexport class TextSVGExportMixin extends FabricObjectSVGExportMixin {\n _toSVG(this: TextSVGExportMixin & FabricText): string[] {\n const offsets = this._getSVGLeftTopOffsets(),\n textAndBg = this._getSVGTextAndBg(offsets.textTop, offsets.textLeft);\n return this._wrapSVGTextAndBg(textAndBg);\n }\n\n toSVG(this: TextSVGExportMixin & FabricText, reviver?: TSVGReviver): string {\n const textSvg = this._createBaseSVGMarkup(this._toSVG(), {\n reviver,\n noStyle: true,\n withShadow: true,\n }),\n path = this.path;\n if (path) {\n return (\n textSvg +\n path._createBaseSVGMarkup(path._toSVG(), {\n reviver,\n withShadow: true,\n additionalTransform: matrixToSVG(this.calcOwnMatrix()),\n })\n );\n }\n return textSvg;\n }\n\n private _getSVGLeftTopOffsets(this: TextSVGExportMixin & FabricText) {\n return {\n textLeft: -this.width / 2,\n textTop: -this.height / 2,\n lineTop: this.getHeightOfLine(0),\n };\n }\n\n private _wrapSVGTextAndBg(\n this: TextSVGExportMixin & FabricText,\n {\n textBgRects,\n textSpans,\n }: {\n textSpans: string[];\n textBgRects: string[];\n },\n ) {\n const noShadow = true,\n textDecoration = this.getSvgTextDecoration(this);\n return [\n textBgRects.join(''),\n '\\t\\t<text xml:space=\"preserve\" ',\n `font-family=\"${escapeXml(this.fontFamily.replace(dblQuoteRegex, \"'\"))}\" `,\n `font-size=\"${escapeXml(this.fontSize)}\" `,\n this.fontStyle ? `font-style=\"${escapeXml(this.fontStyle)}\" ` : '',\n this.fontWeight ? `font-weight=\"${escapeXml(this.fontWeight)}\" ` : '',\n textDecoration ? `text-decoration=\"${textDecoration}\" ` : '',\n this.direction === 'rtl' ? `direction=\"rtl\" ` : '',\n 'style=\"',\n this.getSvgStyles(noShadow),\n '\"',\n this.addPaintOrder(),\n ' >',\n textSpans.join(''),\n '</text>\\n',\n ];\n }\n\n /**\n * @private\n * @param {Number} textTopOffset Text top offset\n * @param {Number} textLeftOffset Text left offset\n * @return {Object}\n */\n private _getSVGTextAndBg(\n this: TextSVGExportMixin & FabricText,\n textTopOffset: number,\n textLeftOffset: number,\n ) {\n const textSpans: string[] = [],\n textBgRects: string[] = [];\n let height = textTopOffset,\n lineOffset;\n\n // bounding-box background\n this.backgroundColor &&\n textBgRects.push(\n createSVGInlineRect(\n this.backgroundColor,\n -this.width / 2,\n -this.height / 2,\n this.width,\n this.height,\n ),\n );\n\n // text and text-background\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n lineOffset = this._getLineLeftOffset(i);\n if (this.direction === 'rtl') {\n lineOffset += this.width;\n }\n if (this.textBackgroundColor || this.styleHas('textBackgroundColor', i)) {\n this._setSVGTextLineBg(\n textBgRects,\n i,\n textLeftOffset + lineOffset,\n height,\n );\n }\n this._setSVGTextLineText(\n textSpans,\n i,\n textLeftOffset + lineOffset,\n height,\n );\n height += this.getHeightOfLine(i);\n }\n\n return {\n textSpans,\n textBgRects,\n };\n }\n\n private _createTextCharSpan(\n this: TextSVGExportMixin & FabricText,\n char: string,\n styleDecl: TextStyleDeclaration,\n left: number,\n top: number,\n charBox: GraphemeBBox,\n ) {\n const numFractionDigit = config.NUM_FRACTION_DIGITS;\n const styleProps = this.getSvgSpanStyles(\n styleDecl,\n char !== char.trim() || !!char.match(multipleSpacesRegex),\n ),\n fillStyles = styleProps ? `style=\"${styleProps}\"` : '',\n dy = styleDecl.deltaY,\n dySpan = dy ? ` dy=\"${toFixed(dy, numFractionDigit)}\" ` : '',\n { angle, renderLeft, renderTop, width } = charBox;\n let angleAttr = '';\n if (renderLeft !== undefined) {\n const wBy2 = width / 2;\n angle &&\n (angleAttr = ` rotate=\"${toFixed(radiansToDegrees(angle), numFractionDigit)}\"`);\n const m = createRotateMatrix({ angle: radiansToDegrees(angle!) });\n m[4] = renderLeft!;\n m[5] = renderTop!;\n const renderPoint = new Point(-wBy2, 0).transform(m);\n left = renderPoint.x;\n top = renderPoint.y;\n }\n\n return `<tspan x=\"${toFixed(left, numFractionDigit)}\" y=\"${toFixed(\n top,\n numFractionDigit,\n )}\" ${dySpan}${angleAttr}${fillStyles}>${escapeXml(char)}</tspan>`;\n }\n\n private _setSVGTextLineText(\n this: TextSVGExportMixin & FabricText,\n textSpans: string[],\n lineIndex: number,\n textLeftOffset: number,\n textTopOffset: number,\n ) {\n const lineHeight = this.getHeightOfLine(lineIndex),\n isJustify = this.textAlign.includes(JUSTIFY),\n line = this._textLines[lineIndex];\n let actualStyle,\n nextStyle,\n charsToRender = '',\n charBox,\n style,\n boxWidth = 0,\n timeToRender;\n\n textTopOffset +=\n (lineHeight * (1 - this._fontSizeFraction)) / this.lineHeight;\n for (let i = 0, len = line.length - 1; i <= len; i++) {\n timeToRender = i === len || this.charSpacing || this.path;\n charsToRender += line[i];\n charBox = this.__charBounds[lineIndex][i];\n if (boxWidth === 0) {\n textLeftOffset += charBox.kernedWidth - charBox.width;\n boxWidth += charBox.width;\n } else {\n boxWidth += charBox.kernedWidth;\n }\n if (isJustify && !timeToRender) {\n if (this._reSpaceAndTab.test(line[i])) {\n timeToRender = true;\n }\n }\n if (!timeToRender) {\n // if we have charSpacing or a path, we render char by char\n actualStyle =\n actualStyle || this.getCompleteStyleDeclaration(lineIndex, i);\n nextStyle = this.getCompleteStyleDeclaration(lineIndex, i + 1);\n timeToRender = hasStyleChanged(actualStyle, nextStyle, true);\n }\n if (timeToRender) {\n style = this._getStyleDeclaration(lineIndex, i);\n textSpans.push(\n this._createTextCharSpan(\n charsToRender,\n style,\n textLeftOffset,\n textTopOffset,\n charBox,\n ),\n );\n charsToRender = '';\n actualStyle = nextStyle;\n if (this.direction === 'rtl') {\n textLeftOffset -= boxWidth;\n } else {\n textLeftOffset += boxWidth;\n }\n boxWidth = 0;\n }\n }\n }\n\n private _setSVGTextLineBg(\n this: TextSVGExportMixin & FabricText,\n textBgRects: (string | number)[],\n i: number,\n leftOffset: number,\n textTopOffset: number,\n ) {\n const line = this._textLines[i],\n heightOfLine = this.getHeightOfLine(i) / this.lineHeight;\n let boxWidth = 0,\n boxStart = 0,\n currentColor,\n lastColor = this.getValueOfPropertyAt(i, 0, 'textBackgroundColor');\n for (let j = 0; j < line.length; j++) {\n const { left, width, kernedWidth } = this.__charBounds[i][j];\n currentColor = this.getValueOfPropertyAt(i, j, 'textBackgroundColor');\n if (currentColor !== lastColor) {\n lastColor &&\n textBgRects.push(\n createSVGInlineRect(\n lastColor,\n leftOffset + boxStart,\n textTopOffset,\n boxWidth,\n heightOfLine,\n ),\n );\n boxStart = left;\n boxWidth = width;\n lastColor = currentColor;\n } else {\n boxWidth += kernedWidth;\n }\n }\n currentColor &&\n textBgRects.push(\n createSVGInlineRect(\n lastColor,\n leftOffset + boxStart,\n textTopOffset,\n boxWidth,\n heightOfLine,\n ),\n );\n }\n\n /**\n * Returns styles-string for svg-export\n * @param {Boolean} skipShadow a boolean to skip shadow filter output\n * @return {String}\n */\n getSvgStyles(this: TextSVGExportMixin & FabricText, skipShadow?: boolean) {\n const objectLevelTextDecorationColor = isSafeSvgStyleValue(\n this[TEXT_DECORATION_COLOR],\n )\n ? ` text-decoration-color: ${escapeXml(this[TEXT_DECORATION_COLOR])};`\n : '';\n return `${super.getSvgStyles(skipShadow)} text-decoration-thickness: ${toFixed((this.textDecorationThickness * this.getObjectScaling().y) / 10, config.NUM_FRACTION_DIGITS)}%;${objectLevelTextDecorationColor} white-space: pre;`;\n }\n\n /**\n * Returns styles-string for svg-export\n * @param {Object} style the object from which to retrieve style properties\n * @param {Boolean} useWhiteSpace a boolean to include an additional attribute in the style.\n * @return {String}\n */\n getSvgSpanStyles(\n this: TextSVGExportMixin & FabricText,\n style: TextStyleDeclaration,\n useWhiteSpace?: boolean,\n ) {\n const {\n fontFamily,\n strokeWidth,\n stroke,\n fill,\n fontSize,\n fontStyle,\n fontWeight,\n textDecorationThickness,\n textDecorationColor,\n linethrough,\n overline,\n underline,\n } = style;\n\n const textDecoration = this.getSvgTextDecoration({\n underline: underline ?? this.underline,\n overline: overline ?? this.overline,\n linethrough: linethrough ?? this.linethrough,\n });\n const thickness =\n textDecorationThickness || this[TEXT_DECORATION_THICKNESS];\n const decorationColor = textDecorationColor || this[TEXT_DECORATION_COLOR];\n const safeStrokeWidth = getSafeSvgStyleNumber(strokeWidth);\n const safeFontFamily = getSafeSvgStyleToken(fontFamily);\n const safeFontSize = getSafeSvgStyleNumber(fontSize);\n const safeFontStyle = getSafeSvgStyleToken(fontStyle);\n const safeFontWeight =\n getSafeSvgStyleNumber(fontWeight) || getSafeSvgStyleToken(fontWeight);\n const safeDecorationColor = getSafeSvgStyleToken(decorationColor);\n return [\n stroke ? colorPropToSVG(STROKE, stroke) : '',\n safeStrokeWidth ? `stroke-width: ${escapeXml(safeStrokeWidth)}; ` : '',\n safeFontFamily\n ? `font-family: ${\n !safeFontFamily.includes(\"'\") && !safeFontFamily.includes('\"')\n ? `'${escapeXml(safeFontFamily)}'`\n : escapeXml(safeFontFamily)\n }; `\n : '',\n safeFontSize ? `font-size: ${escapeXml(safeFontSize)}px; ` : '',\n safeFontStyle ? `font-style: ${escapeXml(safeFontStyle)}; ` : '',\n safeFontWeight ? `font-weight: ${escapeXml(safeFontWeight)}; ` : '',\n textDecoration\n ? `text-decoration: ${textDecoration}; text-decoration-thickness: ${toFixed((thickness * this.getObjectScaling().y) / 10, config.NUM_FRACTION_DIGITS)}%;${\n safeDecorationColor\n ? ` text-decoration-color: ${escapeXml(safeDecorationColor)};`\n : ''\n } `\n : '',\n fill ? colorPropToSVG(FILL, fill) : '',\n useWhiteSpace ? 'white-space: pre; ' : '',\n ].join('');\n }\n\n /**\n * Returns text-decoration property for svg-export\n * @param {Object} style the object from which to retrieve style properties\n * @return {String}\n */\n getSvgTextDecoration(\n this: TextSVGExportMixin & FabricText,\n style: TextStyleDeclaration,\n ) {\n return (['overline', 'underline', 'line-through'] as const)\n .filter(\n (decoration) =>\n style[\n decoration.replace('-', '') as\n | 'overline'\n | 'underline'\n | 'linethrough'\n ],\n )\n .join(' ');\n }\n}\n"],"mappings":"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"}
@@ -1,212 +0,0 @@
1
- import { config } from "../../config.mjs";
2
- import { FILL, STROKE } from "../../constants.mjs";
3
- import { Point } from "../../Point.mjs";
4
- import { radiansToDegrees } from "../../util/misc/radiansDegreesConversion.mjs";
5
- import { createRotateMatrix } from "../../util/misc/matrix.mjs";
6
- import { toFixed } from "../../util/misc/toFixed.mjs";
7
- import { matrixToSVG } from "../../util/misc/svgExport.mjs";
8
- import { escapeXml } from "../../util/lang_string.mjs";
9
- import { getSafeSvgStyleNumber, getSafeSvgStyleToken, isSafeSvgStyleValue } from "../../util/internals/svgExportCheck.mjs";
10
- import { colorPropToSVG, createSVGRect } from "../../util/misc/svgParsing.mjs";
11
- import { FabricObjectSVGExportMixin } from "../Object/FabricObjectSVGExportMixin.mjs";
12
- import { JUSTIFY, TEXT_DECORATION_COLOR } from "./constants.mjs";
13
- import { hasStyleChanged } from "../../util/misc/textStyles.mjs";
14
- //#region src/shapes/Text/TextSVGExportMixin.ts
15
- const multipleSpacesRegex = / +/g;
16
- const dblQuoteRegex = /"/g;
17
- function createSVGInlineRect(color, left, top, width, height) {
18
- return `\t\t${createSVGRect(color, {
19
- left,
20
- top,
21
- width,
22
- height
23
- })}\n`;
24
- }
25
- var TextSVGExportMixin = class extends FabricObjectSVGExportMixin {
26
- _toSVG() {
27
- const offsets = this._getSVGLeftTopOffsets(), textAndBg = this._getSVGTextAndBg(offsets.textTop, offsets.textLeft);
28
- return this._wrapSVGTextAndBg(textAndBg);
29
- }
30
- toSVG(reviver) {
31
- const textSvg = this._createBaseSVGMarkup(this._toSVG(), {
32
- reviver,
33
- noStyle: true,
34
- withShadow: true
35
- }), path = this.path;
36
- if (path) return textSvg + path._createBaseSVGMarkup(path._toSVG(), {
37
- reviver,
38
- withShadow: true,
39
- additionalTransform: matrixToSVG(this.calcOwnMatrix())
40
- });
41
- return textSvg;
42
- }
43
- _getSVGLeftTopOffsets() {
44
- return {
45
- textLeft: -this.width / 2,
46
- textTop: -this.height / 2,
47
- lineTop: this.getHeightOfLine(0)
48
- };
49
- }
50
- _wrapSVGTextAndBg({ textBgRects, textSpans }) {
51
- const noShadow = true, textDecoration = this.getSvgTextDecoration(this);
52
- return [
53
- textBgRects.join(""),
54
- " <text xml:space=\"preserve\" ",
55
- `font-family="${escapeXml(this.fontFamily.replace(dblQuoteRegex, "'"))}" `,
56
- `font-size="${escapeXml(this.fontSize)}" `,
57
- this.fontStyle ? `font-style="${escapeXml(this.fontStyle)}" ` : "",
58
- this.fontWeight ? `font-weight="${escapeXml(this.fontWeight)}" ` : "",
59
- textDecoration ? `text-decoration="${textDecoration}" ` : "",
60
- this.direction === "rtl" ? `direction="rtl" ` : "",
61
- "style=\"",
62
- this.getSvgStyles(noShadow),
63
- "\"",
64
- this.addPaintOrder(),
65
- " >",
66
- textSpans.join(""),
67
- "</text>\n"
68
- ];
69
- }
70
- /**
71
- * @private
72
- * @param {Number} textTopOffset Text top offset
73
- * @param {Number} textLeftOffset Text left offset
74
- * @return {Object}
75
- */
76
- _getSVGTextAndBg(textTopOffset, textLeftOffset) {
77
- const textSpans = [], textBgRects = [];
78
- let height = textTopOffset, lineOffset;
79
- this.backgroundColor && textBgRects.push(createSVGInlineRect(this.backgroundColor, -this.width / 2, -this.height / 2, this.width, this.height));
80
- for (let i = 0, len = this._textLines.length; i < len; i++) {
81
- lineOffset = this._getLineLeftOffset(i);
82
- if (this.direction === "rtl") lineOffset += this.width;
83
- if (this.textBackgroundColor || this.styleHas("textBackgroundColor", i)) this._setSVGTextLineBg(textBgRects, i, textLeftOffset + lineOffset, height);
84
- this._setSVGTextLineText(textSpans, i, textLeftOffset + lineOffset, height);
85
- height += this.getHeightOfLine(i);
86
- }
87
- return {
88
- textSpans,
89
- textBgRects
90
- };
91
- }
92
- _createTextCharSpan(char, styleDecl, left, top, charBox) {
93
- const numFractionDigit = config.NUM_FRACTION_DIGITS;
94
- const styleProps = this.getSvgSpanStyles(styleDecl, char !== char.trim() || !!char.match(multipleSpacesRegex)), fillStyles = styleProps ? `style="${styleProps}"` : "", dy = styleDecl.deltaY, dySpan = dy ? ` dy="${toFixed(dy, numFractionDigit)}" ` : "", { angle, renderLeft, renderTop, width } = charBox;
95
- let angleAttr = "";
96
- if (renderLeft !== void 0) {
97
- const wBy2 = width / 2;
98
- angle && (angleAttr = ` rotate="${toFixed(radiansToDegrees(angle), numFractionDigit)}"`);
99
- const m = createRotateMatrix({ angle: radiansToDegrees(angle) });
100
- m[4] = renderLeft;
101
- m[5] = renderTop;
102
- const renderPoint = new Point(-wBy2, 0).transform(m);
103
- left = renderPoint.x;
104
- top = renderPoint.y;
105
- }
106
- return `<tspan x="${toFixed(left, numFractionDigit)}" y="${toFixed(top, numFractionDigit)}" ${dySpan}${angleAttr}${fillStyles}>${escapeXml(char)}</tspan>`;
107
- }
108
- _setSVGTextLineText(textSpans, lineIndex, textLeftOffset, textTopOffset) {
109
- const lineHeight = this.getHeightOfLine(lineIndex), isJustify = this.textAlign.includes(JUSTIFY), line = this._textLines[lineIndex];
110
- let actualStyle, nextStyle, charsToRender = "", charBox, style, boxWidth = 0, timeToRender;
111
- textTopOffset += lineHeight * (1 - this._fontSizeFraction) / this.lineHeight;
112
- for (let i = 0, len = line.length - 1; i <= len; i++) {
113
- timeToRender = i === len || this.charSpacing || this.path;
114
- charsToRender += line[i];
115
- charBox = this.__charBounds[lineIndex][i];
116
- if (boxWidth === 0) {
117
- textLeftOffset += charBox.kernedWidth - charBox.width;
118
- boxWidth += charBox.width;
119
- } else boxWidth += charBox.kernedWidth;
120
- if (isJustify && !timeToRender) {
121
- if (this._reSpaceAndTab.test(line[i])) timeToRender = true;
122
- }
123
- if (!timeToRender) {
124
- actualStyle = actualStyle || this.getCompleteStyleDeclaration(lineIndex, i);
125
- nextStyle = this.getCompleteStyleDeclaration(lineIndex, i + 1);
126
- timeToRender = hasStyleChanged(actualStyle, nextStyle, true);
127
- }
128
- if (timeToRender) {
129
- style = this._getStyleDeclaration(lineIndex, i);
130
- textSpans.push(this._createTextCharSpan(charsToRender, style, textLeftOffset, textTopOffset, charBox));
131
- charsToRender = "";
132
- actualStyle = nextStyle;
133
- if (this.direction === "rtl") textLeftOffset -= boxWidth;
134
- else textLeftOffset += boxWidth;
135
- boxWidth = 0;
136
- }
137
- }
138
- }
139
- _setSVGTextLineBg(textBgRects, i, leftOffset, textTopOffset) {
140
- const line = this._textLines[i], heightOfLine = this.getHeightOfLine(i) / this.lineHeight;
141
- let boxWidth = 0, boxStart = 0, currentColor, lastColor = this.getValueOfPropertyAt(i, 0, "textBackgroundColor");
142
- for (let j = 0; j < line.length; j++) {
143
- const { left, width, kernedWidth } = this.__charBounds[i][j];
144
- currentColor = this.getValueOfPropertyAt(i, j, "textBackgroundColor");
145
- if (currentColor !== lastColor) {
146
- lastColor && textBgRects.push(createSVGInlineRect(lastColor, leftOffset + boxStart, textTopOffset, boxWidth, heightOfLine));
147
- boxStart = left;
148
- boxWidth = width;
149
- lastColor = currentColor;
150
- } else boxWidth += kernedWidth;
151
- }
152
- currentColor && textBgRects.push(createSVGInlineRect(lastColor, leftOffset + boxStart, textTopOffset, boxWidth, heightOfLine));
153
- }
154
- /**
155
- * Returns styles-string for svg-export
156
- * @param {Boolean} skipShadow a boolean to skip shadow filter output
157
- * @return {String}
158
- */
159
- getSvgStyles(skipShadow) {
160
- const objectLevelTextDecorationColor = isSafeSvgStyleValue(this["textDecorationColor"]) ? ` text-decoration-color: ${escapeXml(this[TEXT_DECORATION_COLOR])};` : "";
161
- return `${super.getSvgStyles(skipShadow)} text-decoration-thickness: ${toFixed(this.textDecorationThickness * this.getObjectScaling().y / 10, config.NUM_FRACTION_DIGITS)}%;${objectLevelTextDecorationColor} white-space: pre;`;
162
- }
163
- /**
164
- * Returns styles-string for svg-export
165
- * @param {Object} style the object from which to retrieve style properties
166
- * @param {Boolean} useWhiteSpace a boolean to include an additional attribute in the style.
167
- * @return {String}
168
- */
169
- getSvgSpanStyles(style, useWhiteSpace) {
170
- const { fontFamily, strokeWidth, stroke, fill, fontSize, fontStyle, fontWeight, textDecorationThickness, textDecorationColor, linethrough, overline, underline } = style;
171
- const textDecoration = this.getSvgTextDecoration({
172
- underline: underline !== null && underline !== void 0 ? underline : this.underline,
173
- overline: overline !== null && overline !== void 0 ? overline : this.overline,
174
- linethrough: linethrough !== null && linethrough !== void 0 ? linethrough : this.linethrough
175
- });
176
- const thickness = textDecorationThickness || this["textDecorationThickness"];
177
- const decorationColor = textDecorationColor || this["textDecorationColor"];
178
- const safeStrokeWidth = getSafeSvgStyleNumber(strokeWidth);
179
- const safeFontFamily = getSafeSvgStyleToken(fontFamily);
180
- const safeFontSize = getSafeSvgStyleNumber(fontSize);
181
- const safeFontStyle = getSafeSvgStyleToken(fontStyle);
182
- const safeFontWeight = getSafeSvgStyleNumber(fontWeight) || getSafeSvgStyleToken(fontWeight);
183
- const safeDecorationColor = getSafeSvgStyleToken(decorationColor);
184
- return [
185
- stroke ? colorPropToSVG(STROKE, stroke) : "",
186
- safeStrokeWidth ? `stroke-width: ${escapeXml(safeStrokeWidth)}; ` : "",
187
- safeFontFamily ? `font-family: ${!safeFontFamily.includes("'") && !safeFontFamily.includes("\"") ? `'${escapeXml(safeFontFamily)}'` : escapeXml(safeFontFamily)}; ` : "",
188
- safeFontSize ? `font-size: ${escapeXml(safeFontSize)}px; ` : "",
189
- safeFontStyle ? `font-style: ${escapeXml(safeFontStyle)}; ` : "",
190
- safeFontWeight ? `font-weight: ${escapeXml(safeFontWeight)}; ` : "",
191
- textDecoration ? `text-decoration: ${textDecoration}; text-decoration-thickness: ${toFixed(thickness * this.getObjectScaling().y / 10, config.NUM_FRACTION_DIGITS)}%;${safeDecorationColor ? ` text-decoration-color: ${escapeXml(safeDecorationColor)};` : ""} ` : "",
192
- fill ? colorPropToSVG(FILL, fill) : "",
193
- useWhiteSpace ? "white-space: pre; " : ""
194
- ].join("");
195
- }
196
- /**
197
- * Returns text-decoration property for svg-export
198
- * @param {Object} style the object from which to retrieve style properties
199
- * @return {String}
200
- */
201
- getSvgTextDecoration(style) {
202
- return [
203
- "overline",
204
- "underline",
205
- "line-through"
206
- ].filter((decoration) => style[decoration.replace("-", "")]).join(" ");
207
- }
208
- };
209
- //#endregion
210
- export { TextSVGExportMixin };
211
-
212
- //# sourceMappingURL=TextSVGExportMixin.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextSVGExportMixin.mjs","names":[],"sources":["../../../../src/shapes/Text/TextSVGExportMixin.ts"],"sourcesContent":["import { config } from '../../config';\nimport type { TSVGReviver } from '../../typedefs';\nimport { escapeXml } from '../../util/lang_string';\nimport { colorPropToSVG, createSVGRect } from '../../util/misc/svgParsing';\nimport { hasStyleChanged } from '../../util/misc/textStyles';\nimport { toFixed } from '../../util/misc/toFixed';\nimport { FabricObjectSVGExportMixin } from '../Object/FabricObjectSVGExportMixin';\nimport { type TextStyleDeclaration } from './StyledText';\nimport {\n JUSTIFY,\n TEXT_DECORATION_COLOR,\n TEXT_DECORATION_THICKNESS,\n} from '../Text/constants';\nimport type { FabricText, GraphemeBBox } from './Text';\nimport { STROKE, FILL } from '../../constants';\nimport { createRotateMatrix } from '../../util/misc/matrix';\nimport { radiansToDegrees } from '../../util/misc/radiansDegreesConversion';\nimport { Point } from '../../Point';\nimport {\n getSafeSvgStyleNumber,\n getSafeSvgStyleToken,\n isSafeSvgStyleValue,\n} from '../../util/internals/svgExportCheck';\nimport { matrixToSVG } from '../../util/misc/svgExport';\n\nconst multipleSpacesRegex = / +/g;\nconst dblQuoteRegex = /\"/g;\n\nfunction createSVGInlineRect(\n color: string,\n left: number,\n top: number,\n width: number,\n height: number,\n) {\n return `\\t\\t${createSVGRect(color, { left, top, width, height })}\\n`;\n}\n\nexport class TextSVGExportMixin extends FabricObjectSVGExportMixin {\n _toSVG(this: TextSVGExportMixin & FabricText): string[] {\n const offsets = this._getSVGLeftTopOffsets(),\n textAndBg = this._getSVGTextAndBg(offsets.textTop, offsets.textLeft);\n return this._wrapSVGTextAndBg(textAndBg);\n }\n\n toSVG(this: TextSVGExportMixin & FabricText, reviver?: TSVGReviver): string {\n const textSvg = this._createBaseSVGMarkup(this._toSVG(), {\n reviver,\n noStyle: true,\n withShadow: true,\n }),\n path = this.path;\n if (path) {\n return (\n textSvg +\n path._createBaseSVGMarkup(path._toSVG(), {\n reviver,\n withShadow: true,\n additionalTransform: matrixToSVG(this.calcOwnMatrix()),\n })\n );\n }\n return textSvg;\n }\n\n private _getSVGLeftTopOffsets(this: TextSVGExportMixin & FabricText) {\n return {\n textLeft: -this.width / 2,\n textTop: -this.height / 2,\n lineTop: this.getHeightOfLine(0),\n };\n }\n\n private _wrapSVGTextAndBg(\n this: TextSVGExportMixin & FabricText,\n {\n textBgRects,\n textSpans,\n }: {\n textSpans: string[];\n textBgRects: string[];\n },\n ) {\n const noShadow = true,\n textDecoration = this.getSvgTextDecoration(this);\n return [\n textBgRects.join(''),\n '\\t\\t<text xml:space=\"preserve\" ',\n `font-family=\"${escapeXml(this.fontFamily.replace(dblQuoteRegex, \"'\"))}\" `,\n `font-size=\"${escapeXml(this.fontSize)}\" `,\n this.fontStyle ? `font-style=\"${escapeXml(this.fontStyle)}\" ` : '',\n this.fontWeight ? `font-weight=\"${escapeXml(this.fontWeight)}\" ` : '',\n textDecoration ? `text-decoration=\"${textDecoration}\" ` : '',\n this.direction === 'rtl' ? `direction=\"rtl\" ` : '',\n 'style=\"',\n this.getSvgStyles(noShadow),\n '\"',\n this.addPaintOrder(),\n ' >',\n textSpans.join(''),\n '</text>\\n',\n ];\n }\n\n /**\n * @private\n * @param {Number} textTopOffset Text top offset\n * @param {Number} textLeftOffset Text left offset\n * @return {Object}\n */\n private _getSVGTextAndBg(\n this: TextSVGExportMixin & FabricText,\n textTopOffset: number,\n textLeftOffset: number,\n ) {\n const textSpans: string[] = [],\n textBgRects: string[] = [];\n let height = textTopOffset,\n lineOffset;\n\n // bounding-box background\n this.backgroundColor &&\n textBgRects.push(\n createSVGInlineRect(\n this.backgroundColor,\n -this.width / 2,\n -this.height / 2,\n this.width,\n this.height,\n ),\n );\n\n // text and text-background\n for (let i = 0, len = this._textLines.length; i < len; i++) {\n lineOffset = this._getLineLeftOffset(i);\n if (this.direction === 'rtl') {\n lineOffset += this.width;\n }\n if (this.textBackgroundColor || this.styleHas('textBackgroundColor', i)) {\n this._setSVGTextLineBg(\n textBgRects,\n i,\n textLeftOffset + lineOffset,\n height,\n );\n }\n this._setSVGTextLineText(\n textSpans,\n i,\n textLeftOffset + lineOffset,\n height,\n );\n height += this.getHeightOfLine(i);\n }\n\n return {\n textSpans,\n textBgRects,\n };\n }\n\n private _createTextCharSpan(\n this: TextSVGExportMixin & FabricText,\n char: string,\n styleDecl: TextStyleDeclaration,\n left: number,\n top: number,\n charBox: GraphemeBBox,\n ) {\n const numFractionDigit = config.NUM_FRACTION_DIGITS;\n const styleProps = this.getSvgSpanStyles(\n styleDecl,\n char !== char.trim() || !!char.match(multipleSpacesRegex),\n ),\n fillStyles = styleProps ? `style=\"${styleProps}\"` : '',\n dy = styleDecl.deltaY,\n dySpan = dy ? ` dy=\"${toFixed(dy, numFractionDigit)}\" ` : '',\n { angle, renderLeft, renderTop, width } = charBox;\n let angleAttr = '';\n if (renderLeft !== undefined) {\n const wBy2 = width / 2;\n angle &&\n (angleAttr = ` rotate=\"${toFixed(radiansToDegrees(angle), numFractionDigit)}\"`);\n const m = createRotateMatrix({ angle: radiansToDegrees(angle!) });\n m[4] = renderLeft!;\n m[5] = renderTop!;\n const renderPoint = new Point(-wBy2, 0).transform(m);\n left = renderPoint.x;\n top = renderPoint.y;\n }\n\n return `<tspan x=\"${toFixed(left, numFractionDigit)}\" y=\"${toFixed(\n top,\n numFractionDigit,\n )}\" ${dySpan}${angleAttr}${fillStyles}>${escapeXml(char)}</tspan>`;\n }\n\n private _setSVGTextLineText(\n this: TextSVGExportMixin & FabricText,\n textSpans: string[],\n lineIndex: number,\n textLeftOffset: number,\n textTopOffset: number,\n ) {\n const lineHeight = this.getHeightOfLine(lineIndex),\n isJustify = this.textAlign.includes(JUSTIFY),\n line = this._textLines[lineIndex];\n let actualStyle,\n nextStyle,\n charsToRender = '',\n charBox,\n style,\n boxWidth = 0,\n timeToRender;\n\n textTopOffset +=\n (lineHeight * (1 - this._fontSizeFraction)) / this.lineHeight;\n for (let i = 0, len = line.length - 1; i <= len; i++) {\n timeToRender = i === len || this.charSpacing || this.path;\n charsToRender += line[i];\n charBox = this.__charBounds[lineIndex][i];\n if (boxWidth === 0) {\n textLeftOffset += charBox.kernedWidth - charBox.width;\n boxWidth += charBox.width;\n } else {\n boxWidth += charBox.kernedWidth;\n }\n if (isJustify && !timeToRender) {\n if (this._reSpaceAndTab.test(line[i])) {\n timeToRender = true;\n }\n }\n if (!timeToRender) {\n // if we have charSpacing or a path, we render char by char\n actualStyle =\n actualStyle || this.getCompleteStyleDeclaration(lineIndex, i);\n nextStyle = this.getCompleteStyleDeclaration(lineIndex, i + 1);\n timeToRender = hasStyleChanged(actualStyle, nextStyle, true);\n }\n if (timeToRender) {\n style = this._getStyleDeclaration(lineIndex, i);\n textSpans.push(\n this._createTextCharSpan(\n charsToRender,\n style,\n textLeftOffset,\n textTopOffset,\n charBox,\n ),\n );\n charsToRender = '';\n actualStyle = nextStyle;\n if (this.direction === 'rtl') {\n textLeftOffset -= boxWidth;\n } else {\n textLeftOffset += boxWidth;\n }\n boxWidth = 0;\n }\n }\n }\n\n private _setSVGTextLineBg(\n this: TextSVGExportMixin & FabricText,\n textBgRects: (string | number)[],\n i: number,\n leftOffset: number,\n textTopOffset: number,\n ) {\n const line = this._textLines[i],\n heightOfLine = this.getHeightOfLine(i) / this.lineHeight;\n let boxWidth = 0,\n boxStart = 0,\n currentColor,\n lastColor = this.getValueOfPropertyAt(i, 0, 'textBackgroundColor');\n for (let j = 0; j < line.length; j++) {\n const { left, width, kernedWidth } = this.__charBounds[i][j];\n currentColor = this.getValueOfPropertyAt(i, j, 'textBackgroundColor');\n if (currentColor !== lastColor) {\n lastColor &&\n textBgRects.push(\n createSVGInlineRect(\n lastColor,\n leftOffset + boxStart,\n textTopOffset,\n boxWidth,\n heightOfLine,\n ),\n );\n boxStart = left;\n boxWidth = width;\n lastColor = currentColor;\n } else {\n boxWidth += kernedWidth;\n }\n }\n currentColor &&\n textBgRects.push(\n createSVGInlineRect(\n lastColor,\n leftOffset + boxStart,\n textTopOffset,\n boxWidth,\n heightOfLine,\n ),\n );\n }\n\n /**\n * Returns styles-string for svg-export\n * @param {Boolean} skipShadow a boolean to skip shadow filter output\n * @return {String}\n */\n getSvgStyles(this: TextSVGExportMixin & FabricText, skipShadow?: boolean) {\n const objectLevelTextDecorationColor = isSafeSvgStyleValue(\n this[TEXT_DECORATION_COLOR],\n )\n ? ` text-decoration-color: ${escapeXml(this[TEXT_DECORATION_COLOR])};`\n : '';\n return `${super.getSvgStyles(skipShadow)} text-decoration-thickness: ${toFixed((this.textDecorationThickness * this.getObjectScaling().y) / 10, config.NUM_FRACTION_DIGITS)}%;${objectLevelTextDecorationColor} white-space: pre;`;\n }\n\n /**\n * Returns styles-string for svg-export\n * @param {Object} style the object from which to retrieve style properties\n * @param {Boolean} useWhiteSpace a boolean to include an additional attribute in the style.\n * @return {String}\n */\n getSvgSpanStyles(\n this: TextSVGExportMixin & FabricText,\n style: TextStyleDeclaration,\n useWhiteSpace?: boolean,\n ) {\n const {\n fontFamily,\n strokeWidth,\n stroke,\n fill,\n fontSize,\n fontStyle,\n fontWeight,\n textDecorationThickness,\n textDecorationColor,\n linethrough,\n overline,\n underline,\n } = style;\n\n const textDecoration = this.getSvgTextDecoration({\n underline: underline ?? this.underline,\n overline: overline ?? this.overline,\n linethrough: linethrough ?? this.linethrough,\n });\n const thickness =\n textDecorationThickness || this[TEXT_DECORATION_THICKNESS];\n const decorationColor = textDecorationColor || this[TEXT_DECORATION_COLOR];\n const safeStrokeWidth = getSafeSvgStyleNumber(strokeWidth);\n const safeFontFamily = getSafeSvgStyleToken(fontFamily);\n const safeFontSize = getSafeSvgStyleNumber(fontSize);\n const safeFontStyle = getSafeSvgStyleToken(fontStyle);\n const safeFontWeight =\n getSafeSvgStyleNumber(fontWeight) || getSafeSvgStyleToken(fontWeight);\n const safeDecorationColor = getSafeSvgStyleToken(decorationColor);\n return [\n stroke ? colorPropToSVG(STROKE, stroke) : '',\n safeStrokeWidth ? `stroke-width: ${escapeXml(safeStrokeWidth)}; ` : '',\n safeFontFamily\n ? `font-family: ${\n !safeFontFamily.includes(\"'\") && !safeFontFamily.includes('\"')\n ? `'${escapeXml(safeFontFamily)}'`\n : escapeXml(safeFontFamily)\n }; `\n : '',\n safeFontSize ? `font-size: ${escapeXml(safeFontSize)}px; ` : '',\n safeFontStyle ? `font-style: ${escapeXml(safeFontStyle)}; ` : '',\n safeFontWeight ? `font-weight: ${escapeXml(safeFontWeight)}; ` : '',\n textDecoration\n ? `text-decoration: ${textDecoration}; text-decoration-thickness: ${toFixed((thickness * this.getObjectScaling().y) / 10, config.NUM_FRACTION_DIGITS)}%;${\n safeDecorationColor\n ? ` text-decoration-color: ${escapeXml(safeDecorationColor)};`\n : ''\n } `\n : '',\n fill ? colorPropToSVG(FILL, fill) : '',\n useWhiteSpace ? 'white-space: pre; ' : '',\n ].join('');\n }\n\n /**\n * Returns text-decoration property for svg-export\n * @param {Object} style the object from which to retrieve style properties\n * @return {String}\n */\n getSvgTextDecoration(\n this: TextSVGExportMixin & FabricText,\n style: TextStyleDeclaration,\n ) {\n return (['overline', 'underline', 'line-through'] as const)\n .filter(\n (decoration) =>\n style[\n decoration.replace('-', '') as\n | 'overline'\n | 'underline'\n | 'linethrough'\n ],\n )\n .join(' ');\n }\n}\n"],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { TClassProperties } from '../../typedefs';
2
- import type { FabricText } from './Text';
3
- export declare const TEXT_DECORATION_THICKNESS = "textDecorationThickness";
4
- export declare const TEXT_DECORATION_COLOR = "textDecorationColor";
5
- export declare const textDecorationProperties: readonly ["underline", "overline", "linethrough"];
6
- export declare const textLayoutProperties: string[];
7
- export declare const additionalProps: readonly [...string[], "underline", "overline", "linethrough", "textBackgroundColor", "direction", "textDecorationThickness", "textDecorationColor"];
8
- export type StylePropertiesType = 'fill' | 'stroke' | 'strokeWidth' | 'fontSize' | 'fontFamily' | 'fontWeight' | 'fontStyle' | 'textBackgroundColor' | 'deltaY' | 'overline' | 'underline' | 'linethrough' | typeof TEXT_DECORATION_THICKNESS | typeof TEXT_DECORATION_COLOR;
9
- export declare const styleProperties: Readonly<StylePropertiesType[]>;
10
- export declare const textDefaultValues: Partial<TClassProperties<FabricText>>;
11
- export declare const JUSTIFY = "justify";
12
- export declare const JUSTIFY_LEFT = "justify-left";
13
- export declare const JUSTIFY_RIGHT = "justify-right";
14
- export declare const JUSTIFY_CENTER = "justify-center";
15
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/shapes/Text/constants.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAS3D,eAAO,MAAM,wBAAwB,mDAI3B,CAAC;AAEX,eAAO,MAAM,oBAAoB,EAAE,MAAM,EAWxC,CAAC;AAEF,eAAO,MAAM,eAAe,sJAOlB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC3B,MAAM,GACN,QAAQ,GACR,aAAa,GACb,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,qBAAqB,GACrB,QAAQ,GACR,UAAU,GACV,WAAW,GACX,aAAa,GACb,OAAO,yBAAyB,GAChC,OAAO,qBAAqB,CAAC;AAEjC,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAUlD,CAAC;AAKX,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CA2CnE,CAAC;AAEF,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAC3C,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAC7C,eAAO,MAAM,cAAc,mBAAmB,CAAC"}
@@ -1,2 +0,0 @@
1
- import{FILL as e,LEFT as t,NORMAL as n,STROKE as r,reNewline as i}from"../../constants.min.mjs";const a=`textDecorationThickness`,o=`textDecorationColor`,s=[`fontSize`,`fontWeight`,`fontFamily`,`fontStyle`],c=[`underline`,`overline`,`linethrough`],l=[...s,`lineHeight`,`text`,`charSpacing`,`textAlign`,`styles`,`path`,`pathStartOffset`,`pathSide`,`pathAlign`],u=[...l,...c,`textBackgroundColor`,`direction`,a,o],d=[...s,...c,r,`strokeWidth`,e,`deltaY`,`textBackgroundColor`,a,o],f={_reNewline:i,_reSpacesAndTabs:/[ \t\r]/g,_reSpaceAndTab:/[ \t\r]/,_reWords:/\S+/g,fontSize:40,fontWeight:n,fontFamily:`Times New Roman`,underline:!1,overline:!1,linethrough:!1,textAlign:t,fontStyle:n,lineHeight:1.16,textBackgroundColor:``,stroke:null,shadow:null,path:void 0,pathStartOffset:0,pathSide:t,pathAlign:`baseline`,charSpacing:0,deltaY:0,direction:`ltr`,CACHE_FONT_SIZE:400,MIN_TEXT_WIDTH:2,superscript:{size:.6,baseline:-.35},subscript:{size:.6,baseline:.11},_fontSizeFraction:.222,offsets:{underline:.1,linethrough:-.28167,overline:-.81333},_fontSizeMult:1.13,[a]:66.667},p=`justify`,m=`justify-left`,h=`justify-right`,g=`justify-center`;export{p as JUSTIFY,g as JUSTIFY_CENTER,m as JUSTIFY_LEFT,h as JUSTIFY_RIGHT,o as TEXT_DECORATION_COLOR,a as TEXT_DECORATION_THICKNESS,u as additionalProps,d as styleProperties,f as textDefaultValues,l as textLayoutProperties};
2
- //# sourceMappingURL=constants.min.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.min.mjs","names":[],"sources":["../../../../src/shapes/Text/constants.ts"],"sourcesContent":["import { FILL, LEFT, LTR, NORMAL, STROKE, reNewline } from '../../constants';\nimport type { TClassProperties } from '../../typedefs';\nimport type { FabricText } from './Text';\n\nexport const TEXT_DECORATION_THICKNESS = 'textDecorationThickness';\nexport const TEXT_DECORATION_COLOR = 'textDecorationColor';\n\nconst fontProperties = [\n 'fontSize',\n 'fontWeight',\n 'fontFamily',\n 'fontStyle',\n] as const;\n\nexport const textDecorationProperties = [\n 'underline',\n 'overline',\n 'linethrough',\n] as const;\n\nexport const textLayoutProperties: string[] = [\n ...fontProperties,\n 'lineHeight',\n 'text',\n 'charSpacing',\n 'textAlign',\n 'styles',\n 'path',\n 'pathStartOffset',\n 'pathSide',\n 'pathAlign',\n];\n\nexport const additionalProps = [\n ...textLayoutProperties,\n ...textDecorationProperties,\n 'textBackgroundColor',\n 'direction',\n TEXT_DECORATION_THICKNESS,\n TEXT_DECORATION_COLOR,\n] as const;\n\nexport type StylePropertiesType =\n | 'fill'\n | 'stroke'\n | 'strokeWidth'\n | 'fontSize'\n | 'fontFamily'\n | 'fontWeight'\n | 'fontStyle'\n | 'textBackgroundColor'\n | 'deltaY'\n | 'overline'\n | 'underline'\n | 'linethrough'\n | typeof TEXT_DECORATION_THICKNESS\n | typeof TEXT_DECORATION_COLOR;\n\nexport const styleProperties: Readonly<StylePropertiesType[]> = [\n ...fontProperties,\n ...textDecorationProperties,\n STROKE,\n 'strokeWidth',\n FILL,\n 'deltaY',\n 'textBackgroundColor',\n TEXT_DECORATION_THICKNESS,\n TEXT_DECORATION_COLOR,\n] as const;\n\n// @TODO: Many things here are configuration related and shouldn't be on the class nor prototype\n// regexes, list of properties that are not suppose to change by instances, magic consts.\n// this will be a separated effort\nexport const textDefaultValues: Partial<TClassProperties<FabricText>> = {\n _reNewline: reNewline,\n _reSpacesAndTabs: /[ \\t\\r]/g,\n _reSpaceAndTab: /[ \\t\\r]/,\n _reWords: /\\S+/g,\n fontSize: 40,\n fontWeight: NORMAL,\n fontFamily: 'Times New Roman',\n underline: false,\n overline: false,\n linethrough: false,\n textAlign: LEFT,\n fontStyle: NORMAL,\n lineHeight: 1.16,\n textBackgroundColor: '',\n stroke: null,\n shadow: null,\n path: undefined,\n pathStartOffset: 0,\n pathSide: LEFT,\n pathAlign: 'baseline',\n charSpacing: 0,\n deltaY: 0,\n direction: LTR,\n CACHE_FONT_SIZE: 400,\n MIN_TEXT_WIDTH: 2,\n // Text magic numbers\n superscript: {\n size: 0.6, // fontSize factor\n baseline: -0.35, // baseline-shift factor (upwards)\n },\n subscript: {\n size: 0.6, // fontSize factor\n baseline: 0.11, // baseline-shift factor (downwards)\n },\n _fontSizeFraction: 0.222,\n offsets: {\n underline: 0.1,\n linethrough: -0.28167, // added 1/30 to original number\n overline: -0.81333, // added 1/15 to original number\n },\n _fontSizeMult: 1.13,\n [TEXT_DECORATION_THICKNESS]: 66.667, // before implementation was 1/15\n};\n\nexport const JUSTIFY = 'justify';\nexport const JUSTIFY_LEFT = 'justify-left';\nexport const JUSTIFY_RIGHT = 'justify-right';\nexport const JUSTIFY_CENTER = 'justify-center';\n"],"mappings":"gGAIA,MAAa,EAA4B,0BAC5B,EAAwB,sBAE/B,EAAiB,CACrB,WACA,aACA,aACA,YAAA,CAGW,EAA2B,CACtC,YACA,WACA,cAAA,CAGW,EAAiC,CAAA,GACzC,EACH,aACA,OACA,cACA,YACA,SACA,OACA,kBACA,WACA,YAAA,CAGW,EAAkB,CAAA,GAC1B,EAAA,GACA,EACH,sBACA,YACA,EACA,EAAA,CAmBW,EAAmD,CAAA,GAC3D,EAAA,GACA,EACH,EACA,cACA,EACA,SACA,sBACA,EACA,EAAA,CAMW,EAA2D,CACtE,WAAY,EACZ,iBAAkB,WAClB,eAAgB,UAChB,SAAU,OACV,SAAU,GACV,WAAY,EACZ,WAAY,kBACZ,UAAA,CAAW,EACX,SAAA,CAAU,EACV,YAAA,CAAa,EACb,UAAW,EACX,UAAW,EACX,WAAY,KACZ,oBAAqB,GACrB,OAAQ,KACR,OAAQ,KACR,KAAA,IAAM,GACN,gBAAiB,EACjB,SAAU,EACV,UAAW,WACX,YAAa,EACb,OAAQ,EACR,UAAA,MACA,gBAAiB,IACjB,eAAgB,EAEhB,YAAa,CACX,KAAM,GACN,SAAA,KAAU,CAEZ,UAAW,CACT,KAAM,GACN,SAAU,IAAA,CAEZ,kBAAmB,KACnB,QAAS,CACP,UAAW,GACX,YAAA,QACA,SAAA,QAAU,CAEZ,cAAe,MACd,GAA4B,OAAA,CAGlB,EAAU,UACV,EAAe,eACf,EAAgB,gBAChB,EAAiB,iBAAA,OAAA,KAAA,QAAA,KAAA,eAAA,KAAA,aAAA,KAAA,cAAA,KAAA,sBAAA,KAAA,0BAAA,KAAA,gBAAA,KAAA,gBAAA,KAAA,kBAAA,KAAA"}