abstract-image 3.1.3 → 3.2.0

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 (333) hide show
  1. package/CHANGELOG.md +27 -21
  2. package/LICENSE +21 -21
  3. package/README.md +71 -71
  4. package/lib/__stories__/react-svg-export/example-1.stories.d.ts.map +1 -1
  5. package/lib/__stories__/react-svg-export/example-1.stories.js +1 -1
  6. package/lib/__stories__/react-svg-export/example-1.stories.js.map +1 -1
  7. package/lib/_tests_/exporters/svg-export-image.test.d.ts +2 -0
  8. package/lib/_tests_/exporters/svg-export-image.test.d.ts.map +1 -0
  9. package/lib/_tests_/exporters/svg-export-image.test.js +35 -0
  10. package/lib/_tests_/exporters/svg-export-image.test.js.map +1 -0
  11. package/lib/exporters/__tests__/dxf/export-test-def.d.ts +11 -0
  12. package/lib/exporters/__tests__/dxf/export-test-def.d.ts.map +1 -0
  13. package/lib/exporters/__tests__/dxf/export-test-def.js +6 -0
  14. package/lib/exporters/__tests__/dxf/export-test-def.js.map +1 -0
  15. package/lib/exporters/__tests__/dxf/export.test.d.ts +3 -0
  16. package/lib/exporters/__tests__/dxf/export.test.d.ts.map +1 -0
  17. package/lib/exporters/__tests__/dxf/export.test.js +17 -0
  18. package/lib/exporters/__tests__/dxf/export.test.js.map +1 -0
  19. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-ellipse.d.ts +3 -0
  20. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-ellipse.d.ts.map +1 -0
  21. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-ellipse.js +413 -0
  22. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-ellipse.js.map +1 -0
  23. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-group.d.ts +3 -0
  24. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-group.d.ts.map +1 -0
  25. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-group.js +160 -0
  26. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-group.js.map +1 -0
  27. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-line.d.ts +3 -0
  28. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-line.d.ts.map +1 -0
  29. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-line.js +89 -0
  30. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-line.js.map +1 -0
  31. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polygon.d.ts +3 -0
  32. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polygon.d.ts.map +1 -0
  33. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polygon.js +123 -0
  34. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polygon.js.map +1 -0
  35. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polyline.d.ts +3 -0
  36. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polyline.d.ts.map +1 -0
  37. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polyline.js +113 -0
  38. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-polyline.js.map +1 -0
  39. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-rectangle.d.ts +3 -0
  40. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-rectangle.d.ts.map +1 -0
  41. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-rectangle.js +133 -0
  42. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-rectangle.js.map +1 -0
  43. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text-growth-directions.d.ts +3 -0
  44. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text-growth-directions.d.ts.map +1 -0
  45. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text-growth-directions.js +172 -0
  46. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text-growth-directions.js.map +1 -0
  47. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text.d.ts +3 -0
  48. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text.d.ts.map +1 -0
  49. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text.js +97 -0
  50. package/lib/exporters/__tests__/dxf/test-defs/dxf2d-text.js.map +1 -0
  51. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.js +379 -379
  52. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.d.ts.map +1 -1
  53. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.js +124 -124
  54. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.js.map +1 -1
  55. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.js +55 -55
  56. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.js +89 -89
  57. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.js +79 -79
  58. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.js +99 -99
  59. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.d.ts.map +1 -1
  60. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.js +139 -139
  61. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.js.map +1 -1
  62. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.d.ts.map +1 -1
  63. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.js +64 -64
  64. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.js.map +1 -1
  65. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.js +24 -24
  66. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.d.ts.map +1 -1
  67. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.js +27 -27
  68. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.js.map +1 -1
  69. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.d.ts.map +1 -1
  70. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.js +32 -32
  71. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.js.map +1 -1
  72. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-line.js +20 -20
  73. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polygon.js +34 -34
  74. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polyline.js +26 -26
  75. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.js +20 -20
  76. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.d.ts.map +1 -1
  77. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.js +63 -63
  78. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.js.map +1 -1
  79. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.d.ts.map +1 -1
  80. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.js +27 -27
  81. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.js.map +1 -1
  82. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.js +2 -2
  83. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.js.map +1 -1
  84. package/lib/exporters/__tests__/exception/svg-direction-exception.test.js +2 -2
  85. package/lib/exporters/__tests__/exception/svg-direction-exception.test.js.map +1 -1
  86. package/lib/exporters/__tests__/export-test-def.d.ts +8 -0
  87. package/lib/exporters/__tests__/export-test-def.d.ts.map +1 -0
  88. package/lib/exporters/__tests__/export-test-def.js +3 -0
  89. package/lib/exporters/__tests__/export-test-def.js.map +1 -0
  90. package/lib/exporters/__tests__/export.test.d.ts +3 -0
  91. package/lib/exporters/__tests__/export.test.d.ts.map +1 -0
  92. package/lib/exporters/__tests__/export.test.js +18 -0
  93. package/lib/exporters/__tests__/export.test.js.map +1 -0
  94. package/lib/exporters/__tests__/react-svg/export-test-def.d.ts +12 -0
  95. package/lib/exporters/__tests__/react-svg/export-test-def.d.ts.map +1 -0
  96. package/lib/exporters/__tests__/react-svg/export-test-def.js +6 -0
  97. package/lib/exporters/__tests__/react-svg/export-test-def.js.map +1 -0
  98. package/lib/exporters/__tests__/react-svg/export.test.d.ts +3 -0
  99. package/lib/exporters/__tests__/react-svg/export.test.d.ts.map +1 -0
  100. package/lib/exporters/__tests__/react-svg/export.test.js +17 -0
  101. package/lib/exporters/__tests__/react-svg/export.test.js.map +1 -0
  102. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary-png.d.ts +3 -0
  103. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary-png.d.ts.map +1 -0
  104. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary-png.js +33 -0
  105. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary-png.js.map +1 -0
  106. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary.d.ts +3 -0
  107. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary.d.ts.map +1 -0
  108. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary.js +33 -0
  109. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-binary.js.map +1 -0
  110. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-callback.d.ts +3 -0
  111. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-callback.d.ts.map +1 -0
  112. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-callback.js +38 -0
  113. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-callback.js.map +1 -0
  114. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-ellipse.d.ts +3 -0
  115. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-ellipse.d.ts.map +1 -0
  116. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-ellipse.js +34 -0
  117. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-ellipse.js.map +1 -0
  118. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-empty-text.d.ts +3 -0
  119. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-empty-text.d.ts.map +1 -0
  120. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-empty-text.js +34 -0
  121. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-empty-text.js.map +1 -0
  122. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-group.d.ts +3 -0
  123. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-group.d.ts.map +1 -0
  124. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-group.js +37 -0
  125. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-group.js.map +1 -0
  126. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-line.d.ts +3 -0
  127. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-line.d.ts.map +1 -0
  128. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-line.js +34 -0
  129. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-line.js.map +1 -0
  130. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polygon.d.ts +3 -0
  131. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polygon.d.ts.map +1 -0
  132. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polygon.js +40 -0
  133. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polygon.js.map +1 -0
  134. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polyline.d.ts +3 -0
  135. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polyline.d.ts.map +1 -0
  136. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polyline.js +42 -0
  137. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-polyline.js.map +1 -0
  138. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-rectangle.d.ts +3 -0
  139. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-rectangle.d.ts.map +1 -0
  140. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-rectangle.js +34 -0
  141. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-rectangle.js.map +1 -0
  142. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-subimage.d.ts +3 -0
  143. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-subimage.d.ts.map +1 -0
  144. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-subimage.js +33 -0
  145. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-subimage.js.map +1 -0
  146. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-growth-directions.d.ts +3 -0
  147. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-growth-directions.d.ts.map +1 -0
  148. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-growth-directions.js +37 -0
  149. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-growth-directions.js.map +1 -0
  150. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-sub.d.ts +3 -0
  151. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-sub.d.ts.map +1 -0
  152. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-sub.js +34 -0
  153. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text-sub.js.map +1 -0
  154. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text.d.ts +3 -0
  155. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text.d.ts.map +1 -0
  156. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text.js +34 -0
  157. package/lib/exporters/__tests__/react-svg/test-defs/react-svg-text.js.map +1 -0
  158. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.d.ts.map +1 -1
  159. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.js +1 -1
  160. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.js.map +1 -1
  161. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.d.ts.map +1 -1
  162. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.js +1 -1
  163. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.js.map +1 -1
  164. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.d.ts.map +1 -1
  165. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.js +1 -1
  166. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.js.map +1 -1
  167. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.d.ts.map +1 -1
  168. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.js +1 -1
  169. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.js.map +1 -1
  170. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.d.ts.map +1 -1
  171. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.js +4 -4
  172. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.js.map +1 -1
  173. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.d.ts.map +1 -1
  174. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.js +1 -1
  175. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.js.map +1 -1
  176. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.d.ts.map +1 -1
  177. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.js +1 -1
  178. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.js.map +1 -1
  179. package/lib/exporters/__tests__/svg/export-test-def.d.ts +11 -0
  180. package/lib/exporters/__tests__/svg/export-test-def.d.ts.map +1 -0
  181. package/lib/exporters/__tests__/svg/export-test-def.js +6 -0
  182. package/lib/exporters/__tests__/svg/export-test-def.js.map +1 -0
  183. package/lib/exporters/__tests__/svg/export.test.d.ts +3 -0
  184. package/lib/exporters/__tests__/svg/export.test.d.ts.map +1 -0
  185. package/lib/exporters/__tests__/svg/export.test.js +17 -0
  186. package/lib/exporters/__tests__/svg/export.test.js.map +1 -0
  187. package/lib/exporters/__tests__/svg/test-defs/svg-ellipse.d.ts +3 -0
  188. package/lib/exporters/__tests__/svg/test-defs/svg-ellipse.d.ts.map +1 -0
  189. package/lib/exporters/__tests__/svg/test-defs/svg-ellipse.js +34 -0
  190. package/lib/exporters/__tests__/svg/test-defs/svg-ellipse.js.map +1 -0
  191. package/lib/exporters/__tests__/svg/test-defs/svg-empty-text.d.ts +3 -0
  192. package/lib/exporters/__tests__/svg/test-defs/svg-empty-text.d.ts.map +1 -0
  193. package/lib/exporters/__tests__/svg/test-defs/svg-empty-text.js +34 -0
  194. package/lib/exporters/__tests__/svg/test-defs/svg-empty-text.js.map +1 -0
  195. package/lib/exporters/__tests__/svg/test-defs/svg-group.d.ts +3 -0
  196. package/lib/exporters/__tests__/svg/test-defs/svg-group.d.ts.map +1 -0
  197. package/lib/exporters/__tests__/svg/test-defs/svg-group.js +37 -0
  198. package/lib/exporters/__tests__/svg/test-defs/svg-group.js.map +1 -0
  199. package/lib/exporters/__tests__/svg/test-defs/svg-line.d.ts +3 -0
  200. package/lib/exporters/__tests__/svg/test-defs/svg-line.d.ts.map +1 -0
  201. package/lib/exporters/__tests__/svg/test-defs/svg-line.js +34 -0
  202. package/lib/exporters/__tests__/svg/test-defs/svg-line.js.map +1 -0
  203. package/lib/exporters/__tests__/svg/test-defs/svg-polygon.d.ts +3 -0
  204. package/lib/exporters/__tests__/svg/test-defs/svg-polygon.d.ts.map +1 -0
  205. package/lib/exporters/__tests__/svg/test-defs/svg-polygon.js +40 -0
  206. package/lib/exporters/__tests__/svg/test-defs/svg-polygon.js.map +1 -0
  207. package/lib/exporters/__tests__/svg/test-defs/svg-polyline.d.ts +3 -0
  208. package/lib/exporters/__tests__/svg/test-defs/svg-polyline.d.ts.map +1 -0
  209. package/lib/exporters/__tests__/svg/test-defs/svg-polyline.js +42 -0
  210. package/lib/exporters/__tests__/svg/test-defs/svg-polyline.js.map +1 -0
  211. package/lib/exporters/__tests__/svg/test-defs/svg-rectangle.d.ts +3 -0
  212. package/lib/exporters/__tests__/svg/test-defs/svg-rectangle.d.ts.map +1 -0
  213. package/lib/exporters/__tests__/svg/test-defs/svg-rectangle.js +34 -0
  214. package/lib/exporters/__tests__/svg/test-defs/svg-rectangle.js.map +1 -0
  215. package/lib/exporters/__tests__/svg/test-defs/svg-text-growth-directions.d.ts +3 -0
  216. package/lib/exporters/__tests__/svg/test-defs/svg-text-growth-directions.d.ts.map +1 -0
  217. package/lib/exporters/__tests__/svg/test-defs/svg-text-growth-directions.js +37 -0
  218. package/lib/exporters/__tests__/svg/test-defs/svg-text-growth-directions.js.map +1 -0
  219. package/lib/exporters/__tests__/svg/test-defs/svg-text-unknown-direction.d.ts +3 -0
  220. package/lib/exporters/__tests__/svg/test-defs/svg-text-unknown-direction.d.ts.map +1 -0
  221. package/lib/exporters/__tests__/svg/test-defs/svg-text-unknown-direction.js +34 -0
  222. package/lib/exporters/__tests__/svg/test-defs/svg-text-unknown-direction.js.map +1 -0
  223. package/lib/exporters/__tests__/svg/test-defs/svg-text.d.ts +3 -0
  224. package/lib/exporters/__tests__/svg/test-defs/svg-text.d.ts.map +1 -0
  225. package/lib/exporters/__tests__/svg/test-defs/svg-text.js +34 -0
  226. package/lib/exporters/__tests__/svg/test-defs/svg-text.js.map +1 -0
  227. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.d.ts.map +1 -1
  228. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.js +1 -1
  229. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.js.map +1 -1
  230. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.d.ts.map +1 -1
  231. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.js +1 -1
  232. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.js.map +1 -1
  233. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.d.ts.map +1 -1
  234. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.js +4 -4
  235. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.js.map +1 -1
  236. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.d.ts.map +1 -1
  237. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.js +1 -1
  238. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.js.map +1 -1
  239. package/lib/exporters/__tests__/test-defs/png-export-image.d.ts +3 -0
  240. package/lib/exporters/__tests__/test-defs/png-export-image.d.ts.map +1 -0
  241. package/lib/exporters/__tests__/test-defs/png-export-image.js +9 -0
  242. package/lib/exporters/__tests__/test-defs/png-export-image.js.map +1 -0
  243. package/lib/exporters/__tests__/test-defs/svg-export-image.d.ts +3 -0
  244. package/lib/exporters/__tests__/test-defs/svg-export-image.d.ts.map +1 -0
  245. package/lib/exporters/__tests__/test-defs/svg-export-image.js +54 -0
  246. package/lib/exporters/__tests__/test-defs/svg-export-image.js.map +1 -0
  247. package/lib/exporters/react-svg-export-image.js +2 -2
  248. package/lib/exporters/react-svg-export-image.js.map +1 -1
  249. package/lib/model/__tests__/color/test-defs/color-from-string-6-digits.d.ts +3 -0
  250. package/lib/model/__tests__/color/test-defs/color-from-string-6-digits.d.ts.map +1 -0
  251. package/lib/model/__tests__/color/test-defs/color-from-string-6-digits.js +66 -0
  252. package/lib/model/__tests__/color/test-defs/color-from-string-6-digits.js.map +1 -0
  253. package/lib/model/component.d.ts +3 -2
  254. package/lib/model/component.d.ts.map +1 -1
  255. package/lib/model/component.js +12 -11
  256. package/lib/model/component.js.map +1 -1
  257. package/package.json +2 -2
  258. package/src/__stories__/react-svg-export/example-1.stories.tsx +54 -53
  259. package/src/__stories__/svg-export/example-1.stories.tsx +42 -42
  260. package/src/exporters/__tests__/dxf2d-export-image/export-test-def.ts +11 -11
  261. package/src/exporters/__tests__/dxf2d-export-image/export.test.tsx +13 -13
  262. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.ts +405 -405
  263. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.ts +166 -165
  264. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.ts +80 -80
  265. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.ts +114 -114
  266. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.ts +103 -103
  267. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.ts +125 -125
  268. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.ts +214 -210
  269. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.ts +97 -96
  270. package/src/exporters/__tests__/eps-export-image/export-test-def.ts +11 -11
  271. package/src/exporters/__tests__/eps-export-image/export.test.tsx +13 -13
  272. package/src/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.ts +50 -50
  273. package/src/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.ts +60 -59
  274. package/src/exporters/__tests__/eps-export-image/test-defs/eps-group.ts +74 -73
  275. package/src/exporters/__tests__/eps-export-image/test-defs/eps-line.ts +45 -45
  276. package/src/exporters/__tests__/eps-export-image/test-defs/eps-polygon.ts +65 -65
  277. package/src/exporters/__tests__/eps-export-image/test-defs/eps-polyline.ts +58 -58
  278. package/src/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.ts +46 -46
  279. package/src/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.ts +138 -134
  280. package/src/exporters/__tests__/eps-export-image/test-defs/eps-text.ts +60 -59
  281. package/src/exporters/__tests__/exception/png-unsupported.test.tsx +25 -25
  282. package/src/exporters/__tests__/exception/react-svg-direction-exception.test.tsx +65 -63
  283. package/src/exporters/__tests__/exception/svg-direction-exception.test.tsx +65 -63
  284. package/src/exporters/__tests__/png-export-image/export-test-def.ts +11 -11
  285. package/src/exporters/__tests__/png-export-image/export.test.tsx +13 -13
  286. package/src/exporters/__tests__/png-export-image/test-defs/png-createPNG.tsx +26 -26
  287. package/src/exporters/__tests__/react-svg-export-image/export-test-def.tsx +13 -13
  288. package/src/exporters/__tests__/react-svg-export-image/export.test.tsx +13 -13
  289. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.tsx +27 -27
  290. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.tsx +26 -26
  291. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.tsx +60 -59
  292. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.tsx +28 -28
  293. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.tsx +35 -34
  294. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.tsx +44 -43
  295. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.tsx +26 -26
  296. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.tsx +32 -32
  297. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.tsx +33 -33
  298. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.tsx +27 -27
  299. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.tsx +36 -35
  300. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.tsx +80 -76
  301. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.tsx +35 -34
  302. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.tsx +35 -34
  303. package/src/exporters/__tests__/svg-export-image/export-test-def.ts +11 -11
  304. package/src/exporters/__tests__/svg-export-image/export.test.tsx +13 -13
  305. package/src/exporters/__tests__/svg-export-image/test-defs/svg-binary.tsx +26 -26
  306. package/src/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.ts +27 -27
  307. package/src/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.ts +34 -33
  308. package/src/exporters/__tests__/svg-export-image/test-defs/svg-group.ts +44 -43
  309. package/src/exporters/__tests__/svg-export-image/test-defs/svg-line.ts +26 -26
  310. package/src/exporters/__tests__/svg-export-image/test-defs/svg-polygon.ts +32 -32
  311. package/src/exporters/__tests__/svg-export-image/test-defs/svg-polyline.ts +33 -33
  312. package/src/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.ts +27 -27
  313. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.ts +80 -76
  314. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text.ts +35 -34
  315. package/src/exporters/dxf2d-export-image.ts +218 -218
  316. package/src/exporters/eps-export-image.ts +154 -154
  317. package/src/exporters/index.ts +3 -3
  318. package/src/exporters/png-export-image.ts +12 -12
  319. package/src/exporters/react-svg-export-image.tsx +298 -298
  320. package/src/exporters/svg-export-image.ts +334 -334
  321. package/src/index.ts +11 -11
  322. package/src/model/__tests__/color/export-test-def.ts +13 -13
  323. package/src/model/__tests__/color/export.test.tsx +14 -14
  324. package/src/model/__tests__/color/test-defs/color-from-string.ts +46 -46
  325. package/src/model/__tests__/color/test-defs/color-to-string.ts +35 -35
  326. package/src/model/__tests__/color/test-defs/color-undefined-2.ts +8 -8
  327. package/src/model/__tests__/color/test-defs/color-undefined.ts +8 -8
  328. package/src/model/abstract-image.ts +25 -25
  329. package/src/model/color.ts +52 -52
  330. package/src/model/component.ts +266 -279
  331. package/src/model/index.ts +5 -5
  332. package/src/model/point.ts +11 -11
  333. package/src/model/size.ts +11 -11
package/src/index.ts CHANGED
@@ -1,11 +1,11 @@
1
- export * from "./model/abstract-image";
2
- export * from "./model/color";
3
- export * from "./model/component";
4
- export * from "./model/point";
5
- export * from "./model/size";
6
-
7
- export * from "./exporters/svg-export-image";
8
- export * from "./exporters/png-export-image";
9
- export * from "./exporters/dxf2d-export-image";
10
- export * from "./exporters/react-svg-export-image";
11
- export * from "./exporters/eps-export-image";
1
+ export * from "./model/abstract-image";
2
+ export * from "./model/color";
3
+ export * from "./model/component";
4
+ export * from "./model/point";
5
+ export * from "./model/size";
6
+
7
+ export * from "./exporters/svg-export-image";
8
+ export * from "./exporters/png-export-image";
9
+ export * from "./exporters/dxf2d-export-image";
10
+ export * from "./exporters/react-svg-export-image";
11
+ export * from "./exporters/eps-export-image";
@@ -1,13 +1,13 @@
1
- /**
2
- * Defines a data-type that represents a single test for the Docx render function
3
- */
4
-
5
- import * as AbstractImage from "../../../../src/index";
6
-
7
- export type ExportTestDef = {
8
- readonly name: string;
9
- readonly only?: boolean;
10
- readonly skip?: boolean;
11
- readonly abstractColor: {} | AbstractImage.Color | undefined;
12
- readonly expectedColor: {} | undefined;
13
- };
1
+ /**
2
+ * Defines a data-type that represents a single test for the Docx render function
3
+ */
4
+
5
+ import * as AbstractImage from "../../../../src/index";
6
+
7
+ export type ExportTestDef = {
8
+ readonly name: string;
9
+ readonly only?: boolean;
10
+ readonly skip?: boolean;
11
+ readonly abstractColor: {} | AbstractImage.Color | undefined;
12
+ readonly expectedColor: {} | undefined;
13
+ };
@@ -1,14 +1,14 @@
1
- import path from "path";
2
- import { loadTests, onlySkip } from "@abstract-visuals/test-utils";
3
- import { ExportTestDef } from "./export-test-def";
4
-
5
- export const tests = loadTests<ExportTestDef>(path.join(__dirname, "test-defs/"));
6
-
7
- describe("color", () => {
8
- onlySkip(tests).forEach((item) => {
9
- test(item.name, async () => {
10
- // const abstractDoc = render(item.abstractDocJsx);
11
- expect(item.abstractColor).toEqual(item.expectedColor);
12
- });
13
- });
14
- });
1
+ import path from "path";
2
+ import { loadTests, onlySkip } from "@abstract-visuals/test-utils";
3
+ import { ExportTestDef } from "./export-test-def";
4
+
5
+ export const tests = loadTests<ExportTestDef>(path.join(__dirname, "test-defs/"));
6
+
7
+ describe("color", () => {
8
+ onlySkip(tests).forEach((item) => {
9
+ test(item.name, async () => {
10
+ // const abstractDoc = render(item.abstractDocJsx);
11
+ expect(item.abstractColor).toEqual(item.expectedColor);
12
+ });
13
+ });
14
+ });
@@ -1,46 +1,46 @@
1
- import { ExportTestDef } from "../export-test-def";
2
- import * as AbstractImage from "../../../../../src/index";
3
-
4
- const colorStrings = [
5
- "#ff000000",
6
- "#ff0000ff",
7
- "#ffa52a2a",
8
- "#ff00ffff",
9
- "#ffa9a9a9",
10
- "#ff808080",
11
- "#ff008000",
12
- "#ffd3d3d3",
13
- "#ffff00ff",
14
- "#ffffa500",
15
- "#ff800080",
16
- "#ffff0000",
17
- "#ffffffff",
18
- "#ffffffff",
19
- "#ffffff00",
20
- "#ffadd8e6",
21
- ];
22
-
23
- const fromColor = colorStrings.map((color) => AbstractImage.fromString(color));
24
-
25
- export const test: ExportTestDef = {
26
- name: "color from string",
27
- abstractColor: fromColor,
28
- expectedColor: [
29
- { a: 255, b: 0, g: 0, r: 0 },
30
- { a: 255, b: 255, g: 0, r: 0 },
31
- { a: 255, b: 42, g: 42, r: 165 },
32
- { a: 255, b: 255, g: 255, r: 0 },
33
- { a: 255, b: 169, g: 169, r: 169 },
34
- { a: 255, b: 128, g: 128, r: 128 },
35
- { a: 255, b: 0, g: 128, r: 0 },
36
- { a: 255, b: 211, g: 211, r: 211 },
37
- { a: 255, b: 255, g: 0, r: 255 },
38
- { a: 255, b: 0, g: 165, r: 255 },
39
- { a: 255, b: 128, g: 0, r: 128 },
40
- { a: 255, b: 0, g: 0, r: 255 },
41
- { a: 255, b: 255, g: 255, r: 255 },
42
- { a: 255, b: 255, g: 255, r: 255 },
43
- { a: 255, b: 0, g: 255, r: 255 },
44
- { a: 255, b: 230, g: 216, r: 173 },
45
- ],
46
- };
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const colorStrings = [
5
+ "#ff000000",
6
+ "#ff0000ff",
7
+ "#ffa52a2a",
8
+ "#ff00ffff",
9
+ "#ffa9a9a9",
10
+ "#ff808080",
11
+ "#ff008000",
12
+ "#ffd3d3d3",
13
+ "#ffff00ff",
14
+ "#ffffa500",
15
+ "#ff800080",
16
+ "#ffff0000",
17
+ "#ffffffff",
18
+ "#ffffffff",
19
+ "#ffffff00",
20
+ "#ffadd8e6",
21
+ ];
22
+
23
+ const fromColor = colorStrings.map((color) => AbstractImage.fromString(color));
24
+
25
+ export const test: ExportTestDef = {
26
+ name: "color from string",
27
+ abstractColor: fromColor,
28
+ expectedColor: [
29
+ { a: 255, b: 0, g: 0, r: 0 },
30
+ { a: 255, b: 255, g: 0, r: 0 },
31
+ { a: 255, b: 42, g: 42, r: 165 },
32
+ { a: 255, b: 255, g: 255, r: 0 },
33
+ { a: 255, b: 169, g: 169, r: 169 },
34
+ { a: 255, b: 128, g: 128, r: 128 },
35
+ { a: 255, b: 0, g: 128, r: 0 },
36
+ { a: 255, b: 211, g: 211, r: 211 },
37
+ { a: 255, b: 255, g: 0, r: 255 },
38
+ { a: 255, b: 0, g: 165, r: 255 },
39
+ { a: 255, b: 128, g: 0, r: 128 },
40
+ { a: 255, b: 0, g: 0, r: 255 },
41
+ { a: 255, b: 255, g: 255, r: 255 },
42
+ { a: 255, b: 255, g: 255, r: 255 },
43
+ { a: 255, b: 0, g: 255, r: 255 },
44
+ { a: 255, b: 230, g: 216, r: 173 },
45
+ ],
46
+ };
@@ -1,35 +1,35 @@
1
- import { ExportTestDef } from "../export-test-def";
2
- import * as AbstractImage from "../../../../../src/index";
3
-
4
- const colors = [
5
- AbstractImage.black,
6
- AbstractImage.blue,
7
- AbstractImage.brown,
8
- AbstractImage.cyan,
9
- AbstractImage.darkGray,
10
- AbstractImage.gray,
11
- AbstractImage.green,
12
- AbstractImage.lightGray,
13
- AbstractImage.magenta,
14
- AbstractImage.orange,
15
- AbstractImage.purple,
16
- AbstractImage.red,
17
- AbstractImage.transparent,
18
- AbstractImage.white,
19
- AbstractImage.yellow,
20
- AbstractImage.lightBlue,
21
- ];
22
-
23
- const colorString = colors
24
- .map((color) => AbstractImage.toString6Hex(color))
25
- .reduce((acc, color) => {
26
- acc += `${color} `;
27
- return acc;
28
- }, "")
29
- .slice(0, -1);
30
-
31
- export const test: ExportTestDef = {
32
- name: "color to string",
33
- abstractColor: colorString,
34
- expectedColor: `000000 0000ff a52a2a 00ffff a9a9a9 808080 008000 d3d3d3 ff00ff ffa500 800080 ff0000 ffffff ffffff ffff00 add8e6`,
35
- };
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const colors = [
5
+ AbstractImage.black,
6
+ AbstractImage.blue,
7
+ AbstractImage.brown,
8
+ AbstractImage.cyan,
9
+ AbstractImage.darkGray,
10
+ AbstractImage.gray,
11
+ AbstractImage.green,
12
+ AbstractImage.lightGray,
13
+ AbstractImage.magenta,
14
+ AbstractImage.orange,
15
+ AbstractImage.purple,
16
+ AbstractImage.red,
17
+ AbstractImage.transparent,
18
+ AbstractImage.white,
19
+ AbstractImage.yellow,
20
+ AbstractImage.lightBlue,
21
+ ];
22
+
23
+ const colorString = colors
24
+ .map((color) => AbstractImage.toString6Hex(color))
25
+ .reduce((acc, color) => {
26
+ acc += `${color} `;
27
+ return acc;
28
+ }, "")
29
+ .slice(0, -1);
30
+
31
+ export const test: ExportTestDef = {
32
+ name: "color to string",
33
+ abstractColor: colorString,
34
+ expectedColor: `000000 0000ff a52a2a 00ffff a9a9a9 808080 008000 d3d3d3 ff00ff ffa500 800080 ff0000 ffffff ffffff ffff00 add8e6`,
35
+ };
@@ -1,8 +1,8 @@
1
- import { ExportTestDef } from "../export-test-def";
2
- import * as AbstractImage from "../../../../../src/index";
3
-
4
- export const test: ExportTestDef = {
5
- name: "color undefined 2",
6
- abstractColor: AbstractImage.fromString("#########"),
7
- expectedColor: undefined,
8
- };
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ export const test: ExportTestDef = {
5
+ name: "color undefined 2",
6
+ abstractColor: AbstractImage.fromString("#########"),
7
+ expectedColor: undefined,
8
+ };
@@ -1,8 +1,8 @@
1
- import { ExportTestDef } from "../export-test-def";
2
- import * as AbstractImage from "../../../../../src/index";
3
-
4
- export const test: ExportTestDef = {
5
- name: "color undefined",
6
- abstractColor: AbstractImage.fromString("#fff"),
7
- expectedColor: undefined,
8
- };
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ export const test: ExportTestDef = {
5
+ name: "color undefined",
6
+ abstractColor: AbstractImage.fromString("#fff"),
7
+ expectedColor: undefined,
8
+ };
@@ -1,25 +1,25 @@
1
- import * as Size from "./size";
2
- import * as Color from "./color";
3
- import * as Component from "./component";
4
- import * as Point from "./point";
5
-
6
- export interface AbstractImage {
7
- readonly topLeft: Point.Point;
8
- readonly size: Size.Size;
9
- readonly backgroundColor: Color.Color;
10
- readonly components: Array<Component.Component>;
11
- }
12
-
13
- export function createAbstractImage(
14
- topLeft: Point.Point,
15
- size: Size.Size,
16
- backgroundColor: Color.Color,
17
- components: Array<Component.Component>
18
- ): AbstractImage {
19
- return {
20
- topLeft: topLeft,
21
- size: size,
22
- backgroundColor: backgroundColor,
23
- components: components
24
- };
25
- }
1
+ import * as Size from "./size";
2
+ import * as Color from "./color";
3
+ import * as Component from "./component";
4
+ import * as Point from "./point";
5
+
6
+ export interface AbstractImage {
7
+ readonly topLeft: Point.Point;
8
+ readonly size: Size.Size;
9
+ readonly backgroundColor: Color.Color;
10
+ readonly components: Array<Component.Component>;
11
+ }
12
+
13
+ export function createAbstractImage(
14
+ topLeft: Point.Point,
15
+ size: Size.Size,
16
+ backgroundColor: Color.Color,
17
+ components: Array<Component.Component>
18
+ ): AbstractImage {
19
+ return {
20
+ topLeft: topLeft,
21
+ size: size,
22
+ backgroundColor: backgroundColor,
23
+ components: components
24
+ };
25
+ }
@@ -1,52 +1,52 @@
1
- export interface Color {
2
- readonly a: number;
3
- readonly r: number;
4
- readonly g: number;
5
- readonly b: number;
6
- }
7
-
8
- export function fromArgb(a: number, r: number, g: number, b: number): Color {
9
- return { a: a, r: r, g: g, b: b };
10
- }
11
-
12
- export function toString6Hex(color: Color): string {
13
- return (
14
- ("00" + color.r.toString(16)).substr(-2) +
15
- ("00" + color.g.toString(16)).substr(-2) +
16
- ("00" + color.b.toString(16)).substr(-2)
17
- );
18
- }
19
-
20
- export function fromString(s: string): Color | undefined {
21
- if (s === null || s === undefined || s.length !== 9 || s[0] !== "#") {
22
- return undefined;
23
- }
24
-
25
- const a: number = parseInt(s.substring(1, 1 + 2), 16);
26
- const r: number = parseInt(s.substring(3, 3 + 2), 16);
27
- const g: number = parseInt(s.substring(5, 5 + 2), 16);
28
- const b: number = parseInt(s.substring(7, 7 + 2), 16);
29
-
30
- if (isNaN(a) || isNaN(r) || isNaN(g) || isNaN(b)) {
31
- return undefined;
32
- }
33
-
34
- return fromArgb(a, r, g, b);
35
- }
36
-
37
- export const black: Color = fromArgb(0xff, 0, 0, 0);
38
- export const blue: Color = fromArgb(0xff, 0x00, 0x00, 0xff);
39
- export const brown: Color = fromArgb(0xff, 0xa5, 0x2a, 0x2a);
40
- export const cyan: Color = fromArgb(0xff, 0x00, 0xff, 0xff);
41
- export const darkGray: Color = fromArgb(0xff, 0xa9, 0xa9, 0xa9);
42
- export const gray: Color = fromArgb(0xff, 0x80, 0x80, 0x80);
43
- export const green: Color = fromArgb(0xff, 0x00, 0x80, 0x00);
44
- export const lightGray: Color = fromArgb(0xff, 0xd3, 0xd3, 0xd3);
45
- export const magenta: Color = fromArgb(0xff, 0xff, 0x00, 0xff);
46
- export const orange: Color = fromArgb(0xff, 0xff, 0xa5, 0x00);
47
- export const purple: Color = fromArgb(0xff, 0x80, 0x00, 0x80);
48
- export const red: Color = fromArgb(0xff, 0xff, 0x00, 0x00);
49
- export const transparent: Color = fromArgb(0x00, 0xff, 0xff, 0xff);
50
- export const white: Color = fromArgb(0xff, 0xff, 0xff, 0xff);
51
- export const yellow: Color = fromArgb(0xff, 0xff, 0xff, 0x00);
52
- export const lightBlue: Color = fromArgb(0xff, 0xad, 0xd8, 0xe6);
1
+ export interface Color {
2
+ readonly a: number;
3
+ readonly r: number;
4
+ readonly g: number;
5
+ readonly b: number;
6
+ }
7
+
8
+ export function fromArgb(a: number, r: number, g: number, b: number): Color {
9
+ return { a: a, r: r, g: g, b: b };
10
+ }
11
+
12
+ export function toString6Hex(color: Color): string {
13
+ return (
14
+ ("00" + color.r.toString(16)).substr(-2) +
15
+ ("00" + color.g.toString(16)).substr(-2) +
16
+ ("00" + color.b.toString(16)).substr(-2)
17
+ );
18
+ }
19
+
20
+ export function fromString(s: string): Color | undefined {
21
+ if (s === null || s === undefined || s.length !== 9 || s[0] !== "#") {
22
+ return undefined;
23
+ }
24
+
25
+ const a: number = parseInt(s.substring(1, 1 + 2), 16);
26
+ const r: number = parseInt(s.substring(3, 3 + 2), 16);
27
+ const g: number = parseInt(s.substring(5, 5 + 2), 16);
28
+ const b: number = parseInt(s.substring(7, 7 + 2), 16);
29
+
30
+ if (isNaN(a) || isNaN(r) || isNaN(g) || isNaN(b)) {
31
+ return undefined;
32
+ }
33
+
34
+ return fromArgb(a, r, g, b);
35
+ }
36
+
37
+ export const black: Color = fromArgb(0xff, 0, 0, 0);
38
+ export const blue: Color = fromArgb(0xff, 0x00, 0x00, 0xff);
39
+ export const brown: Color = fromArgb(0xff, 0xa5, 0x2a, 0x2a);
40
+ export const cyan: Color = fromArgb(0xff, 0x00, 0xff, 0xff);
41
+ export const darkGray: Color = fromArgb(0xff, 0xa9, 0xa9, 0xa9);
42
+ export const gray: Color = fromArgb(0xff, 0x80, 0x80, 0x80);
43
+ export const green: Color = fromArgb(0xff, 0x00, 0x80, 0x00);
44
+ export const lightGray: Color = fromArgb(0xff, 0xd3, 0xd3, 0xd3);
45
+ export const magenta: Color = fromArgb(0xff, 0xff, 0x00, 0xff);
46
+ export const orange: Color = fromArgb(0xff, 0xff, 0xa5, 0x00);
47
+ export const purple: Color = fromArgb(0xff, 0x80, 0x00, 0x80);
48
+ export const red: Color = fromArgb(0xff, 0xff, 0x00, 0x00);
49
+ export const transparent: Color = fromArgb(0x00, 0xff, 0xff, 0xff);
50
+ export const white: Color = fromArgb(0xff, 0xff, 0xff, 0xff);
51
+ export const yellow: Color = fromArgb(0xff, 0xff, 0xff, 0x00);
52
+ export const lightBlue: Color = fromArgb(0xff, 0xad, 0xd8, 0xe6);