@wcardinal/wcardinal-ui 0.372.0 → 0.374.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 (372) hide show
  1. package/dist/types/wcardinal/ui/d-align-horizontal.d.ts +1 -1
  2. package/dist/types/wcardinal/ui/d-align-vertical.d.ts +1 -1
  3. package/dist/types/wcardinal/ui/d-align-with.d.ts +1 -1
  4. package/dist/types/wcardinal/ui/d-animation.d.ts +5 -5
  5. package/dist/types/wcardinal/ui/d-base-interactive.d.ts +1 -1
  6. package/dist/types/wcardinal/ui/d-base-point.d.ts +1 -1
  7. package/dist/types/wcardinal/ui/d-base-state-matcher.d.ts +1 -1
  8. package/dist/types/wcardinal/ui/d-base-state-set-impl-observable.d.ts +1 -1
  9. package/dist/types/wcardinal/ui/d-base.d.ts +1 -1
  10. package/dist/types/wcardinal/ui/d-border-mask.d.ts +1 -1
  11. package/dist/types/wcardinal/ui/d-button-base-when.d.ts +1 -1
  12. package/dist/types/wcardinal/ui/d-button-file.d.ts +1 -1
  13. package/dist/types/wcardinal/ui/d-button-select.d.ts +2 -2
  14. package/dist/types/wcardinal/ui/d-chart-axis-base-options.d.ts +4 -4
  15. package/dist/types/wcardinal/ui/d-chart-axis-position.d.ts +1 -1
  16. package/dist/types/wcardinal/ui/d-chart-axis-tick-position.d.ts +1 -1
  17. package/dist/types/wcardinal/ui/d-chart-coordinate-direction.d.ts +1 -1
  18. package/dist/types/wcardinal/ui/d-chart-coordinate-tick-major-step-function.d.ts +1 -1
  19. package/dist/types/wcardinal/ui/d-chart-coordinate-tick-minor-step-function.d.ts +1 -1
  20. package/dist/types/wcardinal/ui/d-chart-selection-shape.d.ts +1 -1
  21. package/dist/types/wcardinal/ui/d-chart-selection.d.ts +2 -2
  22. package/dist/types/wcardinal/ui/d-chart-series-scalar.d.ts +1 -1
  23. package/dist/types/wcardinal/ui/d-color-type.d.ts +1 -1
  24. package/dist/types/wcardinal/ui/d-coordinate.d.ts +3 -3
  25. package/dist/types/wcardinal/ui/d-corner-mask.d.ts +1 -1
  26. package/dist/types/wcardinal/ui/d-diagram-base-controller.d.ts +1 -1
  27. package/dist/types/wcardinal/ui/d-diagram-canvas-editor-snap.d.ts +1 -1
  28. package/dist/types/wcardinal/ui/d-diagram-canvas-tile.d.ts +1 -1
  29. package/dist/types/wcardinal/ui/d-diagram-data-mapper.d.ts +1 -1
  30. package/dist/types/wcardinal/ui/d-diagram-layers.d.ts +1 -1
  31. package/dist/types/wcardinal/ui/d-diagram-serialized.d.ts +6 -6
  32. package/dist/types/wcardinal/ui/d-dialog-close-on.d.ts +1 -1
  33. package/dist/types/wcardinal/ui/d-dialog-gesture-mode.d.ts +1 -1
  34. package/dist/types/wcardinal/ui/d-dialog-gesture.d.ts +1 -1
  35. package/dist/types/wcardinal/ui/d-dialog-mode.d.ts +1 -1
  36. package/dist/types/wcardinal/ui/d-dialog-select-search-dismissable.d.ts +1 -1
  37. package/dist/types/wcardinal/ui/d-dialog-select-search-function.d.ts +1 -1
  38. package/dist/types/wcardinal/ui/d-dialog-select.d.ts +2 -2
  39. package/dist/types/wcardinal/ui/d-dynamic-text-style-word-wrap.d.ts +1 -1
  40. package/dist/types/wcardinal/ui/d-dynamic-text-style.d.ts +1 -1
  41. package/dist/types/wcardinal/ui/d-font.d.ts +3 -3
  42. package/dist/types/wcardinal/ui/d-item-updater.d.ts +2 -2
  43. package/dist/types/wcardinal/ui/d-layout-clear-type.d.ts +1 -1
  44. package/dist/types/wcardinal/ui/d-layout-direction.d.ts +1 -1
  45. package/dist/types/wcardinal/ui/d-link-menu-item-id.d.ts +1 -1
  46. package/dist/types/wcardinal/ui/d-link-menu.d.ts +1 -1
  47. package/dist/types/wcardinal/ui/d-link-target.d.ts +1 -1
  48. package/dist/types/wcardinal/ui/d-link.d.ts +4 -4
  49. package/dist/types/wcardinal/ui/d-list-data-selection.d.ts +1 -1
  50. package/dist/types/wcardinal/ui/d-list-data.d.ts +1 -1
  51. package/dist/types/wcardinal/ui/d-list-item-accessor.d.ts +6 -6
  52. package/dist/types/wcardinal/ui/d-map-tile-url-builder.d.ts +1 -1
  53. package/dist/types/wcardinal/ui/d-menu-item-link.d.ts +2 -2
  54. package/dist/types/wcardinal/ui/d-menu-item-options-union.d.ts +1 -1
  55. package/dist/types/wcardinal/ui/d-menu-sided-selection.d.ts +1 -1
  56. package/dist/types/wcardinal/ui/d-menus.d.ts +2 -2
  57. package/dist/types/wcardinal/ui/d-on-options.d.ts +2 -2
  58. package/dist/types/wcardinal/ui/d-picker-datetime-mask.d.ts +1 -1
  59. package/dist/types/wcardinal/ui/d-picker-datetime.d.ts +3 -3
  60. package/dist/types/wcardinal/ui/d-scalar-expression.d.ts +7 -7
  61. package/dist/types/wcardinal/ui/d-scalar-function.d.ts +1 -1
  62. package/dist/types/wcardinal/ui/d-state-aware.d.ts +3 -3
  63. package/dist/types/wcardinal/ui/d-table-body-cell-link.d.ts +2 -2
  64. package/dist/types/wcardinal/ui/d-table-body-cell-options.d.ts +1 -1
  65. package/dist/types/wcardinal/ui/d-table-body-cell.d.ts +1 -1
  66. package/dist/types/wcardinal/ui/d-table-body-row.d.ts +1 -1
  67. package/dist/types/wcardinal/ui/d-table-column-editing.d.ts +4 -4
  68. package/dist/types/wcardinal/ui/d-table-column-formatter.d.ts +1 -1
  69. package/dist/types/wcardinal/ui/d-table-column-getter.d.ts +1 -1
  70. package/dist/types/wcardinal/ui/d-table-column-renderable.d.ts +1 -1
  71. package/dist/types/wcardinal/ui/d-table-column-selecting.d.ts +2 -2
  72. package/dist/types/wcardinal/ui/d-table-column-setter.d.ts +1 -1
  73. package/dist/types/wcardinal/ui/d-table-column-state.d.ts +1 -1
  74. package/dist/types/wcardinal/ui/d-table-column-type.d.ts +1 -1
  75. package/dist/types/wcardinal/ui/d-table-column-update.d.ts +1 -1
  76. package/dist/types/wcardinal/ui/d-table-data-filter.d.ts +2 -2
  77. package/dist/types/wcardinal/ui/d-table-data-selection.d.ts +3 -3
  78. package/dist/types/wcardinal/ui/d-table-data-sorter.d.ts +3 -3
  79. package/dist/types/wcardinal/ui/d-table-data-tree-item-accessor.d.ts +3 -3
  80. package/dist/types/wcardinal/ui/d-table-data-tree-selection.d.ts +1 -1
  81. package/dist/types/wcardinal/ui/d-table-data.d.ts +3 -3
  82. package/dist/types/wcardinal/ui/d-tree-data-mapped-impl.d.ts +3 -2
  83. package/dist/types/wcardinal/ui/d-tree-data-selection.d.ts +1 -1
  84. package/dist/types/wcardinal/ui/d-tree-node-iteratee.d.ts +1 -1
  85. package/dist/types/wcardinal/ui/d-view-constraint.d.ts +1 -1
  86. package/dist/types/wcardinal/ui/d-view-to-target.d.ts +1 -1
  87. package/dist/types/wcardinal/ui/d-view.d.ts +1 -1
  88. package/dist/types/wcardinal/ui/shape/action/e-shape-action-expression-with-parameter.d.ts +1 -1
  89. package/dist/types/wcardinal/ui/shape/action/e-shape-action-expression.d.ts +1 -1
  90. package/dist/types/wcardinal/ui/shape/action/e-shape-action-open-dialog-opener.d.ts +1 -1
  91. package/dist/types/wcardinal/ui/shape/action/e-shape-action-open-opener.d.ts +1 -1
  92. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-blink-type.d.ts +1 -1
  93. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-blink.d.ts +1 -1
  94. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-brightness.d.ts +2 -2
  95. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-code.d.ts +2 -2
  96. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-target.d.ts +1 -1
  97. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-type-legacy.d.ts +1 -1
  98. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color-type.d.ts +1 -1
  99. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-color.d.ts +3 -3
  100. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-cursor.d.ts +1 -1
  101. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-text-type.d.ts +1 -1
  102. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-change-text.d.ts +1 -1
  103. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-deserializers.d.ts +1 -1
  104. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-emit-event.d.ts +1 -1
  105. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-gesture-operation-type.d.ts +1 -1
  106. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-gesture-type.d.ts +1 -1
  107. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-gesture.d.ts +3 -3
  108. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-misc-execute.d.ts +1 -1
  109. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-misc-type.d.ts +1 -1
  110. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-misc.d.ts +2 -2
  111. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-on-input-action.d.ts +1 -1
  112. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-open-dialog-extension.d.ts +3 -3
  113. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-open-dialog-type.d.ts +1 -1
  114. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-open-dialog.d.ts +5 -5
  115. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-open-type.d.ts +1 -1
  116. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-open.d.ts +3 -3
  117. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-show-hide-layer.d.ts +1 -1
  118. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-show-hide-shape.d.ts +1 -1
  119. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-show-hide-type.d.ts +1 -1
  120. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-show-hide.d.ts +1 -1
  121. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-move-type.d.ts +1 -1
  122. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-move.d.ts +1 -1
  123. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-resize-type.d.ts +1 -1
  124. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-resize.d.ts +1 -1
  125. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate-type.d.ts +1 -1
  126. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-rotate.d.ts +1 -1
  127. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-transform-type.d.ts +1 -1
  128. package/dist/types/wcardinal/ui/shape/action/e-shape-action-value-type.d.ts +1 -1
  129. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-edge-side.d.ts +1 -1
  130. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-edge-type.d.ts +1 -1
  131. package/dist/types/wcardinal/ui/shape/e-shape-acceptor-type.d.ts +1 -1
  132. package/dist/types/wcardinal/ui/shape/e-shape-capability.d.ts +1 -1
  133. package/dist/types/wcardinal/ui/shape/e-shape-connector-body.d.ts +1 -1
  134. package/dist/types/wcardinal/ui/shape/e-shape-connector-container-impl.d.ts +1 -1
  135. package/dist/types/wcardinal/ui/shape/e-shape-connector-container.d.ts +2 -1
  136. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-container-impl.d.ts +2 -1
  137. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-container.d.ts +3 -2
  138. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-impl.d.ts +1 -1
  139. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge.d.ts +2 -2
  140. package/dist/types/wcardinal/ui/shape/e-shape-copy-part.d.ts +1 -1
  141. package/dist/types/wcardinal/ui/shape/e-shape-corner.d.ts +1 -1
  142. package/dist/types/wcardinal/ui/shape/e-shape-data-mapping.d.ts +1 -1
  143. package/dist/types/wcardinal/ui/shape/e-shape-data-value-formatter.d.ts +1 -1
  144. package/dist/types/wcardinal/ui/shape/e-shape-data-value-order.d.ts +1 -1
  145. package/dist/types/wcardinal/ui/shape/e-shape-data-value-range.d.ts +1 -1
  146. package/dist/types/wcardinal/ui/shape/e-shape-data-value-scope.d.ts +1 -1
  147. package/dist/types/wcardinal/ui/shape/e-shape-data-value-state.d.ts +1 -1
  148. package/dist/types/wcardinal/ui/shape/e-shape-data-value-type.d.ts +1 -1
  149. package/dist/types/wcardinal/ui/shape/e-shape-deleter.d.ts +2 -0
  150. package/dist/types/wcardinal/ui/shape/e-shape-deserializers.d.ts +2 -2
  151. package/dist/types/wcardinal/ui/shape/e-shape-points-formatted.d.ts +2 -2
  152. package/dist/types/wcardinal/ui/shape/e-shape-points-formatter.d.ts +1 -1
  153. package/dist/types/wcardinal/ui/shape/e-shape-points-marker-container.d.ts +1 -1
  154. package/dist/types/wcardinal/ui/shape/e-shape-points-marker-type.d.ts +1 -1
  155. package/dist/types/wcardinal/ui/shape/e-shape-points-marker.d.ts +1 -1
  156. package/dist/types/wcardinal/ui/shape/e-shape-points-style.d.ts +1 -1
  157. package/dist/types/wcardinal/ui/shape/e-shape-points-styles.d.ts +1 -1
  158. package/dist/types/wcardinal/ui/shape/e-shape-resource-manager-deserialization-mode.d.ts +1 -1
  159. package/dist/types/wcardinal/ui/shape/e-shape-runtime-reset.d.ts +1 -1
  160. package/dist/types/wcardinal/ui/shape/e-shape-runtimes.d.ts +1 -1
  161. package/dist/types/wcardinal/ui/shape/e-shape-stroke-side.d.ts +1 -1
  162. package/dist/types/wcardinal/ui/shape/e-shape-stroke-style.d.ts +1 -1
  163. package/dist/types/wcardinal/ui/shape/e-shape-text-align-horizontal.d.ts +1 -1
  164. package/dist/types/wcardinal/ui/shape/e-shape-text-align-vertical.d.ts +1 -1
  165. package/dist/types/wcardinal/ui/shape/e-shape-text-direction.d.ts +1 -1
  166. package/dist/types/wcardinal/ui/shape/e-shape-text.d.ts +3 -3
  167. package/dist/types/wcardinal/ui/shape/e-shape-type.d.ts +1 -1
  168. package/dist/types/wcardinal/ui/shape/e-shape-uploaded-constructor.d.ts +1 -1
  169. package/dist/types/wcardinal/ui/shape/e-shape-uploadeds.d.ts +1 -1
  170. package/dist/types/wcardinal/ui/shape/e-shape.d.ts +6 -8
  171. package/dist/types/wcardinal/ui/shape/variant/build-line.d.ts +2 -2
  172. package/dist/types/wcardinal/ui/shape/variant/create-line-of-any-uploaded.d.ts +1 -1
  173. package/dist/types/wcardinal/ui/shape/variant/deserialize-bar.d.ts +1 -1
  174. package/dist/types/wcardinal/ui/shape/variant/deserialize-button.d.ts +1 -1
  175. package/dist/types/wcardinal/ui/shape/variant/deserialize-circle.d.ts +1 -1
  176. package/dist/types/wcardinal/ui/shape/variant/deserialize-connector-elbow.d.ts +1 -1
  177. package/dist/types/wcardinal/ui/shape/variant/deserialize-connector-line.d.ts +1 -1
  178. package/dist/types/wcardinal/ui/shape/variant/deserialize-embedded-acceptor-edge.d.ts +1 -1
  179. package/dist/types/wcardinal/ui/shape/variant/deserialize-group-shadowed.d.ts +1 -1
  180. package/dist/types/wcardinal/ui/shape/variant/deserialize-group.d.ts +1 -1
  181. package/dist/types/wcardinal/ui/shape/variant/deserialize-image-sdf.d.ts +1 -1
  182. package/dist/types/wcardinal/ui/shape/variant/deserialize-image.d.ts +1 -1
  183. package/dist/types/wcardinal/ui/shape/variant/deserialize-label.d.ts +1 -1
  184. package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-circles.d.ts +1 -1
  185. package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-rectangle-roundeds.d.ts +1 -1
  186. package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-rectangles.d.ts +1 -1
  187. package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-triangle-roundeds.d.ts +1 -1
  188. package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-triangles.d.ts +1 -1
  189. package/dist/types/wcardinal/ui/shape/variant/deserialize-line.d.ts +1 -1
  190. package/dist/types/wcardinal/ui/shape/variant/deserialize-null.d.ts +1 -1
  191. package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle-pivoted.d.ts +1 -1
  192. package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle-rounded.d.ts +1 -1
  193. package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle.d.ts +1 -1
  194. package/dist/types/wcardinal/ui/shape/variant/deserialize-semicircle.d.ts +1 -1
  195. package/dist/types/wcardinal/ui/shape/variant/deserialize-triangle-rounded.d.ts +1 -1
  196. package/dist/types/wcardinal/ui/shape/variant/deserialize-triangle.d.ts +1 -1
  197. package/dist/types/wcardinal/ui/shape/variant/e-shape-bar-position.d.ts +1 -1
  198. package/dist/types/wcardinal/ui/shape/variant/e-shape-base.d.ts +10 -13
  199. package/dist/types/wcardinal/ui/shape/variant/e-shape-connector-line.d.ts +6 -5
  200. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-size-parent.d.ts +4 -3
  201. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-base-hit-part.d.ts +1 -1
  202. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-base-points-hit-tester-to-range.d.ts +1 -1
  203. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-base-points-hit-tester-to-threshold.d.ts +1 -1
  204. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-base-points-hit-tester.d.ts +1 -1
  205. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-any-points-hit-tester-to-range.d.ts +1 -1
  206. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-any-points-hit-tester-to-threshold.d.ts +1 -1
  207. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-any-points-hit-tester.d.ts +1 -1
  208. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-any-value.d.ts +1 -1
  209. package/dist/types/wcardinal/ui/shape/variant/e-shape-line-points.d.ts +1 -1
  210. package/dist/types/wcardinal/ui/shape/variant/e-shape-lock-part.d.ts +8 -0
  211. package/dist/types/wcardinal/ui/shape/variant/e-shape-lock.d.ts +9 -0
  212. package/dist/types/wcardinal/ui/shape/variant/index.d.ts +2 -0
  213. package/dist/types/wcardinal/ui/snapper/e-snapper-target-value.d.ts +1 -1
  214. package/dist/types/wcardinal/ui/snapper/e-snapper.d.ts +1 -1
  215. package/dist/types/wcardinal/ui/util/deep-partial.d.ts +1 -1
  216. package/dist/types/wcardinal/ui/util/dynamic-font-atlas-character-type.d.ts +1 -1
  217. package/dist/types/wcardinal/ui/util/dynamic-font-atlas-characters.d.ts +1 -1
  218. package/dist/types/wcardinal/ui/util/dynamic-sdf-font-generator.d.ts +1 -1
  219. package/dist/types/wcardinal/ui/util/number-formatter-function.d.ts +1 -1
  220. package/dist/types/wcardinal/ui/util/util-attach.d.ts +1 -1
  221. package/dist/types/wcardinal/ui/util/util-click-outside.d.ts +1 -1
  222. package/dist/types/wcardinal/ui/util/util-curve.d.ts +2 -2
  223. package/dist/types/wcardinal/ui/util/util-file-opener.d.ts +2 -2
  224. package/dist/types/wcardinal/ui/util/util-gesture-easing.d.ts +2 -2
  225. package/dist/types/wcardinal/ui/util/util-gesture-mode.d.ts +1 -1
  226. package/dist/types/wcardinal/ui/util/util-gesture-modifier.d.ts +1 -1
  227. package/dist/types/wcardinal/ui/util/util-gesture-modifiers.d.ts +1 -1
  228. package/dist/types/wcardinal/ui/util/util-gesture.d.ts +7 -7
  229. package/dist/types/wcardinal/ui/util/util-html-element-when.d.ts +1 -1
  230. package/dist/types/wcardinal/ui/util/util-html-element.d.ts +7 -7
  231. package/dist/types/wcardinal/ui/util/util-pointer-event.d.ts +2 -2
  232. package/dist/types/wcardinal/ui/util/util-wheel-event.d.ts +2 -2
  233. package/dist/wcardinal/ui/d-animation-base.js +1 -2
  234. package/dist/wcardinal/ui/d-animation-base.js.map +1 -1
  235. package/dist/wcardinal/ui/d-animation-empty.js +1 -2
  236. package/dist/wcardinal/ui/d-animation-empty.js.map +1 -1
  237. package/dist/wcardinal/ui/d-animation-fade-in.js +1 -2
  238. package/dist/wcardinal/ui/d-animation-fade-in.js.map +1 -1
  239. package/dist/wcardinal/ui/d-base.js +1 -2
  240. package/dist/wcardinal/ui/d-base.js.map +1 -1
  241. package/dist/wcardinal/ui/d-button-select.js +1 -2
  242. package/dist/wcardinal/ui/d-button-select.js.map +1 -1
  243. package/dist/wcardinal/ui/d-chart-axis-base-bar.js +3 -2
  244. package/dist/wcardinal/ui/d-chart-axis-base-bar.js.map +1 -1
  245. package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js +7 -6
  246. package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js.map +1 -1
  247. package/dist/wcardinal/ui/d-chart-axis-guide-simple-shape-impl.js +7 -6
  248. package/dist/wcardinal/ui/d-chart-axis-guide-simple-shape-impl.js.map +1 -1
  249. package/dist/wcardinal/ui/d-chart-selection-simple.js +1 -2
  250. package/dist/wcardinal/ui/d-chart-selection-simple.js.map +1 -1
  251. package/dist/wcardinal/ui/d-chart-selection-sub-impl.js +1 -2
  252. package/dist/wcardinal/ui/d-chart-selection-sub-impl.js.map +1 -1
  253. package/dist/wcardinal/ui/d-chart-series-line-of-any.js +4 -4
  254. package/dist/wcardinal/ui/d-chart-series-line-of-any.js.map +1 -1
  255. package/dist/wcardinal/ui/d-chart-series-line.js +4 -4
  256. package/dist/wcardinal/ui/d-chart-series-line.js.map +1 -1
  257. package/dist/wcardinal/ui/d-chart-series-linear.js +3 -2
  258. package/dist/wcardinal/ui/d-chart-series-linear.js.map +1 -1
  259. package/dist/wcardinal/ui/d-diagram-base.js +1 -2
  260. package/dist/wcardinal/ui/d-diagram-base.js.map +1 -1
  261. package/dist/wcardinal/ui/d-diagram-canvas-base.js +1 -2
  262. package/dist/wcardinal/ui/d-diagram-canvas-base.js.map +1 -1
  263. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js +5 -4
  264. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js.map +1 -1
  265. package/dist/wcardinal/ui/d-dialog-processing.js +1 -2
  266. package/dist/wcardinal/ui/d-dialog-processing.js.map +1 -1
  267. package/dist/wcardinal/ui/d-dialog-select.js +1 -2
  268. package/dist/wcardinal/ui/d-dialog-select.js.map +1 -1
  269. package/dist/wcardinal/ui/d-menu-item-base.js +1 -2
  270. package/dist/wcardinal/ui/d-menu-item-base.js.map +1 -1
  271. package/dist/wcardinal/ui/d-menu-sided-selection.js +1 -2
  272. package/dist/wcardinal/ui/d-menu-sided-selection.js.map +1 -1
  273. package/dist/wcardinal/ui/d-menu-sided.js +1 -2
  274. package/dist/wcardinal/ui/d-menu-sided.js.map +1 -1
  275. package/dist/wcardinal/ui/d-pagination.js +1 -2
  276. package/dist/wcardinal/ui/d-pagination.js.map +1 -1
  277. package/dist/wcardinal/ui/d-pane.js +1 -2
  278. package/dist/wcardinal/ui/d-pane.js.map +1 -1
  279. package/dist/wcardinal/ui/d-scroll-bar.js +1 -2
  280. package/dist/wcardinal/ui/d-scroll-bar.js.map +1 -1
  281. package/dist/wcardinal/ui/d-slider-value.js +1 -2
  282. package/dist/wcardinal/ui/d-slider-value.js.map +1 -1
  283. package/dist/wcardinal/ui/d-table-body-cell-button.js +1 -2
  284. package/dist/wcardinal/ui/d-table-body-cell-button.js.map +1 -1
  285. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js +1 -2
  286. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  287. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js +1 -2
  288. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  289. package/dist/wcardinal/ui/d-table-body.js +1 -2
  290. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  291. package/dist/wcardinal/ui/d-table-category.js +1 -2
  292. package/dist/wcardinal/ui/d-table-category.js.map +1 -1
  293. package/dist/wcardinal/ui/d-table-data-list-selection.js +1 -2
  294. package/dist/wcardinal/ui/d-table-data-list-selection.js.map +1 -1
  295. package/dist/wcardinal/ui/d-table-data-tree-selection-impl.js +1 -2
  296. package/dist/wcardinal/ui/d-table-data-tree-selection-impl.js.map +1 -1
  297. package/dist/wcardinal/ui/d-table-header.js +1 -2
  298. package/dist/wcardinal/ui/d-table-header.js.map +1 -1
  299. package/dist/wcardinal/ui/d-table-row.js +1 -2
  300. package/dist/wcardinal/ui/d-table-row.js.map +1 -1
  301. package/dist/wcardinal/ui/d-tree-data-mapped-impl.js.map +1 -1
  302. package/dist/wcardinal/ui/d-tree-item-button.js +1 -2
  303. package/dist/wcardinal/ui/d-tree-item-button.js.map +1 -1
  304. package/dist/wcardinal/ui/d-view-impl.js +1 -2
  305. package/dist/wcardinal/ui/d-view-impl.js.map +1 -1
  306. package/dist/wcardinal/ui/shape/e-shape-capability.js +1 -1
  307. package/dist/wcardinal/ui/shape/e-shape-capability.js.map +1 -1
  308. package/dist/wcardinal/ui/shape/e-shape-connector-container-impl.js +4 -2
  309. package/dist/wcardinal/ui/shape/e-shape-connector-container-impl.js.map +1 -1
  310. package/dist/wcardinal/ui/shape/e-shape-connector-container.js.map +1 -1
  311. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js +3 -3
  312. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js.map +1 -1
  313. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container.js.map +1 -1
  314. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js +2 -2
  315. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js.map +1 -1
  316. package/dist/wcardinal/ui/shape/e-shape-connector-edge.js.map +1 -1
  317. package/dist/wcardinal/ui/shape/e-shape-deleter.js +18 -2
  318. package/dist/wcardinal/ui/shape/e-shape-deleter.js.map +1 -1
  319. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js +5 -4
  320. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js.map +1 -1
  321. package/dist/wcardinal/ui/shape/e-shape-transforms.js +5 -4
  322. package/dist/wcardinal/ui/shape/e-shape-transforms.js.map +1 -1
  323. package/dist/wcardinal/ui/shape/e-shape.js.map +1 -1
  324. package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js +3 -2
  325. package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js.map +1 -1
  326. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +59 -73
  327. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  328. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js +18 -18
  329. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js.map +1 -1
  330. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-editor.js +33 -26
  331. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-editor.js.map +1 -1
  332. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-layout.js +3 -2
  333. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-layout.js.map +1 -1
  334. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-parent.js.map +1 -1
  335. package/dist/wcardinal/ui/shape/variant/e-shape-group.js +2 -0
  336. package/dist/wcardinal/ui/shape/variant/e-shape-group.js.map +1 -1
  337. package/dist/wcardinal/ui/shape/variant/e-shape-lock-part.js +8 -0
  338. package/dist/wcardinal/ui/shape/variant/e-shape-lock-part.js.map +1 -0
  339. package/dist/wcardinal/ui/shape/variant/e-shape-lock.js +31 -0
  340. package/dist/wcardinal/ui/shape/variant/e-shape-lock.js.map +1 -0
  341. package/dist/wcardinal/ui/shape/variant/index.js +2 -0
  342. package/dist/wcardinal/ui/shape/variant/index.js.map +1 -1
  343. package/dist/wcardinal/ui/shape/variant/to-resized.js +3 -2
  344. package/dist/wcardinal/ui/shape/variant/to-resized.js.map +1 -1
  345. package/dist/wcardinal/ui/snapper/e-snapper-grid.js +1 -2
  346. package/dist/wcardinal/ui/snapper/e-snapper-grid.js.map +1 -1
  347. package/dist/wcardinal/ui/snapper/e-snapper-target.js +1 -2
  348. package/dist/wcardinal/ui/snapper/e-snapper-target.js.map +1 -1
  349. package/dist/wcardinal/ui/snapper/e-snapper.js +1 -2
  350. package/dist/wcardinal/ui/snapper/e-snapper.js.map +1 -1
  351. package/dist/wcardinal/ui/theme/dark/d-theme-dark-atlas.js +1 -1
  352. package/dist/wcardinal/ui/theme/dark/d-theme-dark-atlas.js.map +1 -1
  353. package/dist/wcardinal/ui/theme/dark/d-theme-dark-table-body-cells.js.map +1 -1
  354. package/dist/wcardinal/ui/theme/white/d-theme-white-atlas.js +1 -1
  355. package/dist/wcardinal/ui/theme/white/d-theme-white-atlas.js.map +1 -1
  356. package/dist/wcardinal/ui/theme/white/d-theme-white-table-body-cells.js.map +1 -1
  357. package/dist/wcardinal/ui/util/dynamic-sdf-font-generator.js.map +1 -1
  358. package/dist/wcardinal/ui/util/util-input-number.js +1 -2
  359. package/dist/wcardinal/ui/util/util-input-number.js.map +1 -1
  360. package/dist/wcardinal/ui/util/util-input.js +1 -2
  361. package/dist/wcardinal/ui/util/util-input.js.map +1 -1
  362. package/dist/wcardinal-ui-theme-dark.js +2 -2
  363. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  364. package/dist/wcardinal-ui-theme-dark.min.js.map +1 -1
  365. package/dist/wcardinal-ui-theme-white.js +2 -2
  366. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  367. package/dist/wcardinal-ui-theme-white.min.js.map +1 -1
  368. package/dist/wcardinal-ui.cjs.js +251 -240
  369. package/dist/wcardinal-ui.js +249 -238
  370. package/dist/wcardinal-ui.min.js +2 -2
  371. package/dist/wcardinal-ui.min.js.map +1 -1
  372. package/package.json +2 -2
@@ -11,6 +11,8 @@ import { EShapeDefaults } from "../e-shape-defaults";
11
11
  import { EShapeCopyPart } from "../e-shape-copy-part";
12
12
  import { toPointsBoundary } from "../e-shape-points-formatted";
13
13
  import { EShapeConnectorBodyImpl } from "../e-shape-connector-body-impl";
14
+ import { EShapeLockPart } from "./e-shape-lock-part";
15
+ import { EShapeLock } from "./e-shape-lock";
14
16
  var EShapeConnectorLine = /** @class */ (function (_super) {
15
17
  __extends(EShapeConnectorLine, _super);
16
18
  function EShapeConnectorLine(type) {
@@ -23,8 +25,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
23
25
  _this._headNormalId = 0;
24
26
  _this._headMargin = 0;
25
27
  _this._bodyId = 0;
26
- _this._lockCount = 0;
27
- _this._isChanged = false;
28
+ _this._lockChange = new EShapeLock();
28
29
  var sx = EShapeDefaults.SIZE_X;
29
30
  var sy = EShapeDefaults.SIZE_Y;
30
31
  var hx = sx * 0.5;
@@ -37,20 +38,20 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
37
38
  _this._body = new EShapeConnectorBodyImpl(_this, onChangeBound);
38
39
  return _this;
39
40
  }
40
- EShapeConnectorLine.prototype.lock = function () {
41
- this._lockCount += 1;
42
- if (this._lockCount === 1) {
43
- this._isChanged = false;
41
+ EShapeConnectorLine.prototype.lock = function (part) {
42
+ _super.prototype.lock.call(this, part);
43
+ if (part & EShapeLockPart.CONNECTOR) {
44
+ this._lockChange.lock();
44
45
  }
46
+ return this;
45
47
  };
46
- EShapeConnectorLine.prototype.unlock = function () {
47
- this._lockCount -= 1;
48
- if (this._lockCount === 0) {
49
- if (this._isChanged) {
48
+ EShapeConnectorLine.prototype.unlock = function (part, invoke) {
49
+ if (part & EShapeLockPart.CONNECTOR) {
50
+ if (this._lockChange.unlock() && invoke) {
50
51
  this.onChange();
51
52
  }
52
- this._isChanged = false;
53
53
  }
54
+ return _super.prototype.unlock.call(this, part, invoke);
54
55
  };
55
56
  Object.defineProperty(EShapeConnectorLine.prototype, "points", {
56
57
  get: function () {
@@ -77,14 +78,13 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
77
78
  _super.prototype.onAttach.call(this);
78
79
  this._edge.attach();
79
80
  };
80
- EShapeConnectorLine.prototype.onDetach = function () {
81
- this._edge.detach();
82
- _super.prototype.onDetach.call(this);
81
+ EShapeConnectorLine.prototype.onDetach = function (exceptions) {
82
+ this._edge.detach(exceptions);
83
+ _super.prototype.onDetach.call(this, exceptions);
83
84
  };
84
85
  EShapeConnectorLine.prototype.onChange = function () {
85
86
  var _a;
86
- if (0 < this._lockCount) {
87
- this._isChanged = true;
87
+ if (this._lockChange.isLocked()) {
88
88
  return;
89
89
  }
90
90
  var edge = this._edge;
@@ -132,7 +132,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
132
132
  values[i + 0] -= cx;
133
133
  values[i + 1] -= cy;
134
134
  }
135
- this.disallowUploadedUpdate();
135
+ this.lock(EShapeLockPart.TRANSFORM_AND_UPLOADED);
136
136
  transformPosition.set(px + cx, py + cy);
137
137
  transform.scale.set(1, 1);
138
138
  transform.rotation = 0;
@@ -140,7 +140,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
140
140
  points.toFitted(sx, sy);
141
141
  this.size.set(sx, sy);
142
142
  points.set(values);
143
- this.allowUploadedUpdate();
143
+ this.unlock(EShapeLockPart.TRANSFORM_AND_UPLOADED, true);
144
144
  }
145
145
  };
146
146
  EShapeConnectorLine.prototype.fillPoints = function (tail, tailMargin, head, headMargin, body, px, py, values) {
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-connector-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-connector-line.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeConnector } from \"../e-shape-connector\";\nimport { EShapeConnectorEdgeContainer } from \"../e-shape-connector-edge-container\";\nimport { EShapeConnectorEdgeContainerImpl } from \"../e-shape-connector-edge-container-impl\";\nimport { EShapeLineBase } from \"./e-shape-line-base\";\nimport { EShapeLinePoints } from \"./e-shape-line-points\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShape } from \"../e-shape\";\nimport { toPointsBoundary } from \"../e-shape-points-formatted\";\nimport { EShapeConnectorBody } from \"../e-shape-connector-body\";\nimport { EShapeConnectorBodyImpl } from \"../e-shape-connector-body-impl\";\nimport { EShapeConnectorEdge } from \"../e-shape-connector-edge\";\n\nexport class EShapeConnectorLine extends EShapeLineBase implements EShapeConnector {\n\tprotected static WORK_BOUNDARY: [number, number, number, number];\n\tprotected _edge: EShapeConnectorEdgeContainer;\n\tprotected _body: EShapeConnectorBody;\n\tprotected declare _points: EShapeLinePoints;\n\tprotected _tailLocalId: number;\n\tprotected _tailNormalId: number;\n\tprotected _tailMargin: number;\n\tprotected _headLocalId: number;\n\tprotected _headNormalId: number;\n\tprotected _headMargin: number;\n\tprotected _bodyId: number;\n\tprotected _lockCount: number;\n\tprotected _isChanged: boolean;\n\n\tconstructor(type: EShapeType = EShapeType.CONNECTOR_LINE) {\n\t\tsuper(type);\n\t\tthis._tailLocalId = 0;\n\t\tthis._tailNormalId = 0;\n\t\tthis._tailMargin = 0;\n\t\tthis._headLocalId = 0;\n\t\tthis._headNormalId = 0;\n\t\tthis._headMargin = 0;\n\t\tthis._bodyId = 0;\n\t\tthis._lockCount = 0;\n\t\tthis._isChanged = false;\n\t\tconst sx = EShapeDefaults.SIZE_X;\n\t\tconst sy = EShapeDefaults.SIZE_Y;\n\t\tconst hx = sx * 0.5;\n\t\tconst hy = sy * 0.5;\n\t\tthis._points = new EShapeLinePoints(this).set([-hx, -hy, +hx, +hy]);\n\t\tconst onChangeBound = (): void => {\n\t\t\tthis.onChange();\n\t\t};\n\t\tthis._edge = new EShapeConnectorEdgeContainerImpl(this, onChangeBound);\n\t\tthis._body = new EShapeConnectorBodyImpl(this, onChangeBound);\n\t}\n\n\tlock(): void {\n\t\tthis._lockCount += 1;\n\t\tif (this._lockCount === 1) {\n\t\t\tthis._isChanged = false;\n\t\t}\n\t}\n\n\tunlock(): void {\n\t\tthis._lockCount -= 1;\n\t\tif (this._lockCount === 0) {\n\t\t\tif (this._isChanged) {\n\t\t\t\tthis.onChange();\n\t\t\t}\n\t\t\tthis._isChanged = false;\n\t\t}\n\t}\n\n\tget points(): EShapeLinePoints {\n\t\treturn this._points;\n\t}\n\n\tget edge(): EShapeConnectorEdgeContainer {\n\t\treturn this._edge;\n\t}\n\n\tget body(): EShapeConnectorBody {\n\t\treturn this._body;\n\t}\n\n\tonAttach(): void {\n\t\tsuper.onAttach();\n\t\tthis._edge.attach();\n\t}\n\n\tonDetach(): void {\n\t\tthis._edge.detach();\n\t\tsuper.onDetach();\n\t}\n\n\tprotected onChange(): void {\n\t\tif (0 < this._lockCount) {\n\t\t\tthis._isChanged = true;\n\t\t\treturn;\n\t\t}\n\n\t\tconst edge = this._edge;\n\t\tconst tail = edge.tail;\n\t\tconst tailLocalId = tail.localId;\n\t\tconst tailNormalId = tail.normalId;\n\t\tconst tailMargin = tail.margin;\n\t\tconst head = edge.head;\n\t\tconst headLocalId = head.localId;\n\t\tconst headNormalId = head.normalId;\n\t\tconst headMargin = head.margin;\n\t\tconst body = this._body;\n\t\tconst bodyId = body.id;\n\t\tif (\n\t\t\tthis._tailLocalId !== tailLocalId ||\n\t\t\tthis._tailNormalId !== tailNormalId ||\n\t\t\tthis._tailMargin !== tailMargin ||\n\t\t\tthis._headLocalId !== headLocalId ||\n\t\t\tthis._headNormalId !== headNormalId ||\n\t\t\tthis._headMargin !== headMargin ||\n\t\t\tthis._bodyId !== bodyId\n\t\t) {\n\t\t\tthis._tailLocalId = tailLocalId;\n\t\t\tthis._tailNormalId = tailNormalId;\n\t\t\tthis._tailMargin = tailMargin;\n\t\t\tthis._headLocalId = headLocalId;\n\t\t\tthis._headNormalId = headNormalId;\n\t\t\tthis._headMargin = headMargin;\n\t\t\tthis._bodyId !== bodyId;\n\n\t\t\tconst transform = this.transform;\n\t\t\tconst transformPosition = transform.position;\n\t\t\tconst px = transformPosition.x;\n\t\t\tconst py = transformPosition.y;\n\t\t\tconst points = this._points;\n\t\t\tconst values = points.values;\n\n\t\t\t// Fill points\n\t\t\tthis.fillPoints(tail, tailMargin, head, headMargin, body, px, py, values);\n\n\t\t\t// Center & size\n\t\t\tconst boundary = (EShapeConnectorLine.WORK_BOUNDARY ??= [0, 0, 0, 0]);\n\t\t\ttoPointsBoundary(values, boundary);\n\t\t\tconst cx = (boundary[2] + boundary[0]) * 0.5;\n\t\t\tconst cy = (boundary[3] + boundary[1]) * 0.5;\n\t\t\tconst sx = boundary[2] - boundary[0];\n\t\t\tconst sy = boundary[3] - boundary[1];\n\n\t\t\t// Adjust values\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tvalues[i + 0] -= cx;\n\t\t\t\tvalues[i + 1] -= cy;\n\t\t\t}\n\n\t\t\tthis.disallowUploadedUpdate();\n\t\t\ttransformPosition.set(px + cx, py + cy);\n\t\t\ttransform.scale.set(1, 1);\n\t\t\ttransform.rotation = 0;\n\t\t\ttransform.skew.set(0, 0);\n\t\t\tpoints.toFitted(sx, sy);\n\t\t\tthis.size.set(sx, sy);\n\t\t\tpoints.set(values);\n\t\t\tthis.allowUploadedUpdate();\n\t\t}\n\t}\n\n\tprotected fillPoints(\n\t\ttail: EShapeConnectorEdge,\n\t\ttailMargin: number,\n\t\thead: EShapeConnectorEdge,\n\t\theadMargin: number,\n\t\tbody: EShapeConnectorBody,\n\t\tpx: number,\n\t\tpy: number,\n\t\tvalues: number[]\n\t): void {\n\t\t// Tail\n\t\tconst threshold = 0.000001;\n\t\tconst tailLocal = tail.local;\n\t\tconst tailLocalX = tailLocal.x;\n\t\tconst tailLocalY = tailLocal.y;\n\t\tconst x0 = tailLocalX - px;\n\t\tconst y0 = tailLocalY - py;\n\n\t\t// Head\n\t\tconst headLocal = head.local;\n\t\tconst headLocalX = headLocal.x;\n\t\tconst headLocalY = headLocal.y;\n\t\tconst x1 = headLocalX - px;\n\t\tconst y1 = headLocalY - py;\n\n\t\t// Body\n\t\tconst bodyValues = body.values;\n\t\tconst bodyValuesLength = bodyValues.length;\n\n\t\t// Tail points\n\t\tvalues[0] = x0;\n\t\tvalues[1] = y0;\n\n\t\t// Body points\n\t\tif (0 < bodyValuesLength) {\n\t\t\tconst cx = (x1 + x0) * 0.5;\n\t\t\tconst cy = (y1 + y0) * 0.5;\n\t\t\tconst dx = x1 - x0;\n\t\t\tconst dy = y1 - y0;\n\t\t\tconst a = Math.atan2(dy, dx);\n\t\t\tconst c = Math.cos(a);\n\t\t\tconst s = Math.sin(a);\n\t\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\t\tfor (let i = 0; i < bodyValuesLength; i += 2) {\n\t\t\t\tconst x = bodyValues[i + 0];\n\t\t\t\tconst y = bodyValues[i + 1];\n\t\t\t\tvalues[i + 2] = cx + (c * x - s * y) * l;\n\t\t\t\tvalues[i + 3] = cy + (c * y + s * x) * l;\n\t\t\t}\n\t\t}\n\n\t\t// Head points\n\t\tvalues[2 + bodyValuesLength] = x1;\n\t\tvalues[3 + bodyValuesLength] = y1;\n\n\t\t// Tail margin\n\t\tif (tailMargin !== 0) {\n\t\t\tconst dx = values[2] - x0;\n\t\t\tconst dy = values[3] - y0;\n\t\t\tconst d = dx * dx + dy * dy;\n\t\t\tif (threshold < d) {\n\t\t\t\tconst f = tailMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tvalues[0] = x0 + dx * f;\n\t\t\t\tvalues[1] = y0 + dy * f;\n\t\t\t}\n\t\t}\n\n\t\t// Head margin\n\t\tif (headMargin !== 0) {\n\t\t\tconst dx = values[0 + bodyValuesLength] - x1;\n\t\t\tconst dy = values[1 + bodyValuesLength] - y1;\n\t\t\tconst d = dx * dx + dy * dy;\n\t\t\tif (threshold < d) {\n\t\t\t\tconst f = headMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tvalues[2 + bodyValuesLength] = x1 + dx * f;\n\t\t\t\tvalues[3 + bodyValuesLength] = y1 + dy * f;\n\t\t\t}\n\t\t}\n\n\t\t// Remove the rest\n\t\tvalues.length = bodyValuesLength + 4;\n\t}\n\n\tcopy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tsuper.copy(source, part);\n\t\tif (source instanceof EShapeConnectorLine) {\n\t\t\tthis._edge.copy(source.edge);\n\t\t\tthis._body.copy(source.body);\n\t\t}\n\t\treturn this;\n\t}\n\n\tclone(): EShapeConnectorLine {\n\t\tconst constructor = this.constructor as typeof EShapeConnectorLine;\n\t\treturn new constructor(this.type).copy(this);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tconst edgeId = this._edge.serialize(manager);\n\t\tconst bodyId = this._body.serialize(manager);\n\t\tconst pointsId = this._points.serialize(manager);\n\t\tresult[15] = manager.addResource(`[${edgeId},${pointsId},${bodyId}]`);\n\t\treturn result;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-connector-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-connector-line.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeConnector } from \"../e-shape-connector\";\nimport { EShapeConnectorEdgeContainer } from \"../e-shape-connector-edge-container\";\nimport { EShapeConnectorEdgeContainerImpl } from \"../e-shape-connector-edge-container-impl\";\nimport { EShapeLineBase } from \"./e-shape-line-base\";\nimport { EShapeLinePoints } from \"./e-shape-line-points\";\nimport { EShapeDefaults } from \"../e-shape-defaults\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShape } from \"../e-shape\";\nimport { toPointsBoundary } from \"../e-shape-points-formatted\";\nimport { EShapeConnectorBody } from \"../e-shape-connector-body\";\nimport { EShapeConnectorBodyImpl } from \"../e-shape-connector-body-impl\";\nimport { EShapeConnectorEdge } from \"../e-shape-connector-edge\";\nimport { EShapeLockPart } from \"./e-shape-lock-part\";\nimport { EShapeLock } from \"./e-shape-lock\";\n\nexport class EShapeConnectorLine extends EShapeLineBase implements EShapeConnector {\n\tprotected static WORK_BOUNDARY: [number, number, number, number];\n\tprotected _edge: EShapeConnectorEdgeContainer;\n\tprotected _body: EShapeConnectorBody;\n\tprotected declare _points: EShapeLinePoints;\n\tprotected _tailLocalId: number;\n\tprotected _tailNormalId: number;\n\tprotected _tailMargin: number;\n\tprotected _headLocalId: number;\n\tprotected _headNormalId: number;\n\tprotected _headMargin: number;\n\tprotected _bodyId: number;\n\tprotected _lockChange: EShapeLock;\n\n\tconstructor(type: EShapeType = EShapeType.CONNECTOR_LINE) {\n\t\tsuper(type);\n\t\tthis._tailLocalId = 0;\n\t\tthis._tailNormalId = 0;\n\t\tthis._tailMargin = 0;\n\t\tthis._headLocalId = 0;\n\t\tthis._headNormalId = 0;\n\t\tthis._headMargin = 0;\n\t\tthis._bodyId = 0;\n\t\tthis._lockChange = new EShapeLock();\n\t\tconst sx = EShapeDefaults.SIZE_X;\n\t\tconst sy = EShapeDefaults.SIZE_Y;\n\t\tconst hx = sx * 0.5;\n\t\tconst hy = sy * 0.5;\n\t\tthis._points = new EShapeLinePoints(this).set([-hx, -hy, +hx, +hy]);\n\t\tconst onChangeBound = (): void => {\n\t\t\tthis.onChange();\n\t\t};\n\t\tthis._edge = new EShapeConnectorEdgeContainerImpl(this, onChangeBound);\n\t\tthis._body = new EShapeConnectorBodyImpl(this, onChangeBound);\n\t}\n\n\toverride lock(part: EShapeLockPart): this {\n\t\tsuper.lock(part);\n\t\tif (part & EShapeLockPart.CONNECTOR) {\n\t\t\tthis._lockChange.lock();\n\t\t}\n\t\treturn this;\n\t}\n\n\toverride unlock(part: EShapeLockPart, invoke: boolean): this {\n\t\tif (part & EShapeLockPart.CONNECTOR) {\n\t\t\tif (this._lockChange.unlock() && invoke) {\n\t\t\t\tthis.onChange();\n\t\t\t}\n\t\t}\n\t\treturn super.unlock(part, invoke);\n\t}\n\n\tget points(): EShapeLinePoints {\n\t\treturn this._points;\n\t}\n\n\tget edge(): EShapeConnectorEdgeContainer {\n\t\treturn this._edge;\n\t}\n\n\tget body(): EShapeConnectorBody {\n\t\treturn this._body;\n\t}\n\n\tonAttach(): void {\n\t\tsuper.onAttach();\n\t\tthis._edge.attach();\n\t}\n\n\tonDetach(exceptions?: Set<EShape>): void {\n\t\tthis._edge.detach(exceptions);\n\t\tsuper.onDetach(exceptions);\n\t}\n\n\tprotected onChange(): void {\n\t\tif (this._lockChange.isLocked()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst edge = this._edge;\n\t\tconst tail = edge.tail;\n\t\tconst tailLocalId = tail.localId;\n\t\tconst tailNormalId = tail.normalId;\n\t\tconst tailMargin = tail.margin;\n\t\tconst head = edge.head;\n\t\tconst headLocalId = head.localId;\n\t\tconst headNormalId = head.normalId;\n\t\tconst headMargin = head.margin;\n\t\tconst body = this._body;\n\t\tconst bodyId = body.id;\n\t\tif (\n\t\t\tthis._tailLocalId !== tailLocalId ||\n\t\t\tthis._tailNormalId !== tailNormalId ||\n\t\t\tthis._tailMargin !== tailMargin ||\n\t\t\tthis._headLocalId !== headLocalId ||\n\t\t\tthis._headNormalId !== headNormalId ||\n\t\t\tthis._headMargin !== headMargin ||\n\t\t\tthis._bodyId !== bodyId\n\t\t) {\n\t\t\tthis._tailLocalId = tailLocalId;\n\t\t\tthis._tailNormalId = tailNormalId;\n\t\t\tthis._tailMargin = tailMargin;\n\t\t\tthis._headLocalId = headLocalId;\n\t\t\tthis._headNormalId = headNormalId;\n\t\t\tthis._headMargin = headMargin;\n\t\t\tthis._bodyId !== bodyId;\n\n\t\t\tconst transform = this.transform;\n\t\t\tconst transformPosition = transform.position;\n\t\t\tconst px = transformPosition.x;\n\t\t\tconst py = transformPosition.y;\n\t\t\tconst points = this._points;\n\t\t\tconst values = points.values;\n\n\t\t\t// Fill points\n\t\t\tthis.fillPoints(tail, tailMargin, head, headMargin, body, px, py, values);\n\n\t\t\t// Center & size\n\t\t\tconst boundary = (EShapeConnectorLine.WORK_BOUNDARY ??= [0, 0, 0, 0]);\n\t\t\ttoPointsBoundary(values, boundary);\n\t\t\tconst cx = (boundary[2] + boundary[0]) * 0.5;\n\t\t\tconst cy = (boundary[3] + boundary[1]) * 0.5;\n\t\t\tconst sx = boundary[2] - boundary[0];\n\t\t\tconst sy = boundary[3] - boundary[1];\n\n\t\t\t// Adjust values\n\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 2) {\n\t\t\t\tvalues[i + 0] -= cx;\n\t\t\t\tvalues[i + 1] -= cy;\n\t\t\t}\n\n\t\t\tthis.lock(EShapeLockPart.TRANSFORM_AND_UPLOADED);\n\t\t\ttransformPosition.set(px + cx, py + cy);\n\t\t\ttransform.scale.set(1, 1);\n\t\t\ttransform.rotation = 0;\n\t\t\ttransform.skew.set(0, 0);\n\t\t\tpoints.toFitted(sx, sy);\n\t\t\tthis.size.set(sx, sy);\n\t\t\tpoints.set(values);\n\t\t\tthis.unlock(EShapeLockPart.TRANSFORM_AND_UPLOADED, true);\n\t\t}\n\t}\n\n\tprotected fillPoints(\n\t\ttail: EShapeConnectorEdge,\n\t\ttailMargin: number,\n\t\thead: EShapeConnectorEdge,\n\t\theadMargin: number,\n\t\tbody: EShapeConnectorBody,\n\t\tpx: number,\n\t\tpy: number,\n\t\tvalues: number[]\n\t): void {\n\t\t// Tail\n\t\tconst threshold = 0.000001;\n\t\tconst tailLocal = tail.local;\n\t\tconst tailLocalX = tailLocal.x;\n\t\tconst tailLocalY = tailLocal.y;\n\t\tconst x0 = tailLocalX - px;\n\t\tconst y0 = tailLocalY - py;\n\n\t\t// Head\n\t\tconst headLocal = head.local;\n\t\tconst headLocalX = headLocal.x;\n\t\tconst headLocalY = headLocal.y;\n\t\tconst x1 = headLocalX - px;\n\t\tconst y1 = headLocalY - py;\n\n\t\t// Body\n\t\tconst bodyValues = body.values;\n\t\tconst bodyValuesLength = bodyValues.length;\n\n\t\t// Tail points\n\t\tvalues[0] = x0;\n\t\tvalues[1] = y0;\n\n\t\t// Body points\n\t\tif (0 < bodyValuesLength) {\n\t\t\tconst cx = (x1 + x0) * 0.5;\n\t\t\tconst cy = (y1 + y0) * 0.5;\n\t\t\tconst dx = x1 - x0;\n\t\t\tconst dy = y1 - y0;\n\t\t\tconst a = Math.atan2(dy, dx);\n\t\t\tconst c = Math.cos(a);\n\t\t\tconst s = Math.sin(a);\n\t\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\t\tfor (let i = 0; i < bodyValuesLength; i += 2) {\n\t\t\t\tconst x = bodyValues[i + 0];\n\t\t\t\tconst y = bodyValues[i + 1];\n\t\t\t\tvalues[i + 2] = cx + (c * x - s * y) * l;\n\t\t\t\tvalues[i + 3] = cy + (c * y + s * x) * l;\n\t\t\t}\n\t\t}\n\n\t\t// Head points\n\t\tvalues[2 + bodyValuesLength] = x1;\n\t\tvalues[3 + bodyValuesLength] = y1;\n\n\t\t// Tail margin\n\t\tif (tailMargin !== 0) {\n\t\t\tconst dx = values[2] - x0;\n\t\t\tconst dy = values[3] - y0;\n\t\t\tconst d = dx * dx + dy * dy;\n\t\t\tif (threshold < d) {\n\t\t\t\tconst f = tailMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tvalues[0] = x0 + dx * f;\n\t\t\t\tvalues[1] = y0 + dy * f;\n\t\t\t}\n\t\t}\n\n\t\t// Head margin\n\t\tif (headMargin !== 0) {\n\t\t\tconst dx = values[0 + bodyValuesLength] - x1;\n\t\t\tconst dy = values[1 + bodyValuesLength] - y1;\n\t\t\tconst d = dx * dx + dy * dy;\n\t\t\tif (threshold < d) {\n\t\t\t\tconst f = headMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tvalues[2 + bodyValuesLength] = x1 + dx * f;\n\t\t\t\tvalues[3 + bodyValuesLength] = y1 + dy * f;\n\t\t\t}\n\t\t}\n\n\t\t// Remove the rest\n\t\tvalues.length = bodyValuesLength + 4;\n\t}\n\n\tcopy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tsuper.copy(source, part);\n\t\tif (source instanceof EShapeConnectorLine) {\n\t\t\tthis._edge.copy(source.edge);\n\t\t\tthis._body.copy(source.body);\n\t\t}\n\t\treturn this;\n\t}\n\n\tclone(): EShapeConnectorLine {\n\t\tconst constructor = this.constructor as typeof EShapeConnectorLine;\n\t\treturn new constructor(this.type).copy(this);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tconst edgeId = this._edge.serialize(manager);\n\t\tconst bodyId = this._body.serialize(manager);\n\t\tconst pointsId = this._points.serialize(manager);\n\t\tresult[15] = manager.addResource(`[${edgeId},${pointsId},${bodyId}]`);\n\t\treturn result;\n\t}\n}\n"]}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { Point, Rectangle } from "pixi.js";
6
6
  import { EShapeGroupSizeLayout } from "./e-shape-group-size-layout";
7
+ import { EShapeLockPart } from "./e-shape-lock-part";
7
8
  var EShapeGroupSizeEditor = /** @class */ (function () {
8
9
  function EShapeGroupSizeEditor(parent, x, y, isFittable) {
9
10
  this._workRectForCalcRect = new Rectangle();
@@ -98,41 +99,43 @@ var EShapeGroupSizeEditor = /** @class */ (function () {
98
99
  };
99
100
  EShapeGroupSizeEditor.prototype.doFit = function () {
100
101
  var parent = this._parent;
101
- parent.disallowOnTransformChange();
102
+ parent.lock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT);
102
103
  // Calculate the rect
103
104
  var rect = this.calcRect(this._workRectForFit);
104
105
  // Set size
105
106
  var size = this._size;
106
107
  size.set(rect.width, rect.height);
107
- // Position & Pivot
108
- // rx := rect.x
109
- // ry := rect.y
108
+ // Calculating new position & pivot
110
109
  //
111
- // | a c tx | | 1 0 +rx | | 1 0 -rx | | a c tx + (a * rx + c * ry) | | 1 0 -rx |
112
- // | b d ty | | 0 1 +ry | | 0 1 -ry | = | b d ty + (b * rx + d * ry) | | 0 1 -ry |
113
- // | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 |
110
+ // cx := rect.x + rect.width * 0.5
111
+ // cy := rect.y + rect.height * 0.5
114
112
  //
115
- // tx -> tx + (a * rx + c * ry) = poxition.x - (a * pivot.x + c * pivot.y)
116
- // ty -> ty + (b * rx + d * ry) = poxition.y - (b * pivot.x + d * pivot.y)
117
- // position.x -> position.x + (a * rx + c * ry) - (a * pivot.x + c * pivot.y)
118
- // position.y -> position.y + (b * rx + d * ry) - (b * pivot.x + d * pivot.y)
119
- // pivot.x -> 0
120
- // pivot.y -> 0
113
+ // Since the local transform need to be unchanged:
121
114
  //
122
- // a -> a', b -> b', c -> c', tx -> tx', ty -> ty'
115
+ // | a c tx | | a c px' - (a * pvx' + c * pvy') |
116
+ // | b d ty | = | b d py' - (b * pvx' + d * pvy') |
117
+ // | 0 0 1 | | 0 0 1 |
123
118
  //
124
- // | a' c' tx' | | 1 0 -rx | | a' c' tx' - (a' * rx + c' * ry) |
125
- // | b' d' ty' | | 0 1 -ry | = | b' d' ty' - (b' * rx + d' * ry) |
126
- // | 0 0 1 | | 0 0 1 | | 0 0 1 |
119
+ // Here, (px', py') and (pvx', pvy') are the new position
120
+ // and the new pivot, respectively.
127
121
  //
128
- // tx' -> tx' - (a' * rx + c' * ry) = poxition.x - (a' * pivot.x + c' * pivot.y)
129
- // ty' -> ty' - (b' * rx + d' * ry) = poxition.y - (b' * pivot.x + d' * pivot.y)
130
- // pivot.x -> pivot.x + rx
131
- // pivot.y -> pivot.y + ry
122
+ // Setting the new pivot (pvx', pvy') to (cx, cy) leads to
123
+ //
124
+ // | a c tx | | a c px' - (a * cx + c * cy) |
125
+ // | b d ty | = | b d py' - (b * cx + d * cy) |
126
+ // | 0 0 1 | | 0 0 1 |
127
+ //
128
+ // tx = px - (a * pvx + c * pvy) = px' - (a * cx + c * cy)
129
+ // ty = py - (b * pvx + d * pvy) = py' - (b * cx + d * cy)
130
+ //
131
+ // Thus, the new position (px', py') is
132
+ //
133
+ // px' = px + (a * (cx - pvx) + c * (cy - pvy))
134
+ // py' = py + (b * (cy - pvx) + d * (cy - pvy))
132
135
  parent.updateTransform();
133
136
  var transform = parent.transform;
134
- var x = rect.x + rect.width * 0.5;
135
- var y = rect.y + rect.height * 0.5;
137
+ var cx = rect.x + rect.width * 0.5;
138
+ var cy = rect.y + rect.height * 0.5;
136
139
  var position = transform.position;
137
140
  var localTransform = transform.localTransform;
138
141
  var a = localTransform.a;
@@ -140,12 +143,16 @@ var EShapeGroupSizeEditor = /** @class */ (function () {
140
143
  var c = localTransform.c;
141
144
  var d = localTransform.d;
142
145
  var pivot = transform.pivot;
143
- position.set(position.x + (a * x + c * y) - (a * pivot.x + c * pivot.y), position.y + (b * x + d * y) - (b * pivot.x + d * pivot.y));
144
- pivot.set(x, y);
146
+ var pvx = pivot.x;
147
+ var pvy = pivot.y;
148
+ var dpvx = cx - pvx;
149
+ var dpvy = cy - pvy;
150
+ position.set(position.x + (a * dpvx + c * dpvy), position.y + (b * dpvx + d * dpvy));
151
+ pivot.set(cx, cy);
145
152
  // Reset the data
146
153
  this.reset(parent.children, this._layouts, size);
147
154
  //
148
- parent.allowOnTransformChange(true);
155
+ parent.unlock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT, true);
149
156
  };
150
157
  EShapeGroupSizeEditor.prototype.reset = function (children, layouts, size) {
151
158
  for (var i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-group-size-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-editor.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, Point, Rectangle } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeLayout } from \"./e-shape-group-size-layout\";\nimport { EShapeGroupSizeParent } from \"./e-shape-group-size-parent\";\n\nexport class EShapeGroupSizeEditor implements EShapeGroupSize {\n\tprotected _parent: EShapeGroupSizeParent;\n\tprotected _size: Point;\n\tprotected _layouts: EShapeLayout[];\n\tprotected _workRectForCalcRect: Rectangle = new Rectangle();\n\tprotected _workRectForFit: Rectangle = new Rectangle();\n\tprotected _isFittable: boolean;\n\n\tconstructor(parent: EShapeGroupSizeParent, x: number, y: number, isFittable: boolean) {\n\t\tthis._parent = parent;\n\t\tthis._layouts = [];\n\t\tthis._size = new Point(x, y);\n\t\tthis._isFittable = isFittable;\n\t}\n\n\tinit(): this {\n\t\treturn this;\n\t}\n\n\tget x(): number {\n\t\treturn this._size.x;\n\t}\n\n\tset x(x: number) {\n\t\tconst size = this._size;\n\t\tif (size.x !== x) {\n\t\t\tconst ox = size.x;\n\t\t\tsize.x = x;\n\t\t\tthis.onChange(ox, size.y);\n\t\t}\n\t}\n\n\tget y(): number {\n\t\treturn this._size.y;\n\t}\n\n\tset y(y: number) {\n\t\tconst size = this._size;\n\t\tif (size.y !== y) {\n\t\t\tconst oy = size.y;\n\t\t\tsize.y = y;\n\t\t\tthis.onChange(size.x, oy);\n\t\t}\n\t}\n\n\tset(x?: number, y?: number): this {\n\t\tlet isChanged = false;\n\t\tconst size = this._size;\n\t\tconst ox = size.x;\n\t\tconst oy = size.y;\n\t\tif (x != null && ox !== x) {\n\t\t\tisChanged = true;\n\t\t\tsize.x = x;\n\t\t}\n\t\tif (y != null && oy !== y) {\n\t\t\tisChanged = true;\n\t\t\tsize.y = y;\n\t\t}\n\t\tif (isChanged) {\n\t\t\tthis.onChange(ox, oy);\n\t\t}\n\t\treturn this;\n\t}\n\n\tclone(): EShapeGroupSizeEditor {\n\t\tconst size = this._size;\n\t\treturn new EShapeGroupSizeEditor(this._parent, size.x, size.y, this._isFittable);\n\t}\n\n\tcopy(): void {\n\t\t// DO NOTHING\n\t}\n\n\tcopyFrom(point: IPoint): this {\n\t\tconst x = point.x;\n\t\tconst y = point.y;\n\t\tconst size = this._size;\n\t\tconst ox = size.x;\n\t\tconst oy = size.y;\n\t\tif (ox !== x || oy !== y) {\n\t\t\tsize.x = x;\n\t\t\tsize.y = y;\n\t\t\tthis.onChange(ox, oy);\n\t\t}\n\t\treturn this;\n\t}\n\n\tcopyTo(point: IPoint): IPoint {\n\t\treturn this._size.copyTo(point);\n\t}\n\n\tequals(point: IPoint): boolean {\n\t\treturn this._size.equals(point);\n\t}\n\n\tfit(): this {\n\t\tif (this._isFittable) {\n\t\t\tthis.doFit();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected doFit(): void {\n\t\tconst parent = this._parent;\n\t\tparent.disallowOnTransformChange();\n\n\t\t// Calculate the rect\n\t\tconst rect = this.calcRect(this._workRectForFit);\n\n\t\t// Set size\n\t\tconst size = this._size;\n\t\tsize.set(rect.width, rect.height);\n\n\t\t// Position & Pivot\n\t\t// rx := rect.x\n\t\t// ry := rect.y\n\t\t//\n\t\t// | a c tx | | 1 0 +rx | | 1 0 -rx | | a c tx + (a * rx + c * ry) | | 1 0 -rx |\n\t\t// | b d ty | | 0 1 +ry | | 0 1 -ry | = | b d ty + (b * rx + d * ry) | | 0 1 -ry |\n\t\t// | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 |\n\t\t//\n\t\t// tx -> tx + (a * rx + c * ry) = poxition.x - (a * pivot.x + c * pivot.y)\n\t\t// ty -> ty + (b * rx + d * ry) = poxition.y - (b * pivot.x + d * pivot.y)\n\t\t// position.x -> position.x + (a * rx + c * ry) - (a * pivot.x + c * pivot.y)\n\t\t// position.y -> position.y + (b * rx + d * ry) - (b * pivot.x + d * pivot.y)\n\t\t// pivot.x -> 0\n\t\t// pivot.y -> 0\n\t\t//\n\t\t// a -> a', b -> b', c -> c', tx -> tx', ty -> ty'\n\t\t//\n\t\t// | a' c' tx' | | 1 0 -rx | | a' c' tx' - (a' * rx + c' * ry) |\n\t\t// | b' d' ty' | | 0 1 -ry | = | b' d' ty' - (b' * rx + d' * ry) |\n\t\t// | 0 0 1 | | 0 0 1 | | 0 0 1 |\n\t\t//\n\t\t// tx' -> tx' - (a' * rx + c' * ry) = poxition.x - (a' * pivot.x + c' * pivot.y)\n\t\t// ty' -> ty' - (b' * rx + d' * ry) = poxition.y - (b' * pivot.x + d' * pivot.y)\n\t\t// pivot.x -> pivot.x + rx\n\t\t// pivot.y -> pivot.y + ry\n\t\tparent.updateTransform();\n\t\tconst transform = parent.transform;\n\t\tconst x = rect.x + rect.width * 0.5;\n\t\tconst y = rect.y + rect.height * 0.5;\n\t\tconst position = transform.position;\n\t\tconst localTransform = transform.localTransform;\n\t\tconst a = localTransform.a;\n\t\tconst b = localTransform.b;\n\t\tconst c = localTransform.c;\n\t\tconst d = localTransform.d;\n\t\tconst pivot = transform.pivot;\n\t\tposition.set(\n\t\t\tposition.x + (a * x + c * y) - (a * pivot.x + c * pivot.y),\n\t\t\tposition.y + (b * x + d * y) - (b * pivot.x + d * pivot.y)\n\t\t);\n\t\tpivot.set(x, y);\n\n\t\t// Reset the data\n\t\tthis.reset(parent.children, this._layouts, size);\n\n\t\t//\n\t\tparent.allowOnTransformChange(true);\n\t}\n\n\tprotected reset(children: EShape[], layouts: EShapeLayout[], size: IPoint): void {\n\t\tfor (let i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = layouts[i];\n\t\t\tif (layout.isCompatible(child)) {\n\t\t\t\tlayout.reset(child, size.x, size.y);\n\t\t\t} else {\n\t\t\t\tlayouts.length = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (children.length < layouts.length) {\n\t\t\tlayouts.length = children.length;\n\t\t}\n\t}\n\n\tcalcRect(result: Rectangle): Rectangle {\n\t\tconst parent = this._parent;\n\t\tconst children = parent.children;\n\t\tif (children.length <= 0) {\n\t\t\tresult.x = 0;\n\t\t\tresult.y = 0;\n\t\t\tresult.width = 0;\n\t\t\tresult.height = 0;\n\t\t} else {\n\t\t\tconst workRect = this._workRectForCalcRect;\n\t\t\tchildren[0].getBoundsLocal(false, result);\n\t\t\tfor (let i = 1, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tchild.getBoundsLocal(false, workRect);\n\t\t\t\tresult.enlarge(workRect);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected onChange(ox: number, oy: number): void {\n\t\tconst parent = this._parent;\n\t\tconst size = this._size;\n\t\tconst pivot = parent.transform.pivot;\n\t\tthis.onChange_(parent.children, this._layouts, size.x, size.y, pivot.x, pivot.y, ox, oy);\n\t\tparent.onSizeChange();\n\t}\n\n\tprotected onChange_(\n\t\tchildren: EShape[],\n\t\tlayouts: EShapeLayout[],\n\t\tsx: number,\n\t\tsy: number,\n\t\tpx: number,\n\t\tpy: number,\n\t\tox: number,\n\t\toy: number\n\t): void {\n\t\tfor (let i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = layouts[i];\n\t\t\tif (layout.isCompatible(child)) {\n\t\t\t\tlayout.update(child, sx, sy, px, py);\n\t\t\t} else {\n\t\t\t\tlayouts.length = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tfor (let i = layouts.length, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = this.newLayout(child, ox, oy);\n\t\t\tlayout.update(child, sx, sy, px, py);\n\t\t\tlayouts.push(layout);\n\t\t}\n\t\tif (layouts.length !== children.length) {\n\t\t\tlayouts.length = children.length;\n\t\t}\n\t}\n\n\tprotected newLayout(shape: EShape, ox: number, oy: number): EShapeLayout {\n\t\treturn shape.layout || new EShapeGroupSizeLayout(shape, ox, oy);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-group-size-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-editor.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, Point, Rectangle } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapeGroupSize } from \"./e-shape-group-size\";\nimport { EShapeGroupSizeLayout } from \"./e-shape-group-size-layout\";\nimport { EShapeGroupSizeParent } from \"./e-shape-group-size-parent\";\nimport { EShapeLockPart } from \"./e-shape-lock-part\";\n\nexport class EShapeGroupSizeEditor implements EShapeGroupSize {\n\tprotected _parent: EShapeGroupSizeParent;\n\tprotected _size: Point;\n\tprotected _layouts: EShapeLayout[];\n\tprotected _workRectForCalcRect: Rectangle = new Rectangle();\n\tprotected _workRectForFit: Rectangle = new Rectangle();\n\tprotected _isFittable: boolean;\n\n\tconstructor(parent: EShapeGroupSizeParent, x: number, y: number, isFittable: boolean) {\n\t\tthis._parent = parent;\n\t\tthis._layouts = [];\n\t\tthis._size = new Point(x, y);\n\t\tthis._isFittable = isFittable;\n\t}\n\n\tinit(): this {\n\t\treturn this;\n\t}\n\n\tget x(): number {\n\t\treturn this._size.x;\n\t}\n\n\tset x(x: number) {\n\t\tconst size = this._size;\n\t\tif (size.x !== x) {\n\t\t\tconst ox = size.x;\n\t\t\tsize.x = x;\n\t\t\tthis.onChange(ox, size.y);\n\t\t}\n\t}\n\n\tget y(): number {\n\t\treturn this._size.y;\n\t}\n\n\tset y(y: number) {\n\t\tconst size = this._size;\n\t\tif (size.y !== y) {\n\t\t\tconst oy = size.y;\n\t\t\tsize.y = y;\n\t\t\tthis.onChange(size.x, oy);\n\t\t}\n\t}\n\n\tset(x?: number, y?: number): this {\n\t\tlet isChanged = false;\n\t\tconst size = this._size;\n\t\tconst ox = size.x;\n\t\tconst oy = size.y;\n\t\tif (x != null && ox !== x) {\n\t\t\tisChanged = true;\n\t\t\tsize.x = x;\n\t\t}\n\t\tif (y != null && oy !== y) {\n\t\t\tisChanged = true;\n\t\t\tsize.y = y;\n\t\t}\n\t\tif (isChanged) {\n\t\t\tthis.onChange(ox, oy);\n\t\t}\n\t\treturn this;\n\t}\n\n\tclone(): EShapeGroupSizeEditor {\n\t\tconst size = this._size;\n\t\treturn new EShapeGroupSizeEditor(this._parent, size.x, size.y, this._isFittable);\n\t}\n\n\tcopy(): void {\n\t\t// DO NOTHING\n\t}\n\n\tcopyFrom(point: IPoint): this {\n\t\tconst x = point.x;\n\t\tconst y = point.y;\n\t\tconst size = this._size;\n\t\tconst ox = size.x;\n\t\tconst oy = size.y;\n\t\tif (ox !== x || oy !== y) {\n\t\t\tsize.x = x;\n\t\t\tsize.y = y;\n\t\t\tthis.onChange(ox, oy);\n\t\t}\n\t\treturn this;\n\t}\n\n\tcopyTo(point: IPoint): IPoint {\n\t\treturn this._size.copyTo(point);\n\t}\n\n\tequals(point: IPoint): boolean {\n\t\treturn this._size.equals(point);\n\t}\n\n\tfit(): this {\n\t\tif (this._isFittable) {\n\t\t\tthis.doFit();\n\t\t}\n\t\treturn this;\n\t}\n\n\tprotected doFit(): void {\n\t\tconst parent = this._parent;\n\t\tparent.lock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT);\n\n\t\t// Calculate the rect\n\t\tconst rect = this.calcRect(this._workRectForFit);\n\n\t\t// Set size\n\t\tconst size = this._size;\n\t\tsize.set(rect.width, rect.height);\n\n\t\t// Calculating new position & pivot\n\t\t//\n\t\t// cx := rect.x + rect.width * 0.5\n\t\t// cy := rect.y + rect.height * 0.5\n\t\t//\n\t\t// Since the local transform need to be unchanged:\n\t\t//\n\t\t// | a c tx | | a c px' - (a * pvx' + c * pvy') |\n\t\t// | b d ty | = | b d py' - (b * pvx' + d * pvy') |\n\t\t// | 0 0 1 | | 0 0 1 |\n\t\t//\n\t\t// Here, (px', py') and (pvx', pvy') are the new position\n\t\t// and the new pivot, respectively.\n\t\t//\n\t\t// Setting the new pivot (pvx', pvy') to (cx, cy) leads to\n\t\t//\n\t\t// | a c tx | | a c px' - (a * cx + c * cy) |\n\t\t// | b d ty | = | b d py' - (b * cx + d * cy) |\n\t\t// | 0 0 1 | | 0 0 1 |\n\t\t//\n\t\t// tx = px - (a * pvx + c * pvy) = px' - (a * cx + c * cy)\n\t\t// ty = py - (b * pvx + d * pvy) = py' - (b * cx + d * cy)\n\t\t//\n\t\t// Thus, the new position (px', py') is\n\t\t//\n\t\t// px' = px + (a * (cx - pvx) + c * (cy - pvy))\n\t\t// py' = py + (b * (cy - pvx) + d * (cy - pvy))\n\t\tparent.updateTransform();\n\t\tconst transform = parent.transform;\n\t\tconst cx = rect.x + rect.width * 0.5;\n\t\tconst cy = rect.y + rect.height * 0.5;\n\t\tconst position = transform.position;\n\t\tconst localTransform = transform.localTransform;\n\t\tconst a = localTransform.a;\n\t\tconst b = localTransform.b;\n\t\tconst c = localTransform.c;\n\t\tconst d = localTransform.d;\n\t\tconst pivot = transform.pivot;\n\t\tconst pvx = pivot.x;\n\t\tconst pvy = pivot.y;\n\t\tconst dpvx = cx - pvx;\n\t\tconst dpvy = cy - pvy;\n\t\tposition.set(position.x + (a * dpvx + c * dpvy), position.y + (b * dpvx + d * dpvy));\n\t\tpivot.set(cx, cy);\n\n\t\t// Reset the data\n\t\tthis.reset(parent.children, this._layouts, size);\n\n\t\t//\n\t\tparent.unlock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT, true);\n\t}\n\n\tprotected reset(children: EShape[], layouts: EShapeLayout[], size: IPoint): void {\n\t\tfor (let i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = layouts[i];\n\t\t\tif (layout.isCompatible(child)) {\n\t\t\t\tlayout.reset(child, size.x, size.y);\n\t\t\t} else {\n\t\t\t\tlayouts.length = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (children.length < layouts.length) {\n\t\t\tlayouts.length = children.length;\n\t\t}\n\t}\n\n\tcalcRect(result: Rectangle): Rectangle {\n\t\tconst parent = this._parent;\n\t\tconst children = parent.children;\n\t\tif (children.length <= 0) {\n\t\t\tresult.x = 0;\n\t\t\tresult.y = 0;\n\t\t\tresult.width = 0;\n\t\t\tresult.height = 0;\n\t\t} else {\n\t\t\tconst workRect = this._workRectForCalcRect;\n\t\t\tchildren[0].getBoundsLocal(false, result);\n\t\t\tfor (let i = 1, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tchild.getBoundsLocal(false, workRect);\n\t\t\t\tresult.enlarge(workRect);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected onChange(ox: number, oy: number): void {\n\t\tconst parent = this._parent;\n\t\tconst size = this._size;\n\t\tconst pivot = parent.transform.pivot;\n\t\tthis.onChange_(parent.children, this._layouts, size.x, size.y, pivot.x, pivot.y, ox, oy);\n\t\tparent.onSizeChange();\n\t}\n\n\tprotected onChange_(\n\t\tchildren: EShape[],\n\t\tlayouts: EShapeLayout[],\n\t\tsx: number,\n\t\tsy: number,\n\t\tpx: number,\n\t\tpy: number,\n\t\tox: number,\n\t\toy: number\n\t): void {\n\t\tfor (let i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = layouts[i];\n\t\t\tif (layout.isCompatible(child)) {\n\t\t\t\tlayout.update(child, sx, sy, px, py);\n\t\t\t} else {\n\t\t\t\tlayouts.length = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tfor (let i = layouts.length, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tconst layout = this.newLayout(child, ox, oy);\n\t\t\tlayout.update(child, sx, sy, px, py);\n\t\t\tlayouts.push(layout);\n\t\t}\n\t\tif (layouts.length !== children.length) {\n\t\t\tlayouts.length = children.length;\n\t\t}\n\t}\n\n\tprotected newLayout(shape: EShape, ox: number, oy: number): EShapeLayout {\n\t\treturn shape.layout || new EShapeGroupSizeLayout(shape, ox, oy);\n\t}\n}\n"]}
@@ -6,6 +6,7 @@ import { Matrix, Point } from "pixi.js";
6
6
  import { EShapeCapabilities } from "../e-shape-capabilities";
7
7
  import { EShapeCapability } from "../e-shape-capability";
8
8
  import { EShapeTransforms } from "../e-shape-transforms";
9
+ import { EShapeLockPart } from "./e-shape-lock-part";
9
10
  var EShapeGroupSizeLayout = /** @class */ (function () {
10
11
  function EShapeGroupSizeLayout(shape, bx, by) {
11
12
  this.shape = shape;
@@ -51,9 +52,9 @@ var EShapeGroupSizeLayout = /** @class */ (function () {
51
52
  .translate(-pivotX, -pivotY)
52
53
  .scale(sx, sy)
53
54
  .translate(+pivotX, +pivotY);
54
- shape.disallowOnTransformChange();
55
+ shape.lock(EShapeLockPart.TRANSFORM);
55
56
  EShapeTransforms.applyLocal(shape, transform, EShapeCapability.ALL, childBase);
56
- shape.allowOnTransformChange(false);
57
+ shape.unlock(EShapeLockPart.TRANSFORM, false);
57
58
  };
58
59
  EShapeGroupSizeLayout.WORK_TRANSFORM = new Matrix();
59
60
  return EShapeGroupSizeLayout;
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-group-size-layout.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-layout.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 { EShapeCapabilities } from \"../e-shape-capabilities\";\nimport { EShapeCapability } from \"../e-shape-capability\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapeTransforms } from \"../e-shape-transforms\";\n\nexport class EShapeGroupSizeLayout implements EShapeLayout {\n\tprotected static WORK_TRANSFORM: Matrix = new Matrix();\n\n\tprotected shape: EShape;\n\tprotected base: Point;\n\tprotected shapeBase: Point;\n\tprotected transform: Matrix;\n\n\tprotected capable: boolean;\n\n\tconstructor(shape: EShape, bx: number, by: number) {\n\t\tthis.shape = shape;\n\n\t\t// Base group size\n\t\tthis.base = new Point(bx, by);\n\n\t\t// Base shape size\n\t\tconst size = shape.size;\n\t\tthis.shapeBase = new Point(size.x, size.y);\n\n\t\t// Transform\n\t\tthis.transform = new Matrix();\n\t\tshape.updateTransform();\n\t\tshape.transform.localTransform.copyTo(this.transform);\n\n\t\tthis.capable =\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.POSITION) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.WIDTH) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.HEIGHT) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.ROTATION) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.SKEW);\n\t}\n\n\tisCompatible(shape: EShape): boolean {\n\t\treturn this.shape === shape;\n\t}\n\n\treset(shape: EShape, baseX: number, baseY: number): void {\n\t\tthis.base.set(baseX, baseY);\n\n\t\t// Base shape size\n\t\tconst size = shape.size;\n\t\tthis.shapeBase.copyFrom(size);\n\n\t\t// Transform\n\t\tshape.updateTransform();\n\t\tshape.transform.localTransform.copyTo(this.transform);\n\t}\n\n\tupdate(shape: EShape, baseX: number, baseY: number, pivotX: number, pivotY: number): void {\n\t\tif (!this.capable) {\n\t\t\treturn;\n\t\t}\n\t\tconst sx = baseX / this.base.x;\n\t\tconst sy = baseY / this.base.y;\n\t\tconst childBase = this.shapeBase;\n\t\tconst transform = EShapeGroupSizeLayout.WORK_TRANSFORM;\n\t\ttransform\n\t\t\t.identity()\n\t\t\t.append(this.transform)\n\t\t\t.translate(-pivotX, -pivotY)\n\t\t\t.scale(sx, sy)\n\t\t\t.translate(+pivotX, +pivotY);\n\t\tshape.disallowOnTransformChange();\n\t\tEShapeTransforms.applyLocal(shape, transform, EShapeCapability.ALL, childBase);\n\t\tshape.allowOnTransformChange(false);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-group-size-layout.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-layout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;IAUC,+BAAY,KAAa,EAAE,EAAU,EAAE,EAAU;QAChD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,kBAAkB;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAE9B,kBAAkB;QAClB,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE3C,YAAY;QACZ,IAAI,CAAC,SAAS,GAAG,IAAI,MAAM,EAAE,CAAC;QAC9B,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,IAAI,CAAC,OAAO;YACX,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC;gBAC7D,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC;gBAC1D,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC;gBAC3D,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC;gBAC7D,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,4CAAY,GAAZ,UAAa,KAAa;QACzB,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;IAC7B,CAAC;IAED,qCAAK,GAAL,UAAM,KAAa,EAAE,KAAa,EAAE,KAAa;QAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE5B,kBAAkB;QAClB,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE9B,YAAY;QACZ,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,sCAAM,GAAN,UAAO,KAAa,EAAE,KAAa,EAAE,KAAa,EAAE,MAAc,EAAE,MAAc;QACjF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAClB,OAAO;SACP;QACD,IAAM,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,IAAM,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,IAAM,SAAS,GAAG,qBAAqB,CAAC,cAAc,CAAC;QACvD,SAAS;aACP,QAAQ,EAAE;aACV,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;aACtB,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC;aAC3B,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;aACb,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACrC,gBAAgB,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC/E,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAjEgB,oCAAc,GAAW,IAAI,MAAM,EAAE,CAAC;IAkExD,4BAAC;CAAA,AAnED,IAmEC;SAnEY,qBAAqB","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 { EShapeCapabilities } from \"../e-shape-capabilities\";\nimport { EShapeCapability } from \"../e-shape-capability\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapeTransforms } from \"../e-shape-transforms\";\nimport { EShapeLockPart } from \"./e-shape-lock-part\";\n\nexport class EShapeGroupSizeLayout implements EShapeLayout {\n\tprotected static WORK_TRANSFORM: Matrix = new Matrix();\n\n\tprotected shape: EShape;\n\tprotected base: Point;\n\tprotected shapeBase: Point;\n\tprotected transform: Matrix;\n\n\tprotected capable: boolean;\n\n\tconstructor(shape: EShape, bx: number, by: number) {\n\t\tthis.shape = shape;\n\n\t\t// Base group size\n\t\tthis.base = new Point(bx, by);\n\n\t\t// Base shape size\n\t\tconst size = shape.size;\n\t\tthis.shapeBase = new Point(size.x, size.y);\n\n\t\t// Transform\n\t\tthis.transform = new Matrix();\n\t\tshape.updateTransform();\n\t\tshape.transform.localTransform.copyTo(this.transform);\n\n\t\tthis.capable =\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.POSITION) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.WIDTH) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.HEIGHT) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.ROTATION) &&\n\t\t\tEShapeCapabilities.contains(shape, EShapeCapability.SKEW);\n\t}\n\n\tisCompatible(shape: EShape): boolean {\n\t\treturn this.shape === shape;\n\t}\n\n\treset(shape: EShape, baseX: number, baseY: number): void {\n\t\tthis.base.set(baseX, baseY);\n\n\t\t// Base shape size\n\t\tconst size = shape.size;\n\t\tthis.shapeBase.copyFrom(size);\n\n\t\t// Transform\n\t\tshape.updateTransform();\n\t\tshape.transform.localTransform.copyTo(this.transform);\n\t}\n\n\tupdate(shape: EShape, baseX: number, baseY: number, pivotX: number, pivotY: number): void {\n\t\tif (!this.capable) {\n\t\t\treturn;\n\t\t}\n\t\tconst sx = baseX / this.base.x;\n\t\tconst sy = baseY / this.base.y;\n\t\tconst childBase = this.shapeBase;\n\t\tconst transform = EShapeGroupSizeLayout.WORK_TRANSFORM;\n\t\ttransform\n\t\t\t.identity()\n\t\t\t.append(this.transform)\n\t\t\t.translate(-pivotX, -pivotY)\n\t\t\t.scale(sx, sy)\n\t\t\t.translate(+pivotX, +pivotY);\n\t\tshape.lock(EShapeLockPart.TRANSFORM);\n\t\tEShapeTransforms.applyLocal(shape, transform, EShapeCapability.ALL, childBase);\n\t\tshape.unlock(EShapeLockPart.TRANSFORM, false);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-group-size-parent.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-parent.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeTransform } from \"../e-shape-transform\";\n\nexport interface EShapeGroupSizeParent {\n\treadonly children: EShape[];\n\treadonly transform: EShapeTransform;\n\tupdateTransform(): void;\n\tdisallowOnTransformChange(): void;\n\tallowOnTransformChange(invokeOnTransformChange: boolean): void;\n\tonSizeChange(): void;\n}\n"]}
1
+ {"version":3,"file":"e-shape-group-size-parent.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-group-size-parent.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeTransform } from \"../e-shape-transform\";\nimport { EShapeLockPart } from \"./e-shape-lock-part\";\n\nexport interface EShapeGroupSizeParent {\n\treadonly children: EShape[];\n\treadonly transform: EShapeTransform;\n\tlock(part: EShapeLockPart): void;\n\tunlock(part: EShapeLockPart, invoke: boolean): void;\n\tonSizeChange(): void;\n\tupdateTransform(): void;\n}\n"]}
@@ -15,6 +15,7 @@ import { EShapeGroupStrokeEditor } from "./e-shape-group-stroke-editor";
15
15
  import { EShapeDataImpl } from "../e-shape-data-impl";
16
16
  import { EShapeTextImpl } from "./e-shape-text-impl";
17
17
  import { EShapeResourceManagerDeserializationMode } from "../e-shape-resource-manager-deserialization-mode";
18
+ import { EShapeConnectors } from "../e-shape-connectors";
18
19
  var EShapeGroup = /** @class */ (function (_super) {
19
20
  __extends(EShapeGroup, _super);
20
21
  function EShapeGroup(mode, type) {
@@ -175,6 +176,7 @@ var EShapeGroup = /** @class */ (function (_super) {
175
176
  clone.parent = result;
176
177
  result.children.push(clone);
177
178
  }
179
+ EShapeConnectors.moveAll(children, result.children, children, result.children);
178
180
  result.onChildTransformChange();
179
181
  result.toDirty();
180
182
  return result;
@@ -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":"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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\";\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\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":"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"]}
@@ -0,0 +1,8 @@
1
+ export var EShapeLockPart = {
2
+ TRANSFORM: 1,
3
+ TRANSFORM_PARENT: 2,
4
+ UPLOADED: 4,
5
+ TRANSFORM_AND_UPLOADED: 7,
6
+ CONNECTOR: 8
7
+ };
8
+ //# sourceMappingURL=e-shape-lock-part.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e-shape-lock-part.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-lock-part.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,cAAc,GAAG;IAC7B,SAAS,EAAE,CAAC;IACZ,gBAAgB,EAAE,CAAC;IACnB,QAAQ,EAAE,CAAC;IACX,sBAAsB,EAAE,CAAC;IACzB,SAAS,EAAE,CAAC;CACH,CAAC","sourcesContent":["export const EShapeLockPart = {\n\tTRANSFORM: 1,\n\tTRANSFORM_PARENT: 2,\n\tUPLOADED: 4,\n\tTRANSFORM_AND_UPLOADED: 7,\n\tCONNECTOR: 8\n} as const;\n\nexport type EShapeLockPart = number;\n"]}
@@ -0,0 +1,31 @@
1
+ var EShapeLock = /** @class */ (function () {
2
+ function EShapeLock() {
3
+ this._count = 0;
4
+ this._flag = 0;
5
+ }
6
+ EShapeLock.prototype.lock = function () {
7
+ this._count += 1;
8
+ if (this._count === 1) {
9
+ this._flag = 0;
10
+ return true;
11
+ }
12
+ return false;
13
+ };
14
+ EShapeLock.prototype.unlock = function () {
15
+ this._count -= 1;
16
+ return this._count <= 0 && this._flag !== 0;
17
+ };
18
+ EShapeLock.prototype.isLocked = function (high) {
19
+ if (0 < this._count) {
20
+ this._flag |= high ? 3 : 1;
21
+ return true;
22
+ }
23
+ return false;
24
+ };
25
+ EShapeLock.prototype.isHigh = function () {
26
+ return 1 < this._flag;
27
+ };
28
+ return EShapeLock;
29
+ }());
30
+ export { EShapeLock };
31
+ //# sourceMappingURL=e-shape-lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e-shape-lock.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-lock.ts"],"names":[],"mappings":"AAAA;IAIC;QACC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,yBAAI,GAAJ;QACC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,2BAAM,GAAN;QACC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,6BAAQ,GAAR,UAAS,IAAc;QACtB,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE;YACpB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,2BAAM,GAAN;QACC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,CAAC;IACF,iBAAC;AAAD,CAAC,AAlCD,IAkCC","sourcesContent":["export class EShapeLock {\n\tprotected _count: number;\n\tprotected _flag: number;\n\n\tconstructor() {\n\t\tthis._count = 0;\n\t\tthis._flag = 0;\n\t}\n\n\tlock(): boolean {\n\t\tthis._count += 1;\n\t\tif (this._count === 1) {\n\t\t\tthis._flag = 0;\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tunlock(): boolean {\n\t\tthis._count -= 1;\n\t\treturn this._count <= 0 && this._flag !== 0;\n\t}\n\n\tisLocked(high?: boolean): boolean {\n\t\tif (0 < this._count) {\n\t\t\tthis._flag |= high ? 3 : 1;\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tisHigh(): boolean {\n\t\treturn 1 < this._flag;\n\t}\n}\n"]}
@@ -170,6 +170,8 @@ export * from "./e-shape-line-of-triangle-roundeds";
170
170
  export * from "./e-shape-line-of-triangles";
171
171
  export * from "./e-shape-line-points";
172
172
  export * from "./e-shape-line";
173
+ export * from "./e-shape-lock-part";
174
+ export * from "./e-shape-lock";
173
175
  export * from "./e-shape-null";
174
176
  export * from "./e-shape-primitive";
175
177
  export * from "./e-shape-rectangle-pivoted";