@configuratorware/configurator-admingui 1.35.8 → 1.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/App/Config/defaultConfig.js +3 -0
  2. package/App/Data.js +12 -1
  3. package/App/Translations.js +4 -2
  4. package/Screens/Client/Containers/Edit.js +2 -1
  5. package/Screens/Client/Reducers/Reducer.js +0 -6
  6. package/Screens/Client/Translations.js +4 -2
  7. package/Screens/CurrentClient/Containers/Edit.js +2 -1
  8. package/Screens/DefaultClient/Containers/Edit.js +2 -1
  9. package/Screens/Designer/SubScreens/DesignAreas/Containers/FormProductionMethods.js +13 -1
  10. package/Screens/Designer/SubScreens/DesignAreas/Reducers/Reducer.js +3 -0
  11. package/Screens/Designer/Translations.js +3 -1
  12. package/Screens/Font/Reducers/Actions.js +3 -1
  13. package/Screens/Font/Reducers/Reducer.js +1 -0
  14. package/Screens/Item/Containers/Edit.js +30 -0
  15. package/Screens/Item/Translations.js +2 -0
  16. package/Screens/Item/index.js +3 -1
  17. package/Screens/Itemclassification/Containers/Edit.js +65 -0
  18. package/Screens/Itemclassification/Containers/List.js +63 -0
  19. package/Screens/Itemclassification/Reducers/Actions.js +26 -0
  20. package/Screens/Itemclassification/Reducers/Reducer.js +67 -0
  21. package/Screens/Itemclassification/Screen.js +32 -0
  22. package/Screens/Itemclassification/Translations.js +21 -0
  23. package/Screens/Itemclassification/index.js +20 -0
  24. package/Screens/index.js +3 -0
  25. package/package.json +2 -2
  26. package/src/App/Config/defaultConfig.js +13 -9
  27. package/src/App/Data.js +14 -0
  28. package/src/App/Translations.js +2 -0
  29. package/src/Screens/Client/Containers/Edit.js +2 -1
  30. package/src/Screens/Client/Reducers/Reducer.js +0 -1
  31. package/src/Screens/Client/Translations.js +2 -0
  32. package/src/Screens/CurrentClient/Containers/Edit.js +2 -1
  33. package/src/Screens/DefaultClient/Containers/Edit.js +1 -0
  34. package/src/Screens/Designer/SubScreens/DesignAreas/Containers/FormProductionMethods.js +15 -1
  35. package/src/Screens/Designer/SubScreens/DesignAreas/Reducers/Reducer.js +1 -0
  36. package/src/Screens/Designer/Translations.js +2 -0
  37. package/src/Screens/Designer/__tests__/__snapshots__/FormProductionMethods.test.js.snap +38 -0
  38. package/src/Screens/Font/Reducers/Actions.js +3 -3
  39. package/src/Screens/Font/Reducers/Reducer.js +1 -1
  40. package/src/Screens/Item/Containers/Edit.js +23 -1
  41. package/src/Screens/Item/Translations.js +2 -0
  42. package/src/Screens/Item/index.js +2 -1
  43. package/src/Screens/Itemclassification/Containers/Edit.js +49 -0
  44. package/src/Screens/Itemclassification/Containers/List.js +64 -0
  45. package/src/Screens/Itemclassification/Reducers/Actions.js +17 -0
  46. package/src/Screens/Itemclassification/Reducers/Reducer.js +43 -0
  47. package/src/Screens/Itemclassification/Screen.js +19 -0
  48. package/src/Screens/Itemclassification/Translations.js +22 -0
  49. package/src/Screens/Itemclassification/index.js +9 -0
  50. package/src/Screens/index.js +3 -1
@@ -24,6 +24,9 @@ var _default = {
24
24
  name: 'groups'
25
25
  }, {
26
26
  name: 'group_entries'
27
+ }, {
28
+ name: 'item_classifications',
29
+ label: 'itemclassifications.menuLabel'
27
30
  }]
28
31
  }, {
29
32
  name: 'configuration_variants'
package/App/Data.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getErrorsFromValidatedDataObject = exports.validateDataObject = exports.DataValidator = exports["default"] = void 0;
6
+ exports.getErrorsFromValidatedDataObject = exports.validateDataObject = exports.DataValidator = exports["default"] = exports.whiteSpacePattern = void 0;
7
7
 
8
8
  var _lodash = _interopRequireDefault(require("lodash"));
9
9
 
@@ -27,6 +27,9 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
27
27
 
28
28
  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; }
29
29
 
30
+ var whiteSpacePattern = /^[\S]+$/;
31
+ exports.whiteSpacePattern = whiteSpacePattern;
32
+
30
33
  _validate.validate.validators.nonEmptyArray = function (value, options) {
31
34
  if (options && options === true && (0, _isArray["default"])(value) && value.length !== 0) {
32
35
  return null;
@@ -86,6 +89,14 @@ _validate.validate.validators.color = function (value, options) {
86
89
  return true;
87
90
  };
88
91
 
92
+ _validate.validate.validators.noWhitespace = function (value, options) {
93
+ if (options === true && typeof value === 'string' && value.match(whiteSpacePattern) && value.match(whiteSpacePattern)[0] === value) {
94
+ return null;
95
+ }
96
+
97
+ return (0, _i18n.t)('customValidators.noWhitespace');
98
+ };
99
+
89
100
  var Data = /*#__PURE__*/function () {
90
101
  function Data(dataObject) {
91
102
  var mutate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
@@ -60,7 +60,8 @@ require("./i18n").use({
60
60
  numericality: 'Must be greater than 0',
61
61
  identifier: 'Identifiers should only contain lowercase letters, numbers, underscores, periods and dashes.',
62
62
  blankError: "Can't be blank",
63
- decimalPoint: 'Please use dot (".") as decimal separator'
63
+ decimalPoint: 'Please use dot (".") as decimal separator',
64
+ noWhitespace: "Name should not contain whitespaces."
64
65
  },
65
66
  callToActionDefault: {
66
67
  addToCart: 'Use default setting (Add to cart)',
@@ -140,7 +141,8 @@ require("./i18n").use({
140
141
  numericality: 'Bitte Wert größer 0 eingeben',
141
142
  identifier: 'Der Identifier darf nur aus Kleinbuchstaben, Zahlen, Unterstrichen, Punkten und Bindestrichen bestehen.',
142
143
  blankError: 'Kann nicht leer sein',
143
- decimalPoint: 'Bitte Punkt (".") als Dezimaltrennzeichen verwenden'
144
+ decimalPoint: 'Bitte Punkt (".") als Dezimaltrennzeichen verwenden',
145
+ noWhitespace: "Name darf keine Leerzeichen enthalten."
144
146
  },
145
147
  callToActionDefault: {
146
148
  addToCart: 'Default (In den Warenkorb)',
@@ -77,7 +77,8 @@ var formFields = [{
77
77
  type: 'file',
78
78
  accept: '.ttf',
79
79
  showFileName: true,
80
- deleteEnabled: true
80
+ deleteEnabled: true,
81
+ warningMessage: (0, _i18n.T)('clientFontMessage')
81
82
  }, {
82
83
  name: 'logo',
83
84
  label: 'Client logo',
@@ -25,12 +25,6 @@ var initialState = _objectSpread({}, (0, _Reducer.getDefaultEntityState)({
25
25
  identifier: true
26
26
  }
27
27
  },
28
- email: {
29
- value: '',
30
- constraints: {
31
- presence: true
32
- }
33
- },
34
28
  users: {
35
29
  value: [],
36
30
  schema: {
@@ -16,7 +16,8 @@ require("../../App/i18n").use({
16
16
  },
17
17
  headerInfo: 'Please check your changes in a generated pdf to make sure it looks as expected',
18
18
  footerInfo: 'Please check your changes in a generated pdf to make sure it looks as expected',
19
- emailHint: 'separate multiple addresses with a semicolon'
19
+ emailHint: 'separate multiple addresses with a semicolon',
20
+ clientFontMessage: 'For the font to be rendered correctly in the configuratorware frontend, make sure the filename does not contain any spaces and matches the fonts internal name.'
20
21
  },
21
22
  de: {
22
23
  clients: 'Klienten',
@@ -46,6 +47,7 @@ require("../../App/i18n").use({
46
47
  },
47
48
  headerInfo: 'Bitte überprüfe Deine Änderungen in einem generierten PDF',
48
49
  footerInfo: 'Bitte überprüfe Deine Änderungen in einem generierten PDF',
49
- emailHint: 'trenne mehrere Adressen mit einem Semikolon'
50
+ emailHint: 'trenne mehrere Adressen mit einem Semikolon',
51
+ clientFontMessage: 'Für eine korrekte Darstellung der Schrift im configuratorware Fronted darf der Dateiname keine Leerzeichen enthalten und muss dem internen Namen der Schriftart entsprechen.'
50
52
  }
51
53
  }, true);
@@ -40,7 +40,8 @@ var formFields = [{
40
40
  type: 'file',
41
41
  accept: '.ttf',
42
42
  showFileName: true,
43
- deleteEnabled: true
43
+ deleteEnabled: true,
44
+ warningMessage: (0, _i18n.T)('clientFontMessage')
44
45
  }, {
45
46
  name: 'logo',
46
47
  label: 'Client logo',
@@ -38,7 +38,8 @@ var formFields = [{
38
38
  type: 'file',
39
39
  accept: '.ttf',
40
40
  showFileName: true,
41
- deleteEnabled: true
41
+ deleteEnabled: true,
42
+ warningMessage: (0, _i18n.T)('clientFontMessage')
42
43
  }, {
43
44
  name: 'logo',
44
45
  label: 'Client logo',
@@ -191,7 +191,7 @@ var FormProductionMethods = /*#__PURE__*/function (_React$Component) {
191
191
  var value = e.target.value;
192
192
  var nextData = {};
193
193
 
194
- if (key === 'allowBulkNames' || key === 'isDefault' || key === 'designElementsLocked') {
194
+ if (key === 'allowBulkNames' || key === 'isDefault' || key === 'designElementsLocked' || key === 'oneLineText') {
195
195
  value = e.target.checked;
196
196
  }
197
197
 
@@ -1007,6 +1007,18 @@ var FormProductionMethods = /*#__PURE__*/function (_React$Component) {
1007
1007
  item: true,
1008
1008
  xs: 12,
1009
1009
  className: classes.checkboxGrid
1010
+ }, /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
1011
+ control: /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
1012
+ checked: productionMethod.oneLineText,
1013
+ onChange: this.onChange('oneLineText'),
1014
+ value: 'oneLineText',
1015
+ color: "primary"
1016
+ }),
1017
+ label: (0, _i18n.t)('oneLineText')
1018
+ })), /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
1019
+ item: true,
1020
+ xs: 12,
1021
+ className: classes.checkboxGrid
1010
1022
  }, /*#__PURE__*/_react["default"].createElement(_TextField["default"], _extends({
1011
1023
  label: (0, _i18n.t)('minimumOrderAmount'),
1012
1024
  onChange: this.onChange('minimumOrderAmount'),
@@ -124,6 +124,9 @@ var initialState = _objectSpread({}, (0, _Reducer.getDefaultEntityState)({
124
124
  }
125
125
  }
126
126
  },
127
+ oneLineText: {
128
+ value: false
129
+ },
127
130
  mask: {
128
131
  value: {}
129
132
  },
@@ -8,6 +8,7 @@ require("../../App/i18n").use({
8
8
  visualMaintenance: 'Visual maintenance',
9
9
  pleaseUseVisualMaintanance: 'please use visual maintanance',
10
10
  modeChangeConfirm: 'The views and visual maintanance data will be lost. Do you want to proceed?',
11
+ oneLineText: 'Restrict textinput to one line',
11
12
  designDataTransfer: {
12
13
  buttonUseAsTemplate: 'Use as template',
13
14
  dialogTitle: 'Transfer of design settings',
@@ -44,6 +45,7 @@ require("../../App/i18n").use({
44
45
  designer: {
45
46
  itemStatus: 'Status'
46
47
  },
47
- Hint: 'Hinweis'
48
+ Hint: 'Hinweis',
49
+ oneLineText: 'Texteingabe auf eine Zeile beschränken'
48
50
  }
49
51
  }, true);
@@ -13,6 +13,8 @@ var _Actions2 = require("../../../App/Reducers/Entity/Actions");
13
13
 
14
14
  var _Helpers = require("../../../App/Reducers/Api/Helpers");
15
15
 
16
+ var _Data = require("../../../App/Data");
17
+
16
18
  var LIST_KEY = 'fonts';
17
19
  exports.LIST_KEY = LIST_KEY;
18
20
  var DATA_KEY = 'font';
@@ -55,7 +57,7 @@ actions.postData = function () {
55
57
  var fontsToUpload = [];
56
58
  var fontName = state.data.name.value;
57
59
 
58
- if (fontName) {
60
+ if (fontName && fontName.match(_Data.whiteSpacePattern) && fontName.match(_Data.whiteSpacePattern)[0] === fontName) {
59
61
  var fontTypeMap = {
60
62
  fileNameRegular: 'regular',
61
63
  fileNameBold: 'bold',
@@ -26,6 +26,7 @@ var initialState = _objectSpread({}, (0, _Reducer.getDefaultEntityState)({
26
26
  name: {
27
27
  value: '',
28
28
  constraints: {
29
+ noWhitespace: true,
29
30
  presence: true
30
31
  }
31
32
  },
@@ -55,6 +55,8 @@ var _LocalizedPriceTextField = require("../../../Components/LocalizedPriceTextFi
55
55
 
56
56
  var _CallToActionField = require("../../../Components/CallToActionField");
57
57
 
58
+ var _Actions4 = require("../../Itemclassification/Reducers/Actions");
59
+
58
60
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
59
61
 
60
62
  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); }
@@ -81,6 +83,10 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
81
83
 
82
84
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
83
85
 
86
+ 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; }
87
+
88
+ 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; }
89
+
84
90
  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; }
85
91
 
86
92
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
@@ -363,6 +369,30 @@ var formFields = [{
363
369
  shouldRender: function shouldRender(schema) {
364
370
  return schema.children.value.length > 0;
365
371
  }
372
+ }, {
373
+ name: 'itemclassifications',
374
+ label: 'itemclassifications',
375
+ type: 'dynSource',
376
+ sourceConfig: {
377
+ value: 'id',
378
+ text: 'translated_title'
379
+ },
380
+ dynSource: {
381
+ type: 'chip',
382
+ listKey: _Actions4.ITEMCLASSIFICATION_LIST_KEY,
383
+ url: _Actions4.ITEMCLASSIFICATIONS_URL,
384
+ autoLoad: false,
385
+ maxSearchResults: 25,
386
+ mapItems: function mapItems(item) {
387
+ return _objectSpread(_objectSpread({}, item), {}, {
388
+ label: "".concat(item.translated_title)
389
+ });
390
+ }
391
+ },
392
+ openOnFocus: true,
393
+ loadEntity: _Actions["default"].loadEntity,
394
+ entityReducerName: 'itemclassificationData',
395
+ equalityCheckAttribute: 'identifier'
366
396
  }, {
367
397
  name: 'minimumOrderAmount',
368
398
  label: 'MinimumOrderAmount',
@@ -17,6 +17,7 @@ require("../../App/i18n").use({
17
17
  save: 'Save',
18
18
  editDialogTitle: 'Edit selected entries',
19
19
  editDialogHint: 'Use the checkboxes to select one or more entries in the list</br>and then click this icon to set the item status for them.',
20
+ itemclassifications: 'Product categories',
20
21
  visualizationData: {
21
22
  '2d': "2D",
22
23
  '3d': "3D",
@@ -93,6 +94,7 @@ require("../../App/i18n").use({
93
94
  save: 'Speichern',
94
95
  editDialogTitle: 'Gewählte Einträge bearbeiten',
95
96
  editDialogHint: 'Nutze die Checkboxen in der Liste und klicke dann dieses Icon,</br>um den Status für einen oder mehrere Einträge zu setzen.',
97
+ itemclassifications: 'Produktkategorien',
96
98
  visualizationData: {
97
99
  '2d': "2D",
98
100
  '3d': "3D",
@@ -11,11 +11,13 @@ var _ItemReducer = _interopRequireDefault(require("./Reducers/ItemReducer"));
11
11
 
12
12
  var _Reducer = _interopRequireDefault(require("./Reducers/Variant/Reducer"));
13
13
 
14
+ var _Reducer2 = _interopRequireDefault(require("./../Itemclassification/Reducers/Reducer"));
15
+
14
16
  var _FeatureReducers = require("../../App/FeatureReducers");
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
19
 
18
- (0, _FeatureReducers.addReducers)([_ItemReducer["default"], _Reducer["default"]]);
20
+ (0, _FeatureReducers.addReducers)([_ItemReducer["default"], _Reducer["default"], _Reducer2["default"]]);
19
21
  var _default = {
20
22
  Screen: _Screen["default"]
21
23
  };
@@ -0,0 +1,65 @@
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"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _Actions = _interopRequireWildcard(require("../Reducers/Actions"));
13
+
14
+ var _Editor = _interopRequireDefault(require("../../Item/DataStructures/Attributes/Editor"));
15
+
16
+ var _DefaultConnectedForm = _interopRequireDefault(require("../../../Components/DefaultConnectedForm"));
17
+
18
+ var _AttributeEditorPopup = _interopRequireDefault(require("../../Item/Components/AttributeEditorPopup"));
19
+
20
+ 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); }
21
+
22
+ 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; }
23
+
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
+
26
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
27
+
28
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
29
+
30
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
31
+
32
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
33
+
34
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
35
+
36
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
37
+
38
+ var setFieldData = _Actions["default"].setFieldData,
39
+ postData = _Actions["default"].postData,
40
+ customAction = _Actions["default"].customAction;
41
+ var formFields = [{
42
+ name: 'identifier',
43
+ label: 'Identifier',
44
+ type: 'text'
45
+ }, {
46
+ name: 'texts',
47
+ label: 'Title',
48
+ type: 'intl',
49
+ intl: {
50
+ name: 'title',
51
+ type: 'text'
52
+ }
53
+ }, {
54
+ name: 'minimumOrderAmount',
55
+ label: 'Minimum order amount',
56
+ type: 'text'
57
+ }].concat(_toConsumableArray(_Editor["default"]));
58
+ var BaseDataForm = (0, _DefaultConnectedForm["default"])(formFields, _Actions.ITEMCLASSIFICATION_REDUCER_NAME, setFieldData, postData, false, customAction);
59
+
60
+ var ItemClassificationForm = function ItemClassificationForm() {
61
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(BaseDataForm, null), /*#__PURE__*/_react["default"].createElement(_AttributeEditorPopup["default"], null));
62
+ };
63
+
64
+ var _default = ItemClassificationForm;
65
+ exports["default"] = _default;
@@ -0,0 +1,63 @@
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.ConnectedList = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _Actions = _interopRequireWildcard(require("../Reducers/Actions"));
13
+
14
+ var _DefaultConnectedList = _interopRequireDefault(require("../../../Components/DefaultConnectedList"));
15
+
16
+ var _OrderList = _interopRequireDefault(require("../../../Components/OrderList"));
17
+
18
+ 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); }
19
+
20
+ 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; }
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
+
24
+ var detailsAction = _Actions["default"].detailsAction,
25
+ hideDetails = _Actions["default"].hideDetails,
26
+ showDetails = _Actions["default"].showDetails,
27
+ createEntity = _Actions["default"].createEntity,
28
+ listAction = _Actions["default"].listAction,
29
+ deleteEntities = _Actions["default"].deleteEntities;
30
+ var columns = [{
31
+ name: 'identifier',
32
+ label: 'Identifier',
33
+ filterable: true,
34
+ sortable: true,
35
+ filterKey: 'itemclassification.identifier',
36
+ sortKey: 'itemclassification.identifier'
37
+ }, {
38
+ name: 'translated_title',
39
+ label: 'Title',
40
+ filterable: true,
41
+ sortable: true,
42
+ filterKey: 'itemclassification.itemClassificationText.title',
43
+ sortKey: 'itemclassification.itemClassificationText.title'
44
+ }];
45
+ var listParams = {
46
+ entity: 'itemclassifications',
47
+ addButtonLabel: 'itemclassifications.addButtonLabel'
48
+ };
49
+ var ConnectedList = (0, _DefaultConnectedList["default"])(columns, listParams, _Actions.ITEMCLASSIFICATION_LIST_KEY, listAction, detailsAction, hideDetails, showDetails, createEntity, deleteEntities, {
50
+ reducerName: _Actions.ITEMCLASSIFICATION_REDUCER_NAME
51
+ });
52
+ exports.ConnectedList = ConnectedList;
53
+
54
+ var list = function list() {
55
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ConnectedList, null), /*#__PURE__*/_react["default"].createElement(_OrderList["default"], {
56
+ listUrl: _Actions.ITEMCLASSIFICATIONS_URL,
57
+ entity: 'itemclassification',
58
+ orderSequenceNumber: 'sequencenumber'
59
+ }));
60
+ };
61
+
62
+ var _default = list;
63
+ exports["default"] = _default;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.postData = exports.loadEntity = exports.hideDetails = exports.ITEMCLASSIFICATIONS_URL = exports.ITEMCLASSIFICATION_REDUCER_NAME = exports.ITEMCLASSIFICATION_DATA_KEY = exports.ITEMCLASSIFICATION_LIST_KEY = void 0;
7
+
8
+ var _Actions = require("../../../App/Reducers/Entity/Actions");
9
+
10
+ var ITEMCLASSIFICATION_LIST_KEY = 'itemclassifications';
11
+ exports.ITEMCLASSIFICATION_LIST_KEY = ITEMCLASSIFICATION_LIST_KEY;
12
+ var ITEMCLASSIFICATION_DATA_KEY = 'itemclassification';
13
+ exports.ITEMCLASSIFICATION_DATA_KEY = ITEMCLASSIFICATION_DATA_KEY;
14
+ var ITEMCLASSIFICATION_REDUCER_NAME = 'itemclassificationData';
15
+ exports.ITEMCLASSIFICATION_REDUCER_NAME = ITEMCLASSIFICATION_REDUCER_NAME;
16
+ var ITEMCLASSIFICATIONS_URL = 'itemclassifications';
17
+ exports.ITEMCLASSIFICATIONS_URL = ITEMCLASSIFICATIONS_URL;
18
+ var actions = (0, _Actions.generateDefaultActions)(ITEMCLASSIFICATION_LIST_KEY, ITEMCLASSIFICATION_DATA_KEY, ITEMCLASSIFICATION_REDUCER_NAME, ITEMCLASSIFICATIONS_URL);
19
+ var hideDetails = actions.hideDetails,
20
+ loadEntity = actions.loadEntity,
21
+ postData = actions.postData;
22
+ exports.postData = postData;
23
+ exports.loadEntity = loadEntity;
24
+ exports.hideDetails = hideDetails;
25
+ var _default = actions;
26
+ exports["default"] = _default;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.itemClassificationData = void 0;
7
+
8
+ var _Actions = require("./Actions");
9
+
10
+ var _Reducer = require("../../../App/Reducers/Entity/Reducer");
11
+
12
+ var _FeatureReducers = require("../../../App/FeatureReducers");
13
+
14
+ var _Reducer2 = _interopRequireDefault(require("../../Item/DataStructures/Attributes/Reducer"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
18
+ 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; }
19
+
20
+ 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; }
21
+
22
+ 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; }
23
+
24
+ var initialState = _objectSpread({}, (0, _Reducer.getDefaultEntityState)(_objectSpread({
25
+ id: null,
26
+ identifier: {
27
+ value: '',
28
+ constraints: {
29
+ identifier: true
30
+ }
31
+ },
32
+ sequencenumber: {
33
+ value: null,
34
+ constraints: {
35
+ numericality: {
36
+ strict: true,
37
+ onlyInteger: true
38
+ }
39
+ }
40
+ },
41
+ texts: [],
42
+ minimumOrderAmount: {
43
+ value: null,
44
+ constraints: {
45
+ numericality: {
46
+ strict: true,
47
+ onlyInteger: true
48
+ }
49
+ }
50
+ }
51
+ }, _Reducer2["default"]), {
52
+ source: 'itemclassifications',
53
+ dependencies: [{
54
+ name: 'itemclassifications',
55
+ dataKey: 'parent_itemclassifications',
56
+ source: 'itemclassifications'
57
+ }]
58
+ }, _Actions.ITEMCLASSIFICATION_DATA_KEY));
59
+
60
+ var itemClassificationData = (0, _FeatureReducers.createFeatureReducer)(_Actions.ITEMCLASSIFICATION_REDUCER_NAME, function () {
61
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
62
+ var action = arguments.length > 1 ? arguments[1] : undefined;
63
+ return (0, _Reducer.defaultEntityReducer)(state, action, initialState);
64
+ });
65
+ exports.itemClassificationData = itemClassificationData;
66
+ var _default = itemClassificationData;
67
+ exports["default"] = _default;
@@ -0,0 +1,32 @@
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"] = void 0;
9
+
10
+ var _Actions = _interopRequireWildcard(require("./Reducers/Actions"));
11
+
12
+ var _List = _interopRequireDefault(require("./Containers/List"));
13
+
14
+ var _Edit = _interopRequireDefault(require("./Containers/Edit"));
15
+
16
+ require("./Translations");
17
+
18
+ var _DefaultConnectedScreen = require("../../Components/DefaultConnectedScreen");
19
+
20
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
+
22
+ 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); }
23
+
24
+ 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; }
25
+
26
+ var invalidateList = _Actions["default"].invalidateList,
27
+ triggerUnsavedEntity = _Actions["default"].triggerUnsavedEntity,
28
+ hideDetails = _Actions["default"].hideDetails;
29
+
30
+ var _default = (0, _DefaultConnectedScreen.generateConnectedSplitScreen)('item_classifications', _List["default"], _Edit["default"], _Actions.ITEMCLASSIFICATION_REDUCER_NAME, invalidateList, triggerUnsavedEntity, hideDetails);
31
+
32
+ exports["default"] = _default;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ require("../../App/i18n").use({
4
+ en: {
5
+ itemclassifications: {
6
+ addButtonLabel: 'Add Product category',
7
+ menuLabel: 'Product Categories'
8
+ },
9
+ item_classifications: 'Product categories',
10
+ 'Minimum order amount': 'Minimum order amount'
11
+ },
12
+ de: {
13
+ itemclassifications: {
14
+ addButtonLabel: 'Produktkategorie hinzufügen',
15
+ menuLabel: 'Produktkategorien'
16
+ },
17
+ 'Sequence number': 'Reihenfolge',
18
+ item_classifications: 'Produktkategorien',
19
+ 'Minimum order amount': 'Mindestbestellmenge'
20
+ }
21
+ }, true);
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _Screen = _interopRequireDefault(require("./Screen"));
9
+
10
+ var _Reducer = _interopRequireDefault(require("./Reducers/Reducer"));
11
+
12
+ var _FeatureReducers = require("../../App/FeatureReducers");
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ (0, _FeatureReducers.addReducers)(_Reducer["default"]);
17
+ var _default = {
18
+ Screen: _Screen["default"]
19
+ };
20
+ exports["default"] = _default;
package/Screens/index.js CHANGED
@@ -70,6 +70,8 @@ var _TrackingCodes = _interopRequireDefault(require("./TrackingCodes"));
70
70
 
71
71
  var _User = _interopRequireDefault(require("./User"));
72
72
 
73
+ var _Itemclassification = _interopRequireDefault(require("./Itemclassification"));
74
+
73
75
  var _Finder = _interopRequireDefault(require("./Finder"));
74
76
 
75
77
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -90,6 +92,7 @@ var features = {
90
92
  designer: _Designer["default"],
91
93
  design_production_methods: _DesignProductionMethods["default"],
92
94
  items: _Item["default"],
95
+ item_classifications: _Itemclassification["default"],
93
96
  licenses: _Screen2["default"],
94
97
  options: _Option["default"],
95
98
  option_classifications: _Optionclassification["default"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@configuratorware/configurator-admingui",
3
- "version": "1.35.8",
3
+ "version": "1.36.0",
4
4
  "license": "UNLICENSED",
5
5
  "private": false,
6
6
  "dependencies": {
@@ -29,7 +29,7 @@
29
29
  "react-redux-i18n": "^1.9.3",
30
30
  "react-router": "^3.2.6",
31
31
  "react-sortable-hoc": "^1.11.0",
32
- "redhotmagma-visualization": "1.35.8",
32
+ "redhotmagma-visualization": "1.36.0",
33
33
  "redux": "^4.1.0",
34
34
  "redux-logger": "^3.0.6",
35
35
  "redux-persist": "^5.10.0",