@colijnit/configurator 261.1.1 → 261.20.1
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/{fesm2015/colijnit-configurator.js → fesm2022/colijnit-configurator.mjs} +19087 -18481
- package/fesm2022/colijnit-configurator.mjs.map +1 -0
- package/index.d.ts +3299 -0
- package/lib/components/answer-card/style/_layout.scss +3 -3
- package/lib/components/answers-slideout/style/_layout.scss +1 -0
- package/lib/style/configurator-globals.scss +1 -21
- package/package.json +24 -19
- package/bundles/colijnit-configurator.umd.js +0 -20167
- package/bundles/colijnit-configurator.umd.js.map +0 -1
- package/colijnit-configurator.d.ts +0 -5
- package/esm2015/colijnit-configurator.js +0 -5
- package/esm2015/lib/builder.js +0 -795
- package/esm2015/lib/components/answer-card/answer-card.component.js +0 -313
- package/esm2015/lib/components/answer-card/answer-card.module.js +0 -50
- package/esm2015/lib/components/answer-info-dialog/answer-info-dialog.component.js +0 -182
- package/esm2015/lib/components/answer-info-dialog/answer-info-dialog.module.js +0 -34
- package/esm2015/lib/components/answers-slideout/answers-slideout.component.js +0 -490
- package/esm2015/lib/components/answers-slideout/answers-slideout.module.js +0 -61
- package/esm2015/lib/components/color-filter/color-filter.component.js +0 -59
- package/esm2015/lib/components/color-filter/color-filter.module.js +0 -26
- package/esm2015/lib/components/configurator/configurator.component.js +0 -133
- package/esm2015/lib/components/configurator/configurator.module.js +0 -42
- package/esm2015/lib/components/configurator-dialog/configurator-camera-settings.component.js +0 -222
- package/esm2015/lib/components/configurator-dialog/configurator-dialog.module.js +0 -48
- package/esm2015/lib/components/configurator-dialog/configurator-error-dialog.component.js +0 -82
- package/esm2015/lib/components/configurator-dialog/configurator-export-dialog.component.js +0 -163
- package/esm2015/lib/components/configurator-loader/configurator-loader.component.js +0 -49
- package/esm2015/lib/components/configurator-loader/configurator-loader.module.js +0 -33
- package/esm2015/lib/components/configurator-scene/configurator-scene.component.js +0 -60
- package/esm2015/lib/components/configurator-scene/configurator-scene.module.js +0 -17
- package/esm2015/lib/components/configurator-scene-loader/configurator-scene-loader.component.js +0 -46
- package/esm2015/lib/components/configurator-scene-loader/configurator-scene-loader.module.js +0 -26
- package/esm2015/lib/components/element-buttons/element-buttons.component.js +0 -168
- package/esm2015/lib/components/element-buttons/element-buttons.module.js +0 -30
- package/esm2015/lib/components/element-toolbar/element-toolbar.component.js +0 -186
- package/esm2015/lib/components/element-toolbar/element-toolbar.module.js +0 -34
- package/esm2015/lib/components/image-zoom/image-zoom.component.js +0 -61
- package/esm2015/lib/components/image-zoom/image-zoom.module.js +0 -30
- package/esm2015/lib/components/lite-selector/lite-selector.component.js +0 -206
- package/esm2015/lib/components/lite-selector/lite-selector.module.js +0 -34
- package/esm2015/lib/components/product-configurator/product-configurator.component.js +0 -184
- package/esm2015/lib/components/product-configurator/product-configurator.module.js +0 -72
- package/esm2015/lib/components/product-configurator-selector/product-configurator-selector.component.js +0 -237
- package/esm2015/lib/components/product-configurator-selector/product-configurator-selector.module.js +0 -38
- package/esm2015/lib/components/product-configurator-selector-option/product-configurator-selector-option.component.js +0 -284
- package/esm2015/lib/components/product-configurator-selector-option/product-configurator-selector-option.module.js +0 -42
- package/esm2015/lib/components/product-configurator-selector-option-button/product-configurator-selector-option-button.component.js +0 -72
- package/esm2015/lib/components/product-configurator-selector-option-button/product-configurator-selector-option-button.module.js +0 -34
- package/esm2015/lib/components/product-configurator-selector-option-checkbox/product-configurator-selector-option-checkbox.component.js +0 -82
- package/esm2015/lib/components/product-configurator-selector-option-checkbox/product-configurator-selector-option-checkbox.module.js +0 -30
- package/esm2015/lib/components/product-configurator-selector-option-dropdown/product-configurator-selector-option-dropdown.component.js +0 -80
- package/esm2015/lib/components/product-configurator-selector-option-dropdown/product-configurator-selector-option-dropdown.module.js +0 -34
- package/esm2015/lib/components/product-configurator-selector-option-tile/product-configurator-selector-option-tile.component.js +0 -93
- package/esm2015/lib/components/product-configurator-selector-option-tile/product-configurator-selector-option-tile.module.js +0 -34
- package/esm2015/lib/components/progress-bar/progress-bar.component.js +0 -55
- package/esm2015/lib/components/progress-bar/progress-bar.module.js +0 -29
- package/esm2015/lib/components/scene-options/scene-options.component.js +0 -164
- package/esm2015/lib/components/scene-options/scene-options.module.js +0 -38
- package/esm2015/lib/components/selections-summary/selections-summary.component.js +0 -163
- package/esm2015/lib/components/selections-summary/selections-summary.module.js +0 -45
- package/esm2015/lib/components/selections-summary-line/selections-summary-line.component.js +0 -171
- package/esm2015/lib/components/selections-summary-line/selections-summary-line.module.js +0 -34
- package/esm2015/lib/components/slideout/slideout.component.js +0 -83
- package/esm2015/lib/components/slideout/slideout.module.js +0 -17
- package/esm2015/lib/components/summary-line/summary-line.component.js +0 -273
- package/esm2015/lib/components/summary-line/summary-line.module.js +0 -44
- package/esm2015/lib/components/tag-filter/tag-filter.component.js +0 -39
- package/esm2015/lib/components/tag-filter/tag-filter.module.js +0 -21
- package/esm2015/lib/components/threedselector/threedselector.component.js +0 -155
- package/esm2015/lib/components/threedselector/threedselector.module.js +0 -34
- package/esm2015/lib/core/helper/variation-helper.js +0 -553
- package/esm2015/lib/core/shader/floor-fade.shader.js +0 -33
- package/esm2015/lib/core/textures/depth-data-texture.js +0 -19
- package/esm2015/lib/directives/directives.module.js +0 -26
- package/esm2015/lib/directives/visibility-observer-master.directive.js +0 -53
- package/esm2015/lib/directives/visibility-observer.directive.js +0 -54
- package/esm2015/lib/enum/ar-feature.enum.js +0 -14
- package/esm2015/lib/enum/configuration-key.enum.js +0 -41
- package/esm2015/lib/enum/configuration-template.enum.js +0 -6
- package/esm2015/lib/enum/device-size-type.js +0 -7
- package/esm2015/lib/enum/device-tier.enum.js +0 -7
- package/esm2015/lib/enum/icon.enum.js +0 -113
- package/esm2015/lib/enum/item-type.enum.js +0 -23
- package/esm2015/lib/enum/light.enum.js +0 -9
- package/esm2015/lib/enum/navigator-type.enum.js +0 -6
- package/esm2015/lib/enum/output-encoding.enum.js +0 -9
- package/esm2015/lib/enum/result-type.enum.js +0 -21
- package/esm2015/lib/enum/scene-event.enum.js +0 -12
- package/esm2015/lib/enum/shadow-map-type.enum.js +0 -8
- package/esm2015/lib/enum/texture-type.js +0 -9
- package/esm2015/lib/enum/tone-mapping-local.enum.js +0 -12
- package/esm2015/lib/enum/view-mode.enum.js +0 -7
- package/esm2015/lib/enum/xr-mode.enum.js +0 -6
- package/esm2015/lib/environments/environment.js +0 -8
- package/esm2015/lib/interfaces/aa-options.interface.js +0 -2
- package/esm2015/lib/interfaces/adjustable-element.interface.js +0 -2
- package/esm2015/lib/interfaces/ao-options.interface.js +0 -2
- package/esm2015/lib/interfaces/changes.interface.js +0 -2
- package/esm2015/lib/interfaces/configuration-data.interface.js +0 -2
- package/esm2015/lib/interfaces/light-preset.interface.js +0 -2
- package/esm2015/lib/interfaces/post-processing-setting.interface.js +0 -2
- package/esm2015/lib/interfaces/scene-option-button.interface.js +0 -6
- package/esm2015/lib/interfaces/screen-size-info.js +0 -2
- package/esm2015/lib/interfaces/setting.interface.js +0 -2
- package/esm2015/lib/interfaces/texture.interface.js +0 -2
- package/esm2015/lib/interfaces/vignette-options.interface.js +0 -2
- package/esm2015/lib/model/ar-position-indicator.js +0 -18
- package/esm2015/lib/model/camera-settings.js +0 -14
- package/esm2015/lib/model/configuration-result-object.js +0 -6
- package/esm2015/lib/model/configurator-error-message.js +0 -9
- package/esm2015/lib/model/configurator-settings.js +0 -25
- package/esm2015/lib/model/custom-button.js +0 -16
- package/esm2015/lib/model/factory.js +0 -28
- package/esm2015/lib/model/icon.js +0 -112
- package/esm2015/lib/model/intersected-objects.js +0 -7
- package/esm2015/lib/model/light-preset.js +0 -73
- package/esm2015/lib/model/light-properties.js +0 -45
- package/esm2015/lib/model/material.js +0 -11
- package/esm2015/lib/model/metadata.js +0 -2
- package/esm2015/lib/model/render-parameters.js +0 -16
- package/esm2015/lib/model/setting-options.js +0 -71
- package/esm2015/lib/model/settings.js +0 -16
- package/esm2015/lib/model/shadow-properties.js +0 -10
- package/esm2015/lib/model/skin.js +0 -3
- package/esm2015/lib/model/texture.js +0 -76
- package/esm2015/lib/model/variation-settings.js +0 -54
- package/esm2015/lib/model/variation.js +0 -3
- package/esm2015/lib/model/xr-reticle.js +0 -79
- package/esm2015/lib/modules/render/enum/scene-type.enum.js +0 -6
- package/esm2015/lib/modules/render/model/ar-parameters.js +0 -12
- package/esm2015/lib/modules/render/model/scene-setting.js +0 -6
- package/esm2015/lib/modules/render/model/scene-settings.js +0 -3
- package/esm2015/lib/pipes/append.pipe.js +0 -21
- package/esm2015/lib/pipes/google-translate.pipe.js +0 -21
- package/esm2015/lib/pipes/localize.pipe.js +0 -28
- package/esm2015/lib/pipes/pipes.module.js +0 -41
- package/esm2015/lib/pipes/prepend.pipe.js +0 -21
- package/esm2015/lib/pipes/strip-html.pipe.js +0 -17
- package/esm2015/lib/services/app-event.service.js +0 -36
- package/esm2015/lib/services/app-initializer.service.js +0 -27
- package/esm2015/lib/services/ar.service.js +0 -844
- package/esm2015/lib/services/build-furniture-base.service.js +0 -1181
- package/esm2015/lib/services/build-furniture-without-scene.service.js +0 -86
- package/esm2015/lib/services/build-furniture.service.js +0 -169
- package/esm2015/lib/services/bundle-initialzer.service.js +0 -113
- package/esm2015/lib/services/camera.service.js +0 -123
- package/esm2015/lib/services/configuration.service.js +0 -79
- package/esm2015/lib/services/configurator-connector.service.js +0 -830
- package/esm2015/lib/services/configurator.service.js +0 -285
- package/esm2015/lib/services/configuring.service.js +0 -119
- package/esm2015/lib/services/controls.js +0 -799
- package/esm2015/lib/services/debug.service.js +0 -43
- package/esm2015/lib/services/dictionary.service.js +0 -65
- package/esm2015/lib/services/dynamic-camera.service.js +0 -96
- package/esm2015/lib/services/floor-plane.service.js +0 -252
- package/esm2015/lib/services/font.service.js +0 -27
- package/esm2015/lib/services/google-translate.service.js +0 -79
- package/esm2015/lib/services/icon-cache.service.js +0 -44
- package/esm2015/lib/services/intersection.service.js +0 -47
- package/esm2015/lib/services/item.service.js +0 -75
- package/esm2015/lib/services/json-utils.service.js +0 -48
- package/esm2015/lib/services/light-creation.service.js +0 -35
- package/esm2015/lib/services/light-presets.service.js +0 -157
- package/esm2015/lib/services/lights.service.js +0 -146
- package/esm2015/lib/services/load-furniture-base.service.js +0 -164
- package/esm2015/lib/services/load-furniture-without-scene.service.js +0 -45
- package/esm2015/lib/services/load-furniture.service.js +0 -72
- package/esm2015/lib/services/loader.service.js +0 -32
- package/esm2015/lib/services/locator.service.js +0 -11
- package/esm2015/lib/services/message-board.service.js +0 -50
- package/esm2015/lib/services/post-processing.service.js +0 -378
- package/esm2015/lib/services/product-configurator.service.js +0 -16
- package/esm2015/lib/services/progress.service.js +0 -20
- package/esm2015/lib/services/scene-event.service.js +0 -246
- package/esm2015/lib/services/scene-options.service.js +0 -24
- package/esm2015/lib/services/scene.service.js +0 -313
- package/esm2015/lib/services/screen-size-analysis.service.js +0 -97
- package/esm2015/lib/services/settings.service.js +0 -142
- package/esm2015/lib/services/switch-build-furniture.service.js +0 -37
- package/esm2015/lib/services/switch-load-furniture.service.js +0 -35
- package/esm2015/lib/services/threedselector.service.js +0 -72
- package/esm2015/lib/services/utils.service.js +0 -207
- package/esm2015/lib/services/variation-cache.service.js +0 -143
- package/esm2015/lib/services/variation.service.js +0 -490
- package/esm2015/lib/services/view-mode.service.js +0 -37
- package/esm2015/lib/services/vr.service.js +0 -191
- package/esm2015/lib/services/xr.service.js +0 -294
- package/esm2015/lib/utils/asset.utils.js +0 -120
- package/esm2015/lib/utils/base-utils.js +0 -9
- package/esm2015/lib/utils/color.utils.js +0 -30
- package/esm2015/lib/utils/debug.utils.js +0 -9
- package/esm2015/lib/utils/device.utils.js +0 -25
- package/esm2015/lib/utils/file.utils.js +0 -167
- package/esm2015/lib/utils/image.utils.js +0 -61
- package/esm2015/lib/utils/json-parser.utils.js +0 -180
- package/esm2015/lib/utils/material.utils.js +0 -433
- package/esm2015/lib/utils/object.utils.js +0 -360
- package/esm2015/lib/utils/relative-position.utils.js +0 -75
- package/esm2015/lib/utils/rotation-helper.utils.js +0 -15
- package/esm2015/lib/utils/scene-3d.utils.js +0 -213
- package/esm2015/lib/utils/scene-utils.js +0 -191
- package/esm2015/lib/utils/text-utils.js +0 -68
- package/esm2015/lib/utils/threed.utils.js +0 -281
- package/esm2015/lib/utils/variation-utils.js +0 -459
- package/esm2015/public-api.js +0 -65
- package/fesm2015/colijnit-configurator.js.map +0 -1
- package/lib/builder.d.ts +0 -83
- package/lib/components/answer-card/answer-card.component.d.ts +0 -58
- package/lib/components/answer-card/answer-card.module.d.ts +0 -11
- package/lib/components/answer-info-dialog/answer-info-dialog.component.d.ts +0 -38
- package/lib/components/answer-info-dialog/answer-info-dialog.module.d.ts +0 -10
- package/lib/components/answers-slideout/answers-slideout.component.d.ts +0 -86
- package/lib/components/answers-slideout/answers-slideout.module.d.ts +0 -16
- package/lib/components/color-filter/color-filter.component.d.ts +0 -20
- package/lib/components/color-filter/color-filter.module.d.ts +0 -8
- package/lib/components/configurator/configurator.component.d.ts +0 -37
- package/lib/components/configurator/configurator.module.d.ts +0 -12
- package/lib/components/configurator-dialog/configurator-camera-settings.component.d.ts +0 -30
- package/lib/components/configurator-dialog/configurator-dialog.module.d.ts +0 -13
- package/lib/components/configurator-dialog/configurator-error-dialog.component.d.ts +0 -16
- package/lib/components/configurator-dialog/configurator-export-dialog.component.d.ts +0 -26
- package/lib/components/configurator-loader/configurator-loader.component.d.ts +0 -7
- package/lib/components/configurator-loader/configurator-loader.module.d.ts +0 -9
- package/lib/components/configurator-scene/configurator-scene.component.d.ts +0 -24
- package/lib/components/configurator-scene/configurator-scene.module.d.ts +0 -7
- package/lib/components/configurator-scene-loader/configurator-scene-loader.component.d.ts +0 -7
- package/lib/components/configurator-scene-loader/configurator-scene-loader.module.d.ts +0 -8
- package/lib/components/element-buttons/element-buttons.component.d.ts +0 -32
- package/lib/components/element-buttons/element-buttons.module.d.ts +0 -9
- package/lib/components/element-toolbar/element-toolbar.component.d.ts +0 -27
- package/lib/components/element-toolbar/element-toolbar.module.d.ts +0 -10
- package/lib/components/image-zoom/image-zoom.component.d.ts +0 -15
- package/lib/components/image-zoom/image-zoom.module.d.ts +0 -9
- package/lib/components/lite-selector/lite-selector.component.d.ts +0 -40
- package/lib/components/lite-selector/lite-selector.module.d.ts +0 -10
- package/lib/components/product-configurator/product-configurator.component.d.ts +0 -50
- package/lib/components/product-configurator/product-configurator.module.d.ts +0 -15
- package/lib/components/product-configurator-selector/product-configurator-selector.component.d.ts +0 -35
- package/lib/components/product-configurator-selector/product-configurator-selector.module.d.ts +0 -11
- package/lib/components/product-configurator-selector-option/product-configurator-selector-option.component.d.ts +0 -31
- package/lib/components/product-configurator-selector-option/product-configurator-selector-option.module.d.ts +0 -13
- package/lib/components/product-configurator-selector-option-button/product-configurator-selector-option-button.component.d.ts +0 -20
- package/lib/components/product-configurator-selector-option-button/product-configurator-selector-option-button.module.d.ts +0 -10
- package/lib/components/product-configurator-selector-option-checkbox/product-configurator-selector-option-checkbox.component.d.ts +0 -20
- package/lib/components/product-configurator-selector-option-checkbox/product-configurator-selector-option-checkbox.module.d.ts +0 -10
- package/lib/components/product-configurator-selector-option-dropdown/product-configurator-selector-option-dropdown.component.d.ts +0 -21
- package/lib/components/product-configurator-selector-option-dropdown/product-configurator-selector-option-dropdown.module.d.ts +0 -10
- package/lib/components/product-configurator-selector-option-tile/product-configurator-selector-option-tile.component.d.ts +0 -21
- package/lib/components/product-configurator-selector-option-tile/product-configurator-selector-option-tile.module.d.ts +0 -10
- package/lib/components/progress-bar/progress-bar.component.d.ts +0 -10
- package/lib/components/progress-bar/progress-bar.module.d.ts +0 -8
- package/lib/components/scene-options/scene-options.component.d.ts +0 -24
- package/lib/components/scene-options/scene-options.module.d.ts +0 -11
- package/lib/components/selections-summary/selections-summary.component.d.ts +0 -38
- package/lib/components/selections-summary/selections-summary.module.d.ts +0 -12
- package/lib/components/selections-summary-line/selections-summary-line.component.d.ts +0 -27
- package/lib/components/selections-summary-line/selections-summary-line.module.d.ts +0 -10
- package/lib/components/slideout/slideout.component.d.ts +0 -22
- package/lib/components/slideout/slideout.module.d.ts +0 -7
- package/lib/components/summary-line/summary-line.component.d.ts +0 -50
- package/lib/components/summary-line/summary-line.module.d.ts +0 -11
- package/lib/components/tag-filter/tag-filter.component.d.ts +0 -9
- package/lib/components/tag-filter/tag-filter.module.d.ts +0 -7
- package/lib/components/threedselector/threedselector.component.d.ts +0 -38
- package/lib/components/threedselector/threedselector.module.d.ts +0 -10
- package/lib/core/helper/variation-helper.d.ts +0 -25
- package/lib/core/shader/floor-fade.shader.d.ts +0 -5
- package/lib/core/textures/depth-data-texture.d.ts +0 -5
- package/lib/directives/directives.module.d.ts +0 -8
- package/lib/directives/visibility-observer-master.directive.d.ts +0 -12
- package/lib/directives/visibility-observer.directive.d.ts +0 -16
- package/lib/enum/ar-feature.enum.d.ts +0 -12
- package/lib/enum/configuration-key.enum.d.ts +0 -39
- package/lib/enum/configuration-template.enum.d.ts +0 -4
- package/lib/enum/device-size-type.d.ts +0 -5
- package/lib/enum/device-tier.enum.d.ts +0 -5
- package/lib/enum/icon.enum.d.ts +0 -111
- package/lib/enum/item-type.enum.d.ts +0 -21
- package/lib/enum/light.enum.d.ts +0 -7
- package/lib/enum/navigator-type.enum.d.ts +0 -4
- package/lib/enum/output-encoding.enum.d.ts +0 -7
- package/lib/enum/result-type.enum.d.ts +0 -19
- package/lib/enum/scene-event.enum.d.ts +0 -10
- package/lib/enum/shadow-map-type.enum.d.ts +0 -6
- package/lib/enum/texture-type.d.ts +0 -7
- package/lib/enum/tone-mapping-local.enum.d.ts +0 -10
- package/lib/enum/view-mode.enum.d.ts +0 -5
- package/lib/enum/xr-mode.enum.d.ts +0 -4
- package/lib/environments/environment.d.ts +0 -4
- package/lib/interfaces/aa-options.interface.d.ts +0 -4
- package/lib/interfaces/adjustable-element.interface.d.ts +0 -5
- package/lib/interfaces/ao-options.interface.d.ts +0 -18
- package/lib/interfaces/changes.interface.d.ts +0 -9
- package/lib/interfaces/configuration-data.interface.d.ts +0 -40
- package/lib/interfaces/light-preset.interface.d.ts +0 -22
- package/lib/interfaces/post-processing-setting.interface.d.ts +0 -11
- package/lib/interfaces/scene-option-button.interface.d.ts +0 -19
- package/lib/interfaces/screen-size-info.d.ts +0 -10
- package/lib/interfaces/setting.interface.d.ts +0 -8
- package/lib/interfaces/texture.interface.d.ts +0 -44
- package/lib/interfaces/vignette-options.interface.d.ts +0 -4
- package/lib/model/ar-position-indicator.d.ts +0 -4
- package/lib/model/camera-settings.d.ts +0 -12
- package/lib/model/configuration-result-object.d.ts +0 -30
- package/lib/model/configurator-error-message.d.ts +0 -8
- package/lib/model/configurator-settings.d.ts +0 -62
- package/lib/model/custom-button.d.ts +0 -10
- package/lib/model/factory.d.ts +0 -5
- package/lib/model/icon.d.ts +0 -4
- package/lib/model/intersected-objects.d.ts +0 -6
- package/lib/model/light-preset.d.ts +0 -33
- package/lib/model/light-properties.d.ts +0 -25
- package/lib/model/material.d.ts +0 -41
- package/lib/model/metadata.d.ts +0 -78
- package/lib/model/render-parameters.d.ts +0 -12
- package/lib/model/setting-options.d.ts +0 -67
- package/lib/model/settings.d.ts +0 -10
- package/lib/model/shadow-properties.d.ts +0 -7
- package/lib/model/skin.d.ts +0 -15
- package/lib/model/texture.d.ts +0 -52
- package/lib/model/variation-settings.d.ts +0 -55
- package/lib/model/variation.d.ts +0 -11
- package/lib/model/xr-reticle.d.ts +0 -17
- package/lib/modules/render/enum/scene-type.enum.d.ts +0 -4
- package/lib/modules/render/model/ar-parameters.d.ts +0 -9
- package/lib/modules/render/model/scene-setting.d.ts +0 -13
- package/lib/modules/render/model/scene-settings.d.ts +0 -4
- package/lib/pipes/append.pipe.d.ts +0 -7
- package/lib/pipes/google-translate.pipe.d.ts +0 -11
- package/lib/pipes/localize.pipe.d.ts +0 -10
- package/lib/pipes/pipes.module.d.ts +0 -11
- package/lib/pipes/prepend.pipe.d.ts +0 -7
- package/lib/pipes/strip-html.pipe.d.ts +0 -7
- package/lib/services/app-event.service.d.ts +0 -32
- package/lib/services/app-initializer.service.d.ts +0 -14
- package/lib/services/ar.service.d.ts +0 -120
- package/lib/services/build-furniture-base.service.d.ts +0 -117
- package/lib/services/build-furniture-without-scene.service.d.ts +0 -14
- package/lib/services/build-furniture.service.d.ts +0 -14
- package/lib/services/bundle-initialzer.service.d.ts +0 -45
- package/lib/services/camera.service.d.ts +0 -44
- package/lib/services/configuration.service.d.ts +0 -18
- package/lib/services/configurator-connector.service.d.ts +0 -140
- package/lib/services/configurator.service.d.ts +0 -62
- package/lib/services/configuring.service.d.ts +0 -46
- package/lib/services/controls.d.ts +0 -11
- package/lib/services/debug.service.d.ts +0 -16
- package/lib/services/dictionary.service.d.ts +0 -15
- package/lib/services/dynamic-camera.service.d.ts +0 -21
- package/lib/services/floor-plane.service.d.ts +0 -47
- package/lib/services/font.service.d.ts +0 -10
- package/lib/services/google-translate.service.d.ts +0 -26
- package/lib/services/icon-cache.service.d.ts +0 -21
- package/lib/services/intersection.service.d.ts +0 -11
- package/lib/services/item.service.d.ts +0 -18
- package/lib/services/json-utils.service.d.ts +0 -7
- package/lib/services/light-creation.service.d.ts +0 -9
- package/lib/services/light-presets.service.d.ts +0 -34
- package/lib/services/lights.service.d.ts +0 -34
- package/lib/services/load-furniture-base.service.d.ts +0 -37
- package/lib/services/load-furniture-without-scene.service.d.ts +0 -9
- package/lib/services/load-furniture.service.d.ts +0 -9
- package/lib/services/loader.service.d.ts +0 -11
- package/lib/services/locator.service.d.ts +0 -7
- package/lib/services/message-board.service.d.ts +0 -18
- package/lib/services/post-processing.service.d.ts +0 -74
- package/lib/services/product-configurator.service.d.ts +0 -11
- package/lib/services/progress.service.d.ts +0 -9
- package/lib/services/scene-event.service.d.ts +0 -72
- package/lib/services/scene-options.service.d.ts +0 -11
- package/lib/services/scene.service.d.ts +0 -71
- package/lib/services/screen-size-analysis.service.d.ts +0 -32
- package/lib/services/settings.service.d.ts +0 -24
- package/lib/services/switch-build-furniture.service.d.ts +0 -21
- package/lib/services/switch-load-furniture.service.d.ts +0 -21
- package/lib/services/threedselector.service.d.ts +0 -17
- package/lib/services/utils.service.d.ts +0 -24
- package/lib/services/variation-cache.service.d.ts +0 -23
- package/lib/services/variation.service.d.ts +0 -26
- package/lib/services/view-mode.service.d.ts +0 -17
- package/lib/services/vr.service.d.ts +0 -42
- package/lib/services/xr.service.d.ts +0 -56
- package/lib/utils/asset.utils.d.ts +0 -19
- package/lib/utils/base-utils.d.ts +0 -4
- package/lib/utils/color.utils.d.ts +0 -8
- package/lib/utils/debug.utils.d.ts +0 -3
- package/lib/utils/device.utils.d.ts +0 -7
- package/lib/utils/file.utils.d.ts +0 -30
- package/lib/utils/image.utils.d.ts +0 -9
- package/lib/utils/json-parser.utils.d.ts +0 -9
- package/lib/utils/material.utils.d.ts +0 -34
- package/lib/utils/object.utils.d.ts +0 -32
- package/lib/utils/relative-position.utils.d.ts +0 -12
- package/lib/utils/rotation-helper.utils.d.ts +0 -6
- package/lib/utils/scene-3d.utils.d.ts +0 -8
- package/lib/utils/scene-utils.d.ts +0 -7
- package/lib/utils/text-utils.d.ts +0 -4
- package/lib/utils/threed.utils.d.ts +0 -20
- package/lib/utils/variation-utils.d.ts +0 -18
- package/public-api.d.ts +0 -60
- /package/lib/style/{template_variables.scss → _variables.scss} +0 -0
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { ImageUtils } from './image.utils';
|
|
3
|
-
import * as THREE from 'three';
|
|
4
|
-
import { SRGBColorSpace } from 'three';
|
|
5
|
-
import { Material } from '../model/material';
|
|
6
|
-
export class FurnitureMaterial extends Material {
|
|
7
|
-
}
|
|
8
|
-
export class AssetUtils {
|
|
9
|
-
static CreateMaterialFromAsset(asset) {
|
|
10
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
const material = new Material();
|
|
12
|
-
if (!asset) {
|
|
13
|
-
return material;
|
|
14
|
-
}
|
|
15
|
-
if (asset.settings) {
|
|
16
|
-
AssetUtils.setSettingsOfMaterial(material, asset.settings);
|
|
17
|
-
}
|
|
18
|
-
if (asset.texture) {
|
|
19
|
-
material.texture = yield ImageUtils.CreateTextureFromBase64(asset.id + '_texture', asset.texture, material);
|
|
20
|
-
material.texture.colorSpace = SRGBColorSpace;
|
|
21
|
-
material.textureFilename = asset.textureFilename;
|
|
22
|
-
}
|
|
23
|
-
if (asset.normal) {
|
|
24
|
-
material.normal = yield ImageUtils.CreateTextureFromBase64(asset.id + '_normal', asset.normal, material);
|
|
25
|
-
material.normalFilename = asset.normalFilename;
|
|
26
|
-
}
|
|
27
|
-
if (asset.orm) {
|
|
28
|
-
material.ao = yield ImageUtils.CreateTextureFromBase64(asset.id + '_orm', asset.orm, material);
|
|
29
|
-
material.roughness = material.ao;
|
|
30
|
-
material.metalness = material.ao;
|
|
31
|
-
material.aoFilename = asset.ormFilename;
|
|
32
|
-
material.roughnessFilename = asset.ormFilename;
|
|
33
|
-
material.metalnessFilename = asset.ormFilename;
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
if (asset.ao) {
|
|
37
|
-
material.ao = yield ImageUtils.CreateTextureFromBase64(asset.id + '_ao', asset.ao, material);
|
|
38
|
-
material.aoFilename = asset.aoFilename;
|
|
39
|
-
}
|
|
40
|
-
if (asset.metalness) {
|
|
41
|
-
material.metalness = yield ImageUtils.CreateTextureFromBase64(asset.id + '_metalness', asset.metalness, material);
|
|
42
|
-
material.metalnessFilename = asset.metalnessFilename;
|
|
43
|
-
}
|
|
44
|
-
if (asset.roughness) {
|
|
45
|
-
material.roughness = yield ImageUtils.CreateTextureFromBase64(asset.id + '_roughness', asset.roughness, material);
|
|
46
|
-
material.roughnessFilename = asset.roughnessFilename;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
if (asset.displacement) {
|
|
50
|
-
material.displacement = yield ImageUtils.CreateTextureFromBase64(asset.id + '_displacement', asset.displacement, material);
|
|
51
|
-
material.displacementFilename = asset.displacementFilename;
|
|
52
|
-
}
|
|
53
|
-
if (asset.envMap) {
|
|
54
|
-
material.envMap = yield ImageUtils.CreateTextureFromBase64(asset.id + '_env', asset.envMap, material, true);
|
|
55
|
-
material.envMapFilename = asset.envMapFilename;
|
|
56
|
-
}
|
|
57
|
-
if (asset.sheenColorMap) {
|
|
58
|
-
material.sheenColorMap = yield ImageUtils.CreateTextureFromBase64(asset.id + '_sheen_color', asset.sheenColorMap, material);
|
|
59
|
-
material.sheenColorMapFileName = asset.sheenColorMapFilename;
|
|
60
|
-
}
|
|
61
|
-
if (asset.sheenRoughnessMap) {
|
|
62
|
-
material.sheenRoughnessMap = yield ImageUtils.CreateTextureFromBase64(asset.id + '_sheen_roughness', asset.sheenRoughnessMap, material);
|
|
63
|
-
material.sheenRoughnessMapFileName = asset.sheenRoughnessMapFilename;
|
|
64
|
-
}
|
|
65
|
-
if (asset.transmissionMap) {
|
|
66
|
-
material.transmissionMap = yield ImageUtils.CreateTextureFromBase64(asset.id + '_transmission', asset.transmissionMap, material);
|
|
67
|
-
material.transmissionMapFileName = asset.transmissionMapFilename;
|
|
68
|
-
}
|
|
69
|
-
if (asset.emissive) {
|
|
70
|
-
material.emissive = yield ImageUtils.CreateTextureFromBase64(asset.id + '_emissive', asset.emissive, material);
|
|
71
|
-
material.emissiveFileName = asset.emissiveFilename;
|
|
72
|
-
}
|
|
73
|
-
material.sheen = asset.sheen;
|
|
74
|
-
material.emissiveIntensityValue = asset.emissiveIntensity;
|
|
75
|
-
material.emissiveValue = asset.emissiveValue;
|
|
76
|
-
material.side = asset.side;
|
|
77
|
-
material.sheenColor = asset.sheenColor;
|
|
78
|
-
material.sheenRoughness = asset.sheenRoughness;
|
|
79
|
-
material.opacity = asset.opacity;
|
|
80
|
-
material.transparent = asset.transparent;
|
|
81
|
-
material.envMapIntensity = asset.envMapIntensity;
|
|
82
|
-
material.reflectivity = asset.reflectivity;
|
|
83
|
-
material.displacementValue = asset.displacementValue;
|
|
84
|
-
material.transmission = asset.transmission;
|
|
85
|
-
material.ior = asset.ior;
|
|
86
|
-
material.thickness = asset.thickness;
|
|
87
|
-
material.specularIntensity = asset.specularIntensity;
|
|
88
|
-
return material;
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
static setSettingsOfMaterial(material, settings) {
|
|
92
|
-
const shininess = parseFloat(settings['power']);
|
|
93
|
-
if (!isNaN(shininess)) {
|
|
94
|
-
material.shininess = shininess;
|
|
95
|
-
// material.roughness = 1 - (shininess / 100);
|
|
96
|
-
}
|
|
97
|
-
const level = parseFloat(settings['level']);
|
|
98
|
-
if (!isNaN(level)) {
|
|
99
|
-
material.specular = new THREE.Color(level, level, level);
|
|
100
|
-
}
|
|
101
|
-
const repeatObjectUsed = settings.hasOwnProperty('repeat');
|
|
102
|
-
const repeatx = repeatObjectUsed ? parseFloat(settings['repeat']['repeatx']) : parseFloat(settings['repeatx']);
|
|
103
|
-
if (!isNaN(repeatx)) {
|
|
104
|
-
material.repeatX = repeatx;
|
|
105
|
-
}
|
|
106
|
-
const repeaty = repeatObjectUsed ? parseFloat(settings['repeat']['repeaty']) : parseFloat(settings['repeaty']);
|
|
107
|
-
if (!isNaN(repeaty)) {
|
|
108
|
-
material.repeatY = repeaty;
|
|
109
|
-
}
|
|
110
|
-
const metalness = parseFloat(settings['metalness']);
|
|
111
|
-
if (!isNaN(metalness)) {
|
|
112
|
-
material.metalnessValue = Math.min(1, metalness);
|
|
113
|
-
}
|
|
114
|
-
const roughness = parseFloat(settings['roughness']);
|
|
115
|
-
if (!isNaN(roughness)) {
|
|
116
|
-
material.roughnessValue = Math.min(1, roughness);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25maWd1cmF0b3Ivc3JjL2xpYi91dGlscy9hc3NldC51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sT0FBTyxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUczQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsUUFBUTtDQWM5QztBQUVELE1BQU0sT0FBTyxVQUFVO0lBRWQsTUFBTSxDQUFPLHVCQUF1QixDQUFDLEtBQXdCOztZQUNsRSxNQUFNLFFBQVEsR0FBc0IsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNWLE9BQU8sUUFBUSxDQUFDO2FBQ2pCO1lBQ0QsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUNsQixVQUFVLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM1RDtZQUNELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDakIsUUFBUSxDQUFDLE9BQU8sR0FBRyxNQUFNLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLFVBQVUsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUM1RyxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUM7Z0JBQzdDLFFBQVEsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQzthQUNsRDtZQUNELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsUUFBUSxDQUFD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Z2UudXRpbHMnO1xyXG5pbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XHJcbmltcG9ydCB7U1JHQkNvbG9yU3BhY2V9IGZyb20gJ3RocmVlJztcclxuaW1wb3J0IHtNYXRlcmlhbH0gZnJvbSAnLi4vbW9kZWwvbWF0ZXJpYWwnO1xyXG5pbXBvcnQge1ZhcmlhdGlvblNldHRpbmdzfSBmcm9tICcuLi9tb2RlbC92YXJpYXRpb24tc2V0dGluZ3MnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEZ1cm5pdHVyZU1hdGVyaWFsIGV4dGVuZHMgTWF0ZXJpYWwge1xyXG5cclxuICBwdWJsaWMgdGV4dHVyZUZpbGVuYW1lPzogc3RyaW5nO1xyXG4gIHB1YmxpYyBub3JtYWxGaWxlbmFtZT86IHN0cmluZztcclxuICBwdWJsaWMgYW9GaWxlbmFtZT86IHN0cmluZztcclxuICBwdWJsaWMgbWV0YWxuZXNzRmlsZW5hbWU/OiBzdHJpbmc7XHJcbiAgcHVibGljIHJvdWdobmVzc0ZpbGVuYW1lPzogc3RyaW5nO1xyXG4gIHB1YmxpYyBkaXNwbGFjZW1lbnRGaWxlbmFtZT86IHN0cmluZztcclxuICBwdWJsaWMgZW52TWFwRmlsZW5hbWU/OiBzdHJpbmc7XHJcbiAgcHVibGljIGVtaXNzaXZlRmlsZU5hbWU/OiBzdHJpbmc7XHJcbiAgcHVibGljIHNoZWVuQ29sb3JNYXBGaWxlTmFtZT86IHN0cmluZztcclxuICBwdWJsaWMgc2hlZW5Sb3VnaG5lc3NNYXBGaWxlTmFtZT86IHN0cmluZztcclxuICBwdWJsaWMgdHJhbnNtaXNzaW9uTWFwRmlsZU5hbWU/OiBzdHJpbmc7XHJcblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQXNzZXRVdGlscyB7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgYXN5bmMgQ3JlYXRlTWF0ZXJpYWxGcm9tQXNzZXQoYXNzZXQ6IFZhcmlhdGlvblNldHRpbmdzKTogUHJvbWlzZTxNYXRlcmlhbD4ge1xyXG4gICAgY29uc3QgbWF0ZXJpYWw6IEZ1cm5pdHVyZU1hdGVyaWFsID0gbmV3IE1hdGVyaWFsKCk7XHJcbiAgICBpZiAoIWFzc2V0KSB7XHJcbiAgICAgIHJldHVybiBtYXRlcmlhbDtcclxuICAgIH1cclxuICAgIGlmIChhc3NldC5zZXR0aW5ncykge1xyXG4gICAgICBBc3NldFV0aWxzLnNldFNldHRpbmdzT2ZNYXRlcmlhbChtYXRlcmlhbCwgYXNzZXQuc2V0dGluZ3MpO1xyXG4gICAgfVxyXG4gICAgaWYgKGFzc2V0LnRleHR1cmUpIHtcclxuICAgICAgbWF0ZXJpYWwudGV4dHVyZSA9IGF3YWl0IEltYWdlVXRpbHMuQ3JlYXRlVGV4dHVyZUZyb21CYXNlNjQoYXNzZXQuaWQgKyAnX3RleHR1cmUnLCBhc3NldC50ZXh0dXJlLCBtYXRlcmlhbCk7XHJcbiAgICAgIG1hdGVyaWFsLnRleHR1cmUuY29sb3JTcGFjZSA9IFNSR0JDb2xvclNwYWNlO1xyXG4gICAgICBtYXRlcmlhbC50ZXh0dXJlRmlsZW5hbWUgPSBhc3NldC50ZXh0dXJlRmlsZW5hbWU7XHJcbiAgICB9XHJcbiAgICBpZiAoYXNzZXQubm9ybWFsKSB7XHJcbiAgICAgIG1hdGVyaWFsLm5vcm1hbCA9IGF3YWl0IEltYWdlVXRpbHMuQ3JlYXRlVGV4dHVyZUZyb21CYXNlNjQoYXNzZXQuaWQgKyAnX25vcm1hbCcsIGFzc2V0Lm5vcm1hbCwgbWF0ZXJpYWwpO1xyXG4gICAgICBtYXRlcmlhbC5ub3JtYWxGaWxlbmFtZSA9IGFzc2V0Lm5vcm1hbEZpbGVuYW1lO1xyXG4gICAgfVxyXG4gICAgaWYgKGFzc2V0Lm9ybSkge1xyXG4gICAgICBtYXRlcmlhbC5hbyA9IGF3YWl0IEltYWdlVXRpbHMuQ3JlYXRlVGV4dHVyZUZyb21CYXNlNjQoYXNzZXQuaWQgKyAnX29ybScsIGFzc2V0Lm9ybSwgbWF0ZXJpYWwpO1xyXG4gICAgICBtYXRlcmlhbC5yb3VnaG5lc3MgPSBtYXRlcmlhbC5hbztcclxuICAgICAgbWF0ZXJpYWwubWV0YWxuZXNzID0gbWF0ZXJpYWwuYW87XHJcbiAgICAgIG1hdGVyaWFsLmFvRmlsZW5hbWUgPSBhc3NldC5vcm1GaWxlbmFtZTtcclxuICAgICAgbWF0ZXJpYWwucm91Z2huZXNzRmlsZW5hbWUgPSBhc3NldC5vcm1GaWxlbmFtZTtcclxuICAgICAgbWF0ZXJpYWwubWV0YWxuZXNzRmlsZW5hbWUgPSBhc3NldC5vcm1GaWxlbmFtZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChhc3NldC5hbykge1xyXG4gICAgICAgIG1hdGVyaWFsLmFvID0gYXdhaXQgSW1hZ2VVdGlscy5DcmVhdGVUZXh0dXJlRnJvbUJhc2U2NChhc3NldC5pZCArICdfYW8nLCBhc3NldC5hbywgbWF0ZXJpYWwpO1xyXG4gICAgICAgIG1hdGVyaWFsLmFvRmlsZW5hbWUgPSBhc3NldC5hb0ZpbGVuYW1lO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChhc3NldC5tZXRhbG5lc3MpIHtcclxuICAgICAgICBtYXRlcmlhbC5tZXRhbG5lc3MgPSBhd2FpdCBJbWFnZVV0aWxzLkNyZWF0ZVRleHR1cmVGcm9tQmFzZTY0KGFzc2V0LmlkICsgJ19tZXRhbG5lc3MnLCBhc3NldC5tZXRhbG5lc3MsIG1hdGVyaWFsKTtcclxuICAgICAgICBtYXRlcmlhbC5tZXRhbG5lc3NGaWxlbmFtZSA9IGFzc2V0Lm1ldGFsbmVzc0ZpbGVuYW1lO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChhc3NldC5yb3VnaG5lc3MpIHtcclxuICAgICAgICBtYXRlcmlhbC5yb3VnaG5lc3MgPSBhd2FpdCBJbWFnZVV0aWxzLkNyZWF0ZVRleHR1cmVGcm9tQmFzZTY0KGFzc2V0LmlkICsgJ19yb3VnaG5lc3MnLCBhc3NldC5yb3VnaG5lc3MsIG1hdGVyaWFsKTtcclxuICAgICAgICBtYXRlcmlhbC5yb3VnaG5lc3NGaWxlbmFtZSA9IGFzc2V0LnJvdWdobmVzc0ZpbGVuYW1lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoYXNzZXQuZGlzcGxhY2VtZW50KSB7XHJcbiAgICAgIG1hdGVyaWFsLmRpc3BsYWNlbWVudCA9IGF3YWl0IEltYWdlVXRpbHMuQ3JlYXRlVGV4dHVyZUZyb21CYXNlNjQoYXNzZXQuaWQgKyAnX2Rpc3BsYWNlbWVudCcsIGFzc2V0LmRpc3BsYWNlbWVudCwgbWF0ZXJpYWwpO1xyXG4gICAgICBtYXRlcmlhbC5kaXNwbGFjZW1lbnRGaWxlbmFtZSA9IGFzc2V0LmRpc3BsYWNlbWVudEZpbGVuYW1lO1xyXG4gICAgfVxyXG4gICAgaWYgKGFzc2V0LmVudk1hcCkge1xyXG4gICAgICBtYXRlcmlhbC5lbnZNYXAgPSBhd2FpdCBJbWFnZVV0aWxzLkNyZWF0ZVRleHR1cmVGcm9tQmFzZTY0KGFzc2V0LmlkICsgJ19lbnYnLCBhc3NldC5lbnZNYXAsIG1hdGVyaWFsLCB0cnVlKTtcclxuICAgICAgbWF0ZXJpYWwuZW52TWFwRmlsZW5hbWUgPSBhc3NldC5lbnZNYXBGaWxlbmFtZTtcclxuICAgIH1cclxuICAgIGlmIChhc3NldC5zaGVlbkNvbG9yTWFwKSB7XHJcbiAgICAgIG1hdGVyaWFsLnNoZWVuQ29sb3JNYXAgPSBhd2FpdCBJbWFnZVV0aWxzLkNyZWF0ZVRleHR1cmVGcm9tQmFzZTY0KGFzc2V0LmlkICsgJ19zaGVlbl9jb2xvcicsIGFzc2V0LnNoZWVuQ29sb3JNYXAsIG1hdGVyaWFsKTtcclxuICAgICAgbWF0ZXJpYWwuc2hlZW5Db2xvck1hcEZpbGVOYW1lID0gYXNzZXQuc2hlZW5Db2xvck1hcEZpbGVuYW1lO1xyXG4gICAgfVxyXG4gICAgaWYgKGFzc2V0LnNoZWVuUm91Z2huZXNzTWFwKSB7XHJcbiAgICAgIG1hdGVyaWFsLnNoZWVuUm91Z2huZXNzTWFwID0gYXdhaXQgSW1hZ2VVdGlscy5DcmVhdGVUZXh0dXJlRnJvbUJhc2U2NChhc3NldC5pZCArICdfc2hlZW5fcm91Z2huZXNzJywgYXNzZXQuc2hlZW5Sb3VnaG5lc3NNYXAsIG1hdGVyaWFsKTtcclxuICAgICAgbWF0ZXJpYWwuc2hlZW5Sb3VnaG5lc3NNYXBGaWxlTmFtZSA9IGFzc2V0LnNoZWVuUm91Z2huZXNzTWFwRmlsZW5hbWU7XHJcblxyXG4gICAgfVxyXG4gICAgaWYgKGFzc2V0LnRyYW5zbWlzc2lvbk1hcCkge1xyXG4gICAgICBtYXRlcmlhbC50cmFuc21pc3Npb25NYXAgPSBhd2FpdCBJbWFnZVV0aWxzLkNyZWF0ZVRleHR1cmVGcm9tQmFzZTY0KGFzc2V0LmlkICsgJ190cmFuc21pc3Npb24nLCBhc3NldC50cmFuc21pc3Npb25NYXAsIG1hdGVyaWFsKTtcclxuICAgICAgbWF0ZXJpYWwudHJhbnNtaXNzaW9uTWFwRmlsZU5hbWUgPSBhc3NldC50cmFuc21pc3Npb25NYXBGaWxlbmFtZTtcclxuICAgIH1cclxuICAgIGlmIChhc3NldC5lbWlzc2l2ZSkge1xyXG4gICAgICBtYXRlcmlhbC5lbWlzc2l2ZSA9IGF3YWl0IEltYWdlVXRpbHMuQ3JlYXRlVGV4dHVyZUZyb21CYXNlNjQoYXNzZXQuaWQgKyAnX2VtaXNzaXZlJywgYXNzZXQuZW1pc3NpdmUsIG1hdGVyaWFsKTtcclxuICAgICAgbWF0ZXJpYWwuZW1pc3NpdmVGaWxlTmFtZSA9IGFzc2V0LmVtaXNzaXZlRmlsZW5hbWU7XHJcbiAgICB9XHJcbiAgICBtYXRlcmlhbC5zaGVlbiA9IGFzc2V0LnNoZWVuO1xyXG4gICAgbWF0ZXJpYWwuZW1pc3NpdmVJbnRlbnNpdHlWYWx1ZSA9IGFzc2V0LmVtaXNzaXZlSW50ZW5zaXR5O1xyXG4gICAgbWF0ZXJpYWwuZW1pc3NpdmVWYWx1ZSA9IGFzc2V0LmVtaXNzaXZlVmFsdWU7XHJcbiAgICBtYXRlcmlhbC5zaWRlID0gYXNzZXQuc2lkZTtcclxuICAgIG1hdGVyaWFsLnNoZWVuQ29sb3IgPSBhc3NldC5zaGVlbkNvbG9yO1xyXG4gICAgbWF0ZXJpYWwuc2hlZW5Sb3VnaG5lc3MgPSBhc3NldC5zaGVlblJvdWdobmVzcztcclxuICAgIG1hdGVyaWFsLm9wYWNpdHkgPSBhc3NldC5vcGFjaXR5O1xyXG4gICAgbWF0ZXJpYWwudHJhbnNwYXJlbnQgPSBhc3NldC50cmFuc3BhcmVudDtcclxuICAgIG1hdGVyaWFsLmVudk1hcEludGVuc2l0eSA9IGFzc2V0LmVudk1hcEludGVuc2l0eTtcclxuICAgIG1hdGVyaWFsLnJlZmxlY3Rpdml0eSA9IGFzc2V0LnJlZmxlY3Rpdml0eTtcclxuICAgIG1hdGVyaWFsLmRpc3BsYWNlbWVudFZhbHVlID0gYXNzZXQuZGlzcGxhY2VtZW50VmFsdWU7XHJcbiAgICBtYXRlcmlhbC50cmFuc21pc3Npb24gPSBhc3NldC50cmFuc21pc3Npb247XHJcbiAgICBtYXRlcmlhbC5pb3IgPSBhc3NldC5pb3I7XHJcbiAgICBtYXRlcmlhbC50aGlja25lc3MgPSBhc3NldC50aGlja25lc3M7XHJcbiAgICBtYXRlcmlhbC5zcGVjdWxhckludGVuc2l0eSA9IGFzc2V0LnNwZWN1bGFySW50ZW5zaXR5O1xyXG4gICAgcmV0dXJuIG1hdGVyaWFsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBzZXRTZXR0aW5nc09mTWF0ZXJpYWwobWF0ZXJpYWw6IE1hdGVyaWFsLCBzZXR0aW5nczogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBzaGluaW5lc3MgPSBwYXJzZUZsb2F0KHNldHRpbmdzWydwb3dlciddKTtcclxuICAgIGlmICghaXNOYU4oc2hpbmluZXNzKSkge1xyXG4gICAgICBtYXRlcmlhbC5zaGluaW5lc3MgPSBzaGluaW5lc3M7XHJcbiAgICAgIC8vIG1hdGVyaWFsLnJvdWdobmVzcyA9IDEgLSAoc2hpbmluZXNzIC8gMTAwKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBsZXZlbCA9IHBhcnNlRmxvYXQoc2V0dGluZ3NbJ2xldmVsJ10pO1xyXG4gICAgaWYgKCFpc05hTihsZXZlbCkpIHtcclxuICAgICAgbWF0ZXJpYWwuc3BlY3VsYXIgPSBuZXcgVEhSRUUuQ29sb3IobGV2ZWwsIGxldmVsLCBsZXZlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcmVwZWF0T2JqZWN0VXNlZDogYm9vbGVhbiA9IHNldHRpbmdzLmhhc093blByb3BlcnR5KCdyZXBlYXQnKTtcclxuICAgIGNvbnN0IHJlcGVhdHggPSByZXBlYXRPYmplY3RVc2VkID8gcGFyc2VGbG9hdChzZXR0aW5nc1sncmVwZWF0J11bJ3JlcGVhdHgnXSkgOiBwYXJzZUZsb2F0KHNldHRpbmdzWydyZXBlYXR4J10pO1xyXG4gICAgaWYgKCFpc05hTihyZXBlYXR4KSkge1xyXG4gICAgICBtYXRlcmlhbC5yZXBlYXRYID0gcmVwZWF0eDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCByZXBlYXR5ID0gcmVwZWF0T2JqZWN0VXNlZCA/IHBhcnNlRmxvYXQoc2V0dGluZ3NbJ3JlcGVhdCddWydyZXBlYXR5J10pIDogcGFyc2VGbG9hdChzZXR0aW5nc1sncmVwZWF0eSddKTtcclxuICAgIGlmICghaXNOYU4ocmVwZWF0eSkpIHtcclxuICAgICAgbWF0ZXJpYWwucmVwZWF0WSA9IHJlcGVhdHk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWV0YWxuZXNzID0gcGFyc2VGbG9hdChzZXR0aW5nc1snbWV0YWxuZXNzJ10pO1xyXG4gICAgaWYgKCFpc05hTihtZXRhbG5lc3MpKSB7XHJcbiAgICAgIG1hdGVyaWFsLm1ldGFsbmVzc1ZhbHVlID0gTWF0aC5taW4oMSwgbWV0YWxuZXNzKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCByb3VnaG5lc3MgPSBwYXJzZUZsb2F0KHNldHRpbmdzWydyb3VnaG5lc3MnXSk7XHJcbiAgICBpZiAoIWlzTmFOKHJvdWdobmVzcykpIHtcclxuICAgICAgbWF0ZXJpYWwucm91Z2huZXNzVmFsdWUgPSBNYXRoLm1pbigxLCByb3VnaG5lc3MpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class BaseUtils {
|
|
2
|
-
log(message) {
|
|
3
|
-
if (this.debug) {
|
|
4
|
-
this.debug(message);
|
|
5
|
-
console.log(new Date(), message);
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbmZpZ3VyYXRvci9zcmMvbGliL3V0aWxzL2Jhc2UtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFNBQVM7SUFHVixHQUFHLENBQUMsT0FBZTtRQUMzQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBCYXNlVXRpbHMge1xyXG4gIHB1YmxpYyBkZWJ1ZzogRnVuY3Rpb247XHJcblxyXG4gIHByb3RlY3RlZCBsb2cobWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kZWJ1Zykge1xyXG4gICAgICB0aGlzLmRlYnVnKG1lc3NhZ2UpO1xyXG4gICAgICBjb25zb2xlLmxvZyhuZXcgRGF0ZSgpLCBtZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
export class ColorUtils {
|
|
2
|
-
static HexToRgb(hex) {
|
|
3
|
-
// Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF")
|
|
4
|
-
const clearHex = hex.replace('#', '');
|
|
5
|
-
if (clearHex.length < 6 && clearHex.length > 3) {
|
|
6
|
-
hex = '#00' + clearHex;
|
|
7
|
-
}
|
|
8
|
-
const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
|
|
9
|
-
hex = hex.replace(shorthandRegex, function (m, r, g, b) {
|
|
10
|
-
return r + r + g + g + b + b;
|
|
11
|
-
});
|
|
12
|
-
const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
|
|
13
|
-
return result ? {
|
|
14
|
-
r: parseInt(result[1], 16),
|
|
15
|
-
g: parseInt(result[2], 16),
|
|
16
|
-
b: parseInt(result[3], 16)
|
|
17
|
-
} : null;
|
|
18
|
-
}
|
|
19
|
-
static HexWithOpacity(hex, opacity) {
|
|
20
|
-
hex = hex.replace(/^#/, '');
|
|
21
|
-
if (hex.length === 3) {
|
|
22
|
-
hex = hex.split('').map(c => c + c).join('');
|
|
23
|
-
}
|
|
24
|
-
const alpha = Math.round(opacity * 255)
|
|
25
|
-
.toString(16)
|
|
26
|
-
.padStart(2, '0');
|
|
27
|
-
return `#${hex}${alpha}`;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25maWd1cmF0b3Ivc3JjL2xpYi91dGlscy9jb2xvci51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sVUFBVTtJQUVkLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBVztRQUNoQyxrRUFBa0U7UUFDbEUsTUFBTSxRQUFRLEdBQVcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUMsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM5QyxHQUFHLEdBQUcsS0FBSyxHQUFHLFFBQVEsQ0FBQztTQUN4QjtRQUNELE1BQU0sY0FBYyxHQUFHLGtDQUFrQyxDQUFDO1FBQzFELEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxVQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDbkQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxHQUFHLDJDQUEyQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyRSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDZCxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUIsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFCLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUMzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDWCxDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUN2RCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFNUIsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNwQixHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzlDO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2FBQ3BDLFFBQVEsQ0FBQyxFQUFFLENBQUM7YUFDWixRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXBCLE9BQU8sSUFBSSxHQUFHLEdBQUcsS0FBSyxFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENvbG9yVXRpbHMge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIEhleFRvUmdiKGhleDogc3RyaW5nKToge3I6IG51bWJlciwgZzogbnVtYmVyLCBiOiBudW1iZXJ9IHtcclxuICAgIC8vIEV4cGFuZCBzaG9ydGhhbmQgZm9ybSAoZS5nLiBcIjAzRlwiKSB0byBmdWxsIGZvcm0gKGUuZy4gXCIwMDMzRkZcIilcclxuICAgIGNvbnN0IGNsZWFySGV4OiBzdHJpbmcgPSBoZXgucmVwbGFjZSgnIycsICcnKTtcclxuICAgIGlmIChjbGVhckhleC5sZW5ndGggPCA2ICYmIGNsZWFySGV4Lmxlbmd0aCA+IDMpIHtcclxuICAgICAgaGV4ID0gJyMwMCcgKyBjbGVhckhleDtcclxuICAgIH1cclxuICAgIGNvbnN0IHNob3J0aGFuZFJlZ2V4ID0gL14jPyhbYS1mXFxkXSkoW2EtZlxcZF0pKFthLWZcXGRdKSQvaTtcclxuICAgIGhleCA9IGhleC5yZXBsYWNlKHNob3J0aGFuZFJlZ2V4LCBmdW5jdGlvbihtLCByLCBnLCBiKSB7XHJcbiAgICAgIHJldHVybiByICsgciArIGcgKyBnICsgYiArIGI7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCByZXN1bHQgPSAvXiM/KFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pJC9pLmV4ZWMoaGV4KTtcclxuICAgIHJldHVybiByZXN1bHQgPyB7XHJcbiAgICAgIHI6IHBhcnNlSW50KHJlc3VsdFsxXSwgMTYpLFxyXG4gICAgICBnOiBwYXJzZUludChyZXN1bHRbMl0sIDE2KSxcclxuICAgICAgYjogcGFyc2VJbnQocmVzdWx0WzNdLCAxNilcclxuICAgIH0gOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBIZXhXaXRoT3BhY2l0eShoZXg6IHN0cmluZywgb3BhY2l0eTogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGhleCA9IGhleC5yZXBsYWNlKC9eIy8sICcnKTtcclxuXHJcbiAgICBpZiAoaGV4Lmxlbmd0aCA9PT0gMykge1xyXG4gICAgICBoZXggPSBoZXguc3BsaXQoJycpLm1hcChjID0+IGMgKyBjKS5qb2luKCcnKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBhbHBoYSA9IE1hdGgucm91bmQob3BhY2l0eSAqIDI1NSlcclxuICAgICAgLnRvU3RyaW5nKDE2KVxyXG4gICAgICAucGFkU3RhcnQoMiwgJzAnKTtcclxuXHJcbiAgICByZXR1cm4gYCMke2hleH0ke2FscGhhfWA7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { environment } from '../environments/environment';
|
|
2
|
-
export class DebugUtils {
|
|
3
|
-
static log(message) {
|
|
4
|
-
if (!environment.production) {
|
|
5
|
-
console.log(message);
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25maWd1cmF0b3Ivc3JjL2xpYi91dGlscy9kZWJ1Zy51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFeEQsTUFBTSxPQUFPLFVBQVU7SUFDZCxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQWU7UUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUU7WUFDM0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN0QjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZW52aXJvbm1lbnR9IGZyb20gJy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XHJcblxyXG5leHBvcnQgY2xhc3MgRGVidWdVdGlscyB7XHJcbiAgcHVibGljIHN0YXRpYyBsb2cobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIWVudmlyb25tZW50LnByb2R1Y3Rpb24pIHtcclxuICAgICAgY29uc29sZS5sb2cobWVzc2FnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { DeviceTier } from '../enum/device-tier.enum';
|
|
2
|
-
// @dynamic
|
|
3
|
-
export class DeviceUtils {
|
|
4
|
-
static GetPixelRatio() {
|
|
5
|
-
const deviceTier = DeviceUtils.GetDeviceTier();
|
|
6
|
-
return Math.min(window.devicePixelRatio, deviceTier === DeviceTier.Mobile ? 1.5 : 2) || 1;
|
|
7
|
-
}
|
|
8
|
-
static IsMobile() {
|
|
9
|
-
return /Android|iPhone|iPad|iPod/i.test(navigator.userAgent);
|
|
10
|
-
}
|
|
11
|
-
static IsLowEndGPU() {
|
|
12
|
-
return navigator.hardwareConcurrency !== undefined &&
|
|
13
|
-
navigator.hardwareConcurrency <= 4;
|
|
14
|
-
}
|
|
15
|
-
static GetDeviceTier() {
|
|
16
|
-
if (DeviceUtils.IsMobile()) {
|
|
17
|
-
return DeviceTier.Mobile;
|
|
18
|
-
}
|
|
19
|
-
if (DeviceUtils.IsLowEndGPU()) {
|
|
20
|
-
return DeviceTier.Low;
|
|
21
|
-
}
|
|
22
|
-
return DeviceTier.High;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29uZmlndXJhdG9yL3NyYy9saWIvdXRpbHMvZGV2aWNlLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUVwRCxXQUFXO0FBQ1gsTUFBTSxPQUFPLFdBQVc7SUFFZixNQUFNLENBQUMsYUFBYTtRQUN6QixNQUFNLFVBQVUsR0FBZSxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEtBQUssVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFRO1FBQ3BCLE9BQU8sMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVc7UUFDdkIsT0FBTyxTQUFTLENBQUMsbUJBQW1CLEtBQUssU0FBUztZQUNoRCxTQUFTLENBQUMsbUJBQW1CLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYTtRQUN6QixJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUMxQixPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUM7U0FDMUI7UUFDRCxJQUFJLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUM3QixPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUM7U0FDdkI7UUFDRCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEZXZpY2VUaWVyfSBmcm9tICcuLi9lbnVtL2RldmljZS10aWVyLmVudW0nO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIERldmljZVV0aWxzIHtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBHZXRQaXhlbFJhdGlvKCk6IG51bWJlciB7XHJcbiAgICBjb25zdCBkZXZpY2VUaWVyOiBEZXZpY2VUaWVyID0gRGV2aWNlVXRpbHMuR2V0RGV2aWNlVGllcigpO1xyXG4gICAgcmV0dXJuIE1hdGgubWluKHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvLCBkZXZpY2VUaWVyID09PSBEZXZpY2VUaWVyLk1vYmlsZSA/IDEuNSA6IDIpIHx8IDE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIElzTW9iaWxlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIC9BbmRyb2lkfGlQaG9uZXxpUGFkfGlQb2QvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBJc0xvd0VuZEdQVSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBuYXZpZ2F0b3IuaGFyZHdhcmVDb25jdXJyZW5jeSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgIG5hdmlnYXRvci5oYXJkd2FyZUNvbmN1cnJlbmN5IDw9IDQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIEdldERldmljZVRpZXIoKTogRGV2aWNlVGllciB7XHJcbiAgICBpZiAoRGV2aWNlVXRpbHMuSXNNb2JpbGUoKSkge1xyXG4gICAgICByZXR1cm4gRGV2aWNlVGllci5Nb2JpbGU7XHJcbiAgICB9XHJcbiAgICBpZiAoRGV2aWNlVXRpbHMuSXNMb3dFbmRHUFUoKSkge1xyXG4gICAgICByZXR1cm4gRGV2aWNlVGllci5Mb3c7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gRGV2aWNlVGllci5IaWdoO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import axios from "axios";
|
|
3
|
-
// Static utility functions holder related to files.
|
|
4
|
-
// @dynamic
|
|
5
|
-
export class FileUtils {
|
|
6
|
-
static DoesFileExist(url) {
|
|
7
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
8
|
-
try {
|
|
9
|
-
if (this._filesDontExist.indexOf(url) > -1) { // no need to check again
|
|
10
|
-
return false;
|
|
11
|
-
}
|
|
12
|
-
if (this._filesExist.indexOf(url) > -1) { // no need to check again
|
|
13
|
-
return true;
|
|
14
|
-
}
|
|
15
|
-
const response = yield fetch(url, { method: 'HEAD' });
|
|
16
|
-
if (response.ok && response.status === 200) {
|
|
17
|
-
this._filesExist.push(url);
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
this._filesDontExist.push(url);
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
catch (error) {
|
|
24
|
-
this._filesDontExist.push(url);
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
// Returns the given dataUri string stripped of the mimetype part.
|
|
30
|
-
static StripMimeStringFromDataUri(dataUri) {
|
|
31
|
-
if (!dataUri) {
|
|
32
|
-
return '';
|
|
33
|
-
}
|
|
34
|
-
const mimeString = this.GetMimeStringFromDataUri(dataUri);
|
|
35
|
-
return dataUri.substr(mimeString.length + 1);
|
|
36
|
-
}
|
|
37
|
-
static GetMimeStringFromDataUri(dataUri) {
|
|
38
|
-
if (!dataUri) {
|
|
39
|
-
return '';
|
|
40
|
-
}
|
|
41
|
-
return dataUri.split(',')[0];
|
|
42
|
-
}
|
|
43
|
-
static FileExists(url, assetPath) {
|
|
44
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
if (!assetPath.endsWith('/')) {
|
|
46
|
-
assetPath = assetPath + '/';
|
|
47
|
-
}
|
|
48
|
-
const result = yield axios({
|
|
49
|
-
method: 'get',
|
|
50
|
-
url: `${assetPath}getFiles.php?assetUrl=${url}`,
|
|
51
|
-
responseType: "json"
|
|
52
|
-
});
|
|
53
|
-
return !!result.data;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* There is some discrepancy regarding locations of h3d objects
|
|
58
|
-
* Therefor we need to (temporarily?!) fix the content url
|
|
59
|
-
* Also we need to change some additionals
|
|
60
|
-
*/
|
|
61
|
-
static FixUrl(assetUrl) {
|
|
62
|
-
if (!assetUrl) {
|
|
63
|
-
return '';
|
|
64
|
-
}
|
|
65
|
-
let fixedUrl = assetUrl;
|
|
66
|
-
if (!fixedUrl.endsWith('glb') && !fixedUrl.endsWith('obj') && !fixedUrl.endsWith('glb.gz') && !fixedUrl.endsWith('obj.gz')) {
|
|
67
|
-
fixedUrl = FileUtils.FixUnityUrl(fixedUrl);
|
|
68
|
-
}
|
|
69
|
-
fixedUrl = fixedUrl.replace('/content/', '/content43/');
|
|
70
|
-
return fixedUrl;
|
|
71
|
-
}
|
|
72
|
-
static FixGlbUrl(assetUrl) {
|
|
73
|
-
if (!assetUrl) {
|
|
74
|
-
return '';
|
|
75
|
-
}
|
|
76
|
-
let fixedUrl = assetUrl;
|
|
77
|
-
if (assetUrl.indexOf('_webplayer') === -1) {
|
|
78
|
-
fixedUrl = assetUrl.concat('_webplayer');
|
|
79
|
-
}
|
|
80
|
-
fixedUrl = fixedUrl.replace('/content/', '/content43/');
|
|
81
|
-
if (!fixedUrl.endsWith('.glb')) {
|
|
82
|
-
fixedUrl = fixedUrl.concat('.glb');
|
|
83
|
-
}
|
|
84
|
-
return fixedUrl;
|
|
85
|
-
}
|
|
86
|
-
// Return the mimetype of the given filename.
|
|
87
|
-
static MimeTypeFromFilename(fileName) {
|
|
88
|
-
const regEx = /(?:\.([^.]+))?$/; // regex to find extension
|
|
89
|
-
const extension = regEx.exec(fileName)[1];
|
|
90
|
-
switch (extension) {
|
|
91
|
-
case 'jpg':
|
|
92
|
-
case 'jpeg':
|
|
93
|
-
return 'image/jpeg';
|
|
94
|
-
case 'png':
|
|
95
|
-
return 'image/png';
|
|
96
|
-
case 'bmp':
|
|
97
|
-
return 'image/bmp';
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Downloads the given file to the users default download location.
|
|
102
|
-
* @param fileName With or without extension
|
|
103
|
-
* @param content File content as a string
|
|
104
|
-
* @param [mimeType = 'text/plain']
|
|
105
|
-
*/
|
|
106
|
-
static DownloadFile(fileName, content, mimeType = 'text/plain') {
|
|
107
|
-
const element = document.createElement('a');
|
|
108
|
-
element.setAttribute('href', 'data:' + mimeType + ';charset=utf-8,' + encodeURIComponent(content));
|
|
109
|
-
element.setAttribute('download', fileName);
|
|
110
|
-
element.style.display = 'none';
|
|
111
|
-
document.body.appendChild(element);
|
|
112
|
-
element.click();
|
|
113
|
-
document.body.removeChild(element);
|
|
114
|
-
}
|
|
115
|
-
// Returns the contents of given file as a text string.
|
|
116
|
-
static ReadAsText(file) {
|
|
117
|
-
return new Promise((resolve) => {
|
|
118
|
-
const reader = new FileReader();
|
|
119
|
-
reader.readAsText(file);
|
|
120
|
-
reader.onloadend = (event) => {
|
|
121
|
-
if (event.target.readyState === 2) {
|
|
122
|
-
resolve(event.target.result);
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
static GetExtensionFromDataUri(dataUri) {
|
|
128
|
-
return dataUri.replace(/(data:image\/)(.*?)(;base64.*)/gi, '$2');
|
|
129
|
-
}
|
|
130
|
-
static CreateDownloadFileNameFromBase64(dataUri) {
|
|
131
|
-
const ext = this.GetExtensionFromDataUri(dataUri);
|
|
132
|
-
return 'preview.' + ext;
|
|
133
|
-
}
|
|
134
|
-
static DownloadFromDataUri(dataUri, fileName) {
|
|
135
|
-
const link = document.createElement('a');
|
|
136
|
-
link.download = fileName;
|
|
137
|
-
link.href = dataUri;
|
|
138
|
-
document.body.appendChild(link);
|
|
139
|
-
link.click();
|
|
140
|
-
document.body.removeChild(link);
|
|
141
|
-
}
|
|
142
|
-
// todo remove once Connector deals with mimetypes and this method isn't used anymore
|
|
143
|
-
static DocumentBodyToDataUri(documentBody, mimeType) {
|
|
144
|
-
if (!!documentBody) {
|
|
145
|
-
return 'data:' + mimeType + ';base64,' + documentBody;
|
|
146
|
-
}
|
|
147
|
-
else {
|
|
148
|
-
return '';
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
static FixUnityUrl(url) {
|
|
152
|
-
if (url.indexOf('_webplayer') === -1) {
|
|
153
|
-
url = url.concat('_webplayer.ione3d');
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
url = url.replace('_webplayer', '_webplayer.ione3d');
|
|
157
|
-
}
|
|
158
|
-
if (!url.endsWith('.gz')) {
|
|
159
|
-
url = url.concat('.gz');
|
|
160
|
-
}
|
|
161
|
-
return url.replace('.unity3d', '');
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
FileUtils._cachedTextureUploads = new Map();
|
|
165
|
-
FileUtils._filesDontExist = [];
|
|
166
|
-
FileUtils._filesExist = [];
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbmZpZ3VyYXRvci9zcmMvbGliL3V0aWxzL2ZpbGUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixvREFBb0Q7QUFDcEQsV0FBVztBQUNYLE1BQU0sT0FBTyxTQUFTO0lBTWIsTUFBTSxDQUFPLGFBQWEsQ0FBQyxHQUFXOztZQUMzQyxJQUFJO2dCQUNGLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSx5QkFBeUI7b0JBQ3JFLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2dCQUNELElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSx5QkFBeUI7b0JBQ2pFLE9BQU8sSUFBSSxDQUFDO2lCQUNiO2dCQUNELE1BQU0sUUFBUSxHQUFhLE1BQU0sS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLFFBQVEsQ0FBQyxFQUFFLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7b0JBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUMzQixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDL0IsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUFDLE9BQU8sS0FBSyxFQUFFO2dCQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQixPQUFPLEtBQUssQ0FBQzthQUNkO1FBQ0gsQ0FB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QUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3ZDO2FBQU07WUFDTCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztTQUN0RDtRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3pCO1FBQ0QsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDOztBQS9LYywrQkFBcUIsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztBQUN2RCx5QkFBZSxHQUFhLEVBQUUsQ0FBQztBQUMvQixxQkFBVyxHQUFhLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tIFwiYXhpb3NcIjtcclxuLy8gU3RhdGljIHV0aWxpdHkgZnVuY3Rpb25zIGhvbGRlciByZWxhdGVkIHRvIGZpbGVzLlxyXG4vLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgRmlsZVV0aWxzIHtcclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2NhY2hlZFRleHR1cmVVcGxvYWRzOiBNYXA8c3RyaW5nLCBPYmplY3Q+ID0gbmV3IE1hcCgpO1xyXG4gIHByaXZhdGUgc3RhdGljIF9maWxlc0RvbnRFeGlzdDogc3RyaW5nW10gPSBbXTtcclxuICBwcml2YXRlIHN0YXRpYyBfZmlsZXNFeGlzdDogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBhc3luYyBEb2VzRmlsZUV4aXN0KHVybDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICB0cnkge1xyXG4gICAgICBpZiAodGhpcy5fZmlsZXNEb250RXhpc3QuaW5kZXhPZih1cmwpID4gLTEpIHsgLy8gbm8gbmVlZCB0byBjaGVjayBhZ2FpblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5fZmlsZXNFeGlzdC5pbmRleE9mKHVybCkgPiAtMSkgeyAvLyBubyBuZWVkIHRvIGNoZWNrIGFnYWluXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcmVzcG9uc2U6IFJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsLCB7bWV0aG9kOiAnSEVBRCd9KTtcclxuICAgICAgaWYgKHJlc3BvbnNlLm9rICYmIHJlc3BvbnNlLnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5fZmlsZXNFeGlzdC5wdXNoKHVybCk7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fZmlsZXNEb250RXhpc3QucHVzaCh1cmwpO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICB0aGlzLl9maWxlc0RvbnRFeGlzdC5wdXNoKHVybCk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFJldHVybnMgdGhlIGdpdmVuIGRhdGFVcmkgc3RyaW5nIHN0cmlwcGVkIG9mIHRoZSBtaW1ldHlwZSBwYXJ0LlxyXG4gIHB1YmxpYyBzdGF0aWMgU3RyaXBNaW1lU3RyaW5nRnJvbURhdGFVcmkoZGF0YVVyaTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghZGF0YVVyaSkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWltZVN0cmluZzogc3RyaW5nID0gdGhpcy5HZXRNaW1lU3RyaW5nRnJvbURhdGFVcmkoZGF0YVVyaSk7XHJcbiAgICByZXR1cm4gZGF0YVVyaS5zdWJzdHIobWltZVN0cmluZy5sZW5ndGggKyAxKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgR2V0TWltZVN0cmluZ0Zyb21EYXRhVXJpKGRhdGFVcmk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoIWRhdGFVcmkpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkYXRhVXJpLnNwbGl0KCcsJylbMF07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGFzeW5jIEZpbGVFeGlzdHModXJsOiBzdHJpbmcsIGFzc2V0UGF0aDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICBpZiAoIWFzc2V0UGF0aC5lbmRzV2l0aCgnLycpKSB7XHJcbiAgICAgIGFzc2V0UGF0aCA9IGFzc2V0UGF0aCArICcvJztcclxuICAgIH1cclxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYXhpb3Moe1xyXG4gICAgICAgIG1ldGhvZDogJ2dldCcsXHJcbiAgICAgICAgdXJsOiBgJHthc3NldFBhdGh9Z2V0RmlsZXMucGhwP2Fzc2V0VXJsPSR7dXJsfWAsXHJcbiAgICAgICAgcmVzcG9uc2VUeXBlOiBcImpzb25cIlxyXG4gICAgICB9KVxyXG4gICAgICByZXR1cm4gISFyZXN1bHQuZGF0YTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZXJlIGlzIHNvbWUgZGlzY3JlcGFuY3kgcmVnYXJkaW5nIGxvY2F0aW9ucyBvZiBoM2Qgb2JqZWN0c1xyXG4gICAqIFRoZXJlZm9yIHdlIG5lZWQgdG8gKHRlbXBvcmFyaWx5PyEpIGZpeCB0aGUgY29udGVudCB1cmxcclxuICAgKiBBbHNvIHdlIG5lZWQgdG8gY2hhbmdlIHNvbWUgYWRkaXRpb25hbHNcclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIEZpeFVybChhc3NldFVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghYXNzZXRVcmwpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgbGV0IGZpeGVkVXJsOiBzdHJpbmcgPSBhc3NldFVybDtcclxuICAgIGlmICghZml4ZWRVcmwuZW5kc1dpdGgoJ2dsYicpICYmICFmaXhlZFVybC5lbmRzV2l0aCgnb2JqJykgJiYgIWZpeGVkVXJsLmVuZHNXaXRoKCdnbGIuZ3onKSAmJiAhZml4ZWRVcmwuZW5kc1dpdGgoJ29iai5neicpKSB7XHJcbiAgICAgIGZpeGVkVXJsID0gRmlsZVV0aWxzLkZpeFVuaXR5VXJsKGZpeGVkVXJsKTtcclxuICAgIH1cclxuICAgIGZpeGVkVXJsID0gZml4ZWRVcmwucmVwbGFjZSgnL2NvbnRlbnQvJywgJy9jb250ZW50NDMvJyk7XHJcbiAgICByZXR1cm4gZml4ZWRVcmw7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIEZpeEdsYlVybChhc3NldFVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghYXNzZXRVcmwpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgbGV0IGZpeGVkVXJsOiBzdHJpbmcgPSBhc3NldFVybDtcclxuICAgIGlmIChhc3NldFVybC5pbmRleE9mKCdfd2VicGxheWVyJykgPT09IC0xKSB7XHJcbiAgICAgIGZpeGVkVXJsID0gYXNzZXRVcmwuY29uY2F0KCdfd2VicGxheWVyJyk7XHJcbiAgICB9XHJcbiAgICBmaXhlZFVybCA9IGZpeGVkVXJsLnJlcGxhY2UoJy9jb250ZW50LycsICcvY29udGVudDQzLycpO1xyXG4gICAgaWYgKCFmaXhlZFVybC5lbmRzV2l0aCgnLmdsYicpKSB7XHJcbiAgICAgIGZpeGVkVXJsID0gZml4ZWRVcmwuY29uY2F0KCcuZ2xiJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZml4ZWRVcmw7XHJcbiAgfVxyXG5cclxuICAvLyBSZXR1cm4gdGhlIG1pbWV0eXBlIG9mIHRoZSBnaXZlbiBmaWxlbmFtZS5cclxuICBwdWJsaWMgc3RhdGljIE1pbWVUeXBlRnJvbUZpbGVuYW1lKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgcmVnRXg6IFJlZ0V4cCA9IC8oPzpcXC4oW14uXSspKT8kLzsgLy8gcmVnZXggdG8gZmluZCBleHRlbnNpb25cclxuICAgIGNvbnN0IGV4dGVuc2lvbjogYW55ID0gcmVnRXguZXhlYyhmaWxlTmFtZSlbMV07XHJcbiAgICBzd2l0Y2ggKGV4dGVuc2lvbikge1xyXG4gICAgICBjYXNlICdqcGcnOlxyXG4gICAgICBjYXNlICdqcGVnJzpcclxuICAgICAgICByZXR1cm4gJ2ltYWdlL2pwZWcnO1xyXG4gICAgICBjYXNlICdwbmcnOlxyXG4gICAgICAgIHJldHVybiAnaW1hZ2UvcG5nJztcclxuICAgICAgY2FzZSAnYm1wJzpcclxuICAgICAgICByZXR1cm4gJ2ltYWdlL2JtcCc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEb3dubG9hZHMgdGhlIGdpdmVuIGZpbGUgdG8gdGhlIHVzZXJzIGRlZmF1bHQgZG93bmxvYWQgbG9jYXRpb24uXHJcbiAgICogQHBhcmFtIGZpbGVOYW1lIFdpdGggb3Igd2l0aG91dCBleHRlbnNpb25cclxuICAgKiBAcGFyYW0gY29udGVudCBGaWxlIGNvbnRlbnQgYXMgYSBzdHJpbmdcclxuICAgKiBAcGFyYW0gW21pbWVUeXBlID0gJ3RleHQvcGxhaW4nXVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGF0aWMgRG93bmxvYWRGaWxlKFxyXG4gICAgZmlsZU5hbWU6IHN0cmluZyxcclxuICAgIGNvbnRlbnQ6IHN0cmluZyxcclxuICAgIG1pbWVUeXBlOiBzdHJpbmcgPSAndGV4dC9wbGFpbidcclxuICApOiB2b2lkIHtcclxuICAgIGNvbnN0IGVsZW1lbnQ6IEhUTUxBbmNob3JFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCAnZGF0YTonICsgbWltZVR5cGUgKyAnO2NoYXJzZXQ9dXRmLTgsJyArIGVuY29kZVVSSUNvbXBvbmVudChjb250ZW50KSk7XHJcbiAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSk7XHJcblxyXG4gICAgZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50KTtcclxuXHJcbiAgICBlbGVtZW50LmNsaWNrKCk7XHJcblxyXG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50KTtcclxuICB9XHJcblxyXG4gIC8vIFJldHVybnMgdGhlIGNvbnRlbnRzIG9mIGdpdmVuIGZpbGUgYXMgYSB0ZXh0IHN0cmluZy5cclxuICBwdWJsaWMgc3RhdGljIFJlYWRBc1RleHQoZmlsZTogRmlsZSk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZTogRnVuY3Rpb24pID0+IHtcclxuICAgICAgY29uc3QgcmVhZGVyOiBGaWxlUmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgcmVhZGVyLnJlYWRBc1RleHQoZmlsZSk7XHJcbiAgICAgIHJlYWRlci5vbmxvYWRlbmQgPSAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChldmVudC50YXJnZXQucmVhZHlTdGF0ZSA9PT0gMikge1xyXG4gICAgICAgICAgcmVzb2x2ZShldmVudC50YXJnZXQucmVzdWx0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgR2V0RXh0ZW5zaW9uRnJvbURhdGFVcmkoZGF0YVVyaTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBkYXRhVXJpLnJlcGxhY2UoLyhkYXRhOmltYWdlXFwvKSguKj8pKDtiYXNlNjQuKikvZ2ksICckMicpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBDcmVhdGVEb3dubG9hZEZpbGVOYW1lRnJvbUJhc2U2NChkYXRhVXJpOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZXh0OiBzdHJpbmcgPSB0aGlzLkdldEV4dGVuc2lvbkZyb21EYXRhVXJpKGRhdGFVcmkpO1xyXG4gICAgcmV0dXJuICdwcmV2aWV3LicgKyBleHQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIERvd25sb2FkRnJvbURhdGFVcmkoZGF0YVVyaTogc3RyaW5nLCBmaWxlTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBsaW5rOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICBsaW5rLmRvd25sb2FkID0gZmlsZU5hbWU7XHJcbiAgICBsaW5rLmhyZWYgPSBkYXRhVXJpO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgIGxpbmsuY2xpY2soKTtcclxuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XHJcbiAgfVxyXG5cclxuICAvLyB0b2RvIHJlbW92ZSBvbmNlIENvbm5lY3RvciBkZWFscyB3aXRoIG1pbWV0eXBlcyBhbmQgdGhpcyBtZXRob2QgaXNuJ3QgdXNlZCBhbnltb3JlXHJcbiAgcHVibGljIHN0YXRpYyBEb2N1bWVudEJvZHlUb0RhdGFVcmkoZG9jdW1lbnRCb2R5OiBzdHJpbmcsIG1pbWVUeXBlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKCEhZG9jdW1lbnRCb2R5KSB7XHJcbiAgICAgIHJldHVybiAnZGF0YTonICsgbWltZVR5cGUgKyAnO2Jhc2U2NCwnICsgZG9jdW1lbnRCb2R5O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgRml4VW5pdHlVcmwodXJsKTogc3RyaW5nIHtcclxuICAgIGlmICh1cmwuaW5kZXhPZignX3dlYnBsYXllcicpID09PSAtMSkge1xyXG4gICAgICB1cmwgPSB1cmwuY29uY2F0KCdfd2VicGxheWVyLmlvbmUzZCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdXJsID0gdXJsLnJlcGxhY2UoJ193ZWJwbGF5ZXInLCAnX3dlYnBsYXllci5pb25lM2QnKTtcclxuICAgIH1cclxuICAgIGlmICghdXJsLmVuZHNXaXRoKCcuZ3onKSkge1xyXG4gICAgICB1cmwgPSB1cmwuY29uY2F0KCcuZ3onKTtcclxuICAgIH1cclxuICAgIHJldHVybiB1cmwucmVwbGFjZSgnLnVuaXR5M2QnLCAnJyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import * as THREE from 'three';
|
|
2
|
-
import { LinearSRGBColorSpace, Texture } from 'three';
|
|
3
|
-
// @dynamic
|
|
4
|
-
export class ImageUtils {
|
|
5
|
-
static CreateTextureFromBase64(id, base64, material, defaultFlip = false) {
|
|
6
|
-
return new Promise((resolve) => {
|
|
7
|
-
if (ImageUtils.textures.has(id)) {
|
|
8
|
-
resolve(ImageUtils.textures.get(id));
|
|
9
|
-
}
|
|
10
|
-
else {
|
|
11
|
-
if (!base64) {
|
|
12
|
-
resolve(new Texture());
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
const loader = new THREE.TextureLoader();
|
|
16
|
-
loader.load(base64, (texture) => {
|
|
17
|
-
texture.anisotropy = 16;
|
|
18
|
-
texture.wrapS = THREE.RepeatWrapping;
|
|
19
|
-
texture.wrapT = THREE.RepeatWrapping;
|
|
20
|
-
texture.repeat = new THREE.Vector2(material ? material.repeatX : 1, material ? material.repeatY : 1);
|
|
21
|
-
texture.flipY = defaultFlip; // sabina stoel gaat hierdoor kapot
|
|
22
|
-
texture.colorSpace = LinearSRGBColorSpace;
|
|
23
|
-
texture.needsUpdate = true;
|
|
24
|
-
ImageUtils.textures.set(id, texture);
|
|
25
|
-
resolve(texture);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
static getFixedImageFilepathUrl(imageFilepathUrl) {
|
|
32
|
-
return imageFilepathUrl.replace('/content/', '/content43/');
|
|
33
|
-
}
|
|
34
|
-
static getDocBodyWithMimeTypeDefinition(fileName, documentBody) {
|
|
35
|
-
if (documentBody === null) {
|
|
36
|
-
return documentBody;
|
|
37
|
-
}
|
|
38
|
-
const fileExtension = fileName.substr(fileName.lastIndexOf('.') + 1);
|
|
39
|
-
switch (fileExtension.toLowerCase()) {
|
|
40
|
-
case 'jpg':
|
|
41
|
-
case 'jpeg':
|
|
42
|
-
return 'data:image/jpg;base64,' + documentBody;
|
|
43
|
-
case 'png':
|
|
44
|
-
return 'data:image/png;base64,' + documentBody;
|
|
45
|
-
case 'gif':
|
|
46
|
-
return 'data:image/gif;base64,' + documentBody;
|
|
47
|
-
case 'bmp':
|
|
48
|
-
return 'data:image/bmp;base64,' + documentBody;
|
|
49
|
-
default:
|
|
50
|
-
return 'data:image/png;base64,' + documentBody;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
static ClearCache() {
|
|
54
|
-
ImageUtils.textures.forEach(value => {
|
|
55
|
-
value.dispose();
|
|
56
|
-
});
|
|
57
|
-
ImageUtils.textures.clear();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
ImageUtils.textures = new Map();
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25maWd1cmF0b3Ivc3JjL2xpYi91dGlscy9pbWFnZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsT0FBTyxFQUFDLE1BQU0sT0FBTyxDQUFDO0FBR3BELFdBQVc7QUFDWCxNQUFNLE9BQU8sVUFBVTtJQUlkLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxFQUFVLEVBQUUsTUFBYyxFQUFFLFFBQWtCLEVBQUUsY0FBdUIsS0FBSztRQUNoSCxPQUFPLElBQUksT0FBTyxDQUFnQixDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzVDLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQy9CLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ3RDO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ1gsT0FBTyxDQUFDLElBQUksT0FBTyxFQUFFLENBQUMsQ0FBQztpQkFDeEI7cUJBQU07b0JBQ0wsTUFBTSxNQUFNLEdBQXdCLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO29CQUM5RCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQXNCLEVBQUUsRUFBRTt3QkFDN0MsT0FBTyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7d0JBQ3hCLE9BQU8sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQzt3QkFDckMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO3dCQUNyQyxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUNyRyxPQUFPLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxDQUFDLG1DQUFtQzt3QkFDaEUsT0FBTyxDQUFDLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQzt3QkFDMUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7d0JBQzNCLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQzt3QkFDckMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUNuQixDQUFDLENBQUMsQ0FBQztpQkFDSjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLHdCQUF3QixDQUFDLGdCQUF3QjtRQUM3RCxPQUFPLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxRQUFnQixFQUFFLFlBQW9CO1FBQ25GLElBQUksWUFBWSxLQUFLLElBQUksRUFBRTtZQUN6QixPQUFPLFlBQVksQ0FBQztTQUNyQjtRQUNELE1BQU0sYUFBYSxHQUFXLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM3RSxRQUFRLGFBQWEsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNuQyxLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssTUFBTTtnQkFDVCxPQUFPLHdCQUF3QixHQUFHLFlBQVksQ0FBQztZQUNqRCxLQUFLLEtBQUs7Z0JBQ1IsT0FBTyx3QkFBd0IsR0FBRyxZQUFZLENBQUM7WUFDakQsS0FBSyxLQUFLO2dCQUNSLE9BQU8sd0JBQXdCLEdBQUcsWUFBWSxDQUFDO1lBQ2pELEtBQUssS0FBSztnQkFDUixPQUFPLHdCQUF3QixHQUFHLFlBQVksQ0FBQztZQUNqRDtnQkFDRSxPQUFPLHdCQUF3QixHQUFHLFlBQVksQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsVUFBVTtRQUN0QixVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7UUFDSCxVQUFVLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlCLENBQUM7O0FBeERhLG1CQUFRLEdBQStCLElBQUksR0FBRyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XHJcbmltcG9ydCB7TGluZWFyU1JHQkNvbG9yU3BhY2UsIFRleHR1cmV9IGZyb20gJ3RocmVlJztcclxuaW1wb3J0IHtNYXRlcmlhbH0gZnJvbSAnLi4vbW9kZWwvbWF0ZXJpYWwnO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEltYWdlVXRpbHMge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIHRleHR1cmVzOiBNYXA8c3RyaW5nLCBUSFJFRS5UZXh0dXJlPiA9IG5ldyBNYXAoKTtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBDcmVhdGVUZXh0dXJlRnJvbUJhc2U2NChpZDogc3RyaW5nLCBiYXNlNjQ6IHN0cmluZywgbWF0ZXJpYWw6IE1hdGVyaWFsLCBkZWZhdWx0RmxpcDogYm9vbGVhbiA9IGZhbHNlKTogUHJvbWlzZTxUSFJFRS5UZXh0dXJlPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8VEhSRUUuVGV4dHVyZT4oKHJlc29sdmUpID0+IHtcclxuICAgICAgaWYgKEltYWdlVXRpbHMudGV4dHVyZXMuaGFzKGlkKSkge1xyXG4gICAgICAgIHJlc29sdmUoSW1hZ2VVdGlscy50ZXh0dXJlcy5nZXQoaWQpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoIWJhc2U2NCkge1xyXG4gICAgICAgICAgcmVzb2x2ZShuZXcgVGV4dHVyZSgpKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgbG9hZGVyOiBUSFJFRS5UZXh0dXJlTG9hZGVyID0gbmV3IFRIUkVFLlRleHR1cmVMb2FkZXIoKTtcclxuICAgICAgICAgIGxvYWRlci5sb2FkKGJhc2U2NCwgKHRleHR1cmU6IFRIUkVFLlRleHR1cmUpID0+IHtcclxuICAgICAgICAgICAgdGV4dHVyZS5hbmlzb3Ryb3B5ID0gMTY7XHJcbiAgICAgICAgICAgIHRleHR1cmUud3JhcFMgPSBUSFJFRS5SZXBlYXRXcmFwcGluZztcclxuICAgICAgICAgICAgdGV4dHVyZS53cmFwVCA9IFRIUkVFLlJlcGVhdFdyYXBwaW5nO1xyXG4gICAgICAgICAgICB0ZXh0dXJlLnJlcGVhdCA9IG5ldyBUSFJFRS5WZWN0b3IyKG1hdGVyaWFsID8gbWF0ZXJpYWwucmVwZWF0WCA6IDEsIG1hdGVyaWFsID8gbWF0ZXJpYWwucmVwZWF0WSA6IDEpO1xyXG4gICAgICAgICAgICB0ZXh0dXJlLmZsaXBZID0gZGVmYXVsdEZsaXA7IC8vIHNhYmluYSBzdG9lbCBnYWF0IGhpZXJkb29yIGthcG90XHJcbiAgICAgICAgICAgIHRleHR1cmUuY29sb3JTcGFjZSA9IExpbmVhclNSR0JDb2xvclNwYWNlO1xyXG4gICAgICAgICAgICB0ZXh0dXJlLm5lZWRzVXBkYXRlID0gdHJ1ZTtcclxuICAgICAgICAgICAgSW1hZ2VVdGlscy50ZXh0dXJlcy5zZXQoaWQsIHRleHR1cmUpO1xyXG4gICAgICAgICAgICByZXNvbHZlKHRleHR1cmUpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Rml4ZWRJbWFnZUZpbGVwYXRoVXJsKGltYWdlRmlsZXBhdGhVcmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaW1hZ2VGaWxlcGF0aFVybC5yZXBsYWNlKCcvY29udGVudC8nLCAnL2NvbnRlbnQ0My8nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0RG9jQm9keVdpdGhNaW1lVHlwZURlZmluaXRpb24oZmlsZU5hbWU6IHN0cmluZywgZG9jdW1lbnRCb2R5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKGRvY3VtZW50Qm9keSA9PT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gZG9jdW1lbnRCb2R5O1xyXG4gICAgfVxyXG4gICAgY29uc3QgZmlsZUV4dGVuc2lvbjogc3RyaW5nID0gZmlsZU5hbWUuc3Vic3RyKGZpbGVOYW1lLmxhc3RJbmRleE9mKCcuJykgKyAxKTtcclxuICAgIHN3aXRjaCAoZmlsZUV4dGVuc2lvbi50b0xvd2VyQ2FzZSgpKSB7XHJcbiAgICAgIGNhc2UgJ2pwZyc6XHJcbiAgICAgIGNhc2UgJ2pwZWcnOlxyXG4gICAgICAgIHJldHVybiAnZGF0YTppbWFnZS9qcGc7YmFzZTY0LCcgKyBkb2N1bWVudEJvZHk7XHJcbiAgICAgIGNhc2UgJ3BuZyc6XHJcbiAgICAgICAgcmV0dXJuICdkYXRhOmltYWdlL3BuZztiYXNlNjQsJyArIGRvY3VtZW50Qm9keTtcclxuICAgICAgY2FzZSAnZ2lmJzpcclxuICAgICAgICByZXR1cm4gJ2RhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCwnICsgZG9jdW1lbnRCb2R5O1xyXG4gICAgICBjYXNlICdibXAnOlxyXG4gICAgICAgIHJldHVybiAnZGF0YTppbWFnZS9ibXA7YmFzZTY0LCcgKyBkb2N1bWVudEJvZHk7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICdkYXRhOmltYWdlL3BuZztiYXNlNjQsJyArIGRvY3VtZW50Qm9keTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgQ2xlYXJDYWNoZSgpOiB2b2lkIHtcclxuICAgIEltYWdlVXRpbHMudGV4dHVyZXMuZm9yRWFjaCh2YWx1ZSA9PiB7XHJcbiAgICAgIHZhbHVlLmRpc3Bvc2UoKTtcclxuICAgIH0pO1xyXG4gICAgSW1hZ2VVdGlscy50ZXh0dXJlcy5jbGVhcigpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|