@configuratorware/configurator-admingui 1.27.3-beta.1 → 1.27.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.
- package/package.json +2 -2
- package/src/Screens/Client/Containers/Edit.js +0 -30
- package/src/Screens/Client/Reducers/Reducer.js +0 -1
- package/src/Screens/Creator/Reducers/ConfigurationActions.js +2 -2
- package/src/Screens/CurrentClient/Containers/Edit.js +0 -30
- package/src/Screens/CurrentClient/Reducers/Reducer.js +0 -1
- package/src/Screens/DefaultClient/Reducers/Reducer.js +0 -1
- package/src/Screens/Item/Reducers/ItemReducer.js +1 -1
- package/src/Screens/Option/Containers/List.js +1 -1
- package/src/Screens/Optionclassification/Translations.js +1 -1
- package/src/Screens/Setting/Containers/Edit.js +29 -17
- package/src/Screens/Setting/Reducers/Reducer.js +1 -1
- package/src/Screens/Setting/Translations.js +0 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@configuratorware/configurator-admingui",
|
|
3
|
-
"version": "1.27.3
|
|
3
|
+
"version": "1.27.3",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"private": false,
|
|
6
6
|
"files": [
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"react-redux-i18n": "^1.9.3",
|
|
88
88
|
"react-router": "^3.0.2",
|
|
89
89
|
"react-sortable-hoc": "^1.3.1",
|
|
90
|
-
"redhotmagma-visualization": "1.27.3
|
|
90
|
+
"redhotmagma-visualization": "1.27.3",
|
|
91
91
|
"redux": "^4.0.1",
|
|
92
92
|
"redux-logger": "^3.0.6",
|
|
93
93
|
"redux-persist": "^5.10.0",
|
|
@@ -3,7 +3,6 @@ import SimpleNestedData from '../../../Components/FormFragments/SimpleNestedData
|
|
|
3
3
|
import generateConnectedEdit from '../../../Components/DefaultConnectedForm';
|
|
4
4
|
import TextFields from '../Components/TextFields';
|
|
5
5
|
import ColorTextField from '../Components/ColorTextField';
|
|
6
|
-
import { t } from '../../../App/i18n';
|
|
7
6
|
|
|
8
7
|
const formFields = [
|
|
9
8
|
{
|
|
@@ -97,35 +96,6 @@ const formFields = [
|
|
|
97
96
|
label: 'E-mail (contact)',
|
|
98
97
|
type: 'text',
|
|
99
98
|
},
|
|
100
|
-
{
|
|
101
|
-
name: 'callToAction',
|
|
102
|
-
label: 'callToAction.callToAction',
|
|
103
|
-
type: 'select',
|
|
104
|
-
sourceConfig: {
|
|
105
|
-
text: function text(_ref) {
|
|
106
|
-
const label = _ref.label;
|
|
107
|
-
return t(label);
|
|
108
|
-
},
|
|
109
|
-
value: 'value',
|
|
110
|
-
},
|
|
111
|
-
source: [
|
|
112
|
-
{
|
|
113
|
-
value: 'addToCart',
|
|
114
|
-
label: 'callToAction.addToCart',
|
|
115
|
-
id: 'addToCart',
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
value: 'requestOffer',
|
|
119
|
-
label: 'callToAction.requestOffer',
|
|
120
|
-
id: 'requestOffer',
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
value: 'none',
|
|
124
|
-
label: 'callToAction.none',
|
|
125
|
-
id: 'none',
|
|
126
|
-
},
|
|
127
|
-
],
|
|
128
|
-
},
|
|
129
99
|
{
|
|
130
100
|
type: TextFields,
|
|
131
101
|
name: 'texts',
|
|
@@ -31,7 +31,6 @@ const initialState = {
|
|
|
31
31
|
contactCity: { value: '', constraints: { presence: true } },
|
|
32
32
|
contactPhone: { value: '', constraints: { presence: true } },
|
|
33
33
|
contactEmail: { value: '', constraints: { presence: true } },
|
|
34
|
-
callToAction: 'addToCart',
|
|
35
34
|
channels: { value: [] },
|
|
36
35
|
customCss: '',
|
|
37
36
|
},
|
|
@@ -146,8 +146,8 @@ export const setOverwriteComponentOrder = value => async (dispatch, getState) =>
|
|
|
146
146
|
});
|
|
147
147
|
const item = get(entityState, 'data.item.value');
|
|
148
148
|
if (item) {
|
|
149
|
-
const {
|
|
150
|
-
const data = {
|
|
149
|
+
const { stock, ...itemData } = item;
|
|
150
|
+
const data = { ...itemData, overwriteComponentOrder: value };
|
|
151
151
|
const url = `items`;
|
|
152
152
|
return dispatch(postData({ url }, data, CONFIGURATION_SAVE_ITEM)).then(apiAction => {
|
|
153
153
|
switch (apiAction.type) {
|
|
@@ -3,7 +3,6 @@ import SimpleNestedData from '../../../Components/FormFragments/SimpleNestedData
|
|
|
3
3
|
import generateConnectedEdit from '../../../Components/DefaultConnectedForm';
|
|
4
4
|
import TextFields from '../../Client/Components/TextFields';
|
|
5
5
|
import { withLoadAction } from '../../../Components/withLoadAction';
|
|
6
|
-
import { t } from '../../../App/i18n';
|
|
7
6
|
|
|
8
7
|
export const formFields = [
|
|
9
8
|
{
|
|
@@ -62,35 +61,6 @@ export const formFields = [
|
|
|
62
61
|
label: 'E-mail (contact)',
|
|
63
62
|
type: 'text',
|
|
64
63
|
},
|
|
65
|
-
{
|
|
66
|
-
name: 'callToAction',
|
|
67
|
-
label: 'callToAction.callToAction',
|
|
68
|
-
type: 'select',
|
|
69
|
-
sourceConfig: {
|
|
70
|
-
text: function text(_ref) {
|
|
71
|
-
const label = _ref.label;
|
|
72
|
-
return t(label);
|
|
73
|
-
},
|
|
74
|
-
value: 'value',
|
|
75
|
-
},
|
|
76
|
-
source: [
|
|
77
|
-
{
|
|
78
|
-
value: 'addToCart',
|
|
79
|
-
label: 'callToAction.addToCart',
|
|
80
|
-
id: 'addToCart',
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
value: 'requestOffer',
|
|
84
|
-
label: 'callToAction.requestOffer',
|
|
85
|
-
id: 'requestOffer',
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
value: 'none',
|
|
89
|
-
label: 'callToAction.none',
|
|
90
|
-
id: 'none',
|
|
91
|
-
},
|
|
92
|
-
],
|
|
93
|
-
},
|
|
94
64
|
{
|
|
95
65
|
type: TextFields,
|
|
96
66
|
name: 'texts',
|
|
@@ -22,7 +22,6 @@ const initialState = {
|
|
|
22
22
|
contactCity: { value: '', constraints: { presence: true } },
|
|
23
23
|
contactPhone: { value: '', constraints: { presence: true } },
|
|
24
24
|
contactEmail: { value: '', constraints: { presence: true } },
|
|
25
|
-
callToAction: 'addToCart',
|
|
26
25
|
customCss: '',
|
|
27
26
|
},
|
|
28
27
|
null,
|
|
@@ -23,7 +23,6 @@ const initialState = {
|
|
|
23
23
|
contactCity: { value: '', constraints: { presence: true } },
|
|
24
24
|
contactPhone: { value: '', constraints: { presence: true } },
|
|
25
25
|
contactEmail: { value: '', constraints: { presence: true } },
|
|
26
|
-
callToAction: 'addToCart',
|
|
27
26
|
customCss: '',
|
|
28
27
|
},
|
|
29
28
|
null,
|
|
@@ -14,7 +14,7 @@ require('../../App/i18n').use(
|
|
|
14
14
|
'Sequence number': 'Sequenznummer',
|
|
15
15
|
Parent: 'Eltern',
|
|
16
16
|
hiddenInFrontend:
|
|
17
|
-
'versteckt (diese Komponente taucht in keiner Liste auf, kann aber z.B. für Regeln verwendet werden
|
|
17
|
+
'versteckt (diese Komponente taucht in keiner Liste auf, kann aber z.B. für Regeln verwendet werden',
|
|
18
18
|
},
|
|
19
19
|
},
|
|
20
20
|
true
|
|
@@ -16,20 +16,6 @@ const creatorAidedMediaEditingField = (function createCreatorAidedMediaEditingFi
|
|
|
16
16
|
};
|
|
17
17
|
})();
|
|
18
18
|
|
|
19
|
-
const configurationsClientRestrictedField = (function createConfigurationsClientRestrictedField() {
|
|
20
|
-
let shouldRender = false;
|
|
21
|
-
return {
|
|
22
|
-
name: 'configurationsClientRestricted',
|
|
23
|
-
label: 'settingsScreen.configurationsClientRestricted',
|
|
24
|
-
type: 'toggle',
|
|
25
|
-
invert: true,
|
|
26
|
-
shouldRender: () => shouldRender,
|
|
27
|
-
setShouldRender: value => {
|
|
28
|
-
shouldRender = value;
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
})();
|
|
32
|
-
|
|
33
19
|
const formFields = [
|
|
34
20
|
{
|
|
35
21
|
name: 'defaultVisualizationModeLabel',
|
|
@@ -37,6 +23,35 @@ const formFields = [
|
|
|
37
23
|
type: 'select',
|
|
38
24
|
source: ['2d', '3d'],
|
|
39
25
|
},
|
|
26
|
+
{
|
|
27
|
+
name: 'callToAction',
|
|
28
|
+
label: 'callToAction.callToAction',
|
|
29
|
+
type: 'select',
|
|
30
|
+
sourceConfig: {
|
|
31
|
+
text: function text(_ref) {
|
|
32
|
+
const label = _ref.label;
|
|
33
|
+
return t(label);
|
|
34
|
+
},
|
|
35
|
+
value: 'value',
|
|
36
|
+
},
|
|
37
|
+
source: [
|
|
38
|
+
{
|
|
39
|
+
value: 'addToCart',
|
|
40
|
+
label: 'callToAction.addToCart',
|
|
41
|
+
id: 'addToCart',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
value: 'requestOffer',
|
|
45
|
+
label: 'callToAction.requestOffer',
|
|
46
|
+
id: 'requestOffer',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
value: 'none',
|
|
50
|
+
label: 'callToAction.none',
|
|
51
|
+
id: 'none',
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
},
|
|
40
55
|
{
|
|
41
56
|
name: 'maxZoom2d',
|
|
42
57
|
label: 'settingsScreen.maxZoom2d',
|
|
@@ -77,7 +92,6 @@ const formFields = [
|
|
|
77
92
|
},
|
|
78
93
|
],
|
|
79
94
|
},
|
|
80
|
-
configurationsClientRestrictedField,
|
|
81
95
|
{
|
|
82
96
|
name: 'customCss',
|
|
83
97
|
label: 'settingsScreen.customCss',
|
|
@@ -95,7 +109,6 @@ class SettingForm extends Component {
|
|
|
95
109
|
componentDidMount() {
|
|
96
110
|
this.props.loadFirstSetting();
|
|
97
111
|
creatorAidedMediaEditingField.setShouldRender(this.props.creatorItems);
|
|
98
|
-
configurationsClientRestrictedField.setShouldRender(this.props.hasClientsFeature);
|
|
99
112
|
}
|
|
100
113
|
|
|
101
114
|
render() {
|
|
@@ -105,7 +118,6 @@ class SettingForm extends Component {
|
|
|
105
118
|
|
|
106
119
|
const mapStateToProps = ({ loginData }) => ({
|
|
107
120
|
creatorItems: hasCredentialFor(loginData, 'items_creator'),
|
|
108
|
-
hasClientsFeature: hasCredentialFor(loginData, 'clients'),
|
|
109
121
|
});
|
|
110
122
|
|
|
111
123
|
const mapDispatchToProps = dispatch => ({
|
|
@@ -10,7 +10,6 @@ require('../../App/i18n').use(
|
|
|
10
10
|
showItemIdentifier:
|
|
11
11
|
'Display item identifier in the configurator</br>(termkey for the label: item_identifier_label)',
|
|
12
12
|
calculationMethod: 'Price calculation',
|
|
13
|
-
configurationsClientRestricted: 'Clients can load configurations from other clients',
|
|
14
13
|
shareUrl: 'URL for sharing configurations',
|
|
15
14
|
shareUrlHelperText: 'include placeholder for configuration code, e.g. https://www.myshop.com/configurator/code:{code}<br>For more dynamic needs, \'&_share_url=\' can be passed as a GET parameter to the frontend.'
|
|
16
15
|
},
|
|
@@ -35,7 +34,6 @@ require('../../App/i18n').use(
|
|
|
35
34
|
showItemIdentifier:
|
|
36
35
|
'Produkt Identifier im Konfigurator anzeigen</br>(Übersetzungskey für das Label: item_identifier_label)',
|
|
37
36
|
calculationMethod: 'Preiskalkulation',
|
|
38
|
-
configurationsClientRestricted: 'Klienten können die Konfigurationen anderer Klienten laden',
|
|
39
37
|
shareUrl: 'URL zum Teilen von Konfigurationen',
|
|
40
38
|
shareUrlHelperText: 'Mit Platzhalter für Konfigurations-Code, z.B. https://www.myshop.com/configurator/code:{code}<br>Für dynamischere Anforderungen kann der GET Parameter \'&_share_url=\' beim Aufruf des Frontends übergeben werden.'
|
|
41
39
|
},
|