@configuratorware/configurator-frontendgui 1.27.3-beta.8 → 1.27.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -5
- package/babel.config.js +46 -0
- package/package.json +102 -20
- package/public/ConfigurationMessagingDemo.html +55 -0
- package/scripts/cpPath.js +135 -0
- package/scripts/cpPublic.js +4 -4
- package/scripts/getDefaultWebpackConfig.js +10 -11
- package/scripts/moveLibToPackageRoot.js +40 -0
- package/scripts/rmDir.js +29 -0
- package/scripts/updateLocalPackages.js +68 -0
- package/scripts/utils/process.js +19 -0
- package/src/App/Error/ProductionErrorPage/Style.scss +1 -1
- package/src/App/Modules/Creator/Components/Option/index.js +0 -1
- package/src/App/Modules/Creator/Components/Option/index.test.js +1 -1
- package/src/App/Modules/Creator/Components/OptionAmount/index.test.js +1 -1
- package/src/App/Modules/Creator/Components/Optiondetail/index.js +7 -3
- package/src/App/Modules/Creator/Components/ProductPart/index.js +0 -1
- package/src/App/Modules/Creator/Components/ProductPart/index.test.js +1 -1
- package/src/App/Modules/Designer/Components/AddGalleryImage/index.story.js +1 -1
- package/src/App/Modules/Designer/Components/ColorPalettes/index.test.jsx +1 -1
- package/src/App/Modules/Designer/Components/DesignAreaControlbox/index.test.jsx +1 -1
- package/src/App/Modules/Designer/Components/TextControlbox/index.test.jsx +1 -1
- package/src/App/Reducers/Configurator/Actions.js +3 -13
- package/src/App/Reducers/DesignArea/Selectors.js +7 -9
- package/src/App/Reducers/DesignView/Actions.js +2 -1
- package/src/App/Reducers/DesignView/Reducer.js +10 -2
- package/src/App/Reducers/DesignView/__mocks__/designerViewData.js +1 -0
- package/src/App/Reducers/DesignView/__tests__/Reducer.test.js +22 -0
- package/src/App/Reducers/ImageGallery/Actions.js +1 -1
- package/src/App/Reducers/UI/Actions.js +0 -8
- package/src/App/Reducers/UI/Reducer.js +1 -3
- package/src/App/Screens/Configurator/Components/CalculationWidget/index.test.jsx +1 -1
- package/src/App/Screens/Configurator/Components/DesignApproval/index.test.jsx +1 -1
- package/src/App/Screens/Configurator/Components/FullScreenView/index.test.jsx +1 -1
- package/src/App/Screens/Configurator/Containers/AmountPrice.js +1 -1
- package/src/App/Screens/Configurator/Containers/Confirm.js +1 -1
- package/src/App/Screens/Configurator/Screen.js +1 -1
- package/src/App/Screens/Configurator/ThemeProvider.js +0 -1
- package/src/App/Services/__tests__/DesignDataService.selectViewForComponent.test.js +53 -0
- package/src/App/Shared/Containers/AlertMessages.js +1 -1
- package/src/App/Shared/Containers/AmountPrice/index.test.js +1 -1
- package/src/App/Shared/Containers/Error.js +1 -1
- package/src/App/Shared/Containers/SaveConfiguration.js +1 -1
- package/src/App/Translations.js +1 -1
- package/src/Framework/Components/Carousel/index.js +8 -29
- package/src/Framework/i18n.js +3 -2
- package/src/Shared/Components/CustomDialog.js +11 -5
- package/tsconfig.json +22 -0
- package/App/Constant.js +0 -73
- package/App/Error/DevelopmentErrorPage/index.js +0 -74
- package/App/Error/ErrorBoundary.js +0 -98
- package/App/Error/ProductionErrorPage/Style.scss +0 -47
- package/App/Error/ProductionErrorPage/index.js +0 -43
- package/App/Error/ProductionErrorPage/index.story.js +0 -13
- package/App/Error/ProductionErrorPage/res/error_gears.png +0 -0
- package/App/Frame.js +0 -95
- package/App/Modules/Creator/Components/ConfigurationvariantItem/Styles.scss +0 -33
- package/App/Modules/Creator/Components/ConfigurationvariantItem/index.js +0 -118
- package/App/Modules/Creator/Components/ConfigurationvariantSelection/Styles.scss +0 -47
- package/App/Modules/Creator/Components/ConfigurationvariantSelection/index.js +0 -130
- package/App/Modules/Creator/Components/CustomTitleEditor/Styles.scss +0 -43
- package/App/Modules/Creator/Components/CustomTitleEditor/index.js +0 -144
- package/App/Modules/Creator/Components/ExternalVisualization/index.js +0 -140
- package/App/Modules/Creator/Components/FastConfiguration/SelectableRow.js +0 -128
- package/App/Modules/Creator/Components/FastConfiguration/Styles.scss +0 -53
- package/App/Modules/Creator/Components/FastConfiguration/index.js +0 -280
- package/App/Modules/Creator/Components/FastConfigurationRow/Styles.scss +0 -45
- package/App/Modules/Creator/Components/FastConfigurationRow/index.js +0 -78
- package/App/Modules/Creator/Components/FastConfigurationSelect/Styles.scss +0 -35
- package/App/Modules/Creator/Components/FastConfigurationSelect/index.js +0 -251
- package/App/Modules/Creator/Components/FormattedNumber/index.js +0 -45
- package/App/Modules/Creator/Components/FormattedPrice/index.js +0 -57
- package/App/Modules/Creator/Components/FullScreenView/FullScreenView.js +0 -104
- package/App/Modules/Creator/Components/Incompatibility/OptionRule/index.js +0 -182
- package/App/Modules/Creator/Components/Incompatibility/RuleComponent.js +0 -88
- package/App/Modules/Creator/Components/Incompatibility/index.js +0 -251
- package/App/Modules/Creator/Components/InvalidConfigurationNotice/index.js +0 -164
- package/App/Modules/Creator/Components/LoginForm/Styles.scss +0 -9
- package/App/Modules/Creator/Components/LoginForm/index.js +0 -129
- package/App/Modules/Creator/Components/Option/index.js +0 -545
- package/App/Modules/Creator/Components/Option/index.story.js +0 -154
- package/App/Modules/Creator/Components/OptionAmount/index.js +0 -236
- package/App/Modules/Creator/Components/OptionGroup/index.js +0 -55
- package/App/Modules/Creator/Components/Optiondetail/ZoomImage/index.js +0 -173
- package/App/Modules/Creator/Components/Optiondetail/index.js +0 -497
- package/App/Modules/Creator/Components/Optiondetail/index.story.js +0 -117
- package/App/Modules/Creator/Components/OptionsList/index.js +0 -193
- package/App/Modules/Creator/Components/Price/Styles.scss +0 -3
- package/App/Modules/Creator/Components/Price/index.js +0 -79
- package/App/Modules/Creator/Components/ProductPart/index.js +0 -185
- package/App/Modules/Creator/Components/ProductPart/index.story.js +0 -88
- package/App/Modules/Creator/Components/ProductPartsList/index.js +0 -150
- package/App/Modules/Creator/Components/ProductPartsList/index.story.js +0 -101
- package/App/Modules/Creator/Components/SavedConfiguration/Styles.scss +0 -19
- package/App/Modules/Creator/Components/SavedConfiguration/index.js +0 -82
- package/App/Modules/Creator/Components/ShareConfiguration/Styles.scss +0 -23
- package/App/Modules/Creator/Components/ShareConfiguration/index.js +0 -224
- package/App/Modules/Creator/Components/StockInformation/index.js +0 -93
- package/App/Modules/Creator/Components/StoreConfigurationForm/Styles.scss +0 -5
- package/App/Modules/Creator/Components/StoreConfigurationForm/index.js +0 -123
- package/App/Modules/Creator/Components/Tools/Styles.scss +0 -44
- package/App/Modules/Creator/Components/Tools/index.js +0 -102
- package/App/Modules/Creator/Components/ValidationResult/Styles.scss +0 -45
- package/App/Modules/Creator/Components/ValidationResult/index.js +0 -165
- package/App/Modules/Creator/Components/index.js +0 -84
- package/App/Modules/Creator/Containers/AmountPrice/index.js +0 -26
- package/App/Modules/Creator/Containers/ConfigurationvariantSelection/index.js +0 -60
- package/App/Modules/Creator/Containers/CustomTitleEditor/index.js +0 -52
- package/App/Modules/Creator/Containers/FastConfiguration/index.js +0 -62
- package/App/Modules/Creator/Containers/FormattedPrice/index.js +0 -31
- package/App/Modules/Creator/Containers/Incompatibility/index.js +0 -40
- package/App/Modules/Creator/Containers/InvalidConfigurationNotice/index.js +0 -89
- package/App/Modules/Creator/Containers/LoadingOverlay/index.js +0 -26
- package/App/Modules/Creator/Containers/Optiondetail/index.js +0 -48
- package/App/Modules/Creator/Containers/OptionsList/index.js +0 -49
- package/App/Modules/Creator/Containers/ProductPart/index.js +0 -26
- package/App/Modules/Creator/Containers/ProductPartsList/index.js +0 -49
- package/App/Modules/Creator/Containers/SavedConfigurationContainer/index.js +0 -25
- package/App/Modules/Creator/Containers/ShareConfiguration/index.js +0 -42
- package/App/Modules/Creator/Containers/StockInformation/index.js +0 -33
- package/App/Modules/Creator/Containers/Tools/index.js +0 -44
- package/App/Modules/Creator/Containers/ValidationResult/index.js +0 -34
- package/App/Modules/Creator/Containers/index.js +0 -175
- package/App/Modules/Creator/CreatorScreen.js +0 -307
- package/App/Modules/Creator/Layouts/DefaultLayout.js +0 -260
- package/App/Modules/Creator/Styles.scss +0 -216
- package/App/Modules/Designer/Components/AddGalleryImage/index.js +0 -234
- package/App/Modules/Designer/Components/AddGalleryImage/index.story.js +0 -94
- package/App/Modules/Designer/Components/AddGalleryImage/index.test.js +0 -151
- package/App/Modules/Designer/Components/AddVisualElement/Styles.scss +0 -0
- package/App/Modules/Designer/Components/AddVisualElement/index.js +0 -278
- package/App/Modules/Designer/Components/AddVisualElement/index.story.js +0 -24
- package/App/Modules/Designer/Components/AddVisualElement/index.test.js +0 -47
- package/App/Modules/Designer/Components/CloseDesignEditor/index.js +0 -130
- package/App/Modules/Designer/Components/CloseGraphicsEditorButton/index.js +0 -54
- package/App/Modules/Designer/Components/ColorPalettes/ColorPalettesSearch.js +0 -175
- package/App/Modules/Designer/Components/ColorPalettes/index.js +0 -814
- package/App/Modules/Designer/Components/ColorPalettes/index.story.js +0 -158
- package/App/Modules/Designer/Components/ColorPalettes/index.test.js +0 -150
- package/App/Modules/Designer/Components/DesignAreaControlbox/Styles.scss +0 -0
- package/App/Modules/Designer/Components/DesignAreaControlbox/index.js +0 -460
- package/App/Modules/Designer/Components/DesignAreaControlbox/index.story.js +0 -272
- package/App/Modules/Designer/Components/DesignAreaControlbox/index.test.js +0 -164
- package/App/Modules/Designer/Components/DesignerSelectionToolbox/CustomFontOverlay.js +0 -162
- package/App/Modules/Designer/Components/DesignerSelectionToolbox/DesignerSelectionToolbox.js +0 -425
- package/App/Modules/Designer/Components/DesignerSelectionToolbox/fontItemUtils.js +0 -48
- package/App/Modules/Designer/Components/Dialog/index.js +0 -125
- package/App/Modules/Designer/Components/EditDesignButton/index.js +0 -128
- package/App/Modules/Designer/Components/FeedbackNotice/index.js +0 -110
- package/App/Modules/Designer/Components/FeedbackNotice/index.test.js +0 -16
- package/App/Modules/Designer/Components/FullScreenView/FullScreenView.js +0 -63
- package/App/Modules/Designer/Components/ImageColorPicker/ImageColorPicker.dev.js +0 -32
- package/App/Modules/Designer/Components/ImageColorPicker/ImageColorPicker.js +0 -430
- package/App/Modules/Designer/Components/ImageColorize/index.js +0 -636
- package/App/Modules/Designer/Components/ImageColorize/index.story.js +0 -73
- package/App/Modules/Designer/Components/ImageControlbox/index.js +0 -302
- package/App/Modules/Designer/Components/ImageEditDialog/ImageThumbnail.js +0 -171
- package/App/Modules/Designer/Components/ImageEditDialog/ImageUpload.js +0 -478
- package/App/Modules/Designer/Components/ImageEditDialog/index.js +0 -716
- package/App/Modules/Designer/Components/ImageEditDialog/res/baseline_colorize_black_24dp.png +0 -0
- package/App/Modules/Designer/Components/ImageEditDialog/res/checkers_tile.png +0 -0
- package/App/Modules/Designer/Components/ImageLibraryFilter/index.js +0 -179
- package/App/Modules/Designer/Components/ImageLibraryThumbnail/Styles.scss +0 -14
- package/App/Modules/Designer/Components/ImageLibraryThumbnail/index.js +0 -165
- package/App/Modules/Designer/Components/ObjectTools/index.js +0 -146
- package/App/Modules/Designer/Components/Select/index.js +0 -171
- package/App/Modules/Designer/Components/TextControlbox/TextFormatIcon.js +0 -48
- package/App/Modules/Designer/Components/TextControlbox/index.js +0 -656
- package/App/Modules/Designer/Components/TextControlbox/index.story.js +0 -109
- package/App/Modules/Designer/Components/TextControlbox/index.test.js +0 -172
- package/App/Modules/Designer/Containers/AddGalleryImage.js +0 -90
- package/App/Modules/Designer/Containers/AddVisualElement.js +0 -166
- package/App/Modules/Designer/Containers/CloseDesignEditor.js +0 -32
- package/App/Modules/Designer/Containers/CloseGraphicsEditorButton.js +0 -32
- package/App/Modules/Designer/Containers/ColorPalettes.js +0 -145
- package/App/Modules/Designer/Containers/DesignAreaControlbox.js +0 -54
- package/App/Modules/Designer/Containers/Designer.js +0 -37
- package/App/Modules/Designer/Containers/DesignerSelectionToolbox.js +0 -116
- package/App/Modules/Designer/Containers/EditDesignButton.js +0 -35
- package/App/Modules/Designer/Containers/ImageEditDialog.js +0 -1130
- package/App/Modules/Designer/Designer.js +0 -231
- package/App/Modules/Designer/DesignerScreen.js +0 -233
- package/App/Modules/Designer/Layouts/DefaultLayout.js +0 -196
- package/App/Modules/Designer/Layouts/Mobile/TwoSideBottomBar.js +0 -50
- package/App/Modules/Designer/Layouts/PopupAreaProvider.js +0 -186
- package/App/Modules/Designer/Utils/FontFaceRepository.js +0 -82
- package/App/Modules/Designer/Utils/ImageEditUtils.js +0 -104
- package/App/Modules/Designer/Utils/Transformers.js +0 -164
- package/App/Modules/Designer/setupDesigner.js +0 -182
- package/App/Modules/Designer/withActiveCanvas.js +0 -136
- package/App/Modules/Visualization/AlignTargetContainer.js +0 -55
- package/App/Modules/Visualization/CreatorAlignTarget.js +0 -41
- package/App/Modules/Visualization/DefaultVisualizationProvider.js +0 -105
- package/App/Modules/Visualization/DesignerAlignTarget.js +0 -45
- package/App/Modules/Visualization/Utils/getFirstDataURLFromScreenshotsObj.js +0 -20
- package/App/Reducers/Actions.js +0 -297
- package/App/Reducers/ConfigurationMode/Actions.js +0 -21
- package/App/Reducers/ConfigurationMode/Reducer.js +0 -80
- package/App/Reducers/ConfigurationMode/Selectors.js +0 -84
- package/App/Reducers/Configurator/Actions.js +0 -1417
- package/App/Reducers/Configurator/AttributeSelectors.js +0 -32
- package/App/Reducers/Configurator/Modifiers.js +0 -35
- package/App/Reducers/Configurator/Reducer.js +0 -639
- package/App/Reducers/Configurator/Selectors.js +0 -242
- package/App/Reducers/Confirm/Actions.js +0 -84
- package/App/Reducers/Confirm/Reducer.js +0 -30
- package/App/Reducers/DesignArea/Actions.js +0 -76
- package/App/Reducers/DesignArea/DesignElementSelectors.js +0 -114
- package/App/Reducers/DesignArea/MaskSelectors.js +0 -101
- package/App/Reducers/DesignArea/Reducer.js +0 -150
- package/App/Reducers/DesignArea/Selectors.js +0 -1314
- package/App/Reducers/DesignArea/Transformers.js +0 -333
- package/App/Reducers/DesignData/Actions.js +0 -232
- package/App/Reducers/DesignData/Modifiers.js +0 -328
- package/App/Reducers/DesignData/Reducer.js +0 -189
- package/App/Reducers/DesignData/Selectors.js +0 -94
- package/App/Reducers/DesignData/Transformers.js +0 -27
- package/App/Reducers/DesignView/Actions.js +0 -19
- package/App/Reducers/DesignView/Reducer.js +0 -165
- package/App/Reducers/DesignView/Selectors.js +0 -130
- package/App/Reducers/DesignView/Transformers.js +0 -32
- package/App/Reducers/Device/Actions.js +0 -16
- package/App/Reducers/Device/Reducer.js +0 -51
- package/App/Reducers/Fonts/Actions.js +0 -137
- package/App/Reducers/Fonts/Reducer.js +0 -39
- package/App/Reducers/Fonts/Selectors.js +0 -98
- package/App/Reducers/GeneralActions.js +0 -16
- package/App/Reducers/ImageGallery/Actions.js +0 -336
- package/App/Reducers/ImageGallery/Modifiers.js +0 -67
- package/App/Reducers/ImageGallery/Reducer.js +0 -320
- package/App/Reducers/ImageGallery/Selectors.js +0 -206
- package/App/Reducers/Reducer.js +0 -107
- package/App/Reducers/UI/Actions.js +0 -191
- package/App/Reducers/UI/Reducer.js +0 -98
- package/App/Reducers/UI/Selectors.js +0 -32
- package/App/Reducers.js +0 -48
- package/App/Routing.js +0 -168
- package/App/Screens/Configurator/CalculationWidgetScreen.js +0 -84
- package/App/Screens/Configurator/Components/AmountSelection/Styles.scss +0 -17
- package/App/Screens/Configurator/Components/AmountSelection/index.js +0 -170
- package/App/Screens/Configurator/Components/AmountSelection/index.story.js +0 -36
- package/App/Screens/Configurator/Components/CalculationWidget/index.js +0 -652
- package/App/Screens/Configurator/Components/CalculationWidget/index.story.js +0 -154
- package/App/Screens/Configurator/Components/CalculationWidget/index.test.js +0 -142
- package/App/Screens/Configurator/Components/ConfigurationModeSwitch/ConfigurationModeSwitch.js +0 -82
- package/App/Screens/Configurator/Components/ConfigurationModeSwitch/index.js +0 -15
- package/App/Screens/Configurator/Components/Confirm/Styles.scss +0 -0
- package/App/Screens/Configurator/Components/Confirm/index.js +0 -105
- package/App/Screens/Configurator/Components/DesignApproval/index.js +0 -76
- package/App/Screens/Configurator/Components/DesignApproval/index.story.js +0 -27
- package/App/Screens/Configurator/Components/DesignApproval/index.test.js +0 -31
- package/App/Screens/Configurator/Components/Error/index.js +0 -106
- package/App/Screens/Configurator/Components/FallbackVisualization/FallbackVisualization.js +0 -96
- package/App/Screens/Configurator/Components/FileUpload/FileUploadBase.js +0 -1
- package/App/Screens/Configurator/Components/FullScreenView/index.js +0 -303
- package/App/Screens/Configurator/Components/FullScreenView/index.test.js +0 -28
- package/App/Screens/Configurator/Components/ImageLoader/ImageLoader.js +0 -96
- package/App/Screens/Configurator/Components/LandscapeInformation/index.js +0 -75
- package/App/Screens/Configurator/Components/NoVisualization/NoVisualization.js +0 -35
- package/App/Screens/Configurator/Components/PreviewPortal/index.js +0 -246
- package/App/Screens/Configurator/Components/Styles.scss +0 -1
- package/App/Screens/Configurator/Components/Thumbnail/index.js +0 -394
- package/App/Screens/Configurator/Components/Thumbnail/index.test.js +0 -50
- package/App/Screens/Configurator/Components/TotalPrice/TotalPrice.js +0 -57
- package/App/Screens/Configurator/Containers/AmountPrice.js +0 -84
- package/App/Screens/Configurator/Containers/CalculationWidget.js +0 -278
- package/App/Screens/Configurator/Containers/ConfigurationModeSwitch.js +0 -81
- package/App/Screens/Configurator/Containers/Confirm.js +0 -37
- package/App/Screens/Configurator/Containers/DesignApproval.js +0 -129
- package/App/Screens/Configurator/Containers/FallbackVisualization.js +0 -32
- package/App/Screens/Configurator/Containers/FullScreenView.js +0 -46
- package/App/Screens/Configurator/Containers/Thumbnail.js +0 -41
- package/App/Screens/Configurator/Containers/Visualization.js +0 -13
- package/App/Screens/Configurator/DesignerUI.js +0 -215
- package/App/Screens/Configurator/DynamicComponents.js +0 -40
- package/App/Screens/Configurator/Screen.js +0 -236
- package/App/Screens/Configurator/ScreenPropTypes.js +0 -45
- package/App/Screens/Configurator/ThemeProvider.js +0 -298
- package/App/Screens/DesignerProductPreview/Constants.js +0 -12
- package/App/Screens/DesignerProductPreview/DesignerProductPreviewManager.js +0 -554
- package/App/Screens/DesignerProductPreview/Screen.js +0 -407
- package/App/Screens.js +0 -42
- package/App/ServiceLocator.js +0 -309
- package/App/Services/AdminareaCommunicationService.js +0 -149
- package/App/Services/AnalyticsService.js +0 -403
- package/App/Services/ConfiguratorService.js +0 -1122
- package/App/Services/DesignDataService.js +0 -3249
- package/App/Services/DesignerService.js +0 -496
- package/App/Services/InteractionService.js +0 -782
- package/App/Services/UIService.js +0 -129
- package/App/Services/VisualizationService.js +0 -842
- package/App/Shared/Components/AcceptDesign/index.js +0 -166
- package/App/Shared/Components/AddToBasket/index.js +0 -194
- package/App/Shared/Components/AddToBasket/index.story.js +0 -47
- package/App/Shared/Components/AlertDialog/index.js +0 -138
- package/App/Shared/Components/AmountInput/Styles.scss +0 -6
- package/App/Shared/Components/AmountInput/index.js +0 -296
- package/App/Shared/Components/AmountInput/index.story.js +0 -29
- package/App/Shared/Components/AmountPrice/index.js +0 -925
- package/App/Shared/Components/AmountPrice/index.story.js +0 -112
- package/App/Shared/Components/AmountPrice/index.test.js +0 -125
- package/App/Shared/Components/Analytics/AnalyticsWrapper.js +0 -49
- package/App/Shared/Components/BulkNames/index.js +0 -319
- package/App/Shared/Components/CallToAction/index.js +0 -220
- package/App/Shared/Components/Header/Header.js +0 -150
- package/App/Shared/Components/Header/index.js +0 -15
- package/App/Shared/Components/Header/index.story.js +0 -143
- package/App/Shared/Components/InformationTag/InformationTag.js +0 -155
- package/App/Shared/Components/LicenseNotice/LicenseNotice.js +0 -148
- package/App/Shared/Components/LicenseNotice/index.js +0 -15
- package/App/Shared/Components/LoadConfiguration/index.js +0 -218
- package/App/Shared/Components/MessageBox/index.js +0 -84
- package/App/Shared/Components/MessageBox/index.story.js +0 -49
- package/App/Shared/Components/Notification/index.js +0 -105
- package/App/Shared/Components/Notification/index.story.js +0 -55
- package/App/Shared/Components/PdfDownload/index.js +0 -150
- package/App/Shared/Components/PlusMinusInput/index.js +0 -118
- package/App/Shared/Components/PriceList/index.js +0 -237
- package/App/Shared/Components/PriceList/index.story.js +0 -114
- package/App/Shared/Components/PriceOverview/index.js +0 -177
- package/App/Shared/Components/PriceOverview/index.story.js +0 -215
- package/App/Shared/Components/ProductVariant/Image.js +0 -75
- package/App/Shared/Components/ProductVariant/Styles.scss +0 -11
- package/App/Shared/Components/ProductVariant/index.js +0 -477
- package/App/Shared/Components/ProductVariant/index.story.js +0 -283
- package/App/Shared/Components/Progress/Progress.js +0 -59
- package/App/Shared/Components/ReceiveOfferForm/index.js +0 -432
- package/App/Shared/Components/ReceiveOfferForm/index.story.js +0 -32
- package/App/Shared/Components/ReceiveOfferForm/index.test.js +0 -36
- package/App/Shared/Components/SaveConfiguration/index.js +0 -286
- package/App/Shared/Components/SendEmail/index.js +0 -103
- package/App/Shared/Components/Stepper/index.js +0 -136
- package/App/Shared/Components/Stepper/index.story.js +0 -38
- package/App/Shared/Components/ToolbarList/index.js +0 -231
- package/App/Shared/Components/ToolbarList/index.story.js +0 -33
- package/App/Shared/Components/VariantChooser/index.js +0 -270
- package/App/Shared/Components/VariantChooser/index.story.js +0 -100
- package/App/Shared/Containers/AlertMessages.js +0 -37
- package/App/Shared/Containers/AmountPrice/AmountPriceAdminareaWrapper.js +0 -40
- package/App/Shared/Containers/AmountPrice/index.js +0 -284
- package/App/Shared/Containers/BulkNames.js +0 -310
- package/App/Shared/Containers/Error.js +0 -37
- package/App/Shared/Containers/GlobalLoader.js +0 -25
- package/App/Shared/Containers/Header/index.js +0 -178
- package/App/Shared/Containers/LicenseNotice/LicenseNotice.js +0 -26
- package/App/Shared/Containers/LicenseNotice/index.js +0 -15
- package/App/Shared/Containers/LoadConfiguration/LoadConfiguration.js +0 -146
- package/App/Shared/Containers/LoadConfiguration/index.js +0 -15
- package/App/Shared/Containers/PdfDownload/index.js +0 -39
- package/App/Shared/Containers/ProductVariant/ProductVariant.js +0 -339
- package/App/Shared/Containers/ProductVariant/index.js +0 -15
- package/App/Shared/Containers/SaveConfiguration.js +0 -49
- package/App/Shared/Containers/SendEmail/SendEmail.js +0 -45
- package/App/Shared/Containers/SendEmail/index.js +0 -15
- package/App/Shared/Providers/DefaultCanvasProvider.js +0 -86
- package/App/Storage.js +0 -17
- package/App/Store.js +0 -87
- package/App/Styles.scss +0 -0
- package/App/Translations.js +0 -88
- package/App/Utils/createMessageInterface.js +0 -52
- package/App/Utils/customClassName.js +0 -12
- package/App/Utils/getContrastText.js +0 -27
- package/App/Utils/getImageUrl.js +0 -32
- package/App/Variables.scss +0 -84
- package/App/configuration.js +0 -421
- package/App/index.js +0 -52
- package/App/initServices.js +0 -67
- package/App/setup.js +0 -22
- package/App/versionInfo.js +0 -8
- package/Framework/Api.js +0 -178
- package/Framework/ComponentContainer.js +0 -165
- package/Framework/Components/Carousel/Styles.scss +0 -85
- package/Framework/Components/Carousel/index.js +0 -322
- package/Framework/Components/Dialog/Style.scss +0 -79
- package/Framework/Components/Dialog/index.js +0 -721
- package/Framework/Components/DialogSelect/Styles.scss +0 -53
- package/Framework/Components/DialogSelect/index.js +0 -331
- package/Framework/Components/Input/index.js +0 -147
- package/Framework/Components/LoadingOverlay/Styles.scss +0 -37
- package/Framework/Components/LoadingOverlay/index.js +0 -33
- package/Framework/Components/Markdown/index.js +0 -62
- package/Framework/Components/Mobile/index.js +0 -33
- package/Framework/CustomError.js +0 -51
- package/Framework/Helpers/TransitionDetect.js +0 -116
- package/Framework/Helpers/isLandscapeMobile.js +0 -14
- package/Framework/Helpers/isMobileDevice.js +0 -17
- package/Framework/Helpers/isMobileSize.js +0 -13
- package/Framework/Mixins.scss +0 -235
- package/Framework/Services/AbstractAdminareaCommunicationService.js +0 -48
- package/Framework/Services/AbstractAsyncService.js +0 -44
- package/Framework/Services/AbstractConfiguratorService.js +0 -47
- package/Framework/Services/AbstractInteractionService.js +0 -50
- package/Framework/Services/AbstractStoreService.js +0 -42
- package/Framework/Services/AbstractUIService.js +0 -53
- package/Framework/Services/AbstractVisualizationService.js +0 -47
- package/Framework/Services/AsyncService.js +0 -93
- package/Framework/Services/StoreService.js +0 -237
- package/Framework/Variables.scss +0 -22
- package/Framework/bindDecorator.js +0 -173
- package/Framework/i18n.js +0 -383
- package/Resources/Icons/MaterialUI/Icons/AddCircle.js +0 -13
- package/Resources/Icons/MaterialUI/Icons/RemoveCircle.js +0 -13
- package/Resources/Icons/MaterialUI/fontFace.scss +0 -37
- package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.eot +0 -0
- package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.svg +0 -2373
- package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.ttf +0 -0
- package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.woff +0 -0
- package/Resources/Icons/MaterialUI/fonts/MaterialIcons-Regular.woff2 +0 -0
- package/Resources/Icons/fonts/ionicons.eot +0 -0
- package/Resources/Icons/fonts/ionicons.svg +0 -2230
- package/Resources/Icons/fonts/ionicons.ttf +0 -0
- package/Resources/Icons/fonts/ionicons.woff +0 -0
- package/Resources/Icons/ionicons.scss +0 -1489
- package/Resources/Icons/ioniconsExtend.scss +0 -1469
- package/Resources/Icons/v4/fontFace.scss +0 -11
- package/Resources/Icons/v4/fonts/ionicons.eot +0 -0
- package/Resources/Icons/v4/fonts/ionicons.svg +0 -2090
- package/Resources/Icons/v4/fonts/ionicons.ttf +0 -0
- package/Resources/Icons/v4/fonts/ionicons.woff +0 -0
- package/Resources/Icons/v4/fonts/ionicons.woff2 +0 -0
- package/Resources/Icons/v4/icons.scss +0 -15
- package/Resources/Icons/v4/iconsExtend.scss +0 -7
- package/Resources/Images/designer_placeholder_logo.svg +0 -1
- package/Resources/Masks/circle.svg +0 -4
- package/Shared/Components/CustomDialog.js +0 -132
- package/Shared/Components/CustomDialogSelect.js +0 -161
- package/Shared/Components/MainButton.js +0 -81
- package/Shared/ErrorTypes/DeferredError.js +0 -51
- package/Shared/HOCs/ResizeDetect/ResizeDetect.dev.js +0 -60
- package/Shared/HOCs/ResizeDetect/ResizeDetect.js +0 -217
- package/Shared/HOCs/getDisplayName.js +0 -10
- package/Shared/HOCs/withFixedChangeHandler.js +0 -46
- package/Shared/PropTypes/ReactComponent.js +0 -13
- package/Shared/Styles/absoluteCenter.js +0 -17
- package/Utils/Array/isIdentical.js +0 -38
- package/Utils/Async/AsyncManager.js +0 -128
- package/Utils/Async/Deferred.js +0 -146
- package/Utils/Async/ObjectLock.js +0 -38
- package/Utils/Decorators/Observable.js +0 -130
- package/Utils/Dev/HOCs/withFilePicker.js +0 -101
- package/Utils/Dev/isDev.js +0 -21
- package/Utils/Events/pointerEvent.js +0 -199
- package/Utils/Events/preventEventDoubling.js +0 -23
- package/Utils/Function/cached.js +0 -64
- package/Utils/Function/createDebounceManager.js +0 -77
- package/Utils/Function/createSelector.js +0 -62
- package/Utils/Function/memoize.js +0 -46
- package/Utils/Function/sendMessage.js +0 -22
- package/Utils/Helper/createSelectionRangeMemo.js +0 -45
- package/Utils/Immutable/set.js +0 -81
- package/Utils/Math/conversions.js +0 -13
- package/Utils/Math/isPositiveNumber.js +0 -12
- package/Utils/Redux/createActionWithGlobalState.js +0 -23
- package/Utils/Styles/combineMediaQueries.js +0 -24
- package/Utils/Styles/createCheckerBoardBackground.js +0 -22
- package/Utils/Test/CallOrderChecker.js +0 -29
- package/Utils/Test/createStoreProvider.js +0 -33
- package/Utils/Test/formDataToJSON.js +0 -20
- package/Utils/Test/mountWithState.js +0 -40
- package/index.js +0 -8
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/* eslint no-console: 0 */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* A tool to copy local modifications of local packages (graphics editor and visualization component)
|
|
5
|
+
* over to the node_modules of this project in order to test them in the integrated environment.
|
|
6
|
+
* This script is made only for development purposes, does not replace the package version update in package.json.
|
|
7
|
+
*
|
|
8
|
+
* It uses the configuration file localPackages.json (should be placed in the project root)
|
|
9
|
+
* Example for localPackages.json:
|
|
10
|
+
* {
|
|
11
|
+
* "visualization": { // alias of the package
|
|
12
|
+
* "path": "../visualization_component", // location in the local file system, relative to the project path
|
|
13
|
+
* "name": "redhotmagma-visualization" // name of the package in package.json
|
|
14
|
+
* },
|
|
15
|
+
* ...
|
|
16
|
+
* }
|
|
17
|
+
* Usage of the script:
|
|
18
|
+
* node .\scripts\updateLocalPackages.js // update all local dependencies listed in localPackages.json
|
|
19
|
+
* node .\scripts\updateLocalPackages.js visualization // update only a single package identified by its alias
|
|
20
|
+
*
|
|
21
|
+
* @author boda@redhotmagma.de (2019.09.24)
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
const { resolve } = require('path');
|
|
25
|
+
const { cpDirDeep } = require('./utils/fileSystem');
|
|
26
|
+
|
|
27
|
+
const _alias = process.argv[2];
|
|
28
|
+
|
|
29
|
+
try {
|
|
30
|
+
let items = require('../localPackages.json');
|
|
31
|
+
if (_alias && _alias.length) {
|
|
32
|
+
const selectedItem = items[_alias];
|
|
33
|
+
if (!selectedItem) {
|
|
34
|
+
console.log('Package not found:', _alias);
|
|
35
|
+
console.log('Available packages:');
|
|
36
|
+
console.table(items);
|
|
37
|
+
process.exit(0);
|
|
38
|
+
} else {
|
|
39
|
+
items = { [_alias]: selectedItem };
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// eslint-disable-next-line no-unused-vars
|
|
43
|
+
for (let [alias, { path, name }] of Object.entries(items)) {
|
|
44
|
+
console.log(`Updating package: ${name} -> ${path}`);
|
|
45
|
+
updatePackage({ name, path });
|
|
46
|
+
}
|
|
47
|
+
} catch (e) {
|
|
48
|
+
console.error(e);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function updatePackage(options = {}) {
|
|
52
|
+
const { name, path, buildScript = 'npm run package', libDir = 'lib' } = options;
|
|
53
|
+
const cwd = process.cwd();
|
|
54
|
+
const projectPath = resolve(cwd, path);
|
|
55
|
+
const packagePath = resolve(cwd, 'node_modules', name);
|
|
56
|
+
try {
|
|
57
|
+
const { exec } = require('child_process');
|
|
58
|
+
const childProcess = exec(buildScript, { cwd: projectPath });
|
|
59
|
+
childProcess.stdout.pipe(process.stdout);
|
|
60
|
+
childProcess.stderr.pipe(process.stderr);
|
|
61
|
+
childProcess.on('close', code => {
|
|
62
|
+
console.log(`child process exited with code ${code}`);
|
|
63
|
+
cpDirDeep(resolve(projectPath, libDir), packagePath);
|
|
64
|
+
});
|
|
65
|
+
} catch (e) {
|
|
66
|
+
console.error(e);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* These utils are made to simplify querying process information for the node scripts.
|
|
3
|
+
*
|
|
4
|
+
* @author boda@redhotmagma.de
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Checks if the current installation process is a dependency installation
|
|
9
|
+
* @return {boolean}
|
|
10
|
+
*/
|
|
11
|
+
function isDependency() {
|
|
12
|
+
// if the path of the initial directory contains 'node_modules', it's probably installed as a dependency
|
|
13
|
+
const { INIT_CWD } = process.env;
|
|
14
|
+
return INIT_CWD.indexOf('node_modules') !== -1;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
module.exports = {
|
|
18
|
+
isDependency,
|
|
19
|
+
};
|
|
@@ -4,7 +4,7 @@ import { mount, render } from 'enzyme';
|
|
|
4
4
|
import { Provider } from 'react-redux';
|
|
5
5
|
import { noop } from 'lodash';
|
|
6
6
|
import DefaultThemeProvider from 'App/Screens/Configurator/ThemeProvider';
|
|
7
|
-
import Option from '
|
|
7
|
+
import Option from '../Option';
|
|
8
8
|
|
|
9
9
|
const reducer = (state = {}, action) => {
|
|
10
10
|
return { ...action, ...state };
|
|
@@ -274,6 +274,8 @@ class Optiondetail extends React.Component {
|
|
|
274
274
|
const { loading, loadingContainerHeight } = this.state;
|
|
275
275
|
const showNav = _.isArray(options) && options.length > 1;
|
|
276
276
|
const detailImage = details.detailImage;
|
|
277
|
+
const query = new URLSearchParams(location.search);
|
|
278
|
+
const hidePrices = query.has('_hide_prices') && query.get('_hide_prices') === '1';
|
|
277
279
|
|
|
278
280
|
const detailsContent = (
|
|
279
281
|
<div>
|
|
@@ -287,9 +289,11 @@ class Optiondetail extends React.Component {
|
|
|
287
289
|
{details.abstract}
|
|
288
290
|
</Markdown>
|
|
289
291
|
)}
|
|
290
|
-
|
|
291
|
-
{
|
|
292
|
-
|
|
292
|
+
{!hidePrices && (
|
|
293
|
+
<Typography component="div" variant="body2" className={classes.priceFormatted}>
|
|
294
|
+
{details.priceFormatted}
|
|
295
|
+
</Typography>
|
|
296
|
+
)}
|
|
293
297
|
{details.description && (
|
|
294
298
|
<Markdown
|
|
295
299
|
MdComponent={Typography}
|
|
@@ -4,7 +4,7 @@ import { Provider } from 'react-redux';
|
|
|
4
4
|
import { mount, render } from 'enzyme';
|
|
5
5
|
import { noop } from 'lodash';
|
|
6
6
|
import DefaultThemeProvider from 'App/Screens/Configurator/ThemeProvider';
|
|
7
|
-
import ProductPart from '
|
|
7
|
+
import ProductPart from '../ProductPart';
|
|
8
8
|
|
|
9
9
|
const initialState = {
|
|
10
10
|
displaySwitchedOptions: false,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { storiesOf } from '@storybook/react';
|
|
3
3
|
import ServiceLocator from 'App/ServiceLocator';
|
|
4
|
-
import AddGalleryImage from './
|
|
4
|
+
import AddGalleryImage from './';
|
|
5
5
|
import blueImg from './res/blau.jpg';
|
|
6
6
|
import greyIMG from './res/grau.jpg';
|
|
7
7
|
import redIMG from './res/rot.jpg';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { noop } from 'lodash';
|
|
4
4
|
import { mount, render } from 'enzyme';
|
|
5
|
-
import DesignAreaControlbox from '
|
|
5
|
+
import DesignAreaControlbox from '../DesignAreaControlbox';
|
|
6
6
|
import MenuItem from '@material-ui/core/MenuItem';
|
|
7
7
|
import ServiceLocator from 'App/ServiceLocator';
|
|
8
8
|
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { noop } from 'lodash';
|
|
4
4
|
import { mount, render } from 'enzyme';
|
|
5
5
|
import MenuItem from '@material-ui/core/MenuItem';
|
|
6
|
-
import TextControlbox from '
|
|
6
|
+
import TextControlbox from '../TextControlbox';
|
|
7
7
|
import ServiceLocator from 'App/ServiceLocator';
|
|
8
8
|
|
|
9
9
|
const mockedFontsList = [
|
|
@@ -6,13 +6,7 @@ import Api from 'Framework/Api';
|
|
|
6
6
|
import { createActionWithGlobalState } from 'Utils/Redux/createActionWithGlobalState';
|
|
7
7
|
import { getConf } from '../../configuration';
|
|
8
8
|
import { Services } from '../../ServiceLocator';
|
|
9
|
-
import {
|
|
10
|
-
dismissError,
|
|
11
|
-
reportConfigurationNotFoundError,
|
|
12
|
-
reportError,
|
|
13
|
-
setVisible,
|
|
14
|
-
setWorkInProgress,
|
|
15
|
-
} from '../UI/Actions';
|
|
9
|
+
import { dismissError, reportError, setVisible, setWorkInProgress } from '../UI/Actions';
|
|
16
10
|
import { fetchFonts } from '../../Reducers/Fonts/Actions';
|
|
17
11
|
import { addImagesFromDesignArea } from '../../Reducers/ImageGallery/Actions';
|
|
18
12
|
import {
|
|
@@ -633,13 +627,9 @@ export const fetchInitialConfiguration = () => (dispatch, getState) => {
|
|
|
633
627
|
const defaultLoadIdentifier = getConf('defaultLoadIdentifier');
|
|
634
628
|
|
|
635
629
|
if (loadCode) {
|
|
636
|
-
// Load the
|
|
630
|
+
// Load the options by code
|
|
637
631
|
return dispatch(fetchConfigurationByCode(loadCode)).then(configuration => {
|
|
638
|
-
|
|
639
|
-
dispatch(reportConfigurationNotFoundError(t('loadConfiguration.error.loadingFailed')));
|
|
640
|
-
} else {
|
|
641
|
-
Services.analytics.triggerEvent(EventTypes.load_item, configuration.data.item.identifier);
|
|
642
|
-
}
|
|
632
|
+
Services.analytics.triggerEvent(EventTypes.load_item, configuration.data.item.identifier);
|
|
643
633
|
});
|
|
644
634
|
} else if (getConf('loadVariantsFirst')) {
|
|
645
635
|
// Load variants by identifier
|
|
@@ -19,7 +19,6 @@ import { getConfigurator, getSelectedVariantIdentifier } from '../Configurator/S
|
|
|
19
19
|
import { compareDesignAreasBySize } from '../DesignView/Transformers';
|
|
20
20
|
import { isImageCompatible } from '../ImageGallery/Selectors';
|
|
21
21
|
import { recalculateSingleDesignArea } from './Transformers';
|
|
22
|
-
import { CONFIGURATION_NOT_FOUND_ERROR } from '../UI/Actions';
|
|
23
22
|
export * from './MaskSelectors';
|
|
24
23
|
|
|
25
24
|
export function getDesignProductionMethods(state) {
|
|
@@ -300,14 +299,13 @@ function isIt500Error({ ui: { error } }) {
|
|
|
300
299
|
|
|
301
300
|
function isConfigurationNotFound({ ui: { error } }) {
|
|
302
301
|
return (
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
(error && error.type === CONFIGURATION_NOT_FOUND_ERROR)
|
|
302
|
+
error &&
|
|
303
|
+
error.source &&
|
|
304
|
+
error.response &&
|
|
305
|
+
error.response.status === 404 &&
|
|
306
|
+
['loadbyitemidentifier', 'getconfigurationvariants'].indexOf(
|
|
307
|
+
(error.source.url || error.source).split('/')[1]
|
|
308
|
+
) !== -1
|
|
311
309
|
);
|
|
312
310
|
}
|
|
313
311
|
|
|
@@ -2,7 +2,8 @@ export const actionTypes = {
|
|
|
2
2
|
SELECT_DESIGN_VIEW: 'DesignView/SELECT_DESIGN_VIEW',
|
|
3
3
|
};
|
|
4
4
|
|
|
5
|
-
export const selectDesignView = designViewIdentifier => ({
|
|
5
|
+
export const selectDesignView = (designViewIdentifier, options) => ({
|
|
6
6
|
type: actionTypes.SELECT_DESIGN_VIEW,
|
|
7
7
|
designViewIdentifier,
|
|
8
|
+
options,
|
|
8
9
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { actionTypes as designViewActionTypes } from '
|
|
1
|
+
import { actionTypes as designViewActionTypes } from '../DesignView/Actions';
|
|
2
2
|
import find from 'lodash/find';
|
|
3
3
|
import get from 'lodash/get';
|
|
4
4
|
import * as configuratorActionTypes from '../Configurator/Actions';
|
|
@@ -16,6 +16,7 @@ const prepareDesignViews = designViews =>
|
|
|
16
16
|
const initialState = {
|
|
17
17
|
designViews: [],
|
|
18
18
|
selectedDesignView: {},
|
|
19
|
+
lastSelectedDesignView: {},
|
|
19
20
|
autogeneratedDesignViews: [],
|
|
20
21
|
viewThumbnailImages: [],
|
|
21
22
|
};
|
|
@@ -23,11 +24,13 @@ const initialState = {
|
|
|
23
24
|
export default function designViewReducer(state = initialState, action = {}) {
|
|
24
25
|
switch (action.type) {
|
|
25
26
|
case designViewActionTypes.SELECT_DESIGN_VIEW: {
|
|
26
|
-
const { designViewIdentifier } = action;
|
|
27
|
+
const { designViewIdentifier, options = {} } = action;
|
|
27
28
|
const designView = find(state.designViews, { identifier: designViewIdentifier });
|
|
29
|
+
const { saveLast = true } = options;
|
|
28
30
|
return {
|
|
29
31
|
...state,
|
|
30
32
|
selectedDesignView: designView,
|
|
33
|
+
...(saveLast ? { lastSelectedDesignView: designView } : null),
|
|
31
34
|
};
|
|
32
35
|
}
|
|
33
36
|
case configuratorActionTypes.RECEIVE_DESIGNER_DATA: {
|
|
@@ -59,12 +62,14 @@ export default function designViewReducer(state = initialState, action = {}) {
|
|
|
59
62
|
...state,
|
|
60
63
|
designViews: prepareDesignViews(updatedDesignViews),
|
|
61
64
|
selectedDesignView: {},
|
|
65
|
+
lastSelectedDesignView: {},
|
|
62
66
|
};
|
|
63
67
|
}
|
|
64
68
|
return {
|
|
65
69
|
...state,
|
|
66
70
|
designViews: prepareDesignViews(designViews),
|
|
67
71
|
selectedDesignView: {},
|
|
72
|
+
lastSelectedDesignView: {},
|
|
68
73
|
};
|
|
69
74
|
}
|
|
70
75
|
case configuratorActionTypes.RECEIVE_CONFIGURATION: {
|
|
@@ -82,6 +87,7 @@ export default function designViewReducer(state = initialState, action = {}) {
|
|
|
82
87
|
...state,
|
|
83
88
|
designViews: [],
|
|
84
89
|
selectedDesignView: {},
|
|
90
|
+
lastSelectedDesignView: {},
|
|
85
91
|
autogeneratedDesignViews,
|
|
86
92
|
viewThumbnailImages,
|
|
87
93
|
};
|
|
@@ -93,6 +99,7 @@ export default function designViewReducer(state = initialState, action = {}) {
|
|
|
93
99
|
...state,
|
|
94
100
|
designViews: autogeneratedDesignViews,
|
|
95
101
|
selectedDesignView,
|
|
102
|
+
lastSelectedDesignView: selectedDesignView,
|
|
96
103
|
autogeneratedDesignViews,
|
|
97
104
|
viewThumbnailImages,
|
|
98
105
|
};
|
|
@@ -102,6 +109,7 @@ export default function designViewReducer(state = initialState, action = {}) {
|
|
|
102
109
|
...state,
|
|
103
110
|
designViews: [],
|
|
104
111
|
selectedDesignView: {},
|
|
112
|
+
lastSelectedDesignView: {},
|
|
105
113
|
autogeneratedDesignViews: [],
|
|
106
114
|
viewThumbnailImages: [],
|
|
107
115
|
};
|
|
@@ -13,6 +13,7 @@ describe('Reducers/DesignView.designViewReducer', () => {
|
|
|
13
13
|
expect(initialState).toEqual({
|
|
14
14
|
designViews: [],
|
|
15
15
|
selectedDesignView: {},
|
|
16
|
+
lastSelectedDesignView: {},
|
|
16
17
|
autogeneratedDesignViews: [],
|
|
17
18
|
viewThumbnailImages: [],
|
|
18
19
|
});
|
|
@@ -41,6 +42,23 @@ describe('Reducers/DesignView.designViewReducer', () => {
|
|
|
41
42
|
const action = selectDesignView(identifier);
|
|
42
43
|
const state = designViewReducer(initialState, action);
|
|
43
44
|
expect(state.selectedDesignView.identifier).toBe(identifier);
|
|
45
|
+
expect(state.lastSelectedDesignView.identifier).toBe(identifier);
|
|
46
|
+
});
|
|
47
|
+
test('returns the correct state for SELECT_DESIGN_VIEW action, if the { saveLast: false } option is provided', () => {
|
|
48
|
+
// select a view directly (eg. user clicks the view buttons)
|
|
49
|
+
const initialState = designViewReducer(simpleState);
|
|
50
|
+
const selectedDesignViewIdentifier = simpleState.designViews[1].identifier;
|
|
51
|
+
const selectDesignViewAction = selectDesignView(selectedDesignViewIdentifier);
|
|
52
|
+
const state1 = designViewReducer(initialState, selectDesignViewAction);
|
|
53
|
+
expect(state1.selectedDesignView.identifier).toBe(selectedDesignViewIdentifier);
|
|
54
|
+
expect(state1.lastSelectedDesignView.identifier).toBe(selectedDesignViewIdentifier);
|
|
55
|
+
|
|
56
|
+
// select a view automatically (eg. user switches to a component which has a linked view)
|
|
57
|
+
const autoDesignViewIdentifier = simpleState.designViews[0].identifier;
|
|
58
|
+
const action = selectDesignView(autoDesignViewIdentifier, { saveLast: false });
|
|
59
|
+
const state2 = designViewReducer(state1, action);
|
|
60
|
+
expect(state2.selectedDesignView.identifier).toBe(autoDesignViewIdentifier);
|
|
61
|
+
expect(state2.lastSelectedDesignView.identifier).toBe(selectedDesignViewIdentifier);
|
|
44
62
|
});
|
|
45
63
|
test('clears the selectedDesignView for RECEIVE_CONFIGURATION action', () => {
|
|
46
64
|
const initialState = designViewReducer(simpleState);
|
|
@@ -52,6 +70,7 @@ describe('Reducers/DesignView.designViewReducer', () => {
|
|
|
52
70
|
const action = { type: RECEIVE_CONFIGURATION };
|
|
53
71
|
const state = designViewReducer(stateWithSelectedDesignView, action);
|
|
54
72
|
expect(state.selectedDesignView).toEqual({});
|
|
73
|
+
expect(state.lastSelectedDesignView).toEqual({});
|
|
55
74
|
});
|
|
56
75
|
test(
|
|
57
76
|
'creates the designViews list and sets the selectedDesignView if visualizationData is available ' +
|
|
@@ -81,6 +100,9 @@ describe('Reducers/DesignView.designViewReducer', () => {
|
|
|
81
100
|
expect(state.selectedDesignView).toEqual({
|
|
82
101
|
identifier: 'front',
|
|
83
102
|
});
|
|
103
|
+
expect(state.lastSelectedDesignView).toEqual({
|
|
104
|
+
identifier: 'front',
|
|
105
|
+
});
|
|
84
106
|
}
|
|
85
107
|
);
|
|
86
108
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createDefaultReceiver, fetchDataAsync, postDataAsync } from '../Actions';
|
|
2
2
|
import { createAsyncTask } from '../UI/Actions';
|
|
3
|
-
import { getUserImagesByDesignArea } from '
|
|
3
|
+
import { getUserImagesByDesignArea } from '../ImageGallery/Selectors';
|
|
4
4
|
import { calculateImageBrightness } from '../../Services/DesignDataService';
|
|
5
5
|
import { getImageUsageInfo } from './Selectors';
|
|
6
6
|
import { getCurrentCompatibilityInfoHash } from '../DesignArea/Selectors';
|
|
@@ -6,7 +6,6 @@ export const CUSTOM_ERROR = 'ui/CUSTOM_ERROR';
|
|
|
6
6
|
export const DISMISS_ERROR = 'ui/DISMISS_ERROR';
|
|
7
7
|
export const SHOW_ALERT = 'ui/SHOW_ALERT';
|
|
8
8
|
export const DISMISS_ALERT = 'ui/DISMISS_ALERT';
|
|
9
|
-
export const CONFIGURATION_NOT_FOUND_ERROR = 'ui/CONFIGURATION_NOT_FOUND';
|
|
10
9
|
|
|
11
10
|
export const setVisible = (name, show) => (dispatch, getState) => {
|
|
12
11
|
if (getState().ui.visibilityMap[name] !== show) {
|
|
@@ -35,13 +34,6 @@ export const reportError = errorMessage => ({
|
|
|
35
34
|
},
|
|
36
35
|
});
|
|
37
36
|
|
|
38
|
-
export const reportConfigurationNotFoundError = errorMessage => ({
|
|
39
|
-
type: CONFIGURATION_NOT_FOUND_ERROR,
|
|
40
|
-
error: {
|
|
41
|
-
message: errorMessage,
|
|
42
|
-
},
|
|
43
|
-
});
|
|
44
|
-
|
|
45
37
|
export const dismissError = () => ({
|
|
46
38
|
type: DISMISS_ERROR,
|
|
47
39
|
});
|
|
@@ -5,7 +5,6 @@ import {
|
|
|
5
5
|
DISMISS_ERROR,
|
|
6
6
|
SHOW_ALERT,
|
|
7
7
|
DISMISS_ALERT,
|
|
8
|
-
CONFIGURATION_NOT_FOUND_ERROR,
|
|
9
8
|
} from './Actions';
|
|
10
9
|
|
|
11
10
|
import * as apiActions from '../Actions';
|
|
@@ -21,8 +20,7 @@ export function errorHandler(state, action) {
|
|
|
21
20
|
switch (action.type) {
|
|
22
21
|
case apiActions.NETWORK_ERROR:
|
|
23
22
|
case apiActions.REQUEST_ERROR:
|
|
24
|
-
case CUSTOM_ERROR:
|
|
25
|
-
case CONFIGURATION_NOT_FOUND_ERROR: {
|
|
23
|
+
case CUSTOM_ERROR: {
|
|
26
24
|
return {
|
|
27
25
|
...state,
|
|
28
26
|
error: {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { noop } from 'lodash';
|
|
4
4
|
import { mount, render } from 'enzyme';
|
|
5
|
-
import CalculationWidget from '
|
|
5
|
+
import CalculationWidget from '../CalculationWidget';
|
|
6
6
|
import MenuItem from '@material-ui/core/MenuItem';
|
|
7
7
|
import { Select, ExpansionPanel, ExpansionPanelDetails } from '@material-ui/core';
|
|
8
8
|
import ServiceLocator from 'App/ServiceLocator';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import noop from 'lodash/noop';
|
|
4
4
|
import { render } from 'enzyme';
|
|
5
|
-
import DesignApproval from '
|
|
5
|
+
import DesignApproval from '../DesignApproval';
|
|
6
6
|
|
|
7
7
|
it('renders correctly without error', () => {
|
|
8
8
|
const tree = render(<DesignApproval checked={true} error={false} link={'fakeLink'} onChange={noop} />);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-env jest */
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { mount, render } from 'enzyme';
|
|
4
|
-
import FullScreenView from '
|
|
4
|
+
import FullScreenView from '../FullScreenView';
|
|
5
5
|
|
|
6
6
|
describe('Screens/Configurator/Components/FullScreenView', () => {
|
|
7
7
|
it('renders correctly', () => {
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import AmountPrice from 'App/Shared/Containers/AmountPrice';
|
|
4
4
|
import ProductVariant from 'App/Shared/Containers/ProductVariant';
|
|
5
|
-
import ConfigurationModeSwitch from '
|
|
5
|
+
import ConfigurationModeSwitch from '../Containers/ConfigurationModeSwitch';
|
|
6
6
|
import { makeStyles } from '@material-ui/core';
|
|
7
7
|
|
|
8
8
|
export const useStyles = makeStyles(
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import containerConnect from 'Framework/ComponentContainer';
|
|
2
|
-
import Confirm from '../Components/Confirm';
|
|
2
|
+
import Confirm from '../Components/Confirm/index';
|
|
3
3
|
import { hideConfirm } from '../../../Reducers/Confirm/Actions';
|
|
4
4
|
|
|
5
5
|
const mapStateToProps = ({ confirm }) => {
|
|
@@ -11,7 +11,7 @@ import * as uiActions from 'App/Reducers/UI/Actions';
|
|
|
11
11
|
import Error from '../../Shared/Containers/Error';
|
|
12
12
|
import ErrorPage from '../../Error/ProductionErrorPage';
|
|
13
13
|
import AlertMessages from 'App/Shared/Containers/AlertMessages';
|
|
14
|
-
import LandscapeInformation from '
|
|
14
|
+
import LandscapeInformation from '../Configurator/Components/LandscapeInformation';
|
|
15
15
|
import Confirm from './Containers/Confirm';
|
|
16
16
|
import SaveConfiguration from 'App/Shared/Containers/SaveConfiguration';
|
|
17
17
|
import SendEmail from 'App/Shared/Containers/SendEmail';
|
|
@@ -178,4 +178,57 @@ describe('DesignDataService.selectViewForComponent', () => {
|
|
|
178
178
|
|
|
179
179
|
expect(srv.selectDesignView).toHaveBeenCalledWith('front_view', { saveLast: false });
|
|
180
180
|
});
|
|
181
|
+
|
|
182
|
+
it('calls selectDesignView with the identifier of lastSelectedDesignView if no creatorView is referenced by the selected component', () => {
|
|
183
|
+
const componentWithNoCreatorView = {
|
|
184
|
+
identifier: 'id1',
|
|
185
|
+
title: 'title1',
|
|
186
|
+
creatorView: null,
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
ServiceLocator.provide(
|
|
190
|
+
new (class StoreService {
|
|
191
|
+
static serviceName = 'StoreService';
|
|
192
|
+
state = {
|
|
193
|
+
designArea: {
|
|
194
|
+
filteredDesignAreas: mockDesignAreas,
|
|
195
|
+
selectedDesignArea: {},
|
|
196
|
+
},
|
|
197
|
+
designView: {
|
|
198
|
+
designViews: [
|
|
199
|
+
{ identifier: 'front_view' },
|
|
200
|
+
{ identifier: 'side_view' },
|
|
201
|
+
{ identifier: 'top_view' },
|
|
202
|
+
],
|
|
203
|
+
selectedDesignView: {
|
|
204
|
+
identifier: 'side_view',
|
|
205
|
+
},
|
|
206
|
+
lastSelectedDesignView: {
|
|
207
|
+
identifier: 'top_view',
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
configurator: {
|
|
211
|
+
configuration: {
|
|
212
|
+
optionclassifications: [
|
|
213
|
+
componentWithNoCreatorView,
|
|
214
|
+
{
|
|
215
|
+
identifier: 'id2',
|
|
216
|
+
title: 'title2',
|
|
217
|
+
creatorView: { identifier: 'side_view' },
|
|
218
|
+
},
|
|
219
|
+
],
|
|
220
|
+
},
|
|
221
|
+
},
|
|
222
|
+
};
|
|
223
|
+
dispatch = v => v;
|
|
224
|
+
})()
|
|
225
|
+
);
|
|
226
|
+
const srv = new DesignDataService();
|
|
227
|
+
|
|
228
|
+
srv.selectDesignView = jest.fn();
|
|
229
|
+
|
|
230
|
+
srv.selectViewForComponent(componentWithNoCreatorView);
|
|
231
|
+
|
|
232
|
+
expect(srv.selectDesignView).toHaveBeenCalledWith('top_view', { saveLast: false });
|
|
233
|
+
});
|
|
181
234
|
});
|
|
@@ -2,7 +2,7 @@ import AmountPrice, {
|
|
|
2
2
|
createAmountPropsFromState,
|
|
3
3
|
createPricePropsFromState,
|
|
4
4
|
showProductVariantsForItem,
|
|
5
|
-
} from '
|
|
5
|
+
} from '../AmountPrice';
|
|
6
6
|
import mountWithState from 'Utils/Test/mountWithState';
|
|
7
7
|
import ServiceLocator from 'App/ServiceLocator';
|
|
8
8
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import CircularProgress from '@material-ui/core/CircularProgress/CircularProgress';
|
|
2
2
|
import containerConnect from 'Framework/ComponentContainer';
|
|
3
3
|
import { Services } from 'App/ServiceLocator';
|
|
4
|
-
import SaveConfiguration from '../Components/SaveConfiguration';
|
|
4
|
+
import SaveConfiguration from '../Components/SaveConfiguration/index';
|
|
5
5
|
import { getShareUrl } from '../../Reducers/Configurator/Selectors';
|
|
6
6
|
|
|
7
7
|
const mapStateToProps = ({ ui, configurator }) => ({
|
package/src/App/Translations.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { use } from 'Framework/i18n';
|
|
2
|
-
import { isProduction } from '
|
|
2
|
+
import { isProduction } from '../App/configuration';
|
|
3
3
|
export async function initLanguage(lang) {
|
|
4
4
|
// ensure that the filename always has an underscore and no dash
|
|
5
5
|
const fileKey = lang.replace('-', '_');
|