@wcardinal/wcardinal-ui 0.150.2 → 0.154.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.
- package/dist/types/wcardinal/ui/d-chart-axis-base-options-parser.d.ts +4 -0
- package/dist/types/wcardinal/ui/d-chart-axis-base-options.d.ts +7 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate-container-sub-impl.d.ts +2 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate-direction.d.ts +5 -0
- package/dist/types/wcardinal/ui/d-chart-coordinate-linear-tick.d.ts +13 -8
- package/dist/types/wcardinal/ui/d-chart-coordinate-linear.d.ts +18 -14
- package/dist/types/wcardinal/ui/d-chart-coordinate-log-tick.d.ts +14 -7
- package/dist/types/wcardinal/ui/d-chart-coordinate-log.d.ts +18 -14
- package/dist/types/wcardinal/ui/d-chart-coordinate-tick-major-step-function.d.ts +1 -0
- package/dist/types/wcardinal/ui/d-chart-coordinate-tick-minor-step-function.d.ts +1 -0
- package/dist/types/wcardinal/ui/d-chart-coordinate-tick.d.ts +13 -0
- package/dist/types/wcardinal/ui/d-chart-coordinate-transform-impl.d.ts +8 -3
- package/dist/types/wcardinal/ui/d-chart-coordinate-transform.d.ts +6 -1
- package/dist/types/wcardinal/ui/d-chart-coordinate.d.ts +18 -7
- package/dist/types/wcardinal/ui/d-diagram-data-remote.d.ts +1 -1
- package/dist/types/wcardinal/ui/d-diagram-data.d.ts +8 -8
- package/dist/types/wcardinal/ui/d-view-constraint.d.ts +5 -0
- package/dist/types/wcardinal/ui/d-view-gesture-impl.d.ts +3 -1
- package/dist/types/wcardinal/ui/d-view-impl.d.ts +3 -0
- package/dist/types/wcardinal/ui/d-view-transform-impl.d.ts +4 -2
- package/dist/types/wcardinal/ui/d-view.d.ts +3 -0
- package/dist/types/wcardinal/ui/index.d.ts +5 -0
- package/dist/types/wcardinal/ui/shape/action/{e-shape-action-value-deserializer.d.ts → deserialize-action-value.d.ts} +1 -4
- package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtimes.d.ts +3 -3
- package/dist/types/wcardinal/ui/shape/action/index.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/e-shape-deserializers.d.ts +15 -4
- package/dist/types/wcardinal/ui/shape/index.d.ts +0 -3
- package/dist/types/wcardinal/ui/shape/variant/deserialize-all.d.ts +4 -0
- package/dist/types/wcardinal/ui/shape/variant/deserialize-bar.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-base.d.ts +4 -0
- package/dist/types/wcardinal/ui/shape/variant/deserialize-button.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-circle.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-connector-line.d.ts +2 -2
- package/dist/types/wcardinal/ui/shape/variant/deserialize-gradient.d.ts +2 -0
- package/dist/types/wcardinal/ui/shape/variant/deserialize-group-shadowed.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-group.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-image-sdf.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-image.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-label.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-circles.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-rectangle-roundeds.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-rectangles.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-triangle-roundeds.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line-of-triangles.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-line.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-null.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle-pivoted.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle-rounded.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-rectangle.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-triangle-rounded.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize-triangle.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/deserialize.d.ts +4 -0
- package/dist/types/wcardinal/ui/shape/variant/e-shape-embeddeds.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-circles.d.ts +2 -1
- package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-rectangle-roundeds.d.ts +2 -1
- package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-rectangles.d.ts +2 -1
- package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-triangle-roundeds.d.ts +2 -1
- package/dist/types/wcardinal/ui/shape/variant/e-shape-line-of-triangles.d.ts +2 -1
- package/dist/types/wcardinal/ui/shape/variant/index.d.ts +11 -2
- package/dist/types/wcardinal/ui/shape/variant/to-gradient-image-url.d.ts +2 -0
- package/dist/types/wcardinal/ui/shape/variant/to-gradient-serialized.d.ts +2 -0
- package/dist/types/wcardinal/ui/shape/variant/to-image-element.d.ts +1 -0
- package/dist/types/wcardinal/ui/shape/variant/to-resized.d.ts +3 -0
- package/dist/types/wcardinal/ui/shape/variant/to-size-normalized.d.ts +1 -0
- package/dist/types/wcardinal/ui/shape/variant/to-size-rounded.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-axis-base.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-tick.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-transform.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-plot-area.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/dark/index.d.ts +3 -2
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-axis-base.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-tick.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-transform.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-coordinate.d.ts +4 -0
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-plot-area.d.ts +1 -0
- package/dist/types/wcardinal/ui/theme/white/index.d.ts +3 -2
- package/dist/wcardinal/ui/d-chart-axis-base-options-parser.js +7 -5
- package/dist/wcardinal/ui/d-chart-axis-base-options-parser.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-axis-base-options.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-axis-base.js +16 -8
- package/dist/wcardinal/ui/d-chart-axis-base.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-container-impl.js +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-container-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-container-sub-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-direction.js +9 -0
- package/dist/wcardinal/ui/d-chart-coordinate-direction.js.map +1 -0
- package/dist/wcardinal/ui/d-chart-coordinate-linear-tick.js +64 -29
- package/dist/wcardinal/ui/d-chart-coordinate-linear-tick.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-linear.js +41 -8
- package/dist/wcardinal/ui/d-chart-coordinate-linear.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-log-tick.js +53 -28
- package/dist/wcardinal/ui/d-chart-coordinate-log-tick.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-log.js +41 -8
- package/dist/wcardinal/ui/d-chart-coordinate-log.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-tick-major-step-function.js +6 -0
- package/dist/wcardinal/ui/d-chart-coordinate-tick-major-step-function.js.map +1 -0
- package/dist/wcardinal/ui/d-chart-coordinate-tick-minor-step-function.js +6 -0
- package/dist/wcardinal/ui/d-chart-coordinate-tick-minor-step-function.js.map +1 -0
- package/dist/wcardinal/ui/d-chart-coordinate-tick.js +6 -0
- package/dist/wcardinal/ui/d-chart-coordinate-tick.js.map +1 -0
- package/dist/wcardinal/ui/d-chart-coordinate-transform-impl.js +23 -5
- package/dist/wcardinal/ui/d-chart-coordinate-transform-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate-transform.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-coordinate.js +1 -4
- package/dist/wcardinal/ui/d-chart-coordinate.js.map +1 -1
- package/dist/wcardinal/ui/d-chart-series-linear.js +43 -34
- package/dist/wcardinal/ui/d-chart-series-linear.js.map +1 -1
- package/dist/wcardinal/ui/d-diagram-data-remote.js +2 -0
- package/dist/wcardinal/ui/d-diagram-data-remote.js.map +1 -1
- package/dist/wcardinal/ui/d-diagram-data.js +16 -0
- package/dist/wcardinal/ui/d-diagram-data.js.map +1 -1
- package/dist/wcardinal/ui/d-diagrams.js +2 -2
- package/dist/wcardinal/ui/d-diagrams.js.map +1 -1
- package/dist/wcardinal/ui/d-view-constraint.js +6 -0
- package/dist/wcardinal/ui/d-view-constraint.js.map +1 -0
- package/dist/wcardinal/ui/d-view-gesture-impl.js +3 -3
- package/dist/wcardinal/ui/d-view-gesture-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-view-impl.js +16 -5
- package/dist/wcardinal/ui/d-view-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-view-transform-impl.js +6 -7
- package/dist/wcardinal/ui/d-view-transform-impl.js.map +1 -1
- package/dist/wcardinal/ui/d-view.js.map +1 -1
- package/dist/wcardinal/ui/index.js +5 -0
- package/dist/wcardinal/ui/index.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/deserialize-action-value.js +109 -0
- package/dist/wcardinal/ui/shape/action/deserialize-action-value.js.map +1 -0
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-height-absolute.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-height-absolute.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-height-relative.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-height-relative.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-size-absolute.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-size-absolute.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-size-relative.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-size-relative.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-width-absolute.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-width-absolute.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-width-relative.js +2 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-transform-resize-width-relative.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtimes.js +7 -2
- package/dist/wcardinal/ui/shape/action/e-shape-action-runtimes.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/index.js +1 -1
- package/dist/wcardinal/ui/shape/action/index.js.map +1 -1
- package/dist/wcardinal/ui/shape/e-shape-deserializers.js +7 -1
- package/dist/wcardinal/ui/shape/e-shape-deserializers.js.map +1 -1
- package/dist/wcardinal/ui/shape/e-shape-transforms.js +3 -3
- package/dist/wcardinal/ui/shape/e-shape-transforms.js.map +1 -1
- package/dist/wcardinal/ui/shape/index.js +0 -3
- package/dist/wcardinal/ui/shape/index.js.map +1 -1
- package/dist/wcardinal/ui/shape/load/load-shape-connector-line.js +3 -3
- package/dist/wcardinal/ui/shape/load/load-shape-connector-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/create-image-sdf.js +3 -3
- package/dist/wcardinal/ui/shape/variant/create-image-sdf.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/create-image.js +2 -2
- package/dist/wcardinal/ui/shape/variant/create-image.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-all.js +32 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-all.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-bar.js +4 -4
- package/dist/wcardinal/ui/shape/variant/deserialize-bar.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-base.js +100 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-base.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-button.js +4 -5
- package/dist/wcardinal/ui/shape/variant/deserialize-button.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-circle.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-circle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js +4 -4
- package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-embedded.js +15 -2
- package/dist/wcardinal/ui/shape/variant/deserialize-embedded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-gradient.js +34 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-gradient.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/deserialize-group-shadowed.js +4 -4
- package/dist/wcardinal/ui/shape/variant/deserialize-group-shadowed.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-group.js +4 -4
- package/dist/wcardinal/ui/shape/variant/deserialize-group.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-image-sdf.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-image-sdf.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-image.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-image.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-label.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-label.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-circles.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-circles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-rectangle-roundeds.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-rectangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-rectangles.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-rectangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-triangle-roundeds.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-triangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-triangles.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-line-of-triangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-line.js +4 -4
- package/dist/wcardinal/ui/shape/variant/deserialize-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-null.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-null.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle-pivoted.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle-pivoted.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle-rounded.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-rectangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-triangle-rounded.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-triangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize-triangle.js +3 -3
- package/dist/wcardinal/ui/shape/variant/deserialize-triangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/deserialize.js +17 -0
- package/dist/wcardinal/ui/shape/variant/deserialize.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/e-shape-bar.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-bar.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js +9 -2
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-button.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-button.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-circle.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-circle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-embeddeds.js +0 -13
- package/dist/wcardinal/ui/shape/variant/e-shape-embeddeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-image-sdf.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-image-sdf.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-image.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-image.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-label.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-label.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-circles.js +4 -3
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-circles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-rectangle-roundeds.js +4 -3
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-rectangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-rectangles.js +4 -3
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-rectangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-triangle-roundeds.js +4 -3
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-triangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-triangles.js +4 -3
- package/dist/wcardinal/ui/shape/variant/e-shape-line-of-triangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-null.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-null.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-rectangle-rounded.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-rectangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-rectangle.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-rectangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-triangle-rounded.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-triangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-triangle.js +1 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-triangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/index.js +11 -2
- package/dist/wcardinal/ui/shape/variant/index.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/to-gradient-image-url.js +35 -0
- package/dist/wcardinal/ui/shape/variant/to-gradient-image-url.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-gradient-serialized.js +15 -0
- package/dist/wcardinal/ui/shape/variant/to-gradient-serialized.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-image-element.js +32 -0
- package/dist/wcardinal/ui/shape/variant/to-image-element.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-resized.js +52 -0
- package/dist/wcardinal/ui/shape/variant/to-resized.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-size-normalized.js +12 -0
- package/dist/wcardinal/ui/shape/variant/to-size-normalized.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-size-rounded.js +8 -0
- package/dist/wcardinal/ui/shape/variant/to-size-rounded.js.map +1 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-axis-base.js +7 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-axis-base.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-tick.js +23 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-tick.js.map +1 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-transform.js +14 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-transform.js.map +1 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate.js +14 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate.js.map +1 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-plot-area.js +4 -0
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-plot-area.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart.js +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/index.js +3 -2
- package/dist/wcardinal/ui/theme/dark/index.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-chart.js +6 -4
- package/dist/wcardinal/ui/theme/dark/load/load-theme-dark-chart.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-axis-base.js +8 -2
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-axis-base.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-tick.js +23 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-tick.js.map +1 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-transform.js +14 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-transform.js.map +1 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate.js +14 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate.js.map +1 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-plot-area.js +4 -0
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-plot-area.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart.js +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/index.js +3 -2
- package/dist/wcardinal/ui/theme/white/index.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/load/load-theme-white-chart.js +6 -4
- package/dist/wcardinal/ui/theme/white/load/load-theme-white-chart.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +37 -28
- package/dist/wcardinal-ui-theme-dark.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white.js +38 -29
- package/dist/wcardinal-ui-theme-white.min.js +2 -2
- package/dist/wcardinal-ui-theme-white.min.js.map +1 -1
- package/dist/wcardinal-ui.cjs.js +2859 -2630
- package/dist/wcardinal-ui.js +2219 -2008
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
- package/dist/types/wcardinal/ui/shape/e-shape-deserializer.d.ts +0 -10
- package/dist/types/wcardinal/ui/shape/e-shape-image-elements.d.ts +0 -6
- package/dist/types/wcardinal/ui/shape/e-shape-sizes.d.ts +0 -7
- package/dist/types/wcardinal/ui/shape/variant/e-shape-gradients.d.ts +0 -9
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-linear.d.ts +0 -5
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-log.d.ts +0 -5
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-linear.d.ts +0 -5
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-log.d.ts +0 -5
- package/dist/wcardinal/ui/shape/action/e-shape-action-value-deserializer.js +0 -115
- package/dist/wcardinal/ui/shape/action/e-shape-action-value-deserializer.js.map +0 -1
- package/dist/wcardinal/ui/shape/e-shape-deserializer.js +0 -143
- package/dist/wcardinal/ui/shape/e-shape-deserializer.js.map +0 -1
- package/dist/wcardinal/ui/shape/e-shape-image-elements.js +0 -35
- package/dist/wcardinal/ui/shape/e-shape-image-elements.js.map +0 -1
- package/dist/wcardinal/ui/shape/e-shape-sizes.js +0 -66
- package/dist/wcardinal/ui/shape/e-shape-sizes.js.map +0 -1
- package/dist/wcardinal/ui/shape/variant/e-shape-gradients.js +0 -89
- package/dist/wcardinal/ui/shape/variant/e-shape-gradients.js.map +0 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-linear.js +0 -26
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-linear.js.map +0 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-log.js +0 -26
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-chart-coordinate-log.js.map +0 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-linear.js +0 -26
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-linear.js.map +0 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-log.js +0 -26
- package/dist/wcardinal/ui/theme/white/d-theme-white-chart-coordinate-log.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deserialize.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/deserialize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,IAAM,WAAW,GAAG,UAC1B,IAA4B,EAC5B,OAA6C;IAE7C,IAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1F,IAAI,YAAY,IAAI,IAAI,EAAE;QACzB,IAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC;SACd;KACD;IACD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAChD,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeDeserializers } from \"../e-shape-deserializers\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapeType } from \"../e-shape-type\";\n\nexport const deserialize = (\n\titem: DDiagramSerializedItem,\n\tmanager: EShapeResourceManagerDeserialization\n): Promise<EShape> | EShape => {\n\tconst deserializer = EShapeDeserializers[item[0]] || EShapeDeserializers[EShapeType.NULL];\n\tif (deserializer != null) {\n\t\tconst result = deserializer(item, manager);\n\t\tif (result != null) {\n\t\t\treturn result;\n\t\t}\n\t}\n\tthrow new Error(\"Missing shape deserializers\");\n};\n"]}
|
|
@@ -22,7 +22,7 @@ var EShapeBar = /** @class */ (function (_super) {
|
|
|
22
22
|
configurable: true
|
|
23
23
|
});
|
|
24
24
|
EShapeBar.prototype.clone = function () {
|
|
25
|
-
return new EShapeBar().copy(this);
|
|
25
|
+
return new EShapeBar(this.type).copy(this);
|
|
26
26
|
};
|
|
27
27
|
EShapeBar.prototype.containsAbsBBox = function (x, y, ax, ay) {
|
|
28
28
|
var size = Math.max(0, this._points.size);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-bar.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-bar.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;IAA+B,6BAAc;IAG5C,mBAAY,IAAiC;QAAjC,qBAAA,EAAA,OAAmB,UAAU,CAAC,GAAG;QAA7C,YACC,kBAAM,IAAI,CAAC,SAEX;QADA,KAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,KAAI,CAAC,CAAC;;IAC1C,CAAC;IAED,sBAAI,6BAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,yBAAK,GAAL;QACC,OAAO,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"e-shape-bar.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-bar.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;IAA+B,6BAAc;IAG5C,mBAAY,IAAiC;QAAjC,qBAAA,EAAA,OAAmB,UAAU,CAAC,GAAG;QAA7C,YACC,kBAAM,IAAI,CAAC,SAEX;QADA,KAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,KAAI,CAAC,CAAC;;IAC1C,CAAC;IAED,sBAAI,6BAAM;aAAV;YACC,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;;;OAAA;IAED,yBAAK,GAAL;QACC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,mCAAe,GAAf,UAAgB,CAAS,EAAE,CAAS,EAAE,EAAU,EAAE,EAAU;QAC3D,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,iBAAM,eAAe,YAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,6BAAS,GAAT,UAAU,OAA2C;QACpD,IAAM,MAAM,GAAG,iBAAM,SAAS,YAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7C,OAAO,MAAM,CAAC;IACf,CAAC;IACF,gBAAC;AAAD,CAAC,AA1BD,CAA+B,cAAc,GA0B5C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeBarPoints } from \"./e-shape-bar-points\";\nimport { EShapeLineBase } from \"./e-shape-line-base\";\n\nexport class EShapeBar extends EShapeLineBase {\n\tprotected declare _points: EShapeBarPoints;\n\n\tconstructor(type: EShapeType = EShapeType.BAR) {\n\t\tsuper(type);\n\t\tthis._points = new EShapeBarPoints(this);\n\t}\n\n\tget points(): EShapeBarPoints {\n\t\treturn this._points;\n\t}\n\n\tclone(): EShapeBar {\n\t\treturn new EShapeBar(this.type).copy(this);\n\t}\n\n\tcontainsAbsBBox(x: number, y: number, ax: number, ay: number): boolean {\n\t\tconst size = Math.max(0, this._points.size);\n\t\treturn super.containsAbsBBox(x, y, ax + size, ay + size);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tresult[15] = this._points.serialize(manager);\n\t\treturn result;\n\t}\n}\n"]}
|
|
@@ -12,8 +12,8 @@ import { EShapeStateSetImplObservable } from "../e-shape-state-set-impl-observab
|
|
|
12
12
|
import { EShapeStrokeStyle } from "../e-shape-stroke-style";
|
|
13
13
|
import { EShapeTransformImpl } from "../e-shape-transform";
|
|
14
14
|
import { EShapeBaseHitTestData } from "./e-shape-base-hit-test-data";
|
|
15
|
-
import { EShapeGradients } from "./e-shape-gradients";
|
|
16
15
|
import { hitTestBBox } from "./hit-test-bbox";
|
|
16
|
+
import { toGradientSerialized } from "./to-gradient-serialized";
|
|
17
17
|
var EShapeBase = /** @class */ (function (_super) {
|
|
18
18
|
__extends(EShapeBase, _super);
|
|
19
19
|
function EShapeBase(type) {
|
|
@@ -303,7 +303,14 @@ var EShapeBase = /** @class */ (function (_super) {
|
|
|
303
303
|
return image != null ? manager.addResource(image.src) : -1;
|
|
304
304
|
};
|
|
305
305
|
EShapeBase.prototype.serializeGradient = function (manager) {
|
|
306
|
-
|
|
306
|
+
var gradient = this.gradient;
|
|
307
|
+
if (gradient != null) {
|
|
308
|
+
if (gradient.serialized == null) {
|
|
309
|
+
gradient.serialized = toGradientSerialized(gradient);
|
|
310
|
+
}
|
|
311
|
+
return manager.addResource(gradient.serialized);
|
|
312
|
+
}
|
|
313
|
+
return -1;
|
|
307
314
|
};
|
|
308
315
|
EShapeBase.prototype.serializeState = function (manager) {
|
|
309
316
|
var state = this.state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n\tDisplayObject,\n\tIPoint,\n\tMatrix,\n\tPoint,\n\tRectangle,\n\tRenderer,\n\tTexture,\n\tTransform,\n\tutils\n} from \"pixi.js\";\nimport { DApplications } from \"../../d-applications\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeAction } from \"../action/e-shape-action\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeConnectorContainer } from \"../e-shape-connector-container\";\nimport { EShapeConnectorContainerImpl } from \"../e-shape-connector-container-impl\";\nimport { EShapeContainer } from \"../e-shape-container\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeEditor } from \"../e-shape-editor\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeRuntime } from \"../e-shape-runtime\";\nimport { EShapeStateSet } from \"../e-shape-state-set\";\nimport { EShapeStateSetImplObservable } from \"../e-shape-state-set-impl-observable\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeStrokeStyle } from \"../e-shape-stroke-style\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeTransform, EShapeTransformImpl } from \"../e-shape-transform\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeUploaded } from \"../e-shape-uploaded\";\nimport { EShapeBaseHitTestData } from \"./e-shape-base-hit-test-data\";\nimport { EShapeGradients } from \"./e-shape-gradients\";\nimport { hitTestBBox } from \"./hit-test-bbox\";\n\nexport abstract class EShapeBase extends utils.EventEmitter implements EShape {\n\tprotected static WORK_HIT_TEST_DATA?: EShapeBaseHitTestData;\n\tid: string;\n\tuuid: number;\n\treadonly type: EShapeType;\n\tabstract readonly size: IPoint;\n\tabstract readonly fill: EShapeFill;\n\tabstract readonly stroke: EShapeStroke;\n\treadonly transform: EShapeTransform;\n\tabstract radius: number;\n\tabstract corner: EShapeCorner;\n\tprotected _points?: EShapePoints;\n\tprotected _image?: HTMLImageElement;\n\timageSrc?: string;\n\ttexture?: Texture;\n\tabstract gradient?: EShapeGradientLike;\n\tabstract readonly text: EShapeText;\n\t/** @deprecated in favor of {@link data} */\n\tabstract readonly tag: EShapeData;\n\tabstract readonly data: EShapeData;\n\treadonly action: EShapeAction;\n\tabstract cursor: string;\n\tinteractive: boolean;\n\tshortcut?: string;\n\ttitle?: string;\n\n\tprotected _connector?: EShapeConnectorContainer;\n\n\tprotected _visible: boolean;\n\tprotected _onTransformChangeLock: number;\n\tprotected _isOnTransformChanged: boolean;\n\tprotected _uploadedUpdateLock: number;\n\tprotected _isUploadedUpdated: boolean;\n\tprotected _isUploadedUpdatedRecursively: boolean;\n\n\tprotected _bounds?: Rectangle;\n\tprotected _boundsTransformId: number;\n\tprotected _boundsInternal?: Rectangle;\n\tprotected _boundsInternalTransformId: number;\n\tprotected _boundsLocal?: Rectangle;\n\tprotected _boundsLocalTransformId: number;\n\n\tprotected _state?: EShapeStateSet;\n\n\t// Hierarchy\n\tparent: EShapeContainer | EShape | null;\n\tchildren: EShape[];\n\tlayout?: EShapeLayout;\n\n\t// Working space\n\tindex: number; // A work space for sorting.\n\tselected: boolean;\n\treference: number; // Count of references from commands\n\n\t// Working space for the viewer\n\truntime?: EShapeRuntime;\n\n\t// Working space for the editor\n\teditor?: EShapeEditor;\n\n\t// Working space for the renderer\n\tuploaded?: EShapeUploaded;\n\n\tconstructor(type: EShapeType) {\n\t\tsuper();\n\t\tthis.id = \"\";\n\t\tthis.uuid = 0;\n\t\tthis.type = type;\n\t\tthis.transform = this.newTransform();\n\t\tthis._onTransformChangeLock = 0;\n\t\tthis._isOnTransformChanged = false;\n\t\tthis.action = new EShapeAction();\n\t\tthis._visible = true;\n\t\tthis._uploadedUpdateLock = 0;\n\t\tthis._isUploadedUpdated = false;\n\t\tthis._isUploadedUpdatedRecursively = false;\n\n\t\tthis._boundsTransformId = NaN;\n\t\tthis._boundsInternalTransformId = NaN;\n\t\tthis._boundsLocalTransformId = NaN;\n\n\t\tthis.interactive = false;\n\n\t\t//\n\t\tthis.parent = null;\n\t\tthis.children = [];\n\n\t\t//\n\t\tthis.selected = false;\n\t\tthis.index = 0;\n\t\tthis.reference = 0;\n\t}\n\n\tprotected newTransform(): EShapeTransform {\n\t\treturn new EShapeTransformImpl(this);\n\t}\n\n\tonSizeChange(): void {\n\t\tthis._boundsTransformId = NaN;\n\t\tthis._boundsInternalTransformId = NaN;\n\t\tthis._boundsLocalTransformId = NaN;\n\n\t\tthis.onTransformChange_();\n\t\tthis.updateUploaded();\n\t\tthis._connector?.fit(true);\n\t}\n\n\tonTransformChange(): void {\n\t\tthis.onTransformChange_();\n\t\tthis.onParentTransformChange();\n\t}\n\n\tonParentTransformChange(): void {\n\t\tthis.updateUploaded();\n\t\tthis._connector?.fit(true);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onParentTransformChange();\n\t\t}\n\t}\n\n\tprotected onTransformChange_(): void {\n\t\tif (this._onTransformChangeLock === 0) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.onChildTransformChange();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isOnTransformChanged = true;\n\t\t}\n\t}\n\n\tdisallowOnTransformChange(): void {\n\t\tthis._onTransformChangeLock += 1;\n\t\tif (this._onTransformChangeLock === 1) {\n\t\t\tthis._isOnTransformChanged = false;\n\t\t}\n\t}\n\n\tallowOnTransformChange(invokeOnTransformChange: boolean): void {\n\t\tthis._onTransformChangeLock -= 1;\n\t\tif (this._onTransformChangeLock === 0) {\n\t\t\tif (this._isOnTransformChanged) {\n\t\t\t\tthis._isOnTransformChanged = false;\n\t\t\t\tif (invokeOnTransformChange) {\n\t\t\t\t\tthis.onTransformChange();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\t//\n\t}\n\n\tdisallowUploadedUpdate(): void {\n\t\tthis._uploadedUpdateLock += 1;\n\t\tif (this._uploadedUpdateLock === 1) {\n\t\t\tthis._isUploadedUpdated = false;\n\t\t\tthis._isUploadedUpdatedRecursively = false;\n\t\t}\n\t}\n\n\tallowUploadedUpdate(): void {\n\t\tthis._uploadedUpdateLock -= 1;\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tif (this._isUploadedUpdatedRecursively) {\n\t\t\t\tthis._isUploadedUpdatedRecursively = false;\n\t\t\t\tthis._isUploadedUpdated = false;\n\t\t\t\tthis.updateUploadedRecursively();\n\t\t\t} else if (this._isUploadedUpdated) {\n\t\t\t\tthis._isUploadedUpdated = false;\n\t\t\t\tthis.updateUploaded();\n\t\t\t}\n\t\t}\n\t}\n\n\tupdateUploadedRecursively(): void {\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tthis.updateUploaded();\n\t\t\tconst children = this.children;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tchildren[i].updateUploadedRecursively();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isUploadedUpdatedRecursively = true;\n\t\t}\n\t}\n\n\tupdateUploaded(): void {\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tconst uploaded = this.uploaded;\n\t\t\tif (uploaded != null) {\n\t\t\t\tuploaded.update(this);\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isUploadedUpdated = true;\n\t\t}\n\t}\n\n\tget image(): HTMLImageElement | undefined {\n\t\treturn this._image;\n\t}\n\n\tset image(image: HTMLImageElement | undefined) {\n\t\tthis._image = image;\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\treturn this._points;\n\t}\n\n\tget root(): EShape {\n\t\tlet root: EShape = this;\n\t\twhile (root.parent instanceof EShapeBase) {\n\t\t\troot = root.parent;\n\t\t}\n\t\treturn root;\n\t}\n\n\tget connector(): EShapeConnectorContainer {\n\t\tlet result = this._connector;\n\t\tif (result == null) {\n\t\t\tresult = new EShapeConnectorContainerImpl(this);\n\t\t\tthis._connector = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget visible(): boolean {\n\t\tif (this._visible) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\treturn parent.visible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._visible !== visible) {\n\t\t\tthis._visible = visible;\n\t\t\tthis.updateUploadedRecursively();\n\t\t}\n\t}\n\n\tget worldVisible(): boolean {\n\t\tif (this._visible) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent) {\n\t\t\t\treturn parent.worldVisible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t//\n\tabstract clone(): EShape;\n\n\t//\n\ttoDirty(): void {\n\t\tthis.parent?.toDirty();\n\t}\n\n\t// Hierarchy\n\tattach(parent: EShapeContainer | EShape, at?: number): this {\n\t\tthis.detach();\n\t\tthis.parent = parent;\n\t\tconst children = parent.children;\n\t\tif (at != null && 0 <= at && at < children.length) {\n\t\t\tchildren.splice(at, 0, this);\n\t\t} else {\n\t\t\tchildren.push(this);\n\t\t}\n\t\tthis.uploaded = undefined;\n\t\tparent.onChildTransformChange();\n\t\tparent.toDirty();\n\t\tthis.onAttach();\n\t\treturn this;\n\t}\n\n\tonAttach(): void {\n\t\tconst connector = this._connector;\n\t\tif (connector) {\n\t\t\tconnector.attach();\n\t\t\tconnector.fit(true);\n\t\t}\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onAttach();\n\t\t}\n\t}\n\n\tdetach(): this {\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tthis.parent = null;\n\t\t\tthis.uploaded = undefined;\n\t\t\tconst children = parent.children;\n\t\t\tconst index = children.indexOf(this);\n\t\t\tif (0 <= index) {\n\t\t\t\tchildren.splice(index, 1);\n\t\t\t\tparent.onChildTransformChange();\n\t\t\t\tparent.toDirty();\n\t\t\t\tthis.onDetach();\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tonDetach(): void {\n\t\tconst connector = this._connector;\n\t\tif (connector) {\n\t\t\tconnector.detach();\n\t\t}\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onDetach();\n\t\t}\n\t}\n\n\t// Transform\n\tupdateTransform(): void {\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tif (parent.parent) {\n\t\t\t\tparent.updateTransform();\n\t\t\t}\n\t\t\tthis.transform.updateTransform(parent.transform);\n\t\t} else {\n\t\t\tthis.transform.updateTransform(Transform.IDENTITY);\n\t\t}\n\t}\n\n\t// Serialization\n\tserializeChildren(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem[] {\n\t\tconst children = this.children;\n\t\tconst childrenSerialized = [];\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tchildrenSerialized.push(child.serialize(manager));\n\t\t}\n\t\treturn childrenSerialized;\n\t}\n\n\tserializeImage(manager: EShapeResourceManagerSerialization): number {\n\t\tconst image = this._image;\n\t\treturn image != null ? manager.addResource(image.src) : -1;\n\t}\n\n\tserializeGradient(manager: EShapeResourceManagerSerialization): number {\n\t\treturn EShapeGradients.toGradientId(this.gradient, manager);\n\t}\n\n\tserializeState(manager: EShapeResourceManagerSerialization): number {\n\t\tconst state = this.state;\n\t\treturn (this.interactive ? 1 : 0) | (state.isFocusable ? 0 : 2) | (state.isActive ? 4 : 0);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst transform = this.transform;\n\t\tconst position = transform.position;\n\t\tconst pivot = transform.pivot;\n\t\tconst size = this.size;\n\t\tconst shortcut = this.shortcut;\n\t\tconst shortcutId = shortcut != null ? manager.addResource(shortcut) : -1;\n\t\tconst title = this.title;\n\t\tconst titleId = title != null ? manager.addResource(title) : -1;\n\t\treturn [\n\t\t\tthis.type,\n\t\t\tmanager.addResource(this.id),\n\t\t\tposition.x,\n\t\t\tposition.y,\n\t\t\tsize.x,\n\t\t\tsize.y,\n\t\t\ttransform.rotation,\n\t\t\ttransform.skew.x,\n\t\t\tthis.fill.serialize(manager),\n\t\t\tthis.stroke.serialize(manager),\n\t\t\tmanager.addResource(this.cursor.trim()),\n\t\t\tthis.text.serialize(manager),\n\t\t\tthis.data.serialize(manager),\n\t\t\tthis.radius,\n\t\t\tthis.corner,\n\t\t\t-1,\n\t\t\t-1,\n\t\t\tthis.action.serialize(manager),\n\t\t\tthis.serializeImage(manager),\n\t\t\tthis.serializeGradient(manager),\n\t\t\tthis.serializeChildren(manager),\n\t\t\tpivot.x,\n\t\t\tpivot.y,\n\t\t\tthis.serializeState(manager),\n\t\t\tshortcutId,\n\t\t\ttitleId,\n\t\t\tthis.uuid\n\t\t];\n\t}\n\n\taddUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tthis.uuid = manager.addUuid(this.uuid);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].addUuid(manager);\n\t\t}\n\t}\n\n\tupdateUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tthis.uuid = manager.updateUuid(this.uuid);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].updateUuid(manager);\n\t\t}\n\t}\n\n\t// Hit test\n\tprotected getShapeScale(): number {\n\t\tconst container = this.root.parent as any;\n\t\tif (container != null && container.getShapeScale != null) {\n\t\t\treturn container.getShapeScale();\n\t\t}\n\t\treturn 1.0;\n\t}\n\n\tprotected getStrokeWidthScale(style: EShapeStrokeStyle): number {\n\t\tif (style & EShapeStrokeStyle.NON_EXPANDING_WIDTH) {\n\t\t\tif (style & EShapeStrokeStyle.NON_SHRINKING_WIDTH) {\n\t\t\t\treturn this.getShapeScale();\n\t\t\t} else {\n\t\t\t\treturn Math.min(1.0, this.getShapeScale());\n\t\t\t}\n\t\t} else {\n\t\t\tif (style & EShapeStrokeStyle.NON_SHRINKING_WIDTH) {\n\t\t\t\treturn Math.max(1.0, this.getShapeScale());\n\t\t\t} else {\n\t\t\t\treturn 1.0;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getHitTestSize(result: EShapeBaseHitTestData): EShapeBaseHitTestData {\n\t\tconst size = this.size;\n\t\tresult.width = 0.5 * size.x;\n\t\tresult.height = 0.5 * size.y;\n\t\treturn result;\n\t}\n\n\ttoHitTestData(x: number, y: number): EShapeBaseHitTestData {\n\t\tconst result = this.getHitTestSize(\n\t\t\t(EShapeBase.WORK_HIT_TEST_DATA ??= new EShapeBaseHitTestData())\n\t\t);\n\t\tconst sx = result.width;\n\t\tconst sy = result.height;\n\t\tconst pivot = this.transform.pivot;\n\t\tconst dx = x - pivot.x;\n\t\tconst dy = y - pivot.y;\n\t\tconst stroke = this.stroke;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeScale = this.getStrokeWidthScale(stroke.style);\n\t\tconst strokeAlign = stroke.align;\n\t\tconst s = strokeWidth * strokeScale * strokeAlign;\n\t\treturn result.set(\n\t\t\t0 <= sx ? +dx : -dx,\n\t\t\t0 <= sy ? +dy : -dy,\n\t\t\tMath.abs(sx) + s,\n\t\t\tMath.abs(sy) + s,\n\t\t\tstrokeWidth,\n\t\t\tstrokeScale,\n\t\t\tstrokeAlign\n\t\t);\n\t}\n\n\tcontains(x: number, y: number): EShape | null {\n\t\tconst data = this.toHitTestData(x, y);\n\t\tif (\n\t\t\tthis.containsAbs(\n\t\t\t\tdata.x,\n\t\t\t\tdata.y,\n\t\t\t\tdata.width,\n\t\t\t\tdata.height,\n\t\t\t\tdata.strokeWidth,\n\t\t\t\tdata.strokeScale,\n\t\t\t\tdata.strokeAlign\n\t\t\t)\n\t\t) {\n\t\t\treturn this;\n\t\t}\n\t\treturn this.containsText(x, y) || this.containsChildren(x, y);\n\t}\n\n\tprotected containsText(x: number, y: number): EShape | null {\n\t\tconst text = this.text;\n\t\tconst textAtlas = text.atlas;\n\t\tif (textAtlas != null) {\n\t\t\tconst textWorld = text.world;\n\t\t\tif (textWorld != null) {\n\t\t\t\tconst transform = this.transform.internalTransform;\n\t\t\t\tconst tx = transform.a * x + transform.c * y + transform.tx - textWorld[0];\n\t\t\t\tconst ty = transform.b * x + transform.d * y + transform.ty - textWorld[1];\n\t\t\t\tconst th = textWorld[2] * tx + textWorld[3] * ty;\n\t\t\t\tconst tv = textWorld[4] * tx + textWorld[5] * ty;\n\t\t\t\tif (0 <= th && th <= textWorld[6] && 0 <= tv && tv <= textWorld[7]) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected containsChildren(x: number, y: number): EShape | null {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst child = children[i];\n\t\t\tchild.updateTransform();\n\t\t\tconst localTransform = child.transform.localTransform;\n\t\t\tconst a = localTransform.a;\n\t\t\tconst b = localTransform.b;\n\t\t\tconst c = localTransform.c;\n\t\t\tconst d = localTransform.d;\n\t\t\tconst tx = localTransform.tx;\n\t\t\tconst ty = localTransform.ty;\n\t\t\tconst id = 1 / (a * d - c * b);\n\t\t\tconst lx = (d * x - c * y + ty * c - tx * d) * id;\n\t\t\tconst ly = (a * y - b * x - ty * a + tx * b) * id;\n\t\t\tconst childResult = child.contains(lx, ly);\n\t\t\tif (childResult != null) {\n\t\t\t\treturn childResult;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tcontainsBBox(x: number, y: number): boolean {\n\t\tconst data = this.toHitTestData(x, y);\n\t\treturn this.containsAbsBBox(data.x, data.y, data.width, data.height);\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 this.containsAbsBBox(x, y, ax, ay);\n\t}\n\n\tcontainsAbsBBox(x: number, y: number, ax: number, ay: number): boolean {\n\t\treturn hitTestBBox(x, y, ax, ay);\n\t}\n\n\tselect(point: Point): boolean {\n\t\treturn false;\n\t}\n\n\t//\n\ttoGlobal(position: IPoint, result: Point, skipUpdate?: boolean): Point {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tresult.copyFrom(position);\n\t\tthis.transform.worldTransform.apply(result, result);\n\t\treturn result;\n\t}\n\n\ttoLocal(position: IPoint, from?: DisplayObject, result?: Point, skipUpdate?: boolean): Point {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tif (result === undefined) {\n\t\t\tresult = new Point();\n\t\t}\n\t\tresult.copyFrom(position);\n\t\tthis.transform.worldTransform.applyInverse(result, result);\n\t\treturn result;\n\t}\n\n\tgetBounds(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst bounds = this._bounds || new Rectangle();\n\t\tthis._bounds = bounds;\n\t\tconst worldId = this.transform.getWorldId();\n\t\tif (worldId !== this._boundsTransformId) {\n\t\t\tthis._boundsTransformId = worldId;\n\t\t\tthis.getBounds_(this.transform.worldTransform, work, bounds);\n\t\t}\n\t\tresult.copyFrom(bounds);\n\t\treturn result;\n\t}\n\n\tgetBoundsInternal(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst boundsInternal = this._boundsInternal || new Rectangle();\n\t\tthis._boundsInternal = boundsInternal;\n\t\tconst currentLocalId = this.transform.getLocalIdCurrent();\n\t\tif (currentLocalId !== this._boundsInternalTransformId) {\n\t\t\tthis._boundsInternalTransformId = currentLocalId;\n\t\t\tthis.getBounds_(this.transform.internalTransform, work, boundsInternal);\n\t\t}\n\t\tresult.copyFrom(boundsInternal);\n\t\treturn result;\n\t}\n\n\tgetBoundsLocal(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst boundsLocal = this._boundsLocal || new Rectangle();\n\t\tthis._boundsLocal = boundsLocal;\n\t\tconst currentLocalId = this.transform.getLocalIdCurrent();\n\t\tif (currentLocalId !== this._boundsLocalTransformId) {\n\t\t\tthis._boundsLocalTransformId = currentLocalId;\n\t\t\tthis.getBounds_(this.transform.localTransform, work, boundsLocal);\n\t\t}\n\t\tresult.copyFrom(boundsLocal);\n\t\treturn result;\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\treturn this.size;\n\t}\n\n\tprotected getBounds_(transform: Matrix, work: Point, result: Rectangle): Rectangle {\n\t\tconst pivot = this.transform.pivot;\n\t\tconst px = pivot.x;\n\t\tconst py = pivot.y;\n\t\tconst size = this.getBoundsSize();\n\t\tconst sx = 0.5 * size.x;\n\t\tconst sy = 0.5 * size.y;\n\n\t\tconst a = transform.a;\n\t\tconst b = transform.b;\n\t\tconst c = transform.c;\n\t\tconst d = transform.d;\n\n\t\tlet x = -sx + px;\n\t\tlet y = -sy + py;\n\t\tconst x0 = a * x + c * y;\n\t\tconst y0 = b * x + d * y;\n\n\t\tx = +sx + px;\n\t\ty = -sy + py;\n\t\tconst x1 = a * x + c * y;\n\t\tconst y1 = b * x + d * y;\n\n\t\tx = -sx + px;\n\t\ty = +sy + py;\n\t\tconst x2 = a * x + c * y;\n\t\tconst y2 = b * x + d * y;\n\n\t\tx = +sx + px;\n\t\ty = +sy + py;\n\t\tconst x3 = a * x + c * y;\n\t\tconst y3 = b * x + d * y;\n\n\t\tconst xmin = Math.min(x0, x1, x2, x3);\n\t\tconst ymin = Math.min(y0, y1, y2, y3);\n\t\tconst xmax = Math.max(x0, x1, x2, x3);\n\t\tconst ymax = Math.max(y0, y1, y2, y3);\n\t\tresult.x = xmin + transform.tx;\n\t\tresult.y = ymin + transform.ty;\n\t\tresult.width = xmax - xmin;\n\t\tresult.height = ymax - ymin;\n\t\treturn result;\n\t}\n\n\t//\n\tdestroy(): void {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tchildren[i].destroy();\n\t\t}\n\t\tchildren.length = 0;\n\t}\n\n\t//\n\tprotected onStateChange(newState: DBaseStateSet, oldState: DBaseStateSet): void {\n\t\tthis.runtime?.onStateChange(this, newState, oldState);\n\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof EShapeBase) {\n\t\t\t\tchild.state.onParentChange(newState, oldState);\n\t\t\t}\n\t\t}\n\t}\n\n\tget state(): EShapeStateSet {\n\t\tlet result = this._state;\n\t\tif (result == null) {\n\t\t\tresult = new EShapeStateSetImplObservable((newState, oldState): void => {\n\t\t\t\tthis.onStateChange(newState, oldState);\n\t\t\t});\n\t\t\tthis._state = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tfocus(): this {\n\t\tthis.setFocused(true);\n\t\treturn this;\n\t}\n\n\tblur(): this {\n\t\tthis.setFocused(false);\n\t\treturn this;\n\t}\n\n\tprotected setFocused(isFocused: boolean): void {\n\t\tif (this.state.isFocused !== isFocused) {\n\t\t\tconst layer = DApplications.getLayer(this);\n\t\t\tif (layer) {\n\t\t\t\tlayer.getFocusController().set(this, isFocused);\n\t\t\t}\n\t\t}\n\t}\n\n\tonKeyDown(e: KeyboardEvent): boolean {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\treturn runtime.onKeyDown(this, e);\n\t\t}\n\t\treturn false;\n\t}\n\n\tonKeyUp(e: KeyboardEvent): boolean {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\treturn runtime.onKeyUp(this, e);\n\t\t}\n\t\treturn false;\n\t}\n\n\t//\n\tupdate(time: number): void {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\truntime.update(this, time);\n\t\t}\n\t}\n\n\tonRender(time: number, renderer: Renderer): void {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\truntime.onRender(this, time, renderer);\n\t\t}\n\t}\n\n\tupdateRecursively(time: number): void {\n\t\tthis.update(time);\n\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].update(time);\n\t\t}\n\t}\n\n\tcopy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tthis.id = source.id;\n\t\tthis.uuid = source.uuid;\n\t\tif (part & EShapeCopyPart.TRANSFORM) {\n\t\t\tconst transform = this.transform;\n\t\t\tconst sourceTransform = source.transform;\n\t\t\ttransform.position.copyFrom(sourceTransform.position);\n\t\t\ttransform.rotation = sourceTransform.rotation;\n\t\t\ttransform.skew.copyFrom(sourceTransform.skew);\n\t\t\ttransform.pivot.copyFrom(sourceTransform.pivot);\n\t\t\ttransform.scale.copyFrom(sourceTransform.scale);\n\t\t}\n\t\tif (part & EShapeCopyPart.SIZE) {\n\t\t\tthis.size.copyFrom(source.size);\n\t\t}\n\t\tif (part & EShapeCopyPart.STYLE) {\n\t\t\tthis.fill.copy(source.fill);\n\t\t\tthis.stroke.copy(source.stroke);\n\t\t\tthis.text.copy(source.text);\n\t\t\tthis.radius = source.radius;\n\t\t\tthis.corner = source.corner;\n\t\t}\n\t\tif (part & EShapeCopyPart.DATA) {\n\t\t\tthis.data.copy(source.data);\n\t\t}\n\t\tif (part & EShapeCopyPart.IMAGE) {\n\t\t\tthis.image = source.image;\n\t\t}\n\t\tif (part & EShapeCopyPart.ACTION) {\n\t\t\tthis.action.clearAndAddAll(source.action.values);\n\t\t\tthis.interactive = source.interactive;\n\t\t\tthis.cursor = source.cursor;\n\t\t\tthis.shortcut = source.shortcut;\n\t\t}\n\t\tif (part & EShapeCopyPart.POINTS) {\n\t\t\tconst sourcePoints = source.points;\n\t\t\tif (sourcePoints != null) {\n\t\t\t\tconst points = this.points;\n\t\t\t\tif (points != null) {\n\t\t\t\t\tpoints.copy(sourcePoints);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (part & EShapeCopyPart.STATE) {\n\t\t\tthis.state.lock(false).copy(source.state).unlock();\n\t\t}\n\t\tif (part & EShapeCopyPart.CONNECTOR) {\n\t\t\tif (source instanceof EShapeBase) {\n\t\t\t\tconst sourceConnector = source._connector;\n\t\t\t\tif (sourceConnector) {\n\t\t\t\t\tthis.connector.copy(sourceConnector);\n\t\t\t\t} else {\n\t\t\t\t\tconst connector = this._connector;\n\t\t\t\t\tif (connector) {\n\t\t\t\t\t\tconnector.clear();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst connector = this._connector;\n\t\t\t\tif (connector) {\n\t\t\t\t\tconnector.clear();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"e-shape-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-base.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n\tDisplayObject,\n\tIPoint,\n\tMatrix,\n\tPoint,\n\tRectangle,\n\tRenderer,\n\tTexture,\n\tTransform,\n\tutils\n} from \"pixi.js\";\nimport { DApplications } from \"../../d-applications\";\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeAction } from \"../action/e-shape-action\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeConnectorContainer } from \"../e-shape-connector-container\";\nimport { EShapeConnectorContainerImpl } from \"../e-shape-connector-container-impl\";\nimport { EShapeContainer } from \"../e-shape-container\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport { EShapeEditor } from \"../e-shape-editor\";\nimport { EShapeFill } from \"../e-shape-fill\";\nimport { EShapeGradientLike } from \"../e-shape-gradient\";\nimport { EShapeLayout } from \"../e-shape-layout\";\nimport { EShapePoints } from \"../e-shape-points\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeRuntime } from \"../e-shape-runtime\";\nimport { EShapeStateSet } from \"../e-shape-state-set\";\nimport { EShapeStateSetImplObservable } from \"../e-shape-state-set-impl-observable\";\nimport { EShapeStroke } from \"../e-shape-stroke\";\nimport { EShapeStrokeStyle } from \"../e-shape-stroke-style\";\nimport { EShapeData } from \"../e-shape-data\";\nimport { EShapeText } from \"../e-shape-text\";\nimport { EShapeTransform, EShapeTransformImpl } from \"../e-shape-transform\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeUploaded } from \"../e-shape-uploaded\";\nimport { EShapeBaseHitTestData } from \"./e-shape-base-hit-test-data\";\nimport { hitTestBBox } from \"./hit-test-bbox\";\nimport { toGradientSerialized } from \"./to-gradient-serialized\";\n\nexport abstract class EShapeBase extends utils.EventEmitter implements EShape {\n\tprotected static WORK_HIT_TEST_DATA?: EShapeBaseHitTestData;\n\tid: string;\n\tuuid: number;\n\treadonly type: EShapeType;\n\tabstract readonly size: IPoint;\n\tabstract readonly fill: EShapeFill;\n\tabstract readonly stroke: EShapeStroke;\n\treadonly transform: EShapeTransform;\n\tabstract radius: number;\n\tabstract corner: EShapeCorner;\n\tprotected _points?: EShapePoints;\n\tprotected _image?: HTMLImageElement;\n\timageSrc?: string;\n\ttexture?: Texture;\n\tabstract gradient?: EShapeGradientLike;\n\tabstract readonly text: EShapeText;\n\t/** @deprecated in favor of {@link data} */\n\tabstract readonly tag: EShapeData;\n\tabstract readonly data: EShapeData;\n\treadonly action: EShapeAction;\n\tabstract cursor: string;\n\tinteractive: boolean;\n\tshortcut?: string;\n\ttitle?: string;\n\n\tprotected _connector?: EShapeConnectorContainer;\n\n\tprotected _visible: boolean;\n\tprotected _onTransformChangeLock: number;\n\tprotected _isOnTransformChanged: boolean;\n\tprotected _uploadedUpdateLock: number;\n\tprotected _isUploadedUpdated: boolean;\n\tprotected _isUploadedUpdatedRecursively: boolean;\n\n\tprotected _bounds?: Rectangle;\n\tprotected _boundsTransformId: number;\n\tprotected _boundsInternal?: Rectangle;\n\tprotected _boundsInternalTransformId: number;\n\tprotected _boundsLocal?: Rectangle;\n\tprotected _boundsLocalTransformId: number;\n\n\tprotected _state?: EShapeStateSet;\n\n\t// Hierarchy\n\tparent: EShapeContainer | EShape | null;\n\tchildren: EShape[];\n\tlayout?: EShapeLayout;\n\n\t// Working space\n\tindex: number; // A work space for sorting.\n\tselected: boolean;\n\treference: number; // Count of references from commands\n\n\t// Working space for the viewer\n\truntime?: EShapeRuntime;\n\n\t// Working space for the editor\n\teditor?: EShapeEditor;\n\n\t// Working space for the renderer\n\tuploaded?: EShapeUploaded;\n\n\tconstructor(type: EShapeType) {\n\t\tsuper();\n\t\tthis.id = \"\";\n\t\tthis.uuid = 0;\n\t\tthis.type = type;\n\t\tthis.transform = this.newTransform();\n\t\tthis._onTransformChangeLock = 0;\n\t\tthis._isOnTransformChanged = false;\n\t\tthis.action = new EShapeAction();\n\t\tthis._visible = true;\n\t\tthis._uploadedUpdateLock = 0;\n\t\tthis._isUploadedUpdated = false;\n\t\tthis._isUploadedUpdatedRecursively = false;\n\n\t\tthis._boundsTransformId = NaN;\n\t\tthis._boundsInternalTransformId = NaN;\n\t\tthis._boundsLocalTransformId = NaN;\n\n\t\tthis.interactive = false;\n\n\t\t//\n\t\tthis.parent = null;\n\t\tthis.children = [];\n\n\t\t//\n\t\tthis.selected = false;\n\t\tthis.index = 0;\n\t\tthis.reference = 0;\n\t}\n\n\tprotected newTransform(): EShapeTransform {\n\t\treturn new EShapeTransformImpl(this);\n\t}\n\n\tonSizeChange(): void {\n\t\tthis._boundsTransformId = NaN;\n\t\tthis._boundsInternalTransformId = NaN;\n\t\tthis._boundsLocalTransformId = NaN;\n\n\t\tthis.onTransformChange_();\n\t\tthis.updateUploaded();\n\t\tthis._connector?.fit(true);\n\t}\n\n\tonTransformChange(): void {\n\t\tthis.onTransformChange_();\n\t\tthis.onParentTransformChange();\n\t}\n\n\tonParentTransformChange(): void {\n\t\tthis.updateUploaded();\n\t\tthis._connector?.fit(true);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onParentTransformChange();\n\t\t}\n\t}\n\n\tprotected onTransformChange_(): void {\n\t\tif (this._onTransformChangeLock === 0) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent != null) {\n\t\t\t\tparent.onChildTransformChange();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isOnTransformChanged = true;\n\t\t}\n\t}\n\n\tdisallowOnTransformChange(): void {\n\t\tthis._onTransformChangeLock += 1;\n\t\tif (this._onTransformChangeLock === 1) {\n\t\t\tthis._isOnTransformChanged = false;\n\t\t}\n\t}\n\n\tallowOnTransformChange(invokeOnTransformChange: boolean): void {\n\t\tthis._onTransformChangeLock -= 1;\n\t\tif (this._onTransformChangeLock === 0) {\n\t\t\tif (this._isOnTransformChanged) {\n\t\t\t\tthis._isOnTransformChanged = false;\n\t\t\t\tif (invokeOnTransformChange) {\n\t\t\t\t\tthis.onTransformChange();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tonChildTransformChange(): void {\n\t\t//\n\t}\n\n\tdisallowUploadedUpdate(): void {\n\t\tthis._uploadedUpdateLock += 1;\n\t\tif (this._uploadedUpdateLock === 1) {\n\t\t\tthis._isUploadedUpdated = false;\n\t\t\tthis._isUploadedUpdatedRecursively = false;\n\t\t}\n\t}\n\n\tallowUploadedUpdate(): void {\n\t\tthis._uploadedUpdateLock -= 1;\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tif (this._isUploadedUpdatedRecursively) {\n\t\t\t\tthis._isUploadedUpdatedRecursively = false;\n\t\t\t\tthis._isUploadedUpdated = false;\n\t\t\t\tthis.updateUploadedRecursively();\n\t\t\t} else if (this._isUploadedUpdated) {\n\t\t\t\tthis._isUploadedUpdated = false;\n\t\t\t\tthis.updateUploaded();\n\t\t\t}\n\t\t}\n\t}\n\n\tupdateUploadedRecursively(): void {\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tthis.updateUploaded();\n\t\t\tconst children = this.children;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tchildren[i].updateUploadedRecursively();\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isUploadedUpdatedRecursively = true;\n\t\t}\n\t}\n\n\tupdateUploaded(): void {\n\t\tif (this._uploadedUpdateLock === 0) {\n\t\t\tconst uploaded = this.uploaded;\n\t\t\tif (uploaded != null) {\n\t\t\t\tuploaded.update(this);\n\t\t\t}\n\t\t} else {\n\t\t\tthis._isUploadedUpdated = true;\n\t\t}\n\t}\n\n\tget image(): HTMLImageElement | undefined {\n\t\treturn this._image;\n\t}\n\n\tset image(image: HTMLImageElement | undefined) {\n\t\tthis._image = image;\n\t}\n\n\tget points(): EShapePoints | undefined {\n\t\treturn this._points;\n\t}\n\n\tget root(): EShape {\n\t\tlet root: EShape = this;\n\t\twhile (root.parent instanceof EShapeBase) {\n\t\t\troot = root.parent;\n\t\t}\n\t\treturn root;\n\t}\n\n\tget connector(): EShapeConnectorContainer {\n\t\tlet result = this._connector;\n\t\tif (result == null) {\n\t\t\tresult = new EShapeConnectorContainerImpl(this);\n\t\t\tthis._connector = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tget visible(): boolean {\n\t\tif (this._visible) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\treturn parent.visible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._visible !== visible) {\n\t\t\tthis._visible = visible;\n\t\t\tthis.updateUploadedRecursively();\n\t\t}\n\t}\n\n\tget worldVisible(): boolean {\n\t\tif (this._visible) {\n\t\t\tconst parent = this.parent;\n\t\t\tif (parent) {\n\t\t\t\treturn parent.worldVisible;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t//\n\tabstract clone(): EShape;\n\n\t//\n\ttoDirty(): void {\n\t\tthis.parent?.toDirty();\n\t}\n\n\t// Hierarchy\n\tattach(parent: EShapeContainer | EShape, at?: number): this {\n\t\tthis.detach();\n\t\tthis.parent = parent;\n\t\tconst children = parent.children;\n\t\tif (at != null && 0 <= at && at < children.length) {\n\t\t\tchildren.splice(at, 0, this);\n\t\t} else {\n\t\t\tchildren.push(this);\n\t\t}\n\t\tthis.uploaded = undefined;\n\t\tparent.onChildTransformChange();\n\t\tparent.toDirty();\n\t\tthis.onAttach();\n\t\treturn this;\n\t}\n\n\tonAttach(): void {\n\t\tconst connector = this._connector;\n\t\tif (connector) {\n\t\t\tconnector.attach();\n\t\t\tconnector.fit(true);\n\t\t}\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onAttach();\n\t\t}\n\t}\n\n\tdetach(): this {\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tthis.parent = null;\n\t\t\tthis.uploaded = undefined;\n\t\t\tconst children = parent.children;\n\t\t\tconst index = children.indexOf(this);\n\t\t\tif (0 <= index) {\n\t\t\t\tchildren.splice(index, 1);\n\t\t\t\tparent.onChildTransformChange();\n\t\t\t\tparent.toDirty();\n\t\t\t\tthis.onDetach();\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\n\tonDetach(): void {\n\t\tconst connector = this._connector;\n\t\tif (connector) {\n\t\t\tconnector.detach();\n\t\t}\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].onDetach();\n\t\t}\n\t}\n\n\t// Transform\n\tupdateTransform(): void {\n\t\tconst parent = this.parent;\n\t\tif (parent) {\n\t\t\tif (parent.parent) {\n\t\t\t\tparent.updateTransform();\n\t\t\t}\n\t\t\tthis.transform.updateTransform(parent.transform);\n\t\t} else {\n\t\t\tthis.transform.updateTransform(Transform.IDENTITY);\n\t\t}\n\t}\n\n\t// Serialization\n\tserializeChildren(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem[] {\n\t\tconst children = this.children;\n\t\tconst childrenSerialized = [];\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tchildrenSerialized.push(child.serialize(manager));\n\t\t}\n\t\treturn childrenSerialized;\n\t}\n\n\tserializeImage(manager: EShapeResourceManagerSerialization): number {\n\t\tconst image = this._image;\n\t\treturn image != null ? manager.addResource(image.src) : -1;\n\t}\n\n\tserializeGradient(manager: EShapeResourceManagerSerialization): number {\n\t\tconst gradient = this.gradient;\n\t\tif (gradient != null) {\n\t\t\tif (gradient.serialized == null) {\n\t\t\t\tgradient.serialized = toGradientSerialized(gradient);\n\t\t\t}\n\t\t\treturn manager.addResource(gradient.serialized);\n\t\t}\n\t\treturn -1;\n\t}\n\n\tserializeState(manager: EShapeResourceManagerSerialization): number {\n\t\tconst state = this.state;\n\t\treturn (this.interactive ? 1 : 0) | (state.isFocusable ? 0 : 2) | (state.isActive ? 4 : 0);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst transform = this.transform;\n\t\tconst position = transform.position;\n\t\tconst pivot = transform.pivot;\n\t\tconst size = this.size;\n\t\tconst shortcut = this.shortcut;\n\t\tconst shortcutId = shortcut != null ? manager.addResource(shortcut) : -1;\n\t\tconst title = this.title;\n\t\tconst titleId = title != null ? manager.addResource(title) : -1;\n\t\treturn [\n\t\t\tthis.type,\n\t\t\tmanager.addResource(this.id),\n\t\t\tposition.x,\n\t\t\tposition.y,\n\t\t\tsize.x,\n\t\t\tsize.y,\n\t\t\ttransform.rotation,\n\t\t\ttransform.skew.x,\n\t\t\tthis.fill.serialize(manager),\n\t\t\tthis.stroke.serialize(manager),\n\t\t\tmanager.addResource(this.cursor.trim()),\n\t\t\tthis.text.serialize(manager),\n\t\t\tthis.data.serialize(manager),\n\t\t\tthis.radius,\n\t\t\tthis.corner,\n\t\t\t-1,\n\t\t\t-1,\n\t\t\tthis.action.serialize(manager),\n\t\t\tthis.serializeImage(manager),\n\t\t\tthis.serializeGradient(manager),\n\t\t\tthis.serializeChildren(manager),\n\t\t\tpivot.x,\n\t\t\tpivot.y,\n\t\t\tthis.serializeState(manager),\n\t\t\tshortcutId,\n\t\t\ttitleId,\n\t\t\tthis.uuid\n\t\t];\n\t}\n\n\taddUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tthis.uuid = manager.addUuid(this.uuid);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].addUuid(manager);\n\t\t}\n\t}\n\n\tupdateUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tthis.uuid = manager.updateUuid(this.uuid);\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].updateUuid(manager);\n\t\t}\n\t}\n\n\t// Hit test\n\tprotected getShapeScale(): number {\n\t\tconst container = this.root.parent as any;\n\t\tif (container != null && container.getShapeScale != null) {\n\t\t\treturn container.getShapeScale();\n\t\t}\n\t\treturn 1.0;\n\t}\n\n\tprotected getStrokeWidthScale(style: EShapeStrokeStyle): number {\n\t\tif (style & EShapeStrokeStyle.NON_EXPANDING_WIDTH) {\n\t\t\tif (style & EShapeStrokeStyle.NON_SHRINKING_WIDTH) {\n\t\t\t\treturn this.getShapeScale();\n\t\t\t} else {\n\t\t\t\treturn Math.min(1.0, this.getShapeScale());\n\t\t\t}\n\t\t} else {\n\t\t\tif (style & EShapeStrokeStyle.NON_SHRINKING_WIDTH) {\n\t\t\t\treturn Math.max(1.0, this.getShapeScale());\n\t\t\t} else {\n\t\t\t\treturn 1.0;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getHitTestSize(result: EShapeBaseHitTestData): EShapeBaseHitTestData {\n\t\tconst size = this.size;\n\t\tresult.width = 0.5 * size.x;\n\t\tresult.height = 0.5 * size.y;\n\t\treturn result;\n\t}\n\n\ttoHitTestData(x: number, y: number): EShapeBaseHitTestData {\n\t\tconst result = this.getHitTestSize(\n\t\t\t(EShapeBase.WORK_HIT_TEST_DATA ??= new EShapeBaseHitTestData())\n\t\t);\n\t\tconst sx = result.width;\n\t\tconst sy = result.height;\n\t\tconst pivot = this.transform.pivot;\n\t\tconst dx = x - pivot.x;\n\t\tconst dy = y - pivot.y;\n\t\tconst stroke = this.stroke;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeScale = this.getStrokeWidthScale(stroke.style);\n\t\tconst strokeAlign = stroke.align;\n\t\tconst s = strokeWidth * strokeScale * strokeAlign;\n\t\treturn result.set(\n\t\t\t0 <= sx ? +dx : -dx,\n\t\t\t0 <= sy ? +dy : -dy,\n\t\t\tMath.abs(sx) + s,\n\t\t\tMath.abs(sy) + s,\n\t\t\tstrokeWidth,\n\t\t\tstrokeScale,\n\t\t\tstrokeAlign\n\t\t);\n\t}\n\n\tcontains(x: number, y: number): EShape | null {\n\t\tconst data = this.toHitTestData(x, y);\n\t\tif (\n\t\t\tthis.containsAbs(\n\t\t\t\tdata.x,\n\t\t\t\tdata.y,\n\t\t\t\tdata.width,\n\t\t\t\tdata.height,\n\t\t\t\tdata.strokeWidth,\n\t\t\t\tdata.strokeScale,\n\t\t\t\tdata.strokeAlign\n\t\t\t)\n\t\t) {\n\t\t\treturn this;\n\t\t}\n\t\treturn this.containsText(x, y) || this.containsChildren(x, y);\n\t}\n\n\tprotected containsText(x: number, y: number): EShape | null {\n\t\tconst text = this.text;\n\t\tconst textAtlas = text.atlas;\n\t\tif (textAtlas != null) {\n\t\t\tconst textWorld = text.world;\n\t\t\tif (textWorld != null) {\n\t\t\t\tconst transform = this.transform.internalTransform;\n\t\t\t\tconst tx = transform.a * x + transform.c * y + transform.tx - textWorld[0];\n\t\t\t\tconst ty = transform.b * x + transform.d * y + transform.ty - textWorld[1];\n\t\t\t\tconst th = textWorld[2] * tx + textWorld[3] * ty;\n\t\t\t\tconst tv = textWorld[4] * tx + textWorld[5] * ty;\n\t\t\t\tif (0 <= th && th <= textWorld[6] && 0 <= tv && tv <= textWorld[7]) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected containsChildren(x: number, y: number): EShape | null {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tconst child = children[i];\n\t\t\tchild.updateTransform();\n\t\t\tconst localTransform = child.transform.localTransform;\n\t\t\tconst a = localTransform.a;\n\t\t\tconst b = localTransform.b;\n\t\t\tconst c = localTransform.c;\n\t\t\tconst d = localTransform.d;\n\t\t\tconst tx = localTransform.tx;\n\t\t\tconst ty = localTransform.ty;\n\t\t\tconst id = 1 / (a * d - c * b);\n\t\t\tconst lx = (d * x - c * y + ty * c - tx * d) * id;\n\t\t\tconst ly = (a * y - b * x - ty * a + tx * b) * id;\n\t\t\tconst childResult = child.contains(lx, ly);\n\t\t\tif (childResult != null) {\n\t\t\t\treturn childResult;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tcontainsBBox(x: number, y: number): boolean {\n\t\tconst data = this.toHitTestData(x, y);\n\t\treturn this.containsAbsBBox(data.x, data.y, data.width, data.height);\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 this.containsAbsBBox(x, y, ax, ay);\n\t}\n\n\tcontainsAbsBBox(x: number, y: number, ax: number, ay: number): boolean {\n\t\treturn hitTestBBox(x, y, ax, ay);\n\t}\n\n\tselect(point: Point): boolean {\n\t\treturn false;\n\t}\n\n\t//\n\ttoGlobal(position: IPoint, result: Point, skipUpdate?: boolean): Point {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tresult.copyFrom(position);\n\t\tthis.transform.worldTransform.apply(result, result);\n\t\treturn result;\n\t}\n\n\ttoLocal(position: IPoint, from?: DisplayObject, result?: Point, skipUpdate?: boolean): Point {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tif (result === undefined) {\n\t\t\tresult = new Point();\n\t\t}\n\t\tresult.copyFrom(position);\n\t\tthis.transform.worldTransform.applyInverse(result, result);\n\t\treturn result;\n\t}\n\n\tgetBounds(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst bounds = this._bounds || new Rectangle();\n\t\tthis._bounds = bounds;\n\t\tconst worldId = this.transform.getWorldId();\n\t\tif (worldId !== this._boundsTransformId) {\n\t\t\tthis._boundsTransformId = worldId;\n\t\t\tthis.getBounds_(this.transform.worldTransform, work, bounds);\n\t\t}\n\t\tresult.copyFrom(bounds);\n\t\treturn result;\n\t}\n\n\tgetBoundsInternal(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst boundsInternal = this._boundsInternal || new Rectangle();\n\t\tthis._boundsInternal = boundsInternal;\n\t\tconst currentLocalId = this.transform.getLocalIdCurrent();\n\t\tif (currentLocalId !== this._boundsInternalTransformId) {\n\t\t\tthis._boundsInternalTransformId = currentLocalId;\n\t\t\tthis.getBounds_(this.transform.internalTransform, work, boundsInternal);\n\t\t}\n\t\tresult.copyFrom(boundsInternal);\n\t\treturn result;\n\t}\n\n\tgetBoundsLocal(work: Point, skipUpdate: boolean, result: Rectangle): Rectangle {\n\t\tif (skipUpdate !== true) {\n\t\t\tthis.updateTransform();\n\t\t}\n\t\tconst boundsLocal = this._boundsLocal || new Rectangle();\n\t\tthis._boundsLocal = boundsLocal;\n\t\tconst currentLocalId = this.transform.getLocalIdCurrent();\n\t\tif (currentLocalId !== this._boundsLocalTransformId) {\n\t\t\tthis._boundsLocalTransformId = currentLocalId;\n\t\t\tthis.getBounds_(this.transform.localTransform, work, boundsLocal);\n\t\t}\n\t\tresult.copyFrom(boundsLocal);\n\t\treturn result;\n\t}\n\n\tprotected getBoundsSize(): IPoint {\n\t\treturn this.size;\n\t}\n\n\tprotected getBounds_(transform: Matrix, work: Point, result: Rectangle): Rectangle {\n\t\tconst pivot = this.transform.pivot;\n\t\tconst px = pivot.x;\n\t\tconst py = pivot.y;\n\t\tconst size = this.getBoundsSize();\n\t\tconst sx = 0.5 * size.x;\n\t\tconst sy = 0.5 * size.y;\n\n\t\tconst a = transform.a;\n\t\tconst b = transform.b;\n\t\tconst c = transform.c;\n\t\tconst d = transform.d;\n\n\t\tlet x = -sx + px;\n\t\tlet y = -sy + py;\n\t\tconst x0 = a * x + c * y;\n\t\tconst y0 = b * x + d * y;\n\n\t\tx = +sx + px;\n\t\ty = -sy + py;\n\t\tconst x1 = a * x + c * y;\n\t\tconst y1 = b * x + d * y;\n\n\t\tx = -sx + px;\n\t\ty = +sy + py;\n\t\tconst x2 = a * x + c * y;\n\t\tconst y2 = b * x + d * y;\n\n\t\tx = +sx + px;\n\t\ty = +sy + py;\n\t\tconst x3 = a * x + c * y;\n\t\tconst y3 = b * x + d * y;\n\n\t\tconst xmin = Math.min(x0, x1, x2, x3);\n\t\tconst ymin = Math.min(y0, y1, y2, y3);\n\t\tconst xmax = Math.max(x0, x1, x2, x3);\n\t\tconst ymax = Math.max(y0, y1, y2, y3);\n\t\tresult.x = xmin + transform.tx;\n\t\tresult.y = ymin + transform.ty;\n\t\tresult.width = xmax - xmin;\n\t\tresult.height = ymax - ymin;\n\t\treturn result;\n\t}\n\n\t//\n\tdestroy(): void {\n\t\tconst children = this.children;\n\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\tchildren[i].destroy();\n\t\t}\n\t\tchildren.length = 0;\n\t}\n\n\t//\n\tprotected onStateChange(newState: DBaseStateSet, oldState: DBaseStateSet): void {\n\t\tthis.runtime?.onStateChange(this, newState, oldState);\n\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof EShapeBase) {\n\t\t\t\tchild.state.onParentChange(newState, oldState);\n\t\t\t}\n\t\t}\n\t}\n\n\tget state(): EShapeStateSet {\n\t\tlet result = this._state;\n\t\tif (result == null) {\n\t\t\tresult = new EShapeStateSetImplObservable((newState, oldState): void => {\n\t\t\t\tthis.onStateChange(newState, oldState);\n\t\t\t});\n\t\t\tthis._state = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tfocus(): this {\n\t\tthis.setFocused(true);\n\t\treturn this;\n\t}\n\n\tblur(): this {\n\t\tthis.setFocused(false);\n\t\treturn this;\n\t}\n\n\tprotected setFocused(isFocused: boolean): void {\n\t\tif (this.state.isFocused !== isFocused) {\n\t\t\tconst layer = DApplications.getLayer(this);\n\t\t\tif (layer) {\n\t\t\t\tlayer.getFocusController().set(this, isFocused);\n\t\t\t}\n\t\t}\n\t}\n\n\tonKeyDown(e: KeyboardEvent): boolean {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\treturn runtime.onKeyDown(this, e);\n\t\t}\n\t\treturn false;\n\t}\n\n\tonKeyUp(e: KeyboardEvent): boolean {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\treturn runtime.onKeyUp(this, e);\n\t\t}\n\t\treturn false;\n\t}\n\n\t//\n\tupdate(time: number): void {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\truntime.update(this, time);\n\t\t}\n\t}\n\n\tonRender(time: number, renderer: Renderer): void {\n\t\tconst runtime = this.runtime;\n\t\tif (runtime) {\n\t\t\truntime.onRender(this, time, renderer);\n\t\t}\n\t}\n\n\tupdateRecursively(time: number): void {\n\t\tthis.update(time);\n\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].update(time);\n\t\t}\n\t}\n\n\tcopy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tthis.id = source.id;\n\t\tthis.uuid = source.uuid;\n\t\tif (part & EShapeCopyPart.TRANSFORM) {\n\t\t\tconst transform = this.transform;\n\t\t\tconst sourceTransform = source.transform;\n\t\t\ttransform.position.copyFrom(sourceTransform.position);\n\t\t\ttransform.rotation = sourceTransform.rotation;\n\t\t\ttransform.skew.copyFrom(sourceTransform.skew);\n\t\t\ttransform.pivot.copyFrom(sourceTransform.pivot);\n\t\t\ttransform.scale.copyFrom(sourceTransform.scale);\n\t\t}\n\t\tif (part & EShapeCopyPart.SIZE) {\n\t\t\tthis.size.copyFrom(source.size);\n\t\t}\n\t\tif (part & EShapeCopyPart.STYLE) {\n\t\t\tthis.fill.copy(source.fill);\n\t\t\tthis.stroke.copy(source.stroke);\n\t\t\tthis.text.copy(source.text);\n\t\t\tthis.radius = source.radius;\n\t\t\tthis.corner = source.corner;\n\t\t}\n\t\tif (part & EShapeCopyPart.DATA) {\n\t\t\tthis.data.copy(source.data);\n\t\t}\n\t\tif (part & EShapeCopyPart.IMAGE) {\n\t\t\tthis.image = source.image;\n\t\t}\n\t\tif (part & EShapeCopyPart.ACTION) {\n\t\t\tthis.action.clearAndAddAll(source.action.values);\n\t\t\tthis.interactive = source.interactive;\n\t\t\tthis.cursor = source.cursor;\n\t\t\tthis.shortcut = source.shortcut;\n\t\t}\n\t\tif (part & EShapeCopyPart.POINTS) {\n\t\t\tconst sourcePoints = source.points;\n\t\t\tif (sourcePoints != null) {\n\t\t\t\tconst points = this.points;\n\t\t\t\tif (points != null) {\n\t\t\t\t\tpoints.copy(sourcePoints);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (part & EShapeCopyPart.STATE) {\n\t\t\tthis.state.lock(false).copy(source.state).unlock();\n\t\t}\n\t\tif (part & EShapeCopyPart.CONNECTOR) {\n\t\t\tif (source instanceof EShapeBase) {\n\t\t\t\tconst sourceConnector = source._connector;\n\t\t\t\tif (sourceConnector) {\n\t\t\t\t\tthis.connector.copy(sourceConnector);\n\t\t\t\t} else {\n\t\t\t\t\tconst connector = this._connector;\n\t\t\t\t\tif (connector) {\n\t\t\t\t\t\tconnector.clear();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst connector = this._connector;\n\t\t\t\tif (connector) {\n\t\t\t\t\tconnector.clear();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n}\n"]}
|
|
@@ -38,7 +38,7 @@ var EShapeButton = /** @class */ (function (_super) {
|
|
|
38
38
|
configurable: true
|
|
39
39
|
});
|
|
40
40
|
EShapeButton.prototype.clone = function () {
|
|
41
|
-
return new EShapeButton().copy(this);
|
|
41
|
+
return new EShapeButton(this.type).copy(this);
|
|
42
42
|
};
|
|
43
43
|
EShapeButton.prototype.serialize = function (manager) {
|
|
44
44
|
var result = _super.prototype.serialize.call(this, manager);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-button.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE;IAAkC,gCAAsB;IAIvD,sBAAY,IAAoC;QAApC,qBAAA,EAAA,OAAmB,UAAU,CAAC,MAAM;QAAhD,YACC,kBAAM,IAAI,CAAC,SAGX;QAFA,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;;IACzB,CAAC;IAED,sBAAI,kCAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAiB;YAC7B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,CAAC;;;OAJA;IASD,sBAAI,mCAAS;QAHb;;WAEG;aACH;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;aAED,UAAc,SAAkB;YAC/B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,CAAC;;;OAJA;IAMD,4BAAK,GAAL;QACC,OAAO,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"e-shape-button.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE;IAAkC,gCAAsB;IAIvD,sBAAY,IAAoC;QAApC,qBAAA,EAAA,OAAmB,UAAU,CAAC,MAAM;QAAhD,YACC,kBAAM,IAAI,CAAC,SAGX;QAFA,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;;IACzB,CAAC;IAED,sBAAI,kCAAQ;aAAZ;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAiB;YAC7B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,CAAC;;;OAJA;IASD,sBAAI,mCAAS;QAHb;;WAEG;aACH;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;aAED,UAAc,SAAkB;YAC/B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,CAAC;;;OAJA;IAMD,4BAAK,GAAL;QACC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,gCAAS,GAAT,UAAU,OAA2C;QACpD,IAAM,MAAM,GAAG,iBAAM,SAAS,YAAC,OAAO,CAAC,CAAC;QACxC,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,OAAI,QAAQ,GAAG,SAAS,OAAG,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IACf,CAAC;IACF,mBAAC;AAAD,CAAC,AAxCD,CAAkC,sBAAsB,GAwCvD","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeRectangleRounded } from \"./e-shape-rectangle-rounded\";\n\nexport class EShapeButton extends EShapeRectangleRounded {\n\tprotected _isToggle: boolean;\n\tprotected _isGrouped: boolean;\n\n\tconstructor(type: EShapeType = EShapeType.BUTTON) {\n\t\tsuper(type);\n\t\tthis._isToggle = false;\n\t\tthis._isGrouped = false;\n\t}\n\n\tget isToggle(): boolean {\n\t\treturn this._isToggle;\n\t}\n\n\tset isToggle(isToggle: boolean) {\n\t\tthis._isToggle = isToggle;\n\t}\n\n\t/**\n\t * All the sibling buttons whose `isGrouped` is true is considered to to be grouped.\n\t */\n\tget isGrouped(): boolean {\n\t\treturn this._isGrouped;\n\t}\n\n\tset isGrouped(isGrouped: boolean) {\n\t\tthis._isGrouped = isGrouped;\n\t}\n\n\tclone(): EShapeRectangleRounded {\n\t\treturn new EShapeButton(this.type).copy(this);\n\t}\n\n\tserialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tconst isToggle = this._isToggle ? 1 : 0;\n\t\tconst isGrouped = this._isGrouped ? 2 : 0;\n\t\tresult[15] = manager.addResource(`[${isToggle | isGrouped}]`);\n\t\treturn result;\n\t}\n}\n"]}
|
|
@@ -13,7 +13,7 @@ var EShapeCircle = /** @class */ (function (_super) {
|
|
|
13
13
|
return _super.call(this, type) || this;
|
|
14
14
|
}
|
|
15
15
|
EShapeCircle.prototype.clone = function () {
|
|
16
|
-
return new EShapeCircle().copy(this);
|
|
16
|
+
return new EShapeCircle(this.type).copy(this);
|
|
17
17
|
};
|
|
18
18
|
EShapeCircle.prototype.containsAbs = function (x, y, ax, ay, sw, ss, sa) {
|
|
19
19
|
if (_super.prototype.containsAbsBBox.call(this, x, y, ax, ay)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-circle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-circle.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD;IAAkC,gCAAe;IAChD,sBAAY,IAAoC;QAApC,qBAAA,EAAA,OAAmB,UAAU,CAAC,MAAM;eAC/C,kBAAM,IAAI,CAAC;IACZ,CAAC;IAED,4BAAK,GAAL;QACC,OAAO,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"e-shape-circle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-circle.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD;IAAkC,gCAAe;IAChD,sBAAY,IAAoC;QAApC,qBAAA,EAAA,OAAmB,UAAU,CAAC,MAAM;eAC/C,kBAAM,IAAI,CAAC;IACZ,CAAC;IAED,4BAAK,GAAL;QACC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,kCAAW,GAAX,UACC,CAAS,EACT,CAAS,EACT,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU,EACV,EAAU;QAEV,IAAI,iBAAM,eAAe,YAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;YACxC,OAAO,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;SACjD;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACF,mBAAC;AAAD,CAAC,AAvBD,CAAkC,eAAe,GAuBhD","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapePrimitive } from \"./e-shape-primitive\";\nimport { hitTestCircle } from \"./hit-test-circle\";\n\nexport class EShapeCircle extends EShapePrimitive {\n\tconstructor(type: EShapeType = EShapeType.CIRCLE) {\n\t\tsuper(type);\n\t}\n\n\tclone(): EShapeCircle {\n\t\treturn new EShapeCircle(this.type).copy(this);\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\tif (super.containsAbsBBox(x, y, ax, ay)) {\n\t\t\treturn hitTestCircle(this, x, y, ax, ay, sw, ss);\n\t\t}\n\t\treturn false;\n\t}\n}\n"]}
|
|
@@ -209,7 +209,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
|
|
|
209
209
|
return this;
|
|
210
210
|
};
|
|
211
211
|
EShapeConnectorLine.prototype.clone = function () {
|
|
212
|
-
return new EShapeConnectorLine().copy(this);
|
|
212
|
+
return new EShapeConnectorLine(this.type).copy(this);
|
|
213
213
|
};
|
|
214
214
|
EShapeConnectorLine.prototype.serialize = function (manager) {
|
|
215
215
|
var result = _super.prototype.serialize.call(this, manager);
|
|
@@ -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\";\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 _tailMargin: number;\n\tprotected _headLocalId: 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._tailMargin = 0;\n\t\tthis._headLocalId = 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 tailMargin = tail.margin;\n\t\tconst head = edge.head;\n\t\tconst headLocalId = head.localId;\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._tailMargin !== tailMargin ||\n\t\t\tthis._headLocalId !== headLocalId ||\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._tailMargin = tailMargin;\n\t\t\tthis._headLocalId = headLocalId;\n\t\t\tthis._headMargin = headMargin;\n\t\t\tthis._bodyId !== bodyId;\n\n\t\t\t// Tail\n\t\t\tconst tailLocal = tail.local;\n\t\t\tconst tailLocalX = tailLocal.x;\n\t\t\tconst tailLocalY = tailLocal.y;\n\n\t\t\t// Head\n\t\t\tconst headLocal = head.local;\n\t\t\tconst headLocalX = headLocal.x;\n\t\t\tconst headLocalY = headLocal.y;\n\n\t\t\t// Body\n\t\t\tconst bodyValues = body.values;\n\t\t\tconst bodyValuesLength = bodyValues.length;\n\n\t\t\t// Values\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\t\t\tif (values.length < 4) {\n\t\t\t\tvalues[0] = 0;\n\t\t\t\tvalues[1] = 0;\n\t\t\t}\n\n\t\t\tconst threshold = 0.000001;\n\t\t\tconst x0 = tailLocalX - px;\n\t\t\tconst y0 = tailLocalY - py;\n\t\t\tconst x1 = headLocalX - px;\n\t\t\tconst y1 = headLocalY - py;\n\n\t\t\t// Body\n\t\t\tif (0 < bodyValuesLength) {\n\t\t\t\tconst cx = (x1 + x0) * 0.5;\n\t\t\t\tconst cy = (y1 + y0) * 0.5;\n\t\t\t\tconst dx = x1 - x0;\n\t\t\t\tconst dy = y1 - y0;\n\t\t\t\tconst a = Math.atan2(dy, dx);\n\t\t\t\tconst c = Math.cos(a);\n\t\t\t\tconst s = Math.sin(a);\n\t\t\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tfor (let i = 0; i < bodyValuesLength; i += 2) {\n\t\t\t\t\tconst x = bodyValues[i + 0];\n\t\t\t\t\tconst y = bodyValues[i + 1];\n\t\t\t\t\tvalues[i + 2] = cx + (c * x - s * y) * l;\n\t\t\t\t\tvalues[i + 3] = cy + (c * y + s * x) * l;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tail\n\t\t\tvalues[0] = x0;\n\t\t\tvalues[1] = y0;\n\t\t\tif (tailMargin !== 0) {\n\t\t\t\tconst dx = values[2] - x0;\n\t\t\t\tconst dy = values[3] - y0;\n\t\t\t\tconst d = dx * dx + dy * dy;\n\t\t\t\tif (threshold < d) {\n\t\t\t\t\tconst f = tailMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\t\tvalues[0] = x0 + dx * f;\n\t\t\t\t\tvalues[1] = y0 + dy * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Head\n\t\t\tvalues[2 + bodyValuesLength] = x1;\n\t\t\tvalues[3 + bodyValuesLength] = y1;\n\t\t\tif (headMargin !== 0) {\n\t\t\t\tconst dx = values[0 + bodyValuesLength] - x1;\n\t\t\t\tconst dy = values[1 + bodyValuesLength] - y1;\n\t\t\t\tconst d = dx * dx + dy * dy;\n\t\t\t\tif (threshold < d) {\n\t\t\t\t\tconst f = headMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\t\tvalues[2 + bodyValuesLength] = x1 + dx * f;\n\t\t\t\t\tvalues[3 + bodyValuesLength] = y1 + dy * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove the rest\n\t\t\tvalues.length = bodyValuesLength + 4;\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\tthis.size.set(sx, sy);\n\t\t\tpoints.toFitted();\n\t\t\tpoints.set(values);\n\t\t\tthis.allowUploadedUpdate();\n\t\t}\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\treturn new EShapeConnectorLine().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\";\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 _tailMargin: number;\n\tprotected _headLocalId: 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._tailMargin = 0;\n\t\tthis._headLocalId = 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 tailMargin = tail.margin;\n\t\tconst head = edge.head;\n\t\tconst headLocalId = head.localId;\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._tailMargin !== tailMargin ||\n\t\t\tthis._headLocalId !== headLocalId ||\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._tailMargin = tailMargin;\n\t\t\tthis._headLocalId = headLocalId;\n\t\t\tthis._headMargin = headMargin;\n\t\t\tthis._bodyId !== bodyId;\n\n\t\t\t// Tail\n\t\t\tconst tailLocal = tail.local;\n\t\t\tconst tailLocalX = tailLocal.x;\n\t\t\tconst tailLocalY = tailLocal.y;\n\n\t\t\t// Head\n\t\t\tconst headLocal = head.local;\n\t\t\tconst headLocalX = headLocal.x;\n\t\t\tconst headLocalY = headLocal.y;\n\n\t\t\t// Body\n\t\t\tconst bodyValues = body.values;\n\t\t\tconst bodyValuesLength = bodyValues.length;\n\n\t\t\t// Values\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\t\t\tif (values.length < 4) {\n\t\t\t\tvalues[0] = 0;\n\t\t\t\tvalues[1] = 0;\n\t\t\t}\n\n\t\t\tconst threshold = 0.000001;\n\t\t\tconst x0 = tailLocalX - px;\n\t\t\tconst y0 = tailLocalY - py;\n\t\t\tconst x1 = headLocalX - px;\n\t\t\tconst y1 = headLocalY - py;\n\n\t\t\t// Body\n\t\t\tif (0 < bodyValuesLength) {\n\t\t\t\tconst cx = (x1 + x0) * 0.5;\n\t\t\t\tconst cy = (y1 + y0) * 0.5;\n\t\t\t\tconst dx = x1 - x0;\n\t\t\t\tconst dy = y1 - y0;\n\t\t\t\tconst a = Math.atan2(dy, dx);\n\t\t\t\tconst c = Math.cos(a);\n\t\t\t\tconst s = Math.sin(a);\n\t\t\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tfor (let i = 0; i < bodyValuesLength; i += 2) {\n\t\t\t\t\tconst x = bodyValues[i + 0];\n\t\t\t\t\tconst y = bodyValues[i + 1];\n\t\t\t\t\tvalues[i + 2] = cx + (c * x - s * y) * l;\n\t\t\t\t\tvalues[i + 3] = cy + (c * y + s * x) * l;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Tail\n\t\t\tvalues[0] = x0;\n\t\t\tvalues[1] = y0;\n\t\t\tif (tailMargin !== 0) {\n\t\t\t\tconst dx = values[2] - x0;\n\t\t\t\tconst dy = values[3] - y0;\n\t\t\t\tconst d = dx * dx + dy * dy;\n\t\t\t\tif (threshold < d) {\n\t\t\t\t\tconst f = tailMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\t\tvalues[0] = x0 + dx * f;\n\t\t\t\t\tvalues[1] = y0 + dy * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Head\n\t\t\tvalues[2 + bodyValuesLength] = x1;\n\t\t\tvalues[3 + bodyValuesLength] = y1;\n\t\t\tif (headMargin !== 0) {\n\t\t\t\tconst dx = values[0 + bodyValuesLength] - x1;\n\t\t\t\tconst dy = values[1 + bodyValuesLength] - y1;\n\t\t\t\tconst d = dx * dx + dy * dy;\n\t\t\t\tif (threshold < d) {\n\t\t\t\t\tconst f = headMargin / Math.sqrt(dx * dx + dy * dy);\n\t\t\t\t\tvalues[2 + bodyValuesLength] = x1 + dx * f;\n\t\t\t\t\tvalues[3 + bodyValuesLength] = y1 + dy * f;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove the rest\n\t\t\tvalues.length = bodyValuesLength + 4;\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\tthis.size.set(sx, sy);\n\t\t\tpoints.toFitted();\n\t\t\tpoints.set(values);\n\t\t\tthis.allowUploadedUpdate();\n\t\t}\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\treturn new EShapeConnectorLine(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,5 +1,4 @@
|
|
|
1
1
|
import { DDiagrams } from "../../d-diagrams";
|
|
2
|
-
import { EShapeDeserializer } from "../e-shape-deserializer";
|
|
3
2
|
import { EShapeResourceManagerDeserialization } from "../e-shape-resource-manager-deserialization";
|
|
4
3
|
import { EShapeEmbedded } from "./e-shape-embedded";
|
|
5
4
|
import { EShapeEmbeddedLayerContainer } from "./e-shape-embedded-layer-container";
|
|
@@ -24,18 +23,6 @@ var EShapeEmbeddeds = /** @class */ (function () {
|
|
|
24
23
|
return _this.create(serialized.name, width, height, container, manager);
|
|
25
24
|
});
|
|
26
25
|
};
|
|
27
|
-
EShapeEmbeddeds.deserialize = function (name, width, height, container, manager, item) {
|
|
28
|
-
var shape = new EShapeEmbedded(name, manager.isEditMode);
|
|
29
|
-
var result = EShapeDeserializer.deserialize(item, manager, shape);
|
|
30
|
-
var shapeSize = shape.size;
|
|
31
|
-
var sizeX = shapeSize.x;
|
|
32
|
-
var sizeY = shapeSize.y;
|
|
33
|
-
shape.size.set(width, height);
|
|
34
|
-
container.copyTo(shape);
|
|
35
|
-
shape.size.init();
|
|
36
|
-
shape.size.set(sizeX, sizeY);
|
|
37
|
-
return result;
|
|
38
|
-
};
|
|
39
26
|
EShapeEmbeddeds.create = function (name, width, height, container, manager) {
|
|
40
27
|
var shape = new EShapeEmbedded(name, manager.isEditMode);
|
|
41
28
|
shape.size.set(width, height);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-embeddeds.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-embeddeds.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"e-shape-embeddeds.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-embeddeds.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,oCAAoC,EAAE,MAAM,6CAA6C,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAElF;IAAA;IA8CA,CAAC;IA7CO,oBAAI,GAAX,UACC,kBAAiE,EACjE,UAAqD,EACrD,UAAmB;QAHpB,iBAUC;QALA,IAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QACjC,OAAO,SAAS,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,UAAC,SAAS;YAC3E,OAAO,KAAI,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACJ,CAAC;IAEc,qBAAK,GAApB,UACC,UAA8B,EAC9B,UAAmB,EACnB,MAAiB,EACjB,SAAmD;QAJpD,iBAkBC;QAZA,IAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC/B,IAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QACjC,IAAM,SAAS,GAAG,IAAI,4BAA4B,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAC9E,IAAM,OAAO,GAAG,IAAI,oCAAoC,CACvD,UAAU,EACV,MAAM,EACN,SAAS,EACT,UAAU,CACV,CAAC;QACF,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;YAC9D,OAAO,KAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,sBAAM,GAAb,UACC,IAAY,EACZ,KAAa,EACb,MAAc,EACd,SAA+B,EAC/B,OAA6C;QAE7C,IAAM,KAAK,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC9B,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACd,CAAC;IACF,sBAAC;AAAD,CAAC,AA9CD,IA8CC","sourcesContent":["import { DDiagramBaseController } from \"../../d-diagram-base\";\nimport { DDiagramSerialized, DDiagramSerializedSimple } from \"../../d-diagram-serialized\";\nimport { DDiagrams } from \"../../d-diagrams\";\nimport { EShapeLayerContainer } from \"../e-shape-layer-container\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { EShapeEmbedded } from \"./e-shape-embedded\";\nimport { EShapeEmbeddedDatum } from \"./e-shape-embedded-datum\";\nimport { EShapeEmbeddedLayerContainer } from \"./e-shape-embedded-layer-container\";\n\nexport class EShapeEmbeddeds {\n\tstatic from(\n\t\tserializedOrSimple: DDiagramSerialized | DDiagramSerializedSimple,\n\t\tcontroller: DDiagramBaseController | null | undefined,\n\t\tisEditMode: boolean\n\t): Promise<EShapeEmbedded> {\n\t\tconst serialized = DDiagrams.toSerialized(serializedOrSimple);\n\t\tconst pieces = serialized.pieces;\n\t\treturn DDiagrams.toPieceData(controller, pieces, isEditMode).then((pieceData) => {\n\t\t\treturn this.from_(serialized, isEditMode, pieces, pieceData);\n\t\t});\n\t}\n\n\tprivate static from_(\n\t\tserialized: DDiagramSerialized,\n\t\tisEditMode: boolean,\n\t\tpieces?: string[],\n\t\tpieceData?: Map<string, EShapeEmbeddedDatum | null>\n\t): Promise<EShapeEmbedded> {\n\t\tconst width = serialized.width;\n\t\tconst height = serialized.height;\n\t\tconst container = new EShapeEmbeddedLayerContainer(width, height, isEditMode);\n\t\tconst manager = new EShapeResourceManagerDeserialization(\n\t\t\tserialized,\n\t\t\tpieces,\n\t\t\tpieceData,\n\t\t\tisEditMode\n\t\t);\n\t\treturn DDiagrams.newLayer(serialized, container, manager).then(() => {\n\t\t\treturn this.create(serialized.name, width, height, container, manager);\n\t\t});\n\t}\n\n\tstatic create(\n\t\tname: string,\n\t\twidth: number,\n\t\theight: number,\n\t\tcontainer: EShapeLayerContainer,\n\t\tmanager: EShapeResourceManagerDeserialization\n\t): EShapeEmbedded {\n\t\tconst shape = new EShapeEmbedded(name, manager.isEditMode);\n\t\tshape.size.set(width, height);\n\t\tcontainer.copyTo(shape);\n\t\tshape.size.init();\n\t\treturn shape;\n\t}\n}\n"]}
|
|
@@ -12,7 +12,7 @@ var EShapeImageSdf = /** @class */ (function (_super) {
|
|
|
12
12
|
return _super.call(this, image, type) || this;
|
|
13
13
|
}
|
|
14
14
|
EShapeImageSdf.prototype.clone = function () {
|
|
15
|
-
return new EShapeImageSdf(this.image).copy(this);
|
|
15
|
+
return new EShapeImageSdf(this.image, this.type).copy(this);
|
|
16
16
|
};
|
|
17
17
|
return EShapeImageSdf;
|
|
18
18
|
}(EShapeImage));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-image-sdf.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image-sdf.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;IAAoC,kCAAW;IAC9C,wBAAY,KAAwB,EAAE,IAAuC;QAAvC,qBAAA,EAAA,OAAmB,UAAU,CAAC,SAAS;eAC5E,kBAAM,KAAK,EAAE,IAAI,CAAC;IACnB,CAAC;IAED,8BAAK,GAAL;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"e-shape-image-sdf.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image-sdf.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;IAAoC,kCAAW;IAC9C,wBAAY,KAAwB,EAAE,IAAuC;QAAvC,qBAAA,EAAA,OAAmB,UAAU,CAAC,SAAS;eAC5E,kBAAM,KAAK,EAAE,IAAI,CAAC;IACnB,CAAC;IAED,8BAAK,GAAL;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IACF,qBAAC;AAAD,CAAC,AARD,CAAoC,WAAW,GAQ9C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeImage } from \"./e-shape-image\";\n\nexport class EShapeImageSdf extends EShapeImage {\n\tconstructor(image?: HTMLImageElement, type: EShapeType = EShapeType.IMAGE_SDF) {\n\t\tsuper(image, type);\n\t}\n\n\tclone(): EShapeImageSdf {\n\t\treturn new EShapeImageSdf(this.image, this.type).copy(this);\n\t}\n}\n"]}
|
|
@@ -18,7 +18,7 @@ var EShapeImage = /** @class */ (function (_super) {
|
|
|
18
18
|
return _this;
|
|
19
19
|
}
|
|
20
20
|
EShapeImage.prototype.clone = function () {
|
|
21
|
-
return new EShapeImage(this.image).copy(this);
|
|
21
|
+
return new EShapeImage(this.image, this.type).copy(this);
|
|
22
22
|
};
|
|
23
23
|
return EShapeImage;
|
|
24
24
|
}(EShapeRectangle));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-image.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,KAAwB,EAAE,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;QAAzE,YACC,kBAAM,IAAI,CAAC,SAMX;QALA,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,KAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;;IACrB,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"e-shape-image.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-image.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,KAAwB,EAAE,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;QAAzE,YACC,kBAAM,IAAI,CAAC,SAMX;QALA,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,KAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;;IACrB,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IACF,kBAAC;AAAD,CAAC,AAbD,CAAiC,eAAe,GAa/C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeRectangle } from \"./e-shape-rectangle\";\n\nexport class EShapeImage extends EShapeRectangle {\n\tconstructor(image?: HTMLImageElement, type: EShapeType = EShapeType.IMAGE) {\n\t\tsuper(type);\n\t\tif (image != null) {\n\t\t\tthis.image = image;\n\t\t\tthis.size.set(image.width, image.height);\n\t\t}\n\t\tthis.fill.alpha = 1;\n\t}\n\n\tclone(): EShapeImage {\n\t\treturn new EShapeImage(this.image, this.type).copy(this);\n\t}\n}\n"]}
|
|
@@ -12,7 +12,7 @@ var EShapeLabel = /** @class */ (function (_super) {
|
|
|
12
12
|
return _super.call(this, type) || this;
|
|
13
13
|
}
|
|
14
14
|
EShapeLabel.prototype.clone = function () {
|
|
15
|
-
return new EShapeLabel().copy(this);
|
|
15
|
+
return new EShapeLabel(this.type).copy(this);
|
|
16
16
|
};
|
|
17
17
|
return EShapeLabel;
|
|
18
18
|
}(EShapePrimitive));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-label.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-label.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;eAC9C,kBAAM,IAAI,CAAC;IACZ,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,
|
|
1
|
+
{"version":3,"file":"e-shape-label.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-label.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;IAAiC,+BAAe;IAC/C,qBAAY,IAAmC;QAAnC,qBAAA,EAAA,OAAmB,UAAU,CAAC,KAAK;eAC9C,kBAAM,IAAI,CAAC;IACZ,CAAC;IAED,2BAAK,GAAL;QACC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACF,kBAAC;AAAD,CAAC,AARD,CAAiC,eAAe,GAQ/C","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapePrimitive } from \"./e-shape-primitive\";\n\nexport class EShapeLabel extends EShapePrimitive {\n\tconstructor(type: EShapeType = EShapeType.LABEL) {\n\t\tsuper(type);\n\t}\n\n\tclone(): EShapeLabel {\n\t\treturn new EShapeLabel(this.type).copy(this);\n\t}\n}\n"]}
|
|
@@ -9,8 +9,9 @@ import { EShapeLineOfAnyPointsImpl } from "./e-shape-line-of-any-points-impl";
|
|
|
9
9
|
import { toThresholdDefault } from "./to-threshold-default";
|
|
10
10
|
var EShapeLineOfCircles = /** @class */ (function (_super) {
|
|
11
11
|
__extends(EShapeLineOfCircles, _super);
|
|
12
|
-
function EShapeLineOfCircles() {
|
|
13
|
-
|
|
12
|
+
function EShapeLineOfCircles(type) {
|
|
13
|
+
if (type === void 0) { type = EShapeType.LINE_OF_CIRCLES; }
|
|
14
|
+
var _this = _super.call(this, type) || this;
|
|
14
15
|
_this._points = new EShapeLineOfAnyPointsImpl(_this);
|
|
15
16
|
_this._tester = function (x, y, ax, ay, ox, oy, px, py, sw, ss, sa) {
|
|
16
17
|
return _this.containsPointAbs(x, y, ax, ay, ox, oy, px, py, sw, ss, sa);
|
|
@@ -25,7 +26,7 @@ var EShapeLineOfCircles = /** @class */ (function (_super) {
|
|
|
25
26
|
configurable: true
|
|
26
27
|
});
|
|
27
28
|
EShapeLineOfCircles.prototype.clone = function () {
|
|
28
|
-
return new EShapeLineOfCircles().copy(this);
|
|
29
|
+
return new EShapeLineOfCircles(this.type).copy(this);
|
|
29
30
|
};
|
|
30
31
|
EShapeLineOfCircles.prototype.containsAbs = function (x, y, ax, ay, sw, ss, sa) {
|
|
31
32
|
var threshold = toThresholdDefault(sw, ss, this._points.size.getLimit());
|