@roomle/embedding-lib 4.34.0 → 4.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/docs/api/classes/exposed_analytics_callbacks.ExposedAnalyticsCallbacks.md +1 -1
  2. package/docs/api/classes/exposed_api.ExposedApi.md +11 -11
  3. package/docs/api/classes/exposed_callbacks.ExposedCallbacks.md +7 -7
  4. package/docs/api/classes/roomle_configurator_api.default.md +9 -9
  5. package/docs/api/enums/types.UI_BUTTON.md +32 -21
  6. package/docs/api/interfaces/exposed_callbacks.Labels.md +2 -2
  7. package/docs/api/interfaces/exposed_callbacks.Price.md +2 -2
  8. package/docs/api/interfaces/roomle_configurator_api.RoomleEmbeddingApiKeys.md +4 -4
  9. package/docs/api/interfaces/types.ConfiguratorSettings.md +5 -5
  10. package/docs/api/interfaces/types.EmbeddingSkin.md +5 -5
  11. package/docs/api/interfaces/types.UiInitData.md +17 -16
  12. package/docs/api/modules/roomle_configurator_api.md +3 -3
  13. package/docs/md/web/ui/EMBEDDING-CHANGELOG.md +2 -35
  14. package/package.json +2 -2
  15. package/types/index.d.ts +94 -66
  16. package/types/src/common/business-logic/event-bus.d.ts +5 -0
  17. package/types/src/{configurator → common}/components/collection-view/-utils/types.d.ts +0 -0
  18. package/types/src/common/store/collection-view-state.d.ts +3 -2
  19. package/types/src/common/store/index.d.ts +5 -1
  20. package/types/src/common/utils/parameters.d.ts +2 -2
  21. package/types/src/common/utils/touch-drag.d.ts +8 -9
  22. package/types/src/common/utils/types.d.ts +2 -0
  23. package/types/src/configurator/embedding/types.d.ts +3 -1
  24. package/types/src/planner/business-logic/rooms.d.ts +1 -1
  25. package/types/src/planner/store/planner-core-data.d.ts +1 -1
  26. package/types/src/planner/store/planner-ui-state.d.ts +13 -5
  27. package/types/src/planner/utils/{product-list.d.ts → planner-sidebar.d.ts} +11 -0
  28. package/types/tests/helpers/data/items.d.ts +90 -0
  29. package/types/tests/helpers/data/plan.d.ts +224 -0
  30. package/types/tests/helpers/mocks/store.d.ts +2 -1
  31. package/types/tests/integration/common/components/{ProductButtons.spec.d.ts → BottomButtons.spec.d.ts} +0 -0
  32. package/types/tests/integration/{configurator/components/overlays → common/components/part-list}/part-list/PartListPrint.spec.d.ts +0 -0
  33. package/types/tests/integration/{configurator/components/overlays → common/components/part-list}/part-list/PartListRow.spec.d.ts +0 -0
  34. package/types/tests/integration/configurator/components/overlays/PartList.spec.d.ts +1 -0
  35. package/types/tests/integration/planner/components/SelectionPreview.spec.d.ts +1 -0
  36. package/types/tests/unit/common/business-logic/event-bus.spec.d.ts +1 -0
@@ -127,7 +127,7 @@ to view 3d content. Imagine it then as a <img> tag for 3d content
127
127
 
128
128
  #### Defined in
129
129
 
130
- [src/configurator/embedding/types.ts:91](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L91)
130
+ [src/configurator/embedding/types.ts:90](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L90)
131
131
 
132
132
  ___
133
133
 
@@ -144,7 +144,7 @@ InitDataDefinition.applyCurrentGlobalParameters
144
144
 
145
145
  #### Defined in
146
146
 
147
- [src/configurator/embedding/types.ts:138](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L138)
147
+ [src/configurator/embedding/types.ts:137](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L137)
148
148
 
149
149
  ___
150
150
 
@@ -193,6 +193,7 @@ ___
193
193
  | Name | Type |
194
194
  | :------ | :------ |
195
195
  | `2dview?` | false \| true |
196
+ | `add_room?` | false \| true |
196
197
  | `addons?` | false \| true |
197
198
  | `ar?` | false \| true |
198
199
  | `dimensions?` | false \| true |
@@ -213,7 +214,7 @@ ___
213
214
 
214
215
  #### Defined in
215
216
 
216
- [src/configurator/embedding/types.ts:41](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L41)
217
+ [src/configurator/embedding/types.ts:39](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L39)
217
218
 
218
219
  ___
219
220
 
@@ -344,7 +345,7 @@ usage: http://www.example.com/configurator?id=#CONFIGURATIONID#
344
345
 
345
346
  #### Defined in
346
347
 
347
- [src/configurator/embedding/types.ts:78](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L78)
348
+ [src/configurator/embedding/types.ts:77](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L77)
348
349
 
349
350
  ___
350
351
 
@@ -409,7 +410,7 @@ an e-mail
409
410
 
410
411
  #### Defined in
411
412
 
412
- [src/configurator/embedding/types.ts:96](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L96)
413
+ [src/configurator/embedding/types.ts:95](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L95)
413
414
 
414
415
  ___
415
416
 
@@ -423,7 +424,7 @@ so that we can ensure a smooth transition between different versions of our conf
423
424
 
424
425
  #### Defined in
425
426
 
426
- [src/configurator/embedding/types.ts:112](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L112)
427
+ [src/configurator/embedding/types.ts:111](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L111)
427
428
 
428
429
  ___
429
430
 
@@ -451,7 +452,7 @@ set this flag to false if the user did not give the consent to Analytics
451
452
 
452
453
  #### Defined in
453
454
 
454
- [src/configurator/embedding/types.ts:116](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L116)
455
+ [src/configurator/embedding/types.ts:115](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L115)
455
456
 
456
457
  ___
457
458
 
@@ -463,7 +464,7 @@ set this flag to true if you want to group the part list by main components
463
464
 
464
465
  #### Defined in
465
466
 
466
- [src/configurator/embedding/types.ts:106](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L106)
467
+ [src/configurator/embedding/types.ts:105](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L105)
467
468
 
468
469
  ___
469
470
 
@@ -650,7 +651,7 @@ small div
650
651
 
651
652
  #### Defined in
652
653
 
653
- [src/configurator/embedding/types.ts:102](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L102)
654
+ [src/configurator/embedding/types.ts:101](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L101)
654
655
 
655
656
  ___
656
657
 
@@ -771,7 +772,7 @@ ___
771
772
 
772
773
  #### Defined in
773
774
 
774
- [src/configurator/embedding/types.ts:64](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L64)
775
+ [src/configurator/embedding/types.ts:63](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L63)
775
776
 
776
777
  ___
777
778
 
@@ -886,7 +887,7 @@ for details see deeplink, the only change is that the placeholder is <CONF_ID> h
886
887
 
887
888
  #### Defined in
888
889
 
889
- [src/configurator/embedding/types.ts:69](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L69)
890
+ [src/configurator/embedding/types.ts:68](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L68)
890
891
 
891
892
  ___
892
893
 
@@ -948,7 +949,7 @@ ___
948
949
 
949
950
  #### Defined in
950
951
 
951
- [src/configurator/embedding/types.ts:61](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L61)
952
+ [src/configurator/embedding/types.ts:60](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L60)
952
953
 
953
954
  ___
954
955
 
@@ -1006,7 +1007,7 @@ You can find all labels here: [Base.json](../../../ui/base.json)
1006
1007
 
1007
1008
  #### Defined in
1008
1009
 
1009
- [src/configurator/embedding/types.ts:133](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L133)
1010
+ [src/configurator/embedding/types.ts:132](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L132)
1010
1011
 
1011
1012
  ___
1012
1013
 
@@ -1087,7 +1088,7 @@ ___
1087
1088
 
1088
1089
  #### Defined in
1089
1090
 
1090
- [src/configurator/embedding/types.ts:63](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L63)
1091
+ [src/configurator/embedding/types.ts:62](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L62)
1091
1092
 
1092
1093
  ___
1093
1094
 
@@ -1138,7 +1139,7 @@ usm:frame is loaded all the items from the tag "DB_Start_ohne_Element" are now s
1138
1139
 
1139
1140
  #### Defined in
1140
1141
 
1141
- [src/configurator/embedding/types.ts:85](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L85)
1142
+ [src/configurator/embedding/types.ts:84](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L84)
1142
1143
 
1143
1144
  ___
1144
1145
 
@@ -1148,7 +1149,7 @@ ___
1148
1149
 
1149
1150
  #### Defined in
1150
1151
 
1151
- [src/configurator/embedding/types.ts:62](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/types.ts#L62)
1152
+ [src/configurator/embedding/types.ts:61](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/types.ts#L61)
1152
1153
 
1153
1154
  ___
1154
1155
 
@@ -26,7 +26,7 @@
26
26
 
27
27
  #### Defined in
28
28
 
29
- [src/configurator/embedding/roomle-configurator-api.ts:70](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/roomle-configurator-api.ts#L70)
29
+ [src/configurator/embedding/roomle-configurator-api.ts:70](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/roomle-configurator-api.ts#L70)
30
30
 
31
31
  ___
32
32
 
@@ -36,7 +36,7 @@ ___
36
36
 
37
37
  #### Defined in
38
38
 
39
- [src/configurator/embedding/roomle-configurator-api.ts:72](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/roomle-configurator-api.ts#L72)
39
+ [src/configurator/embedding/roomle-configurator-api.ts:72](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/roomle-configurator-api.ts#L72)
40
40
 
41
41
  ___
42
42
 
@@ -46,4 +46,4 @@ ___
46
46
 
47
47
  #### Defined in
48
48
 
49
- [src/configurator/embedding/roomle-configurator-api.ts:71](https://gitlab.com/roomle/web/roomle-ui/-/blob/ec13a00b/src/configurator/embedding/roomle-configurator-api.ts#L71)
49
+ [src/configurator/embedding/roomle-configurator-api.ts:71](https://gitlab.com/roomle/web/roomle-ui/-/blob/c222dce6/src/configurator/embedding/roomle-configurator-api.ts#L71)
@@ -1,39 +1,6 @@
1
- ## [4.34.0](https://gitlab.com/roomle/web/roomle-ui/compare/embedding-v4.33.0...embedding-v4.34.0) (2022-05-10)
1
+ ## [4.37.0](https://gitlab.com/roomle/web/roomle-ui/compare/embedding-v4.36.0...embedding-v4.37.0) (2022-06-09)
2
2
 
3
3
 
4
4
  ### Features
5
5
 
6
- * add first idea on how to add a room ([26aa788](https://gitlab.com/roomle/web/roomle-ui/commit/26aa78845bc6e751cc8057fc63db6e9d18d576a6))
7
- * implement 2d view button ([487e8d8](https://gitlab.com/roomle/web/roomle-ui/commit/487e8d87d634544f0b6ad6d15b19716ce8ad7987))
8
- * implement part list and product list feature ([9919dad](https://gitlab.com/roomle/web/roomle-ui/commit/9919dada3f8ef389ac726a632bda09dffbde7122))
9
- * implement product list and part list with bounds create a helper file for it ([349c58c](https://gitlab.com/roomle/web/roomle-ui/commit/349c58ce45ee7a8bfb80957c4f86b969a1a273a7))
10
- * MoC: create predefined rooms ([2e5757e](https://gitlab.com/roomle/web/roomle-ui/commit/2e5757eb412cbb8d08fb889bc660bcd48d577131))
11
- * MoC: switch to 2D scene ([faf273a](https://gitlab.com/roomle/web/roomle-ui/commit/faf273ac6e25d8fc0e517b2d2209bc427efee5d7))
12
- * refactor addons and catalog trigger button and implement generic icon button for it ([1e86efd](https://gitlab.com/roomle/web/roomle-ui/commit/1e86efd6434e7238beaa9906af627d5cffc27938))
13
- * reset scroll if change from product list to part list ([005b982](https://gitlab.com/roomle/web/roomle-ui/commit/005b982acdbe6ca72901beefeafb9dd1a4b2539d))
14
- * **SDK:** upgrade to version 2.31.0 ([2938571](https://gitlab.com/roomle/web/roomle-ui/commit/29385711dc9bc3f3438e5fe5984aebb8a7044d47))
15
- * **SDK:** upgrade to version 2.31.0-alpha.1 ([50a566e](https://gitlab.com/roomle/web/roomle-ui/commit/50a566e620560f7c7b1cb213265b3be3984778d1))
16
- * **SDK:** upgrade to version 2.31.0-alpha.2 ([638cf4b](https://gitlab.com/roomle/web/roomle-ui/commit/638cf4b91650f35fbfff4f5b9ecee5caf2a3af5d))
17
- * **SDK:** upgrade to version 2.31.0-alpha.3 ([e198e51](https://gitlab.com/roomle/web/roomle-ui/commit/e198e513ed99d203f3eeabb0a218033d27a12aca))
18
- * **SDK:** upgrade to version 2.31.0-alpha.4 ([52ad6a1](https://gitlab.com/roomle/web/roomle-ui/commit/52ad6a1687f3af6c4e18020a2ff5834f76d44d26))
19
-
20
-
21
- ### Bug Fixes
22
-
23
- * also use text filter if "all groups" option is selected ([0f0db02](https://gitlab.com/roomle/web/roomle-ui/commit/0f0db0245810d8cf8b03ce0873019f958cda65ad))
24
- * changed computed so that Vue.js recognizes if the values change ([2bb4164](https://gitlab.com/roomle/web/roomle-ui/commit/2bb4164be443e84ce45fb6b0dd59ccec018ce74f))
25
- * create new array to prevent problems with reactivity caveat for more see: ([a7e4c86](https://gitlab.com/roomle/web/roomle-ui/commit/a7e4c86a7ae88d50695918218548a052fe2d7825))
26
- * do not expand interactions on mobile if catalog trigger is clicked ([10b1531](https://gitlab.com/roomle/web/roomle-ui/commit/10b153145b93d533b92fa815ea28239aaf716738))
27
- * do not import scss in embedding lib ([fcca831](https://gitlab.com/roomle/web/roomle-ui/commit/fcca831b993df263d6991b47b646761823ffb9c0))
28
- * do not open interactions for rooms on mobile ([a0fd3da](https://gitlab.com/roomle/web/roomle-ui/commit/a0fd3da8fb92b4e9009b17bdc223b9df29e37d73))
29
- * does not show catalog trigger button on mobile and collapse interaction menu on deselect partlist toggle on mobile ([257a6c7](https://gitlab.com/roomle/web/roomle-ui/commit/257a6c785fd111837d76c798f02ab58773484f8e))
30
- * eslint warnings ([a42a64e](https://gitlab.com/roomle/web/roomle-ui/commit/a42a64e653196616b66b29c04705ae70e07fb4e3))
31
- * failing test ([5a28afc](https://gitlab.com/roomle/web/roomle-ui/commit/5a28afc99be963e01363887a6667e93497eaa337))
32
- * import SampleRooms component so it can be used in template ([e01a62c](https://gitlab.com/roomle/web/roomle-ui/commit/e01a62c24db204422b6e905f26733b29fa5c751c))
33
- * move changes from addon-trigger to separate components ([5f578a4](https://gitlab.com/roomle/web/roomle-ui/commit/5f578a483d53ab5c7ffec3677c6d945295844ad6))
34
- * only close part list not both part list and product list ([66bbefb](https://gitlab.com/roomle/web/roomle-ui/commit/66bbefb40168ed9056ef092184c5882390dafc05))
35
- * show catalog trigger only if there is any catalog to show ([aaff214](https://gitlab.com/roomle/web/roomle-ui/commit/aaff214c3b3a211a811f482243aaf8e94b0e6e07))
36
- * show fullscreen on init and expand sidebar if view has changed from mobile to desktop ([4562b68](https://gitlab.com/roomle/web/roomle-ui/commit/4562b685490cd13200935a44da48db04873a5512))
37
- * show only one overlay in sidebar ([bb8c8e6](https://gitlab.com/roomle/web/roomle-ui/commit/bb8c8e619a6809c63da59e3d4270de13d0ec2e78))
38
- * top bar selected action refactoring rightly ([ecb00f5](https://gitlab.com/roomle/web/roomle-ui/commit/ecb00f5682068c35e88193fdf205ad81bc071900))
39
- * use correct generic type ([c00751b](https://gitlab.com/roomle/web/roomle-ui/commit/c00751b58e0547e79d87ecc018ee60c455c2fa40))
6
+ * upgrade SDK to 2.34.0 ([c222dce](https://gitlab.com/roomle/web/roomle-ui/commit/c222dce6720fe07d7ded3eee3fe5ea23eaf246c0))
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@roomle/embedding-lib",
3
- "version": "4.34.0",
3
+ "version": "4.37.0",
4
4
  "main": "roomle-configurator-api.es.min.js",
5
5
  "types": "types/index.d.ts",
6
6
  "author": "Roomle Development",
7
7
  "dependencies": {
8
- "@roomle/web-sdk": "2.31.0"
8
+ "@roomle/web-sdk": "2.34.0"
9
9
  },
10
10
  "devDependencies": {
11
11
  "@semantic-release/changelog": "^5.0.1",
package/types/index.d.ts CHANGED
@@ -12,6 +12,8 @@ declare module "common/utils/types" {
12
12
  SHARE_AR = 301,
13
13
  SAVE_DRAFT = 302
14
14
  }
15
+ export type ToggleCallback = (isExpanded: boolean) => void;
16
+ export type CloseReason = 'toggle';
15
17
  }
16
18
  declare module "configurator/embedding/message-handler" {
17
19
  import { Nullable } from "common/utils/types";
@@ -69,7 +71,8 @@ declare module "configurator/embedding/types" {
69
71
  REDO = "redo",
70
72
  PARTLIST_PLANNER = "partlist_planner",
71
73
  PRODUCTLIST = "productlist",
72
- TWO_D_VIEW = "2dview"
74
+ TWO_D_VIEW = "2dview",
75
+ ADD_ROOM = "add_room"
73
76
  }
74
77
  interface FeatureFlags {
75
78
  realPartList?: boolean;
@@ -98,6 +101,7 @@ declare module "configurator/embedding/types" {
98
101
  [UI_BUTTON.REDO]?: boolean;
99
102
  [UI_BUTTON.TWO_D_VIEW]?: boolean;
100
103
  [UI_BUTTON.PARTLIST_PLANNER]?: boolean;
104
+ [UI_BUTTON.ADD_ROOM]?: boolean;
101
105
  };
102
106
  skin?: EmbeddingSkin;
103
107
  zIndex?: number;
@@ -347,7 +351,7 @@ declare module "configurator/store/core-data" {
347
351
  }
348
352
  export const coreData: Module<CoreData, StoreState>;
349
353
  }
350
- declare module "configurator/components/collection-view/-utils/types" {
354
+ declare module "common/components/collection-view/-utils/types" {
351
355
  import { Nullable } from "common/utils/types";
352
356
  import { UiPossibleChildTag, UiKernelParameter } from '@roomle/web-sdk/lib/definitions/typings/kernel';
353
357
  import { RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
@@ -360,9 +364,9 @@ declare module "configurator/components/collection-view/-utils/types" {
360
364
  }
361
365
  }
362
366
  declare module "common/utils/parameters" {
363
- import { RapiMaterial, RapiMaterialGroup, RapiTexture, RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
367
+ import { RapiMaterial, RapiMaterialGroup, RapiTagForUi, RapiTexture } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
364
368
  import { KernelPartListParameter, UiPossibleChildTag } from '@roomle/web-sdk/lib/definitions/typings/kernel';
365
- import { CollectionViewElement } from "configurator/components/collection-view/-utils/types";
369
+ import { CollectionViewElement } from "common/components/collection-view/-utils/types";
366
370
  import { VariantsMap } from "configurator/embedding/types";
367
371
  import RoomleConfigurator from '@roomle/web-sdk/lib/definitions/configurator-core/src/roomle-configurator';
368
372
  export interface RapiMaterialEmbeddedTextures extends RapiMaterial {
@@ -442,10 +446,87 @@ declare module "common/store/common-ui-state" {
442
446
  }
443
447
  export const commonUiState: Module<CommonUiState, StoreState>;
444
448
  }
449
+ declare module "planner/utils/planner-sidebar" {
450
+ import { KernelPartList, UiPlanObject } from '@roomle/web-sdk/lib/definitions/typings/kernel';
451
+ import { Store } from 'vuex';
452
+ import { StoreState } from "common/store/index";
453
+ import { SdkConnector } from "configurator/business-logic/sdk-connector";
454
+ import { RapiConfiguration, RapiItem } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
455
+ export interface PlannerSidebarState {
456
+ welcome: boolean;
457
+ catalog: boolean;
458
+ productList: boolean;
459
+ partList: boolean;
460
+ sampleRooms: boolean;
461
+ selectionDetail: boolean;
462
+ mobileExpanded: boolean;
463
+ [key: string]: boolean;
464
+ }
465
+ export interface ProductListItem extends UiPlanObject {
466
+ quantity: number;
467
+ }
468
+ export const initialPlannerSidebarState: PlannerSidebarState;
469
+ export const matchProductListAndQuantity: (productList: UiPlanObject[]) => ProductListItem[];
470
+ export const fillPartList: (data: RapiItem | RapiConfiguration, partList: KernelPartList, hash: string, sdkConnector: SdkConnector, store: Store<StoreState>) => Promise<void>;
471
+ }
472
+ declare module "planner/store/planner-ui-state" {
473
+ import { Module } from 'vuex';
474
+ import { SharedUiState, StoreState } from "common/store/index";
475
+ import { Nullable } from "common/utils/types";
476
+ import { SelectionPayload } from '@roomle/web-sdk/lib/definitions/planner-core/src/roomle-planner-ui-callback';
477
+ import { BUTTON_ACTIONS } from "configurator/store/ui-state";
478
+ import { RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
479
+ import { PlannerSidebarState } from "planner/utils/planner-sidebar";
480
+ import { KernelWall } from '@roomle/web-sdk/lib/definitions/typings/planner';
481
+ type SelectionType = 'static' | 'configuration';
482
+ export interface PlannerUiState extends SharedUiState {
483
+ selection: Nullable<SelectionType>;
484
+ selectionPayload: Nullable<SelectionPayload>;
485
+ isDrag: boolean;
486
+ catalogTags: Nullable<RapiTagForUi[]>;
487
+ actionMenuExpanded: boolean;
488
+ selectedActions: BUTTON_ACTIONS[];
489
+ stackViewStack: PlannerSidebarState[];
490
+ lastWalls: KernelWall[];
491
+ }
492
+ export enum PLANNER_UI_STATE_MUTATIONS {
493
+ SET_SELECTION_PAYLOAD = "PLANNER_UI_STATE_setSelectionPayload",
494
+ SET_SELECTION = "PLANNER_UI_STATE_setSelection",
495
+ SET_IS_LANDSCAPE = "PLANNER_UI_STATE_setIsLandscape",
496
+ SET_INTERACTIONS_EXPANDED = "PLANNER_UI_STATE_setInteractionsExpanded",
497
+ SET_IS_FULLSCREEN = "PLANNER_UI_STATE_setIsFullscreen",
498
+ SET_IS_DESKTOP = "PLANNER_UI_STATE_setIsDesktop",
499
+ SET_LAST_REGULAR_VIEW_MODE = "PLANNER_UI_STATE_SET_LAST_REGULAR_VIEW_MODE",
500
+ SET_CATALOG_ROOT_TAG = "PLANNER_UI_STATE_SET_CATALOG_ROOT_TAG",
501
+ SET_IS_DRAG = "SET_IS_DRAG",
502
+ SET_ACTION_SELECTED = "SET_ACTION_SELECTED",
503
+ SET_ACTION_DESELECTED = "SET_ACTION_DESELECTED",
504
+ SET_ACTION_MENU_EXPANDED = "SET_ACTION_MENU_EXPANDED",
505
+ SET_TOPBAR_ACTION_SELECTED = "SET_TOPBAR_ACTION_SELECTED",
506
+ SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED",
507
+ PUSH_SIDEBAR_VIEW = "PUSH_SIDEBAR_VIEW",
508
+ POP_SIDEBAR_VIEW = "POP_SIDEBAR_VIEW",
509
+ CLEAR_SIDEBAR = "CLEAR_SIDEBAR",
510
+ SET_LAST_WALLS = "SET_LAST_WALLS"
511
+ }
512
+ export enum PLANNER_UI_STATE_ACTIONS {
513
+ SELECT_VIEW_MODE = "PLANNER_UI_STATE_SELECT_VIEW_MODE",
514
+ SET_INTERACTIONS_EXPANDED = "PLANNER_UI_STATE_SET_INTERACTIONS_EXPANDED",
515
+ DESELECT_SIDEBAR_ACTION_BUTTONS = "DESELECT_SIDEBAR_ACTION_BUTTONS"
516
+ }
517
+ export enum PLANNER_UI_STATE_GETTERS {
518
+ CATALOG_ROOT_TAG = "PLANNER_UI_STATE_CATALOG_ROOT_TAG",
519
+ SELECTED_ITEM_PAYLOAD = "PLANNER_UI_STATE_SELECTED_ITEM_PAYLOAD",
520
+ PART_LIST_PLANNER_SHOWN = "PART_LIST_PLANNER_SHOWN",
521
+ PRODUCT_LIST_SHOWN = "PRODUCT_LIST_SHOWN",
522
+ LAST_OF_STACK_VIEW_STACK = "LAST_OF_STACK_VIEW_STACK"
523
+ }
524
+ export const plannerUiState: Module<PlannerUiState, StoreState>;
525
+ }
445
526
  declare module "common/store/collection-view-state" {
446
527
  import { Module } from 'vuex';
447
528
  import { Nullable } from "common/utils/types";
448
- import { CollectionViewElement } from "configurator/components/collection-view/-utils/types";
529
+ import { CollectionViewElement } from "common/components/collection-view/-utils/types";
449
530
  import { StoreState } from "common/store/index";
450
531
  export interface GridViewUiState {
451
532
  filter: string[];
@@ -461,7 +542,8 @@ declare module "common/store/collection-view-state" {
461
542
  export const getInitialCollectionViewState: () => CollectionViewUiState;
462
543
  export enum COLLECTION_VIEW_STATE_MUTATIONS {
463
544
  ELEMENT_EXPANDED = "CV_ELEMENT_EXPANDED",
464
- SET_SELECTED_ELEMENT = "CV_SET_SELECTED_ELEMENT"
545
+ SET_SELECTED_ELEMENT = "CV_SET_SELECTED_ELEMENT",
546
+ RESET_COLLECTION_VIEW = "RESET_COLLECTION_VIEW"
465
547
  }
466
548
  export enum GRID_VIEW_STATE_MUTATIONS {
467
549
  SET_SEARCH = "GV_SET_SEARCH",
@@ -607,69 +689,11 @@ declare module "configurator/store/ui-state" {
607
689
  export const initialState: UiState;
608
690
  export const uiState: Module<UiState, StoreState>;
609
691
  }
610
- declare module "planner/store/planner-ui-state" {
611
- import { Module } from 'vuex';
612
- import { SharedUiState, StoreState } from "common/store/index";
613
- import { Nullable } from "common/utils/types";
614
- import { SelectionPayload } from '@roomle/web-sdk/lib/definitions/planner-core/src/roomle-planner-ui-callback';
615
- import { BUTTON_ACTIONS } from "configurator/store/ui-state";
616
- import { RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
617
- type SelectionType = 'static' | 'configuration';
618
- export interface PlannerUiState extends SharedUiState {
619
- selection: Nullable<SelectionType>;
620
- selectionPayload: Nullable<SelectionPayload>;
621
- showCatalog: boolean;
622
- isDrag: boolean;
623
- catalogTags: Nullable<RapiTagForUi[]>;
624
- actionMenuExpanded: boolean;
625
- selectedActions: BUTTON_ACTIONS[];
626
- }
627
- export enum PLANNER_UI_STATE_MUTATIONS {
628
- SET_SELECTION_PAYLOAD = "PLANNER_UI_STATE_setSelectionPayload",
629
- SET_SELECTION = "PLANNER_UI_STATE_setSelection",
630
- SET_IS_LANDSCAPE = "PLANNER_UI_STATE_setIsLandscape",
631
- SET_INTERACTIONS_EXPANDED = "PLANNER_UI_STATE_setInteractionsExpanded",
632
- SET_IS_FULLSCREEN = "PLANNER_UI_STATE_setIsFullscreen",
633
- SET_IS_DESKTOP = "PLANNER_UI_STATE_setIsDesktop",
634
- SET_LAST_REGULAR_VIEW_MODE = "PLANNER_UI_STATE_SET_LAST_REGULAR_VIEW_MODE",
635
- SET_SHOW_CATALOG = "PLANNER_UI_STATE_SET_SHOW_CATALOG",
636
- SET_CATALOG_ROOT_TAG = "PLANNER_UI_STATE_SET_CATALOG_ROOT_TAG",
637
- SET_IS_DRAG = "SET_IS_DRAG",
638
- SET_ACTION_SELECTED = "SET_ACTION_SELECTED",
639
- SET_ACTION_DESELECTED = "SET_ACTION_DESELECTED",
640
- SET_ACTION_MENU_EXPANDED = "SET_ACTION_MENU_EXPANDED",
641
- SET_TOPBAR_ACTION_SELECTED = "SET_TOPBAR_ACTION_SELECTED",
642
- SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED"
643
- }
644
- export enum PLANNER_UI_STATE_ACTIONS {
645
- SELECT_VIEW_MODE = "PLANNER_UI_STATE_SELECT_VIEW_MODE",
646
- SET_INTERACTIONS_EXPANDED = "PLANNER_UI_STATE_SET_INTERACTIONS_EXPANDED"
647
- }
648
- export enum PLANNER_UI_STATE_GETTERS {
649
- CATALOG_ROOT_TAG = "PLANNER_UI_STATE_CATALOG_ROOT_TAG",
650
- SELECTED_ITEM_PAYLOAD = "PLANNER_UI_STATE_SELECTED_ITEM_PAYLOAD",
651
- PART_LIST_PLANNER_SHOWN = "PART_LIST_PLANNER_SHOWN",
652
- PRODUCT_LIST_SHOWN = "PRODUCT_LIST_SHOWN"
653
- }
654
- export const plannerUiState: Module<PlannerUiState, StoreState>;
655
- }
656
- declare module "planner/utils/product-list" {
657
- import { KernelPartList, UiPlanObject } from '@roomle/web-sdk/lib/definitions/typings/kernel';
658
- import { Store } from 'vuex';
659
- import { StoreState } from "common/store/index";
660
- import { SdkConnector } from "configurator/business-logic/sdk-connector";
661
- import { RapiConfiguration, RapiItem } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
662
- export interface ProductListItem extends UiPlanObject {
663
- quantity: number;
664
- }
665
- export const matchProductListAndQuantity: (productList: UiPlanObject[]) => ProductListItem[];
666
- export const fillPartList: (data: RapiItem | RapiConfiguration, partList: KernelPartList, hash: string, sdkConnector: SdkConnector, store: Store<StoreState>) => Promise<void>;
667
- }
668
692
  declare module "planner/store/planner-core-data" {
669
693
  import { StoreState } from "common/store/index";
670
694
  import { Nullable } from "common/utils/types";
671
695
  import { Module } from 'vuex';
672
- import { ProductListItem } from "planner/utils/product-list";
696
+ import { ProductListItem } from "planner/utils/planner-sidebar";
673
697
  export interface PlannerCoreData {
674
698
  productList: ProductListItem[];
675
699
  currencySymbol: string;
@@ -713,6 +737,7 @@ declare module "common/store/index" {
713
737
  UPDATE_CURRENCY_SYMBOL: PLANNER_CORE_DATA_MUTATIONS.UPDATE_CURRENCY_SYMBOL;
714
738
  ELEMENT_EXPANDED: COLLECTION_VIEW_STATE_MUTATIONS.ELEMENT_EXPANDED;
715
739
  SET_SELECTED_ELEMENT: COLLECTION_VIEW_STATE_MUTATIONS.SET_SELECTED_ELEMENT;
740
+ RESET_COLLECTION_VIEW: COLLECTION_VIEW_STATE_MUTATIONS.RESET_COLLECTION_VIEW;
716
741
  SET_IS_IN_IFRAME: COMMON_UI_STATE_MUTATIONS.SET_IS_IN_IFRAME;
717
742
  SET_IS_VIEW_ONLY: COMMON_UI_STATE_MUTATIONS.SET_IS_VIEW_ONLY;
718
743
  SET_LAST_REQUESTED_ID: COMMON_UI_STATE_MUTATIONS.SET_LAST_REQUESTED_ID;
@@ -723,7 +748,6 @@ declare module "common/store/index" {
723
748
  SET_IS_FULLSCREEN: PLANNER_UI_STATE_MUTATIONS.SET_IS_FULLSCREEN;
724
749
  SET_IS_DESKTOP: PLANNER_UI_STATE_MUTATIONS.SET_IS_DESKTOP;
725
750
  SET_LAST_REGULAR_VIEW_MODE: PLANNER_UI_STATE_MUTATIONS.SET_LAST_REGULAR_VIEW_MODE;
726
- SET_SHOW_CATALOG: PLANNER_UI_STATE_MUTATIONS.SET_SHOW_CATALOG;
727
751
  SET_CATALOG_ROOT_TAG: PLANNER_UI_STATE_MUTATIONS.SET_CATALOG_ROOT_TAG;
728
752
  SET_IS_DRAG: PLANNER_UI_STATE_MUTATIONS.SET_IS_DRAG;
729
753
  SET_ACTION_SELECTED: PLANNER_UI_STATE_MUTATIONS.SET_ACTION_SELECTED;
@@ -731,6 +755,10 @@ declare module "common/store/index" {
731
755
  SET_ACTION_MENU_EXPANDED: PLANNER_UI_STATE_MUTATIONS.SET_ACTION_MENU_EXPANDED;
732
756
  SET_TOPBAR_ACTION_SELECTED: PLANNER_UI_STATE_MUTATIONS.SET_TOPBAR_ACTION_SELECTED;
733
757
  SET_TOPBAR_ACTION_DESELECTED: PLANNER_UI_STATE_MUTATIONS.SET_TOPBAR_ACTION_DESELECTED;
758
+ PUSH_SIDEBAR_VIEW: PLANNER_UI_STATE_MUTATIONS.PUSH_SIDEBAR_VIEW;
759
+ POP_SIDEBAR_VIEW: PLANNER_UI_STATE_MUTATIONS.POP_SIDEBAR_VIEW;
760
+ CLEAR_SIDEBAR: PLANNER_UI_STATE_MUTATIONS.CLEAR_SIDEBAR;
761
+ SET_LAST_WALLS: PLANNER_UI_STATE_MUTATIONS.SET_LAST_WALLS;
734
762
  SET_SELECTED_GROUP: UI_STATE_MUTATIONS.SET_SELECTED_GROUP;
735
763
  SET_IS_PART_LIST_SHOWN: UI_STATE_MUTATIONS.SET_IS_PART_LIST_SHOWN;
736
764
  SHOW_ONLY_ADDONS: UI_STATE_MUTATIONS.SHOW_ONLY_ADDONS;
@@ -0,0 +1,5 @@
1
+ export declare class EventBus<ListenerType> {
2
+ listeners: ListenerType[];
3
+ addListener(listener: ListenerType): void;
4
+ removeListener(listener: ListenerType): void;
5
+ }
@@ -1,6 +1,6 @@
1
1
  import { Module } from 'vuex';
2
2
  import { Nullable } from '@/common/utils/types';
3
- import { CollectionViewElement } from '@/configurator/components/collection-view/-utils/types';
3
+ import { CollectionViewElement } from '@/common/components/collection-view/-utils/types';
4
4
  import { StoreState } from '@/common/store';
5
5
  export interface GridViewUiState {
6
6
  filter: string[];
@@ -16,7 +16,8 @@ export interface CollectionViewUiState {
16
16
  export declare const getInitialCollectionViewState: () => CollectionViewUiState;
17
17
  export declare enum COLLECTION_VIEW_STATE_MUTATIONS {
18
18
  ELEMENT_EXPANDED = "CV_ELEMENT_EXPANDED",
19
- SET_SELECTED_ELEMENT = "CV_SET_SELECTED_ELEMENT"
19
+ SET_SELECTED_ELEMENT = "CV_SET_SELECTED_ELEMENT",
20
+ RESET_COLLECTION_VIEW = "RESET_COLLECTION_VIEW"
20
21
  }
21
22
  export declare enum GRID_VIEW_STATE_MUTATIONS {
22
23
  SET_SEARCH = "GV_SET_SEARCH",
@@ -22,6 +22,7 @@ export declare const MUTATIONS: {
22
22
  UPDATE_CURRENCY_SYMBOL: PLANNER_CORE_DATA_MUTATIONS.UPDATE_CURRENCY_SYMBOL;
23
23
  ELEMENT_EXPANDED: COLLECTION_VIEW_STATE_MUTATIONS.ELEMENT_EXPANDED;
24
24
  SET_SELECTED_ELEMENT: COLLECTION_VIEW_STATE_MUTATIONS.SET_SELECTED_ELEMENT;
25
+ RESET_COLLECTION_VIEW: COLLECTION_VIEW_STATE_MUTATIONS.RESET_COLLECTION_VIEW;
25
26
  SET_IS_IN_IFRAME: COMMON_UI_STATE_MUTATIONS.SET_IS_IN_IFRAME;
26
27
  SET_IS_VIEW_ONLY: COMMON_UI_STATE_MUTATIONS.SET_IS_VIEW_ONLY;
27
28
  SET_LAST_REQUESTED_ID: COMMON_UI_STATE_MUTATIONS.SET_LAST_REQUESTED_ID;
@@ -32,7 +33,6 @@ export declare const MUTATIONS: {
32
33
  SET_IS_FULLSCREEN: PLANNER_UI_STATE_MUTATIONS.SET_IS_FULLSCREEN;
33
34
  SET_IS_DESKTOP: PLANNER_UI_STATE_MUTATIONS.SET_IS_DESKTOP;
34
35
  SET_LAST_REGULAR_VIEW_MODE: PLANNER_UI_STATE_MUTATIONS.SET_LAST_REGULAR_VIEW_MODE;
35
- SET_SHOW_CATALOG: PLANNER_UI_STATE_MUTATIONS.SET_SHOW_CATALOG;
36
36
  SET_CATALOG_ROOT_TAG: PLANNER_UI_STATE_MUTATIONS.SET_CATALOG_ROOT_TAG;
37
37
  SET_IS_DRAG: PLANNER_UI_STATE_MUTATIONS.SET_IS_DRAG;
38
38
  SET_ACTION_SELECTED: PLANNER_UI_STATE_MUTATIONS.SET_ACTION_SELECTED;
@@ -40,6 +40,10 @@ export declare const MUTATIONS: {
40
40
  SET_ACTION_MENU_EXPANDED: PLANNER_UI_STATE_MUTATIONS.SET_ACTION_MENU_EXPANDED;
41
41
  SET_TOPBAR_ACTION_SELECTED: PLANNER_UI_STATE_MUTATIONS.SET_TOPBAR_ACTION_SELECTED;
42
42
  SET_TOPBAR_ACTION_DESELECTED: PLANNER_UI_STATE_MUTATIONS.SET_TOPBAR_ACTION_DESELECTED;
43
+ PUSH_SIDEBAR_VIEW: PLANNER_UI_STATE_MUTATIONS.PUSH_SIDEBAR_VIEW;
44
+ POP_SIDEBAR_VIEW: PLANNER_UI_STATE_MUTATIONS.POP_SIDEBAR_VIEW;
45
+ CLEAR_SIDEBAR: PLANNER_UI_STATE_MUTATIONS.CLEAR_SIDEBAR;
46
+ SET_LAST_WALLS: PLANNER_UI_STATE_MUTATIONS.SET_LAST_WALLS;
43
47
  SET_SELECTED_GROUP: UI_STATE_MUTATIONS.SET_SELECTED_GROUP;
44
48
  SET_IS_PART_LIST_SHOWN: UI_STATE_MUTATIONS.SET_IS_PART_LIST_SHOWN;
45
49
  SHOW_ONLY_ADDONS: UI_STATE_MUTATIONS.SHOW_ONLY_ADDONS;
@@ -1,6 +1,6 @@
1
- import { RapiMaterial, RapiMaterialGroup, RapiTexture, RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
1
+ import { RapiMaterial, RapiMaterialGroup, RapiTagForUi, RapiTexture } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
2
2
  import { KernelPartListParameter, UiPossibleChildTag } from '@roomle/web-sdk/lib/definitions/typings/kernel';
3
- import { CollectionViewElement } from '@/configurator/components/collection-view/-utils/types';
3
+ import { CollectionViewElement } from '@/common/components/collection-view/-utils/types';
4
4
  import { VariantsMap } from '@/configurator/embedding/types';
5
5
  import RoomleConfigurator from '@roomle/web-sdk/lib/definitions/configurator-core/src/roomle-configurator';
6
6
  export interface RapiMaterialEmbeddedTextures extends RapiMaterial {
@@ -1,20 +1,19 @@
1
1
  import { Nullable } from '@/common/utils/types';
2
- export declare const TOUCH_DRAG_DELAY = 75;
3
- export declare const TOUCH_DRAG_EPSILON = 10;
2
+ export declare const TOUCH_DRAG_TIMEOUT = 500;
4
3
  export interface TouchDragCallbacks {
5
4
  onTouchDragStart: (payload: Nullable<any>, event: TouchEvent) => void;
6
5
  }
7
6
  export declare class TouchDrag<Payload> {
8
- private _detectTouchDragInterval;
9
- private _firstTouch;
10
- private _lastTouch;
7
+ private _touchDragTimeOut;
11
8
  private _onTouchDragStart;
12
9
  private _payload;
13
- constructor(payload: Payload, { onTouchDragStart }: TouchDragCallbacks);
10
+ private _delay;
11
+ constructor(payload: Payload, { onTouchDragStart }: TouchDragCallbacks, options?: {
12
+ delay?: number;
13
+ });
14
14
  onTouchStart(event: TouchEvent): void;
15
15
  onTouchEnd(): void;
16
- onTouchMove(event: TouchEvent): void;
17
- private _clearInterval;
16
+ onTouchMove(_event: TouchEvent): void;
17
+ private _clearTimeout;
18
18
  private _resetTouches;
19
- private _detectTouchDrag;
20
19
  }
@@ -11,3 +11,5 @@ export declare enum USER_ACTION {
11
11
  SHARE_AR = 301,
12
12
  SAVE_DRAFT = 302
13
13
  }
14
+ export declare type ToggleCallback = (isExpanded: boolean) => void;
15
+ export declare type CloseReason = 'toggle';
@@ -21,7 +21,8 @@ export declare enum UI_BUTTON {
21
21
  REDO = "redo",
22
22
  PARTLIST_PLANNER = "partlist_planner",
23
23
  PRODUCTLIST = "productlist",
24
- TWO_D_VIEW = "2dview"
24
+ TWO_D_VIEW = "2dview",
25
+ ADD_ROOM = "add_room"
25
26
  }
26
27
  interface FeatureFlags {
27
28
  realPartList?: boolean;
@@ -50,6 +51,7 @@ export interface UiInitData extends InitDataDefinition, GlobalInitDataDefinition
50
51
  [UI_BUTTON.REDO]?: boolean;
51
52
  [UI_BUTTON.TWO_D_VIEW]?: boolean;
52
53
  [UI_BUTTON.PARTLIST_PLANNER]?: boolean;
54
+ [UI_BUTTON.ADD_ROOM]?: boolean;
53
55
  };
54
56
  skin?: EmbeddingSkin;
55
57
  zIndex?: number;
@@ -1,4 +1,4 @@
1
- import { CollectionViewElement } from '@/configurator/components/collection-view/-utils/types';
1
+ import { CollectionViewElement } from '@/common/components/collection-view/-utils/types';
2
2
  import { WallDefinition } from '@roomle/web-sdk/lib/definitions/planner-core/src/roomle-planner';
3
3
  import { PlanOverview } from '@roomle/web-sdk/lib/definitions/typings/planner';
4
4
  export declare type RoomType = 'wall' | 'corner' | 'square' | 'L';
@@ -1,7 +1,7 @@
1
1
  import { StoreState } from '@/common/store';
2
2
  import { Nullable } from '@/common/utils/types';
3
3
  import { Module } from 'vuex';
4
- import { ProductListItem } from '@/planner/utils/product-list';
4
+ import { ProductListItem } from '@/planner/utils/planner-sidebar';
5
5
  export interface PlannerCoreData {
6
6
  productList: ProductListItem[];
7
7
  currencySymbol: string;