@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,163 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';
|
|
3
|
-
import { CachedFixtureChannel } from '../../../models/cached-fixture-channel';
|
|
4
|
-
import { FixtureCapabilityType } from '../../../models/fixture-capability';
|
|
5
|
-
import { FixtureProfile } from '../../../models/fixture-profile';
|
|
6
|
-
import { FixtureService } from '../../../services/fixture.service';
|
|
7
|
-
import { PresetService } from '../../../services/preset.service';
|
|
8
|
-
let FixtureCapabilityColorWheelComponent = class FixtureCapabilityColorWheelComponent {
|
|
9
|
-
constructor(presetService, changeDetectorRef, fixtureService) {
|
|
10
|
-
this.presetService = presetService;
|
|
11
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
12
|
-
this.fixtureService = fixtureService;
|
|
13
|
-
this.showContainer = false;
|
|
14
|
-
}
|
|
15
|
-
set profile(value) {
|
|
16
|
-
this._fixtureProfile = value;
|
|
17
|
-
this.update();
|
|
18
|
-
}
|
|
19
|
-
set channel(value) {
|
|
20
|
-
this._channel = value;
|
|
21
|
-
this.update();
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() {
|
|
24
|
-
this.colorChangeSubscription = this.presetService.fixtureColorChanged.subscribe(() => {
|
|
25
|
-
this.changeDetectorRef.detectChanges();
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
ngOnDestroy() {
|
|
29
|
-
this.colorChangeSubscription.unsubscribe();
|
|
30
|
-
}
|
|
31
|
-
update() {
|
|
32
|
-
if (this._fixtureProfile && this._channel) {
|
|
33
|
-
this.wheelName = undefined;
|
|
34
|
-
this.slotCapabilities = [];
|
|
35
|
-
// get the wheel name
|
|
36
|
-
for (const capability of this._channel.capabilities) {
|
|
37
|
-
if (capability.wheel) {
|
|
38
|
-
this.wheelName = capability.wheelName;
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
if (!this.wheelName) {
|
|
43
|
-
this.wheelName = this._channel.name;
|
|
44
|
-
}
|
|
45
|
-
this.wheel = this.fixtureService.getWheelByName(this._fixtureProfile, this.wheelName);
|
|
46
|
-
// calculate all available slots
|
|
47
|
-
for (const capability of this._channel.capabilities) {
|
|
48
|
-
if (capability.capability.type === FixtureCapabilityType.WheelSlot) {
|
|
49
|
-
this.slotCapabilities.push(capability);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
this.changeDetectorRef.detectChanges();
|
|
54
|
-
}
|
|
55
|
-
getCapabilityColorStyle(capability) {
|
|
56
|
-
let property = 'background-color';
|
|
57
|
-
let value = 'black';
|
|
58
|
-
let colors = [];
|
|
59
|
-
if (capability.wheelSlots) {
|
|
60
|
-
for (const slot of capability.wheelSlots) {
|
|
61
|
-
// calculate the color based on the color wheel slot
|
|
62
|
-
if (slot.colors.length > 0) {
|
|
63
|
-
colors = colors.concat(slot.colors);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
if (colors.length > 1) {
|
|
68
|
-
// mixed colors -> gradient
|
|
69
|
-
let colorString;
|
|
70
|
-
for (const color of colors) {
|
|
71
|
-
if (colorString) {
|
|
72
|
-
colorString += ', ';
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
colorString = '';
|
|
76
|
-
}
|
|
77
|
-
colorString += color;
|
|
78
|
-
}
|
|
79
|
-
property = 'background-image';
|
|
80
|
-
value = 'linear-gradient(to bottom right, ' + colorString + ')';
|
|
81
|
-
}
|
|
82
|
-
else if (colors.length === 1) {
|
|
83
|
-
value = colors[0];
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
value = '#fff';
|
|
87
|
-
}
|
|
88
|
-
const style = {};
|
|
89
|
-
style[property] = value;
|
|
90
|
-
return style;
|
|
91
|
-
}
|
|
92
|
-
getCurrentSlotNumber() {
|
|
93
|
-
const capabilityValue = this.presetService.getCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.WheelSlot, undefined, this.wheelName, this._fixtureProfile.uuid);
|
|
94
|
-
if (capabilityValue) {
|
|
95
|
-
return capabilityValue.slotNumber;
|
|
96
|
-
}
|
|
97
|
-
return undefined;
|
|
98
|
-
}
|
|
99
|
-
slotCapabilityIsSelected(slotNumber) {
|
|
100
|
-
const selectedSlotNumber = this.getCurrentSlotNumber();
|
|
101
|
-
if (selectedSlotNumber >= 0) {
|
|
102
|
-
// a slot is selected
|
|
103
|
-
return selectedSlotNumber === slotNumber;
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
// no slot is selected and the capability is inactive
|
|
107
|
-
// -> show the approx. color, if a color or a similar slot from a different wheel has been selected
|
|
108
|
-
const approximatedCapability = this.presetService.getApproximatedColorWheelCapability(this.presetService.selectedPreset, this._channel);
|
|
109
|
-
if (approximatedCapability) {
|
|
110
|
-
return slotNumber === approximatedCapability.capability.slotNumber;
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
changeActive(active) {
|
|
118
|
-
if (active) {
|
|
119
|
-
this.presetService.setCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.WheelSlot, undefined, 1, undefined, this.wheelName, this._fixtureProfile.uuid);
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
this.presetService.deleteCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.WheelSlot, undefined, this.wheelName, this._fixtureProfile.uuid);
|
|
123
|
-
}
|
|
124
|
-
this.presetService.previewLive();
|
|
125
|
-
}
|
|
126
|
-
selectSlotNumber(slotNumber) {
|
|
127
|
-
this.presetService.setCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.WheelSlot, undefined, slotNumber, undefined, this.wheelName, this._fixtureProfile.uuid);
|
|
128
|
-
this.presetService.previewLive();
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
FixtureCapabilityColorWheelComponent.ctorParameters = () => [
|
|
132
|
-
{ type: PresetService },
|
|
133
|
-
{ type: ChangeDetectorRef },
|
|
134
|
-
{ type: FixtureService }
|
|
135
|
-
];
|
|
136
|
-
__decorate([
|
|
137
|
-
Input(),
|
|
138
|
-
__metadata("design:type", FixtureProfile),
|
|
139
|
-
__metadata("design:paramtypes", [FixtureProfile])
|
|
140
|
-
], FixtureCapabilityColorWheelComponent.prototype, "profile", null);
|
|
141
|
-
__decorate([
|
|
142
|
-
Input(),
|
|
143
|
-
__metadata("design:type", CachedFixtureChannel),
|
|
144
|
-
__metadata("design:paramtypes", [CachedFixtureChannel])
|
|
145
|
-
], FixtureCapabilityColorWheelComponent.prototype, "channel", null);
|
|
146
|
-
__decorate([
|
|
147
|
-
Input(),
|
|
148
|
-
__metadata("design:type", Number)
|
|
149
|
-
], FixtureCapabilityColorWheelComponent.prototype, "wheelIndex", void 0);
|
|
150
|
-
__decorate([
|
|
151
|
-
Input(),
|
|
152
|
-
__metadata("design:type", Object)
|
|
153
|
-
], FixtureCapabilityColorWheelComponent.prototype, "showContainer", void 0);
|
|
154
|
-
FixtureCapabilityColorWheelComponent = __decorate([
|
|
155
|
-
Component({
|
|
156
|
-
selector: 'lib-app-fixture-capability-color-wheel',
|
|
157
|
-
template: "<div class=\"card border-secondary h-100\" [class.capability-deactivated]=\"getCurrentSlotNumber() == undefined\" style=\"min-height: 200px\">\n <div class=\"card-header\">\n <div class=\"my-auto\">\n <div class=\"form-check\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n id=\"capabilityColorWheel{{ wheelIndex }}Active\"\n [ngModel]=\"getCurrentSlotNumber() != undefined\"\n (ngModelChange)=\"changeActive($event)\"\n />\n <label class=\"form-check-label\" for=\"capabilityColorWheel{{ wheelIndex }}Active\">\n {{ 'designer.fixture.capability-color' | translate }}\n </label>\n </div>\n </div>\n </div>\n\n <div class=\"card-body h-100\">\n <div *ngIf=\"showContainer\">{{ _fixtureProfile.name }} - {{ _channel.name }}</div>\n\n <div *ngIf=\"wheel\" class=\"d-flex\" style=\"max-width: 240px; flex-wrap: wrap\">\n <div\n *ngFor=\"let slot of slotCapabilities; let i = index\"\n (click)=\"selectSlotNumber(slot.capability.slotNumber)\"\n class=\"m-1 color\"\n [class.color-selected]=\"slotCapabilityIsSelected(slot.capability.slotNumber)\"\n [ngStyle]=\"getCapabilityColorStyle(slot)\"\n >\n <div\n *ngIf=\"slotCapabilityIsSelected(slot.capability.slotNumber)\"\n (click)=\"selectSlotNumber(slot.capability.slotNumber)\"\n class=\"color-selected-inner\"\n ></div>\n </div>\n </div>\n </div>\n</div>\n",
|
|
158
|
-
styles: [".color{box-sizing:border-box;width:50px;height:50px;border:1px solid #ced4da;cursor:pointer}.color-selected{border-width:3px;border-color:#fff}.color-selected-inner{border:1px solid #000;height:100%;width:100%}"]
|
|
159
|
-
}),
|
|
160
|
-
__metadata("design:paramtypes", [PresetService, ChangeDetectorRef, FixtureService])
|
|
161
|
-
], FixtureCapabilityColorWheelComponent);
|
|
162
|
-
export { FixtureCapabilityColorWheelComponent };
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZS1jYXBhYmlsaXR5LWNvbG9yLXdoZWVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Byb2NrZXRzaG93L2Rlc2lnbmVyLyIsInNvdXJjZXMiOlsibGliL2ZpeHR1cmUvZml4dHVyZS1jYXBhYmlsaXR5L2ZpeHR1cmUtY2FwYWJpbGl0eS1jb2xvci13aGVlbC9maXh0dXJlLWNhcGFiaWxpdHktY29sb3Itd2hlZWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3ZGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBT2pFLElBQWEsb0NBQW9DLEdBQWpELE1BQWEsb0NBQW9DO0lBMkIvQyxZQUFtQixhQUE0QixFQUFVLGlCQUFvQyxFQUFVLGNBQThCO1FBQWxILGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUZySSxrQkFBYSxHQUFHLEtBQUssQ0FBQztJQUVrSCxDQUFDO0lBakJ6SSxJQUFJLE9BQU8sQ0FBQyxLQUFxQjtRQUMvQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUdELElBQUksT0FBTyxDQUFDLEtBQTJCO1FBQ3JDLElBQUksQ0FB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QUE4RDs7S0FFL0QsQ0FBQztxQ0E0QmtDLGFBQWEsRUFBNkIsaUJBQWlCLEVBQTBCLGNBQWM7R0EzQjFILG9DQUFvQyxDQW1MaEQ7U0FuTFksb0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENhY2hlZEZpeHR1cmVDYXBhYmlsaXR5IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2NhY2hlZC1maXh0dXJlLWNhcGFiaWxpdHknO1xuaW1wb3J0IHsgQ2FjaGVkRml4dHVyZUNoYW5uZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvY2FjaGVkLWZpeHR1cmUtY2hhbm5lbCc7XG5pbXBvcnQgeyBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZml4dHVyZS1jYXBhYmlsaXR5JztcbmltcG9ydCB7IEZpeHR1cmVQcm9maWxlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2ZpeHR1cmUtcHJvZmlsZSc7XG5pbXBvcnQgeyBGaXh0dXJlV2hlZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZml4dHVyZS13aGVlbCc7XG5pbXBvcnQgeyBGaXh0dXJlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZpeHR1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJlc2V0LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXBwLWZpeHR1cmUtY2FwYWJpbGl0eS1jb2xvci13aGVlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maXh0dXJlLWNhcGFiaWxpdHktY29sb3Itd2hlZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maXh0dXJlLWNhcGFiaWxpdHktY29sb3Itd2hlZWwuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGaXh0dXJlQ2FwYWJpbGl0eUNvbG9yV2hlZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIF9maXh0dXJlUHJvZmlsZTogRml4dHVyZVByb2ZpbGU7XG4gIF9jaGFubmVsOiBDYWNoZWRGaXh0dXJlQ2hhbm5lbDtcbiAgd2hlZWxOYW1lOiBzdHJpbmc7XG4gIHdoZWVsOiBGaXh0dXJlV2hlZWw7XG4gIHNsb3RDYXBhYmlsaXRpZXM6IENhY2hlZEZpeHR1cmVDYXBhYmlsaXR5W107XG5cbiAgcHJpdmF0ZSBjb2xvckNoYW5nZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBwcm9maWxlKHZhbHVlOiBGaXh0dXJlUHJvZmlsZSkge1xuICAgIHRoaXMuX2ZpeHR1cmVQcm9maWxlID0gdmFsdWU7XG4gICAgdGhpcy51cGRhdGUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjaGFubmVsKHZhbHVlOiBDYWNoZWRGaXh0dXJlQ2hhbm5lbCkge1xuICAgIHRoaXMuX2NoYW5uZWwgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgd2hlZWxJbmRleDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dDb250YWluZXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcHJlc2V0U2VydmljZTogUHJlc2V0U2VydmljZSwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgZml4dHVyZVNlcnZpY2U6IEZpeHR1cmVTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29sb3JDaGFuZ2VTdWJzY3JpcHRpb24gPSB0aGlzLnByZXNldFNlcnZpY2UuZml4dHVyZUNvbG9yQ2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNvbG9yQ2hhbmdlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICBpZiAodGhpcy5fZml4dHVyZVByb2ZpbGUgJiYgdGhpcy5fY2hhbm5lbCkge1xuICAgICAgdGhpcy53aGVlbE5hbWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnNsb3RDYXBhYmlsaXRpZXMgPSBbXTtcblxuICAgICAgLy8gZ2V0IHRoZSB3aGVlbCBuYW1lXG4gICAgICBmb3IgKGNvbnN0IGNhcGFiaWxpdHkgb2YgdGhpcy5fY2hhbm5lbC5jYXBhYmlsaXRpZXMpIHtcbiAgICAgICAgaWYgKGNhcGFiaWxpdHkud2hlZWwpIHtcbiAgICAgICAgICB0aGlzLndoZWVsTmFtZSA9IGNhcGFiaWxpdHkud2hlZWxOYW1lO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMud2hlZWxOYW1lKSB7XG4gICAgICAgIHRoaXMud2hlZWxOYW1lID0gdGhpcy5fY2hhbm5lbC5uYW1lO1xuICAgICAgfVxuXG4gICAgICB0aGlzLndoZWVsID0gdGhpcy5maXh0dXJlU2VydmljZS5nZXRXaGVlbEJ5TmFtZSh0aGlzLl9maXh0dXJlUHJvZmlsZSwgdGhpcy53aGVlbE5hbWUpO1xuXG4gICAgICAvLyBjYWxjdWxhdGUgYWxsIGF2YWlsYWJsZSBzbG90c1xuICAgICAgZm9yIChjb25zdCBjYXBhYmlsaXR5IG9mIHRoaXMuX2NoYW5uZWwuY2FwYWJpbGl0aWVzKSB7XG4gICAgICAgIGlmIChjYXBhYmlsaXR5LmNhcGFiaWxpdHkudHlwZSA9PT0gRml4dHVyZUNhcGFiaWxpdHlUeXBlLldoZWVsU2xvdCkge1xuICAgICAgICAgIHRoaXMuc2xvdENhcGFiaWxpdGllcy5wdXNoKGNhcGFiaWxpdHkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBnZXRDYXBhYmlsaXR5Q29sb3JTdHlsZShjYXBhYmlsaXR5OiBDYWNoZWRGaXh0dXJlQ2FwYWJpbGl0eSk6IGFueSB7XG4gICAgbGV0IHByb3BlcnR5ID0gJ2JhY2tncm91bmQtY29sb3InO1xuICAgIGxldCB2YWx1ZSA9ICdibGFjayc7XG4gICAgbGV0IGNvbG9yczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmIChjYXBhYmlsaXR5LndoZWVsU2xvdHMpIHtcbiAgICAgIGZvciAoY29uc3Qgc2xvdCBvZiBjYXBhYmlsaXR5LndoZWVsU2xvdHMpIHtcbiAgICAgICAgLy8gY2FsY3VsYXRlIHRoZSBjb2xvciBiYXNlZCBvbiB0aGUgY29sb3Igd2hlZWwgc2xvdFxuICAgICAgICBpZiAoc2xvdC5jb2xvcnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGNvbG9ycyA9IGNvbG9ycy5jb25jYXQoc2xvdC5jb2xvcnMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNvbG9ycy5sZW5ndGggPiAxKSB7XG4gICAgICAvLyBtaXhlZCBjb2xvcnMgLT4gZ3JhZGllbnRcbiAgICAgIGxldCBjb2xvclN0cmluZzogc3RyaW5nO1xuICAgICAgZm9yIChjb25zdCBjb2xvciBvZiBjb2xvcnMpIHtcbiAgICAgICAgaWYgKGNvbG9yU3RyaW5nKSB7XG4gICAgICAgICAgY29sb3JTdHJpbmcgKz0gJywgJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb2xvclN0cmluZyA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGNvbG9yU3RyaW5nICs9IGNvbG9yO1xuICAgICAgfVxuICAgICAgcHJvcGVydHkgPSAnYmFja2dyb3VuZC1pbWFnZSc7XG4gICAgICB2YWx1ZSA9ICdsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAnICsgY29sb3JTdHJpbmcgKyAnKSc7XG4gICAgfSBlbHNlIGlmIChjb2xvcnMubGVuZ3RoID09PSAxKSB7XG4gICAgICB2YWx1ZSA9IGNvbG9yc1swXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsdWUgPSAnI2ZmZic7XG4gICAgfVxuXG4gICAgY29uc3Qgc3R5bGUgPSB7fTtcbiAgICBzdHlsZVtwcm9wZXJ0eV0gPSB2YWx1ZTtcbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBnZXRDdXJyZW50U2xvdE51bWJlcigpOiBudW1iZXIge1xuICAgIGNvbnN0IGNhcGFiaWxpdHlWYWx1ZSA9IHRoaXMucHJlc2V0U2VydmljZS5nZXRDYXBhYmlsaXR5VmFsdWUoXG4gICAgICB0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQsXG4gICAgICBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuV2hlZWxTbG90LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdGhpcy53aGVlbE5hbWUsXG4gICAgICB0aGlzLl9maXh0dXJlUHJvZmlsZS51dWlkXG4gICAgKTtcblxuICAgIGlmIChjYXBhYmlsaXR5VmFsdWUpIHtcbiAgICAgIHJldHVybiBjYXBhYmlsaXR5VmFsdWUuc2xvdE51bWJlcjtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHNsb3RDYXBhYmlsaXR5SXNTZWxlY3RlZChzbG90TnVtYmVyOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBzZWxlY3RlZFNsb3ROdW1iZXIgPSB0aGlzLmdldEN1cnJlbnRTbG90TnVtYmVyKCk7XG5cbiAgICBpZiAoc2VsZWN0ZWRTbG90TnVtYmVyID49IDApIHtcbiAgICAgIC8vIGEgc2xvdCBpcyBzZWxlY3RlZFxuICAgICAgcmV0dXJuIHNlbGVjdGVkU2xvdE51bWJlciA9PT0gc2xvdE51bWJlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gbm8gc2xvdCBpcyBzZWxlY3RlZCBhbmQgdGhlIGNhcGFiaWxpdHkgaXMgaW5hY3RpdmVcbiAgICAgIC8vIC0+IHNob3cgdGhlIGFwcHJveC4gY29sb3IsIGlmIGEgY29sb3Igb3IgYSBzaW1pbGFyIHNsb3QgZnJvbSBhIGRpZmZlcmVudCB3aGVlbCBoYXMgYmVlbiBzZWxlY3RlZFxuICAgICAgY29uc3QgYXBwcm94aW1hdGVkQ2FwYWJpbGl0eSA9IHRoaXMucHJlc2V0U2VydmljZS5nZXRBcHByb3hpbWF0ZWRDb2xvcldoZWVsQ2FwYWJpbGl0eShcbiAgICAgICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LFxuICAgICAgICB0aGlzLl9jaGFubmVsXG4gICAgICApO1xuXG4gICAgICBpZiAoYXBwcm94aW1hdGVkQ2FwYWJpbGl0eSkge1xuICAgICAgICByZXR1cm4gc2xvdE51bWJlciA9PT0gYXBwcm94aW1hdGVkQ2FwYWJpbGl0eS5jYXBhYmlsaXR5LnNsb3ROdW1iZXI7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2hhbmdlQWN0aXZlKGFjdGl2ZTogYm9vbGVhbikge1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIHRoaXMucHJlc2V0U2VydmljZS5zZXRDYXBhYmlsaXR5VmFsdWUoXG4gICAgICAgIHRoaXMucHJlc2V0U2VydmljZS5zZWxlY3RlZFByZXNldCxcbiAgICAgICAgRml4dHVyZUNhcGFiaWxpdHlUeXBlLldoZWVsU2xvdCxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAxLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIHRoaXMud2hlZWxOYW1lLFxuICAgICAgICB0aGlzLl9maXh0dXJlUHJvZmlsZS51dWlkXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByZXNldFNlcnZpY2UuZGVsZXRlQ2FwYWJpbGl0eVZhbHVlKFxuICAgICAgICB0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQsXG4gICAgICAgIEZpeHR1cmVDYXBhYmlsaXR5VHlwZS5XaGVlbFNsb3QsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgdGhpcy53aGVlbE5hbWUsXG4gICAgICAgIHRoaXMuX2ZpeHR1cmVQcm9maWxlLnV1aWRcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdMaXZlKCk7XG4gIH1cblxuICBzZWxlY3RTbG90TnVtYmVyKHNsb3ROdW1iZXI6IG51bWJlcikge1xuICAgIHRoaXMucHJlc2V0U2VydmljZS5zZXRDYXBhYmlsaXR5VmFsdWUoXG4gICAgICB0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQsXG4gICAgICBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuV2hlZWxTbG90LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgc2xvdE51bWJlcixcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHRoaXMud2hlZWxOYW1lLFxuICAgICAgdGhpcy5fZml4dHVyZVByb2ZpbGUudXVpZFxuICAgICk7XG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdMaXZlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { ChangeDetectorRef, Component, OnInit } from '@angular/core';
|
|
3
|
-
import { FixtureCapabilityType } from '../../../models/fixture-capability';
|
|
4
|
-
import { PresetService } from '../../../services/preset.service';
|
|
5
|
-
let FixtureCapabilityDimmerComponent = class FixtureCapabilityDimmerComponent {
|
|
6
|
-
constructor(presetService, changeDetectorRef) {
|
|
7
|
-
this.presetService = presetService;
|
|
8
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
-
}
|
|
10
|
-
ngOnInit() { }
|
|
11
|
-
getValue() {
|
|
12
|
-
const capabilityValue = this.presetService.getCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Intensity);
|
|
13
|
-
if (capabilityValue) {
|
|
14
|
-
return capabilityValue.valuePercentage;
|
|
15
|
-
}
|
|
16
|
-
return undefined;
|
|
17
|
-
}
|
|
18
|
-
getValueText() {
|
|
19
|
-
const value = this.getValue();
|
|
20
|
-
if (value >= 0) {
|
|
21
|
-
return Math.round(value * 100 * 100) / 100;
|
|
22
|
-
}
|
|
23
|
-
return undefined;
|
|
24
|
-
}
|
|
25
|
-
setValue(value) {
|
|
26
|
-
if (isNaN(value)) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
if (value < 0 || value > 1) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
this.presetService.setCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Intensity, value);
|
|
33
|
-
this.changeDetectorRef.detectChanges();
|
|
34
|
-
this.presetService.previewLive();
|
|
35
|
-
}
|
|
36
|
-
changeActive(active) {
|
|
37
|
-
if (active) {
|
|
38
|
-
this.setValue(1);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.presetService.deleteCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Intensity);
|
|
42
|
-
this.changeDetectorRef.detectChanges();
|
|
43
|
-
}
|
|
44
|
-
this.presetService.previewLive();
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
FixtureCapabilityDimmerComponent.ctorParameters = () => [
|
|
48
|
-
{ type: PresetService },
|
|
49
|
-
{ type: ChangeDetectorRef }
|
|
50
|
-
];
|
|
51
|
-
FixtureCapabilityDimmerComponent = __decorate([
|
|
52
|
-
Component({
|
|
53
|
-
selector: 'lib-app-fixture-capability-dimmer',
|
|
54
|
-
template: "<div class=\"card border-secondary h-100\" [class.capability-deactivated]=\"getValue() == undefined\" style=\"min-height: 200px\">\n <div class=\"card-header\">\n <div class=\"my-auto\">\n <div class=\"form-check\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n id=\"capabilityDimmerActive\"\n [ngModel]=\"getValue() != undefined\"\n (ngModelChange)=\"changeActive($event)\"\n />\n <label class=\"form-check-label\" for=\"capabilityDimmerActive\">\n <i class=\"icon-dimmer\"></i>\n </label>\n </div>\n </div>\n </div>\n\n <div class=\"card-body h-100 d-flex\" style=\"flex-direction: column\">\n <div class=\"mb-4 w-100 d-flex\">\n <input\n class=\"mx-auto\"\n type=\"text\"\n [ngModel]=\"getValueText() >= 0 ? getValueText() : 0\"\n (ngModelChange)=\"setValue($event / 100)\"\n style=\"width: 42px; height: 20px; text-align: center; font-size: 12px; font-family: monospace\"\n />\n </div>\n\n <div class=\"h-100 w-100 d-flex\">\n <mv-slider\n class=\"mx-auto\"\n [value]=\"getValue() >= 0 ? getValue() : 0\"\n (change)=\"setValue($event.newValue)\"\n [orientation]=\"'vertical'\"\n [reversed]=\"true\"\n style=\"height: 100%\"\n [tooltip]=\"'hide'\"\n [min]=\"0\"\n [max]=\"1\"\n [step]=\"0.001\"\n ></mv-slider>\n </div>\n </div>\n</div>\n",
|
|
55
|
-
styles: [""]
|
|
56
|
-
}),
|
|
57
|
-
__metadata("design:paramtypes", [PresetService, ChangeDetectorRef])
|
|
58
|
-
], FixtureCapabilityDimmerComponent);
|
|
59
|
-
export { FixtureCapabilityDimmerComponent };
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZS1jYXBhYmlsaXR5LWRpbW1lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Acm9ja2V0c2hvdy9kZXNpZ25lci8iLCJzb3VyY2VzIjpbImxpYi9maXh0dXJlL2ZpeHR1cmUtY2FwYWJpbGl0eS9maXh0dXJlLWNhcGFiaWxpdHktZGltbWVyL2ZpeHR1cmUtY2FwYWJpbGl0eS1kaW1tZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFPakUsSUFBYSxnQ0FBZ0MsR0FBN0MsTUFBYSxnQ0FBZ0M7SUFDM0MsWUFBb0IsYUFBNEIsRUFBVSxpQkFBb0M7UUFBMUUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQUcsQ0FBQztJQUVsRyxRQUFRLEtBQUksQ0FBQztJQUViLFFBQVE7UUFDTixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xJLElBQUksZUFBZSxFQUFFO1lBQ25CLE9BQU8sZUFBZSxDQUFDLGVBQWUsQ0FBQztTQUN4QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlCLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztTQUM1QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBVTtRQUNqQixJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNoQixPQUFPO1NBQ1I7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtZQUMxQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqSCxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWU7UUFDMUIsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xCO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzdHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QztRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQztDQUNGLENBQUE7O1lBM0NvQyxhQUFhO1lBQTZCLGlCQUFpQjs7QUFEbkYsZ0NBQWdDO0lBTDVDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxtQ0FBbUM7UUFDN0MsaytDQUF5RDs7S0FFMUQsQ0FBQztxQ0FFbUMsYUFBYSxFQUE2QixpQkFBaUI7R0FEbkYsZ0NBQWdDLENBNEM1QztTQTVDWSxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpeHR1cmVDYXBhYmlsaXR5VHlwZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9maXh0dXJlLWNhcGFiaWxpdHknO1xuaW1wb3J0IHsgUHJlc2V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3ByZXNldC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFwcC1maXh0dXJlLWNhcGFiaWxpdHktZGltbWVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpeHR1cmUtY2FwYWJpbGl0eS1kaW1tZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maXh0dXJlLWNhcGFiaWxpdHktZGltbWVyLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRml4dHVyZUNhcGFiaWxpdHlEaW1tZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByZXNldFNlcnZpY2U6IFByZXNldFNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge31cblxuICBnZXRWYWx1ZSgpOiBudW1iZXIge1xuICAgIGNvbnN0IGNhcGFiaWxpdHlWYWx1ZSA9IHRoaXMucHJlc2V0U2VydmljZS5nZXRDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuSW50ZW5zaXR5KTtcbiAgICBpZiAoY2FwYWJpbGl0eVZhbHVlKSB7XG4gICAgICByZXR1cm4gY2FwYWJpbGl0eVZhbHVlLnZhbHVlUGVyY2VudGFnZTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldFZhbHVlVGV4dCgpOiBudW1iZXIge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpO1xuICAgIGlmICh2YWx1ZSA+PSAwKSB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIDEwMCAqIDEwMCkgLyAxMDA7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBzZXRWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IDAgfHwgdmFsdWUgPiAxKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnNldENhcGFiaWxpdHlWYWx1ZSh0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQsIEZpeHR1cmVDYXBhYmlsaXR5VHlwZS5JbnRlbnNpdHksIHZhbHVlKTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLnByZXNldFNlcnZpY2UucHJldmlld0xpdmUoKTtcbiAgfVxuXG4gIGNoYW5nZUFjdGl2ZShhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICBpZiAoYWN0aXZlKSB7XG4gICAgICB0aGlzLnNldFZhbHVlKDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByZXNldFNlcnZpY2UuZGVsZXRlQ2FwYWJpbGl0eVZhbHVlKHRoaXMucHJlc2V0U2VydmljZS5zZWxlY3RlZFByZXNldCwgRml4dHVyZUNhcGFiaWxpdHlUeXBlLkludGVuc2l0eSk7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdMaXZlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { ChangeDetectorRef, Component, OnInit } from '@angular/core';
|
|
3
|
-
import { FixtureCapabilityType } from '../../../models/fixture-capability';
|
|
4
|
-
import { PresetService } from '../../../services/preset.service';
|
|
5
|
-
let FixtureCapabilityPanTiltComponent = class FixtureCapabilityPanTiltComponent {
|
|
6
|
-
constructor(presetService, changeDetectorRef) {
|
|
7
|
-
this.presetService = presetService;
|
|
8
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
-
}
|
|
10
|
-
ngOnInit() { }
|
|
11
|
-
getValuePan() {
|
|
12
|
-
const capabilityValue = this.presetService.getCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Pan);
|
|
13
|
-
if (capabilityValue) {
|
|
14
|
-
return capabilityValue.valuePercentage;
|
|
15
|
-
}
|
|
16
|
-
return undefined;
|
|
17
|
-
}
|
|
18
|
-
getValueTextPan() {
|
|
19
|
-
const value = this.getValuePan();
|
|
20
|
-
if (value >= 0) {
|
|
21
|
-
return Math.round(value * 100 * 100) / 100;
|
|
22
|
-
}
|
|
23
|
-
return undefined;
|
|
24
|
-
}
|
|
25
|
-
setValuePan(value) {
|
|
26
|
-
if (isNaN(value)) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
if (value < 0 || value > 1) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
this.presetService.setCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Pan, value);
|
|
33
|
-
this.changeDetectorRef.detectChanges();
|
|
34
|
-
this.presetService.previewLive();
|
|
35
|
-
}
|
|
36
|
-
getValueTilt() {
|
|
37
|
-
const capabilityValue = this.presetService.getCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Tilt);
|
|
38
|
-
if (capabilityValue) {
|
|
39
|
-
return capabilityValue.valuePercentage;
|
|
40
|
-
}
|
|
41
|
-
return undefined;
|
|
42
|
-
}
|
|
43
|
-
getValueTextTilt() {
|
|
44
|
-
const value = this.getValueTilt();
|
|
45
|
-
if (value >= 0) {
|
|
46
|
-
return Math.round(value * 100 * 100) / 100;
|
|
47
|
-
}
|
|
48
|
-
return undefined;
|
|
49
|
-
}
|
|
50
|
-
setValueTilt(value) {
|
|
51
|
-
if (isNaN(value)) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
if (value < 0 || value > 1) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
this.presetService.setCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Tilt, value);
|
|
58
|
-
this.changeDetectorRef.detectChanges();
|
|
59
|
-
this.presetService.previewLive();
|
|
60
|
-
}
|
|
61
|
-
changeActive(active) {
|
|
62
|
-
if (active) {
|
|
63
|
-
this.setValuePan(0.5);
|
|
64
|
-
this.setValueTilt(0.5);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
this.presetService.deleteCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Pan);
|
|
68
|
-
this.presetService.deleteCapabilityValue(this.presetService.selectedPreset, FixtureCapabilityType.Tilt);
|
|
69
|
-
this.changeDetectorRef.detectChanges();
|
|
70
|
-
}
|
|
71
|
-
this.presetService.previewLive();
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
FixtureCapabilityPanTiltComponent.ctorParameters = () => [
|
|
75
|
-
{ type: PresetService },
|
|
76
|
-
{ type: ChangeDetectorRef }
|
|
77
|
-
];
|
|
78
|
-
FixtureCapabilityPanTiltComponent = __decorate([
|
|
79
|
-
Component({
|
|
80
|
-
selector: 'lib-app-fixture-capability-pan-tilt',
|
|
81
|
-
template: "<div class=\"card border-secondary h-100\" [class.capability-deactivated]=\"getValuePan() == undefined && getValueTilt() == undefined\">\n <div class=\"card-header\">\n <div class=\"my-auto\">\n <div class=\"form-check\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n id=\"capabilityColorWheelActive\"\n [ngModel]=\"getValuePan() != undefined || getValueTilt() != undefined\"\n (ngModelChange)=\"changeActive($event)\"\n />\n <label class=\"form-check-label\" for=\"capabilityColorWheelActive\">{{ 'designer.fixture.capability-pan-tilt' | translate }}</label>\n </div>\n </div>\n </div>\n\n <div class=\"card-body h-100 d-flex\" style=\"flex-direction: row\">\n <div class=\"d-flex h-100 mr-3\" style=\"flex-direction: column\">\n <div class=\"mb-4 w-100 d-flex\">\n <input\n class=\"mx-auto\"\n type=\"text\"\n [ngModel]=\"getValueTextPan() >= 0 ? getValueTextPan() : 0\"\n (ngModelChange)=\"setValuePan($event / 100)\"\n style=\"width: 42px; height: 20px; text-align: center; font-size: 12px; font-family: monospace\"\n />\n </div>\n\n <div class=\"h-100 w-100 d-flex\">\n <mv-slider\n class=\"mx-auto\"\n [value]=\"getValuePan() >= 0 ? getValuePan() : 0\"\n (change)=\"setValuePan($event.newValue)\"\n [orientation]=\"'vertical'\"\n [reversed]=\"true\"\n style=\"height: 100%\"\n [tooltip]=\"'hide'\"\n [min]=\"0\"\n [max]=\"1\"\n [step]=\"0.001\"\n ></mv-slider>\n </div>\n </div>\n\n <div class=\"d-flex h-100\" style=\"flex-direction: column\">\n <div class=\"mb-4 w-100 d-flex\">\n <input\n class=\"mx-auto\"\n type=\"text\"\n [ngModel]=\"getValueTextTilt() >= 0 ? getValueTextTilt() : 0\"\n (ngModelChange)=\"setValueTilt($event / 100)\"\n style=\"width: 42px; height: 20px; text-align: center; font-size: 12px; font-family: monospace\"\n />\n </div>\n\n <div class=\"h-100 w-100 d-flex\">\n <mv-slider\n class=\"mx-auto\"\n [value]=\"getValueTilt() >= 0 ? getValueTilt() : 0\"\n (change)=\"setValueTilt($event.newValue)\"\n [orientation]=\"'vertical'\"\n [reversed]=\"true\"\n style=\"height: 100%\"\n [tooltip]=\"'hide'\"\n [min]=\"0\"\n [max]=\"1\"\n [step]=\"0.001\"\n ></mv-slider>\n </div>\n </div>\n </div>\n</div>\n",
|
|
82
|
-
styles: [""]
|
|
83
|
-
}),
|
|
84
|
-
__metadata("design:paramtypes", [PresetService, ChangeDetectorRef])
|
|
85
|
-
], FixtureCapabilityPanTiltComponent);
|
|
86
|
-
export { FixtureCapabilityPanTiltComponent };
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZS1jYXBhYmlsaXR5LXBhbi10aWx0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Byb2NrZXRzaG93L2Rlc2lnbmVyLyIsInNvdXJjZXMiOlsibGliL2ZpeHR1cmUvZml4dHVyZS1jYXBhYmlsaXR5L2ZpeHR1cmUtY2FwYWJpbGl0eS1wYW4tdGlsdC9maXh0dXJlLWNhcGFiaWxpdHktcGFuLXRpbHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFPakUsSUFBYSxpQ0FBaUMsR0FBOUMsTUFBYSxpQ0FBaUM7SUFDNUMsWUFBb0IsYUFBNEIsRUFBVSxpQkFBb0M7UUFBMUUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQUcsQ0FBQztJQUVsRyxRQUFRLEtBQUksQ0FBQztJQUViLFdBQVc7UUFDVCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVILElBQUksZUFBZSxFQUFFO1lBQ25CLE9BQU8sZUFBZSxDQUFDLGVBQWUsQ0FBQztTQUN4QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pDLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztTQUM1QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNwQixJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNoQixPQUFPO1NBQ1I7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtZQUMxQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0gsSUFBSSxlQUFlLEVBQUU7WUFDbkIsT0FBTyxlQUFlLENBQUMsZUFBZSxDQUFDO1NBQ3hDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUM7U0FDNUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDckIsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEIsT0FBTztTQUNSO1FBRUQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUU7WUFDMUIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFlO1FBQzFCLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3hCO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZHLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3hDO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0NBQ0YsQ0FBQTs7WUEzRW9DLGFBQWE7WUFBNkIsaUJBQWlCOztBQURuRixpQ0FBaUM7SUFMN0MsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHFDQUFxQztRQUMvQyw2akZBQTJEOztLQUU1RCxDQUFDO3FDQUVtQyxhQUFhLEVBQTZCLGlCQUFpQjtHQURuRixpQ0FBaUMsQ0E0RTdDO1NBNUVZLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRml4dHVyZUNhcGFiaWxpdHlUeXBlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2ZpeHR1cmUtY2FwYWJpbGl0eSc7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJlc2V0LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXBwLWZpeHR1cmUtY2FwYWJpbGl0eS1wYW4tdGlsdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maXh0dXJlLWNhcGFiaWxpdHktcGFuLXRpbHQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maXh0dXJlLWNhcGFiaWxpdHktcGFuLXRpbHQuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGaXh0dXJlQ2FwYWJpbGl0eVBhblRpbHRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHByZXNldFNlcnZpY2U6IFByZXNldFNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25Jbml0KCkge31cblxuICBnZXRWYWx1ZVBhbigpOiBudW1iZXIge1xuICAgIGNvbnN0IGNhcGFiaWxpdHlWYWx1ZSA9IHRoaXMucHJlc2V0U2VydmljZS5nZXRDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuUGFuKTtcbiAgICBpZiAoY2FwYWJpbGl0eVZhbHVlKSB7XG4gICAgICByZXR1cm4gY2FwYWJpbGl0eVZhbHVlLnZhbHVlUGVyY2VudGFnZTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldFZhbHVlVGV4dFBhbigpOiBudW1iZXIge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRWYWx1ZVBhbigpO1xuICAgIGlmICh2YWx1ZSA+PSAwKSB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIDEwMCAqIDEwMCkgLyAxMDA7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBzZXRWYWx1ZVBhbih2YWx1ZTogYW55KSB7XG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA8IDAgfHwgdmFsdWUgPiAxKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnNldENhcGFiaWxpdHlWYWx1ZSh0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQsIEZpeHR1cmVDYXBhYmlsaXR5VHlwZS5QYW4sIHZhbHVlKTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLnByZXNldFNlcnZpY2UucHJldmlld0xpdmUoKTtcbiAgfVxuXG4gIGdldFZhbHVlVGlsdCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGNhcGFiaWxpdHlWYWx1ZSA9IHRoaXMucHJlc2V0U2VydmljZS5nZXRDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuVGlsdCk7XG4gICAgaWYgKGNhcGFiaWxpdHlWYWx1ZSkge1xuICAgICAgcmV0dXJuIGNhcGFiaWxpdHlWYWx1ZS52YWx1ZVBlcmNlbnRhZ2U7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXRWYWx1ZVRleHRUaWx0KCk6IG51bWJlciB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldFZhbHVlVGlsdCgpO1xuICAgIGlmICh2YWx1ZSA+PSAwKSB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSAqIDEwMCAqIDEwMCkgLyAxMDA7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBzZXRWYWx1ZVRpbHQodmFsdWU6IGFueSkge1xuICAgIGlmIChpc05hTih2YWx1ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPCAwIHx8IHZhbHVlID4gMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucHJlc2V0U2VydmljZS5zZXRDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuVGlsdCwgdmFsdWUpO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHRoaXMucHJlc2V0U2VydmljZS5wcmV2aWV3TGl2ZSgpO1xuICB9XG5cbiAgY2hhbmdlQWN0aXZlKGFjdGl2ZTogYm9vbGVhbikge1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIHRoaXMuc2V0VmFsdWVQYW4oMC41KTtcbiAgICAgIHRoaXMuc2V0VmFsdWVUaWx0KDAuNSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJlc2V0U2VydmljZS5kZWxldGVDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuUGFuKTtcbiAgICAgIHRoaXMucHJlc2V0U2VydmljZS5kZWxldGVDYXBhYmlsaXR5VmFsdWUodGhpcy5wcmVzZXRTZXJ2aWNlLnNlbGVjdGVkUHJlc2V0LCBGaXh0dXJlQ2FwYWJpbGl0eVR5cGUuVGlsdCk7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gICAgdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdMaXZlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';
|
|
3
|
-
import { FixtureWheelSlotType } from '../../models/fixture-wheel-slot';
|
|
4
|
-
import { FixtureService } from '../../services/fixture.service';
|
|
5
|
-
import { IntroService } from '../../services/intro.service';
|
|
6
|
-
import { PresetService } from '../../services/preset.service';
|
|
7
|
-
import { ProjectService } from '../../services/project.service';
|
|
8
|
-
let FixtureCapabilityComponent = class FixtureCapabilityComponent {
|
|
9
|
-
constructor(presetService, fixtureService, changeDetectorRef, projectService, introService) {
|
|
10
|
-
this.presetService = presetService;
|
|
11
|
-
this.fixtureService = fixtureService;
|
|
12
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
13
|
-
this.projectService = projectService;
|
|
14
|
-
this.introService = introService;
|
|
15
|
-
// map containing the profile and the channel name containing the wheel
|
|
16
|
-
this.colorWheelChannels = new Map();
|
|
17
|
-
this.fixtureSelectionChangedSubscription = this.presetService.fixtureSelectionChanged.subscribe(() => {
|
|
18
|
-
this.update();
|
|
19
|
-
});
|
|
20
|
-
this.previewSelectionChangedSubscription = this.presetService.previewSelectionChanged.subscribe(() => {
|
|
21
|
-
this.update();
|
|
22
|
-
});
|
|
23
|
-
this.introService.stepChanged.subscribe(() => {
|
|
24
|
-
this.changeDetectorRef.detectChanges();
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
ngOnInit() { }
|
|
28
|
-
ngOnDestroy() {
|
|
29
|
-
this.fixtureSelectionChangedSubscription.unsubscribe();
|
|
30
|
-
this.previewSelectionChangedSubscription.unsubscribe();
|
|
31
|
-
}
|
|
32
|
-
wheelInList(wheels, profile, channel) {
|
|
33
|
-
wheels.forEach((existingChannel, existingProfile) => {
|
|
34
|
-
if (existingProfile.uuid === profile.uuid && existingChannel.name === channel.name) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
updateColorWheels() {
|
|
41
|
-
this.colorWheelChannels = new Map();
|
|
42
|
-
if (!this.presetService.selectedPreset) {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
for (const fixtureUuid of this.presetService.selectedPreset.fixtureUuids) {
|
|
46
|
-
const fixture = this.fixtureService.getCachedFixtureByUuid(fixtureUuid);
|
|
47
|
-
for (const channel of fixture.channels) {
|
|
48
|
-
for (const capability of channel.capabilities) {
|
|
49
|
-
if (capability.wheel && capability.wheelSlots && capability.wheelSlots.length > 0) {
|
|
50
|
-
if (this.fixtureService.wheelHasSlotType(capability.wheel, FixtureWheelSlotType.Color)) {
|
|
51
|
-
// color wheel
|
|
52
|
-
if (!this.wheelInList(this.colorWheelChannels, fixture.profile, channel)) {
|
|
53
|
-
this.colorWheelChannels.set(fixture.profile, channel);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
else if (this.fixtureService.wheelHasSlotType(capability.wheel, FixtureWheelSlotType.Gobo)) {
|
|
57
|
-
// gobo wheel
|
|
58
|
-
// TODO
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
update() {
|
|
66
|
-
this.updateColorWheels();
|
|
67
|
-
this.changeDetectorRef.detectChanges();
|
|
68
|
-
}
|
|
69
|
-
isChrome() {
|
|
70
|
-
if (navigator.appVersion.indexOf('Chrome/') !== -1) {
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
FixtureCapabilityComponent.ctorParameters = () => [
|
|
77
|
-
{ type: PresetService },
|
|
78
|
-
{ type: FixtureService },
|
|
79
|
-
{ type: ChangeDetectorRef },
|
|
80
|
-
{ type: ProjectService },
|
|
81
|
-
{ type: IntroService }
|
|
82
|
-
];
|
|
83
|
-
FixtureCapabilityComponent = __decorate([
|
|
84
|
-
Component({
|
|
85
|
-
selector: 'lib-app-fixture-capability',
|
|
86
|
-
template: "<div class=\"card border-secondary panel h-100\" [class.card-intro-active]=\"introService.showStep('capabilities')\">\n <div class=\"card-body capability-container d-flex h-100\" style=\"overflow-y: hidden\">\n <!-- h-100 needs to be applied in chrome to avoid performance issues with many layouts (reflows)\n during sliding. But the class must not be applied e.g. in Safari, because the bottom margin is not correct\n anymore afterwards. -->\n <div *ngIf=\"presetService.selectedPreset\" class=\"row m-0 pl-3\" [class.h-100]=\"isChrome()\">\n <!-- Dimmer -->\n <!-- the height attribute is required to avoid performance issues with many layouts (reflows)\n in Chrome during sliding -->\n <div *ngIf=\"presetService.hasCapabilityDimmer()\" class=\"col col-auto p-0 my-3 mr-3\" style=\"height: calc(100% - 2rem)\">\n <lib-app-fixture-capability-dimmer></lib-app-fixture-capability-dimmer>\n </div>\n\n <!-- Color -->\n <!-- Also show for color wheel fixtures to approx. the color -->\n <div *ngIf=\"presetService.hasCapabilityColorOrColorWheel()\" class=\"col col-auto p-0 my-3 mr-3\" style=\"height: calc(100% - 2rem)\">\n <lib-app-fixture-capability-color></lib-app-fixture-capability-color>\n </div>\n\n <!-- Color wheels -->\n <div\n *ngFor=\"let entry of colorWheelChannels | keyvalue; let i = index\"\n class=\"col col-auto p-0 my-3 mr-3\"\n style=\"height: calc(100% - 2rem)\"\n >\n <lib-app-fixture-capability-color-wheel\n [profile]=\"entry.key\"\n [channel]=\"entry.value\"\n [wheelIndex]=\"i\"\n [showContainer]=\"colorWheelChannels.size > 1\"\n ></lib-app-fixture-capability-color-wheel>\n </div>\n\n <!-- Pan/Tilt -->\n <div *ngIf=\"presetService.hasCapabilityPanTilt()\" class=\"col col-auto p-0 my-3 mr-3\" style=\"height: calc(100% - 2rem)\">\n <lib-app-fixture-capability-pan-tilt></lib-app-fixture-capability-pan-tilt>\n </div>\n\n <!-- Fix spacing at the end -->\n <div class=\"col col-auto p-0 my-3 mr-3\"> </div>\n </div>\n\n <div *ngIf=\"projectService.project.fixtures.length == 0\" class=\"m-auto\">\n <p class=\"m-auto\" style=\"color: #717171\">{{ 'designer.fixture.no-fixtures' | translate }}</p>\n </div>\n\n <div\n *ngIf=\"\n projectService.project.fixtures.length > 0 && presetService.selectedPreset && presetService.selectedPreset.fixtureUuids.length == 0\n \"\n class=\"m-auto\"\n >\n <p class=\"m-auto\" style=\"color: #717171\">{{ 'designer.fixture.no-fixtures-selected' | translate }}</p>\n </div>\n </div>\n</div>\n",
|
|
87
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
88
|
-
styles: [""]
|
|
89
|
-
}),
|
|
90
|
-
__metadata("design:paramtypes", [PresetService,
|
|
91
|
-
FixtureService,
|
|
92
|
-
ChangeDetectorRef,
|
|
93
|
-
ProjectService,
|
|
94
|
-
IntroService])
|
|
95
|
-
], FixtureCapabilityComponent);
|
|
96
|
-
export { FixtureCapabilityComponent };
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZS1jYXBhYmlsaXR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Byb2NrZXRzaG93L2Rlc2lnbmVyLyIsInNvdXJjZXMiOlsibGliL2ZpeHR1cmUvZml4dHVyZS1jYXBhYmlsaXR5L2ZpeHR1cmUtY2FwYWJpbGl0eS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFRaEUsSUFBYSwwQkFBMEIsR0FBdkMsTUFBYSwwQkFBMEI7SUFPckMsWUFDUyxhQUE0QixFQUMzQixjQUE4QixFQUM5QixpQkFBb0MsRUFDckMsY0FBOEIsRUFDOUIsWUFBMEI7UUFKMUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBWG5DLHVFQUF1RTtRQUN2RSx1QkFBa0IsR0FBOEMsSUFBSSxHQUFHLEVBQXdDLENBQUM7UUFZOUcsSUFBSSxDQUFDLG1DQUFtQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNuRyxJQUFJLENBQUMsTUFBTSxFQUFF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WUExRXlCLGFBQWE7WUFDWCxjQUFjO1lBQ1gsaUJBQWlCO1lBQ3JCLGNBQWM7WUFDaEIsWUFBWTs7QUFaeEIsMEJBQTBCO0lBTnRDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSw0QkFBNEI7UUFDdEMseXBGQUFrRDtRQUVsRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7S0FDaEQsQ0FBQztxQ0FTd0IsYUFBYTtRQUNYLGNBQWM7UUFDWCxpQkFBaUI7UUFDckIsY0FBYztRQUNoQixZQUFZO0dBWnhCLDBCQUEwQixDQWtGdEM7U0FsRlksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENhY2hlZEZpeHR1cmVDaGFubmVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NhY2hlZC1maXh0dXJlLWNoYW5uZWwnO1xuaW1wb3J0IHsgRml4dHVyZVByb2ZpbGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvZml4dHVyZS1wcm9maWxlJztcbmltcG9ydCB7IEZpeHR1cmVXaGVlbFNsb3RUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpeHR1cmUtd2hlZWwtc2xvdCc7XG5pbXBvcnQgeyBGaXh0dXJlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpeHR1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBJbnRyb1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pbnRyby5zZXJ2aWNlJztcbmltcG9ydCB7IFByZXNldFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wcmVzZXQuc2VydmljZSc7XG5pbXBvcnQgeyBQcm9qZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Byb2plY3Quc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hcHAtZml4dHVyZS1jYXBhYmlsaXR5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpeHR1cmUtY2FwYWJpbGl0eS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpeHR1cmUtY2FwYWJpbGl0eS5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGaXh0dXJlQ2FwYWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLy8gbWFwIGNvbnRhaW5pbmcgdGhlIHByb2ZpbGUgYW5kIHRoZSBjaGFubmVsIG5hbWUgY29udGFpbmluZyB0aGUgd2hlZWxcbiAgY29sb3JXaGVlbENoYW5uZWxzOiBNYXA8Rml4dHVyZVByb2ZpbGUsIENhY2hlZEZpeHR1cmVDaGFubmVsPiA9IG5ldyBNYXA8Rml4dHVyZVByb2ZpbGUsIENhY2hlZEZpeHR1cmVDaGFubmVsPigpO1xuXG4gIHByaXZhdGUgZml4dHVyZVNlbGVjdGlvbkNoYW5nZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBwcmV2aWV3U2VsZWN0aW9uQ2hhbmdlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBwcmVzZXRTZXJ2aWNlOiBQcmVzZXRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZml4dHVyZVNlcnZpY2U6IEZpeHR1cmVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHB1YmxpYyBwcm9qZWN0U2VydmljZTogUHJvamVjdFNlcnZpY2UsXG4gICAgcHVibGljIGludHJvU2VydmljZTogSW50cm9TZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZml4dHVyZVNlbGVjdGlvbkNoYW5nZWRTdWJzY3JpcHRpb24gPSB0aGlzLnByZXNldFNlcnZpY2UuZml4dHVyZVNlbGVjdGlvbkNoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnByZXZpZXdTZWxlY3Rpb25DaGFuZ2VkU3Vic2NyaXB0aW9uID0gdGhpcy5wcmVzZXRTZXJ2aWNlLnByZXZpZXdTZWxlY3Rpb25DaGFuZ2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5pbnRyb1NlcnZpY2Uuc3RlcENoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZml4dHVyZVNlbGVjdGlvbkNoYW5nZWRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnByZXZpZXdTZWxlY3Rpb25DaGFuZ2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIHdoZWVsSW5MaXN0KHdoZWVsczogTWFwPEZpeHR1cmVQcm9maWxlLCBDYWNoZWRGaXh0dXJlQ2hhbm5lbD4sIHByb2ZpbGU6IEZpeHR1cmVQcm9maWxlLCBjaGFubmVsOiBDYWNoZWRGaXh0dXJlQ2hhbm5lbCkge1xuICAgIHdoZWVscy5mb3JFYWNoKChleGlzdGluZ0NoYW5uZWw6IENhY2hlZEZpeHR1cmVDaGFubmVsLCBleGlzdGluZ1Byb2ZpbGU6IEZpeHR1cmVQcm9maWxlKSA9PiB7XG4gICAgICBpZiAoZXhpc3RpbmdQcm9maWxlLnV1aWQgPT09IHByb2ZpbGUudXVpZCAmJiBleGlzdGluZ0NoYW5uZWwubmFtZSA9PT0gY2hhbm5lbC5uYW1lKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb2xvcldoZWVscygpIHtcbiAgICB0aGlzLmNvbG9yV2hlZWxDaGFubmVscyA9IG5ldyBNYXA8Rml4dHVyZVByb2ZpbGUsIENhY2hlZEZpeHR1cmVDaGFubmVsPigpO1xuXG4gICAgaWYgKCF0aGlzLnByZXNldFNlcnZpY2Uuc2VsZWN0ZWRQcmVzZXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGZpeHR1cmVVdWlkIG9mIHRoaXMucHJlc2V0U2VydmljZS5zZWxlY3RlZFByZXNldC5maXh0dXJlVXVpZHMpIHtcbiAgICAgIGNvbnN0IGZpeHR1cmUgPSB0aGlzLmZpeHR1cmVTZXJ2aWNlLmdldENhY2hlZEZpeHR1cmVCeVV1aWQoZml4dHVyZVV1aWQpO1xuICAgICAgZm9yIChjb25zdCBjaGFubmVsIG9mIGZpeHR1cmUuY2hhbm5lbHMpIHtcbiAgICAgICAgZm9yIChjb25zdCBjYXBhYmlsaXR5IG9mIGNoYW5uZWwuY2FwYWJpbGl0aWVzKSB7XG4gICAgICAgICAgaWYgKGNhcGFiaWxpdHkud2hlZWwgJiYgY2FwYWJpbGl0eS53aGVlbFNsb3RzICYmIGNhcGFiaWxpdHkud2hlZWxTbG90cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5maXh0dXJlU2VydmljZS53aGVlbEhhc1Nsb3RUeXBlKGNhcGFiaWxpdHkud2hlZWwsIEZpeHR1cmVXaGVlbFNsb3RUeXBlLkNvbG9yKSkge1xuICAgICAgICAgICAgICAvLyBjb2xvciB3aGVlbFxuICAgICAgICAgICAgICBpZiAoIXRoaXMud2hlZWxJbkxpc3QodGhpcy5jb2xvcldoZWVsQ2hhbm5lbHMsIGZpeHR1cmUucHJvZmlsZSwgY2hhbm5lbCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbG9yV2hlZWxDaGFubmVscy5zZXQoZml4dHVyZS5wcm9maWxlLCBjaGFubmVsKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZpeHR1cmVTZXJ2aWNlLndoZWVsSGFzU2xvdFR5cGUoY2FwYWJpbGl0eS53aGVlbCwgRml4dHVyZVdoZWVsU2xvdFR5cGUuR29ibykpIHtcbiAgICAgICAgICAgICAgLy8gZ29ibyB3aGVlbFxuICAgICAgICAgICAgICAvLyBUT0RPXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGUoKSB7XG4gICAgdGhpcy51cGRhdGVDb2xvcldoZWVscygpO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgaXNDaHJvbWUoKTogYm9vbGVhbiB7XG4gICAgaWYgKG5hdmlnYXRvci5hcHBWZXJzaW9uLmluZGV4T2YoJ0Nocm9tZS8nKSAhPT0gLTEpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';
|
|
3
|
-
import { PresetService } from '../../services/preset.service';
|
|
4
|
-
import { ProjectService } from '../../services/project.service';
|
|
5
|
-
let FixtureChannelComponent = class FixtureChannelComponent {
|
|
6
|
-
constructor(presetService, changeDetectorRef, projectService) {
|
|
7
|
-
this.presetService = presetService;
|
|
8
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
-
this.projectService = projectService;
|
|
10
|
-
this.channelCapabilities = new Map();
|
|
11
|
-
this.profiles = [];
|
|
12
|
-
this.selectedProfiles = [];
|
|
13
|
-
this.fixtureSelectionChangedSubscription = this.presetService.fixtureSelectionChanged.subscribe(() => {
|
|
14
|
-
this.calculateProfiles();
|
|
15
|
-
});
|
|
16
|
-
this.previewSelectionChangedSubscription = this.presetService.previewSelectionChanged.subscribe(() => {
|
|
17
|
-
this.calculateProfiles();
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
ngOnInit() { }
|
|
21
|
-
ngOnDestroy() {
|
|
22
|
-
this.fixtureSelectionChangedSubscription.unsubscribe();
|
|
23
|
-
this.previewSelectionChangedSubscription.unsubscribe();
|
|
24
|
-
}
|
|
25
|
-
calculateChannelCapabilities() {
|
|
26
|
-
this.channelCapabilities = this.presetService.getSelectedProfileChannels(this.selectedProfiles);
|
|
27
|
-
this.changeDetectorRef.detectChanges();
|
|
28
|
-
}
|
|
29
|
-
calculateProfiles() {
|
|
30
|
-
// calculate all profiels
|
|
31
|
-
this.profiles = this.presetService.getSelectedProfiles();
|
|
32
|
-
// select all profiles by default
|
|
33
|
-
this.selectedProfiles = [...this.profiles];
|
|
34
|
-
this.calculateChannelCapabilities();
|
|
35
|
-
}
|
|
36
|
-
changeProfileSelection($event, profile) {
|
|
37
|
-
if (this.selectedProfiles.indexOf(profile) >= 0) {
|
|
38
|
-
this.selectedProfiles.splice(this.selectedProfiles.indexOf(profile), 1);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.selectedProfiles.push(profile);
|
|
42
|
-
}
|
|
43
|
-
this.calculateChannelCapabilities();
|
|
44
|
-
}
|
|
45
|
-
isChrome() {
|
|
46
|
-
if (navigator.appVersion.indexOf('Chrome/') !== -1) {
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
return false;
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
FixtureChannelComponent.ctorParameters = () => [
|
|
53
|
-
{ type: PresetService },
|
|
54
|
-
{ type: ChangeDetectorRef },
|
|
55
|
-
{ type: ProjectService }
|
|
56
|
-
];
|
|
57
|
-
FixtureChannelComponent = __decorate([
|
|
58
|
-
Component({
|
|
59
|
-
selector: 'lib-app-fixture-channel',
|
|
60
|
-
template: "<div class=\"card border-secondary panel h-100\">\n <div class=\"card-body capability-container d-flex h-100\" style=\"overflow-y: hidden\">\n <!-- h-100 needs to be applied in chrome to avoid performance issues with many layouts (reflows)\n during sliding. But the class must not be applied e.g. in Safari, because the bottom margin is not correct\n anymore afterwards. -->\n <div *ngIf=\"presetService.selectedPreset\" class=\"row m-0 pl-3\" [class.h-100]=\"isChrome()\">\n <!-- profile selection -->\n <div\n *ngIf=\"profiles.length > 1\"\n class=\"col col-auto p-3 my-3 mr-3\"\n style=\"height: calc(100% - 2rem); border: solid 1px #444; border-right: none\"\n >\n <div *ngFor=\"let profile of profiles; let i = index\" class=\"form-check\">\n <input\n type=\"checkbox\"\n class=\"form-check-input\"\n id=\"capabilityFilter{{ i }}\"\n [ngModel]=\"selectedProfiles.indexOf(profile) >= 0\"\n (ngModelChange)=\"changeProfileSelection($event, profile)\"\n />\n <label class=\"form-check-label\" for=\"capabilityFilter{{ i }}\">\n {{ profile.name }}\n </label>\n </div>\n </div>\n\n <!-- all channel capabilities -->\n <ng-container *ngFor=\"let entry of channelCapabilities | keyvalue; let i = index\">\n <div *ngFor=\"let capability of entry.value; let j = index\" class=\"col col-auto p-0 my-3 mr-3\" style=\"height: calc(100% - 2rem)\">\n <lib-app-fixture-capability-channel [profile]=\"entry.key\" [channel]=\"capability\" [capabilityIndex]=\"i * 10000 + j\">\n </lib-app-fixture-capability-channel>\n </div>\n </ng-container>\n\n <!-- fix spacing at the end -->\n <div class=\"col col-auto p-0 my-3 mr-3\"> </div>\n </div>\n\n <div *ngIf=\"projectService.project.fixtures.length == 0\" class=\"m-auto\">\n <p class=\"m-auto\" style=\"color: #717171\">{{ 'designer.fixture.no-fixtures' | translate }}</p>\n </div>\n\n <div\n *ngIf=\"\n projectService.project.fixtures.length > 0 && presetService.selectedPreset && presetService.selectedPreset.fixtureUuids.length == 0\n \"\n class=\"m-auto\"\n >\n <p class=\"m-auto\" style=\"color: #717171\">{{ 'designer.fixture.no-fixtures-selected' | translate }}</p>\n </div>\n </div>\n</div>\n",
|
|
61
|
-
styles: [""]
|
|
62
|
-
}),
|
|
63
|
-
__metadata("design:paramtypes", [PresetService, ChangeDetectorRef, ProjectService])
|
|
64
|
-
], FixtureChannelComponent);
|
|
65
|
-
export { FixtureChannelComponent };
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZS1jaGFubmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Byb2NrZXRzaG93L2Rlc2lnbmVyLyIsInNvdXJjZXMiOlsibGliL2ZpeHR1cmUvZml4dHVyZS1jaGFubmVsL2ZpeHR1cmUtY2hhbm5lbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUloRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBT2hFLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBUWxDLFlBQW1CLGFBQTRCLEVBQVUsaUJBQW9DLEVBQVMsY0FBOEI7UUFBakgsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBUDdILHdCQUFtQixHQUFnRCxJQUFJLEdBQUcsRUFBMEMsQ0FBQztRQUNySCxhQUFRLEdBQXFCLEVBQUUsQ0FBQztRQUNoQyxxQkFBZ0IsR0FBcUIsRUFBRSxDQUFDO1FBTTdDLElBQUksQ0FBQyxtQ0FBbUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsbUNBQW1DLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ25HLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVEsS0FBSSxDQUFDO0lBRWIsV0FBVztRQUNULElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2RCxJQUFJLENBQUMsbUNBQW1DLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVPLDRCQUE0QjtRQUNsQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVoRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVPLGlCQUFpQjtRQUN2Qix5QkFBeUI7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFekQsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTNDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxNQUFXLEVBQUUsT0FBdUI7UUFDekQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekU7YUFBTTtZQUNMLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckM7UUFFRCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksU0FBUyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDbEQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGLENBQUE7O1lBakRtQyxhQUFhO1lBQTZCLGlCQUFpQjtZQUF5QixjQUFjOztBQVJ6SCx1QkFBdUI7SUFMbkMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHlCQUF5QjtRQUNuQyxtNEVBQStDOztLQUVoRCxDQUFDO3FDQVNrQyxhQUFhLEVBQTZCLGlCQUFpQixFQUF5QixjQUFjO0dBUnpILHVCQUF1QixDQXlEbkM7U0F6RFksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2FjaGVkRml4dHVyZUNoYW5uZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2FjaGVkLWZpeHR1cmUtY2hhbm5lbCc7XG5pbXBvcnQgeyBGaXh0dXJlUHJvZmlsZSB9IGZyb20gJy4uLy4uL21vZGVscy9maXh0dXJlLXByb2ZpbGUnO1xuaW1wb3J0IHsgUHJlc2V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3ByZXNldC5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2plY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcHJvamVjdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWFwcC1maXh0dXJlLWNoYW5uZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZml4dHVyZS1jaGFubmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZml4dHVyZS1jaGFubmVsLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRml4dHVyZUNoYW5uZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBjaGFubmVsQ2FwYWJpbGl0aWVzOiBNYXA8Rml4dHVyZVByb2ZpbGUsIENhY2hlZEZpeHR1cmVDaGFubmVsW10+ID0gbmV3IE1hcDxGaXh0dXJlUHJvZmlsZSwgQ2FjaGVkRml4dHVyZUNoYW5uZWxbXT4oKTtcbiAgcHVibGljIHByb2ZpbGVzOiBGaXh0dXJlUHJvZmlsZVtdID0gW107XG4gIHB1YmxpYyBzZWxlY3RlZFByb2ZpbGVzOiBGaXh0dXJlUHJvZmlsZVtdID0gW107XG5cbiAgcHJpdmF0ZSBmaXh0dXJlU2VsZWN0aW9uQ2hhbmdlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIHByZXZpZXdTZWxlY3Rpb25DaGFuZ2VkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHVibGljIHByZXNldFNlcnZpY2U6IFByZXNldFNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLCBwdWJsaWMgcHJvamVjdFNlcnZpY2U6IFByb2plY3RTZXJ2aWNlKSB7XG4gICAgdGhpcy5maXh0dXJlU2VsZWN0aW9uQ2hhbmdlZFN1YnNjcmlwdGlvbiA9IHRoaXMucHJlc2V0U2VydmljZS5maXh0dXJlU2VsZWN0aW9uQ2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jYWxjdWxhdGVQcm9maWxlcygpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5wcmV2aWV3U2VsZWN0aW9uQ2hhbmdlZFN1YnNjcmlwdGlvbiA9IHRoaXMucHJlc2V0U2VydmljZS5wcmV2aWV3U2VsZWN0aW9uQ2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jYWxjdWxhdGVQcm9maWxlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZml4dHVyZVNlbGVjdGlvbkNoYW5nZWRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnByZXZpZXdTZWxlY3Rpb25DaGFuZ2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZUNoYW5uZWxDYXBhYmlsaXRpZXMoKSB7XG4gICAgdGhpcy5jaGFubmVsQ2FwYWJpbGl0aWVzID0gdGhpcy5wcmVzZXRTZXJ2aWNlLmdldFNlbGVjdGVkUHJvZmlsZUNoYW5uZWxzKHRoaXMuc2VsZWN0ZWRQcm9maWxlcyk7XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlUHJvZmlsZXMoKSB7XG4gICAgLy8gY2FsY3VsYXRlIGFsbCBwcm9maWVsc1xuICAgIHRoaXMucHJvZmlsZXMgPSB0aGlzLnByZXNldFNlcnZpY2UuZ2V0U2VsZWN0ZWRQcm9maWxlcygpO1xuXG4gICAgLy8gc2VsZWN0IGFsbCBwcm9maWxlcyBieSBkZWZhdWx0XG4gICAgdGhpcy5zZWxlY3RlZFByb2ZpbGVzID0gWy4uLnRoaXMucHJvZmlsZXNdO1xuXG4gICAgdGhpcy5jYWxjdWxhdGVDaGFubmVsQ2FwYWJpbGl0aWVzKCk7XG4gIH1cblxuICBjaGFuZ2VQcm9maWxlU2VsZWN0aW9uKCRldmVudDogYW55LCBwcm9maWxlOiBGaXh0dXJlUHJvZmlsZSkge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkUHJvZmlsZXMuaW5kZXhPZihwcm9maWxlKSA+PSAwKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUHJvZmlsZXMuc3BsaWNlKHRoaXMuc2VsZWN0ZWRQcm9maWxlcy5pbmRleE9mKHByb2ZpbGUpLCAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZFByb2ZpbGVzLnB1c2gocHJvZmlsZSk7XG4gICAgfVxuXG4gICAgdGhpcy5jYWxjdWxhdGVDaGFubmVsQ2FwYWJpbGl0aWVzKCk7XG4gIH1cblxuICBpc0Nocm9tZSgpOiBib29sZWFuIHtcbiAgICBpZiAobmF2aWdhdG9yLmFwcFZlcnNpb24uaW5kZXhPZignQ2hyb21lLycpICE9PSAtMSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
|