@colijnit/homedecorator 258.1.1 → 258.1.2

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.
Files changed (92) hide show
  1. package/app/core/enum/icon.enum.d.ts +1 -0
  2. package/app/core/enum/message-type.enum.d.ts +2 -1
  3. package/app/core/interface/message-with-payload.interface.d.ts +1 -0
  4. package/app/core/model/homedecorator-settings-options.d.ts +1 -1
  5. package/app/core/model/homedecorator-settings.d.ts +3 -0
  6. package/app/core/service/3dm-api.d.ts +2 -2
  7. package/app/core/service/homedecorator-app-event.service.d.ts +1 -0
  8. package/app/core/service/homedecorator-connector-adapter.service.d.ts +9 -1
  9. package/app/core/service/homedecorator-connector.service.d.ts +15 -2
  10. package/app/core/service/utils.service.d.ts +1 -1
  11. package/app/core/utils/object.utils.d.ts +2 -0
  12. package/app/homedecorator.module.d.ts +2 -1
  13. package/app/plugins/core3d/service/wall-measurements.service.d.ts +2 -0
  14. package/app/plugins/model-uploader/model-previewer/model-preview.component.d.ts +3 -0
  15. package/app/plugins/product-catalog/product-catalog/product-catalog.component.d.ts +2 -0
  16. package/app/plugins/product-configurator/product-configurator-selector-list-of-values.component.scss +28 -0
  17. package/app/plugins/product-configurator/product-configurator-selector-option-button.component.d.ts +19 -0
  18. package/app/plugins/product-configurator/product-configurator-selector-option-button.component.scss +38 -0
  19. package/app/plugins/product-configurator/product-configurator-selector-option-dropdown.component.d.ts +20 -0
  20. package/app/plugins/product-configurator/product-configurator-selector-option-dropdown.component.scss +0 -0
  21. package/app/plugins/product-configurator/product-configurator-selector-option-list-of-values.component.d.ts +19 -0
  22. package/app/plugins/product-configurator/product-configurator-selector-option-tile.component.scss +56 -0
  23. package/app/plugins/product-configurator/product-configurator-selector-option-tile.compontent.d.ts +20 -0
  24. package/app/plugins/product-configurator/product-configurator-selector.component.d.ts +26 -0
  25. package/app/plugins/product-configurator/product-configurator-selector.component.scss +46 -0
  26. package/app/plugins/product-configurator/product-configurator.component.d.ts +38 -0
  27. package/app/plugins/product-configurator/product-configurator.component.scss +35 -0
  28. package/app/plugins/product-configurator/product-configurator.module.d.ts +18 -0
  29. package/app/plugins/product-configurator/template_variables.scss +13 -0
  30. package/app/plugins/render/model/blender-render-settings.d.ts +10 -0
  31. package/app/plugins/render/model/blender-scene-settings.d.ts +18 -0
  32. package/app/plugins/render/render-controls/render-controls.component.d.ts +19 -7
  33. package/app/plugins/render/service/new-render.service.d.ts +21 -4
  34. package/app/plugins/room-planner/components/floor-catalog/floor-catalog.component.scss +1 -1
  35. package/app/plugins/threedselector/threedselector/service/build-furniture.service.d.ts +5 -0
  36. package/app/plugins/threedselector/threedselector/threedselector.component.d.ts +4 -0
  37. package/app/plugins/threedselector/threedselector/threedselector.component.scss +17 -0
  38. package/app/plugins/threedselector/threedselector.module.d.ts +2 -1
  39. package/app/plugins/toolbar/draw-dialog/draw-dialog.component.scss +1 -1
  40. package/assets/icons/circle_regular.svg +0 -0
  41. package/bundles/colijnit-homedecorator.umd.js +1986 -835
  42. package/bundles/colijnit-homedecorator.umd.js.map +1 -1
  43. package/esm2015/app/app.version.js +3 -3
  44. package/esm2015/app/core/enum/icon.enum.js +2 -1
  45. package/esm2015/app/core/enum/message-type.enum.js +2 -1
  46. package/esm2015/app/core/interface/message-with-payload.interface.js +1 -1
  47. package/esm2015/app/core/model/homedecorator-settings-options.js +2 -2
  48. package/esm2015/app/core/model/homedecorator-settings.js +3 -1
  49. package/esm2015/app/core/model/icon.js +2 -1
  50. package/esm2015/app/core/service/3dm-api.js +15 -22
  51. package/esm2015/app/core/service/homedecorator-app-event.service.js +3 -2
  52. package/esm2015/app/core/service/homedecorator-connector-adapter.service.js +65 -7
  53. package/esm2015/app/core/service/homedecorator-connector.service.js +150 -6
  54. package/esm2015/app/core/service/homedecorator-settings.service.js +8 -1
  55. package/esm2015/app/core/service/utils.service.js +116 -93
  56. package/esm2015/app/core/utils/object.utils.js +13 -1
  57. package/esm2015/app/homedecorator.component.js +1 -2
  58. package/esm2015/app/homedecorator.module.js +8 -4
  59. package/esm2015/app/plugins/core3d/core3d/core3d.component.js +2 -2
  60. package/esm2015/app/plugins/core3d/service/wall-measurements.service.js +7 -1
  61. package/esm2015/app/plugins/model-uploader/model-previewer/model-preview.component.js +98 -50
  62. package/esm2015/app/plugins/model-uploader/model-uploader/model-uploader.component.js +4 -4
  63. package/esm2015/app/plugins/product-catalog/product-catalog/product-catalog.component.js +21 -11
  64. package/esm2015/app/plugins/product-configurator/product-configurator-selector-option-button.component.js +67 -0
  65. package/esm2015/app/plugins/product-configurator/product-configurator-selector-option-dropdown.component.js +57 -0
  66. package/esm2015/app/plugins/product-configurator/product-configurator-selector-option-list-of-values.component.js +75 -0
  67. package/esm2015/app/plugins/product-configurator/product-configurator-selector-option-tile.compontent.js +90 -0
  68. package/esm2015/app/plugins/product-configurator/product-configurator-selector.component.js +253 -0
  69. package/esm2015/app/plugins/product-configurator/product-configurator.component.js +151 -0
  70. package/esm2015/app/plugins/product-configurator/product-configurator.module.js +115 -0
  71. package/esm2015/app/plugins/render/model/blender-render-settings.js +3 -0
  72. package/esm2015/app/plugins/render/model/blender-scene-settings.js +10 -0
  73. package/esm2015/app/plugins/render/model/render-parameters.js +3 -3
  74. package/esm2015/app/plugins/render/render-controls/render-controls.component.js +532 -446
  75. package/esm2015/app/plugins/render/render-dialog/render-dialog.component.js +6 -40
  76. package/esm2015/app/plugins/render/service/new-render.service.js +212 -44
  77. package/esm2015/app/plugins/render/service/render.service.js +6 -9
  78. package/esm2015/app/plugins/room-planner/components/floor-catalog/floor-catalog.component.js +1 -1
  79. package/esm2015/app/plugins/room-planner/components/texture-picker/texture-picker.component.js +1 -1
  80. package/esm2015/app/plugins/room-planner/room-planner/room-planner.component.js +12 -10
  81. package/esm2015/app/plugins/threedselector/element-buttons/element-buttons.component.js +2 -2
  82. package/esm2015/app/plugins/threedselector/threedselector/service/build-furniture.service.js +55 -1
  83. package/esm2015/app/plugins/threedselector/threedselector/service/load-furniture.service.js +3 -3
  84. package/esm2015/app/plugins/threedselector/threedselector/threedselector.component.js +64 -15
  85. package/esm2015/app/plugins/threedselector/threedselector/utils/asset.utils.js +1 -1
  86. package/esm2015/app/plugins/threedselector/threedselector.module.js +8 -4
  87. package/esm2015/app/plugins/toolbar/draw-dialog/draw-dialog.component.js +1 -1
  88. package/esm2015/app/shared/category-library/category-library.component.js +1 -1
  89. package/fesm2015/colijnit-homedecorator.js +2522 -1149
  90. package/fesm2015/colijnit-homedecorator.js.map +1 -1
  91. package/package.json +4 -4
  92. package/styles.scss +1 -1
@@ -0,0 +1,35 @@
1
+ :host.floating ::ng-deep .product-configurator-container {
2
+ position: absolute;
3
+ right: 0;
4
+ max-height: calc(100vh - 120px);
5
+ }
6
+
7
+ :host:not(.custom-dimensions).floating ::ng-deep .product-configurator-container {
8
+ top: 64px;
9
+ height: calc(100vh - 184px);
10
+ padding: 5px 10px 10px 10px;
11
+ border-radius: 10px;
12
+ right: 10px;
13
+ width: 505px;
14
+ background: #fff;
15
+ }
16
+
17
+ .product-configurator-header {
18
+ display: flex;
19
+ justify-content: space-between;
20
+ box-sizing: border-box;
21
+ padding-bottom: 10px;
22
+ .product-configurator-close {
23
+ cursor: pointer;
24
+ }
25
+ }
26
+
27
+ .product-configurator-details {
28
+ max-height: calc(100vh - 360px);
29
+ overflow-y: scroll;
30
+ }
31
+
32
+ .product-configurator-summary {
33
+ box-sizing: border-box;
34
+ padding: 10px 0;
35
+ }
@@ -0,0 +1,18 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./product-configurator.component";
3
+ import * as i2 from "./product-configurator-selector.component";
4
+ import * as i3 from "./product-configurator-selector-option-button.component";
5
+ import * as i4 from "./product-configurator-selector-option-list-of-values.component";
6
+ import * as i5 from "./product-configurator-selector-option-tile.compontent";
7
+ import * as i6 from "./product-configurator-selector-option-dropdown.component";
8
+ import * as i7 from "../../core/core.module";
9
+ import * as i8 from "@angular/common";
10
+ import * as i9 from "@angular/material/icon";
11
+ import * as i10 from "@angular/material/button";
12
+ import * as i11 from "@colijnit/corecomponents";
13
+ import * as i12 from "@angular/forms";
14
+ export declare class ProductConfiguratorModule {
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductConfiguratorModule, never>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ProductConfiguratorModule, [typeof i1.ProductConfiguratorComponent, typeof i2.ProductConfiguratorSelectorComponent, typeof i3.ProductConfiguratorSelectorOptionButtonComponent, typeof i4.ProductConfiguratorOptionListOfValuesComponent, typeof i5.ProductConfiguratorSelectorOptionTileComponent, typeof i6.ProductConfiguratorSelectorOptionDropDownComponent], [typeof i7.CoreModule, typeof i8.CommonModule, typeof i9.MatIconModule, typeof i10.MatButtonModule, typeof i11.CardModule, typeof i11.SlideoutModule, typeof i11.SummaryLineModule, typeof i11.PriceDisplayPipeModule, typeof i11.ButtonModule, typeof i11.HtmlHeaderModule, typeof i11.InputTextModule, typeof i11.InputTextChipsModule, typeof i11.IconModule, typeof i12.FormsModule], [typeof i1.ProductConfiguratorComponent, typeof i2.ProductConfiguratorSelectorComponent, typeof i3.ProductConfiguratorSelectorOptionButtonComponent, typeof i4.ProductConfiguratorOptionListOfValuesComponent, typeof i5.ProductConfiguratorSelectorOptionTileComponent, typeof i6.ProductConfiguratorSelectorOptionDropDownComponent]>;
17
+ static ɵinj: i0.ɵɵInjectorDeclaration<ProductConfiguratorModule>;
18
+ }
@@ -0,0 +1,13 @@
1
+ // Tiles
2
+ $border-color: #eee;
3
+ $default-border-radius: 3px;
4
+ $background-color: #eee;
5
+ $default-padding: 5px;
6
+ $font-size: 14px;
7
+ $font-size-small: 12px;
8
+
9
+ // checkmarks and icons
10
+ $checked-icon-color: #da9803;
11
+ $small-icon-height: 20px;
12
+ $small-icon-width: 20px;
13
+
@@ -0,0 +1,10 @@
1
+ import { BlenderSceneSetting } from './blender-scene-settings';
2
+ export declare class BlenderRenderSettings {
3
+ height: number;
4
+ width: number;
5
+ sceneAsset: BlenderSceneSetting;
6
+ hdriIntensity: number;
7
+ hdriRotation: number;
8
+ lightingExposure: number;
9
+ allowCulling: boolean;
10
+ }
@@ -0,0 +1,18 @@
1
+ export declare class BlenderSceneSettings {
2
+ scenes: BlenderSceneSetting[];
3
+ }
4
+ export declare class BlenderSceneSetting {
5
+ name: string;
6
+ multiSceneRender: boolean;
7
+ primarySceneName: string;
8
+ secondarySceneName?: string;
9
+ defaultSceneName?: string;
10
+ hdriIntensity: number;
11
+ hdriRotation: number;
12
+ lightingExposure: number;
13
+ sceneType: BlenderSceneType;
14
+ }
15
+ export declare enum BlenderSceneType {
16
+ Product = "product",
17
+ Room = "room"
18
+ }
@@ -1,4 +1,4 @@
1
- import { ElementRef } from '@angular/core';
1
+ import { ElementRef, OnInit } from '@angular/core';
2
2
  import { MatDialog } from '@angular/material/dialog';
3
3
  import { ViewMode } from '../../../core/enum/view-mode.enum';
4
4
  import { RenderStatus } from '../enum/render-status';
@@ -14,8 +14,11 @@ import { NewRenderService } from '../service/new-render.service';
14
14
  import { UtilsService } from '../../../core/service/utils.service';
15
15
  import { IconEnum } from '../../../core/enum/icon.enum';
16
16
  import { HomedecoratorIconCacheService } from '../../../core/service/homedecorator-icon-cache.service';
17
+ import { RoomService } from '../../room-planner/components/floorplanner/service/room.service';
18
+ import { WallMeasurementsService } from '../../core3d/service/wall-measurements.service';
19
+ import { BlenderSceneSetting } from '../model/blender-scene-settings';
17
20
  import * as i0 from "@angular/core";
18
- export declare class RenderControlsComponent {
21
+ export declare class RenderControlsComponent implements OnInit {
19
22
  renderService: RenderService;
20
23
  messageService: MessageBusService;
21
24
  viewModeService: ViewModeService;
@@ -28,22 +31,28 @@ export declare class RenderControlsComponent {
28
31
  private _settingsService;
29
32
  private _newRenderService;
30
33
  private _utilsService;
34
+ private _roomService;
35
+ private _wallMeasurementsService;
31
36
  readonly icons: typeof IconEnum;
32
37
  blenderPreviewRender: string;
33
38
  hdriIntensity: number;
34
39
  hdriRotation: number;
35
40
  lightingExposure: number;
36
41
  showRenderSettings: boolean;
42
+ selectedRenderScene: BlenderSceneSetting;
43
+ sceneList: BlenderSceneSetting[];
44
+ hasError: boolean;
45
+ errorText: string;
46
+ imageRenderSource: any;
47
+ inPictureMode: boolean;
48
+ showCullingErrorDialog: boolean;
37
49
  private _subs;
38
- constructor(renderService: RenderService, messageService: MessageBusService, viewModeService: ViewModeService, settingsService: HomedecoratorSettingsService, iconService: HomedecoratorIconCacheService, _dialog: MatDialog, _sceneService: SceneService, _cameraService: CameraService, _configurationService: ConfigurationService, _settingsService: HomedecoratorSettingsService, _newRenderService: NewRenderService, _utilsService: UtilsService);
50
+ constructor(renderService: RenderService, messageService: MessageBusService, viewModeService: ViewModeService, settingsService: HomedecoratorSettingsService, iconService: HomedecoratorIconCacheService, _dialog: MatDialog, _sceneService: SceneService, _cameraService: CameraService, _configurationService: ConfigurationService, _settingsService: HomedecoratorSettingsService, _newRenderService: NewRenderService, _utilsService: UtilsService, _roomService: RoomService, _wallMeasurementsService: WallMeasurementsService);
51
+ ngOnInit(): void;
39
52
  get disablePictureButton(): boolean;
40
53
  readonly viewModes: typeof ViewMode;
41
54
  readonly renderStatus: typeof RenderStatus;
42
55
  renderButton: ElementRef;
43
- hasError: boolean;
44
- errorText: string;
45
- imageRenderSource: any;
46
- inPictureMode: boolean;
47
56
  readonly renderModes: typeof RenderModes;
48
57
  showRenderForm(event: MouseEvent): void;
49
58
  startRenderingRoom(): Promise<void>;
@@ -53,8 +62,11 @@ export declare class RenderControlsComponent {
53
62
  getPreviewRender(): void;
54
63
  showPreview(image: string): void;
55
64
  toggleRenderSettings(): void;
65
+ updateBlenderSceneSettings(event: any): void;
56
66
  validateRenderPosition(): void;
67
+ getRenderScenesFromSettings(): void;
57
68
  private _getObjectsByName;
69
+ private _allowCulling;
58
70
  static ɵfac: i0.ɵɵFactoryDeclaration<RenderControlsComponent, never>;
59
71
  static ɵcmp: i0.ɵɵComponentDeclaration<RenderControlsComponent, "rp-render-controls", never, {}, {}, never, never>;
60
72
  }
@@ -1,4 +1,4 @@
1
- import { OnDestroy } from '@angular/core';
1
+ import { EventEmitter, OnDestroy } from '@angular/core';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { RenderQueueItem } from '../model/render-queue-item';
4
4
  import { HomedecoratorSettingsService } from '../../../core/service/homedecorator-settings.service';
@@ -15,6 +15,9 @@ import { RoomService } from '../../room-planner/components/floorplanner/service/
15
15
  import { FloorService } from '../../core3d/service/floor.service';
16
16
  import { LoadFurnitureService } from '../../threedselector/threedselector/service/load-furniture.service';
17
17
  import { UtilsService } from '../../../core/service/utils.service';
18
+ import { ApiServiceModule } from '../../../core/service/3dm-api';
19
+ import { PresetsService } from '../../../core/service/presets.service';
20
+ import { HomedecoratorAppEventService } from '../../../core/service/homedecorator-app-event.service';
18
21
  import * as i0 from "@angular/core";
19
22
  export declare class NewRenderService implements OnDestroy {
20
23
  messageService: MessageBusService;
@@ -32,7 +35,11 @@ export declare class NewRenderService implements OnDestroy {
32
35
  private _floorService;
33
36
  private _loadFurnitureService;
34
37
  private _utilsService;
38
+ private _presetService;
39
+ private _apiServiceModule;
40
+ private _appEventService;
35
41
  renderImageChanged: BehaviorSubject<string>;
42
+ blenderRenderStarted: EventEmitter<string>;
36
43
  renderUpdateImageChanged: BehaviorSubject<{
37
44
  image: string;
38
45
  progress: number;
@@ -40,18 +47,25 @@ export declare class NewRenderService implements OnDestroy {
40
47
  }>;
41
48
  renderRoomImageChanged: BehaviorSubject<string>;
42
49
  standAloneCameraMatrix: number[];
50
+ standAloneCameraFixedMatrix: number[];
43
51
  currentQueueRenderItem: RenderQueueItem;
44
52
  renderedRoomImages: string[];
53
+ clientWidth: number;
54
+ clientHeight: number;
45
55
  private _subs;
46
- constructor(messageService: MessageBusService, _settingsService: HomedecoratorSettingsService, _buildFurnitureService: BuildFurnitureService, _cameraService: CameraService, _sceneService: SceneService, _ione: HomedecoratorConnectorService, _ioneConnectorAdapter: HomedecoratorConnectorAdapterService, _threedSelectorService: ThreedselectorService, _toastService: ToastService, _messageBusService: MessageBusService, _googleTagManager: GoogleTagManagerService, _roomService: RoomService, _floorService: FloorService, _loadFurnitureService: LoadFurnitureService, _utilsService: UtilsService);
56
+ constructor(messageService: MessageBusService, _settingsService: HomedecoratorSettingsService, _buildFurnitureService: BuildFurnitureService, _cameraService: CameraService, _sceneService: SceneService, _ione: HomedecoratorConnectorService, _ioneConnectorAdapter: HomedecoratorConnectorAdapterService, _threedSelectorService: ThreedselectorService, _toastService: ToastService, _messageBusService: MessageBusService, _googleTagManager: GoogleTagManagerService, _roomService: RoomService, _floorService: FloorService, _loadFurnitureService: LoadFurnitureService, _utilsService: UtilsService, _presetService: PresetsService, _apiServiceModule: ApiServiceModule, _appEventService: HomedecoratorAppEventService);
47
57
  ngOnDestroy(): void;
48
58
  procesRenderFile(file: any): void;
49
- forceRenderImage(): void;
50
- renderImage(): void;
59
+ forceRenderImage(optionalRenderParameters?: any): void;
60
+ renderImage(optionalRenderParameters?: any): void;
51
61
  renderRoom(size: any): Promise<void>;
62
+ getNewGlbFromServer(): void;
52
63
  private _exportToGlb;
53
64
  private _getNewRenderImage;
65
+ private _createRenderFromJson;
66
+ private _getDataForJsonRender;
54
67
  private _handleAjaxRender;
68
+ private _handleAjaxGlb;
55
69
  private _handleWebSocketRender;
56
70
  private _handleWebSocketRoomRender;
57
71
  private _showPreviewImage;
@@ -59,6 +73,9 @@ export declare class NewRenderService implements OnDestroy {
59
73
  private _getSceneRenderSettings;
60
74
  private _getDataForRoomRender;
61
75
  private _arrayBufferToBase64;
76
+ private _getRenderWidth;
77
+ private _getRenderHeight;
78
+ private _useTransparency;
62
79
  static ɵfac: i0.ɵɵFactoryDeclaration<NewRenderService, never>;
63
80
  static ɵprov: i0.ɵɵInjectableDeclaration<NewRenderService>;
64
81
  }
@@ -178,7 +178,7 @@ $input-border-color: #9FA9B4;
178
178
 
179
179
  .floor-detail-download {
180
180
  display: flex;
181
- justify-content: end;
181
+ justify-content: flex-end;
182
182
  button {
183
183
  max-width: 150px;
184
184
  }
@@ -37,6 +37,7 @@ import { FloorPatternService } from '../../../core3d/service/floor-pattern.servi
37
37
  import { FloorTileIntersectionService } from '../../../core3d/service/floor-tile-intersection.service';
38
38
  import { HomedecoratorConnectorAdapterService } from '../../../../core/service/homedecorator-connector-adapter.service';
39
39
  import { OutlineService } from '../../../core3d/service/outline.service';
40
+ import { SelectorStructure } from '@colijnit/configuratorapi/build/model/selector-structure.bo';
40
41
  import * as i0 from "@angular/core";
41
42
  export interface ConfiguringModeChangeInterface {
42
43
  metadata: Metadata;
@@ -105,6 +106,7 @@ export declare class BuildFurnitureService implements OnDestroy {
105
106
  private _genericSelection;
106
107
  private _subs;
107
108
  private _answerSelected;
109
+ private _selectionsSelected;
108
110
  private _furnitureConfigurations;
109
111
  constructor(_dialog: MatDialog, _iOne: HomedecoratorConnectorService, _threedSelectorService: ThreedselectorService, _collisionManager: CollisionManagerService, _messageBus: MessageBusService, _dictionaryService: HomedecoratorDictionaryService, _hudService: HudService, _sceneService: SceneService, _cameraService: CameraService, _sceneEventService: SceneEventService, _appEventService: HomedecoratorAppEventService, _presetService: PresetsService, _itemService: ItemService, _elementService: ElementService, _permanentStoreService: PermanentStoreService, _googleTagManager: GoogleTagManagerService, _settingsService: HomedecoratorSettingsService, _utilsService: UtilsService, _variationService: VariationService, _appStateService: AppStateService, _errorService: ErrorService, _itemGroupService: ItemGroupService, _variationCacheService: VariationCacheService, _resizeService: ResizeService, _viewModeService: ViewModeService, _floorService: FloorService, _floorPatternService: FloorPatternService, _floorTileIntersectionService: FloorTileIntersectionService, _connectorAdapterService: HomedecoratorConnectorAdapterService, _outlineService: OutlineService);
110
112
  ngOnDestroy(): void;
@@ -144,11 +146,13 @@ export declare class BuildFurnitureService implements OnDestroy {
144
146
  private _handleSelectionsReceived;
145
147
  private _handleConnectionReset;
146
148
  private _handleAnswerSelected;
149
+ private _handleSelectionSelected;
147
150
  cancelAnswer(metadata: Metadata, rebuild?: boolean, getAnswers?: boolean): Promise<void>;
148
151
  selectSelection(selection: Selection, metadata: Metadata, forceBackToNode?: boolean, after?: boolean, connector?: string): Promise<void>;
149
152
  deleteSelection(selection: Selection, metadata: Metadata): Promise<void>;
150
153
  replaceSelection(selection: Selection, metadata: Metadata): Promise<void>;
151
154
  selectAnswer(answer: Answer, input: string, metadata: Metadata): Promise<void>;
155
+ selectSelectionAsAnswer(chosenOption: SelectorStructure, metadata: Metadata): Promise<void>;
152
156
  private _getActiveFurniture;
153
157
  private _linkSelectionsAndDecos;
154
158
  private _createConfigurableItem;
@@ -195,6 +199,7 @@ export declare class BuildFurnitureService implements OnDestroy {
195
199
  private _showWarning;
196
200
  private _prepareStandAlone;
197
201
  private _preloadMaterial;
202
+ private _preloadMaterialBySelection;
198
203
  static ɵfac: i0.ɵɵFactoryDeclaration<BuildFurnitureService, never>;
199
204
  static ɵprov: i0.ɵɵInjectableDeclaration<BuildFurnitureService>;
200
205
  }
@@ -99,6 +99,7 @@ export declare class ThreedselectorComponent implements OnInit, OnDestroy {
99
99
  editAddButtons: CustomButton[];
100
100
  editCustomizeButton: CustomButton[];
101
101
  resizeButtons: CustomButton[];
102
+ animateEditAddButtons: boolean;
102
103
  selectedElementPosition: Vector2;
103
104
  showElementToolbar: boolean;
104
105
  showLiteSelector: boolean;
@@ -117,6 +118,7 @@ export declare class ThreedselectorComponent implements OnInit, OnDestroy {
117
118
  showLoader: boolean;
118
119
  showProgressBar: boolean;
119
120
  showProgressText: boolean;
121
+ showFullConfiguration: boolean;
120
122
  private _selectedElementObject;
121
123
  private _skuAlreadySet;
122
124
  private _itemsFromScratch;
@@ -158,6 +160,7 @@ export declare class ThreedselectorComponent implements OnInit, OnDestroy {
158
160
  private _resetSelectedElement;
159
161
  private _handleRender;
160
162
  private _selectedElementToggle;
163
+ private _showPlusButtonsBriefly;
161
164
  private _handleBuildFinished;
162
165
  private _resetElementPosition;
163
166
  private _removeAllButtons;
@@ -193,6 +196,7 @@ export declare class ThreedselectorComponent implements OnInit, OnDestroy {
193
196
  private _addModelDialogToolbar;
194
197
  private _showWarning;
195
198
  private _addToSceneGTM;
199
+ private _setTemplateType;
196
200
  static ɵfac: i0.ɵɵFactoryDeclaration<ThreedselectorComponent, never>;
197
201
  static ɵcmp: i0.ɵɵComponentDeclaration<ThreedselectorComponent, "rp-threedselector", never, { "selections": "selections"; }, { "customizeButtonClicked": "customizeButtonClicked"; }, never, never>;
198
202
  }
@@ -9,6 +9,17 @@
9
9
  height: 100%;
10
10
  overflow: hidden;
11
11
  /*font-family: Arial, Helvetica, sans-serif;*/
12
+
13
+ .rp-element-buttons {
14
+ &.animate {
15
+ ::ng-deep .element-add-button {
16
+ animation-name: pulse-add-buttons;
17
+ animation-duration: 400ms;
18
+ animation-iteration-count: 6;
19
+ animation-direction: alternate;
20
+ }
21
+ }
22
+ }
12
23
  }
13
24
 
14
25
  :host > * {
@@ -137,3 +148,9 @@
137
148
  background: #da9803;
138
149
  transition: width 0.3s;
139
150
  }
151
+
152
+ @keyframes pulse-add-buttons {
153
+ 50% {
154
+ box-shadow: 0 0 20px hsl(12, 100%, 60%);
155
+ }
156
+ }
@@ -24,8 +24,9 @@ import * as i22 from "../../shared/error-dialog/error-dialog.module";
24
24
  import * as i23 from "../../shared/model-dialog/model-dialog.module";
25
25
  import * as i24 from "../../shared/export-dialog/export-dialog.module";
26
26
  import * as i25 from "../../shared/camera-settings-dialog/camera-settings-dialog.module";
27
+ import * as i26 from "../product-configurator/product-configurator.module";
27
28
  export declare class ThreedselectorModule {
28
29
  static ɵfac: i0.ɵɵFactoryDeclaration<ThreedselectorModule, never>;
29
- static ɵmod: i0.ɵɵNgModuleDeclaration<ThreedselectorModule, [typeof i1.ThreedselectorComponent, typeof i2.ElementToolbarComponent, typeof i3.ElementButtonsComponent, typeof i4.ElementSliderComponent], [typeof i5.CommonModule, typeof i6.FormsModule, typeof i7.MatButtonModule, typeof i8.MatButtonToggleModule, typeof i9.MatSidenavModule, typeof i10.MatCardModule, typeof i11.MatSliderModule, typeof i12.MatSlideToggleModule, typeof i13.MatGridListModule, typeof i14.MatIconModule, typeof i15.MatTabsModule, typeof i16.Core3dModule, typeof i17.CoreModule, typeof i18.SlideoutModule, typeof i18.SummaryLineModule, typeof i18.CardModule, typeof i19.LiteSelectorModule, typeof i18.IconModule, typeof i20.ToolbarIconModule, typeof i21.InfoDialogModule, typeof i22.ErrorDialogModule, typeof i23.ModelDialogModule, typeof i24.ExportDialogModule, typeof i25.CameraSettingsDialogModule], [typeof i3.ElementButtonsComponent, typeof i1.ThreedselectorComponent]>;
30
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ThreedselectorModule, [typeof i1.ThreedselectorComponent, typeof i2.ElementToolbarComponent, typeof i3.ElementButtonsComponent, typeof i4.ElementSliderComponent], [typeof i5.CommonModule, typeof i6.FormsModule, typeof i7.MatButtonModule, typeof i8.MatButtonToggleModule, typeof i9.MatSidenavModule, typeof i10.MatCardModule, typeof i11.MatSliderModule, typeof i12.MatSlideToggleModule, typeof i13.MatGridListModule, typeof i14.MatIconModule, typeof i15.MatTabsModule, typeof i16.Core3dModule, typeof i17.CoreModule, typeof i18.SlideoutModule, typeof i18.SummaryLineModule, typeof i18.CardModule, typeof i19.LiteSelectorModule, typeof i18.IconModule, typeof i20.ToolbarIconModule, typeof i21.InfoDialogModule, typeof i22.ErrorDialogModule, typeof i23.ModelDialogModule, typeof i24.ExportDialogModule, typeof i25.CameraSettingsDialogModule, typeof i26.ProductConfiguratorModule], [typeof i3.ElementButtonsComponent, typeof i1.ThreedselectorComponent]>;
30
31
  static ɵinj: i0.ɵɵInjectorDeclaration<ThreedselectorModule>;
31
32
  }
@@ -47,7 +47,7 @@ button {
47
47
  .modal-footer {
48
48
  display: flex;
49
49
  justify-content: space-between;
50
- align-items: end;
50
+ align-items: flex-end;
51
51
  margin-top: 30px;
52
52
  }
53
53
 
File without changes