@rocketshow/designer 1.31.0 → 1.33.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/esm2022/lib/array-sort-pipe.mjs +30 -0
- package/esm2022/lib/designer.component.mjs +605 -0
- package/esm2022/lib/designer.module.mjs +183 -0
- package/esm2022/lib/designer.service.mjs +14 -0
- package/esm2022/lib/effect/effect-curve/effect-curve.component.mjs +569 -0
- package/esm2022/lib/effect/effect-pan-tilt/effect-pan-tilt.component.mjs +36 -0
- package/esm2022/lib/effect/effect.component.mjs +174 -0
- package/esm2022/lib/error-dialog/error-dialog.component.mjs +75 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.mjs +222 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.mjs +147 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.mjs +213 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.mjs +78 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.mjs +119 -0
- package/esm2022/lib/fixture/fixture-capability/fixture-capability.component.mjs +169 -0
- package/esm2022/lib/fixture/fixture-channel/fixture-channel.component.mjs +160 -0
- package/esm2022/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.mjs +365 -0
- package/esm2022/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.mjs +151 -0
- package/esm2022/lib/fixture/fixture-settings/fixture-settings.component.mjs +46 -0
- package/esm2022/lib/fixture/fixture.component.mjs +138 -0
- package/esm2022/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.mjs +145 -0
- package/esm2022/lib/fixture-pool/fixture-pool.component.mjs +589 -0
- package/esm2022/lib/intro/intro.component.mjs +95 -0
- package/esm2022/lib/master-dimmer/master-dimmer.component.mjs +66 -0
- package/esm2022/lib/models/cached-fixture-capability.mjs +9 -0
- package/esm2022/lib/models/cached-fixture-channel.mjs +7 -0
- package/esm2022/lib/models/cached-fixture.mjs +6 -0
- package/esm2022/lib/models/color.mjs +8 -0
- package/esm2022/lib/models/composition.mjs +46 -0
- package/esm2022/lib/models/effect-curve-profile-channel.mjs +15 -0
- package/esm2022/lib/models/effect-curve.mjs +69 -0
- package/esm2022/lib/models/effect-pan-tilt.mjs +19 -0
- package/esm2022/lib/models/effect.mjs +12 -0
- package/esm2022/lib/models/fixture-capability-value.mjs +15 -0
- package/esm2022/lib/models/fixture-capability.mjs +84 -0
- package/esm2022/lib/models/fixture-channel-value.mjs +11 -0
- package/esm2022/lib/models/fixture-channel.mjs +24 -0
- package/esm2022/lib/models/fixture-mode.mjs +14 -0
- package/esm2022/lib/models/fixture-profile.mjs +70 -0
- package/esm2022/lib/models/fixture-wheel-slot.mjs +26 -0
- package/esm2022/lib/models/fixture-wheel.mjs +15 -0
- package/esm2022/lib/models/fixture.mjs +40 -0
- package/esm2022/lib/models/preset-region-scene.mjs +8 -0
- package/esm2022/lib/models/preset.mjs +56 -0
- package/esm2022/lib/models/project.mjs +68 -0
- package/esm2022/lib/models/scene-playback-region.mjs +11 -0
- package/esm2022/lib/models/scene.mjs +27 -0
- package/esm2022/lib/models/universe.mjs +11 -0
- package/esm2022/lib/preset/preset-settings/preset-settings.component.mjs +194 -0
- package/esm2022/lib/preset/preset.component.mjs +131 -0
- package/esm2022/lib/preview/models/color-changer-3d.mjs +167 -0
- package/esm2022/lib/preview/models/fixture-3d.mjs +150 -0
- package/esm2022/lib/preview/models/moving-head-3d.mjs +243 -0
- package/esm2022/lib/preview/preview.component.mjs +212 -0
- package/esm2022/lib/project/project-browser/project-browser.component.mjs +143 -0
- package/esm2022/lib/project/project-import/project-import.component.mjs +107 -0
- package/esm2022/lib/project/project-save/project-save.component.mjs +178 -0
- package/esm2022/lib/project/project-share/project-share.component.mjs +71 -0
- package/esm2022/lib/scene/scene-settings/scene-settings.component.mjs +146 -0
- package/esm2022/lib/scene/scene.component.mjs +110 -0
- package/esm2022/lib/services/animation.service.mjs +16 -0
- package/esm2022/lib/services/config.service.mjs +27 -0
- package/esm2022/lib/services/effect.service.mjs +14 -0
- package/esm2022/lib/services/error-dialog.service.mjs +39 -0
- package/esm2022/lib/services/fixture-pool.service.mjs +30 -0
- package/esm2022/lib/services/fixture.service.mjs +431 -0
- package/esm2022/lib/services/hotkey-target-exclude.service.mjs +24 -0
- package/esm2022/lib/services/intro.service.mjs +140 -0
- package/esm2022/lib/services/preset.service.mjs +400 -0
- package/esm2022/lib/services/preview-mesh.service.mjs +57 -0
- package/esm2022/lib/services/preview.service.mjs +496 -0
- package/esm2022/lib/services/project-load.service.mjs +149 -0
- package/esm2022/lib/services/project.service.mjs +97 -0
- package/esm2022/lib/services/scene.service.mjs +164 -0
- package/esm2022/lib/services/timeline.service.mjs +726 -0
- package/esm2022/lib/services/universe.service.mjs +23 -0
- package/esm2022/lib/services/user-ensure-login.service.mjs +38 -0
- package/esm2022/lib/services/user.service.mjs +89 -0
- package/esm2022/lib/services/uuid.service.mjs +23 -0
- package/esm2022/lib/services/warning-dialog.service.mjs +38 -0
- package/esm2022/lib/timeline/composition-settings/composition-settings.component.mjs +334 -0
- package/esm2022/lib/timeline/timeline-grid/timeline-grid.component.mjs +216 -0
- package/esm2022/lib/timeline/timeline.component.mjs +418 -0
- package/esm2022/lib/user/user-login/user-login.component.mjs +144 -0
- package/esm2022/lib/user/user-register/user-register.component.mjs +220 -0
- package/esm2022/lib/wait-dialog/wait-dialog.component.mjs +26 -0
- package/esm2022/lib/warning-dialog/warning-dialog.component.mjs +68 -0
- package/esm2022/public_api.mjs +7 -0
- package/esm2022/rocketshow-designer.mjs +5 -0
- package/fesm2022/rocketshow-designer.mjs +10626 -0
- package/fesm2022/rocketshow-designer.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/array-sort-pipe.d.ts +3 -0
- package/lib/designer.component.d.ts +15 -12
- package/lib/designer.module.d.ts +54 -0
- package/lib/designer.service.d.ts +3 -0
- package/lib/effect/effect-curve/effect-curve.component.d.ts +4 -1
- package/lib/effect/effect-pan-tilt/effect-pan-tilt.component.d.ts +3 -0
- package/lib/effect/effect.component.d.ts +3 -0
- package/lib/error-dialog/error-dialog.component.d.ts +3 -0
- package/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.d.ts +4 -1
- package/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.d.ts +3 -0
- package/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.d.ts +5 -2
- package/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.d.ts +3 -0
- package/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.d.ts +3 -0
- package/lib/fixture/fixture-capability/fixture-capability.component.d.ts +3 -0
- package/lib/fixture/fixture-channel/fixture-channel.component.d.ts +3 -0
- package/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.d.ts +3 -0
- package/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.d.ts +3 -0
- package/lib/fixture/fixture-settings/fixture-settings.component.d.ts +3 -0
- package/lib/fixture/fixture.component.d.ts +3 -0
- package/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.d.ts +3 -0
- package/lib/fixture-pool/fixture-pool.component.d.ts +3 -0
- package/lib/intro/intro.component.d.ts +3 -0
- package/lib/master-dimmer/master-dimmer.component.d.ts +3 -0
- package/lib/preset/preset-settings/preset-settings.component.d.ts +3 -0
- package/lib/preset/preset.component.d.ts +3 -0
- package/lib/preview/preview.component.d.ts +4 -4
- package/lib/project/project-browser/project-browser.component.d.ts +3 -0
- package/lib/project/project-import/project-import.component.d.ts +3 -0
- package/lib/project/project-save/project-save.component.d.ts +3 -0
- package/lib/project/project-share/project-share.component.d.ts +3 -0
- package/lib/scene/scene-settings/scene-settings.component.d.ts +3 -0
- package/lib/scene/scene.component.d.ts +3 -0
- package/lib/services/animation.service.d.ts +3 -0
- package/lib/services/config.service.d.ts +3 -0
- package/lib/services/effect.service.d.ts +3 -0
- package/lib/services/error-dialog.service.d.ts +3 -0
- package/lib/services/fixture-pool.service.d.ts +3 -0
- package/lib/services/fixture.service.d.ts +3 -0
- package/lib/services/hotkey-target-exclude.service.d.ts +3 -0
- package/lib/services/intro.service.d.ts +3 -0
- package/lib/services/preset.service.d.ts +3 -0
- package/lib/services/preview-mesh.service.d.ts +3 -0
- package/lib/services/preview.service.d.ts +4 -0
- package/lib/services/project-load.service.d.ts +3 -0
- package/lib/services/project.service.d.ts +3 -0
- package/lib/services/scene.service.d.ts +3 -0
- package/lib/services/timeline.service.d.ts +4 -1
- package/lib/services/universe.service.d.ts +3 -0
- package/lib/services/user-ensure-login.service.d.ts +3 -0
- package/lib/services/user.service.d.ts +3 -0
- package/lib/services/uuid.service.d.ts +3 -0
- package/lib/services/warning-dialog.service.d.ts +3 -0
- package/lib/timeline/composition-settings/composition-settings.component.d.ts +3 -0
- package/lib/timeline/timeline-grid/timeline-grid.component.d.ts +3 -0
- package/lib/timeline/timeline.component.d.ts +3 -0
- package/lib/user/user-login/user-login.component.d.ts +3 -0
- package/lib/user/user-register/user-register.component.d.ts +3 -0
- package/lib/wait-dialog/wait-dialog.component.d.ts +3 -0
- package/lib/warning-dialog/warning-dialog.component.d.ts +3 -0
- package/package.json +20 -22
- package/rocketshow-designer-1.33.0.tgz +0 -0
- package/bundles/rocketshow-designer.umd.js +0 -9947
- package/bundles/rocketshow-designer.umd.js.map +0 -1
- package/bundles/rocketshow-designer.umd.min.js +0 -17
- package/bundles/rocketshow-designer.umd.min.js.map +0 -1
- package/esm2015/lib/array-sort-pipe.js +0 -28
- package/esm2015/lib/designer.component.js +0 -411
- package/esm2015/lib/designer.module.js +0 -117
- package/esm2015/lib/designer.service.js +0 -16
- package/esm2015/lib/effect/effect-curve/effect-curve.component.js +0 -325
- package/esm2015/lib/effect/effect-pan-tilt/effect-pan-tilt.component.js +0 -30
- package/esm2015/lib/effect/effect.component.js +0 -73
- package/esm2015/lib/error-dialog/error-dialog.component.js +0 -42
- package/esm2015/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.js +0 -141
- package/esm2015/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.js +0 -128
- package/esm2015/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.js +0 -163
- package/esm2015/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.js +0 -60
- package/esm2015/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.js +0 -87
- package/esm2015/lib/fixture/fixture-capability/fixture-capability.component.js +0 -97
- package/esm2015/lib/fixture/fixture-channel/fixture-channel.component.js +0 -66
- package/esm2015/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.js +0 -200
- package/esm2015/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.js +0 -31
- package/esm2015/lib/fixture/fixture-settings/fixture-settings.component.js +0 -35
- package/esm2015/lib/fixture/fixture.component.js +0 -70
- package/esm2015/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.js +0 -128
- package/esm2015/lib/fixture-pool/fixture-pool.component.js +0 -331
- package/esm2015/lib/intro/intro.component.js +0 -25
- package/esm2015/lib/master-dimmer/master-dimmer.component.js +0 -41
- package/esm2015/lib/models/cached-fixture-capability.js +0 -9
- package/esm2015/lib/models/cached-fixture-channel.js +0 -7
- package/esm2015/lib/models/cached-fixture.js +0 -6
- package/esm2015/lib/models/color.js +0 -8
- package/esm2015/lib/models/composition.js +0 -46
- package/esm2015/lib/models/effect-curve-profile-channel.js +0 -15
- package/esm2015/lib/models/effect-curve.js +0 -69
- package/esm2015/lib/models/effect-pan-tilt.js +0 -19
- package/esm2015/lib/models/effect.js +0 -12
- package/esm2015/lib/models/fixture-capability-value.js +0 -15
- package/esm2015/lib/models/fixture-capability.js +0 -84
- package/esm2015/lib/models/fixture-channel-value.js +0 -11
- package/esm2015/lib/models/fixture-channel.js +0 -24
- package/esm2015/lib/models/fixture-mode.js +0 -14
- package/esm2015/lib/models/fixture-profile.js +0 -70
- package/esm2015/lib/models/fixture-wheel-slot.js +0 -26
- package/esm2015/lib/models/fixture-wheel.js +0 -15
- package/esm2015/lib/models/fixture.js +0 -40
- package/esm2015/lib/models/preset-region-scene.js +0 -8
- package/esm2015/lib/models/preset.js +0 -56
- package/esm2015/lib/models/project.js +0 -68
- package/esm2015/lib/models/scene-playback-region.js +0 -11
- package/esm2015/lib/models/scene.js +0 -27
- package/esm2015/lib/models/universe.js +0 -11
- package/esm2015/lib/preset/preset-settings/preset-settings.component.js +0 -66
- package/esm2015/lib/preset/preset.component.js +0 -85
- package/esm2015/lib/preview/models/color-changer-3d.js +0 -167
- package/esm2015/lib/preview/models/fixture-3d.js +0 -150
- package/esm2015/lib/preview/models/moving-head-3d.js +0 -233
- package/esm2015/lib/preview/preview.component.js +0 -242
- package/esm2015/lib/project/project-browser/project-browser.component.js +0 -73
- package/esm2015/lib/project/project-import/project-import.component.js +0 -89
- package/esm2015/lib/project/project-save/project-save.component.js +0 -105
- package/esm2015/lib/project/project-share/project-share.component.js +0 -43
- package/esm2015/lib/scene/scene-settings/scene-settings.component.js +0 -52
- package/esm2015/lib/scene/scene.component.js +0 -56
- package/esm2015/lib/services/animation.service.js +0 -17
- package/esm2015/lib/services/config.service.js +0 -28
- package/esm2015/lib/services/effect.service.js +0 -16
- package/esm2015/lib/services/error-dialog.service.js +0 -44
- package/esm2015/lib/services/fixture-pool.service.js +0 -34
- package/esm2015/lib/services/fixture.service.js +0 -443
- package/esm2015/lib/services/hotkey-target-exclude.service.js +0 -26
- package/esm2015/lib/services/intro.service.js +0 -144
- package/esm2015/lib/services/preset.service.js +0 -416
- package/esm2015/lib/services/preview-mesh.service.js +0 -58
- package/esm2015/lib/services/preview.service.js +0 -500
- package/esm2015/lib/services/project-load.service.js +0 -171
- package/esm2015/lib/services/project.service.js +0 -113
- package/esm2015/lib/services/scene.service.js +0 -174
- package/esm2015/lib/services/timeline.service.js +0 -738
- package/esm2015/lib/services/universe.service.js +0 -24
- package/esm2015/lib/services/user-ensure-login.service.js +0 -44
- package/esm2015/lib/services/user.service.js +0 -93
- package/esm2015/lib/services/uuid.service.js +0 -25
- package/esm2015/lib/services/warning-dialog.service.js +0 -43
- package/esm2015/lib/timeline/composition-settings/composition-settings.component.js +0 -197
- package/esm2015/lib/timeline/timeline-grid/timeline-grid.component.js +0 -55
- package/esm2015/lib/timeline/timeline.component.js +0 -239
- package/esm2015/lib/user/user-login/user-login.component.js +0 -64
- package/esm2015/lib/user/user-register/user-register.component.js +0 -89
- package/esm2015/lib/wait-dialog/wait-dialog.component.js +0 -16
- package/esm2015/lib/warning-dialog/warning-dialog.component.js +0 -42
- package/esm2015/public_api.js +0 -7
- package/esm2015/rocketshow-designer.js +0 -61
- package/esm5/lib/array-sort-pipe.js +0 -31
- package/esm5/lib/designer.component.js +0 -468
- package/esm5/lib/designer.module.js +0 -120
- package/esm5/lib/designer.service.js +0 -17
- package/esm5/lib/effect/effect-curve/effect-curve.component.js +0 -386
- package/esm5/lib/effect/effect-pan-tilt/effect-pan-tilt.component.js +0 -31
- package/esm5/lib/effect/effect.component.js +0 -75
- package/esm5/lib/error-dialog/error-dialog.component.js +0 -43
- package/esm5/lib/fixture/fixture-capability/fixture-capability-channel/fixture-capability-channel.component.js +0 -159
- package/esm5/lib/fixture/fixture-capability/fixture-capability-color/fixture-capability-color.component.js +0 -130
- package/esm5/lib/fixture/fixture-capability/fixture-capability-color-wheel/fixture-capability-color-wheel.component.js +0 -215
- package/esm5/lib/fixture/fixture-capability/fixture-capability-dimmer/fixture-capability-dimmer.component.js +0 -61
- package/esm5/lib/fixture/fixture-capability/fixture-capability-pan-tilt/fixture-capability-pan-tilt.component.js +0 -88
- package/esm5/lib/fixture/fixture-capability/fixture-capability.component.js +0 -130
- package/esm5/lib/fixture/fixture-channel/fixture-channel.component.js +0 -68
- package/esm5/lib/fixture/fixture-settings/fixture-settings-position/fixture-settings-position.component.js +0 -306
- package/esm5/lib/fixture/fixture-settings/fixture-settings-stage/fixture-settings-stage.component.js +0 -32
- package/esm5/lib/fixture/fixture-settings/fixture-settings.component.js +0 -36
- package/esm5/lib/fixture/fixture.component.js +0 -71
- package/esm5/lib/fixture-pool/fixture-pool-create-from-file/fixture-pool-create-from-file.component.js +0 -127
- package/esm5/lib/fixture-pool/fixture-pool.component.js +0 -430
- package/esm5/lib/intro/intro.component.js +0 -26
- package/esm5/lib/master-dimmer/master-dimmer.component.js +0 -42
- package/esm5/lib/models/cached-fixture-capability.js +0 -11
- package/esm5/lib/models/cached-fixture-channel.js +0 -9
- package/esm5/lib/models/cached-fixture.js +0 -8
- package/esm5/lib/models/color.js +0 -10
- package/esm5/lib/models/composition.js +0 -60
- package/esm5/lib/models/effect-curve-profile-channel.js +0 -29
- package/esm5/lib/models/effect-curve.js +0 -95
- package/esm5/lib/models/effect-pan-tilt.js +0 -24
- package/esm5/lib/models/effect.js +0 -14
- package/esm5/lib/models/fixture-capability-value.js +0 -17
- package/esm5/lib/models/fixture-capability.js +0 -86
- package/esm5/lib/models/fixture-channel-value.js +0 -13
- package/esm5/lib/models/fixture-channel.js +0 -38
- package/esm5/lib/models/fixture-mode.js +0 -16
- package/esm5/lib/models/fixture-profile.js +0 -114
- package/esm5/lib/models/fixture-wheel-slot.js +0 -28
- package/esm5/lib/models/fixture-wheel.js +0 -29
- package/esm5/lib/models/fixture.js +0 -42
- package/esm5/lib/models/preset-region-scene.js +0 -10
- package/esm5/lib/models/preset.js +0 -90
- package/esm5/lib/models/project.js +0 -122
- package/esm5/lib/models/scene-playback-region.js +0 -13
- package/esm5/lib/models/scene.js +0 -29
- package/esm5/lib/models/universe.js +0 -13
- package/esm5/lib/preset/preset-settings/preset-settings.component.js +0 -67
- package/esm5/lib/preset/preset.component.js +0 -86
- package/esm5/lib/preview/models/color-changer-3d.js +0 -194
- package/esm5/lib/preview/models/fixture-3d.js +0 -196
- package/esm5/lib/preview/models/moving-head-3d.js +0 -250
- package/esm5/lib/preview/preview.component.js +0 -280
- package/esm5/lib/project/project-browser/project-browser.component.js +0 -77
- package/esm5/lib/project/project-import/project-import.component.js +0 -88
- package/esm5/lib/project/project-save/project-save.component.js +0 -120
- package/esm5/lib/project/project-share/project-share.component.js +0 -44
- package/esm5/lib/scene/scene-settings/scene-settings.component.js +0 -53
- package/esm5/lib/scene/scene.component.js +0 -57
- package/esm5/lib/services/animation.service.js +0 -18
- package/esm5/lib/services/config.service.js +0 -29
- package/esm5/lib/services/effect.service.js +0 -17
- package/esm5/lib/services/error-dialog.service.js +0 -46
- package/esm5/lib/services/fixture-pool.service.js +0 -36
- package/esm5/lib/services/fixture.service.js +0 -643
- package/esm5/lib/services/hotkey-target-exclude.service.js +0 -27
- package/esm5/lib/services/intro.service.js +0 -145
- package/esm5/lib/services/preset.service.js +0 -637
- package/esm5/lib/services/preview-mesh.service.js +0 -61
- package/esm5/lib/services/preview.service.js +0 -754
- package/esm5/lib/services/project-load.service.js +0 -185
- package/esm5/lib/services/project.service.js +0 -127
- package/esm5/lib/services/scene.service.js +0 -251
- package/esm5/lib/services/timeline.service.js +0 -845
- package/esm5/lib/services/universe.service.js +0 -36
- package/esm5/lib/services/user-ensure-login.service.js +0 -45
- package/esm5/lib/services/user.service.js +0 -95
- package/esm5/lib/services/uuid.service.js +0 -26
- package/esm5/lib/services/warning-dialog.service.js +0 -45
- package/esm5/lib/timeline/composition-settings/composition-settings.component.js +0 -206
- package/esm5/lib/timeline/timeline-grid/timeline-grid.component.js +0 -56
- package/esm5/lib/timeline/timeline.component.js +0 -243
- package/esm5/lib/user/user-login/user-login.component.js +0 -66
- package/esm5/lib/user/user-register/user-register.component.js +0 -91
- package/esm5/lib/wait-dialog/wait-dialog.component.js +0 -18
- package/esm5/lib/warning-dialog/warning-dialog.component.js +0 -43
- package/esm5/public_api.js +0 -7
- package/esm5/rocketshow-designer.js +0 -61
- package/fesm2015/rocketshow-designer.js +0 -7945
- package/fesm2015/rocketshow-designer.js.map +0 -1
- package/fesm5/rocketshow-designer.js +0 -9690
- package/fesm5/rocketshow-designer.js.map +0 -1
- package/rocketshow-designer-1.31.0.tgz +0 -0
- package/rocketshow-designer.d.ts +0 -60
- package/rocketshow-designer.metadata.json +0 -1
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { HttpClient } from '@angular/common/http';
|
|
3
|
-
import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';
|
|
4
|
-
import { BsModalService } from 'ngx-bootstrap/modal';
|
|
5
|
-
import { map } from 'rxjs/operators';
|
|
6
|
-
import { Composition } from '../models/composition';
|
|
7
|
-
import { ConfigService } from '../services/config.service';
|
|
8
|
-
import { HotkeyTargetExcludeService } from '../services/hotkey-target-exclude.service';
|
|
9
|
-
import { IntroService } from '../services/intro.service';
|
|
10
|
-
import { PresetService } from '../services/preset.service';
|
|
11
|
-
import { ProjectService } from '../services/project.service';
|
|
12
|
-
import { TimelineService } from '../services/timeline.service';
|
|
13
|
-
import { UuidService } from '../services/uuid.service';
|
|
14
|
-
import { WarningDialogService } from '../services/warning-dialog.service';
|
|
15
|
-
import { CompositionSettingsComponent } from './composition-settings/composition-settings.component';
|
|
16
|
-
import { TimelineGridComponent } from './timeline-grid/timeline-grid.component';
|
|
17
|
-
var TimelineComponent = /** @class */ (function () {
|
|
18
|
-
function TimelineComponent(timelineService, changeDetectorRef, modalService, uuidService, projectService, hotkeyTargetExcludeService, warningDialogService, http, configService, presetService, introService) {
|
|
19
|
-
var _this = this;
|
|
20
|
-
this.timelineService = timelineService;
|
|
21
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
22
|
-
this.modalService = modalService;
|
|
23
|
-
this.uuidService = uuidService;
|
|
24
|
-
this.projectService = projectService;
|
|
25
|
-
this.hotkeyTargetExcludeService = hotkeyTargetExcludeService;
|
|
26
|
-
this.warningDialogService = warningDialogService;
|
|
27
|
-
this.http = http;
|
|
28
|
-
this.configService = configService;
|
|
29
|
-
this.presetService = presetService;
|
|
30
|
-
this.introService = introService;
|
|
31
|
-
this.timelineService.waveSurferReady.subscribe(function () {
|
|
32
|
-
_this.onResize();
|
|
33
|
-
});
|
|
34
|
-
this.timelineService.detectChanges.subscribe(function () {
|
|
35
|
-
_this.changeDetectorRef.detectChanges();
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
TimelineComponent.prototype.ngOnInit = function () { };
|
|
39
|
-
TimelineComponent.prototype.ngAfterViewInit = function () { };
|
|
40
|
-
TimelineComponent.prototype.onResize = function () {
|
|
41
|
-
if (!this.waveElement) {
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
// Hide wavesurfer to calculate the height, because it will grow infinitely
|
|
45
|
-
// otherwise
|
|
46
|
-
this.waveElement.nativeElement.style.display = 'none';
|
|
47
|
-
var height = this.waveWrapper.nativeElement.clientHeight;
|
|
48
|
-
this.waveElement.nativeElement.style.display = 'block';
|
|
49
|
-
var width = this.waveWrapper.nativeElement.clientWidth;
|
|
50
|
-
if (!this.lastHeight || this.lastHeight !== height || !this.lastWidth || this.lastWidth !== width) {
|
|
51
|
-
// Set height and redraw
|
|
52
|
-
if (this.timelineService.waveSurfer) {
|
|
53
|
-
this.timelineService.waveSurfer.setHeight(height);
|
|
54
|
-
}
|
|
55
|
-
this.lastHeight = height;
|
|
56
|
-
this.lastWidth = width;
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
TimelineComponent.prototype.play = function () {
|
|
60
|
-
this.timelineService.playState = 'playing';
|
|
61
|
-
this.presetService.previewLive(this.timelineService.selectedComposition.name, Math.round(this.timelineService.waveSurfer.getCurrentTime() * 1000));
|
|
62
|
-
this.timelineService.waveSurfer.play();
|
|
63
|
-
};
|
|
64
|
-
TimelineComponent.prototype.pause = function () {
|
|
65
|
-
this.timelineService.playState = 'paused';
|
|
66
|
-
this.presetService.stopPreviewPlay();
|
|
67
|
-
this.timelineService.waveSurfer.pause();
|
|
68
|
-
};
|
|
69
|
-
TimelineComponent.prototype.rewind = function () {
|
|
70
|
-
this.timelineService.playState = 'paused';
|
|
71
|
-
this.pause();
|
|
72
|
-
this.timelineService.waveSurfer.seekTo(0);
|
|
73
|
-
};
|
|
74
|
-
TimelineComponent.prototype.addRegion = function (waveSurferRegion) {
|
|
75
|
-
this.timelineService.addRegion(waveSurferRegion);
|
|
76
|
-
};
|
|
77
|
-
TimelineComponent.prototype.removeRegion = function () {
|
|
78
|
-
this.timelineService.removeRegion();
|
|
79
|
-
};
|
|
80
|
-
TimelineComponent.prototype.openGridSettings = function () {
|
|
81
|
-
var bsModalRef = this.modalService.show(TimelineGridComponent, { keyboard: true, ignoreBackdropClick: false, class: '' });
|
|
82
|
-
};
|
|
83
|
-
TimelineComponent.prototype.afterDeleteFile = function () {
|
|
84
|
-
this.timelineService.deleteSelectedComposition();
|
|
85
|
-
};
|
|
86
|
-
TimelineComponent.prototype.removeComposition = function () {
|
|
87
|
-
var _this = this;
|
|
88
|
-
this.warningDialogService
|
|
89
|
-
.show('designer.timeline.warning-delete-composition')
|
|
90
|
-
.pipe(map(function (result) {
|
|
91
|
-
if (result) {
|
|
92
|
-
if (_this.configService.enableMediaLibrary) {
|
|
93
|
-
// don't delete the file from the library
|
|
94
|
-
_this.afterDeleteFile();
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
// the composition uuid and extension is used as the file name
|
|
98
|
-
_this.http
|
|
99
|
-
.post('file/delete?compositionUuid=' + _this.timelineService.selectedComposition.uuid, undefined)
|
|
100
|
-
.pipe(map(function (response) {
|
|
101
|
-
_this.afterDeleteFile();
|
|
102
|
-
}))
|
|
103
|
-
.subscribe();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}))
|
|
107
|
-
.subscribe();
|
|
108
|
-
};
|
|
109
|
-
TimelineComponent.prototype.openCompositionSettings = function (compositionIndex, newComposition) {
|
|
110
|
-
var _this = this;
|
|
111
|
-
var editComposition = newComposition || JSON.parse(JSON.stringify(this.projectService.project.compositions[compositionIndex]));
|
|
112
|
-
var bsModalRef = this.modalService.show(CompositionSettingsComponent, {
|
|
113
|
-
keyboard: false,
|
|
114
|
-
ignoreBackdropClick: true,
|
|
115
|
-
class: '',
|
|
116
|
-
initialState: { composition: editComposition },
|
|
117
|
-
});
|
|
118
|
-
bsModalRef.content.onClose.subscribe(function (result) {
|
|
119
|
-
if (result === 1) {
|
|
120
|
-
// OK has been pressed -> save
|
|
121
|
-
if (newComposition) {
|
|
122
|
-
_this.projectService.project.compositions.push(editComposition);
|
|
123
|
-
_this.timelineService.selectedCompositionIndex = _this.projectService.project.compositions.length - 1;
|
|
124
|
-
// create the composition, if externally necessary
|
|
125
|
-
if (_this.timelineService.externalCompositionsAvailable) {
|
|
126
|
-
// TODO check, if this composition already exists externally and create it, if not
|
|
127
|
-
// maybe not needed and even confusing?
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
_this.projectService.project.compositions[compositionIndex] = editComposition;
|
|
132
|
-
}
|
|
133
|
-
_this.selectComposition(_this.timelineService.selectedCompositionIndex);
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
};
|
|
137
|
-
TimelineComponent.prototype.compositionSettings = function () {
|
|
138
|
-
this.openCompositionSettings(this.timelineService.selectedCompositionIndex);
|
|
139
|
-
};
|
|
140
|
-
TimelineComponent.prototype.addComposition = function () {
|
|
141
|
-
// create a new composition
|
|
142
|
-
var composition = new Composition();
|
|
143
|
-
composition.uuid = this.uuidService.getUuid();
|
|
144
|
-
composition.name = 'New Composition';
|
|
145
|
-
this.openCompositionSettings(undefined, composition);
|
|
146
|
-
};
|
|
147
|
-
TimelineComponent.prototype.selectComposition = function (index) {
|
|
148
|
-
this.timelineService.selectCompositionIndex(index);
|
|
149
|
-
};
|
|
150
|
-
TimelineComponent.prototype.handleKeyboardEvent = function (event) {
|
|
151
|
-
if (this.hotkeyTargetExcludeService.exclude(event)) {
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
if (!this.timelineService.selectedComposition) {
|
|
155
|
-
return;
|
|
156
|
-
}
|
|
157
|
-
if (event.key === ' ') {
|
|
158
|
-
if (this.timelineService.playState === 'paused') {
|
|
159
|
-
this.play();
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
this.pause();
|
|
163
|
-
}
|
|
164
|
-
// prevent checkboxes being toggled, if in focus e.g.
|
|
165
|
-
event.stopPropagation();
|
|
166
|
-
event.preventDefault();
|
|
167
|
-
}
|
|
168
|
-
};
|
|
169
|
-
TimelineComponent.prototype.setRegionStartMillis = function (value) {
|
|
170
|
-
if (!this.timelineService.selectedPlaybackRegion) {
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
if (isNaN(value) || value < 0) {
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
this.timelineService.selectedPlaybackRegion.startMillis = +value;
|
|
177
|
-
this.timelineService.updateSelectedRegion();
|
|
178
|
-
};
|
|
179
|
-
TimelineComponent.prototype.setRegionEndMillis = function (value) {
|
|
180
|
-
if (!this.timelineService.selectedPlaybackRegion) {
|
|
181
|
-
return;
|
|
182
|
-
}
|
|
183
|
-
if (isNaN(value) || value < 0) {
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
this.timelineService.selectedPlaybackRegion.endMillis = +value;
|
|
187
|
-
this.timelineService.updateSelectedRegion();
|
|
188
|
-
};
|
|
189
|
-
TimelineComponent.ctorParameters = function () { return [
|
|
190
|
-
{ type: TimelineService },
|
|
191
|
-
{ type: ChangeDetectorRef },
|
|
192
|
-
{ type: BsModalService },
|
|
193
|
-
{ type: UuidService },
|
|
194
|
-
{ type: ProjectService },
|
|
195
|
-
{ type: HotkeyTargetExcludeService },
|
|
196
|
-
{ type: WarningDialogService },
|
|
197
|
-
{ type: HttpClient },
|
|
198
|
-
{ type: ConfigService },
|
|
199
|
-
{ type: PresetService },
|
|
200
|
-
{ type: IntroService }
|
|
201
|
-
]; };
|
|
202
|
-
__decorate([
|
|
203
|
-
ViewChild('waveWrapper'),
|
|
204
|
-
__metadata("design:type", ElementRef)
|
|
205
|
-
], TimelineComponent.prototype, "waveWrapper", void 0);
|
|
206
|
-
__decorate([
|
|
207
|
-
ViewChild('waveElement'),
|
|
208
|
-
__metadata("design:type", ElementRef)
|
|
209
|
-
], TimelineComponent.prototype, "waveElement", void 0);
|
|
210
|
-
__decorate([
|
|
211
|
-
HostListener('window:resize'),
|
|
212
|
-
__metadata("design:type", Function),
|
|
213
|
-
__metadata("design:paramtypes", []),
|
|
214
|
-
__metadata("design:returntype", void 0)
|
|
215
|
-
], TimelineComponent.prototype, "onResize", null);
|
|
216
|
-
__decorate([
|
|
217
|
-
HostListener('document:keydown', ['$event']),
|
|
218
|
-
__metadata("design:type", Function),
|
|
219
|
-
__metadata("design:paramtypes", [KeyboardEvent]),
|
|
220
|
-
__metadata("design:returntype", void 0)
|
|
221
|
-
], TimelineComponent.prototype, "handleKeyboardEvent", null);
|
|
222
|
-
TimelineComponent = __decorate([
|
|
223
|
-
Component({
|
|
224
|
-
selector: 'lib-app-timeline',
|
|
225
|
-
template: "<div class=\"card border-secondary h-100\" [class.card-intro-active]=\"introService.showStep('timeline')\">\n <div class=\"card-body h-100 d-flex\" style=\"flex-flow: column; overflow: unset\">\n <div class=\"d-flex pb-3\">\n <div class=\"btn-group mr-3 my-auto\" role=\"group\" style=\"float: left\">\n <a href=\"#\" class=\"btn btn-primary m-0 p-1 mr-3\" (click)=\"addComposition(); (false)\"\n ><i class=\"fa fa-plus-circle fa-fw\" aria-hidden=\"true\"></i\n ></a>\n\n <select\n *ngIf=\"projectService.project.compositions.length > 0\"\n class=\"mr-3\"\n [ngModel]=\"timelineService.selectedCompositionIndex\"\n (ngModelChange)=\"selectComposition($event)\"\n style=\"width: 150px; height: 30px\"\n >\n <option *ngFor=\"let composition of projectService.project.compositions; let i = index\" [value]=\"i\">\n {{ composition.name }}\n </option>\n </select>\n\n <div *ngIf=\"timelineService.selectedComposition\" class=\"d-flex\">\n <a href=\"#\" class=\"btn btn-primary m-0 p-1\" (click)=\"rewind(); (false)\"\n ><i class=\"fa fa-step-backward fa-fw\" aria-hidden=\"true\"></i\n ></a>\n <a *ngIf=\"timelineService.playState == 'paused'\" href=\"#\" class=\"btn btn-primary m-0 p-1\" (click)=\"play(); (false)\"\n ><i class=\"fa fa-play fa-fw\" aria-hidden=\"true\"></i\n ></a>\n <a *ngIf=\"timelineService.playState == 'playing'\" href=\"#\" class=\"btn btn-primary m-0 p-1\" (click)=\"pause(); (false)\"\n ><i class=\"fa fa-pause fa-fw\" aria-hidden=\"true\"></i\n ></a>\n </div>\n </div>\n\n <div *ngIf=\"timelineService.selectedComposition\" class=\"d-flex w-100\">\n <div *ngIf=\"timelineService.duration\" class=\"my-auto mr-3\">\n <span style=\"width: 78px; text-align: left; display: inline-block; margin-left: 5px\">{{ timelineService.currentTime }}</span>\n <span style=\"display: inline-block\"></span>- {{ timelineService.duration }}\n </div>\n\n <div class=\"my-auto mr-3 ml-auto\" style=\"float: left\">\n <i (click)=\"timelineService.applyZoom(timelineService.zoom - 20)\" class=\"fa fa-search-minus mr-3\" aria-hidden=\"true\"></i>\n <mv-slider\n style=\"width: 80px\"\n [tooltip]=\"'hide'\"\n [value]=\"timelineService.zoom\"\n [min]=\"0\"\n [max]=\"200\"\n [step]=\"20\"\n (change)=\"timelineService.applyZoom($event.newValue)\"\n ></mv-slider>\n <i (click)=\"timelineService.applyZoom(timelineService.zoom + 20)\" class=\"fa fa-search-plus ml-3\" aria-hidden=\"true\"></i>\n </div>\n\n <div class=\"my-auto mr-3\">\n <input\n type=\"text\"\n [ngModel]=\"timelineService.selectedPlaybackRegion?.startMillis\"\n (ngModelChange)=\"setRegionStartMillis($event)\"\n />\n - <input type=\"text\" [ngModel]=\"timelineService.selectedPlaybackRegion?.endMillis\" (ngModelChange)=\"setRegionEndMillis($event)\" />\n </div>\n\n <a\n href=\"#\"\n class=\"btn btn-secondary m-0 py-1 mr-3\"\n (click)=\"openGridSettings(); (false)\"\n popover=\"{{ 'designer.timeline.grid' | translate }}\"\n container=\"body\"\n placement=\"top\"\n triggers=\"mouseenter:mouseleave\"\n ><i class=\"fa fa-th\" aria-hidden=\"true\"></i\n ></a>\n\n <a\n href=\"#\"\n class=\"btn btn-secondary m-0 py-1 mr-3\"\n (click)=\"removeRegion(); (false)\"\n popover=\"{{ 'designer.timeline.remove-region' | translate }}\"\n container=\"body\"\n placement=\"top\"\n triggers=\"mouseenter:mouseleave\"\n ><i class=\"fa fa-minus-circle\" aria-hidden=\"true\"></i\n ></a>\n\n <a\n href=\"#\"\n class=\"btn btn-secondary m-0 py-1 mr-3\"\n (click)=\"addRegion(); (false)\"\n popover=\"{{ 'designer.timeline.add-region' | translate }}\"\n container=\"body\"\n placement=\"top\"\n triggers=\"mouseenter:mouseleave\"\n ><i class=\"fa fa-plus-circle\" aria-hidden=\"true\"></i\n ></a>\n\n <a\n href=\"#\"\n class=\"btn btn-secondary m-0 py-1 mr-3\"\n (click)=\"removeComposition(); (false)\"\n popover=\"{{ 'designer.timeline.remove-composition' | translate }}\"\n container=\"body\"\n placement=\"top\"\n triggers=\"mouseenter:mouseleave\"\n ><i class=\"fa fa-trash-o\" aria-hidden=\"true\"></i\n ></a>\n\n <a\n href=\"#\"\n class=\"btn btn-secondary m-0 py-1\"\n (click)=\"compositionSettings(); (false)\"\n popover=\"{{ 'designer.timeline.composition-settings' | translate }}\"\n container=\"body\"\n placement=\"left\"\n triggers=\"mouseenter:mouseleave\"\n ><i class=\"fa fa-cog\" aria-hidden=\"true\"></i\n ></a>\n </div>\n </div>\n\n <div *ngIf=\"timelineService.loadingAudioFile\" class=\"w-100 d-flex\">\n <i class=\"fa fa-circle-o-notch fa-spin m-auto\" style=\"margin-top: -30px\"></i>\n </div>\n\n <div *ngIf=\"timelineService.selectedComposition\">\n <div id=\"waveform-timeline\"></div>\n </div>\n <div *ngIf=\"timelineService.selectedComposition\" #waveWrapper class=\"h-100\" style=\"flex: 2; position: relative\">\n <div #waveElement id=\"waveform\"></div>\n </div>\n\n <div *ngIf=\"projectService.project.compositions.length == 0\" class=\"w-100 d-flex\">\n <a href=\"#\" class=\"m-auto\" (click)=\"addComposition(); (false)\"\n ><i class=\"fa fa-plus-circle fa-fw\" aria-hidden=\"true\"></i> {{ 'designer.timeline.no-compositions' | translate }}</a\n >\n </div>\n </div>\n</div>\n",
|
|
226
|
-
styles: [""]
|
|
227
|
-
}),
|
|
228
|
-
__metadata("design:paramtypes", [TimelineService,
|
|
229
|
-
ChangeDetectorRef,
|
|
230
|
-
BsModalService,
|
|
231
|
-
UuidService,
|
|
232
|
-
ProjectService,
|
|
233
|
-
HotkeyTargetExcludeService,
|
|
234
|
-
WarningDialogService,
|
|
235
|
-
HttpClient,
|
|
236
|
-
ConfigService,
|
|
237
|
-
PresetService,
|
|
238
|
-
IntroService])
|
|
239
|
-
], TimelineComponent);
|
|
240
|
-
return TimelineComponent;
|
|
241
|
-
}());
|
|
242
|
-
export { TimelineComponent };
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJvY2tldHNob3cvZGVzaWduZXIvIiwic291cmNlcyI6WyJsaWIvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN2RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBT2hGO0lBVUUsMkJBQ1MsZUFBZ0MsRUFDL0Is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YTtnQkFDYixhQUFhO2dCQUNmLFlBQVk7O0lBbkJuQztRQURDLFNBQVMsQ0FBQyxhQUFhLENBQUM7a0NBQ1osVUFBVTswREFBQztJQUd4QjtRQURDLFNBQVMsQ0FBQyxhQUFhLENBQUM7a0NBQ1osVUFBVTswREFBQztJQStCeEI7UUFEQyxZQUFZLENBQUMsZUFBZSxDQUFDOzs7O3FEQXVCN0I7SUFtSEQ7UUFEQyxZQUFZLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs7eUNBQ2xCLGFBQWE7O2dFQW9CdkM7SUFqTVUsaUJBQWlCO1FBTDdCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsNDVMQUF3Qzs7U0FFekMsQ0FBQzt5Q0FZMEIsZUFBZTtZQUNaLGlCQUFpQjtZQUN0QixjQUFjO1lBQ2YsV0FBVztZQUNULGNBQWM7WUFDRCwwQkFBMEI7WUFDaEMsb0JBQW9CO1lBQ3BDLFVBQVU7WUFDRCxhQUFhO1lBQ2IsYUFBYTtZQUNmLFlBQVk7T0FyQnhCLGlCQUFpQixDQTRON0I7SUFBRCx3QkFBQztDQUFBLEFBNU5ELElBNE5DO1NBNU5ZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tcG9zaXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29tcG9zaXRpb24nO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IEhvdGtleVRhcmdldEV4Y2x1ZGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaG90a2V5LXRhcmdldC1leGNsdWRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW50cm9TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaW50cm8uc2VydmljZSc7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcHJlc2V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJvamVjdFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcm9qZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVGltZWxpbmVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdGltZWxpbmUuc2VydmljZSc7XG5pbXBvcnQgeyBVdWlkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3V1aWQuc2VydmljZSc7XG5pbXBvcnQgeyBXYXJuaW5nRGlhbG9nU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3dhcm5pbmctZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tcG9zaXRpb25TZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zaXRpb24tc2V0dGluZ3MvY29tcG9zaXRpb24tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFRpbWVsaW5lR3JpZENvbXBvbmVudCB9IGZyb20gJy4vdGltZWxpbmUtZ3JpZC90aW1lbGluZS1ncmlkLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hcHAtdGltZWxpbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGltZWxpbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aW1lbGluZS5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVsaW5lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnd2F2ZVdyYXBwZXInKVxuICB3YXZlV3JhcHBlcjogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCd3YXZlRWxlbWVudCcpXG4gIHdhdmVFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gIHByaXZhdGUgbGFzdEhlaWdodDogbnVtYmVyO1xuICBwcml2YXRlIGxhc3RXaWR0aDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0aW1lbGluZVNlcnZpY2U6IFRpbWVsaW5lU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1dWlkU2VydmljZTogVXVpZFNlcnZpY2UsXG4gICAgcHVibGljIHByb2plY3RTZXJ2aWNlOiBQcm9qZWN0U2VydmljZSxcbiAgICBwcml2YXRlIGhvdGtleVRhcmdldEV4Y2x1ZGVTZXJ2aWNlOiBIb3RrZXlUYXJnZXRFeGNsdWRlU2VydmljZSxcbiAgICBwcml2YXRlIHdhcm5pbmdEaWFsb2dTZXJ2aWNlOiBXYXJuaW5nRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgcHJlc2V0U2VydmljZTogUHJlc2V0U2VydmljZSxcbiAgICBwdWJsaWMgaW50cm9TZXJ2aWNlOiBJbnRyb1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2Uud2F2ZVN1cmZlclJlYWR5LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uUmVzaXplKCk7XG4gICAgfSk7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2UuZGV0ZWN0Q2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge31cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJylcbiAgcHVibGljIG9uUmVzaXplKCkge1xuICAgIGlmICghdGhpcy53YXZlRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEhpZGUgd2F2ZXN1cmZlciB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgYmVjYXVzZSBpdCB3aWxsIGdyb3cgaW5maW5pdGVseVxuICAgIC8vIG90aGVyd2lzZVxuICAgIHRoaXMud2F2ZUVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgIGNvbnN0IGhlaWdodCA9IHRoaXMud2F2ZVdyYXBwZXIubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgdGhpcy53YXZlRWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuXG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLndhdmVXcmFwcGVyLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG5cbiAgICBpZiAoIXRoaXMubGFzdEhlaWdodCB8fCB0aGlzLmxhc3RIZWlnaHQgIT09IGhlaWdodCB8fCAhdGhpcy5sYXN0V2lkdGggfHwgdGhpcy5sYXN0V2lkdGggIT09IHdpZHRoKSB7XG4gICAgICAvLyBTZXQgaGVpZ2h0IGFuZCByZWRyYXdcbiAgICAgIGlmICh0aGlzLnRpbWVsaW5lU2VydmljZS53YXZlU3VyZmVyKSB7XG4gICAgICAgIHRoaXMudGltZWxpbmVTZXJ2aWNlLndhdmVTdXJmZXIuc2V0SGVpZ2h0KGhlaWdodCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMubGFzdEhlaWdodCA9IGhlaWdodDtcbiAgICAgIHRoaXMubGFzdFdpZHRoID0gd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgcGxheSgpIHtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS5wbGF5U3RhdGUgPSAncGxheWluZyc7XG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdMaXZlKFxuICAgICAgdGhpcy50aW1lbGluZVNlcnZpY2Uuc2VsZWN0ZWRDb21wb3NpdGlvbi5uYW1lLFxuICAgICAgTWF0aC5yb3VuZCh0aGlzLnRpbWVsaW5lU2VydmljZS53YXZlU3VyZmVyLmdldEN1cnJlbnRUaW1lKCkgKiAxMDAwKVxuICAgICk7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2Uud2F2ZVN1cmZlci5wbGF5KCk7XG4gIH1cblxuICBwYXVzZSgpIHtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS5wbGF5U3RhdGUgPSAncGF1c2VkJztcbiAgICB0aGlzLnByZXNldFNlcnZpY2Uuc3RvcFByZXZpZXdQbGF5KCk7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2Uud2F2ZVN1cmZlci5wYXVzZSgpO1xuICB9XG5cbiAgcmV3aW5kKCkge1xuICAgIHRoaXMudGltZWxpbmVTZXJ2aWNlLnBsYXlTdGF0ZSA9ICdwYXVzZWQnO1xuICAgIHRoaXMucGF1c2UoKTtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS53YXZlU3VyZmVyLnNlZWtUbygwKTtcbiAgfVxuXG4gIGFkZFJlZ2lvbih3YXZlU3VyZmVyUmVnaW9uPzogYW55KSB7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2UuYWRkUmVnaW9uKHdhdmVTdXJmZXJSZWdpb24pO1xuICB9XG5cbiAgcmVtb3ZlUmVnaW9uKCkge1xuICAgIHRoaXMudGltZWxpbmVTZXJ2aWNlLnJlbW92ZVJlZ2lvbigpO1xuICB9XG5cbiAgb3BlbkdyaWRTZXR0aW5ncygpIHtcbiAgICBjb25zdCBic01vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhUaW1lbGluZUdyaWRDb21wb25lbnQsIHsga2V5Ym9hcmQ6IHRydWUsIGlnbm9yZUJhY2tkcm9wQ2xpY2s6IGZhbHNlLCBjbGFzczogJycgfSk7XG4gIH1cblxuICBwcml2YXRlIGFmdGVyRGVsZXRlRmlsZSgpIHtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS5kZWxldGVTZWxlY3RlZENvbXBvc2l0aW9uKCk7XG4gIH1cblxuICByZW1vdmVDb21wb3NpdGlvbigpIHtcbiAgICB0aGlzLndhcm5pbmdEaWFsb2dTZXJ2aWNlXG4gICAgICAuc2hvdygnZGVzaWduZXIudGltZWxpbmUud2FybmluZy1kZWxldGUtY29tcG9zaXRpb24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzdWx0KSA9PiB7XG4gICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29uZmlnU2VydmljZS5lbmFibGVNZWRpYUxpYnJhcnkpIHtcbiAgICAgICAgICAgICAgLy8gZG9uJ3QgZGVsZXRlIHRoZSBmaWxlIGZyb20gdGhlIGxpYnJhcnlcbiAgICAgICAgICAgICAgdGhpcy5hZnRlckRlbGV0ZUZpbGUoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIC8vIHRoZSBjb21wb3NpdGlvbiB1dWlkIGFuZCBleHRlbnNpb24gaXMgdXNlZCBhcyB0aGUgZmlsZSBuYW1lXG4gICAgICAgICAgICAgIHRoaXMuaHR0cFxuICAgICAgICAgICAgICAgIC5wb3N0KCdmaWxlL2RlbGV0ZT9jb21wb3NpdGlvblV1aWQ9JyArIHRoaXMudGltZWxpbmVTZXJ2aWNlLnNlbGVjdGVkQ29tcG9zaXRpb24udXVpZCwgdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZTogUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZnRlckRlbGV0ZUZpbGUoKTtcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5Db21wb3NpdGlvblNldHRpbmdzKGNvbXBvc2l0aW9uSW5kZXg/OiBudW1iZXIsIG5ld0NvbXBvc2l0aW9uPzogQ29tcG9zaXRpb24pIHtcbiAgICBjb25zdCBlZGl0Q29tcG9zaXRpb246IENvbXBvc2l0aW9uID1cbiAgICAgIG5ld0NvbXBvc2l0aW9uIHx8IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9qZWN0U2VydmljZS5wcm9qZWN0LmNvbXBvc2l0aW9uc1tjb21wb3NpdGlvbkluZGV4XSkpO1xuXG4gICAgY29uc3QgYnNNb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLnNob3coQ29tcG9zaXRpb25TZXR0aW5nc0NvbXBvbmVudCwge1xuICAgICAga2V5Ym9hcmQ6IGZhbHNlLFxuICAgICAgaWdub3JlQmFja2Ryb3BDbGljazogdHJ1ZSxcbiAgICAgIGNsYXNzOiAnJyxcbiAgICAgIGluaXRpYWxTdGF0ZTogeyBjb21wb3NpdGlvbjogZWRpdENvbXBvc2l0aW9uIH0sXG4gICAgfSk7XG5cbiAgICAoYnNNb2RhbFJlZi5jb250ZW50IGFzIENvbXBvc2l0aW9uU2V0dGluZ3NDb21wb25lbnQpLm9uQ2xvc2Uuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcbiAgICAgIGlmIChyZXN1bHQgPT09IDEpIHtcbiAgICAgICAgLy8gT0sgaGFzIGJlZW4gcHJlc3NlZCAtPiBzYXZlXG4gICAgICAgIGlmIChuZXdDb21wb3NpdGlvbikge1xuICAgICAgICAgIHRoaXMucHJvamVjdFNlcnZpY2UucHJvamVjdC5jb21wb3NpdGlvbnMucHVzaChlZGl0Q29tcG9zaXRpb24pO1xuICAgICAgICAgIHRoaXMudGltZWxpbmVTZXJ2aWNlLnNlbGVjdGVkQ29tcG9zaXRpb25JbmRleCA9IHRoaXMucHJvamVjdFNlcnZpY2UucHJvamVjdC5jb21wb3NpdGlvbnMubGVuZ3RoIC0gMTtcblxuICAgICAgICAgIC8vIGNyZWF0ZSB0aGUgY29tcG9zaXRpb24sIGlmIGV4dGVybmFsbHkgbmVjZXNzYXJ5XG4gICAgICAgICAgaWYgKHRoaXMudGltZWxpbmVTZXJ2aWNlLmV4dGVybmFsQ29tcG9zaXRpb25zQXZhaWxhYmxlKSB7XG4gICAgICAgICAgICAvLyBUT0RPIGNoZWNrLCBpZiB0aGlzIGNvbXBvc2l0aW9uIGFscmVhZHkgZXhpc3RzIGV4dGVybmFsbHkgYW5kIGNyZWF0ZSBpdCwgaWYgbm90XG4gICAgICAgICAgICAvLyBtYXliZSBub3QgbmVlZGVkIGFuZCBldmVuIGNvbmZ1c2luZz9cbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5wcm9qZWN0U2VydmljZS5wcm9qZWN0LmNvbXBvc2l0aW9uc1tjb21wb3NpdGlvbkluZGV4XSA9IGVkaXRDb21wb3NpdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VsZWN0Q29tcG9zaXRpb24odGhpcy50aW1lbGluZVNlcnZpY2Uuc2VsZWN0ZWRDb21wb3NpdGlvbkluZGV4KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNvbXBvc2l0aW9uU2V0dGluZ3MoKSB7XG4gICAgdGhpcy5vcGVuQ29tcG9zaXRpb25TZXR0aW5ncyh0aGlzLnRpbWVsaW5lU2VydmljZS5zZWxlY3RlZENvbXBvc2l0aW9uSW5kZXgpO1xuICB9XG5cbiAgYWRkQ29tcG9zaXRpb24oKSB7XG4gICAgLy8gY3JlYXRlIGEgbmV3IGNvbXBvc2l0aW9uXG4gICAgY29uc3QgY29tcG9zaXRpb24gPSBuZXcgQ29tcG9zaXRpb24oKTtcbiAgICBjb21wb3NpdGlvbi51dWlkID0gdGhpcy51dWlkU2VydmljZS5nZXRVdWlkKCk7XG4gICAgY29tcG9zaXRpb24ubmFtZSA9ICdOZXcgQ29tcG9zaXRpb24nO1xuXG4gICAgdGhpcy5vcGVuQ29tcG9zaXRpb25TZXR0aW5ncyh1bmRlZmluZWQsIGNvbXBvc2l0aW9uKTtcbiAgfVxuXG4gIHNlbGVjdENvbXBvc2l0aW9uKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS5zZWxlY3RDb21wb3NpdGlvbkluZGV4KGluZGV4KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxuICBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuaG90a2V5VGFyZ2V0RXhjbHVkZVNlcnZpY2UuZXhjbHVkZShldmVudCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMudGltZWxpbmVTZXJ2aWNlLnNlbGVjdGVkQ29tcG9zaXRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgIGlmICh0aGlzLnRpbWVsaW5lU2VydmljZS5wbGF5U3RhdGUgPT09ICdwYXVzZWQnKSB7XG4gICAgICAgIHRoaXMucGxheSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wYXVzZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBwcmV2ZW50IGNoZWNrYm94ZXMgYmVpbmcgdG9nZ2xlZCwgaWYgaW4gZm9jdXMgZS5nLlxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIHNldFJlZ2lvblN0YXJ0TWlsbGlzKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAoIXRoaXMudGltZWxpbmVTZXJ2aWNlLnNlbGVjdGVkUGxheWJhY2tSZWdpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaXNOYU4odmFsdWUpIHx8IHZhbHVlIDwgMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudGltZWxpbmVTZXJ2aWNlLnNlbGVjdGVkUGxheWJhY2tSZWdpb24uc3RhcnRNaWxsaXMgPSArdmFsdWU7XG4gICAgdGhpcy50aW1lbGluZVNlcnZpY2UudXBkYXRlU2VsZWN0ZWRSZWdpb24oKTtcbiAgfVxuXG4gIHNldFJlZ2lvbkVuZE1pbGxpcyh2YWx1ZTogYW55KSB7XG4gICAgaWYgKCF0aGlzLnRpbWVsaW5lU2VydmljZS5zZWxlY3RlZFBsYXliYWNrUmVnaW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGlzTmFOKHZhbHVlKSB8fCB2YWx1ZSA8IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS5zZWxlY3RlZFBsYXliYWNrUmVnaW9uLmVuZE1pbGxpcyA9ICt2YWx1ZTtcbiAgICB0aGlzLnRpbWVsaW5lU2VydmljZS51cGRhdGVTZWxlY3RlZFJlZ2lvbigpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component, HostListener } from '@angular/core';
|
|
3
|
-
import { BsModalRef } from 'ngx-bootstrap/modal';
|
|
4
|
-
import { UserService } from '../../services/user.service';
|
|
5
|
-
var UserLoginComponent = /** @class */ (function () {
|
|
6
|
-
function UserLoginComponent(bsModalRef, userService) {
|
|
7
|
-
this.bsModalRef = bsModalRef;
|
|
8
|
-
this.userService = userService;
|
|
9
|
-
this.error = '';
|
|
10
|
-
this.loggingIn = false;
|
|
11
|
-
this.email = '';
|
|
12
|
-
this.password = '';
|
|
13
|
-
}
|
|
14
|
-
UserLoginComponent.prototype.ngOnInit = function () { };
|
|
15
|
-
UserLoginComponent.prototype.cancel = function () {
|
|
16
|
-
this.bsModalRef.hide();
|
|
17
|
-
};
|
|
18
|
-
UserLoginComponent.prototype.login = function () {
|
|
19
|
-
var _this = this;
|
|
20
|
-
this.loggingIn = true;
|
|
21
|
-
this.error = '';
|
|
22
|
-
if (!this.email || !this.password) {
|
|
23
|
-
this.error = 'fill-all-fields';
|
|
24
|
-
this.loggingIn = false;
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
this.userService.login(this.email, this.password).subscribe(function () {
|
|
28
|
-
_this.bsModalRef.hide();
|
|
29
|
-
if (_this.subject) {
|
|
30
|
-
_this.subject.next();
|
|
31
|
-
}
|
|
32
|
-
}, function (response) {
|
|
33
|
-
if (response.error && response.error.error) {
|
|
34
|
-
_this.error = response.error.error;
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
_this.error = 'internal';
|
|
38
|
-
}
|
|
39
|
-
_this.loggingIn = false;
|
|
40
|
-
});
|
|
41
|
-
};
|
|
42
|
-
UserLoginComponent.prototype.handleKeyboardEvent = function (event) {
|
|
43
|
-
this.login();
|
|
44
|
-
};
|
|
45
|
-
UserLoginComponent.ctorParameters = function () { return [
|
|
46
|
-
{ type: BsModalRef },
|
|
47
|
-
{ type: UserService }
|
|
48
|
-
]; };
|
|
49
|
-
__decorate([
|
|
50
|
-
HostListener('document:keydown.enter', ['$event']),
|
|
51
|
-
__metadata("design:type", Function),
|
|
52
|
-
__metadata("design:paramtypes", [Object]),
|
|
53
|
-
__metadata("design:returntype", void 0)
|
|
54
|
-
], UserLoginComponent.prototype, "handleKeyboardEvent", null);
|
|
55
|
-
UserLoginComponent = __decorate([
|
|
56
|
-
Component({
|
|
57
|
-
selector: 'lib-user-login',
|
|
58
|
-
template: "<form (ngSubmit)=\"login()\">\n <div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{ 'designer.user.login-title' | translate }}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"cancel(); (false)\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"form-group row\">\n <label for=\"email\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.email' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-envelope-o\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"loggingIn\"\n name=\"email\"\n [(ngModel)]=\"email\"\n type=\"email\"\n class=\"form-control\"\n id=\"email\"\n placeholder=\"email@example.com\"\n />\n </div>\n </div>\n </div>\n <div class=\"form-group row\">\n <label for=\"password\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.password' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-lock\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"loggingIn\"\n name=\"password\"\n [(ngModel)]=\"password\"\n type=\"password\"\n class=\"form-control\"\n id=\"password\"\n placeholder=\"{{ 'designer.user.password' | translate }}\"\n />\n </div>\n </div>\n </div>\n <div *ngIf=\"error\" class=\"alert alert-primary\" role=\"alert\">\n {{ 'designer.user.error.' + error | translate }}\n </div>\n </div>\n <div class=\"modal-footer\">\n <a class=\"mr-3 my-auto\" href=\"#\" role=\"button\" (click)=\"cancel(); (false)\">\n {{ 'designer.misc.cancel' | translate }}\n </a>\n <button [disabled]=\"loggingIn\" type=\"submit\" class=\"btn btn-primary\">\n <i *ngIf=\"loggingIn\" class=\"fa fa-spinner fa-pulse fa-fw\"></i> {{ 'designer.user.login' | translate }}\n </button>\n </div>\n</form>\n",
|
|
59
|
-
styles: [""]
|
|
60
|
-
}),
|
|
61
|
-
__metadata("design:paramtypes", [BsModalRef, UserService])
|
|
62
|
-
], UserLoginComponent);
|
|
63
|
-
return UserLoginComponent;
|
|
64
|
-
}());
|
|
65
|
-
export { UserLoginComponent };
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1sb2dpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Acm9ja2V0c2hvdy9kZXNpZ25lci8iLCJzb3VyY2VzIjpbImxpYi91c2VyL3VzZXItbG9naW4vdXNlci1sb2dpbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFPMUQ7SUFVRSw0QkFBb0IsVUFBc0IsRUFBVSxXQUF3QjtRQUF4RCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFUNUUsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGFBQVEsR0FBRyxFQUFFLENBQUM7SUFLaUUsQ0FBQztJQUVoRixxQ0FBUSxHQUFSLGNBQVksQ0FBQztJQUViLG1DQUFNLEdBQU47UUFDRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxrQ0FBSyxHQUFMO1FBQUEsaUJBMEJDO1FBekJDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBRWhCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLGlCQUFpQixDQUFDO1lBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDekQ7WUFDRSxLQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3ZCLElBQUksS0FBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsS0FBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNyQjtRQUNILENBQUMsRUFDRCxVQUFDLFFBQVE7WUFDUCxJQUFJLFFBQVEsQ0FBQyxLQUFLLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7Z0JBQzFDLEtBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7YUFDbkM7aUJBQU07Z0JBQ0wsS0FBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUM7YUFDekI7WUFDRCxLQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFHRCxnREFBbUIsR0FBbkIsVUFBb0IsS0FBVTtRQUM1QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDOztnQkF2QytCLFVBQVU7Z0JBQXVCLFdBQVc7O0lBcUM1RTtRQURDLFlBQVksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O2lFQUdsRDtJQWpEVSxrQkFBa0I7UUFMOUIsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQiw0M0VBQTBDOztTQUUzQyxDQUFDO3lDQVdnQyxVQUFVLEVBQXVCLFdBQVc7T0FWakUsa0JBQWtCLENBa0Q5QjtJQUFELHlCQUFDO0NBQUEsQUFsREQsSUFrREM7U0FsRFksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdXNlci1sb2dpbicsXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1sb2dpbi5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVycm9yID0gJyc7XG4gIGxvZ2dpbmdJbiA9IGZhbHNlO1xuXG4gIGVtYWlsID0gJyc7XG4gIHBhc3N3b3JkID0gJyc7XG5cbiAgLy8gZW1pdHMsIHdoZW4gbG9nZ2VkIGluXG4gIHN1YmplY3Q6IFN1YmplY3Q8dm9pZD47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBic01vZGFsUmVmOiBCc01vZGFsUmVmLCBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gIH1cblxuICBsb2dpbigpIHtcbiAgICB0aGlzLmxvZ2dpbmdJbiA9IHRydWU7XG4gICAgdGhpcy5lcnJvciA9ICcnO1xuXG4gICAgaWYgKCF0aGlzLmVtYWlsIHx8ICF0aGlzLnBhc3N3b3JkKSB7XG4gICAgICB0aGlzLmVycm9yID0gJ2ZpbGwtYWxsLWZpZWxkcyc7XG4gICAgICB0aGlzLmxvZ2dpbmdJbiA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudXNlclNlcnZpY2UubG9naW4odGhpcy5lbWFpbCwgdGhpcy5wYXNzd29yZCkuc3Vic2NyaWJlKFxuICAgICAgKCkgPT4ge1xuICAgICAgICB0aGlzLmJzTW9kYWxSZWYuaGlkZSgpO1xuICAgICAgICBpZiAodGhpcy5zdWJqZWN0KSB7XG4gICAgICAgICAgdGhpcy5zdWJqZWN0Lm5leHQoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3IgJiYgcmVzcG9uc2UuZXJyb3IuZXJyb3IpIHtcbiAgICAgICAgICB0aGlzLmVycm9yID0gcmVzcG9uc2UuZXJyb3IuZXJyb3I7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5lcnJvciA9ICdpbnRlcm5hbCc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sb2dnaW5nSW4gPSBmYWxzZTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lbnRlcicsIFsnJGV2ZW50J10pXG4gIGhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMubG9naW4oKTtcbiAgfVxufVxuIl19
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component, HostListener } from '@angular/core';
|
|
3
|
-
import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
|
|
4
|
-
import { UserService } from '../../services/user.service';
|
|
5
|
-
import { UserLoginComponent } from '../user-login/user-login.component';
|
|
6
|
-
var UserRegisterComponent = /** @class */ (function () {
|
|
7
|
-
function UserRegisterComponent(bsModalRef, modalService, userService) {
|
|
8
|
-
this.bsModalRef = bsModalRef;
|
|
9
|
-
this.modalService = modalService;
|
|
10
|
-
this.userService = userService;
|
|
11
|
-
this.error = '';
|
|
12
|
-
this.registering = false;
|
|
13
|
-
this.username = '';
|
|
14
|
-
this.email = '';
|
|
15
|
-
this.password = '';
|
|
16
|
-
this.passwordRepeat = '';
|
|
17
|
-
}
|
|
18
|
-
UserRegisterComponent.prototype.ngOnInit = function () { };
|
|
19
|
-
UserRegisterComponent.prototype.cancel = function () {
|
|
20
|
-
this.bsModalRef.hide();
|
|
21
|
-
};
|
|
22
|
-
UserRegisterComponent.prototype.login = function () {
|
|
23
|
-
this.bsModalRef.hide();
|
|
24
|
-
this.modalService.show(UserLoginComponent, { keyboard: true, ignoreBackdropClick: false, initialState: { subject: this.subject } });
|
|
25
|
-
};
|
|
26
|
-
UserRegisterComponent.prototype.emailIsValid = function (email) {
|
|
27
|
-
// tslint:disable-next-line:max-line-length
|
|
28
|
-
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
|
|
29
|
-
return re.test(String(email).toLowerCase());
|
|
30
|
-
};
|
|
31
|
-
UserRegisterComponent.prototype.register = function () {
|
|
32
|
-
var _this = this;
|
|
33
|
-
this.registering = true;
|
|
34
|
-
this.error = '';
|
|
35
|
-
if (!this.username || !this.email || !this.password || !this.passwordRepeat) {
|
|
36
|
-
this.error = 'fill-all-fields';
|
|
37
|
-
this.registering = false;
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
if (!this.emailIsValid(this.email)) {
|
|
41
|
-
this.error = 'email-valid';
|
|
42
|
-
this.registering = false;
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
if (this.password !== this.passwordRepeat) {
|
|
46
|
-
this.error = 'password-mismatch';
|
|
47
|
-
this.registering = false;
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
this.userService.register(this.email, this.username, this.password).subscribe(function () {
|
|
51
|
-
// automatically login after registering
|
|
52
|
-
_this.userService.login(_this.email, _this.password).subscribe(function () {
|
|
53
|
-
_this.registering = false;
|
|
54
|
-
_this.bsModalRef.hide();
|
|
55
|
-
});
|
|
56
|
-
}, function (response) {
|
|
57
|
-
if (response.error && response.error.error) {
|
|
58
|
-
_this.error = response.error.error;
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
_this.error = 'internal';
|
|
62
|
-
}
|
|
63
|
-
_this.registering = false;
|
|
64
|
-
});
|
|
65
|
-
};
|
|
66
|
-
UserRegisterComponent.prototype.handleKeyboardEvent = function (event) {
|
|
67
|
-
this.register();
|
|
68
|
-
};
|
|
69
|
-
UserRegisterComponent.ctorParameters = function () { return [
|
|
70
|
-
{ type: BsModalRef },
|
|
71
|
-
{ type: BsModalService },
|
|
72
|
-
{ type: UserService }
|
|
73
|
-
]; };
|
|
74
|
-
__decorate([
|
|
75
|
-
HostListener('document:keydown.enter', ['$event']),
|
|
76
|
-
__metadata("design:type", Function),
|
|
77
|
-
__metadata("design:paramtypes", [Object]),
|
|
78
|
-
__metadata("design:returntype", void 0)
|
|
79
|
-
], UserRegisterComponent.prototype, "handleKeyboardEvent", null);
|
|
80
|
-
UserRegisterComponent = __decorate([
|
|
81
|
-
Component({
|
|
82
|
-
selector: 'lib-user-register',
|
|
83
|
-
template: "<form (ngSubmit)=\"register()\">\n <div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{ 'designer.user.register-title' | translate }}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"cancel(); (false)\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div *ngIf=\"subject\" class=\"alert alert-success\" role=\"alert\">\n {{ 'designer.user.login-required' | translate }}\n </div>\n <div class=\"form-group row\">\n <label for=\"username\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.username' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-user\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"registering\"\n name=\"username\"\n [(ngModel)]=\"username\"\n type=\"text\"\n class=\"form-control\"\n id=\"username\"\n placeholder=\"The Cool Guy\"\n />\n </div>\n </div>\n </div>\n <div class=\"form-group row\">\n <label for=\"email\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.email' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-envelope-o\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"registering\"\n name=\"email\"\n [(ngModel)]=\"email\"\n type=\"email\"\n class=\"form-control\"\n id=\"email\"\n placeholder=\"email@example.com\"\n />\n </div>\n </div>\n </div>\n <div class=\"form-group row\">\n <label for=\"password\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.password' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-lock\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"registering\"\n name=\"password\"\n [(ngModel)]=\"password\"\n type=\"password\"\n class=\"form-control\"\n id=\"password\"\n placeholder=\"{{ 'designer.user.password' | translate }}\"\n />\n </div>\n </div>\n </div>\n <div class=\"form-group row\">\n <label for=\"passwordRepeat\" class=\"col-sm-4 col-form-label\">{{ 'designer.user.password-repeat' | translate }}</label>\n <div class=\"col-sm-8\">\n <div class=\"input-group\">\n <div class=\"input-group-prepend\">\n <div class=\"input-group-text\"><i class=\"fa fa-fw fa-lock\" aria-hidden=\"true\"></i></div>\n </div>\n <input\n required\n [disabled]=\"registering\"\n name=\"passwordRepeat\"\n [(ngModel)]=\"passwordRepeat\"\n type=\"password\"\n class=\"form-control\"\n id=\"passwordRepeat\"\n placeholder=\"{{ 'designer.user.password' | translate }}\"\n />\n </div>\n </div>\n </div>\n <div *ngIf=\"error\" class=\"alert alert-primary\" role=\"alert\">\n {{ 'designer.user.error.' + error | translate }}\n </div>\n <a href=\"#\" (click)=\"login(); (false)\">\n <p class=\"mt-3 mb-0\" style=\"text-align: center\">{{ 'designer.user.already-have-account' | translate }}</p>\n </a>\n </div>\n <div class=\"modal-footer\">\n <a class=\"mr-3 my-auto\" href=\"#\" role=\"button\" (click)=\"cancel(); (false)\">\n {{ 'designer.misc.cancel' | translate }}\n </a>\n <button [disabled]=\"registering\" type=\"submit\" class=\"btn btn-primary\">\n <i *ngIf=\"registering\" class=\"fa fa-spinner fa-pulse fa-fw\"> </i>{{ 'designer.user.register' | translate }}\n </button>\n </div>\n</form>\n",
|
|
84
|
-
styles: [""]
|
|
85
|
-
}),
|
|
86
|
-
__metadata("design:paramtypes", [BsModalRef, BsModalService, UserService])
|
|
87
|
-
], UserRegisterComponent);
|
|
88
|
-
return UserRegisterComponent;
|
|
89
|
-
}());
|
|
90
|
-
export { UserRegisterComponent };
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1yZWdpc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Acm9ja2V0c2hvdy9kZXNpZ25lci8iLCJzb3VyY2VzIjpbImxpYi91c2VyL3VzZXItcmVnaXN0ZXIvdXNlci1yZWdpc3Rlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBT3hFO0lBWUUsK0JBQW9CLFVBQXNCLEVBQVUsWUFBNEIsRUFBVSxXQUF3QjtRQUE5RixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWdCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFYbEgsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLG1CQUFjLEdBQUcsRUFBRSxDQUFDO0lBS2lHLENBQUM7SUFFdEgsd0NBQVEsR0FBUixjQUFZLENBQUM7SUFFYixzQ0FBTSxHQUFOO1FBQ0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQscUNBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLEtBQUss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LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJzTW9kYWxSZWYsIEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3VzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyTG9naW5Db21wb25lbnQgfSBmcm9tICcuLi91c2VyLWxvZ2luL3VzZXItbG9naW4uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXVzZXItcmVnaXN0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1yZWdpc3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3VzZXItcmVnaXN0ZXIuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBVc2VyUmVnaXN0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBlcnJvciA9ICcnO1xuICByZWdpc3RlcmluZyA9IGZhbHNlO1xuXG4gIHVzZXJuYW1lID0gJyc7XG4gIGVtYWlsID0gJyc7XG4gIHBhc3N3b3JkID0gJyc7XG4gIHBhc3N3b3JkUmVwZWF0ID0gJyc7XG5cbiAgLy8gZW1pdHMsIHdoZW4gbG9nZ2VkIGluXG4gIHN1YmplY3Q6IFN1YmplY3Q8dm9pZD47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBic01vZGFsUmVmOiBCc01vZGFsUmVmLCBwcml2YXRlIG1vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCkge31cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgfVxuXG4gIGxvZ2luKCkge1xuICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gICAgdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhVc2VyTG9naW5Db21wb25lbnQsIHsga2V5Ym9hcmQ6IHRydWUsIGlnbm9yZUJhY2tkcm9wQ2xpY2s6IGZhbHNlLCBpbml0aWFsU3RhdGU6IHsgc3ViamVjdDogdGhpcy5zdWJqZWN0IH0gfSk7XG4gIH1cblxuICBwcml2YXRlIGVtYWlsSXNWYWxpZChlbWFpbDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxuICAgIGNvbnN0IHJlID0gL14oKFtePD4oKVxcW1xcXVxcXFwuLDs6XFxzQFwiXSsoXFwuW148PigpXFxbXFxdXFxcXC4sOzpcXHNAXCJdKykqKXwoXCIuK1wiKSlAKChcXFtbMC05XXsxLDN9XFwuWzAtOV17MSwzfVxcLlswLTldezEsM31cXC5bMC05XXsxLDN9XFxdKXwoKFthLXpBLVpcXC0wLTldK1xcLikrW2EtekEtWl17Mix9KSkkLztcbiAgICByZXR1cm4gcmUudGVzdChTdHJpbmcoZW1haWwpLnRvTG93ZXJDYXNlKCkpO1xuICB9XG5cbiAgcmVnaXN0ZXIoKSB7XG4gICAgdGhpcy5yZWdpc3RlcmluZyA9IHRydWU7XG4gICAgdGhpcy5lcnJvciA9ICcnO1xuXG4gICAgaWYgKCF0aGlzLnVzZXJuYW1lIHx8ICF0aGlzLmVtYWlsIHx8ICF0aGlzLnBhc3N3b3JkIHx8ICF0aGlzLnBhc3N3b3JkUmVwZWF0KSB7XG4gICAgICB0aGlzLmVycm9yID0gJ2ZpbGwtYWxsLWZpZWxkcyc7XG4gICAgICB0aGlzLnJlZ2lzdGVyaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmVtYWlsSXNWYWxpZCh0aGlzLmVtYWlsKSkge1xuICAgICAgdGhpcy5lcnJvciA9ICdlbWFpbC12YWxpZCc7XG4gICAgICB0aGlzLnJlZ2lzdGVyaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucGFzc3dvcmQgIT09IHRoaXMucGFzc3dvcmRSZXBlYXQpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSAncGFzc3dvcmQtbWlzbWF0Y2gnO1xuICAgICAgdGhpcy5yZWdpc3RlcmluZyA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudXNlclNlcnZpY2UucmVnaXN0ZXIodGhpcy5lbWFpbCwgdGhpcy51c2VybmFtZSwgdGhpcy5wYXNzd29yZCkuc3Vic2NyaWJlKFxuICAgICAgKCkgPT4ge1xuICAgICAgICAvLyBhdXRvbWF0aWNhbGx5IGxvZ2luIGFmdGVyIHJlZ2lzdGVyaW5nXG4gICAgICAgIHRoaXMudXNlclNlcnZpY2UubG9naW4odGhpcy5lbWFpbCwgdGhpcy5wYXNzd29yZCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJlZ2lzdGVyaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGlmIChyZXNwb25zZS5lcnJvciAmJiByZXNwb25zZS5lcnJvci5lcnJvcikge1xuICAgICAgICAgIHRoaXMuZXJyb3IgPSByZXNwb25zZS5lcnJvci5lcnJvcjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmVycm9yID0gJ2ludGVybmFsJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlZ2lzdGVyaW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZW50ZXInLCBbJyRldmVudCddKVxuICBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJlZ2lzdGVyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component } from '@angular/core';
|
|
3
|
-
var WaitDialogComponent = /** @class */ (function () {
|
|
4
|
-
function WaitDialogComponent() {
|
|
5
|
-
}
|
|
6
|
-
WaitDialogComponent.prototype.ngOnInit = function () { };
|
|
7
|
-
WaitDialogComponent = __decorate([
|
|
8
|
-
Component({
|
|
9
|
-
selector: 'lib-wait-dialog',
|
|
10
|
-
template: "<div class=\"card-modal\">\n <div class=\"card\">\n <div class=\"card-body\">\n <p class=\"card-text\">{{ 'designer.misc.please-wait' | translate }}</p>\n <div class=\"progress\">\n <div\n class=\"progress-bar progress-bar-striped progress-bar-animated\"\n role=\"progressbar\"\n style=\"width: 100%\"\n aria-valuenow=\"10\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n ></div>\n </div>\n </div>\n </div>\n</div>\n",
|
|
11
|
-
styles: [""]
|
|
12
|
-
}),
|
|
13
|
-
__metadata("design:paramtypes", [])
|
|
14
|
-
], WaitDialogComponent);
|
|
15
|
-
return WaitDialogComponent;
|
|
16
|
-
}());
|
|
17
|
-
export { WaitDialogComponent };
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJvY2tldHNob3cvZGVzaWduZXIvIiwic291cmNlcyI6WyJsaWIvd2FpdC1kaWFsb2cvd2FpdC1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBT2xEO0lBQ0U7SUFBZSxDQUFDO0lBRWhCLHNDQUFRLEdBQVIsY0FBWSxDQUFDO0lBSEYsbUJBQW1CO1FBTC9CLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxpQkFBaUI7WUFDM0Isd2dCQUEyQzs7U0FFNUMsQ0FBQzs7T0FDVyxtQkFBbUIsQ0FJL0I7SUFBRCwwQkFBQztDQUFBLEFBSkQsSUFJQztTQUpZLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi13YWl0LWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi93YWl0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3dhaXQtZGlhbG9nLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgV2FpdERpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHt9XG59XG4iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component, HostListener } from '@angular/core';
|
|
3
|
-
import { BsModalRef } from 'ngx-bootstrap/modal';
|
|
4
|
-
import { Subject } from 'rxjs';
|
|
5
|
-
var WarningDialogComponent = /** @class */ (function () {
|
|
6
|
-
function WarningDialogComponent(bsModalRef) {
|
|
7
|
-
this.bsModalRef = bsModalRef;
|
|
8
|
-
}
|
|
9
|
-
WarningDialogComponent.prototype.ngOnInit = function () {
|
|
10
|
-
this.onClose = new Subject();
|
|
11
|
-
};
|
|
12
|
-
WarningDialogComponent.prototype.ok = function () {
|
|
13
|
-
this.onClose.next(1);
|
|
14
|
-
this.bsModalRef.hide();
|
|
15
|
-
};
|
|
16
|
-
WarningDialogComponent.prototype.cancel = function () {
|
|
17
|
-
this.onClose.next(2);
|
|
18
|
-
this.bsModalRef.hide();
|
|
19
|
-
};
|
|
20
|
-
WarningDialogComponent.prototype.handleKeyboardEvent = function (event) {
|
|
21
|
-
this.ok();
|
|
22
|
-
};
|
|
23
|
-
WarningDialogComponent.ctorParameters = function () { return [
|
|
24
|
-
{ type: BsModalRef }
|
|
25
|
-
]; };
|
|
26
|
-
__decorate([
|
|
27
|
-
HostListener('document:keydown.enter', ['$event']),
|
|
28
|
-
__metadata("design:type", Function),
|
|
29
|
-
__metadata("design:paramtypes", [Object]),
|
|
30
|
-
__metadata("design:returntype", void 0)
|
|
31
|
-
], WarningDialogComponent.prototype, "handleKeyboardEvent", null);
|
|
32
|
-
WarningDialogComponent = __decorate([
|
|
33
|
-
Component({
|
|
34
|
-
selector: 'lib-app-warning-dialog',
|
|
35
|
-
template: "<div class=\"card-modal\">\n <div class=\"card\">\n <div class=\"card-header\">\n {{ 'designer.misc.warning' | translate }}\n </div>\n\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-auto\">\n <h2 class=\"mb-0\">\n <i class=\"fa fa-exclamation-triangle text-primary\" aria-hidden=\"true\"></i>\n </h2>\n </div>\n <div class=\"col pl-0\">\n <p class=\"mb-0\">{{ message }}</p>\n </div>\n </div>\n </div>\n\n <div class=\"card-footer\">\n <div class=\"d-flex float-right\">\n <a class=\"mr-3 my-auto\" href=\"#\" role=\"button\" (click)=\"cancel(); (false)\">\n {{ 'designer.misc.cancel' | translate }}\n </a>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok(); (false)\">\n {{ 'designer.misc.ok' | translate }}\n </button>\n </div>\n </div>\n </div>\n</div>\n",
|
|
36
|
-
styles: [""]
|
|
37
|
-
}),
|
|
38
|
-
__metadata("design:paramtypes", [BsModalRef])
|
|
39
|
-
], WarningDialogComponent);
|
|
40
|
-
return WarningDialogComponent;
|
|
41
|
-
}());
|
|
42
|
-
export { WarningDialogComponent };
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FybmluZy1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJvY2tldHNob3cvZGVzaWduZXIvIiwic291cmNlcyI6WyJsaWIvd2FybmluZy1kaWFsb2cvd2FybmluZy1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU8vQjtJQUtFLGdDQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQUU5Qyx5Q0FBUSxHQUFSO1FBQ0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFTSxtQ0FBRSxHQUFUO1FBQ0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sdUNBQU0sR0FBYjtRQUNFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUdELG9EQUFtQixHQUFuQixVQUFvQixLQUFVO1FBQzVCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUNaLENBQUM7O2dCQW5CK0IsVUFBVTs7SUFpQjFDO1FBREMsWUFBWSxDQUFDLHdCQUF3QixFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7Ozs7cUVBR2xEO0lBeEJVLHNCQUFzQjtRQUxsQyxTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsd0JBQXdCO1lBQ2xDLG84QkFBOEM7O1NBRS9DLENBQUM7eUNBTWdDLFVBQVU7T0FML0Isc0JBQXNCLENBeUJsQztJQUFELDZCQUFDO0NBQUEsQUF6QkQsSUF5QkM7U0F6Qlksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXBwLXdhcm5pbmctZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dhcm5pbmctZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FybmluZy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgV2FybmluZ0RpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIG9uQ2xvc2U6IFN1YmplY3Q8bnVtYmVyPjtcblxuICBtZXNzYWdlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBic01vZGFsUmVmOiBCc01vZGFsUmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub25DbG9zZSA9IG5ldyBTdWJqZWN0KCk7XG4gIH1cblxuICBwdWJsaWMgb2soKTogdm9pZCB7XG4gICAgdGhpcy5vbkNsb3NlLm5leHQoMSk7XG4gICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5vbkNsb3NlLm5leHQoMik7XG4gICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZW50ZXInLCBbJyRldmVudCddKVxuICBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLm9rKCk7XG4gIH1cbn1cbiJdfQ==
|
package/esm5/public_api.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of designer
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/designer.service';
|
|
5
|
-
export * from './lib/designer.component';
|
|
6
|
-
export * from './lib/designer.module';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Byb2NrZXRzaG93L2Rlc2lnbmVyLyIsInNvdXJjZXMiOlsicHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBkZXNpZ25lclxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rlc2lnbmVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGVzaWduZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rlc2lnbmVyLm1vZHVsZSc7XG4iXX0=
|