@hatiolab/things-scene 9.0.0-beta.35 → 9.0.0-beta.36
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/babel.config.js +4 -3
- package/db.sqlite +0 -0
- package/dist/animation/animate.js +63 -0
- package/dist/animation/animate.js.map +1 -0
- package/dist/animation/animations/animation.js +122 -0
- package/dist/animation/animations/animation.js.map +1 -0
- package/dist/animation/animations/fade.js +28 -0
- package/dist/animation/animations/fade.js.map +1 -0
- package/dist/animation/animations/heartbeat.js +28 -0
- package/dist/animation/animations/heartbeat.js.map +1 -0
- package/dist/animation/animations/moving.js +24 -0
- package/dist/animation/animations/moving.js.map +1 -0
- package/dist/animation/animations/outline.js +47 -0
- package/dist/animation/animations/outline.js.map +1 -0
- package/dist/animation/animations/rotation.js +22 -0
- package/dist/animation/animations/rotation.js.map +1 -0
- package/dist/animation/animations/vibration.js +31 -0
- package/dist/animation/animations/vibration.js.map +1 -0
- package/dist/animation/compile.js +31 -0
- package/dist/animation/compile.js.map +1 -0
- package/dist/animation/delta.js +51 -0
- package/dist/animation/delta.js.map +1 -0
- package/dist/animation/index.js +14 -0
- package/dist/animation/index.js.map +1 -0
- package/dist/command/command-change.js +33 -0
- package/dist/command/command-change.js.map +1 -0
- package/dist/command/command-migrate.js +103 -0
- package/dist/command/command-migrate.js.map +1 -0
- package/dist/command/command.js +18 -0
- package/dist/command/command.js.map +1 -0
- package/dist/command/snapshot-commander.js +84 -0
- package/dist/command/snapshot-commander.js.map +1 -0
- package/dist/components/anchor/anchor.js +105 -0
- package/dist/components/anchor/anchor.js.map +1 -0
- package/dist/components/anchor/ellipse-anchors.js +53 -0
- package/dist/components/anchor/ellipse-anchors.js.map +1 -0
- package/dist/components/anchor/rect-anchors.js +53 -0
- package/dist/components/anchor/rect-anchors.js.map +1 -0
- package/dist/components/audio.js +154 -0
- package/dist/components/audio.js.map +1 -0
- package/dist/components/cloud.js +44 -0
- package/dist/components/cloud.js.map +1 -0
- package/dist/components/component.js +1086 -0
- package/dist/components/component.js.map +1 -0
- package/dist/components/container-abstract.js +387 -0
- package/dist/components/container-abstract.js.map +1 -0
- package/dist/components/container.js +331 -0
- package/dist/components/container.js.map +1 -0
- package/dist/components/data/data-mapping.js +82 -0
- package/dist/components/data/data-mapping.js.map +1 -0
- package/dist/components/data/data.js +166 -0
- package/dist/components/data/data.js.map +1 -0
- package/dist/components/data/evaluator.js +103 -0
- package/dist/components/data/evaluator.js.map +1 -0
- package/dist/components/donut.js +104 -0
- package/dist/components/donut.js.map +1 -0
- package/dist/components/drawer/draw-image-pendable.js +20 -0
- package/dist/components/drawer/draw-image-pendable.js.map +1 -0
- package/dist/components/drawer/effect.js +19 -0
- package/dist/components/drawer/effect.js.map +1 -0
- package/dist/components/drawer/fill.js +228 -0
- package/dist/components/drawer/fill.js.map +1 -0
- package/dist/components/drawer/format.js +115 -0
- package/dist/components/drawer/format.js.map +1 -0
- package/dist/components/drawer/line.js +191 -0
- package/dist/components/drawer/line.js.map +1 -0
- package/dist/components/drawer/stroke.js +62 -0
- package/dist/components/drawer/stroke.js.map +1 -0
- package/dist/components/drawer/text-wrapper.js +51 -0
- package/dist/components/drawer/text-wrapper.js.map +1 -0
- package/dist/components/drawer/text.js +269 -0
- package/dist/components/drawer/text.js.map +1 -0
- package/dist/components/ellipse.js +110 -0
- package/dist/components/ellipse.js.map +1 -0
- package/dist/components/file/ondropfile.js +19 -0
- package/dist/components/file/ondropfile.js.map +1 -0
- package/dist/components/fit/fit.js +137 -0
- package/dist/components/fit/fit.js.map +1 -0
- package/dist/components/geometry/transcoord.js +339 -0
- package/dist/components/geometry/transcoord.js.map +1 -0
- package/dist/components/geometry/union.js +35 -0
- package/dist/components/geometry/union.js.map +1 -0
- package/dist/components/gif-view.js +128 -0
- package/dist/components/gif-view.js.map +1 -0
- package/dist/components/global-ref.js +154 -0
- package/dist/components/global-ref.js.map +1 -0
- package/dist/components/group.js +171 -0
- package/dist/components/group.js.map +1 -0
- package/dist/components/html/elements.js +24 -0
- package/dist/components/html/elements.js.map +1 -0
- package/dist/components/html/fill.js +126 -0
- package/dist/components/html/fill.js.map +1 -0
- package/dist/components/html/reposition.js +119 -0
- package/dist/components/html/reposition.js.map +1 -0
- package/dist/components/html/shadow.js +24 -0
- package/dist/components/html/shadow.js.map +1 -0
- package/dist/components/html-overlay-container.js +27 -0
- package/dist/components/html-overlay-container.js.map +1 -0
- package/dist/components/html-overlay-element.js +22 -0
- package/dist/components/html-overlay-element.js.map +1 -0
- package/dist/components/image-view.js +193 -0
- package/dist/components/image-view.js.map +1 -0
- package/dist/components/index.js +231 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/info-window.js +416 -0
- package/dist/components/info-window.js.map +1 -0
- package/dist/components/line.js +374 -0
- package/dist/components/line.js.map +1 -0
- package/dist/components/local-ref.js +114 -0
- package/dist/components/local-ref.js.map +1 -0
- package/dist/components/mixins/connectable.js +128 -0
- package/dist/components/mixins/connectable.js.map +1 -0
- package/dist/components/mixins/data-source.js +34 -0
- package/dist/components/mixins/data-source.js.map +1 -0
- package/dist/components/mixins/html-element.js +107 -0
- package/dist/components/mixins/html-element.js.map +1 -0
- package/dist/components/mixins/move-handle.js +73 -0
- package/dist/components/mixins/move-handle.js.map +1 -0
- package/dist/components/mixins/rect-path.js +113 -0
- package/dist/components/mixins/rect-path.js.map +1 -0
- package/dist/components/mixins/value-holder.js +81 -0
- package/dist/components/mixins/value-holder.js.map +1 -0
- package/dist/components/mutater/bounds.js +68 -0
- package/dist/components/mutater/bounds.js.map +1 -0
- package/dist/components/mutater/path.js +73 -0
- package/dist/components/mutater/path.js.map +1 -0
- package/dist/components/ortholine.js +763 -0
- package/dist/components/ortholine.js.map +1 -0
- package/dist/components/outline/ellipse-outline.js +23 -0
- package/dist/components/outline/ellipse-outline.js.map +1 -0
- package/dist/components/outline/path-outline.js +48 -0
- package/dist/components/outline/path-outline.js.map +1 -0
- package/dist/components/path.js +49 -0
- package/dist/components/path.js.map +1 -0
- package/dist/components/polygon.js +91 -0
- package/dist/components/polygon.js.map +1 -0
- package/dist/components/polyline.js +114 -0
- package/dist/components/polyline.js.map +1 -0
- package/dist/components/popup.js +160 -0
- package/dist/components/popup.js.map +1 -0
- package/dist/components/rect.js +72 -0
- package/dist/components/rect.js.map +1 -0
- package/dist/components/retention/retention-manager.js +81 -0
- package/dist/components/retention/retention-manager.js.map +1 -0
- package/dist/components/root-container.js +519 -0
- package/dist/components/root-container.js.map +1 -0
- package/dist/components/ruler.js +103 -0
- package/dist/components/ruler.js.map +1 -0
- package/dist/components/shape.js +97 -0
- package/dist/components/shape.js.map +1 -0
- package/dist/components/star.js +103 -0
- package/dist/components/star.js.map +1 -0
- package/dist/components/text/substitutor.js +92 -0
- package/dist/components/text/substitutor.js.map +1 -0
- package/dist/components/text.js +21 -0
- package/dist/components/text.js.map +1 -0
- package/dist/components/triangle.js +92 -0
- package/dist/components/triangle.js.map +1 -0
- package/dist/const.js +71 -0
- package/dist/const.js.map +1 -0
- package/dist/core/collection.js +28 -0
- package/dist/core/collection.js.map +1 -0
- package/dist/core/debug.js +12 -0
- package/dist/core/debug.js.map +1 -0
- package/dist/core/deep-equals.js +112 -0
- package/dist/core/deep-equals.js.map +1 -0
- package/dist/core/dom-to-image.js +617 -0
- package/dist/core/dom-to-image.js.map +1 -0
- package/dist/core/event.js +205 -0
- package/dist/core/event.js.map +1 -0
- package/dist/core/index.js +21 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/list.js +87 -0
- package/dist/core/list.js.map +1 -0
- package/dist/core/logger.js +29 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/memoize.js +40 -0
- package/dist/core/memoize.js.map +1 -0
- package/dist/core/mixin.js +26 -0
- package/dist/core/mixin.js.map +1 -0
- package/dist/core/obj-accessor.js +26 -0
- package/dist/core/obj-accessor.js.map +1 -0
- package/dist/core/reference-map.js +147 -0
- package/dist/core/reference-map.js.map +1 -0
- package/dist/core/round-rect.js +62 -0
- package/dist/core/round-rect.js.map +1 -0
- package/dist/core/safe-round.js +10 -0
- package/dist/core/safe-round.js.map +1 -0
- package/dist/core/script-loader.js +148 -0
- package/dist/core/script-loader.js.map +1 -0
- package/dist/core/snapshot-taker.js +59 -0
- package/dist/core/snapshot-taker.js.map +1 -0
- package/dist/core/stack.js +18 -0
- package/dist/core/stack.js.map +1 -0
- package/dist/core/timecapsule.js +88 -0
- package/dist/core/timecapsule.js.map +1 -0
- package/dist/core/utils.js +309 -0
- package/dist/core/utils.js.map +1 -0
- package/dist/decorator/anchors-decorator.js +53 -0
- package/dist/decorator/anchors-decorator.js.map +1 -0
- package/dist/decorator/bouncing-arrow-decorator.js +52 -0
- package/dist/decorator/bouncing-arrow-decorator.js.map +1 -0
- package/dist/decorator/data-spread-decorator.js +69 -0
- package/dist/decorator/data-spread-decorator.js.map +1 -0
- package/dist/decorator/decotag-decorator.js +33 -0
- package/dist/decorator/decotag-decorator.js.map +1 -0
- package/dist/decorator/index.js +31 -0
- package/dist/decorator/index.js.map +1 -0
- package/dist/decorator/link-decorator.js +66 -0
- package/dist/decorator/link-decorator.js.map +1 -0
- package/dist/effect/gradation.js +37 -0
- package/dist/effect/gradation.js.map +1 -0
- package/dist/effect/index.js +23 -0
- package/dist/effect/index.js.map +1 -0
- package/dist/effect/shadow.js +33 -0
- package/dist/effect/shadow.js.map +1 -0
- package/dist/effect/turn.js +25 -0
- package/dist/effect/turn.js.map +1 -0
- package/dist/event/event-engine.js +76 -0
- package/dist/event/event-engine.js.map +1 -0
- package/dist/event/event-pump.js +92 -0
- package/dist/event/event-pump.js.map +1 -0
- package/dist/event/event-tracker.js +97 -0
- package/dist/event/event-tracker.js.map +1 -0
- package/dist/event/index.js +21 -0
- package/dist/event/index.js.map +1 -0
- package/dist/event/ua-event-handler.js +453 -0
- package/dist/event/ua-event-handler.js.map +1 -0
- package/dist/event-map/animator-handler.js +225 -0
- package/dist/event-map/animator-handler.js.map +1 -0
- package/dist/event-map/animators/animated-icon.js +265 -0
- package/dist/event-map/animators/animated-icon.js.map +1 -0
- package/dist/event-map/animators/border-highlighting.js +476 -0
- package/dist/event-map/animators/border-highlighting.js.map +1 -0
- package/dist/event-map/animators/bouncing-arrow.js +226 -0
- package/dist/event-map/animators/bouncing-arrow.js.map +1 -0
- package/dist/event-map/event-map.js +36 -0
- package/dist/event-map/event-map.js.map +1 -0
- package/dist/event-map/index.js +20 -0
- package/dist/event-map/index.js.map +1 -0
- package/dist/event-map/move-handler.js +233 -0
- package/dist/event-map/move-handler.js.map +1 -0
- package/dist/event-map/paste-handler.js +176 -0
- package/dist/event-map/paste-handler.js.map +1 -0
- package/dist/event-map/shift-handler.js +55 -0
- package/dist/event-map/shift-handler.js.map +1 -0
- package/dist/event-map/text-editor-lite.js +276 -0
- package/dist/event-map/text-editor-lite.js.map +1 -0
- package/dist/event-map/zoom-handler.js +49 -0
- package/dist/event-map/zoom-handler.js.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/layer/action/emphasize.js +42 -0
- package/dist/layer/action/emphasize.js.map +1 -0
- package/dist/layer/action/popup.js +461 -0
- package/dist/layer/action/popup.js.map +1 -0
- package/dist/layer/action/pressed.js +31 -0
- package/dist/layer/action/pressed.js.map +1 -0
- package/dist/layer/add-layer.js +180 -0
- package/dist/layer/add-layer.js.map +1 -0
- package/dist/layer/decotag-layer.js +121 -0
- package/dist/layer/decotag-layer.js.map +1 -0
- package/dist/layer/guide-layer.js +292 -0
- package/dist/layer/guide-layer.js.map +1 -0
- package/dist/layer/index.js +70 -0
- package/dist/layer/index.js.map +1 -0
- package/dist/layer/layer.js +230 -0
- package/dist/layer/layer.js.map +1 -0
- package/dist/layer/minimap-layer.js +84 -0
- package/dist/layer/minimap-layer.js.map +1 -0
- package/dist/layer/model-layer.js +465 -0
- package/dist/layer/model-layer.js.map +1 -0
- package/dist/layer/modeler/anchor-handler.js +193 -0
- package/dist/layer/modeler/anchor-handler.js.map +1 -0
- package/dist/layer/modeler/control-handler.js +95 -0
- package/dist/layer/modeler/control-handler.js.map +1 -0
- package/dist/layer/modeler/focus-outline.js +41 -0
- package/dist/layer/modeler/focus-outline.js.map +1 -0
- package/dist/layer/modeler/group-outline.js +30 -0
- package/dist/layer/modeler/group-outline.js.map +1 -0
- package/dist/layer/modeler/index.js +56 -0
- package/dist/layer/modeler/index.js.map +1 -0
- package/dist/layer/modeler/path-handler.js +300 -0
- package/dist/layer/modeler/path-handler.js.map +1 -0
- package/dist/layer/modeler/resizer.js +333 -0
- package/dist/layer/modeler/resizer.js.map +1 -0
- package/dist/layer/modeler/rotator.js +134 -0
- package/dist/layer/modeler/rotator.js.map +1 -0
- package/dist/layer/modeling-layer.js +491 -0
- package/dist/layer/modeling-layer.js.map +1 -0
- package/dist/layer/reaction-layer.js +111 -0
- package/dist/layer/reaction-layer.js.map +1 -0
- package/dist/layer/scroll-layer.js +191 -0
- package/dist/layer/scroll-layer.js.map +1 -0
- package/dist/layer/selection/selected-finder.js +96 -0
- package/dist/layer/selection/selected-finder.js.map +1 -0
- package/dist/layer/selection-layer.js +373 -0
- package/dist/layer/selection-layer.js.map +1 -0
- package/dist/layer/shift-layer.js +83 -0
- package/dist/layer/shift-layer.js.map +1 -0
- package/dist/layout/absolute.js +30 -0
- package/dist/layout/absolute.js.map +1 -0
- package/dist/layout/card.js +52 -0
- package/dist/layout/card.js.map +1 -0
- package/dist/layout/html-absolute.js +32 -0
- package/dist/layout/html-absolute.js.map +1 -0
- package/dist/layout/index.js +56 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/layout/layout.js +36 -0
- package/dist/layout/layout.js.map +1 -0
- package/dist/layout/linear-horizontal.js +56 -0
- package/dist/layout/linear-horizontal.js.map +1 -0
- package/dist/layout/linear-vertical.js +56 -0
- package/dist/layout/linear-vertical.js.map +1 -0
- package/dist/layout/table.js +106 -0
- package/dist/layout/table.js.map +1 -0
- package/dist/license/license.js +170 -0
- package/dist/license/license.js.map +1 -0
- package/dist/model/compile.js +40 -0
- package/dist/model/compile.js.map +1 -0
- package/dist/model/duplicate.js +19 -0
- package/dist/model/duplicate.js.map +1 -0
- package/dist/model/index.js +34 -0
- package/dist/model/index.js.map +1 -0
- package/dist/model/selector.js +104 -0
- package/dist/model/selector.js.map +1 -0
- package/dist/style/compile.js +14 -0
- package/dist/style/compile.js.map +1 -0
- package/dist/style/index.js +14 -0
- package/dist/style/index.js.map +1 -0
- package/dist/things-scene/api/add-start.js +18 -0
- package/dist/things-scene/api/add-start.js.map +1 -0
- package/dist/things-scene/api/add.js +71 -0
- package/dist/things-scene/api/add.js.map +1 -0
- package/dist/things-scene/api/align.js +116 -0
- package/dist/things-scene/api/align.js.map +1 -0
- package/dist/things-scene/api/center-to.js +50 -0
- package/dist/things-scene/api/center-to.js.map +1 -0
- package/dist/things-scene/api/change.js +27 -0
- package/dist/things-scene/api/change.js.map +1 -0
- package/dist/things-scene/api/clipboard.js +45 -0
- package/dist/things-scene/api/clipboard.js.map +1 -0
- package/dist/things-scene/api/distribute.js +57 -0
- package/dist/things-scene/api/distribute.js.map +1 -0
- package/dist/things-scene/api/duplicate.js +47 -0
- package/dist/things-scene/api/duplicate.js.map +1 -0
- package/dist/things-scene/api/fullscreen.js +26 -0
- package/dist/things-scene/api/fullscreen.js.map +1 -0
- package/dist/things-scene/api/group.js +91 -0
- package/dist/things-scene/api/group.js.map +1 -0
- package/dist/things-scene/api/ids.js +28 -0
- package/dist/things-scene/api/ids.js.map +1 -0
- package/dist/things-scene/api/index.js +192 -0
- package/dist/things-scene/api/index.js.map +1 -0
- package/dist/things-scene/api/listener.js +69 -0
- package/dist/things-scene/api/listener.js.map +1 -0
- package/dist/things-scene/api/paste-start.js +27 -0
- package/dist/things-scene/api/paste-start.js.map +1 -0
- package/dist/things-scene/api/place.js +98 -0
- package/dist/things-scene/api/place.js.map +1 -0
- package/dist/things-scene/api/remove.js +57 -0
- package/dist/things-scene/api/remove.js.map +1 -0
- package/dist/things-scene/api/symmetry.js +47 -0
- package/dist/things-scene/api/symmetry.js.map +1 -0
- package/dist/things-scene/api/to-data-url.js +76 -0
- package/dist/things-scene/api/to-data-url.js.map +1 -0
- package/dist/things-scene/api/zorder.js +68 -0
- package/dist/things-scene/api/zorder.js.map +1 -0
- package/dist/things-scene/application-context.js +168 -0
- package/dist/things-scene/application-context.js.map +1 -0
- package/dist/things-scene/config.js +18 -0
- package/dist/things-scene/config.js.map +1 -0
- package/dist/things-scene/create.js +67 -0
- package/dist/things-scene/create.js.map +1 -0
- package/dist/things-scene/fps.js +26 -0
- package/dist/things-scene/fps.js.map +1 -0
- package/dist/things-scene/index.js +152 -0
- package/dist/things-scene/index.js.map +1 -0
- package/dist/things-scene/polyfill.js +111 -0
- package/dist/things-scene/polyfill.js.map +1 -0
- package/dist/things-scene/scene.js +442 -0
- package/dist/things-scene/scene.js.map +1 -0
- package/dist/things-scene/version.js +12 -0
- package/dist/things-scene/version.js.map +1 -0
- package/package.json +8 -6
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _popup = _interopRequireDefault(require("../layer/action/popup.js"));
|
|
8
|
+
var _component = _interopRequireDefault(require("./component.js"));
|
|
9
|
+
var _rectPath = _interopRequireDefault(require("./mixins/rect-path.js"));
|
|
10
|
+
var _shape = _interopRequireDefault(require("./shape.js"));
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
/*
|
|
13
|
+
* Copyright © HatioLab Inc. All rights reserved.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
const CENTER = 'center';
|
|
17
|
+
const LEFTTOP = 'left-top';
|
|
18
|
+
const RIGHTTOP = 'right-top';
|
|
19
|
+
const LEFTBOTTOM = 'left-bottom';
|
|
20
|
+
const RIGHTBOTTOM = 'right-bottom';
|
|
21
|
+
const AUTO = 'auto';
|
|
22
|
+
const NATURE = {
|
|
23
|
+
mutable: false,
|
|
24
|
+
resizable: true,
|
|
25
|
+
rotatable: true,
|
|
26
|
+
properties: [{
|
|
27
|
+
type: 'board-selector',
|
|
28
|
+
label: 'board',
|
|
29
|
+
name: 'board'
|
|
30
|
+
}, {
|
|
31
|
+
type: 'checkbox',
|
|
32
|
+
label: 'modal',
|
|
33
|
+
name: 'modal'
|
|
34
|
+
}, {
|
|
35
|
+
type: 'checkbox',
|
|
36
|
+
label: 'closable',
|
|
37
|
+
name: 'closable'
|
|
38
|
+
}, {
|
|
39
|
+
type: 'checkbox',
|
|
40
|
+
label: 'draggable',
|
|
41
|
+
name: 'draggable'
|
|
42
|
+
}, {
|
|
43
|
+
type: 'checkbox',
|
|
44
|
+
label: 'minimizable',
|
|
45
|
+
name: 'minimizable'
|
|
46
|
+
}, {
|
|
47
|
+
type: 'checkbox',
|
|
48
|
+
label: 'show',
|
|
49
|
+
name: 'show'
|
|
50
|
+
}, {
|
|
51
|
+
type: 'select',
|
|
52
|
+
label: 'location',
|
|
53
|
+
name: 'location',
|
|
54
|
+
property: {
|
|
55
|
+
options: [CENTER, LEFTTOP, RIGHTTOP, LEFTBOTTOM, RIGHTBOTTOM, AUTO]
|
|
56
|
+
}
|
|
57
|
+
}, {
|
|
58
|
+
type: 'string',
|
|
59
|
+
label: 'title',
|
|
60
|
+
name: 'text'
|
|
61
|
+
}, {
|
|
62
|
+
type: 'data',
|
|
63
|
+
label: 'value',
|
|
64
|
+
name: 'value'
|
|
65
|
+
}],
|
|
66
|
+
help: 'scene/component/popup'
|
|
67
|
+
};
|
|
68
|
+
const POPUP_IMAGE = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAABGCAMAAABG8BK2AAADJmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RkM4QzQxNUMzMzBEMTFFQ0JEMzZDMDUwQUI4MEI3QTAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RkM4QzQxNUQzMzBEMTFFQ0JEMzZDMDUwQUI4MEI3QTAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpENjlENTQ3RjMzMDkxMUVDQkQzNkMwNTBBQjgwQjdBMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpENjlENTQ4MDMzMDkxMUVDQkQzNkMwNTBBQjgwQjdBMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsiUYSQAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAA51BMVEVHcEwzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzOguTm2AAAATHRSTlMARhB73r9B7YLrsqdE+0cq9Avzeg31eQx4aQ+Ks6aUd5DsYKixEX1w8vyT2VjoZ3YezY/cCEDvl+QTvRwJ0ifwK/5T/aw6+IuFuCImAcS6MQAAAeJJREFUWMPt2FlX2zAQhuHJYmOSFhIggbC0QNn3rS1dKXSH9///Hi58CJLxKIpEWi6YO8c5z4lG/nxGEXmu/1OVLGnhrFaSVQYg1SZetTTvUibqeFZ9QlfmvRWoV1VmCaCRzroXPpsuAjTV7gLUfPahBqD1OQMW/fazAWTKvQRI/ZgUSJR7U8CM/dHZ+/2VcatWdvdEZAaYUhiAwkerJXt0rnzXwdRKmHfDM0fHD5kxjTFyVLzVfvvirn7+cDJWjhy7c7XlYuwc6Urvu2tRhRypyhwAf1sKY+TIxfQA+H39q5wxc+RgVrcBduTmZTlj5khnDgH4IzKpMGaOVCbvyyvRGTNHGtPrKypjXirM5jb910I4k69oQeKY+77EMAcALEsck/+W6f71tyCma/ZFROTrJVwMy7wmf3bv6/MX+Dgkkysblvxps/dhOKZb6IvrTakzXXuPApnpYneDGOeKvJlaSXcDmA7AicQyW84VeTOnY+NdiWcG1uiZksFEHdyAlsJEjEkmkwGNsKHNZCJGSKtVTYC1tO022mnjwUBrMdXg8dreuOBhv7D/62/8lGZ1wLxXyZKOm+iUHIQintyny0TkaATHjYgcjeAoFpEje9R/nGPqIx2aw3NU9odCQI6e6x/VLY32cKQXVBnkAAAAAElFTkSuQmCC';
|
|
69
|
+
|
|
70
|
+
/*
|
|
71
|
+
* Popup Window를 통해서 다른 Scene Model을 보여준다.
|
|
72
|
+
*/
|
|
73
|
+
class Popup extends (0, _rectPath.default)(_shape.default) {
|
|
74
|
+
static get image() {
|
|
75
|
+
if (!Popup._image) {
|
|
76
|
+
Popup._image = new Image();
|
|
77
|
+
Popup._image.src = POPUP_IMAGE;
|
|
78
|
+
}
|
|
79
|
+
return Popup._image;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* Members */
|
|
83
|
+
|
|
84
|
+
ready() {
|
|
85
|
+
super.ready();
|
|
86
|
+
this.show && this.onchangeShow(true);
|
|
87
|
+
}
|
|
88
|
+
render(context) {
|
|
89
|
+
var {
|
|
90
|
+
left,
|
|
91
|
+
top,
|
|
92
|
+
width,
|
|
93
|
+
height
|
|
94
|
+
} = this.bounds;
|
|
95
|
+
context.beginPath();
|
|
96
|
+
this.drawImage(context, Popup.image, left, top, width, height);
|
|
97
|
+
}
|
|
98
|
+
onchange(after, before) {
|
|
99
|
+
if ('value' in after) {
|
|
100
|
+
if (this.show) {
|
|
101
|
+
this.onchangeShow(true);
|
|
102
|
+
} else {
|
|
103
|
+
this.show = true;
|
|
104
|
+
}
|
|
105
|
+
} else if ('show' in after) {
|
|
106
|
+
this.onchangeShow(this.show);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
onchangeShow(value) {
|
|
110
|
+
if (this.app.isEditMode || !this.getState('board')) {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
if (value) {
|
|
114
|
+
_popup.default.show(this, this.getState('board'), {
|
|
115
|
+
location: this.getState('location'),
|
|
116
|
+
modal: this.getState('modal'),
|
|
117
|
+
closable: this.getState('closable') || false,
|
|
118
|
+
draggable: this.getState('draggable') || false,
|
|
119
|
+
minimizable: this.getState('minimizable') || false,
|
|
120
|
+
title: this.text,
|
|
121
|
+
data: this.value
|
|
122
|
+
});
|
|
123
|
+
} else {
|
|
124
|
+
_popup.default.hide(this);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
get board() {
|
|
128
|
+
return this.getState('board');
|
|
129
|
+
}
|
|
130
|
+
set board(board) {
|
|
131
|
+
this.set('board', board);
|
|
132
|
+
}
|
|
133
|
+
get show() {
|
|
134
|
+
return this.getState('show');
|
|
135
|
+
}
|
|
136
|
+
set show(show) {
|
|
137
|
+
this.setState('show', show);
|
|
138
|
+
}
|
|
139
|
+
get started() {
|
|
140
|
+
return this.getState('show');
|
|
141
|
+
}
|
|
142
|
+
set started(show) {
|
|
143
|
+
this.setState('show', show);
|
|
144
|
+
}
|
|
145
|
+
get value() {
|
|
146
|
+
return this.getState('value');
|
|
147
|
+
}
|
|
148
|
+
set value(value) {
|
|
149
|
+
this.setState('value', value);
|
|
150
|
+
}
|
|
151
|
+
get hasTextProperty() {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
get nature() {
|
|
155
|
+
return NATURE;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.default = Popup;
|
|
159
|
+
_component.default.register('popup', Popup);
|
|
160
|
+
//# sourceMappingURL=popup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup.js","names":["_popup","_interopRequireDefault","require","_component","_rectPath","_shape","e","__esModule","default","CENTER","LEFTTOP","RIGHTTOP","LEFTBOTTOM","RIGHTBOTTOM","AUTO","NATURE","mutable","resizable","rotatable","properties","type","label","name","property","options","help","POPUP_IMAGE","Popup","RectPath","Shape","image","_image","Image","src","ready","show","onchangeShow","render","context","left","top","width","height","bounds","beginPath","drawImage","onchange","after","before","value","app","isEditMode","getState","ScenePopup","location","modal","closable","draggable","minimizable","title","text","data","hide","board","set","setState","started","hasTextProperty","nature","exports","Component","register"],"sources":["../../src/components/popup.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport ScenePopup from '../layer/action/popup.js'\nimport Component from './component.js'\nimport RectPath from './mixins/rect-path.js'\nimport Shape from './shape.js'\n\nconst CENTER = 'center'\nconst LEFTTOP = 'left-top'\nconst RIGHTTOP = 'right-top'\nconst LEFTBOTTOM = 'left-bottom'\nconst RIGHTBOTTOM = 'right-bottom'\nconst AUTO = 'auto'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'board-selector',\n label: 'board',\n name: 'board'\n },\n {\n type: 'checkbox',\n label: 'modal',\n name: 'modal'\n },\n {\n type: 'checkbox',\n label: 'closable',\n name: 'closable'\n },\n {\n type: 'checkbox',\n label: 'draggable',\n name: 'draggable'\n },\n {\n type: 'checkbox',\n label: 'minimizable',\n name: 'minimizable'\n },\n {\n type: 'checkbox',\n label: 'show',\n name: 'show'\n },\n {\n type: 'select',\n label: 'location',\n name: 'location',\n property: {\n options: [CENTER, LEFTTOP, RIGHTTOP, LEFTBOTTOM, RIGHTBOTTOM, AUTO]\n }\n },\n {\n type: 'string',\n label: 'title',\n name: 'text'\n },\n {\n type: 'data',\n label: 'value',\n name: 'value'\n }\n ],\n help: 'scene/component/popup'\n}\n\nconst POPUP_IMAGE =\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAABGCAMAAABG8BK2AAADJmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RkM4QzQxNUMzMzBEMTFFQ0JEMzZDMDUwQUI4MEI3QTAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RkM4QzQxNUQzMzBEMTFFQ0JEMzZDMDUwQUI4MEI3QTAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpENjlENTQ3RjMzMDkxMUVDQkQzNkMwNTBBQjgwQjdBMCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpENjlENTQ4MDMzMDkxMUVDQkQzNkMwNTBBQjgwQjdBMCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsiUYSQAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAA51BMVEVHcEwzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzOguTm2AAAATHRSTlMARhB73r9B7YLrsqdE+0cq9Avzeg31eQx4aQ+Ks6aUd5DsYKixEX1w8vyT2VjoZ3YezY/cCEDvl+QTvRwJ0ifwK/5T/aw6+IuFuCImAcS6MQAAAeJJREFUWMPt2FlX2zAQhuHJYmOSFhIggbC0QNn3rS1dKXSH9///Hi58CJLxKIpEWi6YO8c5z4lG/nxGEXmu/1OVLGnhrFaSVQYg1SZetTTvUibqeFZ9QlfmvRWoV1VmCaCRzroXPpsuAjTV7gLUfPahBqD1OQMW/fazAWTKvQRI/ZgUSJR7U8CM/dHZ+/2VcatWdvdEZAaYUhiAwkerJXt0rnzXwdRKmHfDM0fHD5kxjTFyVLzVfvvirn7+cDJWjhy7c7XlYuwc6Urvu2tRhRypyhwAf1sKY+TIxfQA+H39q5wxc+RgVrcBduTmZTlj5khnDgH4IzKpMGaOVCbvyyvRGTNHGtPrKypjXirM5jb910I4k69oQeKY+77EMAcALEsck/+W6f71tyCma/ZFROTrJVwMy7wmf3bv6/MX+Dgkkysblvxps/dhOKZb6IvrTakzXXuPApnpYneDGOeKvJlaSXcDmA7AicQyW84VeTOnY+NdiWcG1uiZksFEHdyAlsJEjEkmkwGNsKHNZCJGSKtVTYC1tO022mnjwUBrMdXg8dreuOBhv7D/62/8lGZ1wLxXyZKOm+iUHIQintyny0TkaATHjYgcjeAoFpEje9R/nGPqIx2aw3NU9odCQI6e6x/VLY32cKQXVBnkAAAAAElFTkSuQmCC'\n\n/*\n * Popup Window를 통해서 다른 Scene Model을 보여준다.\n */\nexport default class Popup extends RectPath(Shape) {\n static get image() {\n if (!Popup._image) {\n Popup._image = new Image()\n Popup._image.src = POPUP_IMAGE\n }\n\n return Popup._image\n }\n\n /* Members */\n\n ready() {\n super.ready()\n\n this.show && this.onchangeShow(true)\n }\n\n render(context) {\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, Popup.image, left, top, width, height)\n }\n\n onchange(after, before) {\n if ('value' in after) {\n if (this.show) {\n this.onchangeShow(true)\n } else {\n this.show = true\n }\n } else if ('show' in after) {\n this.onchangeShow(this.show)\n }\n }\n\n onchangeShow(value) {\n if (this.app.isEditMode || !this.getState('board')) {\n return\n }\n\n if (value) {\n ScenePopup.show(this, this.getState('board'), {\n location: this.getState('location'),\n modal: this.getState('modal'),\n closable: this.getState('closable') || false,\n draggable: this.getState('draggable') || false,\n minimizable: this.getState('minimizable') || false,\n title: this.text,\n data: this.value\n })\n } else {\n ScenePopup.hide(this)\n }\n }\n\n get board() {\n return this.getState('board')\n }\n\n set board(board) {\n this.set('board', board)\n }\n\n get show() {\n return this.getState('show')\n }\n\n set show(show) {\n this.setState('show', show)\n }\n\n get started() {\n return this.getState('show')\n }\n\n set started(show) {\n this.setState('show', show)\n }\n\n get value() {\n return this.getState('value')\n }\n\n set value(value) {\n this.setState('value', value)\n }\n\n get hasTextProperty() {\n return false\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('popup', Popup)\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _component = _interopRequireDefault(require("./component.js"));
|
|
8
|
+
var _connectable = _interopRequireDefault(require("./mixins/connectable.js"));
|
|
9
|
+
var _rectPath = _interopRequireDefault(require("./mixins/rect-path.js"));
|
|
10
|
+
var _shape = _interopRequireDefault(require("./shape.js"));
|
|
11
|
+
var _safeRound = require("../core/safe-round.js");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
/*
|
|
14
|
+
* Copyright © HatioLab Inc. All rights reserved.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
const NATURE = {
|
|
18
|
+
mutable: false,
|
|
19
|
+
resizable: true,
|
|
20
|
+
rotatable: true,
|
|
21
|
+
properties: [{
|
|
22
|
+
type: 'number',
|
|
23
|
+
label: 'round',
|
|
24
|
+
name: 'round',
|
|
25
|
+
property: {
|
|
26
|
+
min: 0
|
|
27
|
+
}
|
|
28
|
+
}],
|
|
29
|
+
help: 'scene/component/rect'
|
|
30
|
+
};
|
|
31
|
+
var controlHandler = {
|
|
32
|
+
ondragmove: function (point, index, component) {
|
|
33
|
+
var {
|
|
34
|
+
left,
|
|
35
|
+
top,
|
|
36
|
+
width,
|
|
37
|
+
height
|
|
38
|
+
} = component.model;
|
|
39
|
+
var transcoorded = component.transcoordP2S(point.x, point.y);
|
|
40
|
+
var round = (transcoorded.x - left) / (width / 2) * 100;
|
|
41
|
+
round = (0, _safeRound.safeRound)(round, width, height);
|
|
42
|
+
component.set({
|
|
43
|
+
round
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
class Rect extends (0, _connectable.default)((0, _rectPath.default)(_shape.default)) {
|
|
48
|
+
is3dish() {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
get controls() {
|
|
52
|
+
var {
|
|
53
|
+
left,
|
|
54
|
+
top,
|
|
55
|
+
width,
|
|
56
|
+
round,
|
|
57
|
+
height
|
|
58
|
+
} = this.state;
|
|
59
|
+
round = round == undefined ? 0 : (0, _safeRound.safeRound)(round, width, height);
|
|
60
|
+
return [{
|
|
61
|
+
x: left + width / 2 * (round / 100),
|
|
62
|
+
y: top,
|
|
63
|
+
handler: controlHandler
|
|
64
|
+
}];
|
|
65
|
+
}
|
|
66
|
+
get nature() {
|
|
67
|
+
return NATURE;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.default = Rect;
|
|
71
|
+
_component.default.register('rect', Rect);
|
|
72
|
+
//# sourceMappingURL=rect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rect.js","names":["_component","_interopRequireDefault","require","_connectable","_rectPath","_shape","_safeRound","e","__esModule","default","NATURE","mutable","resizable","rotatable","properties","type","label","name","property","min","help","controlHandler","ondragmove","point","index","component","left","top","width","height","model","transcoorded","transcoordP2S","x","y","round","safeRound","set","Rect","Connectable","RectPath","Shape","is3dish","controls","state","undefined","handler","nature","exports","Component","register"],"sources":["../../src/components/rect.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport Component from './component.js'\nimport Connectable from './mixins/connectable.js'\nimport RectPath from './mixins/rect-path.js'\nimport Shape from './shape.js'\nimport { safeRound } from '../core/safe-round.js'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'number',\n label: 'round',\n name: 'round',\n property: {\n min: 0\n }\n }\n ],\n help: 'scene/component/rect'\n}\n\nvar controlHandler = {\n ondragmove: function (point, index, component) {\n var { left, top, width, height } = component.model\n\n var transcoorded = component.transcoordP2S(point.x, point.y)\n var round = ((transcoorded.x - left) / (width / 2)) * 100\n\n round = safeRound(round, width, height)\n\n component.set({\n round\n })\n }\n}\n\nexport default class Rect extends Connectable(RectPath(Shape)) {\n is3dish() {\n return true\n }\n\n get controls() {\n var { left, top, width, round, height } = this.state\n round = round == undefined ? 0 : safeRound(round, width, height)\n\n return [\n {\n x: left + (width / 2) * (round / 100),\n y: top,\n handler: controlHandler\n }\n ]\n }\n\n get nature() {\n return NATURE\n }\n}\n\nComponent.register('rect', Rect)\n"],"mappings":";;;;;;AAIA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAAiD,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AARjD;AACA;AACA;;AAQA,MAAMG,MAAM,GAAG;EACbC,OAAO,EAAE,KAAK;EACdC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,IAAI;EACfC,UAAU,EAAE,CACV;IACEC,IAAI,EAAE,QAAQ;IACdC,KAAK,EAAE,OAAO;IACdC,IAAI,EAAE,OAAO;IACbC,QAAQ,EAAE;MACRC,GAAG,EAAE;IACP;EACF,CAAC,CACF;EACDC,IAAI,EAAE;AACR,CAAC;AAED,IAAIC,cAAc,GAAG;EACnBC,UAAU,EAAE,SAAAA,CAAUC,KAAK,EAAEC,KAAK,EAAEC,SAAS,EAAE;IAC7C,IAAI;MAAEC,IAAI;MAAEC,GAAG;MAAEC,KAAK;MAAEC;IAAO,CAAC,GAAGJ,SAAS,CAACK,KAAK;IAElD,IAAIC,YAAY,GAAGN,SAAS,CAACO,aAAa,CAACT,KAAK,CAACU,CAAC,EAAEV,KAAK,CAACW,CAAC,CAAC;IAC5D,IAAIC,KAAK,GAAI,CAACJ,YAAY,CAACE,CAAC,GAAGP,IAAI,KAAKE,KAAK,GAAG,CAAC,CAAC,GAAI,GAAG;IAEzDO,KAAK,GAAG,IAAAC,oBAAS,EAACD,KAAK,EAAEP,KAAK,EAAEC,MAAM,CAAC;IAEvCJ,SAAS,CAACY,GAAG,CAAC;MACZF;IACF,CAAC,CAAC;EACJ;AACF,CAAC;AAEc,MAAMG,IAAI,SAAS,IAAAC,oBAAW,EAAC,IAAAC,iBAAQ,EAACC,cAAK,CAAC,CAAC,CAAC;EAC7DC,OAAOA,CAAA,EAAG;IACR,OAAO,IAAI;EACb;EAEA,IAAIC,QAAQA,CAAA,EAAG;IACb,IAAI;MAAEjB,IAAI;MAAEC,GAAG;MAAEC,KAAK;MAAEO,KAAK;MAAEN;IAAO,CAAC,GAAG,IAAI,CAACe,KAAK;IACpDT,KAAK,GAAGA,KAAK,IAAIU,SAAS,GAAG,CAAC,GAAG,IAAAT,oBAAS,EAACD,KAAK,EAAEP,KAAK,EAAEC,MAAM,CAAC;IAEhE,OAAO,CACL;MACEI,CAAC,EAAEP,IAAI,GAAIE,KAAK,GAAG,CAAC,IAAKO,KAAK,GAAG,GAAG,CAAC;MACrCD,CAAC,EAAEP,GAAG;MACNmB,OAAO,EAAEzB;IACX,CAAC,CACF;EACH;EAEA,IAAI0B,MAAMA,CAAA,EAAG;IACX,OAAOrC,MAAM;EACf;AACF;AAACsC,OAAA,CAAAvC,OAAA,GAAA6B,IAAA;AAEDW,kBAAS,CAACC,QAAQ,CAAC,MAAM,EAAEZ,IAAI,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _utils = require("../../core/utils.js");
|
|
8
|
+
var _logger = require("../../core/logger.js");
|
|
9
|
+
/*
|
|
10
|
+
* Copyright © HatioLab Inc. All rights reserved.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/*
|
|
14
|
+
* RetentionManager
|
|
15
|
+
*
|
|
16
|
+
* 컴포넌트의 Retention을 관리
|
|
17
|
+
*
|
|
18
|
+
* - 루트 정보를 제공함. (get root, )
|
|
19
|
+
* - 하위 레이어들을 관리함.
|
|
20
|
+
* - 전체적인 이벤트 리스너를 관리함.
|
|
21
|
+
* - 전체적인 스타일 정보를 관리함.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
var components = [];
|
|
25
|
+
var timeout;
|
|
26
|
+
function check() {
|
|
27
|
+
timeout = null;
|
|
28
|
+
var now = performance.now();
|
|
29
|
+
components = components.filter(component => filter(component));
|
|
30
|
+
var result = components.reduce((result, component) => {
|
|
31
|
+
let diff = now - component.updatedAt;
|
|
32
|
+
if (diff >= component.retention) result.kills.push(component);else result.next = result.next == 0 ? component.retention - diff : Math.min(result.next, component.retention - diff);
|
|
33
|
+
return result;
|
|
34
|
+
}, {
|
|
35
|
+
next: 0,
|
|
36
|
+
kills: []
|
|
37
|
+
});
|
|
38
|
+
result.kills.forEach(component => {
|
|
39
|
+
let idx = components.indexOf(component);
|
|
40
|
+
if (idx != -1) {
|
|
41
|
+
components.splice(idx, 1);
|
|
42
|
+
component.removeSelf(true);
|
|
43
|
+
} else (0, _logger.error)('Should not be here. Maybe reentrance problem.');
|
|
44
|
+
});
|
|
45
|
+
if (result.next > 0) {
|
|
46
|
+
timeout = setTimeout(touch, Math.max(result.next, 500));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function filter(component) {
|
|
50
|
+
return !component.disposed && component.retention > 0 && !component.isTemplate() && component.app && component.app.isViewMode;
|
|
51
|
+
}
|
|
52
|
+
var touch = (0, _utils.throttle)(function () {
|
|
53
|
+
// 여기에서 check 재진입을 방지한다.
|
|
54
|
+
requestAnimationFrame(check);
|
|
55
|
+
}, 500);
|
|
56
|
+
class RetentionManager {
|
|
57
|
+
add(component) {
|
|
58
|
+
if (filter(component) && components.indexOf(component) == -1) {
|
|
59
|
+
components.push(component);
|
|
60
|
+
component.touch();
|
|
61
|
+
}
|
|
62
|
+
this.touch();
|
|
63
|
+
}
|
|
64
|
+
remove(component) {
|
|
65
|
+
var idx = components.indexOf(component);
|
|
66
|
+
idx > 0 && components.splice(idx, 1);
|
|
67
|
+
this.touch();
|
|
68
|
+
}
|
|
69
|
+
touch() {
|
|
70
|
+
if (timeout !== null) {
|
|
71
|
+
clearTimeout(timeout);
|
|
72
|
+
timeout = null;
|
|
73
|
+
}
|
|
74
|
+
touch();
|
|
75
|
+
}
|
|
76
|
+
get length() {
|
|
77
|
+
return components.length;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
var _default = exports.default = new RetentionManager();
|
|
81
|
+
//# sourceMappingURL=retention-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retention-manager.js","names":["_utils","require","_logger","components","timeout","check","now","performance","filter","component","result","reduce","diff","updatedAt","retention","kills","push","next","Math","min","forEach","idx","indexOf","splice","removeSelf","error","setTimeout","touch","max","disposed","isTemplate","app","isViewMode","throttle","requestAnimationFrame","RetentionManager","add","remove","clearTimeout","length","_default","exports","default"],"sources":["../../../src/components/retention/retention-manager.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nimport { throttle } from '../../core/utils.js'\nimport { error } from '../../core/logger.js'\n\n/*\n * RetentionManager\n *\n * 컴포넌트의 Retention을 관리\n *\n * - 루트 정보를 제공함. (get root, )\n * - 하위 레이어들을 관리함.\n * - 전체적인 이벤트 리스너를 관리함.\n * - 전체적인 스타일 정보를 관리함.\n */\n\nvar components = []\nvar timeout\n\nfunction check() {\n timeout = null\n\n var now = performance.now()\n\n components = components.filter(component => filter(component))\n var result = components.reduce(\n (result, component) => {\n let diff = now - component.updatedAt\n\n if (diff >= component.retention) result.kills.push(component)\n else\n result.next = result.next == 0 ? component.retention - diff : Math.min(result.next, component.retention - diff)\n\n return result\n },\n {\n next: 0,\n kills: []\n }\n )\n\n result.kills.forEach(component => {\n let idx = components.indexOf(component)\n if (idx != -1) {\n components.splice(idx, 1)\n component.removeSelf(true)\n } else error('Should not be here. Maybe reentrance problem.')\n })\n\n if (result.next > 0) {\n timeout = setTimeout(touch, Math.max(result.next, 500))\n }\n}\n\nfunction filter(component) {\n return (\n !component.disposed &&\n component.retention > 0 &&\n !component.isTemplate() &&\n component.app &&\n component.app.isViewMode\n )\n}\n\nvar touch = throttle(function () {\n // 여기에서 check 재진입을 방지한다.\n requestAnimationFrame(check)\n}, 500)\n\nclass RetentionManager {\n add(component) {\n if (filter(component) && components.indexOf(component) == -1) {\n components.push(component)\n component.touch()\n }\n\n this.touch()\n }\n\n remove(component) {\n var idx = components.indexOf(component)\n idx > 0 && components.splice(idx, 1)\n\n this.touch()\n }\n\n touch() {\n if (timeout !== null) {\n clearTimeout(timeout)\n timeout = null\n }\n\n touch()\n }\n\n get length() {\n return components.length\n }\n}\n\nexport default new RetentionManager()\n"],"mappings":"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","ignoreList":[]}
|