@colijnit/homedecorator 261.20.4 → 261.20.6

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/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnDestroy, OnInit, TemplateRef, ChangeDetectorRef, ElementRef, PipeTransform, ViewContainerRef, ComponentFactoryResolver, AfterViewInit, EventEmitter, OnChanges, SimpleChanges, Injector } from '@angular/core';
2
+ import { OnDestroy, OnInit, TemplateRef, ChangeDetectorRef, Injector, ElementRef, PipeTransform, ViewContainerRef, ComponentFactoryResolver, AfterViewInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
3
3
  import * as i7 from '@angular/material/icon';
4
4
  import { MatIconRegistry } from '@angular/material/icon';
5
5
  import { SafeHtml, EventManager, DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
@@ -31,10 +31,10 @@ import { ExternalSource } from '@colijnit/articleapi/build/model/external-source
31
31
  import { ArticleFullObject } from '@colijnit/articleapi/build/model/article-full-object';
32
32
  import { ArticleCategory } from '@colijnit/configuratorapi/build/model/article-category';
33
33
  import { ArticleFlat } from '@colijnit/articleapi/build/model/article-flat.bo';
34
- import { ArticleExtended } from '@colijnit/articleapi/build/model/article-extended.bo';
35
34
  import { ExternalSourceArticleAddInterface } from '@colijnit/articleapi/build/interface/external-source-article-add.interface';
36
35
  import { CoDomainValue } from '@colijnit/mainapi/build/model/co-domain-value.bo';
37
36
  import { ObjectConfiguration } from '@colijnit/ioneconnector/build/model/object-configuration';
37
+ import { ArticleExtended } from '@colijnit/articleapi/build/model/article-extended.bo';
38
38
  import { SelectorStructure } from '@colijnit/configuratorapi/build/model/selector-structure.bo';
39
39
  import * as i8$2 from '@colijnit/catalog';
40
40
  import { CatalogExternalSourcesService, FilterOrder, CatalogService, ExternalSourceViewmodel } from '@colijnit/catalog';
@@ -180,6 +180,7 @@ declare enum MessageType {
180
180
  ChangeArticleConfigurationType = "ChangeArticleConfigurationType",
181
181
  RenderUploadProgress = "RenderUploadProgress",
182
182
  RenderUploadFinished = "RenderUploadFinished",
183
+ RenderFinished = "RenderFinished",
183
184
  RemoveSlowConnectionToast = "RemoveSlowConnectionToast",
184
185
  OpenConfigurator = "OpenConfigurator"
185
186
  }
@@ -696,7 +697,7 @@ declare class HomedecoratorAppEventService {
696
697
  hideOutline: Subject<void>;
697
698
  objectMovingOrRotating: Subject<void>;
698
699
  addToCart: Subject<{
699
- article: string | ArticleExtended;
700
+ article: string | ArticleFullObject;
700
701
  quantity: number;
701
702
  }>;
702
703
  addExternalSourceToCart: Subject<ExternalSourceArticleAddInterface>;
@@ -762,6 +763,7 @@ declare class HomedecoratorConnectorAdapterService implements OnDestroy {
762
763
  getDecosAsync(): Promise<DecoNode[]>;
763
764
  getAnswerPrices(): Promise<AnswerPrice[]>;
764
765
  getJsonConfiguredArticles(goodId: number, goodType: string, quantity: number, externalSource?: boolean, showLoader?: boolean, instanceId?: string, configuratorStatistics?: ConfiguratorStatisticsEnvironment): Promise<string>;
766
+ prepareArticleForCart(goodId: number, quantity?: number, shouldGetArticleTree?: boolean, showLoader?: boolean, instanceId?: string): Promise<ArticleFullObject | string>;
765
767
  setInstanceToConfigure(id: string): Promise<DataServiceResponseData>;
766
768
  selectAnswer(answer: Answer, userInput?: string): Promise<DataServiceResponseData>;
767
769
  cancelAnswer(getAnswersAndQuestion?: boolean): Promise<DataServiceResponseData>;
@@ -1216,7 +1218,7 @@ declare class HomedecoratorConnectorService implements OnDestroy {
1216
1218
  getInternalParameter(param: InternalParam): Promise<string>;
1217
1219
  getDefaultLanguage(upId: number): Promise<string>;
1218
1220
  googleTranslateEnabled(): Promise<boolean>;
1219
- getJsonConfiguredArticles(goodId: number, goodType: string, quantity: number, externalSource?: boolean, showLoader?: boolean, instanceId?: string, configuratorStatistics?: ConfiguratorStatisticsEnvironment): Promise<any>;
1221
+ prepareArticleForCart(goodId: number, quantity: number, externalSource?: boolean, showLoader?: boolean, instanceId?: string): Promise<ArticleFullObject | string>;
1220
1222
  setInstance(id: string): Promise<DataServiceResponseData>;
1221
1223
  copyInstanceAndSaveOriginalConfiguration(instanceId: string, result: CustomFloorGroupResult): Promise<string>;
1222
1224
  copyInstanceAndLoseOriginalConfiguration(instanceId: string, result: CustomFloorGroupResult): Promise<string>;
@@ -1248,7 +1250,7 @@ declare class HomedecoratorConnectorService implements OnDestroy {
1248
1250
  private _isAllSelectionPublished;
1249
1251
  private _isAnswerPublished;
1250
1252
  private _preloadCachedImages;
1251
- addToCart(goodId: number, goodType: string, quantity: number, instanceId: string, externalSource: boolean): Promise<string>;
1253
+ addToCart(goodId: number, goodType: string, quantity: number, instanceId: string, externalSource: boolean): Promise<ArticleFullObject | string>;
1252
1254
  handleAnswersReceived(): void;
1253
1255
  getGoogleTranslation(sourceLang: string, targetLang: string, list: string[]): Promise<string>;
1254
1256
  private _prepareSelectionsToDisplayImages;
@@ -2543,6 +2545,7 @@ interface MessagesWithPayload {
2543
2545
  [MessageType.ChangeArticleConfigurationType]: boolean;
2544
2546
  [MessageType.RenderUploadProgress]: number;
2545
2547
  [MessageType.RenderUploadFinished]: boolean;
2548
+ [MessageType.RenderFinished]: boolean;
2546
2549
  [MessageType.OpenConfigurator]: Item | ItemGroup;
2547
2550
  }
2548
2551
 
@@ -2896,6 +2899,7 @@ declare class HomedecoratorComponent implements OnInit, OnDestroy {
2896
2899
  private _integrationService;
2897
2900
  private _sceneService;
2898
2901
  private _webWorkerService;
2902
+ private _injector;
2899
2903
  generalFilterOrders: FilterOrder[];
2900
2904
  purchaseFilterOrders: FilterOrder[];
2901
2905
  logisticsFilterOrders: FilterOrder[];
@@ -2916,7 +2920,7 @@ declare class HomedecoratorComponent implements OnInit, OnDestroy {
2916
2920
  private _settings;
2917
2921
  private _eventService;
2918
2922
  constructor(appService: HomedecoratorAppService, // don't remove this, needs to be created on a high level
2919
- controllerService: HomedecoratorConnectorService, appState: AppStateService, presetsService: PresetsService, screenAnalysis: ScreenSizeAnalysisService, _iconRegistry: MatIconRegistry, _domSanitizer: DomSanitizer, _messageService: MessageBusService, _homedecoratorService: HomedecoratorService, _parentEventService: HomedecoratorAppEventService, _ownEventService: HomedecoratorAppEventService, _integrationService: IntegrationService, _sceneService: SceneService, _webWorkerService: WebWorkerService);
2923
+ controllerService: HomedecoratorConnectorService, appState: AppStateService, presetsService: PresetsService, screenAnalysis: ScreenSizeAnalysisService, _iconRegistry: MatIconRegistry, _domSanitizer: DomSanitizer, _messageService: MessageBusService, _homedecoratorService: HomedecoratorService, _parentEventService: HomedecoratorAppEventService, _ownEventService: HomedecoratorAppEventService, _integrationService: IntegrationService, _sceneService: SceneService, _webWorkerService: WebWorkerService, _injector: Injector);
2920
2924
  ngOnInit(): Promise<void>;
2921
2925
  ngOnDestroy(): void;
2922
2926
  registerCustomIcons(): void;
@@ -2927,7 +2931,7 @@ declare class HomedecoratorComponent implements OnInit, OnDestroy {
2927
2931
  private _startWithPreset;
2928
2932
  private _setCommunication;
2929
2933
  private _initConnection;
2930
- static ɵfac: i0.ɵɵFactoryDeclaration<HomedecoratorComponent, [null, null, null, null, null, null, null, null, null, { optional: true; skipSelf: true; }, { optional: true; self: true; }, null, null, null]>;
2934
+ static ɵfac: i0.ɵɵFactoryDeclaration<HomedecoratorComponent, [null, null, null, null, null, null, null, null, null, { optional: true; skipSelf: true; }, { optional: true; self: true; }, null, null, null, null]>;
2931
2935
  static ɵcmp: i0.ɵɵComponentDeclaration<HomedecoratorComponent, "co-homedecorator", never, { "generalFilterOrders": { "alias": "generalFilterOrders"; "required": false; }; "purchaseFilterOrders": { "alias": "purchaseFilterOrders"; "required": false; }; "logisticsFilterOrders": { "alias": "logisticsFilterOrders"; "required": false; }; "initCommunication": { "alias": "initCommunication"; "required": false; }; "projectToLoad": { "alias": "projectToLoad"; "required": false; }; "settings": { "alias": "settings"; "required": false; }; }, {}, never, never, false, never>;
2932
2936
  }
2933
2937
 
@@ -3327,6 +3331,12 @@ declare abstract class WallItem extends Item {
3327
3331
  protected createOrUpdateDistances(): THREE.Object3D;
3328
3332
  protected getObjectWithoutExcludedMeshes(): Object3D;
3329
3333
  protected getHalfSizeWithoutScale(): Vector3;
3334
+ /**
3335
+ * Local z at which measurement labels/distance arrows are drawn so they sit just in front of the wall.
3336
+ * Surface-mounted items sit on the wall face, so a small offset suffices. In-wall items override this
3337
+ * (they are centred inside the wall, so the offset must clear half the wall thickness).
3338
+ */
3339
+ protected _measurementZOffset(): number;
3330
3340
  private _createHeightMeasurement;
3331
3341
  private _createWidthMeasurement;
3332
3342
  private _getMaskedGeometry;
@@ -3977,11 +3987,22 @@ declare class InWallItem extends WallItem {
3977
3987
  private readonly _openCloseIndicatorColor;
3978
3988
  private readonly _frameWidth;
3979
3989
  private readonly _frameDepth;
3990
+ /** Extra depth added on top of the wall thickness so the dynamically built mask always pierces the wall. */
3991
+ private readonly _maskDepthMargin;
3980
3992
  private _isWindow;
3981
3993
  private _doorpost;
3994
+ /** Runtime-generated opening mask for custom doors/windows (custom items have no GLB `_mask` mesh). */
3995
+ private _customMaskGeometry;
3982
3996
  get doorpost(): boolean;
3983
3997
  constructor(metadata: Metadata, object: Object3D | Mesh, texture?: Texture);
3984
3998
  dispose(): void;
3999
+ /**
4000
+ * Custom doors/windows are built at runtime and have no GLB `_mask` mesh, so the base lookup finds
4001
+ * nothing usable. Return the dynamically generated opening mask instead. Build it lazily here so any
4002
+ * instance (incl. clones that never ran createCustomMesh) yields a mask as soon as the wall asks for
4003
+ * one - otherwise the wall is left solid for that item.
4004
+ */
4005
+ getMaskedGeometry(): BufferGeometry;
3985
4006
  updateOpeningObject(): void;
3986
4007
  removeOpeningObject(): void;
3987
4008
  updateMeasurements(): void;
@@ -4010,6 +4031,13 @@ declare class InWallItem extends WallItem {
4010
4031
  protected initiateItemObject(data: any): void;
4011
4032
  private _setDefault;
4012
4033
  private _createMaterials;
4034
+ /**
4035
+ * Builds the geometry used to subtract the opening from the wall. It spans the full width/height of
4036
+ * the custom item and is made deeper than the wall (plus a margin) so the CSG subtraction always
4037
+ * pierces the wall completely. base-wall positions it via the item's own position/quaternion, so the
4038
+ * box is centred on the item origin (the opening centre on the wall plane).
4039
+ */
4040
+ private _updateCustomMaskGeometry;
4013
4041
  private _getHeightFrame;
4014
4042
  private _createFrameSide;
4015
4043
  private _getAdditionalTexture;
@@ -4017,6 +4045,11 @@ declare class InWallItem extends WallItem {
4017
4045
  private _makeOpeningDirectionObject;
4018
4046
  private _makeSingleOpeningDirectionSymbol;
4019
4047
  protected createMeasurements(): void;
4048
+ /**
4049
+ * In-wall items sit centred inside the wall (getWallOffset() === 0), so the labels/arrows must clear
4050
+ * half the wall thickness to end up in front of the wall face instead of buried inside it.
4051
+ */
4052
+ protected _measurementZOffset(): number;
4020
4053
  private _createDepthMeasurement;
4021
4054
  private _calculateOpeningDepthPositions;
4022
4055
  }
@@ -4066,6 +4099,8 @@ declare class WallService implements OnDestroy {
4066
4099
  getAllInWallItems(): InWallItem[];
4067
4100
  getClosestWall(itemX: number, itemZ: number, ignoreVisible?: boolean): Wall;
4068
4101
  splitWall(wall: Wall, corner: Corner): void;
4102
+ /** Picks the wall whose closest point (clamped to the segment) is nearest to (x, z). */
4103
+ private _closestWallForPoint;
4069
4104
  updatePrevWall(wallId: string, prevWallId: string): void;
4070
4105
  updateNextWall(wallId: string, nextWallId: string): void;
4071
4106
  createNewWall(start: Corner, end: Corner, height: number, thickness: number, frontColor?: ColorRepresentation, backColor?: ColorRepresentation, frontTexture?: Texture, backTexture?: Texture): Wall;
@@ -4073,6 +4108,10 @@ declare class WallService implements OnDestroy {
4073
4108
  addCornersForIntersections(): void;
4074
4109
  mergeWithIntersected(corner: Corner): boolean;
4075
4110
  removeWall(wall: Wall): void;
4111
+ /** Merges two collinear walls around a degree-2 corner into a single wall. */
4112
+ joinCollinearWallsAt(corner: Corner): void;
4113
+ /** True when the two walls are in line through 'corner' (angle ~180°). */
4114
+ private _areCollinearThroughCorner;
4076
4115
  updateWallHeights(newHeight: number): void;
4077
4116
  resetRoomWalls(): void;
4078
4117
  updateWalls(): void;
@@ -4820,6 +4859,13 @@ declare class SceneEventService implements OnDestroy {
4820
4859
  setExploreMode(on?: boolean): void;
4821
4860
  setSelectedObject(object: Item | ItemGroup, mesh?: Mesh): void;
4822
4861
  startDragging(x: number, y: number, z?: number): void;
4862
+ /**
4863
+ * The wall whose front face the camera is looking at most directly. Used to pick a sensible target
4864
+ * wall when an item is added without a cursor (object library). A wall's front normal is its +Z axis
4865
+ * in world space; the wall most facing the camera maximises frontNormal · (cameraPos - wallPos), which
4866
+ * naturally excludes the transparent near wall (its front points away from the camera).
4867
+ */
4868
+ private _wallMostFacingCamera;
4823
4869
  intersectingVec3(vec2: Vector2, intersection?: Intersection): Vector3;
4824
4870
  private _isRotating;
4825
4871
  private _keyDownEvent;
@@ -6074,52 +6120,6 @@ declare enum RenderStatus {
6074
6120
  IsWaiting = 4
6075
6121
  }
6076
6122
 
6077
- declare enum ConnectionStatus {
6078
- IsUndefined = 0,
6079
- IsConnected = 1,
6080
- TryingToConnect = 2,
6081
- IsDisConnected = 3
6082
- }
6083
-
6084
- declare class Lightning {
6085
- id: number;
6086
- name: string;
6087
- settings: any;
6088
- }
6089
-
6090
- declare class ImageSize {
6091
- id: number;
6092
- name: string;
6093
- width: number;
6094
- height: number;
6095
- }
6096
-
6097
- declare class CameraPosition {
6098
- id: number;
6099
- name: string;
6100
- position: number;
6101
- type: string;
6102
- angle: number;
6103
- }
6104
-
6105
- declare class Render {
6106
- id: number;
6107
- productHash: string;
6108
- lightning: Lightning;
6109
- imageSize: ImageSize;
6110
- cameraPosition: CameraPosition;
6111
- url: string;
6112
- status: RenderStatus;
6113
- progress: number;
6114
- }
6115
-
6116
- declare class RenderEnvironment {
6117
- id: number;
6118
- name: string;
6119
- hdrFile: string;
6120
- intensity: number;
6121
- }
6122
-
6123
6123
  declare class RenderQueueItem {
6124
6124
  key: string;
6125
6125
  host: string;
@@ -6134,25 +6134,6 @@ declare class RenderQueueItem {
6134
6134
  params: any;
6135
6135
  }
6136
6136
 
6137
- declare class ExportObject {
6138
- name: string;
6139
- sku: string;
6140
- defaultRenderPath: string;
6141
- }
6142
-
6143
- declare class ExportService {
6144
- private _settingsService;
6145
- private _ioneConnectorAdapter;
6146
- private _threedSelectorService;
6147
- private _link;
6148
- private static GetSavingPath;
6149
- private static GetMeshMainMaterialName;
6150
- constructor(_settingsService: HomedecoratorSettingsService, _ioneConnectorAdapter: HomedecoratorConnectorAdapterService, _threedSelectorService: ThreedselectorService);
6151
- getExportObjectFromCustomFloorGroup(cfg: Item): ExportObject;
6152
- static ɵfac: i0.ɵɵFactoryDeclaration<ExportService, never>;
6153
- static ɵprov: i0.ɵɵInjectableDeclaration<ExportService>;
6154
- }
6155
-
6156
6137
  declare enum ToastType {
6157
6138
  Success = 0,
6158
6139
  Warning = 1,
@@ -6173,90 +6154,6 @@ declare class ToastService {
6173
6154
  static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
6174
6155
  }
6175
6156
 
6176
- declare class RenderData {
6177
- type: RenderModes;
6178
- furniture?: any[];
6179
- configuredItem?: ExportObject;
6180
- imageWidth?: number;
6181
- imageHeight?: number;
6182
- cameraMatrix?: any;
6183
- cameraFOV?: number;
6184
- render?: Render;
6185
- settings?: RenderSettings;
6186
- }
6187
-
6188
- declare class RenderService implements OnDestroy {
6189
- private _settingsService;
6190
- private _exportService;
6191
- private _cameraService;
6192
- private _sceneService;
6193
- private _toastService;
6194
- private _messageBusService;
6195
- private _googleTagManager;
6196
- private _roomService;
6197
- private _floorService;
6198
- readonly renderModes: typeof RenderModes;
6199
- service: any;
6200
- serverData: any;
6201
- sceneData: any;
6202
- prevItem: any;
6203
- streaming: any;
6204
- renderedRoomImages: string[];
6205
- connectionStatus: ConnectionStatus;
6206
- renders: Render[];
6207
- cameraPositions: CameraPosition[];
6208
- imageSizes: ImageSize[];
6209
- lightnings: Lightning[];
6210
- renderEnvironments: RenderEnvironment[];
6211
- renderScenes: any;
6212
- private _ceilingLightMargin;
6213
- selectedImageSize: number;
6214
- selectedEnvironment: number;
6215
- selectedRenderScene: string;
6216
- blendFilesRender: boolean;
6217
- positions: number;
6218
- save: boolean;
6219
- renderRoomImageChanged: BehaviorSubject<string>;
6220
- renderingStarted: Subject<void>;
6221
- renderImageChanged: BehaviorSubject<string>;
6222
- renderQueue: any[];
6223
- currentQueueRenderItem: RenderQueueItem;
6224
- currentProductHash: string;
6225
- standAloneCameraMatrix: number[];
6226
- private _subs;
6227
- static MakeWindowMaterialTransparent(material: Material): Material;
6228
- constructor(_settingsService: HomedecoratorSettingsService, _exportService: ExportService, _cameraService: CameraService, _sceneService: SceneService, _toastService: ToastService, _messageBusService: MessageBusService, _googleTagManager: GoogleTagManagerService, _roomService: RoomService, _floorService: FloorService);
6229
- ngOnDestroy(): void;
6230
- checkConnection(): Promise<void>;
6231
- private _renderServiceHeartBeat;
6232
- getRenderParameters(type: RenderModes): RenderData;
6233
- private _fixLight;
6234
- private _elementMustBeRemoved;
6235
- private _exportToGlb;
6236
- startRendering(): Promise<void>;
6237
- private _colijnRenderScene;
6238
- private _startRenderLoop;
6239
- private _quitRenderLoop;
6240
- private _startRenderStream;
6241
- private _setRenderProgress;
6242
- private _onRenderError;
6243
- private _onRenderClose;
6244
- private _afterRendering;
6245
- private _getRenderServiceUrl;
6246
- forceRenderImage(): void;
6247
- private _checkVisibleUpdates;
6248
- private _htmlImageDisplay;
6249
- getRenderOnId(id: number): any;
6250
- getImageSizeOnId(id: number): ImageSize;
6251
- getRenderEnvironmentOnId(id: number): RenderEnvironment;
6252
- getLightningOnId(id: number): any;
6253
- /******************************************** Export functions ********************************************/
6254
- private _getFirstCustomFloorItemFromScene;
6255
- private _getConfiguredFurnitureItem;
6256
- static ɵfac: i0.ɵɵFactoryDeclaration<RenderService, never>;
6257
- static ɵprov: i0.ɵɵInjectableDeclaration<RenderService>;
6258
- }
6259
-
6260
6157
  declare class BlenderRenderSettings {
6261
6158
  height: number;
6262
6159
  width: number;
@@ -6267,7 +6164,7 @@ declare class BlenderRenderSettings {
6267
6164
  allowCulling: boolean;
6268
6165
  }
6269
6166
 
6270
- declare class NewRenderService implements OnDestroy {
6167
+ declare class RenderService implements OnDestroy {
6271
6168
  messageService: MessageBusService;
6272
6169
  private _settingsService;
6273
6170
  private _buildFurnitureService;
@@ -6290,7 +6187,7 @@ declare class NewRenderService implements OnDestroy {
6290
6187
  private _appEventService;
6291
6188
  private _dictionaryService;
6292
6189
  renderImageChanged: BehaviorSubject<string>;
6293
- renderImageError: BehaviorSubject<string>;
6190
+ renderImageError: Subject<string>;
6294
6191
  blenderRenderStarted: Subject<boolean>;
6295
6192
  renderUpdateImageChanged: BehaviorSubject<{
6296
6193
  image: string;
@@ -6304,6 +6201,7 @@ declare class NewRenderService implements OnDestroy {
6304
6201
  renderedRoomImages: string[];
6305
6202
  clientWidth: number;
6306
6203
  clientHeight: number;
6204
+ blendFilesRender: boolean;
6307
6205
  private _overWriteTransparency;
6308
6206
  private _subs;
6309
6207
  constructor(messageService: MessageBusService, _settingsService: HomedecoratorSettingsService, _buildFurnitureService: SwitchBuildFurnitureService, _cameraService: CameraService, _sceneService: SceneService, _ione: HomedecoratorConnectorService, _ioneConnectorAdapter: HomedecoratorConnectorAdapterService, _threedSelectorService: ThreedselectorService, _toastService: ToastService, _messageBusService: MessageBusService, _googleTagManager: GoogleTagManagerService, _roomService: RoomService, _floorService: FloorService, _wallService: WallService, _ceilingService: CeilingService, _loadFurnitureService: SwitchLoadFurnitureService, _utilsService: UtilsService, _presetService: PresetsService, _apiServiceModule: ApiServiceModule, _appEventService: HomedecoratorAppEventService, _dictionaryService: HomedecoratorDictionaryService);
@@ -6334,8 +6232,8 @@ declare class NewRenderService implements OnDestroy {
6334
6232
  private _getRenderType;
6335
6233
  private _useTransparency;
6336
6234
  private _setForceTransparency;
6337
- static ɵfac: i0.ɵɵFactoryDeclaration<NewRenderService, never>;
6338
- static ɵprov: i0.ɵɵInjectableDeclaration<NewRenderService>;
6235
+ static ɵfac: i0.ɵɵFactoryDeclaration<RenderService, never>;
6236
+ static ɵprov: i0.ɵɵInjectableDeclaration<RenderService>;
6339
6237
  }
6340
6238
 
6341
6239
  declare class ConnectionHeathService {
@@ -6353,28 +6251,37 @@ declare class ConnectionHeathService {
6353
6251
  static ɵprov: i0.ɵɵInjectableDeclaration<ConnectionHeathService>;
6354
6252
  }
6355
6253
 
6356
- declare class RenderControlsComponent implements OnInit {
6357
- renderService: RenderService;
6254
+ declare class ImageSize {
6255
+ id: number;
6256
+ name: string;
6257
+ width: number;
6258
+ height: number;
6259
+ }
6260
+
6261
+ declare class RenderControlsComponent implements OnInit, OnDestroy {
6358
6262
  messageService: MessageBusService;
6359
6263
  viewModeService: ViewModeService;
6360
6264
  settingsService: HomedecoratorSettingsService;
6361
6265
  iconService: HomedecoratorIconCacheService;
6266
+ renderService: RenderService;
6362
6267
  private _dialog;
6363
6268
  private _sceneService;
6364
6269
  private _cameraService;
6365
6270
  private _configurationService;
6366
6271
  private _settingsService;
6367
- private _newRenderService;
6368
6272
  private _utilsService;
6369
6273
  private _roomService;
6370
6274
  private _wallMeasurementsService;
6371
6275
  private _connectionHealthService;
6372
6276
  private _dictionaryService;
6277
+ private _dialogService;
6373
6278
  readonly viewModes: typeof ViewMode;
6374
6279
  readonly renderStatus: typeof RenderStatus;
6375
6280
  readonly icons: typeof IconEnum;
6376
6281
  readonly renderModes: typeof RenderModes;
6377
6282
  renderButton: ElementRef;
6283
+ imageSizes: ImageSize[];
6284
+ selectedImageSize: ImageSize;
6378
6285
  get disablePictureButton(): boolean;
6379
6286
  blenderPreviewRender: string;
6380
6287
  hdriIntensity: number;
@@ -6390,14 +6297,14 @@ declare class RenderControlsComponent implements OnInit {
6390
6297
  showCullingErrorDialog: boolean;
6391
6298
  startUploading: boolean;
6392
6299
  private _subs;
6393
- 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, _connectionHealthService: ConnectionHeathService, _dictionaryService: HomedecoratorDictionaryService);
6300
+ constructor(messageService: MessageBusService, viewModeService: ViewModeService, settingsService: HomedecoratorSettingsService, iconService: HomedecoratorIconCacheService, renderService: RenderService, _dialog: MatDialog, _sceneService: SceneService, _cameraService: CameraService, _configurationService: ConfigurationService, _settingsService: HomedecoratorSettingsService, _utilsService: UtilsService, _roomService: RoomService, _wallMeasurementsService: WallMeasurementsService, _connectionHealthService: ConnectionHeathService, _dictionaryService: HomedecoratorDictionaryService, _dialogService: DialogService);
6394
6301
  ngOnInit(): void;
6302
+ ngOnDestroy(): void;
6395
6303
  showRenderForm(event: MouseEvent): void;
6396
6304
  hideUploadDialog(ready: boolean): void;
6397
- createBlenderRender(): void;
6305
+ createBlenderRender(preview?: boolean): void;
6398
6306
  resetBlenderRenderScene(): void;
6399
6307
  moveCameraWithinBounds(): void;
6400
- createPreviewRender(): void;
6401
6308
  showPreview(image: string): void;
6402
6309
  toggleRenderSettings(): void;
6403
6310
  updateBlenderSceneSettings(event: any): void;
@@ -6411,19 +6318,15 @@ declare class RenderControlsComponent implements OnInit {
6411
6318
 
6412
6319
  declare class RenderProgressComponent implements OnDestroy {
6413
6320
  private _messageService;
6414
- private _progressService;
6415
- set show(show: boolean);
6416
- get show(): boolean;
6417
6321
  title: string;
6418
- get progressValue(): string;
6419
6322
  progress: number;
6323
+ rendering: boolean;
6420
6324
  private _subs;
6421
- private _show;
6422
- constructor(_messageService: MessageBusService, _progressService: ProgressService);
6325
+ constructor(_messageService: MessageBusService);
6423
6326
  ngOnDestroy(): void;
6424
6327
  updateProgress(progress: number): void;
6425
6328
  static ɵfac: i0.ɵɵFactoryDeclaration<RenderProgressComponent, never>;
6426
- static ɵcmp: i0.ɵɵComponentDeclaration<RenderProgressComponent, "rp-render-progress", never, { "show": { "alias": "show"; "required": false; }; "title": { "alias": "title"; "required": false; }; }, {}, never, never, false, never>;
6329
+ static ɵcmp: i0.ɵɵComponentDeclaration<RenderProgressComponent, "rp-render-progress", never, {}, {}, never, never, false, never>;
6427
6330
  }
6428
6331
 
6429
6332
  declare class RenderModule {
@@ -6629,6 +6532,7 @@ declare class FloorplanRenderService implements OnDestroy {
6629
6532
  removeTempWall(): void;
6630
6533
  private _clear;
6631
6534
  private _drawGrid;
6535
+ private _drawBackground;
6632
6536
  private _drawRooms;
6633
6537
  private _pickDrawRoomId;
6634
6538
  private _drawWallsWithNoRoom;
@@ -6737,15 +6641,6 @@ declare class FloorplannerComponent implements AfterViewInit, OnDestroy {
6737
6641
  private _subs;
6738
6642
  private _selectedFloor;
6739
6643
  private _modeBeforeRightMouseMove;
6740
- private _diagramBackground;
6741
- private _diagramBackgroundScale;
6742
- private _diagramBackgroundCurrentScale;
6743
- private _diagramBackgroundHeight;
6744
- private _diagramBackgroundWidth;
6745
- private _diagramBackgroundActiveZoom;
6746
- private _diagramBackgroundAlpha;
6747
- private _showDiagramBackground;
6748
- private _diagramScale;
6749
6644
  private _cameraZoom;
6750
6645
  private _lastTouchPoint;
6751
6646
  private _readyToDraw;
@@ -6760,6 +6655,7 @@ declare class FloorplannerComponent implements AfterViewInit, OnDestroy {
6760
6655
  handleDecimalsChoice(decimals: number): void;
6761
6656
  draw(): void;
6762
6657
  private _requestDraw;
6658
+ private _clearBackground;
6763
6659
  showStartMessage(): void;
6764
6660
  resizeView(): void;
6765
6661
  reset(): void;
@@ -6790,9 +6686,7 @@ declare class FloorplannerComponent implements AfterViewInit, OnDestroy {
6790
6686
  private _checkMoveWallOrCorner;
6791
6687
  private _moveSelectedCorner;
6792
6688
  private _moveSelectedWall;
6793
- private _drawBackground;
6794
6689
  private _handleWindowResize;
6795
- private _clear;
6796
6690
  private _updateWallPosition;
6797
6691
  private _scale;
6798
6692
  private _draw;
@@ -8646,8 +8540,8 @@ declare class DrawDialogComponent implements OnDestroy, OnInit, AfterViewInit {
8646
8540
  handleMouseMove(event: MouseEvent): void;
8647
8541
  handleMouseUp(event: MouseEvent): void;
8648
8542
  handleMouseLeave(event: MouseEvent): void;
8649
- clickingZoom(option: string): void;
8650
8543
  handleMouseWheel(event: WheelEvent): void;
8544
+ handleContextMenu(event: MouseEvent): boolean;
8651
8545
  getEventLocation(e: any): {
8652
8546
  x: any;
8653
8547
  y: any;
@@ -8770,7 +8664,7 @@ declare class ToolbarComponent implements OnInit, OnDestroy, AfterViewInit {
8770
8664
  leftSidebar: MatDrawer;
8771
8665
  handleKeyDown(event: KeyboardEvent): void;
8772
8666
  get fullscreen(): boolean;
8773
- constructor(appState: AppStateService, presetsService: PresetsService, messageService: MessageBusService, settingsService: HomedecoratorSettingsService, storageService: LocalStorageService, iconService: HomedecoratorIconCacheService, _screenSizeService: ScreenSizeAnalysisService, _dialog: MatDialog, _toastService: ToastService, _appService: HomedecoratorAppService, _permanentStoreService: PermanentStoreService, _utilsService: UtilsService, _itemService: ItemService, _floorService: FloorService, _animationService: AnimationService, _developmentService: DevelopmentService, _newRenderService: NewRenderService, _thirdPartyModelService: ThirdPartyModelService, _lightPresetService: LightPresetsService, _adapterService: HomedecoratorConnectorAdapterService, _connectionHealthService: ConnectionHeathService, _homedecoratorEventService: HomedecoratorAppEventService);
8667
+ constructor(appState: AppStateService, presetsService: PresetsService, messageService: MessageBusService, settingsService: HomedecoratorSettingsService, storageService: LocalStorageService, iconService: HomedecoratorIconCacheService, _screenSizeService: ScreenSizeAnalysisService, _dialog: MatDialog, _toastService: ToastService, _appService: HomedecoratorAppService, _permanentStoreService: PermanentStoreService, _utilsService: UtilsService, _itemService: ItemService, _floorService: FloorService, _animationService: AnimationService, _developmentService: DevelopmentService, _newRenderService: RenderService, _thirdPartyModelService: ThirdPartyModelService, _lightPresetService: LightPresetsService, _adapterService: HomedecoratorConnectorAdapterService, _connectionHealthService: ConnectionHeathService, _homedecoratorEventService: HomedecoratorAppEventService);
8774
8668
  ngOnInit(): void;
8775
8669
  ngOnDestroy(): void;
8776
8670
  ngAfterViewInit(): void;
@@ -9414,8 +9308,6 @@ declare class DialogModule {
9414
9308
  }
9415
9309
 
9416
9310
  declare class HomedecoratorModule {
9417
- private _injector;
9418
- constructor(_injector: Injector);
9419
9311
  static ɵfac: i0.ɵɵFactoryDeclaration<HomedecoratorModule, never>;
9420
9312
  static ɵmod: i0.ɵɵNgModuleDeclaration<HomedecoratorModule, [typeof HomedecoratorComponent], [typeof i3.CommonModule, typeof ProgressBarModule, typeof LoadingOverlayModule, typeof HdLoaderModule, typeof ExportDialogModule, typeof InfoDialogModule, typeof PluginsModule, typeof DialogModule, typeof i10$2.A11yModule, typeof i25.ProductConfiguratorModule, typeof i7$1.CoreComponentsTranslationModule, typeof i25.LiteSelectorModule], [typeof HomedecoratorComponent]>;
9421
9313
  static ɵinj: i0.ɵɵInjectorDeclaration<HomedecoratorModule>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colijnit/homedecorator",
3
- "version": "261.20.4",
3
+ "version": "261.20.6",
4
4
  "description": "Homedecorator application based on 261 version of iOne backend",
5
5
  "repository": "npm/npm",
6
6
  "author": "Colijn IT",
@@ -10,11 +10,11 @@
10
10
  "@angular/common": ">=20.0.0",
11
11
  "@angular/core": ">=20.0.0",
12
12
  "@colijnit/catalog": ">=261.20.0",
13
- "@colijnit/articleapi": ">=261.1.0",
13
+ "@colijnit/articleapi": ">=261.1.5",
14
14
  "@colijnit/configurator": ">=261.20.11",
15
15
  "@colijnit/configuratorapi": ">=261.1.6",
16
16
  "@colijnit/corecomponents_v12": ">=261.20.0",
17
- "@colijnit/ioneconnector": ">=261.1.3",
17
+ "@colijnit/ioneconnector": ">=261.1.6",
18
18
  "@colijnit/mainapi": ">=261.1.0",
19
19
  "@colijnit/relationapi": ">=261.1.0",
20
20
  "@colijnit/transactionapi": ">=261.1.0",