@roomle/embedding-lib 4.39.0 → 4.42.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 (33) hide show
  1. package/docs/__sidebar__.json +14 -0
  2. package/docs/api/classes/exposed_analytics_callbacks.ExposedAnalyticsCallbacks.md +1 -1
  3. package/docs/api/classes/exposed_api.ExposedApi.md +11 -11
  4. package/docs/api/classes/exposed_callbacks.ExposedCallbacks.md +8 -8
  5. package/docs/api/classes/roomle_configurator_api.default.md +9 -9
  6. package/docs/api/enums/types.UI_BUTTON.md +33 -22
  7. package/docs/api/interfaces/exposed_callbacks.Labels.md +2 -2
  8. package/docs/api/interfaces/exposed_callbacks.Price.md +2 -2
  9. package/docs/api/interfaces/roomle_configurator_api.RoomleEmbeddingApiKeys.md +4 -4
  10. package/docs/api/interfaces/types.ConfiguratorSettings.md +5 -5
  11. package/docs/api/interfaces/types.EmbeddingSkin.md +5 -5
  12. package/docs/api/interfaces/types.UiInitData.md +31 -16
  13. package/docs/api/modules/roomle_configurator_api.md +3 -3
  14. package/docs/hsp.md +61 -0
  15. package/docs/integration.md +1101 -0
  16. package/docs/md/web/ui/EMBEDDING-CHANGELOG.md +8 -21
  17. package/docs/migration-guides/v2-to-v3.md +2 -2
  18. package/docs/moc/index.md +86 -0
  19. package/docs/simple.md +1 -1
  20. package/package.json +2 -2
  21. package/types/index.d.ts +20 -5
  22. package/types/src/common/store/collection-view-state.d.ts +2 -1
  23. package/types/src/common/store/common-ui-state.d.ts +1 -1
  24. package/types/src/common/store/index.d.ts +2 -0
  25. package/types/src/configurator/embedding/exposed-api.d.ts +0 -1
  26. package/types/src/configurator/embedding/types.d.ts +8 -1
  27. package/types/src/configurator/store/ui-state.d.ts +7 -1
  28. package/types/tests/helpers/data/parameters.d.ts +33 -0
  29. package/types/tests/helpers/dom.d.ts +1 -1
  30. package/types/tests/integration/configurator/components/parameters/BackParameterGroupButton.spec.d.ts +1 -0
  31. package/types/tests/integration/planner/components/utils/sidebar-nav/SidebarNav.spec.d.ts +1 -0
  32. package/types/tests/unit/configurator/components/utils/WordWrap.spec.d.ts +1 -0
  33. package/docs/index.md +0 -847
@@ -1,29 +1,16 @@
1
- ## [4.39.0](https://gitlab.com/roomle/web/roomle-ui/compare/embedding-v4.38.0...embedding-v4.39.0) (2022-07-19)
1
+ ## [4.42.0](https://gitlab.com/roomle/web/roomle-ui/compare/embedding-v4.41.0...embedding-v4.42.0) (2022-08-30)
2
2
 
3
3
 
4
4
  ### Features
5
5
 
6
- * add bigger thumbnail design ([fb0e917](https://gitlab.com/roomle/web/roomle-ui/commit/fb0e917dd99c6bf55cb69067b7cbc80c1084cf6c))
7
- * add correct styling of thumbnails in mobile ([bf3fd0f](https://gitlab.com/roomle/web/roomle-ui/commit/bf3fd0f28309c292e470f47fafaef458b9b6632b))
8
- * **SDK:** upgrade to version 2.35.1-alpha.1 ([d864df7](https://gitlab.com/roomle/web/roomle-ui/commit/d864df7261fd7ba8dccc86f206bbe03620e38c11))
9
- * **SDK:** upgrade to version 2.35.1-alpha.1 ([bfd3d24](https://gitlab.com/roomle/web/roomle-ui/commit/bfd3d24c3d2d66b0d9270bb8625fb1b5e68e92c2))
10
- * **SDK:** upgrade to version 2.36.0-alpha.1 ([6d5fae3](https://gitlab.com/roomle/web/roomle-ui/commit/6d5fae3851988aa6f77d0f46dc3a3f364c1df292))
11
- * **SDK:** upgrade to version 2.36.0-alpha.2 ([66197b1](https://gitlab.com/roomle/web/roomle-ui/commit/66197b1699f22229614c753948c233d30456c6e4))
12
- * **SDK:** upgrade to version 2.36.0-alpha.3 ([92c3065](https://gitlab.com/roomle/web/roomle-ui/commit/92c30653eb3e625d5c69e748f3fb447547573d8d))
6
+ * add "back button" for parameter groups ([e30030d](https://gitlab.com/roomle/web/roomle-ui/commit/e30030d07b9658ba16fa03aa06a8c66cb9194f54))
7
+ * MoC: Show Action buttons on object ([b2f78d4](https://gitlab.com/roomle/web/roomle-ui/commit/b2f78d4ca617393777f09f53062205c416a189f5))
8
+ * MoC: show measurements for walls in 2D ([298e3ed](https://gitlab.com/roomle/web/roomle-ui/commit/298e3ed20288f8049f383131d7af253c25b29bcf))
9
+ * **SDK:** upgrade to version 2.37.0 ([47866eb](https://gitlab.com/roomle/web/roomle-ui/commit/47866eb12e1ed304fcb49f1501086830f24872a6))
10
+ * **SDK:** upgrade to version 2.38.0 ([4e41522](https://gitlab.com/roomle/web/roomle-ui/commit/4e41522025ba9daa892ebbd38e022b1ae901ad54))
11
+ * **SDK:** upgrade to version 2.38.0-alpha.1 ([6324149](https://gitlab.com/roomle/web/roomle-ui/commit/632414927a14d3ac323c1786b5268e943257300d))
13
12
 
14
13
 
15
14
  ### Bug Fixes
16
15
 
17
- * Add addons icon on mobile need some right padding ([63fd194](https://gitlab.com/roomle/web/roomle-ui/commit/63fd1947e955e2415f49c0b32b88a21d0cec00a0))
18
- * big thumbnails should have the same padding left and right ([a5a4ea6](https://gitlab.com/roomle/web/roomle-ui/commit/a5a4ea6de717b69e306d74f423e65ad5765cc93f))
19
- * disable undo and redo in configurator when in MOC ([63c322c](https://gitlab.com/roomle/web/roomle-ui/commit/63c322cc53c3fe0af698cfdaf87b0b9a69fd1273))
20
- * elements label should only be displayed if there are no group labels ([81d71a4](https://gitlab.com/roomle/web/roomle-ui/commit/81d71a4ac4336ebc361945b18d75cd8a49588785))
21
- * failing tests and lint errors ([db8491a](https://gitlab.com/roomle/web/roomle-ui/commit/db8491ad5130cd50fe09f8584eea688b27e9c698))
22
- * function not defined error ([535d3b8](https://gitlab.com/roomle/web/roomle-ui/commit/535d3b8d5e095bfd05b8e315d4a7d4f8b9ea6cf2))
23
- * Group label of materials are missing ([d99727a](https://gitlab.com/roomle/web/roomle-ui/commit/d99727ab3d3bb58bb50a3ade8eb6cda4dc3e4a75))
24
- * hide archived items in MOC ([fd8a57b](https://gitlab.com/roomle/web/roomle-ui/commit/fd8a57ba849fd2acc706669ebebb17ca5319cfd0))
25
- * Partlist container doesn't have close icon on Rubens ([a010523](https://gitlab.com/roomle/web/roomle-ui/commit/a010523edc027a70140457af9ddd2bead213bda2))
26
- * Partlist is not shown when the interaction container is collapsed ([de8a985](https://gitlab.com/roomle/web/roomle-ui/commit/de8a985e95840a162f4d90ecbc54bb866af151a0))
27
- * set correct callback to enable undo and redo in MOC ([22b66ba](https://gitlab.com/roomle/web/roomle-ui/commit/22b66ba30f65925d5fde68db032762e72ad11286))
28
- * show the correct bottom bar label for both, moc and configurator ([ffa6c33](https://gitlab.com/roomle/web/roomle-ui/commit/ffa6c33d69f860a828f5685ad8ab4754d9265245))
29
- * update roomle-configurator-api for getting "createConfigurator" ([b725966](https://gitlab.com/roomle/web/roomle-ui/commit/b725966fefb8e04cee81b0a4f09332d3e8e03c5b))
16
+ * validRange for parameter values - if you set '"valueTo": 0', the slider does not stop at this limit ([63e7e63](https://gitlab.com/roomle/web/roomle-ui/commit/63e7e63c9a92adc10854ff2a7e1b8ed361fbb52c))
@@ -17,7 +17,7 @@ This has some implications:
17
17
 
18
18
  * to create this overlay, the Roomle Configurator has to be in control of all the DOM elements which are needed to expand over the whole page. Therefore things like the footer are now within the iframe and not custom made by the website or webshop. This makes embedding the Roomle Configurator easier because you do not have to wire up all the events and callbacks to create user interface elements like the footer. On the other hand, this also means that old parts of the embedding need to be removed from your website or webshop and re-thought.
19
19
  * also it is important to note that there shouldn't be elements with a higher z-index as the Roomle Configurator because the correct z-indices are needed for the full-page mode.
20
- * there is a back button which closes the full-page mode. If you need to listen to the event when the user clicks the back button this is possible and described in the section [react on button clicks](../index.md#react-on-button-clicks) in the docu.
20
+ * there is a back button which closes the full-page mode. If you need to listen to the event when the user clicks the back button this is possible and described in the section [react on button clicks](../integration.md#react-on-button-clicks) in the docu.
21
21
 
22
22
  With the new version, it is essential that you use the correct `configurator id`. You should get the configurator id from your Roomle contact person. This is important because of two reasons:
23
23
 
@@ -132,4 +132,4 @@ To make the embedding easier we slimmed down the API surface of the configurator
132
132
 
133
133
  We especially simplified the skinning options because we think that the current user interface is very "neutral" and should fit with slight adjustments to most of the websites and webshops out there. If there is a strong demand for huge user interface adjustments and changes we can offer the Roomle Web SDK or forking of the UI repo. If this is really needed please speak with your Roomle contact person.
134
134
 
135
- Because the user interface changed completely it's also a good time to rethink how the Roomle Configurator is embedded into your website or webshop. Therefore we recommend to read through the new docu and explore the new possibilities which the new configurator gives you. You can find the [new docu here](../index.md)
135
+ Because the user interface changed completely it's also a good time to rethink how the Roomle Configurator is embedded into your website or webshop. Therefore we recommend to read through the new docu and explore the new possibilities which the new configurator gives you. You can find the [new docu here](../integration.md)
@@ -0,0 +1,86 @@
1
+ ---
2
+ hide_title: true
3
+ title: "Multi-object Configurator"
4
+ ---
5
+
6
+ # Multi-object Configurator
7
+
8
+ The Multi-object Configurator allows you to configure not only one object but several objects in relation to each other.
9
+
10
+ ## Enable multi-object configuration
11
+
12
+ To enable MoC:
13
+
14
+ - To enable multi-object configuration, you need to add and set the `moc` flag in the `Rubens settings` to true
15
+ ([see Rubens Admin documentation](https://docs.roomle.com/web/datamanagement/administration.html#rubens-settings)).
16
+ When this flag is set, all configurators in the tenant are automatically multi-object configurators.
17
+
18
+ ## Setup the catalog structure
19
+
20
+ To offer a set of products in the MoC they must be stored in a catalog and tagged accordingly.
21
+ To display the products and divide them into categories, the tags must be structured correctly.
22
+
23
+ Each tag can be used as root tag for the MoC.
24
+ A sub-tag must be created for each category and each product that corresponds to this category must be tagged with it.
25
+ The tag structure could then look like this:
26
+
27
+ 1 moc_catalog (root-tag)
28
+ 2 |
29
+ 3 ├── Fences (sub-tag 1)
30
+ 4 |
31
+ 5 ├── Couch Tables (sub-tag 2)
32
+ 6 |
33
+ 7 ├── Outdoor Tables (sub-tag 3)
34
+ 8 |
35
+ 9 └── Sofas (sub-tag 4)
36
+
37
+ Also see Tags documentation: <https://docs.roomle.com/web/datamanagement/catalogs.html#tags>
38
+
39
+ By tagging the products in the catalog, you can add them to the scene by clicking the "Add Product" button.
40
+
41
+ ## Integration
42
+
43
+ To embed or integrate the MoC, the following parameters must be included in the URL
44
+
45
+ - configuratorId: The configurator ID of the tenant where you enabled the MoC
46
+ - catalogRootTag: The tag of the catalog where you stored the products you want to show in the MoC, Alternatively you
47
+ could also set the root-tag ID as catalogRootTag in your Rubens settings.
48
+ - moc: Enable the MoC feature in the Rubens settings or via integration.
49
+
50
+ Also see integration documentation: <https://docs.roomle.com/web/embedding/#embedding-integration>
51
+
52
+ ### Embedding:
53
+
54
+ If you are using the embedding lib you have to call `createPlanner` instead of `create` or `createConfigurator` to load
55
+ a MoC scene.
56
+
57
+ ## Recipes
58
+
59
+ ### Adding items to the scene
60
+
61
+ It’s possible to add additional products/items/configurations to the scene using the `insertObject` API:
62
+
63
+ ```typescript
64
+ await interface.ui.insertObject('usm:frame');
65
+ ```
66
+
67
+ By default the object is placed somewhere where it does not overlap with other items in the scene. You can also supply a
68
+ position and a rotation for the object in the scene:
69
+
70
+ ```typescript
71
+ await interface.ui.insertObject('usm:frame', {x: -3, y: 0, z: 3}, Math.PI);
72
+ ```
73
+
74
+ Position (2nd parameter) is in meters and the rotation (3rd parameter) is in radians.
75
+
76
+ ### Gets called when something is changed in the plan
77
+
78
+ It is possible to implement a behavior which gets called when there is something changed in the plan. It gets all
79
+ objects of the plan as parameter.
80
+
81
+ ```typescript
82
+ interface
83
+
84
+ .
85
+ ui.callbacks.onPlanUpdate = (objects) => doSomething;
86
+ ```
package/docs/simple.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Embedding
2
2
 
3
- To embed Roomle Rubens as an iframe in your website or webshop it is enough to create a link and use this link as a `src` in an iframe. It is important to note that we recommend this typ of integration for static items or very simple use cases. This is due to the fact that this simplistic iframe integration does not communicate anything to your website or webshop. This could become problematic when you want to hand over customized products to the shopping cart. If you need deeper integration you can use our [embedding integration](./index) or even [the Web Sdk](../guides/getting-started/preface) (in case you want to heavily modify our user interface).
3
+ To embed Roomle Rubens as an iframe in your website or webshop it is enough to create a link and use this link as a `src` in an iframe. It is important to note that we recommend this typ of integration for static items or very simple use cases. This is due to the fact that this simplistic iframe integration does not communicate anything to your website or webshop. This could become problematic when you want to hand over customized products to the shopping cart. If you need deeper integration you can use our [embedding integration](./integration) or even [the Web Sdk](../guides/sdk/preface) (in case you want to heavily modify our user interface).
4
4
 
5
5
  ## Questions
6
6
 
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@roomle/embedding-lib",
3
- "version": "4.39.0",
3
+ "version": "4.42.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.36.0-alpha.3"
8
+ "@roomle/web-sdk": "2.38.0"
9
9
  },
10
10
  "devDependencies": {
11
11
  "@semantic-release/changelog": "^5.0.1",
package/types/index.d.ts CHANGED
@@ -72,7 +72,8 @@ declare module "configurator/embedding/types" {
72
72
  PARTLIST_PLANNER = "partlist_planner",
73
73
  PRODUCTLIST = "productlist",
74
74
  TWO_D_VIEW = "2dview",
75
- ADD_ROOM = "add_room"
75
+ ADD_ROOM = "add_room",
76
+ STARTPLANNER = "startPlanner"
76
77
  }
77
78
  interface FeatureFlags {
78
79
  realPartList?: boolean;
@@ -102,6 +103,7 @@ declare module "configurator/embedding/types" {
102
103
  [UI_BUTTON.TWO_D_VIEW]?: boolean;
103
104
  [UI_BUTTON.PARTLIST_PLANNER]?: boolean;
104
105
  [UI_BUTTON.ADD_ROOM]?: boolean;
106
+ [UI_BUTTON.STARTPLANNER]?: boolean;
105
107
  };
106
108
  skin?: EmbeddingSkin;
107
109
  zIndex?: number;
@@ -179,6 +181,11 @@ declare module "configurator/embedding/types" {
179
181
  * default: true
180
182
  */
181
183
  applyCurrentGlobalParameters?: boolean;
184
+ /**
185
+ * set this flag to true if you want that a user can select more than one material category at once
186
+ * default: false
187
+ */
188
+ materialMultiSelect?: boolean;
182
189
  }
183
190
  export interface EmbeddingSkin {
184
191
  'primary-color'?: string;
@@ -441,7 +448,7 @@ declare module "common/store/common-ui-state" {
441
448
  import { RapiId } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
442
449
  export interface CommonUiState {
443
450
  isInIframe: boolean;
444
- isViewOnly: boolean;
451
+ isViewOnly: Nullable<boolean>;
445
452
  lastRequestedId: Nullable<RapiId>;
446
453
  }
447
454
  export const initialState: CommonUiState;
@@ -559,7 +566,8 @@ declare module "common/store/collection-view-state" {
559
566
  TOGGLE_FILTER = "GV_TOGGLE_FILTER",
560
567
  SET_USER_INITIATED_SEARCH = "GV_SET_USER_INITIATED_SEARCH",
561
568
  SET_VIEW_TYPE = "SET_VIEW_TYPE",
562
- SET_HAS_GROUP_LABEL = "SET_HAS_GROUP_LABEL"
569
+ SET_HAS_GROUP_LABEL = "SET_HAS_GROUP_LABEL",
570
+ RESET_FILTER = "RESET_FILTER"
563
571
  }
564
572
  interface MuationPayload<T, V> {
565
573
  state: T;
@@ -597,6 +605,7 @@ declare module "configurator/store/ui-state" {
597
605
  import { UiInitData } from "configurator/embedding/types";
598
606
  import { RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
599
607
  import { GridViewVariantElement } from "configurator/components/grid-view/-utils/GridViewHelper";
608
+ import { WallDimension } from '@roomle/web-sdk/lib/definitions/planner-core/src/view-model/wall-plan-element-view-model';
600
609
  export enum BUTTON_ACTIONS {
601
610
  AR = 0,
602
611
  PARTLIST = 1,
@@ -641,6 +650,9 @@ declare module "configurator/store/ui-state" {
641
650
  redoEnabled: boolean;
642
651
  undoEnabledPlanner: boolean;
643
652
  redoEnabledPlanner: boolean;
653
+ materialMultiSelect: boolean;
654
+ wallsDimensions: WallDimension[];
655
+ objPosOnPlanner: any[];
644
656
  }
645
657
  export enum UI_STATE_MUTATIONS {
646
658
  SET_SELECTED_GROUP = "setSelectedGroup",
@@ -669,7 +681,9 @@ declare module "configurator/store/ui-state" {
669
681
  SET_UNDO_PLANNER = "SET_UNDO_PLANNER",
670
682
  SET_REDO_PLANNER = "SET_REDO_PLANNER",
671
683
  SET_TOPBAR_ACTION_SELECTED = "SET_TOPBAR_ACTION_SELECTED",
672
- SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED"
684
+ SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED",
685
+ SET_WALLS_DIMENSIONS = "SET_WALLS_DIMENSIONS",
686
+ SET_PLANNER_OBJ_POS = "SET_PLANNER_OBJ_POS"
673
687
  }
674
688
  export enum UI_STATE_ACTIONS {
675
689
  SELECT_GROUP = "SELECT_GROUP",
@@ -788,6 +802,8 @@ declare module "common/store/index" {
788
802
  SET_REDO: UI_STATE_MUTATIONS.SET_REDO;
789
803
  SET_UNDO_PLANNER: UI_STATE_MUTATIONS.SET_UNDO_PLANNER;
790
804
  SET_REDO_PLANNER: UI_STATE_MUTATIONS.SET_REDO_PLANNER;
805
+ SET_WALLS_DIMENSIONS: UI_STATE_MUTATIONS.SET_WALLS_DIMENSIONS;
806
+ SET_PLANNER_OBJ_POS: UI_STATE_MUTATIONS.SET_PLANNER_OBJ_POS;
791
807
  UPDATE_GROUPS: CORE_DATA_MUTATIONS.UPDATE_GROUPS;
792
808
  UPDATE_PARAMETERS: CORE_DATA_MUTATIONS.UPDATE_PARAMETERS;
793
809
  UPDATE_ADDONS: CORE_DATA_MUTATIONS.UPDATE_ADDONS;
@@ -1330,7 +1346,6 @@ declare module "configurator/embedding/exposed-api" {
1330
1346
  private _websiteReady;
1331
1347
  private _handleMessage;
1332
1348
  private _forwardSdkCallbacks;
1333
- private _instanceOfRoomlePlanner;
1334
1349
  }
1335
1350
  }
1336
1351
  declare module "common/utils/merge" {
@@ -27,7 +27,8 @@ export declare enum GRID_VIEW_STATE_MUTATIONS {
27
27
  TOGGLE_FILTER = "GV_TOGGLE_FILTER",
28
28
  SET_USER_INITIATED_SEARCH = "GV_SET_USER_INITIATED_SEARCH",
29
29
  SET_VIEW_TYPE = "SET_VIEW_TYPE",
30
- SET_HAS_GROUP_LABEL = "SET_HAS_GROUP_LABEL"
30
+ SET_HAS_GROUP_LABEL = "SET_HAS_GROUP_LABEL",
31
+ RESET_FILTER = "RESET_FILTER"
31
32
  }
32
33
  interface MuationPayload<T, V> {
33
34
  state: T;
@@ -4,7 +4,7 @@ import { Nullable } from '@/common/utils/types';
4
4
  import { RapiId } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
5
5
  export interface CommonUiState {
6
6
  isInIframe: boolean;
7
- isViewOnly: boolean;
7
+ isViewOnly: Nullable<boolean>;
8
8
  lastRequestedId: Nullable<RapiId>;
9
9
  }
10
10
  export declare const initialState: CommonUiState;
@@ -63,6 +63,8 @@ export declare const MUTATIONS: {
63
63
  SET_REDO: UI_STATE_MUTATIONS.SET_REDO;
64
64
  SET_UNDO_PLANNER: UI_STATE_MUTATIONS.SET_UNDO_PLANNER;
65
65
  SET_REDO_PLANNER: UI_STATE_MUTATIONS.SET_REDO_PLANNER;
66
+ SET_WALLS_DIMENSIONS: UI_STATE_MUTATIONS.SET_WALLS_DIMENSIONS;
67
+ SET_PLANNER_OBJ_POS: UI_STATE_MUTATIONS.SET_PLANNER_OBJ_POS;
66
68
  UPDATE_GROUPS: CORE_DATA_MUTATIONS.UPDATE_GROUPS;
67
69
  UPDATE_PARAMETERS: CORE_DATA_MUTATIONS.UPDATE_PARAMETERS;
68
70
  UPDATE_ADDONS: CORE_DATA_MUTATIONS.UPDATE_ADDONS;
@@ -87,5 +87,4 @@ export declare class ExposedApi {
87
87
  private _websiteReady;
88
88
  private _handleMessage;
89
89
  private _forwardSdkCallbacks;
90
- private _instanceOfRoomlePlanner;
91
90
  }
@@ -22,7 +22,8 @@ export declare enum UI_BUTTON {
22
22
  PARTLIST_PLANNER = "partlist_planner",
23
23
  PRODUCTLIST = "productlist",
24
24
  TWO_D_VIEW = "2dview",
25
- ADD_ROOM = "add_room"
25
+ ADD_ROOM = "add_room",
26
+ STARTPLANNER = "startPlanner"
26
27
  }
27
28
  interface FeatureFlags {
28
29
  realPartList?: boolean;
@@ -52,6 +53,7 @@ export interface UiInitData extends InitDataDefinition, GlobalInitDataDefinition
52
53
  [UI_BUTTON.TWO_D_VIEW]?: boolean;
53
54
  [UI_BUTTON.PARTLIST_PLANNER]?: boolean;
54
55
  [UI_BUTTON.ADD_ROOM]?: boolean;
56
+ [UI_BUTTON.STARTPLANNER]?: boolean;
55
57
  };
56
58
  skin?: EmbeddingSkin;
57
59
  zIndex?: number;
@@ -129,6 +131,11 @@ export interface UiInitData extends InitDataDefinition, GlobalInitDataDefinition
129
131
  * default: true
130
132
  */
131
133
  applyCurrentGlobalParameters?: boolean;
134
+ /**
135
+ * set this flag to true if you want that a user can select more than one material category at once
136
+ * default: false
137
+ */
138
+ materialMultiSelect?: boolean;
132
139
  }
133
140
  export interface EmbeddingSkin {
134
141
  'primary-color'?: string;
@@ -7,6 +7,7 @@ import { OverlaysOpenState } from '@/configurator/components/-utils/overlays';
7
7
  import { UiInitData } from '@/configurator/embedding/types';
8
8
  import { RapiTagForUi } from '@roomle/web-sdk/lib/definitions/typings/rapi-types';
9
9
  import { GridViewVariantElement } from '@/configurator/components/grid-view/-utils/GridViewHelper';
10
+ import { WallDimension } from '@roomle/web-sdk/lib/definitions/planner-core/src/view-model/wall-plan-element-view-model';
10
11
  export declare enum BUTTON_ACTIONS {
11
12
  AR = 0,
12
13
  PARTLIST = 1,
@@ -51,6 +52,9 @@ export interface UiState extends SharedUiState {
51
52
  redoEnabled: boolean;
52
53
  undoEnabledPlanner: boolean;
53
54
  redoEnabledPlanner: boolean;
55
+ materialMultiSelect: boolean;
56
+ wallsDimensions: WallDimension[];
57
+ objPosOnPlanner: any[];
54
58
  }
55
59
  export declare enum UI_STATE_MUTATIONS {
56
60
  SET_SELECTED_GROUP = "setSelectedGroup",
@@ -79,7 +83,9 @@ export declare enum UI_STATE_MUTATIONS {
79
83
  SET_UNDO_PLANNER = "SET_UNDO_PLANNER",
80
84
  SET_REDO_PLANNER = "SET_REDO_PLANNER",
81
85
  SET_TOPBAR_ACTION_SELECTED = "SET_TOPBAR_ACTION_SELECTED",
82
- SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED"
86
+ SET_TOPBAR_ACTION_DESELECTED = "SET_TOPBAR_ACTION_DESELECTED",
87
+ SET_WALLS_DIMENSIONS = "SET_WALLS_DIMENSIONS",
88
+ SET_PLANNER_OBJ_POS = "SET_PLANNER_OBJ_POS"
83
89
  }
84
90
  export declare enum UI_STATE_ACTIONS {
85
91
  SELECT_GROUP = "SELECT_GROUP",
@@ -364,3 +364,36 @@ export declare const BOOLEAN_PARAMETER_CUSTOM_LABEL: {
364
364
  valueLabel: string;
365
365
  uiType: string;
366
366
  };
367
+ export declare const RANGE_PARAMETER_WITH_ZERO: {
368
+ key: string;
369
+ label: string;
370
+ type: string;
371
+ unitType: string;
372
+ value: string;
373
+ group: string;
374
+ enabled: boolean;
375
+ validRange: {
376
+ type: string;
377
+ valueFrom: number;
378
+ valueTo: number;
379
+ step: number;
380
+ };
381
+ validGroups: never[];
382
+ validValues: never[];
383
+ sort: number;
384
+ highlighted: boolean;
385
+ valuesAreEqual: boolean;
386
+ grouping: {
387
+ key: string;
388
+ label: string;
389
+ sort: number;
390
+ collapsed: boolean;
391
+ };
392
+ valueLabel: string;
393
+ uiType: string;
394
+ validRangeLabels: {
395
+ valueFrom: string;
396
+ valueTo: string;
397
+ type: string;
398
+ };
399
+ };
@@ -1 +1 @@
1
- export declare const SAFARI_HACK = "1 1 1";
1
+ export declare const SAFARI_HACK: RegExp;