@configuratorware/configurator-frontendgui 1.28.6 → 1.29.3

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 (482) hide show
  1. package/App/Constant.js +73 -0
  2. package/App/Error/DevelopmentErrorPage/index.js +74 -0
  3. package/App/Error/ErrorBoundary.js +98 -0
  4. package/App/Error/ProductionErrorPage/Style.scss +47 -0
  5. package/App/Error/ProductionErrorPage/index.js +43 -0
  6. package/App/Error/ProductionErrorPage/index.story.js +13 -0
  7. package/App/Error/ProductionErrorPage/res/error_gears.png +0 -0
  8. package/App/Frame.js +95 -0
  9. package/App/Modules/Creator/Components/ConfigurationvariantItem/Styles.scss +33 -0
  10. package/App/Modules/Creator/Components/ConfigurationvariantItem/index.js +118 -0
  11. package/App/Modules/Creator/Components/ConfigurationvariantSelection/Styles.scss +47 -0
  12. package/App/Modules/Creator/Components/ConfigurationvariantSelection/index.js +130 -0
  13. package/App/Modules/Creator/Components/CustomTitleEditor/Styles.scss +43 -0
  14. package/App/Modules/Creator/Components/CustomTitleEditor/index.js +144 -0
  15. package/App/Modules/Creator/Components/ExternalVisualization/index.js +140 -0
  16. package/App/Modules/Creator/Components/FastConfiguration/SelectableRow.js +128 -0
  17. package/App/Modules/Creator/Components/FastConfiguration/Styles.scss +53 -0
  18. package/App/Modules/Creator/Components/FastConfiguration/index.js +280 -0
  19. package/App/Modules/Creator/Components/FastConfigurationRow/Styles.scss +45 -0
  20. package/App/Modules/Creator/Components/FastConfigurationRow/index.js +78 -0
  21. package/App/Modules/Creator/Components/FastConfigurationSelect/Styles.scss +35 -0
  22. package/App/Modules/Creator/Components/FastConfigurationSelect/index.js +251 -0
  23. package/App/Modules/Creator/Components/FormattedNumber/index.js +45 -0
  24. package/App/Modules/Creator/Components/FormattedPrice/index.js +57 -0
  25. package/App/Modules/Creator/Components/FullScreenView/FullScreenView.js +104 -0
  26. package/App/Modules/Creator/Components/Incompatibility/OptionExclusionRule/index.js +186 -0
  27. package/App/Modules/Creator/Components/Incompatibility/OptionRule/index.js +182 -0
  28. package/App/Modules/Creator/Components/Incompatibility/RuleComponent.js +88 -0
  29. package/App/Modules/Creator/Components/Incompatibility/index.js +253 -0
  30. package/App/Modules/Creator/Components/InvalidConfigurationNotice/index.js +164 -0
  31. package/App/Modules/Creator/Components/LoginForm/Styles.scss +9 -0
  32. package/App/Modules/Creator/Components/LoginForm/index.js +129 -0
  33. package/App/Modules/Creator/Components/Option/index.js +545 -0
  34. package/App/Modules/Creator/Components/Option/index.story.js +154 -0
  35. package/App/Modules/Creator/Components/OptionAmount/index.js +236 -0
  36. package/App/Modules/Creator/Components/OptionGroup/index.js +55 -0
  37. package/App/Modules/Creator/Components/Optiondetail/ZoomImage/index.js +173 -0
  38. package/App/Modules/Creator/Components/Optiondetail/index.js +499 -0
  39. package/App/Modules/Creator/Components/Optiondetail/index.story.js +117 -0
  40. package/App/Modules/Creator/Components/OptionsList/index.js +193 -0
  41. package/App/Modules/Creator/Components/Price/Styles.scss +3 -0
  42. package/App/Modules/Creator/Components/Price/index.js +79 -0
  43. package/App/Modules/Creator/Components/ProductPart/index.js +187 -0
  44. package/App/Modules/Creator/Components/ProductPart/index.story.js +88 -0
  45. package/App/Modules/Creator/Components/ProductPartsList/index.js +153 -0
  46. package/App/Modules/Creator/Components/ProductPartsList/index.story.js +101 -0
  47. package/App/Modules/Creator/Components/SavedConfiguration/Styles.scss +19 -0
  48. package/App/Modules/Creator/Components/SavedConfiguration/index.js +82 -0
  49. package/App/Modules/Creator/Components/ShareConfiguration/Styles.scss +23 -0
  50. package/App/Modules/Creator/Components/ShareConfiguration/index.js +224 -0
  51. package/App/Modules/Creator/Components/StockInformation/index.js +93 -0
  52. package/App/Modules/Creator/Components/StoreConfigurationForm/Styles.scss +5 -0
  53. package/App/Modules/Creator/Components/StoreConfigurationForm/index.js +123 -0
  54. package/App/Modules/Creator/Components/Tools/Styles.scss +44 -0
  55. package/App/Modules/Creator/Components/Tools/index.js +102 -0
  56. package/App/Modules/Creator/Components/ValidationResult/Styles.scss +45 -0
  57. package/App/Modules/Creator/Components/ValidationResult/index.js +165 -0
  58. package/App/Modules/Creator/Components/index.js +84 -0
  59. package/App/Modules/Creator/Containers/AmountPrice/index.js +26 -0
  60. package/App/Modules/Creator/Containers/ConfigurationvariantSelection/index.js +60 -0
  61. package/App/Modules/Creator/Containers/CustomTitleEditor/index.js +52 -0
  62. package/App/Modules/Creator/Containers/FastConfiguration/index.js +62 -0
  63. package/App/Modules/Creator/Containers/FormattedPrice/index.js +31 -0
  64. package/App/Modules/Creator/Containers/Incompatibility/index.js +40 -0
  65. package/App/Modules/Creator/Containers/InvalidConfigurationNotice/index.js +89 -0
  66. package/App/Modules/Creator/Containers/LoadingOverlay/index.js +26 -0
  67. package/App/Modules/Creator/Containers/Optiondetail/index.js +48 -0
  68. package/App/Modules/Creator/Containers/OptionsList/index.js +49 -0
  69. package/App/Modules/Creator/Containers/ProductPart/index.js +26 -0
  70. package/App/Modules/Creator/Containers/ProductPartsList/index.js +50 -0
  71. package/App/Modules/Creator/Containers/SavedConfigurationContainer/index.js +25 -0
  72. package/App/Modules/Creator/Containers/ShareConfiguration/index.js +42 -0
  73. package/App/Modules/Creator/Containers/StockInformation/index.js +33 -0
  74. package/App/Modules/Creator/Containers/Tools/index.js +44 -0
  75. package/App/Modules/Creator/Containers/ValidationResult/index.js +34 -0
  76. package/App/Modules/Creator/Containers/index.js +175 -0
  77. package/App/Modules/Creator/CreatorScreen.js +307 -0
  78. package/App/Modules/Creator/Layouts/DefaultLayout.js +260 -0
  79. package/App/Modules/Creator/Styles.scss +216 -0
  80. package/App/Modules/Designer/Components/AddGalleryImage/index.js +234 -0
  81. package/App/Modules/Designer/Components/AddGalleryImage/index.story.js +94 -0
  82. package/App/Modules/Designer/Components/AddGalleryImage/index.test.js +151 -0
  83. package/App/Modules/Designer/Components/AddVisualElement/Styles.scss +0 -0
  84. package/App/Modules/Designer/Components/AddVisualElement/index.js +278 -0
  85. package/App/Modules/Designer/Components/AddVisualElement/index.story.js +24 -0
  86. package/App/Modules/Designer/Components/AddVisualElement/index.test.js +47 -0
  87. package/App/Modules/Designer/Components/CloseDesignEditor/index.js +130 -0
  88. package/App/Modules/Designer/Components/CloseGraphicsEditorButton/index.js +54 -0
  89. package/App/Modules/Designer/Components/ColorPalettes/ColorPalettesSearch.js +175 -0
  90. package/App/Modules/Designer/Components/ColorPalettes/index.js +814 -0
  91. package/App/Modules/Designer/Components/ColorPalettes/index.story.js +158 -0
  92. package/App/Modules/Designer/Components/ColorPalettes/index.test.js +150 -0
  93. package/App/Modules/Designer/Components/DesignAreaControlbox/Styles.scss +0 -0
  94. package/App/Modules/Designer/Components/DesignAreaControlbox/index.js +467 -0
  95. package/App/Modules/Designer/Components/DesignAreaControlbox/index.story.js +272 -0
  96. package/App/Modules/Designer/Components/DesignAreaControlbox/index.test.js +164 -0
  97. package/App/Modules/Designer/Components/DesignerSelectionToolbox/CustomFontOverlay.js +162 -0
  98. package/App/Modules/Designer/Components/DesignerSelectionToolbox/DesignerSelectionToolbox.js +425 -0
  99. package/App/Modules/Designer/Components/DesignerSelectionToolbox/fontItemUtils.js +48 -0
  100. package/App/Modules/Designer/Components/Dialog/index.js +125 -0
  101. package/App/Modules/Designer/Components/EditDesignButton/index.js +128 -0
  102. package/App/Modules/Designer/Components/FeedbackNotice/index.js +110 -0
  103. package/App/Modules/Designer/Components/FeedbackNotice/index.test.js +16 -0
  104. package/App/Modules/Designer/Components/FullScreenView/FullScreenView.js +63 -0
  105. package/App/Modules/Designer/Components/ImageColorPicker/ImageColorPicker.dev.js +32 -0
  106. package/App/Modules/Designer/Components/ImageColorPicker/ImageColorPicker.js +430 -0
  107. package/App/Modules/Designer/Components/ImageColorize/index.js +636 -0
  108. package/App/Modules/Designer/Components/ImageColorize/index.story.js +73 -0
  109. package/App/Modules/Designer/Components/ImageControlbox/index.js +302 -0
  110. package/App/Modules/Designer/Components/ImageEditDialog/ImageThumbnail.js +171 -0
  111. package/App/Modules/Designer/Components/ImageEditDialog/ImageUpload.js +478 -0
  112. package/App/Modules/Designer/Components/ImageEditDialog/index.js +716 -0
  113. package/App/Modules/Designer/Components/ImageEditDialog/res/baseline_colorize_black_24dp.png +0 -0
  114. package/App/Modules/Designer/Components/ImageEditDialog/res/checkers_tile.png +0 -0
  115. package/App/Modules/Designer/Components/ImageLibraryFilter/index.js +179 -0
  116. package/App/Modules/Designer/Components/ImageLibraryThumbnail/Styles.scss +14 -0
  117. package/App/Modules/Designer/Components/ImageLibraryThumbnail/index.js +165 -0
  118. package/App/Modules/Designer/Components/ObjectTools/index.js +146 -0
  119. package/App/Modules/Designer/Components/Select/index.js +171 -0
  120. package/App/Modules/Designer/Components/TextControlbox/TextFormatIcon.js +48 -0
  121. package/App/Modules/Designer/Components/TextControlbox/index.js +656 -0
  122. package/App/Modules/Designer/Components/TextControlbox/index.story.js +109 -0
  123. package/App/Modules/Designer/Components/TextControlbox/index.test.js +172 -0
  124. package/App/Modules/Designer/Containers/AddGalleryImage.js +90 -0
  125. package/App/Modules/Designer/Containers/AddVisualElement.js +166 -0
  126. package/App/Modules/Designer/Containers/CloseDesignEditor.js +32 -0
  127. package/App/Modules/Designer/Containers/CloseGraphicsEditorButton.js +32 -0
  128. package/App/Modules/Designer/Containers/ColorPalettes.js +145 -0
  129. package/App/Modules/Designer/Containers/DesignAreaControlbox.js +54 -0
  130. package/App/Modules/Designer/Containers/Designer.js +37 -0
  131. package/App/Modules/Designer/Containers/DesignerSelectionToolbox.js +116 -0
  132. package/App/Modules/Designer/Containers/EditDesignButton.js +35 -0
  133. package/App/Modules/Designer/Containers/ImageEditDialog.js +1130 -0
  134. package/App/Modules/Designer/Designer.js +231 -0
  135. package/App/Modules/Designer/DesignerScreen.js +255 -0
  136. package/App/Modules/Designer/DesignerUI.js +241 -0
  137. package/App/Modules/Designer/Layouts/DefaultLayout.js +221 -0
  138. package/App/Modules/Designer/Layouts/Mobile/TwoSideBottomBar.js +50 -0
  139. package/App/Modules/Designer/Layouts/PopupAreaProvider.js +186 -0
  140. package/App/Modules/Designer/MultilayerComponents/DesignerClickAwayListener.js +53 -0
  141. package/App/Modules/Designer/MultilayerComponents/InlineToolboxPortal.js +106 -0
  142. package/App/Modules/Designer/MultilayerComponents/StandardToolboxPortal.js +64 -0
  143. package/App/Modules/Designer/Utils/FontFaceRepository.js +82 -0
  144. package/App/Modules/Designer/Utils/ImageEditUtils.js +104 -0
  145. package/App/Modules/Designer/Utils/Transformers.js +164 -0
  146. package/App/Modules/Designer/setupDesigner.js +182 -0
  147. package/App/Modules/Designer/withActiveCanvas.js +136 -0
  148. package/App/Modules/Visualization/AlignTargetContainer.js +55 -0
  149. package/App/Modules/Visualization/CreatorAlignTarget.js +41 -0
  150. package/App/Modules/Visualization/DefaultVisualizationProvider.js +105 -0
  151. package/App/Modules/Visualization/DesignerAlignTarget.js +45 -0
  152. package/App/Modules/Visualization/Utils/getFirstDataURLFromScreenshotsObj.js +20 -0
  153. package/App/Reducers/Actions.js +297 -0
  154. package/App/Reducers/ConfigurationMode/Actions.js +21 -0
  155. package/App/Reducers/ConfigurationMode/Reducer.js +80 -0
  156. package/App/Reducers/ConfigurationMode/Selectors.js +84 -0
  157. package/App/Reducers/Configurator/Actions.js +1417 -0
  158. package/App/Reducers/Configurator/AttributeSelectors.js +32 -0
  159. package/App/Reducers/Configurator/Modifiers.js +35 -0
  160. package/App/Reducers/Configurator/Reducer.js +639 -0
  161. package/App/Reducers/Configurator/Selectors.js +242 -0
  162. package/App/Reducers/Confirm/Actions.js +84 -0
  163. package/App/Reducers/Confirm/Reducer.js +30 -0
  164. package/App/Reducers/DesignArea/Actions.js +76 -0
  165. package/App/Reducers/DesignArea/DesignElementSelectors.js +114 -0
  166. package/App/Reducers/DesignArea/MaskSelectors.js +101 -0
  167. package/App/Reducers/DesignArea/Reducer.js +150 -0
  168. package/App/Reducers/DesignArea/Selectors.js +1304 -0
  169. package/App/Reducers/DesignArea/Transformers.js +333 -0
  170. package/App/Reducers/DesignData/Actions.js +232 -0
  171. package/App/Reducers/DesignData/Modifiers.js +328 -0
  172. package/App/Reducers/DesignData/Reducer.js +189 -0
  173. package/App/Reducers/DesignData/Selectors.js +94 -0
  174. package/App/Reducers/DesignData/Transformers.js +27 -0
  175. package/App/Reducers/DesignView/Actions.js +19 -0
  176. package/App/Reducers/DesignView/Reducer.js +165 -0
  177. package/App/Reducers/DesignView/Selectors.js +130 -0
  178. package/App/Reducers/DesignView/Transformers.js +32 -0
  179. package/App/Reducers/Device/Actions.js +16 -0
  180. package/App/Reducers/Device/Reducer.js +51 -0
  181. package/App/Reducers/Fonts/Actions.js +137 -0
  182. package/App/Reducers/Fonts/Reducer.js +39 -0
  183. package/App/Reducers/Fonts/Selectors.js +98 -0
  184. package/App/Reducers/GeneralActions.js +16 -0
  185. package/App/Reducers/ImageGallery/Actions.js +336 -0
  186. package/App/Reducers/ImageGallery/Modifiers.js +67 -0
  187. package/App/Reducers/ImageGallery/Reducer.js +320 -0
  188. package/App/Reducers/ImageGallery/Selectors.js +206 -0
  189. package/App/Reducers/Reducer.js +107 -0
  190. package/App/Reducers/UI/Actions.js +191 -0
  191. package/App/Reducers/UI/Reducer.js +98 -0
  192. package/App/Reducers/UI/Selectors.js +32 -0
  193. package/App/Reducers.js +48 -0
  194. package/App/Routing.js +168 -0
  195. package/App/Screens/Configurator/CalculationWidgetScreen.js +84 -0
  196. package/App/Screens/Configurator/Components/AmountSelection/Styles.scss +17 -0
  197. package/App/Screens/Configurator/Components/AmountSelection/index.js +170 -0
  198. package/App/Screens/Configurator/Components/AmountSelection/index.story.js +36 -0
  199. package/App/Screens/Configurator/Components/CalculationWidget/index.js +652 -0
  200. package/App/Screens/Configurator/Components/CalculationWidget/index.story.js +154 -0
  201. package/App/Screens/Configurator/Components/CalculationWidget/index.test.js +142 -0
  202. package/App/Screens/Configurator/Components/ConfigurationModeSwitch/ConfigurationModeSwitch.js +82 -0
  203. package/App/Screens/Configurator/Components/ConfigurationModeSwitch/index.js +15 -0
  204. package/App/Screens/Configurator/Components/Confirm/Styles.scss +0 -0
  205. package/App/Screens/Configurator/Components/Confirm/index.js +105 -0
  206. package/App/Screens/Configurator/Components/DesignApproval/index.js +76 -0
  207. package/App/Screens/Configurator/Components/DesignApproval/index.story.js +27 -0
  208. package/App/Screens/Configurator/Components/DesignApproval/index.test.js +31 -0
  209. package/App/Screens/Configurator/Components/Error/index.js +106 -0
  210. package/App/Screens/Configurator/Components/FallbackVisualization/FallbackVisualization.js +96 -0
  211. package/App/Screens/Configurator/Components/FileUpload/FileUploadBase.js +1 -0
  212. package/App/Screens/Configurator/Components/FullScreenView/index.js +304 -0
  213. package/App/Screens/Configurator/Components/FullScreenView/index.test.js +28 -0
  214. package/App/Screens/Configurator/Components/ImageLoader/ImageLoader.js +96 -0
  215. package/App/Screens/Configurator/Components/LandscapeInformation/index.js +75 -0
  216. package/App/Screens/Configurator/Components/NoVisualization/NoVisualization.js +35 -0
  217. package/App/Screens/Configurator/Components/PreviewPortal/index.js +249 -0
  218. package/App/Screens/Configurator/Components/Styles.scss +1 -0
  219. package/App/Screens/Configurator/Components/Thumbnail/index.js +394 -0
  220. package/App/Screens/Configurator/Components/Thumbnail/index.test.js +50 -0
  221. package/App/Screens/Configurator/Components/TotalPrice/TotalPrice.js +57 -0
  222. package/App/Screens/Configurator/Containers/AmountPrice.js +84 -0
  223. package/App/Screens/Configurator/Containers/CalculationWidget.js +278 -0
  224. package/App/Screens/Configurator/Containers/ConfigurationModeSwitch.js +81 -0
  225. package/App/Screens/Configurator/Containers/Confirm.js +37 -0
  226. package/App/Screens/Configurator/Containers/DesignApproval.js +129 -0
  227. package/App/Screens/Configurator/Containers/FallbackVisualization.js +32 -0
  228. package/App/Screens/Configurator/Containers/FullScreenView.js +47 -0
  229. package/App/Screens/Configurator/Containers/Thumbnail.js +41 -0
  230. package/App/Screens/Configurator/Containers/Visualization.js +13 -0
  231. package/App/Screens/Configurator/DynamicComponents.js +40 -0
  232. package/App/Screens/Configurator/Screen.js +238 -0
  233. package/App/Screens/Configurator/ScreenPropTypes.js +45 -0
  234. package/App/Screens/Configurator/ThemeProvider.js +298 -0
  235. package/App/Screens/DesignerProductPreview/Constants.js +12 -0
  236. package/App/Screens/DesignerProductPreview/DesignerProductPreviewManager.js +554 -0
  237. package/App/Screens/DesignerProductPreview/Screen.js +407 -0
  238. package/App/Screens.js +42 -0
  239. package/App/ServiceLocator.js +309 -0
  240. package/App/Services/AdminareaCommunicationService.js +149 -0
  241. package/App/Services/AnalyticsService.js +403 -0
  242. package/App/Services/ConfiguratorService.js +1166 -0
  243. package/App/Services/DesignDataService.js +3249 -0
  244. package/App/Services/DesignerService.js +496 -0
  245. package/App/Services/InteractionService.js +784 -0
  246. package/App/Services/UIService.js +129 -0
  247. package/App/Services/VisualizationService.js +844 -0
  248. package/App/Shared/Components/AcceptDesign/index.js +166 -0
  249. package/App/Shared/Components/AddToBasket/index.js +194 -0
  250. package/App/Shared/Components/AddToBasket/index.story.js +47 -0
  251. package/App/Shared/Components/AlertDialog/index.js +138 -0
  252. package/App/Shared/Components/AmountInput/Styles.scss +6 -0
  253. package/App/Shared/Components/AmountInput/index.js +296 -0
  254. package/App/Shared/Components/AmountInput/index.story.js +29 -0
  255. package/App/Shared/Components/AmountPrice/index.js +925 -0
  256. package/App/Shared/Components/AmountPrice/index.story.js +112 -0
  257. package/App/Shared/Components/AmountPrice/index.test.js +125 -0
  258. package/App/Shared/Components/Analytics/AnalyticsWrapper.js +49 -0
  259. package/App/Shared/Components/BulkNames/index.js +319 -0
  260. package/App/Shared/Components/CallToAction/index.js +220 -0
  261. package/App/Shared/Components/Header/Header.js +150 -0
  262. package/App/Shared/Components/Header/index.js +15 -0
  263. package/App/Shared/Components/Header/index.story.js +143 -0
  264. package/App/Shared/Components/InformationTag/InformationTag.js +155 -0
  265. package/App/Shared/Components/LicenseNotice/LicenseNotice.js +148 -0
  266. package/App/Shared/Components/LicenseNotice/index.js +15 -0
  267. package/App/Shared/Components/LoadConfiguration/index.js +218 -0
  268. package/App/Shared/Components/MessageBox/index.js +84 -0
  269. package/App/Shared/Components/MessageBox/index.story.js +49 -0
  270. package/App/Shared/Components/Notification/index.js +105 -0
  271. package/App/Shared/Components/Notification/index.story.js +55 -0
  272. package/App/Shared/Components/PdfDownload/index.js +150 -0
  273. package/App/Shared/Components/PlusMinusInput/index.js +118 -0
  274. package/App/Shared/Components/PriceList/index.js +237 -0
  275. package/App/Shared/Components/PriceList/index.story.js +114 -0
  276. package/App/Shared/Components/PriceOverview/index.js +177 -0
  277. package/App/Shared/Components/PriceOverview/index.story.js +215 -0
  278. package/App/Shared/Components/ProductVariant/Image.js +75 -0
  279. package/App/Shared/Components/ProductVariant/Styles.scss +11 -0
  280. package/App/Shared/Components/ProductVariant/index.js +477 -0
  281. package/App/Shared/Components/ProductVariant/index.story.js +283 -0
  282. package/App/Shared/Components/Progress/Progress.js +59 -0
  283. package/App/Shared/Components/ReceiveOfferForm/index.js +432 -0
  284. package/App/Shared/Components/ReceiveOfferForm/index.story.js +32 -0
  285. package/App/Shared/Components/ReceiveOfferForm/index.test.js +36 -0
  286. package/App/Shared/Components/SaveConfiguration/index.js +286 -0
  287. package/App/Shared/Components/SendEmail/index.js +103 -0
  288. package/App/Shared/Components/Stepper/index.js +136 -0
  289. package/App/Shared/Components/Stepper/index.story.js +38 -0
  290. package/App/Shared/Components/ToolbarList/index.js +231 -0
  291. package/App/Shared/Components/ToolbarList/index.story.js +33 -0
  292. package/App/Shared/Components/VariantChooser/index.js +270 -0
  293. package/App/Shared/Components/VariantChooser/index.story.js +100 -0
  294. package/App/Shared/Containers/AlertMessages.js +37 -0
  295. package/App/Shared/Containers/AmountPrice/AmountPriceAdminareaWrapper.js +40 -0
  296. package/App/Shared/Containers/AmountPrice/index.js +284 -0
  297. package/App/Shared/Containers/BulkNames.js +310 -0
  298. package/App/Shared/Containers/Error.js +37 -0
  299. package/App/Shared/Containers/GlobalLoader.js +25 -0
  300. package/App/Shared/Containers/Header/index.js +178 -0
  301. package/App/Shared/Containers/LicenseNotice/LicenseNotice.js +26 -0
  302. package/App/Shared/Containers/LicenseNotice/index.js +15 -0
  303. package/App/Shared/Containers/LoadConfiguration/LoadConfiguration.js +146 -0
  304. package/App/Shared/Containers/LoadConfiguration/index.js +15 -0
  305. package/App/Shared/Containers/PdfDownload/index.js +39 -0
  306. package/App/Shared/Containers/ProductVariant/ProductVariant.js +339 -0
  307. package/App/Shared/Containers/ProductVariant/index.js +15 -0
  308. package/App/Shared/Containers/SaveConfiguration.js +49 -0
  309. package/App/Shared/Containers/SendEmail/SendEmail.js +45 -0
  310. package/App/Shared/Containers/SendEmail/index.js +15 -0
  311. package/App/Shared/Providers/DefaultCanvasProvider.js +86 -0
  312. package/App/Storage.js +17 -0
  313. package/App/Store.js +87 -0
  314. package/App/Styles.scss +0 -0
  315. package/App/Translations.js +88 -0
  316. package/App/Utils/createMessageInterface.js +65 -0
  317. package/App/Utils/customClassName.js +12 -0
  318. package/App/Utils/getContrastText.js +27 -0
  319. package/App/Utils/getImageUrl.js +32 -0
  320. package/App/Variables.scss +84 -0
  321. package/App/configuration.js +421 -0
  322. package/App/index.js +52 -0
  323. package/App/initServices.js +67 -0
  324. package/App/setup.js +22 -0
  325. package/App/versionInfo.js +8 -0
  326. package/Framework/Api.js +178 -0
  327. package/Framework/ComponentContainer.js +165 -0
  328. package/Framework/Components/Carousel/Styles.scss +85 -0
  329. package/Framework/Components/Carousel/index.js +322 -0
  330. package/Framework/Components/Dialog/Style.scss +79 -0
  331. package/Framework/Components/Dialog/index.js +721 -0
  332. package/Framework/Components/DialogSelect/Styles.scss +53 -0
  333. package/Framework/Components/DialogSelect/index.js +331 -0
  334. package/Framework/Components/Input/index.js +147 -0
  335. package/Framework/Components/LoadingOverlay/Styles.scss +37 -0
  336. package/Framework/Components/LoadingOverlay/index.js +33 -0
  337. package/Framework/Components/Markdown/index.js +62 -0
  338. package/Framework/Components/Mobile/index.js +33 -0
  339. package/Framework/CustomError.js +51 -0
  340. package/Framework/Helpers/TransitionDetect.js +116 -0
  341. package/Framework/Helpers/isLandscapeMobile.js +14 -0
  342. package/Framework/Helpers/isMobileDevice.js +17 -0
  343. package/Framework/Helpers/isMobileSize.js +13 -0
  344. package/Framework/Mixins.scss +235 -0
  345. package/Framework/Services/AbstractAdminareaCommunicationService.js +48 -0
  346. package/Framework/Services/AbstractAsyncService.js +44 -0
  347. package/Framework/Services/AbstractConfiguratorService.js +47 -0
  348. package/Framework/Services/AbstractInteractionService.js +50 -0
  349. package/Framework/Services/AbstractStoreService.js +42 -0
  350. package/Framework/Services/AbstractUIService.js +53 -0
  351. package/Framework/Services/AbstractVisualizationService.js +47 -0
  352. package/Framework/Services/AsyncService.js +93 -0
  353. package/Framework/Services/StoreService.js +237 -0
  354. package/Framework/Variables.scss +22 -0
  355. package/Framework/bindDecorator.js +173 -0
  356. package/Framework/i18n.js +382 -0
  357. package/README.md +5 -26
  358. package/Resources/Icons/MaterialUI/Icons/AddCircle.js +13 -0
  359. package/Resources/Icons/MaterialUI/Icons/RemoveCircle.js +13 -0
  360. package/Resources/Icons/MaterialUI/fontFace.scss +37 -0
  361. package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.eot +0 -0
  362. package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.svg +2373 -0
  363. package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.ttf +0 -0
  364. package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.woff +0 -0
  365. package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.woff2 +0 -0
  366. package/Resources/Icons/fonts/ionicons.eot +0 -0
  367. package/Resources/Icons/fonts/ionicons.svg +2230 -0
  368. package/Resources/Icons/fonts/ionicons.ttf +0 -0
  369. package/Resources/Icons/fonts/ionicons.woff +0 -0
  370. package/Resources/Icons/ionicons.scss +1489 -0
  371. package/Resources/Icons/ioniconsExtend.scss +1469 -0
  372. package/Resources/Icons/v4/fontFace.scss +11 -0
  373. package/Resources/Icons/v4/fonts/ionicons.eot +0 -0
  374. package/Resources/Icons/v4/fonts/ionicons.svg +2090 -0
  375. package/Resources/Icons/v4/fonts/ionicons.ttf +0 -0
  376. package/Resources/Icons/v4/fonts/ionicons.woff +0 -0
  377. package/Resources/Icons/v4/fonts/ionicons.woff2 +0 -0
  378. package/Resources/Icons/v4/icons.scss +15 -0
  379. package/Resources/Icons/v4/iconsExtend.scss +7 -0
  380. package/Resources/Images/designer_placeholder_logo.svg +1 -0
  381. package/Resources/Masks/circle.svg +4 -0
  382. package/Shared/Components/CustomDialog.js +133 -0
  383. package/Shared/Components/CustomDialogSelect.js +161 -0
  384. package/Shared/Components/MainButton.js +81 -0
  385. package/Shared/ErrorTypes/DeferredError.js +51 -0
  386. package/Shared/HOCs/ResizeDetect/ResizeDetect.dev.js +60 -0
  387. package/Shared/HOCs/ResizeDetect/ResizeDetect.js +217 -0
  388. package/Shared/HOCs/getDisplayName.js +10 -0
  389. package/Shared/HOCs/withFixedChangeHandler.js +46 -0
  390. package/Shared/PropTypes/ReactComponent.js +13 -0
  391. package/Shared/Styles/absoluteCenter.js +17 -0
  392. package/Utils/Array/isIdentical.js +38 -0
  393. package/Utils/Async/AsyncManager.js +128 -0
  394. package/Utils/Async/Deferred.js +145 -0
  395. package/Utils/Async/ObjectLock.js +38 -0
  396. package/Utils/Decorators/Observable.js +130 -0
  397. package/Utils/Dev/HOCs/withFilePicker.js +101 -0
  398. package/Utils/Dev/isDev.js +21 -0
  399. package/Utils/Events/pointerEvent.js +199 -0
  400. package/Utils/Events/preventEventDoubling.js +23 -0
  401. package/Utils/Function/cached.js +64 -0
  402. package/Utils/Function/createDebounceManager.js +77 -0
  403. package/Utils/Function/createSelector.js +62 -0
  404. package/Utils/Function/memoize.js +46 -0
  405. package/Utils/Function/sendMessage.js +22 -0
  406. package/Utils/Helper/createSelectionRangeMemo.js +45 -0
  407. package/Utils/Immutable/set.js +81 -0
  408. package/Utils/Math/conversions.js +13 -0
  409. package/Utils/Math/isPositiveNumber.js +12 -0
  410. package/Utils/Redux/createActionWithGlobalState.js +23 -0
  411. package/Utils/Styles/combineMediaQueries.js +24 -0
  412. package/Utils/Styles/createCheckerBoardBackground.js +22 -0
  413. package/Utils/Test/CallOrderChecker.js +29 -0
  414. package/Utils/Test/createStoreProvider.js +33 -0
  415. package/Utils/Test/formDataToJSON.js +20 -0
  416. package/Utils/Test/mountWithState.js +40 -0
  417. package/index.js +8 -0
  418. package/package.json +22 -103
  419. package/public/translations/de_DE.json +3 -0
  420. package/public/translations/en_GB.json +3 -0
  421. package/scripts/cpPublic.js +3 -3
  422. package/scripts/getDefaultWebpackConfig.js +11 -10
  423. package/src/App/Error/ProductionErrorPage/Style.scss +1 -1
  424. package/src/App/Modules/Creator/Components/Incompatibility/OptionExclusionRule/index.js +116 -0
  425. package/src/App/Modules/Creator/Components/Incompatibility/index.js +2 -1
  426. package/src/App/Modules/Creator/Components/Option/index.test.js +1 -1
  427. package/src/App/Modules/Creator/Components/OptionAmount/index.test.js +1 -1
  428. package/src/App/Modules/Creator/Components/ProductPart/__snapshots__/index.test.js.snap +33 -10
  429. package/src/App/Modules/Creator/Components/ProductPart/index.js +5 -1
  430. package/src/App/Modules/Creator/Components/ProductPart/index.test.js +14 -1
  431. package/src/App/Modules/Creator/Components/ProductPartsList/index.js +3 -0
  432. package/src/App/Modules/Creator/Containers/ProductPartsList/index.js +1 -0
  433. package/src/App/Modules/Designer/Components/AddGalleryImage/index.story.js +1 -1
  434. package/src/App/Modules/Designer/Components/ColorPalettes/index.test.jsx +1 -1
  435. package/src/App/Modules/Designer/Components/DesignAreaControlbox/index.js +21 -4
  436. package/src/App/Modules/Designer/Components/DesignAreaControlbox/index.test.jsx +1 -1
  437. package/src/App/Modules/Designer/Components/TextControlbox/index.test.jsx +1 -1
  438. package/src/App/Modules/Designer/Containers/Designer.js +1 -1
  439. package/src/App/Modules/Designer/DesignerScreen.js +32 -8
  440. package/src/App/{Screens/Configurator → Modules/Designer}/DesignerUI.js +42 -26
  441. package/src/App/Modules/Designer/Layouts/DefaultLayout.js +35 -1
  442. package/src/App/Modules/Designer/MultilayerComponents/DesignerClickAwayListener.js +18 -0
  443. package/src/App/Modules/Designer/MultilayerComponents/InlineToolboxPortal.js +54 -0
  444. package/src/App/Modules/Designer/MultilayerComponents/StandardToolboxPortal.js +38 -0
  445. package/src/App/Reducers/DesignView/Actions.js +1 -2
  446. package/src/App/Reducers/DesignView/Reducer.js +2 -10
  447. package/src/App/Reducers/DesignView/__mocks__/designerViewData.js +0 -1
  448. package/src/App/Reducers/DesignView/__tests__/Reducer.test.js +0 -22
  449. package/src/App/Reducers/ImageGallery/Actions.js +1 -1
  450. package/src/App/Screens/Configurator/Components/CalculationWidget/__snapshots__/index.test.jsx.snap +4 -4
  451. package/src/App/Screens/Configurator/Components/CalculationWidget/index.test.jsx +1 -1
  452. package/src/App/Screens/Configurator/Components/DesignApproval/index.test.jsx +1 -1
  453. package/src/App/Screens/Configurator/Components/FullScreenView/__snapshots__/index.test.jsx.snap +1 -1
  454. package/src/App/Screens/Configurator/Components/FullScreenView/index.js +3 -2
  455. package/src/App/Screens/Configurator/Components/FullScreenView/index.test.jsx +1 -1
  456. package/src/App/Screens/Configurator/Components/PreviewPortal/index.js +7 -3
  457. package/src/App/Screens/Configurator/Containers/AmountPrice.js +1 -1
  458. package/src/App/Screens/Configurator/Containers/Confirm.js +1 -1
  459. package/src/App/Screens/Configurator/Containers/FullScreenView.js +1 -0
  460. package/src/App/Screens/Configurator/Containers/__tests__/Designer.test.js +1 -1
  461. package/src/App/Screens/Configurator/Screen.js +3 -1
  462. package/src/App/Screens/DesignerProductPreview/__tests__/__snapshots__/Screen.test.js.snap +1 -1
  463. package/src/App/Services/ConfiguratorService.js +25 -4
  464. package/src/App/Services/InteractionService.js +2 -1
  465. package/src/App/Services/VisualizationService.js +3 -0
  466. package/src/App/Services/__tests__/DesignDataService.selectViewForComponent.test.js +0 -53
  467. package/src/App/Shared/Containers/AlertMessages.js +1 -1
  468. package/src/App/Shared/Containers/AmountPrice/index.test.js +1 -1
  469. package/src/App/Shared/Containers/Error.js +1 -1
  470. package/src/App/Shared/Containers/SaveConfiguration.js +1 -1
  471. package/src/App/Translations.js +1 -1
  472. package/src/App/Utils/createMessageInterface.js +10 -0
  473. package/src/App/configuration.js +3 -0
  474. package/src/Framework/i18n.js +2 -3
  475. package/babel.config.js +0 -46
  476. package/public/ConfigurationMessagingDemo.html +0 -55
  477. package/scripts/cpPath.js +0 -135
  478. package/scripts/moveLibToPackageRoot.js +0 -40
  479. package/scripts/rmDir.js +0 -29
  480. package/scripts/updateLocalPackages.js +0 -68
  481. package/scripts/utils/process.js +0 -19
  482. package/tsconfig.json +0 -22
@@ -0,0 +1,421 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.init = init;
7
+ exports.getQueryParams = getQueryParams;
8
+ exports.setConfiguration = setConfiguration;
9
+ exports.getConf = getConf;
10
+ exports.setConf = setConf;
11
+ exports.getComponent = getComponent;
12
+ exports.isProduction = isProduction;
13
+ exports.getCustomApplicationConfiguration = exports.setCustomApplicationConfiguration = exports.WidgetAfterSaveMethods = exports.SaveTypes = void 0;
14
+
15
+ var _lodash = _interopRequireDefault(require("lodash"));
16
+
17
+ var _Api = _interopRequireDefault(require("../Framework/Api"));
18
+
19
+ var _Translations = require("./Translations");
20
+
21
+ var _hyphenatedDe = _interopRequireDefault(require("hyphenated-de"));
22
+
23
+ var _hyphenatedEnGb = _interopRequireDefault(require("hyphenated-en-gb"));
24
+
25
+ var _Reducer = require("./Reducers/Configurator/Reducer");
26
+
27
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
28
+
29
+ var DEVELOPMENT_HOST_INT = 'http://int.configuratorware.local'; // eslint-disable-next-line no-unused-vars
30
+
31
+ var DEVELOPMENT_HOST_LOCAL = 'http://localhost:10030';
32
+ var hostsByNodeEnv = {
33
+ production: '',
34
+ development: DEVELOPMENT_HOST_INT,
35
+ test: ''
36
+ };
37
+ var resourceUrlsByNodeEnv = {
38
+ production: '',
39
+ development: DEVELOPMENT_HOST_INT,
40
+ test: ''
41
+ };
42
+ var host = hostsByNodeEnv[process.env.NODE_ENV];
43
+ var resourcesURL = resourceUrlsByNodeEnv[process.env.NODE_ENV];
44
+ var network = {
45
+ host: host,
46
+ baseURL: "".concat(host, "/frontendapi/"),
47
+ resourcesURL: resourcesURL,
48
+ timeout: 60000
49
+ };
50
+ var SaveTypes = {
51
+ USER: 'user',
52
+ DEFAULTOPTIONS: 'defaultoptions',
53
+ INSPIRATION: 'inspiration',
54
+ CART: 'cart',
55
+ MAIL: 'mail',
56
+ SHARE: 'share',
57
+ LANGUAGESWITCH: 'languageswitch',
58
+ CHANNELSWITCH: 'channelswitch',
59
+ PRINT: 'print',
60
+ DESIGNTEMPLATE: 'designtemplate',
61
+ OFFERREQUEST: 'offer_request',
62
+ WIDGET: 'widget'
63
+ };
64
+ exports.SaveTypes = SaveTypes;
65
+ var WidgetAfterSaveMethods = {
66
+ OpenNewWindow: 'openNewWindow',
67
+ PostMessage: 'postMessage'
68
+ };
69
+ exports.WidgetAfterSaveMethods = WidgetAfterSaveMethods;
70
+ var applicationConfiguration = {
71
+ network: network,
72
+ // the default language code (format: de-DE, en-GB, etc.), use false to select the browser language
73
+ language: false,
74
+ // the available locales
75
+ locales: [{
76
+ code: 'de_DE',
77
+ preferred: true
78
+ }, {
79
+ code: 'en_GB'
80
+ }],
81
+ hyphenations: {
82
+ 'de-DE': _hyphenatedDe["default"],
83
+ 'en-GB': _hyphenatedEnGb["default"]
84
+ },
85
+ // array of configuration save types
86
+ saveTypes: SaveTypes,
87
+ // show custom title input before saving the configuration
88
+ editCustomTitleBeforeSave: false,
89
+ // default: false
90
+ // which types need a custom title before saving?
91
+ customTitleSaveTypes: [SaveTypes.DESIGNTEMPLATE, SaveTypes.INSPIRATION],
92
+ // set true to load available variants before loading the configuration
93
+ loadVariantsFirst: false,
94
+ // default: false
95
+ // set true to load
96
+ loadInspirations: false,
97
+ // default: false
98
+ // set true to open the first optionclassification instead of the "start here" text
99
+ showInitialOptionclassification: false,
100
+ // default: false
101
+ // show the "start here" animation
102
+ showStartHere: true,
103
+ // show the "add to cart" button by default
104
+ showAddToCartButton: true,
105
+ // set true to run server-side validation before addToCart
106
+ validateBeforeCTA: true,
107
+ // set false to decide by screen orientation, or can be fixed 'left' or 'bottom'
108
+ dock: false,
109
+ // set true to display the selected option for each optionclassification
110
+ displaySwitchedOptions: false,
111
+ // default: false
112
+ // set true to check the optionclassification immediately after selected
113
+ checkOptionclassificationOnSelect: false,
114
+ // which method is used for addToCart? default: postMessage
115
+ // when it is set to 'functionCall' it calls window.parent.addToCart(configuration.code)
116
+ addToCartMethod: 'postMessage',
117
+ // use carousel for optionclassification list
118
+ optionclassificationCarousel: true,
119
+ // set true to disable beforeunload warning
120
+ disableBeforeunloadWarning: false,
121
+ // set true to hide optionlist when user clicks somewhere else
122
+ hideOptionListOnAwayClick: true,
123
+ // set true to force the option details dialog shown with an image
124
+ optionDetailsWithImage: false,
125
+ // set true to disable optionlist moving
126
+ fixedOptionlist: false,
127
+ //set true to show accept design checkbox approval
128
+ displayAcceptDesign: true,
129
+ // available tools in the toolbar
130
+ availableTools: {
131
+ fastConfiguration: false,
132
+ save: true,
133
+ load: true,
134
+ share: true,
135
+ print: true
136
+ },
137
+ // relative position of the option list dialog
138
+ // [
139
+ // [<dialogSideH{left|center|right}>, <relToSideH{left|center|right}>],
140
+ // [<dialogSideV{top|center|bottom}>, <relToSideV{top|center|bottom}>]
141
+ // ]
142
+ optionlistDialogPositioning: {
143
+ left: [['left', 'right'], ['top', 'top']],
144
+ bottom: [['center', 'center'], ['bottom', 'top']]
145
+ },
146
+ // override this to set a default item identifier to load if not defined in the route
147
+ defaultLoadIdentifier: false,
148
+ // should the option list be fixed to the left side, or it can open up above the selected option classification
149
+ optionListFixedToLeft: true,
150
+ // the components used in the Screen (override any component in custom project)
151
+ components: {},
152
+ // the containers used in the Screen (override any container in custom project)
153
+ containers: {},
154
+ // load the available configuration modes (might be set to false in older configurators)
155
+ loadConfigurationModes: true,
156
+ // if set to false only the amount for the currently selected variant can be selected
157
+ // when switching the variant the selected amount is transferred to the newly selected variant
158
+ restrictAmountselectionToSelectedVariant: false,
159
+ displayColorAmountWarnings: true,
160
+ displayEditorRulers: true,
161
+ // default options for opening the configurator (eg. after saved from the calculation widget)
162
+ openConfigurator: {
163
+ method: WidgetAfterSaveMethods.OpenNewWindow // when the PostMessage mode is used the targetOrigin can be specified, otherwise '*' will be used
164
+
165
+ },
166
+ visualization: {
167
+ designAreaHighlightBackgroundColor: 'transparent'
168
+ },
169
+ designer: {
170
+ dpi: 300,
171
+ // the default canvas dpi as project specific option
172
+ maxColorAmount: 10 // the default max number of colors in the colorizing feature
173
+
174
+ },
175
+ vectorizeImageQuality: 45000,
176
+ renderPreviewImagesForCheckout: true,
177
+ // automatically show the vectorization preview in colorizing step
178
+ autoPreviewVectorization: true,
179
+ // switch to the previously selected view when selecting a component that has no view specified
180
+ switchViewOnComponentSelection: true,
181
+ // the visualization behaves like it was a mask over the designer canvas
182
+ visualizationOverlayMode: false
183
+ };
184
+ /**
185
+ * document.domain can be set via a GET Param or is defaulted to
186
+ * the (subdomain.)secondlevel.tld (subdamain cut out)
187
+ */
188
+
189
+ function setDocumentDomain() {
190
+ var query = new URLSearchParams(location.search);
191
+ var parts = window.location.hostname.split('.');
192
+ var domain = query.get('_documentdomain');
193
+
194
+ if (!domain) {
195
+ if (parts.length > 1) {
196
+ // get domain.tld at max
197
+ parts = parts.reverse();
198
+ domain = parts[1] + '.' + parts[0];
199
+ } else {
200
+ domain = window.location.hostname;
201
+ }
202
+ }
203
+
204
+ try {
205
+ document.domain = domain;
206
+ } catch (e) {
207
+ // eslint-disable-next-line no-console
208
+ console.log('WARNING: document.domain could not be set');
209
+ }
210
+ }
211
+
212
+ function preventLeavingPage() {
213
+ if (process.env.NODE_ENV === 'production' && !getConf('adminMode')) {
214
+ // registering beforeunload event
215
+ // in dev mode it prevents the hot reloading, use only in production mode
216
+ if (!getConf('disableBeforeunloadWarning')) {
217
+ window.addEventListener('beforeunload', function (e) {
218
+ // disableBeforeunloadWarning is checked again, so that it can be disabled during runtime (after mount)
219
+ if (getConf('disableBeforeunloadWarning')) {
220
+ return false;
221
+ } else {
222
+ var confirmationMessage = 'Are you sure?'; // this message will not be shown
223
+
224
+ e.returnValue = confirmationMessage; // Gecko, Trident, Chrome 34+
225
+
226
+ return confirmationMessage; // Gecko, WebKit, Chrome <34
227
+ }
228
+ });
229
+ }
230
+ }
231
+ }
232
+
233
+ function init() {
234
+ applicationConfiguration = _lodash["default"].merge(applicationConfiguration, getQueryParams());
235
+
236
+ _Api["default"].init(applicationConfiguration.network);
237
+
238
+ setLanguage();
239
+ setDocumentDomain();
240
+ preventLeavingPage();
241
+ return applicationConfiguration;
242
+ }
243
+
244
+ function getQueryParams() {
245
+ var query = new URLSearchParams(location.search);
246
+ var queryConf = {}; // if the language is in the params, set it from there
247
+
248
+ if (query.has('_language')) {
249
+ queryConf.language = query.get('_language').replace('_', '-');
250
+ }
251
+
252
+ if (query.has('_channel')) {
253
+ var channel = query.get('_channel');
254
+ queryConf.channel = channel;
255
+
256
+ _Api["default"].setChannel(channel);
257
+ } // hide variants selection
258
+
259
+
260
+ if (query.has('_hidevariantselection') && query.get('_hidevariantselection') === 'true') {
261
+ queryConf.loadVariantsFirst = false;
262
+ } // admin modes
263
+
264
+
265
+ if (query.has('_adminmode')) {
266
+ queryConf.adminMode = query.get('_adminmode');
267
+ }
268
+
269
+ if (query.has('_adminapitoken')) {
270
+ queryConf.adminApiToken = query.get('_adminapitoken');
271
+ } // add reference to parent when saving (normally used when coming back from the cart)
272
+
273
+
274
+ if (query.has('_addparentcodeonsave')) {
275
+ queryConf.addParentCodeOnSave = true;
276
+ }
277
+
278
+ if (query.has('_share_url')) {
279
+ _Api["default"].setGETParameter('_share_url', encodeURIComponent(query.get('_share_url')));
280
+ }
281
+
282
+ if (query.has('_designerPreSelection')) {
283
+ try {
284
+ queryConf.designerPreSelection = JSON.parse(query.get('_designerPreSelection'));
285
+ } catch (e) {
286
+ // eslint-disable-next-line no-console
287
+ console.error('_designerPreSelection parse error', e);
288
+ }
289
+ }
290
+
291
+ if (query.has('_frombasket')) {
292
+ queryConf.fromBasket = query.get('_frombasket') === '1';
293
+ }
294
+
295
+ if (query.has('_admin_mode_hash')) {
296
+ _Api["default"].setGETParameter('_admin_mode', query.get('_admin_mode_hash'));
297
+ }
298
+
299
+ if (query.has('_client')) {
300
+ _Api["default"].setGETParameter('_client', query.get('_client'));
301
+ }
302
+
303
+ if (query.has('_display_net_prices') && query.get('_display_net_prices') === '1') {
304
+ queryConf.displayNetPrices = true;
305
+
306
+ _Api["default"].setGETParameter('_display_net_prices', query.get('_display_net_prices'));
307
+ }
308
+
309
+ if (query.has('_configuration_mode')) {
310
+ queryConf.configurationMode = query.get('_configuration_mode');
311
+ }
312
+
313
+ if (query.has('_cta_element')) {
314
+ _Api["default"].setGETParameter('_cta_element', query.get('_cta_element'));
315
+ }
316
+
317
+ if (query.has('_hide_prices')) {
318
+ _Api["default"].setGETParameter('_hide_prices', query.get('_hide_prices'));
319
+ }
320
+
321
+ if (query.has('_switch_options')) {
322
+ var optionsToSwitchJSON = query.get('_switch_options');
323
+
324
+ try {
325
+ queryConf.selectOptions = JSON.parse(optionsToSwitchJSON);
326
+ } catch (e) {
327
+ // eslint-disable-next-line no-console
328
+ console.error('Wrong JSON provided for _switch_options:', optionsToSwitchJSON);
329
+ }
330
+ }
331
+
332
+ return queryConf;
333
+ }
334
+
335
+ function setConfiguration(customApplicationConfiguration) {
336
+ applicationConfiguration = _lodash["default"].merge(applicationConfiguration, customApplicationConfiguration, getQueryParams());
337
+ setLanguage(); // if there is a config for network Api instance defaults must be updated
338
+
339
+ if (applicationConfiguration.network) {
340
+ _Api["default"].init(applicationConfiguration.network);
341
+ } // set possible sub reducers and state change reducers
342
+
343
+
344
+ if (_lodash["default"].get(applicationConfiguration, 'reducers.configurator')) {
345
+ var _applicationConfigura = applicationConfiguration.reducers.configurator,
346
+ subReducers = _applicationConfigura.subReducers,
347
+ stateChangeReducers = _applicationConfigura.stateChangeReducers;
348
+ (0, _Reducer.setSubReducers)(subReducers);
349
+ (0, _Reducer.setStateChangeReducers)(stateChangeReducers);
350
+ }
351
+ }
352
+
353
+ function setLanguage() {
354
+ var language; // if the default language is defined in the configuration
355
+
356
+ if (applicationConfiguration.language) {
357
+ language = applicationConfiguration.language;
358
+ } // if there is a locales array in the configuration...
359
+ else if (applicationConfiguration.locales) {
360
+ var browserLanguage = _lodash["default"].get(navigator, 'languages[0]', navigator.language).replace('-', '_');
361
+
362
+ var matchToBrowserLanguage = _lodash["default"].find(applicationConfiguration.locales, {
363
+ code: browserLanguage
364
+ });
365
+
366
+ var preferred = _lodash["default"].find(applicationConfiguration.locales, {
367
+ preferred: true
368
+ }); // if there is a match with the browser language use that
369
+
370
+
371
+ if (matchToBrowserLanguage) {
372
+ language = matchToBrowserLanguage.code;
373
+ } // if the preferred language is set use it
374
+ else if (preferred) {
375
+ language = preferred.code;
376
+ } // otherwise use the first from the locales list
377
+ else {
378
+ language = _lodash["default"].first(applicationConfiguration.locales).code;
379
+ }
380
+ } // we have no info about the language, so try to use the browser language
381
+ else {
382
+ language = _lodash["default"].get(navigator, 'languages[0]', navigator.language).replace('-', '_') || 'de_DE';
383
+ }
384
+
385
+ if (!_lodash["default"].find(applicationConfiguration.locales, {
386
+ code: language
387
+ })) {
388
+ // eslint-disable-next-line no-console
389
+ console.warn("The selected language (".concat(language, ") is not listed in the available languages!"));
390
+ }
391
+
392
+ applicationConfiguration.language = language.replace('_', '-');
393
+
394
+ _Api["default"].setLanguage(applicationConfiguration.language);
395
+
396
+ (0, _Translations.initLanguage)(applicationConfiguration.language);
397
+ } // backward compatibility alias
398
+
399
+
400
+ var setCustomApplicationConfiguration = setConfiguration;
401
+ exports.setCustomApplicationConfiguration = setCustomApplicationConfiguration;
402
+
403
+ function getConf(path, dflt) {
404
+ return path ? _lodash["default"].get(applicationConfiguration, path, dflt) : applicationConfiguration;
405
+ }
406
+
407
+ function setConf(path, value) {
408
+ _lodash["default"].set(applicationConfiguration, path, value);
409
+ } // backward compatibility alias
410
+
411
+
412
+ var getCustomApplicationConfiguration = getConf;
413
+ exports.getCustomApplicationConfiguration = getCustomApplicationConfiguration;
414
+
415
+ function getComponent(name) {
416
+ return getConf("components.".concat(name));
417
+ }
418
+
419
+ function isProduction() {
420
+ return process.env.NODE_ENV === 'production';
421
+ }
package/App/index.js ADDED
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.main = exports.render = exports.App = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _reactDom = _interopRequireDefault(require("react-dom"));
11
+
12
+ var _reactRedux = require("react-redux");
13
+
14
+ require("./setup");
15
+
16
+ require("./versionInfo");
17
+
18
+ var _initServices = require("./initServices");
19
+
20
+ var _Routing = _interopRequireDefault(require("./Routing"));
21
+
22
+ var _Store = require("./Store");
23
+
24
+ var _ServiceLocator = require("./ServiceLocator");
25
+
26
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
27
+
28
+ var App = function App() {
29
+ return /*#__PURE__*/_react["default"].createElement(_reactRedux.Provider, {
30
+ store: _Store.store
31
+ }, /*#__PURE__*/_react["default"].createElement(_Routing["default"], null));
32
+ };
33
+
34
+ exports.App = App;
35
+
36
+ var render = function render() {
37
+ _reactDom["default"].render( /*#__PURE__*/_react["default"].createElement(App, null), document.getElementById('root'));
38
+ };
39
+
40
+ exports.render = render;
41
+
42
+ var main = function main() {
43
+ var services = (0, _initServices.initServices)();
44
+
45
+ _ServiceLocator.Services.store.setStore(_Store.store);
46
+
47
+ services.configurator.initialize();
48
+ };
49
+
50
+ exports.main = main;
51
+ var _default = App;
52
+ exports["default"] = _default;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.initServices = void 0;
9
+
10
+ var _ServiceLocator = _interopRequireWildcard(require("./ServiceLocator"));
11
+
12
+ var _configuration = require("./configuration");
13
+
14
+ var _StoreService = _interopRequireDefault(require("../Framework/Services/StoreService"));
15
+
16
+ var _UIService = _interopRequireDefault(require("./Services/UIService"));
17
+
18
+ var _AsyncService = _interopRequireDefault(require("../Framework/Services/AsyncService"));
19
+
20
+ var _ConfiguratorService = _interopRequireDefault(require("./Services/ConfiguratorService"));
21
+
22
+ var _InteractionService = _interopRequireDefault(require("./Services/InteractionService"));
23
+
24
+ var _AdminareaCommunicationService = _interopRequireDefault(require("./Services/AdminareaCommunicationService"));
25
+
26
+ var _VisualizationService = _interopRequireDefault(require("./Services/VisualizationService"));
27
+
28
+ var _DesignDataService = _interopRequireDefault(require("./Services/DesignDataService"));
29
+
30
+ var _AnalyticsService = _interopRequireDefault(require("./Services/AnalyticsService"));
31
+
32
+ var _DesignerService = _interopRequireDefault(require("./Services/DesignerService"));
33
+
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
35
+
36
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
+
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
+
40
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
41
+
42
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
43
+
44
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
45
+
46
+ var initServices = function initServices() {
47
+ var services = _objectSpread({
48
+ StoreService: _StoreService["default"],
49
+ UIService: _UIService["default"],
50
+ AsyncService: _AsyncService["default"],
51
+ ConfiguratorService: _ConfiguratorService["default"],
52
+ InteractionService: _InteractionService["default"],
53
+ AdminareaCommunicationService: _AdminareaCommunicationService["default"],
54
+ VisualizationService: _VisualizationService["default"],
55
+ DesignDataService: _DesignDataService["default"],
56
+ AnalyticsService: _AnalyticsService["default"],
57
+ DesignerService: _DesignerService["default"]
58
+ }, (0, _configuration.getConf)('services'));
59
+
60
+ _ServiceLocator["default"].useServiceMap(services);
61
+
62
+ return _ServiceLocator.Services;
63
+ };
64
+
65
+ exports.initServices = initServices;
66
+ var _default = initServices;
67
+ exports["default"] = _default;
package/App/setup.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _configuration = require("./configuration");
4
+
5
+ if (process.env.NODE_ENV === 'production') {
6
+ // disable console in production mode
7
+ if (!window.console) {
8
+ window.console = {
9
+ error: function error() {}
10
+ };
11
+ }
12
+
13
+ var _console = window.console;
14
+
15
+ _console.log = _console.info = _console.warn = _console.timeEnd = _console.time = _console.group = _console.groupEnd = function () {}; // keep console.error to make them visible in prod too
16
+
17
+ } else {
18
+ // eslint-disable-next-line no-console
19
+ console.log('* dev mode, console is enabled.');
20
+ }
21
+
22
+ (0, _configuration.init)();
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ var versionInfo = process.env.FRONTENDGUI_VERSION;
4
+ var versionTag = document.createElement('meta');
5
+ versionTag.name = 'frontendgui-version';
6
+ versionTag.content = versionInfo;
7
+ window.document.head.insertAdjacentElement('afterbegin', versionTag);
8
+ window.frontendguiVersion = versionInfo;