@wcardinal/wcardinal-ui 0.404.0 → 0.406.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 (316) hide show
  1. package/dist/types/wcardinal/ui/d-base-background-snippet.d.ts +2 -1
  2. package/dist/types/wcardinal/ui/d-base-border-snippet.d.ts +2 -1
  3. package/dist/types/wcardinal/ui/d-base-outline-snippet.d.ts +2 -1
  4. package/dist/types/wcardinal/ui/d-button-color.d.ts +0 -1
  5. package/dist/types/wcardinal/ui/d-dialog.d.ts +1 -1
  6. package/dist/types/wcardinal/ui/d-dynamic-text-style.d.ts +17 -11
  7. package/dist/types/wcardinal/ui/d-dynamic-text.d.ts +3 -2
  8. package/dist/types/wcardinal/ui/d-image-base.d.ts +1 -4
  9. package/dist/types/wcardinal/ui/d-image-piece-align.d.ts +4 -4
  10. package/dist/types/wcardinal/ui/d-image-piece-container-impl.d.ts +14 -1
  11. package/dist/types/wcardinal/ui/d-image-piece-container.d.ts +11 -0
  12. package/dist/types/wcardinal/ui/d-image-piece-layouter-part-container.d.ts +2 -2
  13. package/dist/types/wcardinal/ui/d-image-piece-layouter.d.ts +2 -2
  14. package/dist/types/wcardinal/ui/d-input.d.ts +2 -1
  15. package/dist/types/wcardinal/ui/d-menu-item-text.d.ts +3 -2
  16. package/dist/types/wcardinal/ui/d-scroll-bar.d.ts +2 -1
  17. package/dist/types/wcardinal/ui/d-text-base.d.ts +15 -74
  18. package/dist/types/wcardinal/ui/d-text-piece-align-impl.d.ts +20 -0
  19. package/dist/types/wcardinal/ui/d-text-piece-align.d.ts +7 -0
  20. package/dist/types/wcardinal/ui/d-text-piece-impl.d.ts +63 -0
  21. package/dist/types/wcardinal/ui/d-text-piece-style-impl.d.ts +29 -0
  22. package/dist/types/wcardinal/ui/d-text-piece-style.d.ts +16 -0
  23. package/dist/types/wcardinal/ui/d-text-piece.d.ts +61 -0
  24. package/dist/types/wcardinal/ui/shape/e-shape-buffer.d.ts +0 -3
  25. package/dist/types/wcardinal/ui/shape/e-shape-image-like.d.ts +6 -0
  26. package/dist/types/wcardinal/ui/shape/e-shape-points-formatted.d.ts +2 -0
  27. package/dist/types/wcardinal/ui/shape/e-shape-points.d.ts +2 -0
  28. package/dist/types/wcardinal/ui/shape/e-shape-text.d.ts +3 -0
  29. package/dist/types/wcardinal/ui/shape/e-shape-uploaded.d.ts +5 -5
  30. package/dist/types/wcardinal/ui/shape/e-shape.d.ts +2 -2
  31. package/dist/types/wcardinal/ui/shape/index.d.ts +1 -0
  32. package/dist/types/wcardinal/ui/shape/variant/build-line.d.ts +1 -1
  33. package/dist/types/wcardinal/ui/shape/variant/builder-bar.d.ts +3 -3
  34. package/dist/types/wcardinal/ui/shape/variant/builder-base.d.ts +9 -7
  35. package/dist/types/wcardinal/ui/shape/variant/builder-circle.d.ts +3 -3
  36. package/dist/types/wcardinal/ui/shape/variant/builder-image-sdf.d.ts +3 -3
  37. package/dist/types/wcardinal/ui/shape/variant/builder-label.d.ts +10 -9
  38. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-any.d.ts +4 -1
  39. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-circles.d.ts +2 -2
  40. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.d.ts +3 -3
  41. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangles.d.ts +2 -2
  42. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.d.ts +3 -3
  43. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-triangles.d.ts +2 -2
  44. package/dist/types/wcardinal/ui/shape/variant/builder-line.d.ts +4 -3
  45. package/dist/types/wcardinal/ui/shape/variant/builder-marker-circle.d.ts +3 -3
  46. package/dist/types/wcardinal/ui/shape/variant/builder-marker-rectangle.d.ts +3 -3
  47. package/dist/types/wcardinal/ui/shape/variant/builder-marker-triangle.d.ts +3 -3
  48. package/dist/types/wcardinal/ui/shape/variant/builder-null.d.ts +10 -9
  49. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-pivoted.d.ts +3 -2
  50. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-rounded.d.ts +3 -3
  51. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle.d.ts +3 -2
  52. package/dist/types/wcardinal/ui/shape/variant/builder-semicircle.d.ts +3 -3
  53. package/dist/types/wcardinal/ui/shape/variant/builder-text.d.ts +9 -7
  54. package/dist/types/wcardinal/ui/shape/variant/builder-triangle-rounded.d.ts +3 -3
  55. package/dist/types/wcardinal/ui/shape/variant/builder-triangle.d.ts +3 -2
  56. package/dist/types/wcardinal/ui/shape/variant/builder.d.ts +5 -2
  57. package/dist/types/wcardinal/ui/shape/variant/create-line-of-any-uploaded.d.ts +2 -2
  58. package/dist/types/wcardinal/ui/shape/variant/e-shape-bar-points.d.ts +1 -0
  59. package/dist/types/wcardinal/ui/shape/variant/e-shape-base.d.ts +4 -6
  60. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-points.d.ts +1 -0
  61. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-viewer.d.ts +6 -2
  62. package/dist/types/wcardinal/ui/shape/variant/e-shape-group.d.ts +6 -2
  63. package/dist/types/wcardinal/ui/shape/variant/e-shape-image-sdf.d.ts +2 -1
  64. package/dist/types/wcardinal/ui/shape/variant/e-shape-image.d.ts +2 -1
  65. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-any-points-impl.d.ts +3 -0
  66. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-points.d.ts +3 -0
  67. package/dist/types/wcardinal/ui/shape/variant/e-shape-primitive.d.ts +7 -3
  68. package/dist/types/wcardinal/ui/shape/variant/e-shape-text-impl.d.ts +5 -0
  69. package/dist/types/wcardinal/ui/shape/variant/to-image-element.d.ts +2 -1
  70. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input.d.ts +1 -0
  71. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-last.d.ts +5 -4
  72. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-next.d.ts +5 -4
  73. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-previous.d.ts +5 -4
  74. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-top.d.ts +5 -4
  75. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-pagination-dots.d.ts +5 -4
  76. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input.d.ts +1 -0
  77. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-last.d.ts +5 -4
  78. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-next.d.ts +5 -4
  79. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-previous.d.ts +5 -4
  80. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-button-top.d.ts +5 -4
  81. package/dist/types/wcardinal/ui/theme/white/d-theme-white-pagination-dots.d.ts +5 -4
  82. package/dist/types/wcardinal/ui/util/dynamic-atlas-item-image.d.ts +2 -2
  83. package/dist/types/wcardinal/ui/util/dynamic-sdf-font-generator.d.ts +1 -1
  84. package/dist/wcardinal/ui/d-base-background-snippet.js.map +1 -1
  85. package/dist/wcardinal/ui/d-base-border-snippet.js.map +1 -1
  86. package/dist/wcardinal/ui/d-base-outline-snippet.js.map +1 -1
  87. package/dist/wcardinal/ui/d-button-color-gradient.js +10 -13
  88. package/dist/wcardinal/ui/d-button-color-gradient.js.map +1 -1
  89. package/dist/wcardinal/ui/d-button-color.js +20 -23
  90. package/dist/wcardinal/ui/d-button-color.js.map +1 -1
  91. package/dist/wcardinal/ui/d-button-date.js +4 -4
  92. package/dist/wcardinal/ui/d-button-date.js.map +1 -1
  93. package/dist/wcardinal/ui/d-button-datetime.js +4 -4
  94. package/dist/wcardinal/ui/d-button-datetime.js.map +1 -1
  95. package/dist/wcardinal/ui/d-button-select.js +2 -2
  96. package/dist/wcardinal/ui/d-button-select.js.map +1 -1
  97. package/dist/wcardinal/ui/d-button-time.js +4 -4
  98. package/dist/wcardinal/ui/d-button-time.js.map +1 -1
  99. package/dist/wcardinal/ui/d-dialog-processing.js +1 -1
  100. package/dist/wcardinal/ui/d-dialog-processing.js.map +1 -1
  101. package/dist/wcardinal/ui/d-dialog.js.map +1 -1
  102. package/dist/wcardinal/ui/d-dynamic-text-style.js +39 -65
  103. package/dist/wcardinal/ui/d-dynamic-text-style.js.map +1 -1
  104. package/dist/wcardinal/ui/d-dynamic-text.js +11 -8
  105. package/dist/wcardinal/ui/d-dynamic-text.js.map +1 -1
  106. package/dist/wcardinal/ui/d-image-base.js +6 -18
  107. package/dist/wcardinal/ui/d-image-base.js.map +1 -1
  108. package/dist/wcardinal/ui/d-image-piece-align.js.map +1 -1
  109. package/dist/wcardinal/ui/d-image-piece-container-impl.js +49 -1
  110. package/dist/wcardinal/ui/d-image-piece-container-impl.js.map +1 -1
  111. package/dist/wcardinal/ui/d-image-piece-container.js.map +1 -1
  112. package/dist/wcardinal/ui/d-image-piece-layouter-part-container.js.map +1 -1
  113. package/dist/wcardinal/ui/d-image-piece-layouter.js.map +1 -1
  114. package/dist/wcardinal/ui/d-indicator-processing.js +1 -1
  115. package/dist/wcardinal/ui/d-indicator-processing.js.map +1 -1
  116. package/dist/wcardinal/ui/d-input.js +11 -7
  117. package/dist/wcardinal/ui/d-input.js.map +1 -1
  118. package/dist/wcardinal/ui/d-menu-item-text.js +12 -6
  119. package/dist/wcardinal/ui/d-menu-item-text.js.map +1 -1
  120. package/dist/wcardinal/ui/d-scroll-bar.js.map +1 -1
  121. package/dist/wcardinal/ui/d-table-body-cell-date.js +7 -10
  122. package/dist/wcardinal/ui/d-table-body-cell-date.js.map +1 -1
  123. package/dist/wcardinal/ui/d-table-body-cell-datetime.js +7 -10
  124. package/dist/wcardinal/ui/d-table-body-cell-datetime.js.map +1 -1
  125. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js +4 -10
  126. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  127. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js +4 -10
  128. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  129. package/dist/wcardinal/ui/d-table-body-cell-time.js +7 -10
  130. package/dist/wcardinal/ui/d-table-body-cell-time.js.map +1 -1
  131. package/dist/wcardinal/ui/d-text-base.js +55 -247
  132. package/dist/wcardinal/ui/d-text-base.js.map +1 -1
  133. package/dist/wcardinal/ui/d-text-piece-align-impl.js +69 -0
  134. package/dist/wcardinal/ui/d-text-piece-align-impl.js.map +1 -0
  135. package/dist/wcardinal/ui/d-text-piece-align.js +2 -0
  136. package/dist/wcardinal/ui/d-text-piece-align.js.map +1 -0
  137. package/dist/wcardinal/ui/d-text-piece-impl.js +299 -0
  138. package/dist/wcardinal/ui/d-text-piece-impl.js.map +1 -0
  139. package/dist/wcardinal/ui/d-text-piece-style-impl.js +146 -0
  140. package/dist/wcardinal/ui/d-text-piece-style-impl.js.map +1 -0
  141. package/dist/wcardinal/ui/d-text-piece-style.js +2 -0
  142. package/dist/wcardinal/ui/d-text-piece-style.js.map +1 -0
  143. package/dist/wcardinal/ui/d-text-piece.js +2 -0
  144. package/dist/wcardinal/ui/d-text-piece.js.map +1 -0
  145. package/dist/wcardinal/ui/shape/e-shape-buffer.js +11 -27
  146. package/dist/wcardinal/ui/shape/e-shape-buffer.js.map +1 -1
  147. package/dist/wcardinal/ui/shape/e-shape-container.js +1 -1
  148. package/dist/wcardinal/ui/shape/e-shape-container.js.map +1 -1
  149. package/dist/wcardinal/ui/shape/e-shape-image-like.js +2 -0
  150. package/dist/wcardinal/ui/shape/e-shape-image-like.js.map +1 -0
  151. package/dist/wcardinal/ui/shape/e-shape-points-formatted.js.map +1 -1
  152. package/dist/wcardinal/ui/shape/e-shape-points.js.map +1 -1
  153. package/dist/wcardinal/ui/shape/e-shape-renderer.js +7 -13
  154. package/dist/wcardinal/ui/shape/e-shape-renderer.js.map +1 -1
  155. package/dist/wcardinal/ui/shape/e-shape-text.js.map +1 -1
  156. package/dist/wcardinal/ui/shape/e-shape-uploaded.js +22 -8
  157. package/dist/wcardinal/ui/shape/e-shape-uploaded.js.map +1 -1
  158. package/dist/wcardinal/ui/shape/e-shape.js.map +1 -1
  159. package/dist/wcardinal/ui/shape/index.js +1 -0
  160. package/dist/wcardinal/ui/shape/index.js.map +1 -1
  161. package/dist/wcardinal/ui/shape/variant/build-line-of-any.js +1 -1
  162. package/dist/wcardinal/ui/shape/variant/build-line-of-any.js.map +1 -1
  163. package/dist/wcardinal/ui/shape/variant/build-line.js +6 -5
  164. package/dist/wcardinal/ui/shape/variant/build-line.js.map +1 -1
  165. package/dist/wcardinal/ui/shape/variant/build-text.js +1 -1
  166. package/dist/wcardinal/ui/shape/variant/build-text.js.map +1 -1
  167. package/dist/wcardinal/ui/shape/variant/builder-bar.js +6 -4
  168. package/dist/wcardinal/ui/shape/variant/builder-bar.js.map +1 -1
  169. package/dist/wcardinal/ui/shape/variant/builder-base.js +22 -1
  170. package/dist/wcardinal/ui/shape/variant/builder-base.js.map +1 -1
  171. package/dist/wcardinal/ui/shape/variant/builder-circle.js +6 -4
  172. package/dist/wcardinal/ui/shape/variant/builder-circle.js.map +1 -1
  173. package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js +6 -4
  174. package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js.map +1 -1
  175. package/dist/wcardinal/ui/shape/variant/builder-label.js +13 -6
  176. package/dist/wcardinal/ui/shape/variant/builder-label.js.map +1 -1
  177. package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js +36 -5
  178. package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js.map +1 -1
  179. package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js +4 -2
  180. package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js.map +1 -1
  181. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js +6 -4
  182. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js.map +1 -1
  183. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js +4 -2
  184. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js.map +1 -1
  185. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js +6 -4
  186. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js.map +1 -1
  187. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js +4 -2
  188. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js.map +1 -1
  189. package/dist/wcardinal/ui/shape/variant/builder-line.js +34 -5
  190. package/dist/wcardinal/ui/shape/variant/builder-line.js.map +1 -1
  191. package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js +6 -4
  192. package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js.map +1 -1
  193. package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js +6 -4
  194. package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js.map +1 -1
  195. package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js +6 -4
  196. package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js.map +1 -1
  197. package/dist/wcardinal/ui/shape/variant/builder-null.js +11 -4
  198. package/dist/wcardinal/ui/shape/variant/builder-null.js.map +1 -1
  199. package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js +7 -5
  200. package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js.map +1 -1
  201. package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js +7 -5
  202. package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js.map +1 -1
  203. package/dist/wcardinal/ui/shape/variant/builder-rectangle.js +7 -5
  204. package/dist/wcardinal/ui/shape/variant/builder-rectangle.js.map +1 -1
  205. package/dist/wcardinal/ui/shape/variant/builder-semicircle.js +6 -4
  206. package/dist/wcardinal/ui/shape/variant/builder-semicircle.js.map +1 -1
  207. package/dist/wcardinal/ui/shape/variant/builder-text.js +36 -4
  208. package/dist/wcardinal/ui/shape/variant/builder-text.js.map +1 -1
  209. package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js +7 -5
  210. package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js.map +1 -1
  211. package/dist/wcardinal/ui/shape/variant/builder-triangle.js +7 -5
  212. package/dist/wcardinal/ui/shape/variant/builder-triangle.js.map +1 -1
  213. package/dist/wcardinal/ui/shape/variant/builder.js.map +1 -1
  214. package/dist/wcardinal/ui/shape/variant/create-bar-uploaded.js +2 -2
  215. package/dist/wcardinal/ui/shape/variant/create-bar-uploaded.js.map +1 -1
  216. package/dist/wcardinal/ui/shape/variant/create-circle-uploaded.js +2 -2
  217. package/dist/wcardinal/ui/shape/variant/create-circle-uploaded.js.map +1 -1
  218. package/dist/wcardinal/ui/shape/variant/create-group-uploaded.js +1 -1
  219. package/dist/wcardinal/ui/shape/variant/create-group-uploaded.js.map +1 -1
  220. package/dist/wcardinal/ui/shape/variant/create-image-sdf-uploaded.js +2 -2
  221. package/dist/wcardinal/ui/shape/variant/create-image-sdf-uploaded.js.map +1 -1
  222. package/dist/wcardinal/ui/shape/variant/create-image-sdf.js +4 -4
  223. package/dist/wcardinal/ui/shape/variant/create-image-sdf.js.map +1 -1
  224. package/dist/wcardinal/ui/shape/variant/create-image.js +2 -2
  225. package/dist/wcardinal/ui/shape/variant/create-image.js.map +1 -1
  226. package/dist/wcardinal/ui/shape/variant/create-label-uploaded.js +2 -2
  227. package/dist/wcardinal/ui/shape/variant/create-label-uploaded.js.map +1 -1
  228. package/dist/wcardinal/ui/shape/variant/create-line-of-any-uploaded.js +4 -4
  229. package/dist/wcardinal/ui/shape/variant/create-line-of-any-uploaded.js.map +1 -1
  230. package/dist/wcardinal/ui/shape/variant/create-line-uploaded.js +16 -16
  231. package/dist/wcardinal/ui/shape/variant/create-line-uploaded.js.map +1 -1
  232. package/dist/wcardinal/ui/shape/variant/create-null-uploaded.js +1 -1
  233. package/dist/wcardinal/ui/shape/variant/create-null-uploaded.js.map +1 -1
  234. package/dist/wcardinal/ui/shape/variant/create-rectangle-pivoted-uploaded.js +2 -2
  235. package/dist/wcardinal/ui/shape/variant/create-rectangle-pivoted-uploaded.js.map +1 -1
  236. package/dist/wcardinal/ui/shape/variant/create-rectangle-rounded-uploaded.js +2 -2
  237. package/dist/wcardinal/ui/shape/variant/create-rectangle-rounded-uploaded.js.map +1 -1
  238. package/dist/wcardinal/ui/shape/variant/create-rectangle-uploaded.js +2 -2
  239. package/dist/wcardinal/ui/shape/variant/create-rectangle-uploaded.js.map +1 -1
  240. package/dist/wcardinal/ui/shape/variant/create-semicircle-uploaded.js +2 -2
  241. package/dist/wcardinal/ui/shape/variant/create-semicircle-uploaded.js.map +1 -1
  242. package/dist/wcardinal/ui/shape/variant/create-triangle-rounded-uploaded.js +2 -2
  243. package/dist/wcardinal/ui/shape/variant/create-triangle-rounded-uploaded.js.map +1 -1
  244. package/dist/wcardinal/ui/shape/variant/create-triangle-uploaded.js +2 -2
  245. package/dist/wcardinal/ui/shape/variant/create-triangle-uploaded.js.map +1 -1
  246. package/dist/wcardinal/ui/shape/variant/e-shape-bar-points.js +7 -0
  247. package/dist/wcardinal/ui/shape/variant/e-shape-bar-points.js.map +1 -1
  248. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +0 -25
  249. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  250. package/dist/wcardinal/ui/shape/variant/e-shape-group-points.js +14 -0
  251. package/dist/wcardinal/ui/shape/variant/e-shape-group-points.js.map +1 -1
  252. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js +6 -0
  253. package/dist/wcardinal/ui/shape/variant/e-shape-group-viewer.js.map +1 -1
  254. package/dist/wcardinal/ui/shape/variant/e-shape-group.js +6 -0
  255. package/dist/wcardinal/ui/shape/variant/e-shape-group.js.map +1 -1
  256. package/dist/wcardinal/ui/shape/variant/e-shape-image-sdf.js.map +1 -1
  257. package/dist/wcardinal/ui/shape/variant/e-shape-image.js.map +1 -1
  258. package/dist/wcardinal/ui/shape/variant/e-shape-line-of-any-points-impl.js +15 -2
  259. package/dist/wcardinal/ui/shape/variant/e-shape-line-of-any-points-impl.js.map +1 -1
  260. package/dist/wcardinal/ui/shape/variant/e-shape-line-points.js +19 -3
  261. package/dist/wcardinal/ui/shape/variant/e-shape-line-points.js.map +1 -1
  262. package/dist/wcardinal/ui/shape/variant/e-shape-primitive.js +15 -2
  263. package/dist/wcardinal/ui/shape/variant/e-shape-primitive.js.map +1 -1
  264. package/dist/wcardinal/ui/shape/variant/e-shape-text-impl.js +57 -24
  265. package/dist/wcardinal/ui/shape/variant/e-shape-text-impl.js.map +1 -1
  266. package/dist/wcardinal/ui/shape/variant/to-image-element.js +9 -3
  267. package/dist/wcardinal/ui/shape/variant/to-image-element.js.map +1 -1
  268. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js +6 -0
  269. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js.map +1 -1
  270. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-last.js.map +1 -1
  271. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-next.js.map +1 -1
  272. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-previous.js.map +1 -1
  273. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-button-top.js.map +1 -1
  274. package/dist/wcardinal/ui/theme/dark/d-theme-dark-pagination-dots.js.map +1 -1
  275. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select-multiple.js +9 -9
  276. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select-multiple.js.map +1 -1
  277. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select.js +7 -7
  278. package/dist/wcardinal/ui/theme/dark/d-theme-dark-select.js.map +1 -1
  279. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js +6 -0
  280. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js.map +1 -1
  281. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-last.js.map +1 -1
  282. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-next.js.map +1 -1
  283. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-previous.js.map +1 -1
  284. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-button-top.js.map +1 -1
  285. package/dist/wcardinal/ui/theme/white/d-theme-white-pagination-dots.js.map +1 -1
  286. package/dist/wcardinal/ui/theme/white/d-theme-white-select-multiple.js +9 -9
  287. package/dist/wcardinal/ui/theme/white/d-theme-white-select-multiple.js.map +1 -1
  288. package/dist/wcardinal/ui/theme/white/d-theme-white-select.js +7 -7
  289. package/dist/wcardinal/ui/theme/white/d-theme-white-select.js.map +1 -1
  290. package/dist/wcardinal/ui/util/dynamic-atlas-item-image.js +18 -9
  291. package/dist/wcardinal/ui/util/dynamic-atlas-item-image.js.map +1 -1
  292. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js +1 -1
  293. package/dist/wcardinal/ui/util/dynamic-sdf-font-atlas.js.map +1 -1
  294. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js +1 -3
  295. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js.map +1 -1
  296. package/dist/wcardinal-ui-theme-dark-en-us.js +23 -17
  297. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  298. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  299. package/dist/wcardinal-ui-theme-dark-ja-jp.js +23 -17
  300. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  301. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  302. package/dist/wcardinal-ui-theme-dark.js +23 -17
  303. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  304. package/dist/wcardinal-ui-theme-white-en-us.js +23 -17
  305. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  306. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  307. package/dist/wcardinal-ui-theme-white-ja-jp.js +23 -17
  308. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  309. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  310. package/dist/wcardinal-ui-theme-white.js +23 -17
  311. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  312. package/dist/wcardinal-ui.cjs.js +1550 -984
  313. package/dist/wcardinal-ui.js +1505 -951
  314. package/dist/wcardinal-ui.min.js +2 -2
  315. package/dist/wcardinal-ui.min.js.map +1 -1
  316. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-group-viewer.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-viewer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeGroupFillViewer } from \"./e-shape-group-fill-viewer\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeViewer } from \"./e-shape-group-size-viewer\";\nimport { EShapeGroupStrokeViewer } from \"./e-shape-group-stroke-viewer\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeGroupSizeEditor } from \"./e-shape-group-size-editor\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\n\nexport abstract class EShapeGroupViewer extends EShapeBase {\n\tsize: EShapeGroupSize;\n\tfill: EShapeFill;\n\tstroke: EShapeStroke;\n\t/** @deprecated in favor of {@link data} */\n\ttag: EShapeData;\n\tdata: EShapeData;\n\ttext: EShapeText;\n\n\tprotected _mode: EShapeResourceManagerDeserializationMode;\n\tprotected _depth: number;\n\n\tconstructor(mode: EShapeResourceManagerDeserializationMode, depth: number, type: EShapeType) {\n\t\tsuper(type);\n\t\tthis._mode = mode;\n\t\tthis._depth = depth;\n\t\tconst data = this.newData();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.size = this.newGroupSize(mode, depth);\n\t\tthis.fill = this.newGroupFill();\n\t\tthis.stroke = this.newGroupStroke();\n\t\tthis.text = this.newGroupText();\n\t}\n\n\tget mode(): EShapeResourceManagerDeserializationMode {\n\t\treturn this._mode;\n\t}\n\n\tget depth(): number {\n\t\treturn this._depth;\n\t}\n\n\tprotected newGroupSize(\n\t\tmode: EShapeResourceManagerDeserializationMode,\n\t\tdepth: number\n\t): EShapeGroupSize {\n\t\tconst sizeX = EShapeDefaults.SIZE_X;\n\t\tconst sizeY = EShapeDefaults.SIZE_Y;\n\t\tif (mode !== EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\treturn new EShapeGroupSizeEditor(this, sizeX, sizeY, this.isGroupSizeFittable());\n\t\t} else {\n\t\t\treturn new EShapeGroupSizeViewer(this, sizeX, sizeY, sizeX, sizeY);\n\t\t}\n\t}\n\n\tprotected isGroupSizeFittable(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected newData(): EShapeData {\n\t\treturn new EShapeDataImpl();\n\t}\n\n\tprotected newGroupFill(): EShapeFill {\n\t\treturn new EShapeGroupFillViewer();\n\t}\n\n\tprotected newGroupStroke(): EShapeStroke {\n\t\treturn new EShapeGroupStrokeViewer();\n\t}\n\n\tprotected newGroupText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\tconst size = this.size;\n\t\tif (size instanceof EShapeGroupSizeViewer) {\n\t\t\treturn size.base;\n\t\t} else {\n\t\t\treturn size;\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\tsuper.onChildTransformChange();\n\t\tthis.size.fit();\n\t}\n\n\tget corner(): EShapeCorner {\n\t\treturn EShapeCorner.NONE;\n\t}\n\n\tset corner(corner: EShapeCorner) {\n\t\t// DO NOTHING\n\t}\n\n\tget gradient(): EShapeGradientLike | undefined {\n\t\treturn undefined;\n\t}\n\n\tset gradient(gradient: EShapeGradientLike | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tget radius(): number {\n\t\treturn 0;\n\t}\n\n\tset radius(radius: number) {\n\t\t// DO NOTHING\n\t}\n\n\tget image(): HTMLImageElement | undefined {\n\t\treturn undefined;\n\t}\n\n\tset image(image: HTMLImageElement | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\treturn undefined;\n\t}\n\n\tset points(points: EShapePoints | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tabstract clone(): EShapeGroupViewer;\n\n\tcontainsAbs(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number\n\t): boolean {\n\t\treturn false;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-group-viewer.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-viewer.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAQrD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,wCAAwC,EAAE,MAAM,kDAAkD,CAAC;AAI5G;IAAgD,qCAAU;IAYzD,2BAAY,IAA8C,EAAE,KAAa,EAAE,IAAgB;QAA3F,YACC,kBAAM,IAAI,CAAC,SAUX;QATA,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAM,IAAI,GAAG,KAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,KAAI,CAAC,GAAG,GAAG,IAAI,CAAC;QAChB,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3C,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,EAAE,CAAC;QAChC,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,cAAc,EAAE,CAAC;QACpC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,EAAE,CAAC;;IACjC,CAAC;IAED,sBAAI,mCAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;;;OAAA;IAED,sBAAI,oCAAK;aAAT;YACC,OAAO,IAAI,CAAC,MAAM,CAAC;QACpB,CAAC;;;OAAA;IAES,wCAAY,GAAtB,UACC,IAA8C,EAC9C,KAAa;QAEb,IAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,IAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,IAAI,IAAI,KAAK,wCAAwC,CAAC,MAAM,EAAE;YAC7D,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;SACjF;aAAM;YACN,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACnE;IACF,CAAC;IAES,+CAAmB,GAA7B;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,mCAAO,GAAjB;QACC,OAAO,IAAI,cAAc,EAAE,CAAC;IAC7B,CAAC;IAES,wCAAY,GAAtB;QACC,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACpC,CAAC;IAES,0CAAc,GAAxB;QACC,OAAO,IAAI,uBAAuB,EAAE,CAAC;IACtC,CAAC;IAES,wCAAY,GAAtB;QACC,OAAO,IAAI,cAAc,CACxB,IAAI,EACJ,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,SAAS,CACxB,CAAC;IACH,CAAC;IAES,yCAAa,GAAvB;QACC,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,IAAI,YAAY,qBAAqB,EAAE;YAC1C,OAAO,IAAI,CAAC,IAAI,CAAC;SACjB;aAAM;YACN,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;IAED,kDAAsB,GAAtB;QACC,iBAAM,sBAAsB,WAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,sBAAI,qCAAM;aAAV;YACC,OAAO,YAAY,CAAC,IAAI,CAAC;QAC1B,CAAC;aAED,UAAW,MAAoB;YAC9B,aAAa;QACd,CAAC;;;OAJA;IAMD,sBAAI,uCAAQ;aAAZ;YACC,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAa,QAAwC;YACpD,aAAa;QACd,CAAC;;;OAJA;IAMQ,6CAAiB,GAA1B,UAA2B,OAA2C;QACrE,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;IAED,sBAAI,qCAAM;aAAV;YACC,OAAO,CAAC,CAAC;QACV,CAAC;aAED,UAAW,MAAc;YACxB,aAAa;QACd,CAAC;;;OAJA;IAMD,sBAAI,oCAAK;aAAT;YACC,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAU,KAAkC;YAC3C,aAAa;QACd,CAAC;;;OAJA;IAMQ,0CAAc,GAAvB,UAAwB,OAA2C;QAClE,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;IAED,sBAAI,qCAAM;aAAV;YACC,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAW,MAAgC;YAC1C,aAAa;QACd,CAAC;;;OAJA;IAQD,uCAAW,GAAX,UACC,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU;QAEV,OAAO,KAAK,CAAC;IACd,CAAC;IACF,wBAAC;AAAD,CAAC,AApJD,CAAgD,UAAU,GAoJzD","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeGroupFillViewer } from \"./e-shape-group-fill-viewer\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeViewer } from \"./e-shape-group-size-viewer\";\nimport { EShapeGroupStrokeViewer } from \"./e-shape-group-stroke-viewer\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeGroupSizeEditor } from \"./e-shape-group-size-editor\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\nimport { EShapeImageLike } from \"../e-shape-image-like\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\n\nexport abstract class EShapeGroupViewer extends EShapeBase {\n\tsize: EShapeGroupSize;\n\tfill: EShapeFill;\n\tstroke: EShapeStroke;\n\t/** @deprecated in favor of {@link data} */\n\ttag: EShapeData;\n\tdata: EShapeData;\n\ttext: EShapeText;\n\n\tprotected _mode: EShapeResourceManagerDeserializationMode;\n\tprotected _depth: number;\n\n\tconstructor(mode: EShapeResourceManagerDeserializationMode, depth: number, type: EShapeType) {\n\t\tsuper(type);\n\t\tthis._mode = mode;\n\t\tthis._depth = depth;\n\t\tconst data = this.newData();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.size = this.newGroupSize(mode, depth);\n\t\tthis.fill = this.newGroupFill();\n\t\tthis.stroke = this.newGroupStroke();\n\t\tthis.text = this.newGroupText();\n\t}\n\n\tget mode(): EShapeResourceManagerDeserializationMode {\n\t\treturn this._mode;\n\t}\n\n\tget depth(): number {\n\t\treturn this._depth;\n\t}\n\n\tprotected newGroupSize(\n\t\tmode: EShapeResourceManagerDeserializationMode,\n\t\tdepth: number\n\t): EShapeGroupSize {\n\t\tconst sizeX = EShapeDefaults.SIZE_X;\n\t\tconst sizeY = EShapeDefaults.SIZE_Y;\n\t\tif (mode !== EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\treturn new EShapeGroupSizeEditor(this, sizeX, sizeY, this.isGroupSizeFittable());\n\t\t} else {\n\t\t\treturn new EShapeGroupSizeViewer(this, sizeX, sizeY, sizeX, sizeY);\n\t\t}\n\t}\n\n\tprotected isGroupSizeFittable(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected newData(): EShapeData {\n\t\treturn new EShapeDataImpl();\n\t}\n\n\tprotected newGroupFill(): EShapeFill {\n\t\treturn new EShapeGroupFillViewer();\n\t}\n\n\tprotected newGroupStroke(): EShapeStroke {\n\t\treturn new EShapeGroupStrokeViewer();\n\t}\n\n\tprotected newGroupText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\tconst size = this.size;\n\t\tif (size instanceof EShapeGroupSizeViewer) {\n\t\t\treturn size.base;\n\t\t} else {\n\t\t\treturn size;\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\tsuper.onChildTransformChange();\n\t\tthis.size.fit();\n\t}\n\n\tget corner(): EShapeCorner {\n\t\treturn EShapeCorner.NONE;\n\t}\n\n\tset corner(corner: EShapeCorner) {\n\t\t// DO NOTHING\n\t}\n\n\tget gradient(): EShapeGradientLike | undefined {\n\t\treturn undefined;\n\t}\n\n\tset gradient(gradient: EShapeGradientLike | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\toverride serializeGradient(manager: EShapeResourceManagerSerialization): number {\n\t\treturn -1;\n\t}\n\n\tget radius(): number {\n\t\treturn 0;\n\t}\n\n\tset radius(radius: number) {\n\t\t// DO NOTHING\n\t}\n\n\tget image(): EShapeImageLike | undefined {\n\t\treturn undefined;\n\t}\n\n\tset image(image: EShapeImageLike | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\toverride serializeImage(manager: EShapeResourceManagerSerialization): number {\n\t\treturn -1;\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\treturn undefined;\n\t}\n\n\tset points(points: EShapePoints | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tabstract clone(): EShapeGroupViewer;\n\n\tcontainsAbs(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number\n\t): boolean {\n\t\treturn false;\n\t}\n}\n"]}
@@ -114,6 +114,9 @@ var EShapeGroup = /** @class */ (function (_super) {
114
114
  enumerable: false,
115
115
  configurable: true
116
116
  });
117
+ EShapeGroup.prototype.serializeGradient = function (manager) {
118
+ return -1;
119
+ };
117
120
  Object.defineProperty(EShapeGroup.prototype, "radius", {
118
121
  get: function () {
119
122
  var children = this.children;
@@ -151,6 +154,9 @@ var EShapeGroup = /** @class */ (function (_super) {
151
154
  enumerable: false,
152
155
  configurable: true
153
156
  });
157
+ EShapeGroup.prototype.serializeImage = function (manager) {
158
+ return -1;
159
+ };
154
160
  Object.defineProperty(EShapeGroup.prototype, "points", {
155
161
  get: function () {
156
162
  var children = this.children;
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-group.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAOrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,wCAAwC,EAAE,MAAM,kDAAkD,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;IAAiC,+BAAU;IAY1C,qBACC,IAA8C,EAC9C,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;QAFpC,YAIC,kBAAM,IAAI,CAAC,SAUX;QATA,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAM,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;QAClC,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,KAAI,CAAC,GAAG,GAAG,IAAI,CAAC;QAChB,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,EAAE,CAAC;QAChC,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,cAAc,EAAE,CAAC;QACpC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,EAAE,CAAC;QAChC,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,cAAc,EAAE,CAAC;;IACtC,CAAC;IAED,sBAAI,6BAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;;;OAAA;IAES,kCAAY,GAAtB,UAAuB,IAA8C;QACpE,IAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,IAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;QACpC,IAAI,IAAI,KAAK,wCAAwC,CAAC,MAAM,EAAE;YAC7D,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;SACjF;aAAM;YACN,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACnE;IACF,CAAC;IAES,yCAAmB,GAA7B;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAES,kCAAY,GAAtB;QACC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAES,oCAAc,GAAxB;QACC,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAES,kCAAY,GAAtB;QACC,OAAO,IAAI,cAAc,CACxB,IAAI,EACJ,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,SAAS,CACxB,CAAC;IACH,CAAC;IAES,oCAAc,GAAxB;QACC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAES,mCAAa,GAAvB;QACC,IAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,IAAI,YAAY,qBAAqB,EAAE;YAC1C,OAAO,IAAI,CAAC,IAAI,CAAC;SACjB;aAAM;YACN,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;IAED,4CAAsB,GAAtB;QACC,iBAAM,sBAAsB,WAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,sBAAI,+BAAM;aAAV;YACC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE;gBACxB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;aAC5C;YACD,OAAO,YAAY,CAAC,GAAG,CAAC;QACzB,CAAC;aAED,UAAW,MAAoB;YAC9B,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACtD,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;aAC5B;QACF,CAAC;;;OAPA;IASD,sBAAI,iCAAQ;aAAZ;YACC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC9C,IAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACtC,IAAI,QAAQ,IAAI,IAAI,EAAE;oBACrB,OAAO,QAAQ,CAAC;iBAChB;aACD;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAa,QAAwC;YACpD,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACtD,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;aAChC;QACF,CAAC;;;OAPA;IASD,sBAAI,+BAAM;aAAV;YACC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE;gBACxB,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;aAC5C;YACD,OAAO,GAAG,CAAC;QACZ,CAAC;aAED,UAAW,MAAc;YACxB,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACtD,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;aAC5B;QACF,CAAC;;;OAPA;IASD,sBAAI,8BAAK;aAAT;YACC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC9C,IAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChC,IAAI,KAAK,IAAI,IAAI,EAAE;oBAClB,OAAO,KAAK,CAAC;iBACb;aACD;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAU,KAAmC;YAC5C,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACtD,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;aAC1B;QACF,CAAC;;;OAPA;IASD,sBAAI,+BAAM;aAAV;YACC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC9C,IAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAClC,IAAI,MAAM,IAAI,IAAI,EAAE;oBACnB,OAAO,IAAI,CAAC,OAAO,CAAC;iBACpB;aACD;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;aAED,UAAW,MAAgC;YAC1C,aAAa;QACd,CAAC;;;OAJA;IAMD,2BAAK,GAAL;QACC,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACtD,IAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;YACtB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/E,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAChC,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC;IACf,CAAC;IAES,8BAAQ,GAAlB;QACC,IAAM,WAAW,GAAG,IAAI,CAAC,WAAiC,CAAC;QAC3D,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,iCAAW,GAAX,UACC,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU;QAEV,OAAO,KAAK,CAAC;IACd,CAAC;IACF,kBAAC;AAAD,CAAC,AAlMD,CAAiC,UAAU,GAkM1C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeGroupFillEditor } from \"./e-shape-group-fill-editor\";\nimport { EShapeGroupPoints } from \"./e-shape-group-points\";\nimport { EShapeGroupPropertyParent } from \"./e-shape-group-property-parent\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeEditor } from \"./e-shape-group-size-editor\";\nimport { EShapeGroupSizeViewer } from \"./e-shape-group-size-viewer\";\nimport { EShapeGroupStrokeEditor } from \"./e-shape-group-stroke-editor\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\nimport { EShapeConnectors } from \"../e-shape-connectors\";\n\nexport class EShapeGroup extends EShapeBase implements EShapeGroupPropertyParent {\n\tsize: EShapeGroupSize;\n\tfill: EShapeFill;\n\tstroke: EShapeStroke;\n\t/** @deprecated in favor of {@link data} */\n\ttag: EShapeData;\n\tdata: EShapeData;\n\ttext: EShapeText;\n\n\tprotected _mode: EShapeResourceManagerDeserializationMode;\n\tprotected _points?: EShapePoints;\n\n\tconstructor(\n\t\tmode: EShapeResourceManagerDeserializationMode,\n\t\ttype: EShapeType = EShapeType.GROUP\n\t) {\n\t\tsuper(type);\n\t\tthis._mode = mode;\n\t\tconst data = new EShapeDataImpl();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.size = this.newGroupSize(mode);\n\t\tthis.fill = this.newGroupFill();\n\t\tthis.stroke = this.newGroupStroke();\n\t\tthis.text = this.newGroupText();\n\t\tthis._points = this.newGroupPoints();\n\t}\n\n\tget mode(): EShapeResourceManagerDeserializationMode {\n\t\treturn this._mode;\n\t}\n\n\tprotected newGroupSize(mode: EShapeResourceManagerDeserializationMode): EShapeGroupSize {\n\t\tconst sizeX = EShapeDefaults.SIZE_X;\n\t\tconst sizeY = EShapeDefaults.SIZE_Y;\n\t\tif (mode !== EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\treturn new EShapeGroupSizeEditor(this, sizeX, sizeY, this.isGroupSizeFittable());\n\t\t} else {\n\t\t\treturn new EShapeGroupSizeViewer(this, sizeX, sizeY, sizeX, sizeY);\n\t\t}\n\t}\n\n\tprotected isGroupSizeFittable(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected newGroupFill(): EShapeFill {\n\t\treturn new EShapeGroupFillEditor(this);\n\t}\n\n\tprotected newGroupStroke(): EShapeStroke {\n\t\treturn new EShapeGroupStrokeEditor(this);\n\t}\n\n\tprotected newGroupText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tprotected newGroupPoints(): EShapePoints | undefined {\n\t\treturn new EShapeGroupPoints(this);\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\tconst size = this.size;\n\t\tif (size instanceof EShapeGroupSizeViewer) {\n\t\t\treturn size.base;\n\t\t} else {\n\t\t\treturn size;\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\tsuper.onChildTransformChange();\n\t\tthis.size.fit();\n\t}\n\n\tget corner(): EShapeCorner {\n\t\tconst children = this.children;\n\t\tif (0 < children.length) {\n\t\t\treturn children[children.length - 1].corner;\n\t\t}\n\t\treturn EShapeCorner.ALL;\n\t}\n\n\tset corner(corner: EShapeCorner) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].corner = corner;\n\t\t}\n\t}\n\n\tget gradient(): EShapeGradientLike | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst gradient = children[i].gradient;\n\t\t\tif (gradient != null) {\n\t\t\t\treturn gradient;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset gradient(gradient: EShapeGradientLike | undefined) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].gradient = gradient;\n\t\t}\n\t}\n\n\tget radius(): number {\n\t\tconst children = this.children;\n\t\tif (0 < children.length) {\n\t\t\treturn children[children.length - 1].radius;\n\t\t}\n\t\treturn 0.5;\n\t}\n\n\tset radius(radius: number) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].radius = radius;\n\t\t}\n\t}\n\n\tget image(): HTMLImageElement | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst image = children[i].image;\n\t\t\tif (image != null) {\n\t\t\t\treturn image;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset image(image: HTMLImageElement | undefined) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].image = image;\n\t\t}\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst points = children[i].points;\n\t\t\tif (points != null) {\n\t\t\t\treturn this._points;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset points(points: EShapePoints | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tclone(): EShapeGroup {\n\t\tconst result = this.newClone().copy(this);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst clone = children[i].clone();\n\t\t\tclone.parent = result;\n\t\t\tresult.children.push(clone);\n\t\t}\n\t\tEShapeConnectors.moveAll(children, result.children, children, result.children);\n\t\tresult.onChildTransformChange();\n\t\tresult.toDirty();\n\t\treturn result;\n\t}\n\n\tprotected newClone(): EShapeGroup {\n\t\tconst constructor = this.constructor as typeof EShapeGroup;\n\t\treturn new constructor(this._mode, this.type);\n\t}\n\n\tcontainsAbs(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number\n\t): boolean {\n\t\treturn false;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-group.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeGroupFillEditor } from \"./e-shape-group-fill-editor\";\nimport { EShapeGroupPoints } from \"./e-shape-group-points\";\nimport { EShapeGroupPropertyParent } from \"./e-shape-group-property-parent\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeEditor } from \"./e-shape-group-size-editor\";\nimport { EShapeGroupSizeViewer } from \"./e-shape-group-size-viewer\";\nimport { EShapeGroupStrokeEditor } from \"./e-shape-group-stroke-editor\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\nimport { EShapeConnectors } from \"../e-shape-connectors\";\nimport { EShapeImageLike } from \"../e-shape-image-like\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\n\nexport class EShapeGroup extends EShapeBase implements EShapeGroupPropertyParent {\n\tsize: EShapeGroupSize;\n\tfill: EShapeFill;\n\tstroke: EShapeStroke;\n\t/** @deprecated in favor of {@link data} */\n\ttag: EShapeData;\n\tdata: EShapeData;\n\ttext: EShapeText;\n\n\tprotected _mode: EShapeResourceManagerDeserializationMode;\n\tprotected _points?: EShapePoints;\n\n\tconstructor(\n\t\tmode: EShapeResourceManagerDeserializationMode,\n\t\ttype: EShapeType = EShapeType.GROUP\n\t) {\n\t\tsuper(type);\n\t\tthis._mode = mode;\n\t\tconst data = new EShapeDataImpl();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.size = this.newGroupSize(mode);\n\t\tthis.fill = this.newGroupFill();\n\t\tthis.stroke = this.newGroupStroke();\n\t\tthis.text = this.newGroupText();\n\t\tthis._points = this.newGroupPoints();\n\t}\n\n\tget mode(): EShapeResourceManagerDeserializationMode {\n\t\treturn this._mode;\n\t}\n\n\tprotected newGroupSize(mode: EShapeResourceManagerDeserializationMode): EShapeGroupSize {\n\t\tconst sizeX = EShapeDefaults.SIZE_X;\n\t\tconst sizeY = EShapeDefaults.SIZE_Y;\n\t\tif (mode !== EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\treturn new EShapeGroupSizeEditor(this, sizeX, sizeY, this.isGroupSizeFittable());\n\t\t} else {\n\t\t\treturn new EShapeGroupSizeViewer(this, sizeX, sizeY, sizeX, sizeY);\n\t\t}\n\t}\n\n\tprotected isGroupSizeFittable(): boolean {\n\t\treturn true;\n\t}\n\n\tprotected newGroupFill(): EShapeFill {\n\t\treturn new EShapeGroupFillEditor(this);\n\t}\n\n\tprotected newGroupStroke(): EShapeStroke {\n\t\treturn new EShapeGroupStrokeEditor(this);\n\t}\n\n\tprotected newGroupText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tprotected newGroupPoints(): EShapePoints | undefined {\n\t\treturn new EShapeGroupPoints(this);\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\tconst size = this.size;\n\t\tif (size instanceof EShapeGroupSizeViewer) {\n\t\t\treturn size.base;\n\t\t} else {\n\t\t\treturn size;\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\tsuper.onChildTransformChange();\n\t\tthis.size.fit();\n\t}\n\n\tget corner(): EShapeCorner {\n\t\tconst children = this.children;\n\t\tif (0 < children.length) {\n\t\t\treturn children[children.length - 1].corner;\n\t\t}\n\t\treturn EShapeCorner.ALL;\n\t}\n\n\tset corner(corner: EShapeCorner) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].corner = corner;\n\t\t}\n\t}\n\n\tget gradient(): EShapeGradientLike | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst gradient = children[i].gradient;\n\t\t\tif (gradient != null) {\n\t\t\t\treturn gradient;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset gradient(gradient: EShapeGradientLike | undefined) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].gradient = gradient;\n\t\t}\n\t}\n\n\toverride serializeGradient(manager: EShapeResourceManagerSerialization): number {\n\t\treturn -1;\n\t}\n\n\tget radius(): number {\n\t\tconst children = this.children;\n\t\tif (0 < children.length) {\n\t\t\treturn children[children.length - 1].radius;\n\t\t}\n\t\treturn 0.5;\n\t}\n\n\tset radius(radius: number) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].radius = radius;\n\t\t}\n\t}\n\n\tget image(): EShapeImageLike | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst image = children[i].image;\n\t\t\tif (image != null) {\n\t\t\t\treturn image;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset image(image: EShapeImageLike | undefined) {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].image = image;\n\t\t}\n\t}\n\n\toverride serializeImage(manager: EShapeResourceManagerSerialization): number {\n\t\treturn -1;\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst points = children[i].points;\n\t\t\tif (points != null) {\n\t\t\t\treturn this._points;\n\t\t\t}\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tset points(points: EShapePoints | undefined) {\n\t\t// DO NOTHING\n\t}\n\n\tclone(): EShapeGroup {\n\t\tconst result = this.newClone().copy(this);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst clone = children[i].clone();\n\t\t\tclone.parent = result;\n\t\t\tresult.children.push(clone);\n\t\t}\n\t\tEShapeConnectors.moveAll(children, result.children, children, result.children);\n\t\tresult.onChildTransformChange();\n\t\tresult.toDirty();\n\t\treturn result;\n\t}\n\n\tprotected newClone(): EShapeGroup {\n\t\tconst constructor = this.constructor as typeof EShapeGroup;\n\t\treturn new constructor(this._mode, this.type);\n\t}\n\n\tcontainsAbs(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number\n\t): boolean {\n\t\treturn false;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-image-sdf.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image-sdf.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;IAAoC,kCAAW;IAC9C,wBAAY,KAAwB,EAAE,IAAuC;QAAvC,qBAAA,EAAA,OAAmB,UAAU,CAAC,SAAS;eAC5E,kBAAM,KAAK,EAAE,IAAI,CAAC;IACnB,CAAC;IAED,8BAAK,GAAL;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IACF,qBAAC;AAAD,CAAC,AARD,CAAoC,WAAW,GAQ9C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeImage } from \"./e-shape-image\";\n\nexport class EShapeImageSdf extends EShapeImage {\n\tconstructor(image?: HTMLImageElement, type: EShapeType = EShapeType.IMAGE_SDF) {\n\t\tsuper(image, type);\n\t}\n\n\tclone(): EShapeImageSdf {\n\t\treturn new EShapeImageSdf(this.image, this.type).copy(this);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-image-sdf.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image-sdf.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;IAAoC,kCAAW;IAC9C,wBAAY,KAAuB,EAAE,IAAuC;QAAvC,qBAAA,EAAA,OAAmB,UAAU,CAAC,SAAS;eAC3E,kBAAM,KAAK,EAAE,IAAI,CAAC;IACnB,CAAC;IAED,8BAAK,GAAL;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IACF,qBAAC;AAAD,CAAC,AARD,CAAoC,WAAW,GAQ9C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeImageLike } from \"../e-shape-image-like\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeImage } from \"./e-shape-image\";\n\nexport class EShapeImageSdf extends EShapeImage {\n\tconstructor(image?: EShapeImageLike, type: EShapeType = EShapeType.IMAGE_SDF) {\n\t\tsuper(image, type);\n\t}\n\n\tclone(): EShapeImageSdf {\n\t\treturn new EShapeImageSdf(this.image, this.type).copy(this);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-image.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,KAAwB,EAAE,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;QAAzE,YACC,kBAAM,IAAI,CAAC,SAMX;QALA,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,KAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;;IACrB,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IACF,kBAAC;AAAD,CAAC,AAbD,CAAiC,eAAe,GAa/C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeRectangle } from \"./e-shape-rectangle\";\n\nexport class EShapeImage extends EShapeRectangle {\n\tconstructor(image?: HTMLImageElement, type: EShapeType = EShapeType.IMAGE) {\n\t\tsuper(type);\n\t\tif (image != null) {\n\t\t\tthis.image = image;\n\t\t\tthis.size.set(image.width, image.height);\n\t\t}\n\t\tthis.fill.alpha = 1;\n\t}\n\n\tclone(): EShapeImage {\n\t\treturn new EShapeImage(this.image, this.type).copy(this);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-image.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,KAAuB,EAAE,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;QAAxE,YACC,kBAAM,IAAI,CAAC,SAMX;QALA,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,KAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;;IACrB,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IACF,kBAAC;AAAD,CAAC,AAbD,CAAiC,eAAe,GAa/C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeImageLike } from \"../e-shape-image-like\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeRectangle } from \"./e-shape-rectangle\";\n\nexport class EShapeImage extends EShapeRectangle {\n\tconstructor(image?: EShapeImageLike, type: EShapeType = EShapeType.IMAGE) {\n\t\tsuper(type);\n\t\tif (image != null) {\n\t\t\tthis.image = image;\n\t\t\tthis.size.set(image.width, image.height);\n\t\t}\n\t\tthis.fill.alpha = 1;\n\t}\n\n\tclone(): EShapeImage {\n\t\treturn new EShapeImage(this.image, this.type).copy(this);\n\t}\n}\n"]}
@@ -15,6 +15,8 @@ var EShapeLineOfAnyPointsImpl = /** @class */ (function () {
15
15
  this._values = [];
16
16
  this._valuesLength = 0;
17
17
  this._segments = [];
18
+ this._length = 0;
19
+ this._plength = 0;
18
20
  this._size = new EShapeLineOfAnyPointsPointImpl(this, EShapeDefaults.SIZE_X, EShapeDefaults.SIZE_Y);
19
21
  this._offset = new EShapeLineOfAnyPointsPointImpl(this, 0, 0);
20
22
  this._fill = new EShapeLineOfAnyPointsFillImpl(parent);
@@ -23,7 +25,14 @@ var EShapeLineOfAnyPointsImpl = /** @class */ (function () {
23
25
  }
24
26
  Object.defineProperty(EShapeLineOfAnyPointsImpl.prototype, "length", {
25
27
  get: function () {
26
- return this._values.length >> 1;
28
+ return this._length;
29
+ },
30
+ enumerable: false,
31
+ configurable: true
32
+ });
33
+ Object.defineProperty(EShapeLineOfAnyPointsImpl.prototype, "plength", {
34
+ get: function () {
35
+ return this._plength;
27
36
  },
28
37
  enumerable: false,
29
38
  configurable: true
@@ -168,6 +177,11 @@ var EShapeLineOfAnyPointsImpl = /** @class */ (function () {
168
177
  isUpdated = true;
169
178
  }
170
179
  }
180
+ var newLength = newValuesLength >> 1;
181
+ this._length = newLength;
182
+ if (this._plength < newLength) {
183
+ this._plength = newLength;
184
+ }
171
185
  }
172
186
  //
173
187
  if (isDirty) {
@@ -179,7 +193,6 @@ var EShapeLineOfAnyPointsImpl = /** @class */ (function () {
179
193
  parent_1.updateUploaded();
180
194
  }
181
195
  else {
182
- parent_1.uploaded = undefined;
183
196
  parent_1.toDirty();
184
197
  }
185
198
  }
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-line-of-any-points-impl.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-line-of-any-points-impl.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Matrix, Point } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapePointsFormatter } from \"../e-shape-points-formatter\";\nimport { EShapePointsMarkerContainer } from \"../e-shape-points-marker-container\";\nimport { EShapePointsMarkerContainerImplNoop } from \"../e-shape-points-marker-container-impl-noop\";\nimport { EShapePointsStyle } from \"../e-shape-points-style\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsFill } from \"./e-shape-line-of-any-points-fill\";\nimport { EShapeLineOfAnyPointsFillImpl } from \"./e-shape-line-of-any-points-fill-impl\";\nimport { EShapeLineOfAnyPointsHitTester } from \"./e-shape-line-of-any-points-hit-tester\";\nimport { EShapeLineOfAnyPointsHitTesterToRange } from \"./e-shape-line-of-any-points-hit-tester-to-range\";\nimport { EShapeLineOfAnyPointsPoint } from \"./e-shape-line-of-any-points-point\";\nimport { EShapeLineOfAnyPointsPointImpl } from \"./e-shape-line-of-any-points-point-impl\";\nimport { EShapeLineOfAnyPointsStroke } from \"./e-shape-line-of-any-points-stroke\";\nimport { EShapeLineOfAnyPointsStrokeImpl } from \"./e-shape-line-of-any-points-stroke-impl\";\n\nexport class EShapeLineOfAnyPointsImpl implements EShapeLineOfAnyPoints {\n\tprotected static WORK_RANGE: [number, number] = [0, 0];\n\n\tprotected _parent: EShape;\n\tprotected _values: number[];\n\tprotected _valuesLength: number;\n\tprotected _segments: number[];\n\tprotected _size: EShapeLineOfAnyPointsPoint;\n\tprotected _offset: EShapeLineOfAnyPointsPoint;\n\tprotected _fill: EShapeLineOfAnyPointsFill;\n\tprotected _stroke: EShapeLineOfAnyPointsStroke;\n\tprotected _id: number;\n\tprotected _marker?: EShapePointsMarkerContainer;\n\n\tconstructor(parent: EShape) {\n\t\tthis._parent = parent;\n\t\tthis._values = [];\n\t\tthis._valuesLength = 0;\n\t\tthis._segments = [];\n\t\tthis._size = new EShapeLineOfAnyPointsPointImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.SIZE_X,\n\t\t\tEShapeDefaults.SIZE_Y\n\t\t);\n\t\tthis._offset = new EShapeLineOfAnyPointsPointImpl(this, 0, 0);\n\t\tthis._fill = new EShapeLineOfAnyPointsFillImpl(parent);\n\t\tthis._stroke = new EShapeLineOfAnyPointsStrokeImpl(parent);\n\t\tthis._id = 0;\n\t}\n\n\tget length(): number {\n\t\treturn this._values.length >> 1;\n\t}\n\n\tget id(): number {\n\t\treturn this._id;\n\t}\n\n\tget values(): number[] {\n\t\treturn this._values;\n\t}\n\n\tset values(values: number[]) {\n\t\tthis.set(values, undefined, undefined);\n\t}\n\n\tget segments(): number[] {\n\t\treturn this._segments;\n\t}\n\n\tset segments(segments: number[]) {\n\t\t// DO NOTHING\n\t}\n\n\tget style(): EShapePointsStyle {\n\t\treturn EShapePointsStyle.NONE;\n\t}\n\n\tset style(style: EShapePointsStyle) {\n\t\tthis.set(undefined, undefined, style);\n\t}\n\n\tget marker(): EShapePointsMarkerContainer {\n\t\tlet result = this._marker;\n\t\tif (result == null) {\n\t\t\tresult = EShapePointsMarkerContainerImplNoop.getInstance();\n\t\t\tthis._marker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetMarker(): EShapePointsMarkerContainer | undefined {\n\t\treturn undefined;\n\t}\n\n\tget size(): EShapeLineOfAnyPointsPoint {\n\t\treturn this._size;\n\t}\n\n\tget offset(): EShapeLineOfAnyPointsPoint {\n\t\treturn this._offset;\n\t}\n\n\tget fill(): EShapeLineOfAnyPointsFill {\n\t\treturn this._fill;\n\t}\n\n\tget stroke(): EShapeLineOfAnyPointsStroke {\n\t\treturn this._stroke;\n\t}\n\n\tget formatter(): EShapePointsFormatter | null {\n\t\treturn null;\n\t}\n\n\tset formatter(formatter: EShapePointsFormatter | null) {\n\t\t// DO NOTHING\n\t}\n\n\tget formatted(): this {\n\t\treturn this;\n\t}\n\n\tonSizeChange(): void {\n\t\t// DO NOTHING\n\t}\n\n\ttoFitted(x: number, y: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tcopy(source: EShapePoints): this {\n\t\treturn this.set(source.values, source.segments, source.style);\n\t}\n\n\tset(newValues?: number[], newSegments?: number[], newStyle?: EShapePointsStyle): this {\n\t\tlet isDirty = false;\n\t\tlet isUpdated = false;\n\n\t\t// Values\n\t\tif (newValues != null) {\n\t\t\tconst values = this._values;\n\t\t\tconst valuesLength = this._valuesLength;\n\t\t\tconst newValuesLength = newValues.length;\n\t\t\tif (values !== newValues) {\n\t\t\t\tconst iupdate = Math.min(valuesLength, newValuesLength);\n\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tvalues[i] = newValues[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newValuesLength; ++i) {\n\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t}\n\n\t\t\t\tif (valuesLength !== newValuesLength) {\n\t\t\t\t\tvalues.length = newValuesLength;\n\t\t\t\t\tthis._valuesLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tisUpdated = true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (valuesLength !== newValuesLength) {\n\t\t\t\t\tthis._valuesLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tisUpdated = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t//\n\t\tif (isDirty) {\n\t\t\tthis._id += 1;\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded) {\n\t\t\t\tif (uploaded.isCompatible(parent)) {\n\t\t\t\t\tparent.updateUploaded();\n\t\t\t\t} else {\n\t\t\t\t\tparent.uploaded = undefined;\n\t\t\t\t\tparent.toDirty();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tparent.updateUploaded();\n\t\t\t}\n\t\t} else if (isUpdated) {\n\t\t\tthis._id += 1;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tupdateUploaded(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tclone(parent: EShape): EShapeLineOfAnyPointsImpl {\n\t\treturn new EShapeLineOfAnyPointsImpl(parent).copy(this);\n\t}\n\n\ttoPoints(transform: Matrix): Point[] {\n\t\tconst result: Point[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\tconst point = new Point(values[i + 0], values[i + 1]);\n\t\t\tresult.push(transform.apply(point, point));\n\t\t}\n\t\treturn result;\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\treturn manager.addResource(`[]`);\n\t}\n\n\tcalcHitPointAbs<RESULT>(\n\t\tx: number,\n\t\ty: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number,\n\t\tthreshold: number,\n\t\ttoRange: EShapeLineOfAnyPointsHitTesterToRange | null,\n\t\ttester: EShapeLineOfAnyPointsHitTester<RESULT>,\n\t\tresult: RESULT\n\t): boolean {\n\t\tconst formatted = this.formatted;\n\t\tconst pointCount = formatted.length;\n\t\tconst pointValues = formatted.values;\n\t\tconst size = this._size;\n\t\tconst offset = this._offset;\n\t\tlet istart = 0;\n\t\tlet iend = pointCount;\n\t\tif (toRange) {\n\t\t\tconst s = size.getLimit() * 0.5;\n\t\t\tconst o = offset.getLimit();\n\t\t\tconst work = EShapeLineOfAnyPointsImpl.WORK_RANGE;\n\t\t\ttoRange(x, y, s, s, o, o, threshold, pointValues, work);\n\t\t\tistart = work[0];\n\t\t\tiend = work[1];\n\t\t}\n\t\tfor (let i = istart, imax = Math.min(iend, pointCount); i < imax; ++i) {\n\t\t\tconst iv = i << 1;\n\t\t\tconst px = pointValues[iv];\n\t\t\tconst py = pointValues[iv + 1];\n\t\t\tconst sx = size.getX(i) * 0.5;\n\t\t\tconst sy = size.getY(i) * 0.5;\n\t\t\tconst ox = offset.getX(i);\n\t\t\tconst oy = offset.getY(i);\n\t\t\tif (tester(x, y, sx, sy, ox, oy, px, py, sw, ss, sa, i, threshold, result)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-line-of-any-points-impl.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-line-of-any-points-impl.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAU,KAAK,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,OAAO,EAAE,mCAAmC,EAAE,MAAM,8CAA8C,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAI5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAIvF,OAAO,EAAE,8BAA8B,EAAE,MAAM,yCAAyC,CAAC;AAEzF,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAE3F;IAgBC,mCAAY,MAAc;QACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,8BAA8B,CAC9C,IAAI,EACJ,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,MAAM,CACrB,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,8BAA8B,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,IAAI,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IACd,CAAC;IAED,sBAAI,6CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,8CAAO;aAAX;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;;;OAAA;IAED,sBAAI,yCAAE;aAAN;YACC,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;;;OAAA;IAED,sBAAI,6CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;aAED,UAAW,MAAgB;YAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACxC,CAAC;;;OAJA;IAMD,sBAAI,+CAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAkB;YAC9B,aAAa;QACd,CAAC;;;OAJA;IAMD,sBAAI,4CAAK;aAAT;YACC,OAAO,iBAAiB,CAAC,IAAI,CAAC;QAC/B,CAAC;aAED,UAAU,KAAwB;YACjC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;;;OAJA;IAMD,sBAAI,6CAAM;aAAV;YACC,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1B,IAAI,MAAM,IAAI,IAAI,EAAE;gBACnB,MAAM,GAAG,mCAAmC,CAAC,WAAW,EAAE,CAAC;gBAC3D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;aACtB;YACD,OAAO,MAAM,CAAC;QACf,CAAC;;;OAAA;IAED,6CAAS,GAAT;QACC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,sBAAI,2CAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;;;OAAA;IAED,sBAAI,6CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,2CAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;;;OAAA;IAED,sBAAI,6CAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,sBAAI,gDAAS;aAAb;YACC,OAAO,IAAI,CAAC;QACb,CAAC;aAED,UAAc,SAAuC;YACpD,aAAa;QACd,CAAC;;;OAJA;IAMD,sBAAI,gDAAS;aAAb;YACC,OAAO,IAAI,CAAC;QACb,CAAC;;;OAAA;IAED,gDAAY,GAAZ;QACC,aAAa;IACd,CAAC;IAED,4CAAQ,GAAR,UAAS,CAAS,EAAE,CAAS;QAC5B,aAAa;IACd,CAAC;IAED,wCAAI,GAAJ,UAAK,MAAoB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,uCAAG,GAAH,UAAI,SAAoB,EAAE,WAAsB,EAAE,QAA4B;QAC7E,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,SAAS;QACT,IAAI,SAAS,IAAI,IAAI,EAAE;YACtB,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;YACxC,IAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC;YACzC,IAAI,MAAM,KAAK,SAAS,EAAE;gBACzB,IAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBAExD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,EAAE,CAAC,EAAE;oBACjC,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;iBACzB;gBAED,KAAK,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,eAAe,EAAE,EAAE,CAAC,EAAE;oBAC/C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC1B;gBAED,IAAI,YAAY,KAAK,eAAe,EAAE;oBACrC,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC;oBAChC,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC;oBACrC,OAAO,GAAG,IAAI,CAAC;iBACf;qBAAM;oBACN,SAAS,GAAG,IAAI,CAAC;iBACjB;aACD;iBAAM;gBACN,IAAI,YAAY,KAAK,eAAe,EAAE;oBACrC,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC;oBACrC,OAAO,GAAG,IAAI,CAAC;iBACf;qBAAM;oBACN,SAAS,GAAG,IAAI,CAAC;iBACjB;aACD;YACD,IAAM,SAAS,GAAG,eAAe,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,GAAG,SAAS,EAAE;gBAC9B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;aAC1B;SACD;QAED,EAAE;QACF,IAAI,OAAO,EAAE;YACZ,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YACd,IAAM,QAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAM,QAAQ,GAAG,QAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,QAAQ,EAAE;gBACb,IAAI,QAAQ,CAAC,YAAY,CAAC,QAAM,CAAC,EAAE;oBAClC,QAAM,CAAC,cAAc,EAAE,CAAC;iBACxB;qBAAM;oBACN,QAAM,CAAC,OAAO,EAAE,CAAC;iBACjB;aACD;iBAAM;gBACN,QAAM,CAAC,cAAc,EAAE,CAAC;aACxB;SACD;aAAM,IAAI,SAAS,EAAE;YACrB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;SAC9B;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAED,kDAAc,GAAd;QACC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,yCAAK,GAAL,UAAM,MAAc;QACnB,OAAO,IAAI,yBAAyB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,4CAAQ,GAAR,UAAS,SAAiB;QACzB,IAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;YACvD,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;SAC3C;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,6CAAS,GAAT,UAAU,OAA2C;QACpD,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,mDAAe,GAAf,UACC,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU,EACV,EAAU,EACV,SAAiB,EACjB,OAAqD,EACrD,MAA8C,EAC9C,MAAc;QAEd,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,IAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;QACpC,IAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC;QACrC,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,GAAG,UAAU,CAAC;QACtB,IAAI,OAAO,EAAE;YACZ,IAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC;YAChC,IAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC5B,IAAM,IAAI,GAAG,yBAAyB,CAAC,UAAU,CAAC;YAClD,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YACxD,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;SACf;QACD,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACtE,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAM,EAAE,GAAG,WAAW,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/B,IAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC9B,IAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC9B,IAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE;gBAC3E,OAAO,IAAI,CAAC;aACZ;SACD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAvPgB,oCAAU,GAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwPxD,gCAAC;CAAA,AAzPD,IAyPC;SAzPY,yBAAyB","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Matrix, Point } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapePointsFormatter } from \"../e-shape-points-formatter\";\nimport { EShapePointsMarkerContainer } from \"../e-shape-points-marker-container\";\nimport { EShapePointsMarkerContainerImplNoop } from \"../e-shape-points-marker-container-impl-noop\";\nimport { EShapePointsStyle } from \"../e-shape-points-style\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsFill } from \"./e-shape-line-of-any-points-fill\";\nimport { EShapeLineOfAnyPointsFillImpl } from \"./e-shape-line-of-any-points-fill-impl\";\nimport { EShapeLineOfAnyPointsHitTester } from \"./e-shape-line-of-any-points-hit-tester\";\nimport { EShapeLineOfAnyPointsHitTesterToRange } from \"./e-shape-line-of-any-points-hit-tester-to-range\";\nimport { EShapeLineOfAnyPointsPoint } from \"./e-shape-line-of-any-points-point\";\nimport { EShapeLineOfAnyPointsPointImpl } from \"./e-shape-line-of-any-points-point-impl\";\nimport { EShapeLineOfAnyPointsStroke } from \"./e-shape-line-of-any-points-stroke\";\nimport { EShapeLineOfAnyPointsStrokeImpl } from \"./e-shape-line-of-any-points-stroke-impl\";\n\nexport class EShapeLineOfAnyPointsImpl implements EShapeLineOfAnyPoints {\n\tprotected static WORK_RANGE: [number, number] = [0, 0];\n\n\tprotected _parent: EShape;\n\tprotected _values: number[];\n\tprotected _valuesLength: number;\n\tprotected _segments: number[];\n\tprotected _length: number;\n\tprotected _plength: number;\n\tprotected _size: EShapeLineOfAnyPointsPoint;\n\tprotected _offset: EShapeLineOfAnyPointsPoint;\n\tprotected _fill: EShapeLineOfAnyPointsFill;\n\tprotected _stroke: EShapeLineOfAnyPointsStroke;\n\tprotected _id: number;\n\tprotected _marker?: EShapePointsMarkerContainer;\n\n\tconstructor(parent: EShape) {\n\t\tthis._parent = parent;\n\t\tthis._values = [];\n\t\tthis._valuesLength = 0;\n\t\tthis._segments = [];\n\t\tthis._length = 0;\n\t\tthis._plength = 0;\n\t\tthis._size = new EShapeLineOfAnyPointsPointImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.SIZE_X,\n\t\t\tEShapeDefaults.SIZE_Y\n\t\t);\n\t\tthis._offset = new EShapeLineOfAnyPointsPointImpl(this, 0, 0);\n\t\tthis._fill = new EShapeLineOfAnyPointsFillImpl(parent);\n\t\tthis._stroke = new EShapeLineOfAnyPointsStrokeImpl(parent);\n\t\tthis._id = 0;\n\t}\n\n\tget length(): number {\n\t\treturn this._length;\n\t}\n\n\tget plength(): number {\n\t\treturn this._plength;\n\t}\n\n\tget id(): number {\n\t\treturn this._id;\n\t}\n\n\tget values(): number[] {\n\t\treturn this._values;\n\t}\n\n\tset values(values: number[]) {\n\t\tthis.set(values, undefined, undefined);\n\t}\n\n\tget segments(): number[] {\n\t\treturn this._segments;\n\t}\n\n\tset segments(segments: number[]) {\n\t\t// DO NOTHING\n\t}\n\n\tget style(): EShapePointsStyle {\n\t\treturn EShapePointsStyle.NONE;\n\t}\n\n\tset style(style: EShapePointsStyle) {\n\t\tthis.set(undefined, undefined, style);\n\t}\n\n\tget marker(): EShapePointsMarkerContainer {\n\t\tlet result = this._marker;\n\t\tif (result == null) {\n\t\t\tresult = EShapePointsMarkerContainerImplNoop.getInstance();\n\t\t\tthis._marker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetMarker(): EShapePointsMarkerContainer | undefined {\n\t\treturn undefined;\n\t}\n\n\tget size(): EShapeLineOfAnyPointsPoint {\n\t\treturn this._size;\n\t}\n\n\tget offset(): EShapeLineOfAnyPointsPoint {\n\t\treturn this._offset;\n\t}\n\n\tget fill(): EShapeLineOfAnyPointsFill {\n\t\treturn this._fill;\n\t}\n\n\tget stroke(): EShapeLineOfAnyPointsStroke {\n\t\treturn this._stroke;\n\t}\n\n\tget formatter(): EShapePointsFormatter | null {\n\t\treturn null;\n\t}\n\n\tset formatter(formatter: EShapePointsFormatter | null) {\n\t\t// DO NOTHING\n\t}\n\n\tget formatted(): this {\n\t\treturn this;\n\t}\n\n\tonSizeChange(): void {\n\t\t// DO NOTHING\n\t}\n\n\ttoFitted(x: number, y: number): void {\n\t\t// DO NOTHING\n\t}\n\n\tcopy(source: EShapePoints): this {\n\t\treturn this.set(source.values, source.segments, source.style);\n\t}\n\n\tset(newValues?: number[], newSegments?: number[], newStyle?: EShapePointsStyle): this {\n\t\tlet isDirty = false;\n\t\tlet isUpdated = false;\n\n\t\t// Values\n\t\tif (newValues != null) {\n\t\t\tconst values = this._values;\n\t\t\tconst valuesLength = this._valuesLength;\n\t\t\tconst newValuesLength = newValues.length;\n\t\t\tif (values !== newValues) {\n\t\t\t\tconst iupdate = Math.min(valuesLength, newValuesLength);\n\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tvalues[i] = newValues[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newValuesLength; ++i) {\n\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t}\n\n\t\t\t\tif (valuesLength !== newValuesLength) {\n\t\t\t\t\tvalues.length = newValuesLength;\n\t\t\t\t\tthis._valuesLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tisUpdated = true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (valuesLength !== newValuesLength) {\n\t\t\t\t\tthis._valuesLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tisUpdated = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst newLength = newValuesLength >> 1;\n\t\t\tthis._length = newLength;\n\t\t\tif (this._plength < newLength) {\n\t\t\t\tthis._plength = newLength;\n\t\t\t}\n\t\t}\n\n\t\t//\n\t\tif (isDirty) {\n\t\t\tthis._id += 1;\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded) {\n\t\t\t\tif (uploaded.isCompatible(parent)) {\n\t\t\t\t\tparent.updateUploaded();\n\t\t\t\t} else {\n\t\t\t\t\tparent.toDirty();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tparent.updateUploaded();\n\t\t\t}\n\t\t} else if (isUpdated) {\n\t\t\tthis._id += 1;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tupdateUploaded(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tclone(parent: EShape): EShapeLineOfAnyPointsImpl {\n\t\treturn new EShapeLineOfAnyPointsImpl(parent).copy(this);\n\t}\n\n\ttoPoints(transform: Matrix): Point[] {\n\t\tconst result: Point[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\tconst point = new Point(values[i + 0], values[i + 1]);\n\t\t\tresult.push(transform.apply(point, point));\n\t\t}\n\t\treturn result;\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\treturn manager.addResource(`[]`);\n\t}\n\n\tcalcHitPointAbs<RESULT>(\n\t\tx: number,\n\t\ty: number,\n\t\tsw: number,\n\t\tss: number,\n\t\tsa: number,\n\t\tthreshold: number,\n\t\ttoRange: EShapeLineOfAnyPointsHitTesterToRange | null,\n\t\ttester: EShapeLineOfAnyPointsHitTester<RESULT>,\n\t\tresult: RESULT\n\t): boolean {\n\t\tconst formatted = this.formatted;\n\t\tconst pointCount = formatted.length;\n\t\tconst pointValues = formatted.values;\n\t\tconst size = this._size;\n\t\tconst offset = this._offset;\n\t\tlet istart = 0;\n\t\tlet iend = pointCount;\n\t\tif (toRange) {\n\t\t\tconst s = size.getLimit() * 0.5;\n\t\t\tconst o = offset.getLimit();\n\t\t\tconst work = EShapeLineOfAnyPointsImpl.WORK_RANGE;\n\t\t\ttoRange(x, y, s, s, o, o, threshold, pointValues, work);\n\t\t\tistart = work[0];\n\t\t\tiend = work[1];\n\t\t}\n\t\tfor (let i = istart, imax = Math.min(iend, pointCount); i < imax; ++i) {\n\t\t\tconst iv = i << 1;\n\t\t\tconst px = pointValues[iv];\n\t\t\tconst py = pointValues[iv + 1];\n\t\t\tconst sx = size.getX(i) * 0.5;\n\t\t\tconst sy = size.getY(i) * 0.5;\n\t\t\tconst ox = offset.getX(i);\n\t\t\tconst oy = offset.getY(i);\n\t\t\tif (tester(x, y, sx, sy, ox, oy, px, py, sw, ss, sa, i, threshold, result)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n}\n"]}
@@ -14,6 +14,8 @@ var EShapeLinePoints = /** @class */ (function () {
14
14
  this._valuesBaseLength = 0;
15
15
  this._values = [];
16
16
  this._segments = [];
17
+ this._length = 0;
18
+ this._plength = 0;
17
19
  var parentSize = parent.size;
18
20
  var parentSizeX = parentSize.x;
19
21
  var parentSizeY = parentSize.y;
@@ -25,7 +27,14 @@ var EShapeLinePoints = /** @class */ (function () {
25
27
  }
26
28
  Object.defineProperty(EShapeLinePoints.prototype, "length", {
27
29
  get: function () {
28
- return this._values.length >> 1;
30
+ return this._length;
31
+ },
32
+ enumerable: false,
33
+ configurable: true
34
+ });
35
+ Object.defineProperty(EShapeLinePoints.prototype, "plength", {
36
+ get: function () {
37
+ return this._plength;
29
38
  },
30
39
  enumerable: false,
31
40
  configurable: true
@@ -82,7 +91,6 @@ var EShapeLinePoints = /** @class */ (function () {
82
91
  if (this._formatter || this._style & EShapePointsStyle.FORMATTER_MASK) {
83
92
  var uploaded = parent.uploaded;
84
93
  if (uploaded && !uploaded.isCompatible(parent)) {
85
- parent.uploaded = undefined;
86
94
  parent.toDirty();
87
95
  }
88
96
  }
@@ -186,6 +194,7 @@ var EShapeLinePoints = /** @class */ (function () {
186
194
  if (result == null) {
187
195
  result = {
188
196
  length: 0,
197
+ plength: 0,
189
198
  values: [],
190
199
  segments: [],
191
200
  boundary: [0, 0, 0, 0],
@@ -196,6 +205,9 @@ var EShapeLinePoints = /** @class */ (function () {
196
205
  var segments = this._segments;
197
206
  var length_1 = values.length >> 1;
198
207
  formatter(length_1, values, segments, style, result);
208
+ if (result.plength < result.length) {
209
+ result.plength = result.length;
210
+ }
199
211
  toPointsBoundary(result.values, result.boundary);
200
212
  }
201
213
  else {
@@ -285,6 +297,11 @@ var EShapeLinePoints = /** @class */ (function () {
285
297
  }
286
298
  }
287
299
  }
300
+ var newLength = newValuesLength >> 1;
301
+ this._length = newLength;
302
+ if (this._plength < newLength) {
303
+ this._plength = newLength;
304
+ }
288
305
  }
289
306
  // Segments
290
307
  if (newSegments != null) {
@@ -350,7 +367,6 @@ var EShapeLinePoints = /** @class */ (function () {
350
367
  parent_1.updateUploaded();
351
368
  }
352
369
  else {
353
- parent_1.uploaded = undefined;
354
370
  parent_1.toDirty();
355
371
  }
356
372
  }
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-line-points.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-line-points.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Matrix, Point } from \"pixi.js\";\nimport { toIndexOf } from \"../../util/to-index-of\";\nimport { EShape } from \"../e-shape\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapePointsStyle } from \"../e-shape-points-style\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapePointsFormatter } from \"../e-shape-points-formatter\";\nimport {\n\tEShapePointsFormatted,\n\tEShapePointsFormattedBoundary,\n\tEShapePointsFormattedWithBoundary,\n\ttoPointsBoundary\n} from \"../e-shape-points-formatted\";\nimport { EShapeLineBasePointsHitTester } from \"./e-shape-line-base-points-hit-tester\";\nimport { EShapeLineBasePointsHitTesterToRange } from \"./e-shape-line-base-points-hit-tester-to-range\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapePointsMarkerContainer } from \"../e-shape-points-marker-container\";\nimport { EShapePointsMarkerContainerImpl } from \"../e-shape-points-marker-container-impl\";\nimport { EShapePointsFormatters } from \"../e-shape-points-formatters\";\n\nexport type EShapeLinePointsSerialized = [number[], number[], number, number?];\n\nexport class EShapeLinePoints implements EShapePoints {\n\tprotected static WORK_RANGE: [number, number] = [0, 0];\n\n\tprotected _parent: EShape;\n\tprotected _valuesBase?: number[];\n\tprotected _valuesBaseLength: number;\n\tprotected _values: number[];\n\tprotected _segments: number[];\n\tprotected _parentSizeBase: Point;\n\tprotected _parentSizeFitted: Point;\n\tprotected _id: number;\n\tprotected _style: EShapePointsStyle;\n\tprotected _formattedId: number;\n\tprotected _formatter?: EShapePointsFormatter | null;\n\tprotected _formatted?: EShapePointsFormattedWithBoundary;\n\n\tprotected _marker?: EShapePointsMarkerContainer;\n\n\tconstructor(parent: EShape) {\n\t\tthis._parent = parent;\n\t\tthis._valuesBaseLength = 0;\n\t\tthis._values = [];\n\t\tthis._segments = [];\n\t\tconst parentSize = parent.size;\n\t\tconst parentSizeX = parentSize.x;\n\t\tconst parentSizeY = parentSize.y;\n\t\tthis._parentSizeBase = new Point(parentSizeX, parentSizeY);\n\t\tthis._parentSizeFitted = new Point(parentSizeX, parentSizeY);\n\t\tthis._id = 0;\n\t\tthis._style = EShapePointsStyle.NONE;\n\t\tthis._formattedId = -1;\n\t}\n\n\tget length(): number {\n\t\treturn this._values.length >> 1;\n\t}\n\n\ttoFitted(x: number, y: number): void {\n\t\tthis._valuesBase = undefined;\n\t\tthis._parentSizeFitted.set(x, y);\n\t\tthis._parentSizeBase.set(x, y);\n\t}\n\n\tonSizeChange(): void {\n\t\tthis.fit();\n\t}\n\n\tprotected fit(): void {\n\t\tconst parent = this._parent;\n\t\tconst psizef = this._parentSizeFitted;\n\t\tconst psize = parent.size;\n\t\tconst psizeX = psize.x;\n\t\tconst psizeY = psize.y;\n\t\tconst threshold = 0.00001;\n\t\tif (Math.abs(psizeX - psizef.x) <= threshold && Math.abs(psizeY - psizef.y) <= threshold) {\n\t\t\treturn;\n\t\t}\n\n\t\tpsizef.set(psizeX, psizeY);\n\t\tconst psizeBase = this._parentSizeBase;\n\t\tconst isValidX = threshold < Math.abs(psizeBase.x);\n\t\tconst isValidY = threshold < Math.abs(psizeBase.y);\n\t\tif (!isValidX && !isValidY) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst scaleX = isValidX ? psizeX / psizeBase.x : 1;\n\t\tconst scaleY = isValidY ? psizeY / psizeBase.y : 1;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tlet valuesBase = this._valuesBase;\n\t\tif (valuesBase == null) {\n\t\t\tvaluesBase = [];\n\t\t\tthis._valuesBase = valuesBase;\n\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tconst x = values[i];\n\t\t\t\tconst y = values[i + 1];\n\t\t\t\tvalues[i] = x * scaleX;\n\t\t\t\tvalues[i + 1] = y * scaleY;\n\t\t\t\tvaluesBase.push(x, y);\n\t\t\t}\n\t\t} else {\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tvalues[i] = valuesBase[i] * scaleX;\n\t\t\t\tvalues[i + 1] = valuesBase[i + 1] * scaleY;\n\t\t\t}\n\t\t}\n\n\t\t// Invalidate\n\t\tthis._id += 1;\n\t\tif (this._formatter || this._style & EShapePointsStyle.FORMATTER_MASK) {\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded && !uploaded.isCompatible(parent)) {\n\t\t\t\tparent.uploaded = undefined;\n\t\t\t\tparent.toDirty();\n\t\t\t}\n\t\t}\n\t}\n\n\tget id(): number {\n\t\tthis.fit();\n\t\treturn this._id;\n\t}\n\n\tget values(): number[] {\n\t\tthis.fit();\n\t\treturn this._values;\n\t}\n\n\tset values(values: number[]) {\n\t\tthis.set(values, undefined, undefined);\n\t}\n\n\tget segments(): number[] {\n\t\treturn this._segments;\n\t}\n\n\t/**\n\t * Must be sorted in ascending order.\n\t */\n\tset segments(segments: number[]) {\n\t\tthis.set(undefined, segments, undefined);\n\t}\n\n\tget style(): EShapePointsStyle {\n\t\treturn this._style;\n\t}\n\n\tset style(style: EShapePointsStyle) {\n\t\tthis.set(undefined, undefined, style);\n\t}\n\n\tget marker(): EShapePointsMarkerContainer {\n\t\tlet result = this._marker;\n\t\tif (result == null) {\n\t\t\tresult = this.newMarker();\n\t\t\tthis._marker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetMarker(): EShapePointsMarkerContainer | undefined {\n\t\treturn this._marker;\n\t}\n\n\tprotected newMarker(): EShapePointsMarkerContainer {\n\t\treturn new EShapePointsMarkerContainerImpl(this);\n\t}\n\n\tonMarkerTypeChange(): void {\n\t\tconst parent = this._parent;\n\t\tparent.uploaded = undefined;\n\t\tparent.toDirty();\n\t}\n\n\tonMarkerSizeChange(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tonMarkerFillChange(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tget formatter(): EShapePointsFormatter | null {\n\t\treturn this._formatter || null;\n\t}\n\n\tset formatter(formatter: EShapePointsFormatter | null) {\n\t\tif (this._formatter !== formatter) {\n\t\t\tthis._formattedId = -1;\n\t\t\tthis._formatter = formatter;\n\t\t\tthis.toDirty(true);\n\t\t}\n\t}\n\n\tget formatted(): EShapePointsFormatted {\n\t\tthis.fit();\n\t\tconst id = this._id;\n\t\tlet result = this._formatted;\n\t\tif (this._formattedId !== id) {\n\t\t\tthis._formattedId = id;\n\n\t\t\tconst style = this._style;\n\t\t\tconst formatter = this._formatter ?? EShapePointsFormatters.find(style)?.formatter;\n\t\t\tif (formatter != null) {\n\t\t\t\tif (result == null) {\n\t\t\t\t\tresult = {\n\t\t\t\t\t\tlength: 0,\n\t\t\t\t\t\tvalues: [],\n\t\t\t\t\t\tsegments: [],\n\t\t\t\t\t\tboundary: [0, 0, 0, 0],\n\t\t\t\t\t\tstyle: EShapePointsStyle.NONE\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tconst values = this._values;\n\t\t\t\tconst segments = this._segments;\n\t\t\t\tconst length = values.length >> 1;\n\t\t\t\tformatter(length, values, segments, style, result);\n\t\t\t\ttoPointsBoundary(result.values, result.boundary);\n\t\t\t} else {\n\t\t\t\tresult = undefined;\n\t\t\t}\n\t\t\tthis._formatted = result;\n\t\t}\n\t\treturn result || this;\n\t}\n\n\tprotected toScaled(\n\t\tvalues: number[],\n\t\tvaluesBase: number[],\n\t\tboundary: EShapePointsFormattedBoundary,\n\t\tboundaryBase: EShapePointsFormattedBoundary\n\t): void {\n\t\tconst size = this._parentSizeFitted;\n\t\tconst sizeBase = this._parentSizeBase;\n\t\tconst threshold = 0.00001;\n\t\tconst hasSizeBaseX = threshold < Math.abs(sizeBase.x);\n\t\tconst hasSizeBaseY = threshold < Math.abs(sizeBase.y);\n\t\tif (hasSizeBaseX || hasSizeBaseY) {\n\t\t\tconst scaleX = hasSizeBaseX ? size.x / sizeBase.x : 1;\n\t\t\tconst scaleY = hasSizeBaseY ? size.y / sizeBase.y : 1;\n\n\t\t\tfor (let i = 0, imax = valuesBase.length; i < imax; i += 2) {\n\t\t\t\tvalues[i] = valuesBase[i] * scaleX;\n\t\t\t\tvalues[i + 1] = valuesBase[i + 1] * scaleY;\n\t\t\t}\n\n\t\t\tfor (let i = 0, imax = boundaryBase.length; i < imax; i += 2) {\n\t\t\t\tboundary[i] = boundaryBase[i] * scaleX;\n\t\t\t\tboundary[i + 1] = boundaryBase[i + 1] * scaleY;\n\t\t\t}\n\t\t}\n\t}\n\n\tcopy(source: EShapePoints): this {\n\t\tthis.set(source.values, source.segments, source.style);\n\t\tconst marker = source.getMarker();\n\t\tif (marker) {\n\t\t\tthis.marker.copy(marker);\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(newValues?: number[], newSegments?: number[], newStyle?: EShapePointsStyle): this {\n\t\tlet isDirty = false;\n\t\tlet isUpdated = false;\n\n\t\t// Formatter\n\t\tconst style = this._style;\n\t\tconst styleFormatter = style & EShapePointsStyle.FORMATTER_MASK;\n\t\tconst formatter = this._formatter;\n\n\t\t// Values\n\t\tif (newValues != null) {\n\t\t\tconst values = this._values;\n\t\t\tconst valuesBaseLength = this._valuesBaseLength;\n\t\t\tconst newValuesLength = newValues.length;\n\t\t\tconst iupdate = Math.min(newValuesLength, valuesBaseLength);\n\t\t\tconst parentSize = this._parent.size;\n\t\t\tthis.toFitted(parentSize.x, parentSize.y);\n\t\t\tif (values !== newValues) {\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tvalues[i] = newValues[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newValuesLength; ++i) {\n\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t}\n\n\t\t\t\tif (valuesBaseLength !== newValuesLength) {\n\t\t\t\t\tvalues.length = newValuesLength;\n\t\t\t\t\tthis._valuesBaseLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (valuesBaseLength !== newValuesLength) {\n\t\t\t\t\tthis._valuesBaseLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Segments\n\t\tif (newSegments != null) {\n\t\t\tconst segments = this._segments;\n\t\t\tif (segments !== newSegments) {\n\t\t\t\tconst newSegmentsLength = newSegments.length;\n\t\t\t\tconst iupdate = Math.min(segments.length, newSegmentsLength);\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tsegments[i] = newSegments[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newSegmentsLength; ++i) {\n\t\t\t\t\tsegments.push(newSegments[i]);\n\t\t\t\t}\n\n\t\t\t\tif (segments.length !== newSegmentsLength) {\n\t\t\t\t\tsegments.length = newSegmentsLength;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\tisDirty = true;\n\t\t\t} else {\n\t\t\t\tisUpdated = true;\n\t\t\t}\n\t\t}\n\n\t\t// Style\n\t\tif (newStyle != null) {\n\t\t\tif (style !== newStyle) {\n\t\t\t\tconst newStyleFormatter = newStyle & EShapePointsStyle.FORMATTER_MASK;\n\t\t\t\tif (styleFormatter !== newStyleFormatter) {\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tconst styleClosed = style & EShapePointsStyle.CLOSED;\n\t\t\t\t\t\tconst newStyleClosed = newStyle & EShapePointsStyle.CLOSED;\n\t\t\t\t\t\tif (styleClosed !== newStyleClosed) {\n\t\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis._style = newStyle;\n\t\t\t}\n\t\t}\n\n\t\t//\n\t\tif (isUpdated || isDirty) {\n\t\t\tthis.toDirty(isDirty);\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected toDirty(revalidate: boolean): void {\n\t\tif (revalidate) {\n\t\t\tthis._id += 1;\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded) {\n\t\t\t\tif (uploaded.isCompatible(parent)) {\n\t\t\t\t\tparent.updateUploaded();\n\t\t\t\t} else {\n\t\t\t\t\tparent.uploaded = undefined;\n\t\t\t\t\tparent.toDirty();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tparent.updateUploaded();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._id += 1;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tclone(parent: EShape): EShapeLinePoints {\n\t\treturn new EShapeLinePoints(parent).copy(this);\n\t}\n\n\ttoPoints(transform: Matrix): Point[] {\n\t\tconst result: Point[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\tconst point = new Point(values[i + 0], values[i + 1]);\n\t\t\tresult.push(transform.apply(point, point));\n\t\t}\n\t\treturn result;\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst values = JSON.stringify(this._values);\n\t\tconst segments = JSON.stringify(this._segments);\n\t\tconst style = this._style;\n\t\tlet markerId = -1;\n\t\tconst marker = this._marker;\n\t\tif (marker) {\n\t\t\tmarkerId = marker.serialize(manager);\n\t\t}\n\t\treturn manager.addResource(`[${values},${segments},${style},${markerId}]`);\n\t}\n\n\tdeserialize(resourceId: number, manager: EShapeResourceManagerDeserialization): void {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= resourceId && resourceId < resources.length) {\n\t\t\tlet parsed = manager.getExtension<EShapeLinePointsSerialized>(resourceId);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[resourceId]) as EShapeLinePointsSerialized;\n\t\t\t\tmanager.setExtension(resourceId, parsed);\n\t\t\t}\n\t\t\tthis.set(parsed[0], parsed[1], parsed[2]);\n\t\t\tconst markerId = parsed[3];\n\t\t\tif (markerId != null && 0 <= markerId) {\n\t\t\t\tthis.marker.deserialize(markerId, manager);\n\t\t\t}\n\t\t}\n\t}\n\n\tcalcHitPointAbs<RESULT>(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tthreshold: number,\n\t\ttoRange: EShapeLineBasePointsHitTesterToRange | null,\n\t\ttester: EShapeLineBasePointsHitTester<RESULT>,\n\t\tresult: RESULT\n\t): boolean {\n\t\tconst formatted = this.formatted;\n\t\tconst length = formatted.length;\n\t\tif (2 <= length) {\n\t\t\tconst values = formatted.values;\n\t\t\tconst segments = formatted.segments;\n\t\t\tconst style = formatted.style;\n\t\t\tlet istart = 0;\n\t\t\tlet iend = length;\n\t\t\tif (toRange) {\n\t\t\t\tconst work = EShapeLinePoints.WORK_RANGE;\n\t\t\t\ttoRange(x, y, threshold, values, work);\n\t\t\t\tistart = work[0];\n\t\t\t\tiend = work[1];\n\t\t\t}\n\t\t\tfor (let i = istart, imax = Math.min(iend, length - 1); i < imax; ++i) {\n\t\t\t\tif (toIndexOf(segments, i + 1) < 0) {\n\t\t\t\t\tconst iv = i << 1;\n\t\t\t\t\tconst p0x = values[iv + 0];\n\t\t\t\t\tconst p0y = values[iv + 1];\n\t\t\t\t\tconst p1x = values[iv + 2];\n\t\t\t\t\tconst p1y = values[iv + 3];\n\t\t\t\t\tif (tester(x, y, p0x, p0y, p1x, p1y, i, threshold, result)) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (2 < length && length <= iend && style & EShapePointsStyle.CLOSED) {\n\t\t\t\tif (toIndexOf(segments, 0) < 0) {\n\t\t\t\t\tconst i = length - 1;\n\t\t\t\t\tconst iv = i << 1;\n\t\t\t\t\tconst p0x = values[iv + 0];\n\t\t\t\t\tconst p0y = values[iv + 1];\n\t\t\t\t\tconst p1x = values[0];\n\t\t\t\t\tconst p1y = values[1];\n\t\t\t\t\tif (tester(x, y, p0x, p0y, p1x, p1y, i, threshold, result)) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-line-points.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-line-points.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Matrix, Point } from \"pixi.js\";\nimport { toIndexOf } from \"../../util/to-index-of\";\nimport { EShape } from \"../e-shape\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapePointsStyle } from \"../e-shape-points-style\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapePointsFormatter } from \"../e-shape-points-formatter\";\nimport {\n\tEShapePointsFormatted,\n\tEShapePointsFormattedBoundary,\n\tEShapePointsFormattedWithBoundary,\n\ttoPointsBoundary\n} from \"../e-shape-points-formatted\";\nimport { EShapeLineBasePointsHitTester } from \"./e-shape-line-base-points-hit-tester\";\nimport { EShapeLineBasePointsHitTesterToRange } from \"./e-shape-line-base-points-hit-tester-to-range\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapePointsMarkerContainer } from \"../e-shape-points-marker-container\";\nimport { EShapePointsMarkerContainerImpl } from \"../e-shape-points-marker-container-impl\";\nimport { EShapePointsFormatters } from \"../e-shape-points-formatters\";\n\nexport type EShapeLinePointsSerialized = [number[], number[], number, number?];\n\nexport class EShapeLinePoints implements EShapePoints {\n\tprotected static WORK_RANGE: [number, number] = [0, 0];\n\n\tprotected _parent: EShape;\n\tprotected _valuesBase?: number[];\n\tprotected _valuesBaseLength: number;\n\tprotected _values: number[];\n\tprotected _segments: number[];\n\tprotected _length: number;\n\tprotected _plength: number;\n\tprotected _parentSizeBase: Point;\n\tprotected _parentSizeFitted: Point;\n\tprotected _id: number;\n\tprotected _style: EShapePointsStyle;\n\tprotected _formattedId: number;\n\tprotected _formatter?: EShapePointsFormatter | null;\n\tprotected _formatted?: EShapePointsFormattedWithBoundary;\n\n\tprotected _marker?: EShapePointsMarkerContainer;\n\n\tconstructor(parent: EShape) {\n\t\tthis._parent = parent;\n\t\tthis._valuesBaseLength = 0;\n\t\tthis._values = [];\n\t\tthis._segments = [];\n\t\tthis._length = 0;\n\t\tthis._plength = 0;\n\t\tconst parentSize = parent.size;\n\t\tconst parentSizeX = parentSize.x;\n\t\tconst parentSizeY = parentSize.y;\n\t\tthis._parentSizeBase = new Point(parentSizeX, parentSizeY);\n\t\tthis._parentSizeFitted = new Point(parentSizeX, parentSizeY);\n\t\tthis._id = 0;\n\t\tthis._style = EShapePointsStyle.NONE;\n\t\tthis._formattedId = -1;\n\t}\n\n\tget length(): number {\n\t\treturn this._length;\n\t}\n\n\tget plength(): number {\n\t\treturn this._plength;\n\t}\n\n\ttoFitted(x: number, y: number): void {\n\t\tthis._valuesBase = undefined;\n\t\tthis._parentSizeFitted.set(x, y);\n\t\tthis._parentSizeBase.set(x, y);\n\t}\n\n\tonSizeChange(): void {\n\t\tthis.fit();\n\t}\n\n\tprotected fit(): void {\n\t\tconst parent = this._parent;\n\t\tconst psizef = this._parentSizeFitted;\n\t\tconst psize = parent.size;\n\t\tconst psizeX = psize.x;\n\t\tconst psizeY = psize.y;\n\t\tconst threshold = 0.00001;\n\t\tif (Math.abs(psizeX - psizef.x) <= threshold && Math.abs(psizeY - psizef.y) <= threshold) {\n\t\t\treturn;\n\t\t}\n\n\t\tpsizef.set(psizeX, psizeY);\n\t\tconst psizeBase = this._parentSizeBase;\n\t\tconst isValidX = threshold < Math.abs(psizeBase.x);\n\t\tconst isValidY = threshold < Math.abs(psizeBase.y);\n\t\tif (!isValidX && !isValidY) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst scaleX = isValidX ? psizeX / psizeBase.x : 1;\n\t\tconst scaleY = isValidY ? psizeY / psizeBase.y : 1;\n\n\t\t// Values\n\t\tconst values = this._values;\n\t\tlet valuesBase = this._valuesBase;\n\t\tif (valuesBase == null) {\n\t\t\tvaluesBase = [];\n\t\t\tthis._valuesBase = valuesBase;\n\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tconst x = values[i];\n\t\t\t\tconst y = values[i + 1];\n\t\t\t\tvalues[i] = x * scaleX;\n\t\t\t\tvalues[i + 1] = y * scaleY;\n\t\t\t\tvaluesBase.push(x, y);\n\t\t\t}\n\t\t} else {\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tvalues[i] = valuesBase[i] * scaleX;\n\t\t\t\tvalues[i + 1] = valuesBase[i + 1] * scaleY;\n\t\t\t}\n\t\t}\n\n\t\t// Invalidate\n\t\tthis._id += 1;\n\t\tif (this._formatter || this._style & EShapePointsStyle.FORMATTER_MASK) {\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded && !uploaded.isCompatible(parent)) {\n\t\t\t\tparent.toDirty();\n\t\t\t}\n\t\t}\n\t}\n\n\tget id(): number {\n\t\tthis.fit();\n\t\treturn this._id;\n\t}\n\n\tget values(): number[] {\n\t\tthis.fit();\n\t\treturn this._values;\n\t}\n\n\tset values(values: number[]) {\n\t\tthis.set(values, undefined, undefined);\n\t}\n\n\tget segments(): number[] {\n\t\treturn this._segments;\n\t}\n\n\t/**\n\t * Must be sorted in ascending order.\n\t */\n\tset segments(segments: number[]) {\n\t\tthis.set(undefined, segments, undefined);\n\t}\n\n\tget style(): EShapePointsStyle {\n\t\treturn this._style;\n\t}\n\n\tset style(style: EShapePointsStyle) {\n\t\tthis.set(undefined, undefined, style);\n\t}\n\n\tget marker(): EShapePointsMarkerContainer {\n\t\tlet result = this._marker;\n\t\tif (result == null) {\n\t\t\tresult = this.newMarker();\n\t\t\tthis._marker = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetMarker(): EShapePointsMarkerContainer | undefined {\n\t\treturn this._marker;\n\t}\n\n\tprotected newMarker(): EShapePointsMarkerContainer {\n\t\treturn new EShapePointsMarkerContainerImpl(this);\n\t}\n\n\tonMarkerTypeChange(): void {\n\t\tconst parent = this._parent;\n\t\tparent.uploaded = undefined;\n\t\tparent.toDirty();\n\t}\n\n\tonMarkerSizeChange(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tonMarkerFillChange(): void {\n\t\tthis._parent.updateUploaded();\n\t}\n\n\tget formatter(): EShapePointsFormatter | null {\n\t\treturn this._formatter || null;\n\t}\n\n\tset formatter(formatter: EShapePointsFormatter | null) {\n\t\tif (this._formatter !== formatter) {\n\t\t\tthis._formattedId = -1;\n\t\t\tthis._formatter = formatter;\n\t\t\tthis.toDirty(true);\n\t\t}\n\t}\n\n\tget formatted(): EShapePointsFormatted {\n\t\tthis.fit();\n\t\tconst id = this._id;\n\t\tlet result = this._formatted;\n\t\tif (this._formattedId !== id) {\n\t\t\tthis._formattedId = id;\n\n\t\t\tconst style = this._style;\n\t\t\tconst formatter = this._formatter ?? EShapePointsFormatters.find(style)?.formatter;\n\t\t\tif (formatter != null) {\n\t\t\t\tif (result == null) {\n\t\t\t\t\tresult = {\n\t\t\t\t\t\tlength: 0,\n\t\t\t\t\t\tplength: 0,\n\t\t\t\t\t\tvalues: [],\n\t\t\t\t\t\tsegments: [],\n\t\t\t\t\t\tboundary: [0, 0, 0, 0],\n\t\t\t\t\t\tstyle: EShapePointsStyle.NONE\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tconst values = this._values;\n\t\t\t\tconst segments = this._segments;\n\t\t\t\tconst length = values.length >> 1;\n\t\t\t\tformatter(length, values, segments, style, result);\n\t\t\t\tif (result.plength < result.length) {\n\t\t\t\t\tresult.plength = result.length;\n\t\t\t\t}\n\t\t\t\ttoPointsBoundary(result.values, result.boundary);\n\t\t\t} else {\n\t\t\t\tresult = undefined;\n\t\t\t}\n\t\t\tthis._formatted = result;\n\t\t}\n\t\treturn result || this;\n\t}\n\n\tprotected toScaled(\n\t\tvalues: number[],\n\t\tvaluesBase: number[],\n\t\tboundary: EShapePointsFormattedBoundary,\n\t\tboundaryBase: EShapePointsFormattedBoundary\n\t): void {\n\t\tconst size = this._parentSizeFitted;\n\t\tconst sizeBase = this._parentSizeBase;\n\t\tconst threshold = 0.00001;\n\t\tconst hasSizeBaseX = threshold < Math.abs(sizeBase.x);\n\t\tconst hasSizeBaseY = threshold < Math.abs(sizeBase.y);\n\t\tif (hasSizeBaseX || hasSizeBaseY) {\n\t\t\tconst scaleX = hasSizeBaseX ? size.x / sizeBase.x : 1;\n\t\t\tconst scaleY = hasSizeBaseY ? size.y / sizeBase.y : 1;\n\n\t\t\tfor (let i = 0, imax = valuesBase.length; i < imax; i += 2) {\n\t\t\t\tvalues[i] = valuesBase[i] * scaleX;\n\t\t\t\tvalues[i + 1] = valuesBase[i + 1] * scaleY;\n\t\t\t}\n\n\t\t\tfor (let i = 0, imax = boundaryBase.length; i < imax; i += 2) {\n\t\t\t\tboundary[i] = boundaryBase[i] * scaleX;\n\t\t\t\tboundary[i + 1] = boundaryBase[i + 1] * scaleY;\n\t\t\t}\n\t\t}\n\t}\n\n\tcopy(source: EShapePoints): this {\n\t\tthis.set(source.values, source.segments, source.style);\n\t\tconst marker = source.getMarker();\n\t\tif (marker) {\n\t\t\tthis.marker.copy(marker);\n\t\t}\n\t\treturn this;\n\t}\n\n\tset(newValues?: number[], newSegments?: number[], newStyle?: EShapePointsStyle): this {\n\t\tlet isDirty = false;\n\t\tlet isUpdated = false;\n\n\t\t// Formatter\n\t\tconst style = this._style;\n\t\tconst styleFormatter = style & EShapePointsStyle.FORMATTER_MASK;\n\t\tconst formatter = this._formatter;\n\n\t\t// Values\n\t\tif (newValues != null) {\n\t\t\tconst values = this._values;\n\t\t\tconst valuesBaseLength = this._valuesBaseLength;\n\t\t\tconst newValuesLength = newValues.length;\n\t\t\tconst iupdate = Math.min(newValuesLength, valuesBaseLength);\n\t\t\tconst parentSize = this._parent.size;\n\t\t\tthis.toFitted(parentSize.x, parentSize.y);\n\t\t\tif (values !== newValues) {\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tvalues[i] = newValues[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newValuesLength; ++i) {\n\t\t\t\t\tvalues.push(newValues[i]);\n\t\t\t\t}\n\n\t\t\t\tif (valuesBaseLength !== newValuesLength) {\n\t\t\t\t\tvalues.length = newValuesLength;\n\t\t\t\t\tthis._valuesBaseLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (valuesBaseLength !== newValuesLength) {\n\t\t\t\t\tthis._valuesBaseLength = newValuesLength;\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst newLength = newValuesLength >> 1;\n\t\t\tthis._length = newLength;\n\t\t\tif (this._plength < newLength) {\n\t\t\t\tthis._plength = newLength;\n\t\t\t}\n\t\t}\n\n\t\t// Segments\n\t\tif (newSegments != null) {\n\t\t\tconst segments = this._segments;\n\t\t\tif (segments !== newSegments) {\n\t\t\t\tconst newSegmentsLength = newSegments.length;\n\t\t\t\tconst iupdate = Math.min(segments.length, newSegmentsLength);\n\t\t\t\tfor (let i = 0; i < iupdate; ++i) {\n\t\t\t\t\tsegments[i] = newSegments[i];\n\t\t\t\t}\n\n\t\t\t\tfor (let i = iupdate; i < newSegmentsLength; ++i) {\n\t\t\t\t\tsegments.push(newSegments[i]);\n\t\t\t\t}\n\n\t\t\t\tif (segments.length !== newSegmentsLength) {\n\t\t\t\t\tsegments.length = newSegmentsLength;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\tisDirty = true;\n\t\t\t} else {\n\t\t\t\tisUpdated = true;\n\t\t\t}\n\t\t}\n\n\t\t// Style\n\t\tif (newStyle != null) {\n\t\t\tif (style !== newStyle) {\n\t\t\t\tconst newStyleFormatter = newStyle & EShapePointsStyle.FORMATTER_MASK;\n\t\t\t\tif (styleFormatter !== newStyleFormatter) {\n\t\t\t\t\tisDirty = true;\n\t\t\t\t} else {\n\t\t\t\t\tif (formatter != null || styleFormatter) {\n\t\t\t\t\t\tconst styleClosed = style & EShapePointsStyle.CLOSED;\n\t\t\t\t\t\tconst newStyleClosed = newStyle & EShapePointsStyle.CLOSED;\n\t\t\t\t\t\tif (styleClosed !== newStyleClosed) {\n\t\t\t\t\t\t\tisDirty = true;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tisUpdated = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis._style = newStyle;\n\t\t\t}\n\t\t}\n\n\t\t//\n\t\tif (isUpdated || isDirty) {\n\t\t\tthis.toDirty(isDirty);\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected toDirty(revalidate: boolean): void {\n\t\tif (revalidate) {\n\t\t\tthis._id += 1;\n\t\t\tconst parent = this._parent;\n\t\t\tconst uploaded = parent.uploaded;\n\t\t\tif (uploaded) {\n\t\t\t\tif (uploaded.isCompatible(parent)) {\n\t\t\t\t\tparent.updateUploaded();\n\t\t\t\t} else {\n\t\t\t\t\tparent.toDirty();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tparent.updateUploaded();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._id += 1;\n\t\t\tthis._parent.updateUploaded();\n\t\t}\n\t}\n\n\tclone(parent: EShape): EShapeLinePoints {\n\t\treturn new EShapeLinePoints(parent).copy(this);\n\t}\n\n\ttoPoints(transform: Matrix): Point[] {\n\t\tconst result: Point[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\tconst point = new Point(values[i + 0], values[i + 1]);\n\t\t\tresult.push(transform.apply(point, point));\n\t\t}\n\t\treturn result;\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): number {\n\t\tconst values = JSON.stringify(this._values);\n\t\tconst segments = JSON.stringify(this._segments);\n\t\tconst style = this._style;\n\t\tlet markerId = -1;\n\t\tconst marker = this._marker;\n\t\tif (marker) {\n\t\t\tmarkerId = marker.serialize(manager);\n\t\t}\n\t\treturn manager.addResource(`[${values},${segments},${style},${markerId}]`);\n\t}\n\n\tdeserialize(resourceId: number, manager: EShapeResourceManagerDeserialization): void {\n\t\tconst resources = manager.resources;\n\t\tif (0 <= resourceId && resourceId < resources.length) {\n\t\t\tlet parsed = manager.getExtension<EShapeLinePointsSerialized>(resourceId);\n\t\t\tif (parsed == null) {\n\t\t\t\tparsed = JSON.parse(resources[resourceId]) as EShapeLinePointsSerialized;\n\t\t\t\tmanager.setExtension(resourceId, parsed);\n\t\t\t}\n\t\t\tthis.set(parsed[0], parsed[1], parsed[2]);\n\t\t\tconst markerId = parsed[3];\n\t\t\tif (markerId != null && 0 <= markerId) {\n\t\t\t\tthis.marker.deserialize(markerId, manager);\n\t\t\t}\n\t\t}\n\t}\n\n\tcalcHitPointAbs<RESULT>(\n\t\tx: number,\n\t\ty: number,\n\t\tax: number,\n\t\tay: number,\n\t\tthreshold: number,\n\t\ttoRange: EShapeLineBasePointsHitTesterToRange | null,\n\t\ttester: EShapeLineBasePointsHitTester<RESULT>,\n\t\tresult: RESULT\n\t): boolean {\n\t\tconst formatted = this.formatted;\n\t\tconst length = formatted.length;\n\t\tif (2 <= length) {\n\t\t\tconst values = formatted.values;\n\t\t\tconst segments = formatted.segments;\n\t\t\tconst style = formatted.style;\n\t\t\tlet istart = 0;\n\t\t\tlet iend = length;\n\t\t\tif (toRange) {\n\t\t\t\tconst work = EShapeLinePoints.WORK_RANGE;\n\t\t\t\ttoRange(x, y, threshold, values, work);\n\t\t\t\tistart = work[0];\n\t\t\t\tiend = work[1];\n\t\t\t}\n\t\t\tfor (let i = istart, imax = Math.min(iend, length - 1); i < imax; ++i) {\n\t\t\t\tif (toIndexOf(segments, i + 1) < 0) {\n\t\t\t\t\tconst iv = i << 1;\n\t\t\t\t\tconst p0x = values[iv + 0];\n\t\t\t\t\tconst p0y = values[iv + 1];\n\t\t\t\t\tconst p1x = values[iv + 2];\n\t\t\t\t\tconst p1y = values[iv + 3];\n\t\t\t\t\tif (tester(x, y, p0x, p0y, p1x, p1y, i, threshold, result)) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (2 < length && length <= iend && style & EShapePointsStyle.CLOSED) {\n\t\t\t\tif (toIndexOf(segments, 0) < 0) {\n\t\t\t\t\tconst i = length - 1;\n\t\t\t\t\tconst iv = i << 1;\n\t\t\t\t\tconst p0x = values[iv + 0];\n\t\t\t\t\tconst p0y = values[iv + 1];\n\t\t\t\t\tconst p1x = values[0];\n\t\t\t\t\tconst p1y = values[1];\n\t\t\t\t\tif (tester(x, y, p0x, p0y, p1x, p1y, i, threshold, result)) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n}\n"]}
@@ -11,6 +11,7 @@ import { EShapeFillImpl } from "./e-shape-fill-impl";
11
11
  import { EShapeStrokeImpl } from "./e-shape-stroke-impl";
12
12
  import { EShapeDataImpl } from "../e-shape-data-impl";
13
13
  import { EShapeTextImpl } from "./e-shape-text-impl";
14
+ import { toGradientSerialized } from "./to-gradient-serialized";
14
15
  var EShapePrimitive = /** @class */ (function (_super) {
15
16
  __extends(EShapePrimitive, _super);
16
17
  function EShapePrimitive(type) {
@@ -75,11 +76,9 @@ var EShapePrimitive = /** @class */ (function (_super) {
75
76
  if (this._image !== image) {
76
77
  if (image != null) {
77
78
  this._image = image;
78
- this.imageSrc = image.src;
79
79
  }
80
80
  else {
81
81
  this._image = undefined;
82
- this.imageSrc = undefined;
83
82
  }
84
83
  var parent_1 = this.parent;
85
84
  if (parent_1 != null) {
@@ -90,6 +89,20 @@ var EShapePrimitive = /** @class */ (function (_super) {
90
89
  enumerable: false,
91
90
  configurable: true
92
91
  });
92
+ EShapePrimitive.prototype.serializeImage = function (manager) {
93
+ var image = this._image;
94
+ return image != null ? manager.addResource(image.url) : -1;
95
+ };
96
+ EShapePrimitive.prototype.serializeGradient = function (manager) {
97
+ var gradient = this.gradient;
98
+ if (gradient != null) {
99
+ if (gradient.serialized == null) {
100
+ gradient.serialized = toGradientSerialized(gradient);
101
+ }
102
+ return manager.addResource(gradient.serialized);
103
+ }
104
+ return -1;
105
+ };
93
106
  return EShapePrimitive;
94
107
  }(EShapeBase));
95
108
  export { EShapePrimitive };
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-primitive.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-primitive.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint, ObservablePoint } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeFillImpl } from \"./e-shape-fill-impl\";\nimport { EShapeStrokeImpl } from \"./e-shape-stroke-impl\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\n\nexport abstract class EShapePrimitive extends EShapeBase {\n\treadonly size: IPoint;\n\treadonly fill: EShapeFill;\n\treadonly stroke: EShapeStroke;\n\tprotected _radius: number;\n\tprotected _corner: EShapeCorner;\n\tprotected _image?: HTMLImageElement;\n\tgradient?: EShapeGradientLike;\n\treadonly text: EShapeText;\n\t/** @deprecated in favor of {@link data} */\n\treadonly tag: EShapeData;\n\treadonly data: EShapeData;\n\n\tconstructor(type: EShapeType) {\n\t\tsuper(type);\n\t\tthis.size = this.newSize();\n\t\tthis.fill = this.newFill();\n\t\tthis.stroke = this.newStroke();\n\t\tthis._radius = EShapeDefaults.RADIUS;\n\t\tthis._corner = EShapeCorner.ALL;\n\t\tconst data = new EShapeDataImpl();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.text = this.newText();\n\t}\n\n\tprotected newSize(): IPoint {\n\t\treturn new ObservablePoint(\n\t\t\t() => {\n\t\t\t\tthis.onSizeChange();\n\t\t\t},\n\t\t\tundefined,\n\t\t\tEShapeDefaults.SIZE_X,\n\t\t\tEShapeDefaults.SIZE_Y\n\t\t);\n\t}\n\n\tprotected newFill(): EShapeFill {\n\t\treturn new EShapeFillImpl(this, true, EShapeDefaults.FILL_COLOR, EShapeDefaults.FILL_ALPHA);\n\t}\n\n\tprotected newStroke(): EShapeStroke {\n\t\treturn new EShapeStrokeImpl(\n\t\t\tthis,\n\t\t\ttrue,\n\t\t\tEShapeDefaults.STROKE_COLOR,\n\t\t\tEShapeDefaults.STROKE_ALPHA,\n\t\t\tEShapeDefaults.STROKE_WIDTH,\n\t\t\tEShapeDefaults.STROKE_ALIGN,\n\t\t\tEShapeDefaults.STROKE_SIDE,\n\t\t\tEShapeDefaults.STROKE_STYLE\n\t\t);\n\t}\n\n\tprotected newText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tabstract clone(): EShape;\n\n\tget corner(): number {\n\t\treturn this._corner;\n\t}\n\n\tset corner(corner: number) {\n\t\tif (this._corner !== corner) {\n\t\t\tthis._corner = corner;\n\t\t\tthis.updateUploaded();\n\t\t}\n\t}\n\n\tget radius(): number {\n\t\treturn this._radius;\n\t}\n\n\tset radius(radius: number) {\n\t\tif (this._radius !== radius) {\n\t\t\tthis._radius = radius;\n\t\t\tthis.updateUploaded();\n\t\t}\n\t}\n\n\tget image(): HTMLImageElement | undefined {\n\t\treturn this._image;\n\t}\n\n\tset image(image: HTMLImageElement | undefined) {\n\t\tif (this._image !== image) {\n\t\t\tif (image != null) {\n\t\t\t\tthis._image = image;\n\t\t\t\tthis.imageSrc = image.src;\n\t\t\t} else {\n\t\t\t\tthis._image = undefined;\n\t\t\t\tthis.imageSrc = undefined;\n\t\t\t}\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.toDirty();\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-primitive.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-primitive.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint, ObservablePoint } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeImageLike } from \"../e-shape-image-like\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBase } from \"./e-shape-base\";\nimport { EShapeFillImpl } from \"./e-shape-fill-impl\";\nimport { EShapeStrokeImpl } from \"./e-shape-stroke-impl\";\nimport { EShapeDataImpl } from \"../e-shape-data-impl\";\nimport { EShapeTextImpl } from \"./e-shape-text-impl\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { toGradientSerialized } from \"./to-gradient-serialized\";\n\nexport abstract class EShapePrimitive extends EShapeBase {\n\treadonly size: IPoint;\n\treadonly fill: EShapeFill;\n\treadonly stroke: EShapeStroke;\n\tprotected _radius: number;\n\tprotected _corner: EShapeCorner;\n\tprotected _image?: EShapeImageLike;\n\tgradient?: EShapeGradientLike;\n\treadonly text: EShapeText;\n\t/** @deprecated in favor of {@link data} */\n\treadonly tag: EShapeData;\n\treadonly data: EShapeData;\n\n\tconstructor(type: EShapeType) {\n\t\tsuper(type);\n\t\tthis.size = this.newSize();\n\t\tthis.fill = this.newFill();\n\t\tthis.stroke = this.newStroke();\n\t\tthis._radius = EShapeDefaults.RADIUS;\n\t\tthis._corner = EShapeCorner.ALL;\n\t\tconst data = new EShapeDataImpl();\n\t\tthis.data = data;\n\t\tthis.tag = data;\n\t\tthis.text = this.newText();\n\t}\n\n\tprotected newSize(): IPoint {\n\t\treturn new ObservablePoint(\n\t\t\t() => {\n\t\t\t\tthis.onSizeChange();\n\t\t\t},\n\t\t\tundefined,\n\t\t\tEShapeDefaults.SIZE_X,\n\t\t\tEShapeDefaults.SIZE_Y\n\t\t);\n\t}\n\n\tprotected newFill(): EShapeFill {\n\t\treturn new EShapeFillImpl(this, true, EShapeDefaults.FILL_COLOR, EShapeDefaults.FILL_ALPHA);\n\t}\n\n\tprotected newStroke(): EShapeStroke {\n\t\treturn new EShapeStrokeImpl(\n\t\t\tthis,\n\t\t\ttrue,\n\t\t\tEShapeDefaults.STROKE_COLOR,\n\t\t\tEShapeDefaults.STROKE_ALPHA,\n\t\t\tEShapeDefaults.STROKE_WIDTH,\n\t\t\tEShapeDefaults.STROKE_ALIGN,\n\t\t\tEShapeDefaults.STROKE_SIDE,\n\t\t\tEShapeDefaults.STROKE_STYLE\n\t\t);\n\t}\n\n\tprotected newText(): EShapeText {\n\t\treturn new EShapeTextImpl(\n\t\t\tthis,\n\t\t\tEShapeDefaults.TEXT_VALUE,\n\t\t\tEShapeDefaults.TEXT_COLOR,\n\t\t\tEShapeDefaults.TEXT_ALPHA,\n\t\t\tEShapeDefaults.TEXT_FAMILY,\n\t\t\tEShapeDefaults.TEXT_SIZE\n\t\t);\n\t}\n\n\tabstract clone(): EShape;\n\n\tget corner(): number {\n\t\treturn this._corner;\n\t}\n\n\tset corner(corner: number) {\n\t\tif (this._corner !== corner) {\n\t\t\tthis._corner = corner;\n\t\t\tthis.updateUploaded();\n\t\t}\n\t}\n\n\tget radius(): number {\n\t\treturn this._radius;\n\t}\n\n\tset radius(radius: number) {\n\t\tif (this._radius !== radius) {\n\t\t\tthis._radius = radius;\n\t\t\tthis.updateUploaded();\n\t\t}\n\t}\n\n\toverride get image(): EShapeImageLike | undefined {\n\t\treturn this._image;\n\t}\n\n\toverride set image(image: EShapeImageLike | undefined) {\n\t\tif (this._image !== image) {\n\t\t\tif (image != null) {\n\t\t\t\tthis._image = image;\n\t\t\t} else {\n\t\t\t\tthis._image = undefined;\n\t\t\t}\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.toDirty();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride serializeImage(manager: EShapeResourceManagerSerialization): number {\n\t\tconst image = this._image;\n\t\treturn image != null ? manager.addResource(image.url) : -1;\n\t}\n\n\toverride serializeGradient(manager: EShapeResourceManagerSerialization): number {\n\t\tconst gradient = this.gradient;\n\t\tif (gradient != null) {\n\t\t\tif (gradient.serialized == null) {\n\t\t\t\tgradient.serialized = toGradientSerialized(gradient);\n\t\t\t}\n\t\t\treturn manager.addResource(gradient.serialized);\n\t\t}\n\t\treturn -1;\n\t}\n}\n"]}