thm-p3-configurator 0.0.96 → 0.0.98

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.
@@ -8,8 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.default = void 0;
11
- var _index = _interopRequireDefault(require("./__pages__/index"));
12
- var _InternalBranchSelectorModal = _interopRequireDefault(require("./__containers__/internal/InternalBranchSelectorModal"));
11
+ var _TEST_ONLY_INTERNAL_ROUTES = _interopRequireDefault(require("./__pages__/internal/__TEST_ONLY_INTERNAL_ROUTES"));
13
12
  var _react = _interopRequireWildcard(require("react"));
14
13
  require("react-datepicker/src/stylesheets/datepicker-cssmodules.scss");
15
14
  var _reactGtmModule = _interopRequireDefault(require("react-gtm-module"));
@@ -20,12 +19,14 @@ var _Navbar = _interopRequireDefault(require("./__components__/Navbar"));
20
19
  var _constants__ = require("./__constants__");
21
20
  var _SentryWrapper = _interopRequireDefault(require("./__containers__/SentryWrapper"));
22
21
  var _StyleWrapper = _interopRequireDefault(require("./__containers__/StyleWrapper"));
22
+ var _InternalBranchSelectorModal = _interopRequireDefault(require("./__containers__/internal/InternalBranchSelectorModal"));
23
23
  var _ActiveMarkerContext = require("./__context__/ActiveMarkerContext");
24
24
  var _CountryContext = require("./__context__/CountryContext");
25
25
  var _FormulaContext = require("./__context__/FormulaContext");
26
26
  var _OrderSessionContext = require("./__context__/OrderSessionContext");
27
27
  var _cookiebot = require("./__helpers__/cookiebot");
28
28
  var _queryClient = _interopRequireDefault(require("./__helpers__/queryClient"));
29
+ var _index = _interopRequireDefault(require("./__pages__/index"));
29
30
  var _Experiments = _interopRequireDefault(require("./__services__/Experiments"));
30
31
  var _mainExternal = _interopRequireDefault(require("./__style__/main-external.scss"));
31
32
  var _main = _interopRequireDefault(require("./__style__/main.scss"));
@@ -59,8 +60,6 @@ function _interopRequireDefault(e) {
59
60
  default: e
60
61
  };
61
62
  }
62
- // import TEST_ONLY_INTERNAL_ROUTES from './__pages__/internal/__TEST_ONLY_INTERNAL_ROUTES';
63
-
64
63
  _reactGtmModule.default.initialize({
65
64
  gtmId: APP_CONFIG.googleTagManagerId || 'GTM-TC67SZ4'
66
65
  });
@@ -76,6 +75,6 @@ const App = () => {
76
75
  defaultCountry: APP_CONFIG.country
77
76
  }, /*#__PURE__*/_react.default.createElement(_OrderSessionContext.OrderSessionController, null, /*#__PURE__*/_react.default.createElement(_reactQuery.QueryClientProvider, {
78
77
  client: _queryClient.default
79
- }, /*#__PURE__*/_react.default.createElement(_reactRouterDom.BrowserRouter, null, /*#__PURE__*/_react.default.createElement(_reactHotLoader.AppContainer, null, /*#__PURE__*/_react.default.createElement(_ActiveMarkerContext.ActiveMarkerProvider, null, /*#__PURE__*/_react.default.createElement(_StyleWrapper.default, null, !APP_CONFIG.internal && /*#__PURE__*/_react.default.createElement(_Navbar.default, null), APP_CONFIG.internal && /*#__PURE__*/_react.default.createElement(_InternalBranchSelectorModal.default, null), /*#__PURE__*/_react.default.createElement(_index.default, null))))))))));
78
+ }, /*#__PURE__*/_react.default.createElement(_reactRouterDom.BrowserRouter, null, /*#__PURE__*/_react.default.createElement(_reactHotLoader.AppContainer, null, /*#__PURE__*/_react.default.createElement(_ActiveMarkerContext.ActiveMarkerProvider, null, /*#__PURE__*/_react.default.createElement(_StyleWrapper.default, null, !APP_CONFIG.internal && /*#__PURE__*/_react.default.createElement(_Navbar.default, null), APP_CONFIG.internal && /*#__PURE__*/_react.default.createElement(_InternalBranchSelectorModal.default, null), APP_CONFIG.nodeEnv === 'development' && APP_CONFIG.internal === true && /*#__PURE__*/_react.default.createElement(_TEST_ONLY_INTERNAL_ROUTES.default, null))))))))));
80
79
  };
81
80
  var _default = exports.default = App;
@@ -77,7 +77,7 @@ const LocationsSelector = /*#__PURE__*/_react.default.memo(() => {
77
77
  return (branchTypes === null || branchTypes === void 0 || (_branchTypes$byId$aut = branchTypes.byId[authSession === null || authSession === void 0 || (_authSession$branch = authSession.branch) === null || _authSession$branch === void 0 || (_authSession$branch = _authSession$branch.organisatietype) === null || _authSession$branch === void 0 ? void 0 : _authSession$branch[0]]) === null || _branchTypes$byId$aut === void 0 ? void 0 : _branchTypes$byId$aut.title) === _constants__.TMG_ORGANIZATION_TYPE;
78
78
  }, [branchTypes, authSession]);
79
79
  let locations;
80
- if (isTMGOrganization) {
80
+ if (isTMGOrganization || !APP_CONFIG.internal) {
81
81
  const {
82
82
  branches
83
83
  } = (0, _queries.useBranchesQuery)({
@@ -36,7 +36,7 @@ const ProductTableEditableRow = _ref => {
36
36
  src: productImage || _logoPrimary.default,
37
37
  alt: "product"
38
38
  })), /*#__PURE__*/_react.default.createElement("div", {
39
- className: (0, _helpers__.withStyle)('col container g-0')
39
+ className: (0, _helpers__.withStyle)('col')
40
40
  }, /*#__PURE__*/_react.default.createElement("p", null, productTitle), /*#__PURE__*/_react.default.createElement("div", {
41
41
  className: (0, _helpers__.withStyle)('row mt-0 flex-row flex-md-column flex-wrap flex-md-nowrap')
42
42
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -31,7 +31,7 @@ const ProductTableStaticRow = _ref => {
31
31
  src: productImage || _logoPrimary.default,
32
32
  alt: "product"
33
33
  })), /*#__PURE__*/_react.default.createElement("div", {
34
- className: (0, _helpers__.withStyle)('col container g-0')
34
+ className: (0, _helpers__.withStyle)('col')
35
35
  }, /*#__PURE__*/_react.default.createElement("p", null, productTitle)))), extraCells.map((_ref2, index) => {
36
36
  let {
37
37
  className = '',
@@ -7,6 +7,7 @@ require("core-js/modules/es.weak-map.js");
7
7
  require("core-js/modules/esnext.iterator.constructor.js");
8
8
  require("core-js/modules/esnext.iterator.filter.js");
9
9
  require("core-js/modules/esnext.iterator.for-each.js");
10
+ require("core-js/modules/esnext.iterator.map.js");
10
11
  require("core-js/modules/web.dom-collections.iterator.js");
11
12
  require("core-js/modules/es.weak-map.js");
12
13
  require("core-js/modules/esnext.iterator.constructor.js");
@@ -19,6 +20,7 @@ exports.default = void 0;
19
20
  require("core-js/modules/es.promise.js");
20
21
  require("core-js/modules/es.regexp.exec.js");
21
22
  require("core-js/modules/es.string.replace.js");
23
+ require("core-js/modules/esnext.iterator.map.js");
22
24
  require("core-js/modules/web.dom-collections.iterator.js");
23
25
  var _react = _interopRequireWildcard(require("react"));
24
26
  var _reactRouter = require("react-router");
@@ -132,7 +134,8 @@ const AppointmentForm = () => {
132
134
  executionAnswer1,
133
135
  executionAnswer2,
134
136
  priceCalculationDate,
135
- selectedDiscountedProducts = []
137
+ selectedDiscountedProducts = [],
138
+ selectedExtras
136
139
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
137
140
  const [errors, setErrors] = (0, _react.useState)({});
138
141
  const [isTermsAccepted, setIsTermsAccepted] = (0, _react.useState)(false);
@@ -181,7 +184,13 @@ const AppointmentForm = () => {
181
184
  }, {
182
185
  articleNumber: selectedTowbar,
183
186
  quantity: 1
184
- }, ...selectedDiscountedProducts])
187
+ }, ...Object.entries(selectedExtras).map(_ref => {
188
+ let [extraArticleNumber, extraQuantity] = _ref;
189
+ return {
190
+ articleNumber: extraArticleNumber,
191
+ quantity: extraQuantity
192
+ };
193
+ }), ...selectedDiscountedProducts])
185
194
  }));
186
195
  } catch (ex) {
187
196
  console.error("handleSubmit(): ".concat(ex));
@@ -7,6 +7,7 @@ require("core-js/modules/es.weak-map.js");
7
7
  require("core-js/modules/esnext.iterator.constructor.js");
8
8
  require("core-js/modules/esnext.iterator.filter.js");
9
9
  require("core-js/modules/esnext.iterator.for-each.js");
10
+ require("core-js/modules/esnext.iterator.map.js");
10
11
  require("core-js/modules/web.dom-collections.iterator.js");
11
12
  require("core-js/modules/es.weak-map.js");
12
13
  require("core-js/modules/esnext.iterator.constructor.js");
@@ -19,6 +20,7 @@ exports.default = void 0;
19
20
  require("core-js/modules/es.array.includes.js");
20
21
  require("core-js/modules/es.promise.js");
21
22
  require("core-js/modules/es.string.includes.js");
23
+ require("core-js/modules/esnext.iterator.map.js");
22
24
  require("core-js/modules/web.dom-collections.iterator.js");
23
25
  var _lodash = require("lodash");
24
26
  var _react = _interopRequireWildcard(require("react"));
@@ -134,7 +136,8 @@ const ExitIntentModal = () => {
134
136
  executionAnswer1,
135
137
  executionAnswer2,
136
138
  priceCalculationDate,
137
- selectedDiscountedProducts = []
139
+ selectedDiscountedProducts = [],
140
+ selectedExtras
138
141
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
139
142
  const formula = (0, _FormulaContext.useFormula)();
140
143
  (0, _react.useEffect)(() => {
@@ -197,10 +200,13 @@ const ExitIntentModal = () => {
197
200
  }, {
198
201
  articleNumber: selectedTowbar,
199
202
  quantity: 1
200
- }, {
201
- articleNumber: selectedCableset,
202
- quantity: 1
203
- }, ...selectedDiscountedProducts])
203
+ }, ...Object.entries(selectedExtras).map(_ref => {
204
+ let [extraArticleNumber, extraQuantity] = _ref;
205
+ return {
206
+ articleNumber: extraArticleNumber,
207
+ quantity: extraQuantity
208
+ };
209
+ }), ...selectedDiscountedProducts])
204
210
  }));
205
211
  } catch (ex) {
206
212
  console.error("handleSubmit(): ".concat(ex));
@@ -59,6 +59,7 @@ const ManualSelectionForm = _ref => {
59
59
  var _initialValues$model;
60
60
  let {
61
61
  onSubmit,
62
+ canSearchLicenseplate = true,
62
63
  initialValues = null,
63
64
  isFilter = false,
64
65
  filterModalChange = () => {}
@@ -205,7 +206,7 @@ const ManualSelectionForm = _ref => {
205
206
  value: model,
206
207
  label: model
207
208
  }
208
- }), /*#__PURE__*/_react.default.createElement("div", {
209
+ }), canSearchLicenseplate && /*#__PURE__*/_react.default.createElement("div", {
209
210
  className: (0, _helpers__.withStyle)('row mt-3')
210
211
  }, /*#__PURE__*/_react.default.createElement("div", {
211
212
  className: (0, _helpers__.withStyle)('d-grid gap-2')
@@ -30,6 +30,7 @@ require("core-js/modules/esnext.iterator.reduce.js");
30
30
  require("core-js/modules/web.dom-collections.iterator.js");
31
31
  var _react = _interopRequireWildcard(require("react"));
32
32
  var _logoPrimary = _interopRequireDefault(require("../../../public/assets/images/logo-primary.png"));
33
+ var _montagePlaceholder = _interopRequireDefault(require("../../../public/assets/images/montage-placeholder.png"));
33
34
  var _queries = require("../__api__/queries");
34
35
  var _TogglableCard = _interopRequireDefault(require("../__components__/Cards/TogglableCard"));
35
36
  var _ProductTableEditableRow = _interopRequireDefault(require("../__components__/ProductTable/ProductTableEditableRow"));
@@ -165,15 +166,20 @@ const ProductCartTable = () => {
165
166
  };
166
167
 
167
168
  // Calculate subtotal for main products
168
- const subtotalPriceProducts = (cart === null || cart === void 0 ? void 0 : cart.reduce((acc, item) => {
169
- if (mainProducts.find(product => product.articleNumber === item.articleNumber)) {
170
- const {
171
- salesPrice
172
- } = getItemPrices(item);
173
- return acc + salesPrice * 1.21;
174
- }
175
- return acc;
176
- }, 0)) || 0;
169
+ let subtotalPriceProducts = 0;
170
+ if (isToggled) {
171
+ subtotalPriceProducts = (cart === null || cart === void 0 ? void 0 : cart.reduce((acc, item) => {
172
+ if (mainProducts.find(product => product.articleNumber === item.articleNumber)) {
173
+ const {
174
+ salesPrice
175
+ } = getItemPrices(item);
176
+ return acc + salesPrice * 1.21;
177
+ }
178
+ return acc;
179
+ }, 0)) || 0;
180
+ } else {
181
+ subtotalPriceProducts = subtotalPriceProducts + (isToggled ? totals === null || totals === void 0 ? void 0 : totals.subtotalMontagePurchaseExclVat : (totals === null || totals === void 0 ? void 0 : totals.subtotalMontageExclVat) * 1.21);
182
+ }
177
183
 
178
184
  // Calculate subtotal for accessories
179
185
  const subtotalPriceAccessoires = (cart === null || cart === void 0 ? void 0 : cart.reduce((acc, item) => {
@@ -200,8 +206,6 @@ const ProductCartTable = () => {
200
206
 
201
207
  // Calculate original total
202
208
  const calculateOriginalTotal = () => {
203
- const totalExclVat = isToggled ? (totals === null || totals === void 0 ? void 0 : totals.subtotalMontagePurchaseExclVat) || 0 : (totals === null || totals === void 0 ? void 0 : totals.subtotalMontageExclVat) || 0;
204
- const totalVat = isToggled ? (totals === null || totals === void 0 ? void 0 : totals.totalPurchaseVatAfterDiscount) || 0 : (totals === null || totals === void 0 ? void 0 : totals.totalVatAfterDiscount) || 0;
205
209
  return subtotalPriceProducts + subtotalPriceAccessoires;
206
210
  };
207
211
 
@@ -261,17 +265,24 @@ const ProductCartTable = () => {
261
265
  productImage: product !== null && product !== void 0 && (_product$images = product.images) !== null && _product$images !== void 0 && _product$images[0] ? (0, _image.getImageFromHyper)({
262
266
  imageId: (_product$images2 = product.images) === null || _product$images2 === void 0 ? void 0 : _product$images2[0]
263
267
  }) : _logoPrimary.default,
264
- extraCells: [{}, {}, ...(isToggled ? [{
265
- text: (0, _helpers__.formatPrice)(purchasePrice),
266
- className: 'cart__table-price text-end'
267
- }, {
268
- text: "".concat((0, _helpers__.formatPrice)(margin), " (").concat(marginPercentage, "%)"),
269
- className: 'cart__table-price text-end'
270
- }] : [{}, {}]), {
271
- text: (0, _helpers__.formatPrice)(isToggled ? salesPrice : salesPriceInclVat),
268
+ extraCells: [{}, {}, ...(isToggled ? [{}, {}] : [{}, {}]), {
269
+ text: salesPrice !== 0 || salesPriceInclVat !== 0 ? (0, _helpers__.formatPrice)(isToggled ? salesPrice : salesPriceInclVat) : '',
272
270
  className: 'cart__table-price text-end'
273
271
  }]
274
272
  });
273
+ }), mainProducts && /*#__PURE__*/_react.default.createElement(_ProductTableStaticRow.default, {
274
+ productTitle: 'Montage',
275
+ productImage: _montagePlaceholder.default,
276
+ extraCells: [{}, {}, ...(isToggled ? [{
277
+ text: (0, _helpers__.formatPrice)(purchasePrice),
278
+ className: 'cart__table-price text-end'
279
+ }, {
280
+ text: "".concat((0, _helpers__.formatPrice)(margin), " (").concat(marginPercentage, "%)"),
281
+ className: 'cart__table-price text-end'
282
+ }] : [{}, {}]), {
283
+ text: (0, _helpers__.formatPrice)(isToggled ? totals === null || totals === void 0 ? void 0 : totals.montagePricePlusMarketCorrectionExclVat : totals === null || totals === void 0 ? void 0 : totals.montagePricePlusMarketCorrectionInclVat),
284
+ className: 'cart__table-price text-end'
285
+ }]
275
286
  }), /*#__PURE__*/_react.default.createElement(_ProductTableSectionTotal.default, {
276
287
  isEditable: true,
277
288
  editLabel: 'Wijzig je trekhaakpakket',
@@ -5,6 +5,7 @@ require("core-js/modules/es.weak-map.js");
5
5
  require("core-js/modules/esnext.iterator.constructor.js");
6
6
  require("core-js/modules/esnext.iterator.filter.js");
7
7
  require("core-js/modules/esnext.iterator.for-each.js");
8
+ require("core-js/modules/esnext.iterator.map.js");
8
9
  require("core-js/modules/web.dom-collections.iterator.js");
9
10
  require("core-js/modules/es.weak-map.js");
10
11
  require("core-js/modules/esnext.iterator.constructor.js");
@@ -15,6 +16,7 @@ Object.defineProperty(exports, "__esModule", {
15
16
  });
16
17
  exports.default = void 0;
17
18
  require("core-js/modules/es.promise.js");
19
+ require("core-js/modules/esnext.iterator.map.js");
18
20
  require("core-js/modules/web.dom-collections.iterator.js");
19
21
  var _react = _interopRequireWildcard(require("react"));
20
22
  var _reactRouter = require("react-router");
@@ -127,7 +129,8 @@ const QuotationForm = () => {
127
129
  selectedTowbar,
128
130
  selectedBranch,
129
131
  discountCode,
130
- selectedDiscountedProducts = []
132
+ selectedDiscountedProducts = [],
133
+ selectedExtras
131
134
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
132
135
  const [errors, setErrors] = (0, _react.useState)({});
133
136
  const [isTermsAccepted, setIsTermsAccepted] = (0, _react.useState)(false);
@@ -175,7 +178,13 @@ const QuotationForm = () => {
175
178
  }, {
176
179
  articleNumber: selectedTowbar,
177
180
  quantity: 1
178
- }, ...selectedDiscountedProducts])
181
+ }, ...Object.entries(selectedExtras).map(_ref => {
182
+ let [extraArticleNumber, extraQuantity] = _ref;
183
+ return {
184
+ articleNumber: extraArticleNumber,
185
+ quantity: extraQuantity
186
+ };
187
+ }), ...selectedDiscountedProducts])
179
188
  }));
180
189
  } catch (ex) {
181
190
  console.error("handleSubmit(): ".concat(ex));
@@ -177,7 +177,8 @@ const InternalAppointmentForm = _ref => {
177
177
  selectedDiscountedProducts = [],
178
178
  executionAnswer1,
179
179
  executionAnswer2,
180
- priceCalculationDate
180
+ priceCalculationDate,
181
+ selectedExtras
181
182
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
182
183
  const [errors, setErrors] = (0, _react.useState)({});
183
184
  const [_licensePlate, _setLicensePlate] = (0, _react.useState)();
@@ -309,7 +310,13 @@ const InternalAppointmentForm = _ref => {
309
310
  }, {
310
311
  articleNumber: selectedTowbar,
311
312
  quantity: 1
312
- }, ...selectedDiscountedProducts])
313
+ }, ...Object.entries(selectedExtras).map(_ref3 => {
314
+ let [extraArticleNumber, extraQuantity] = _ref3;
315
+ return {
316
+ articleNumber: extraArticleNumber,
317
+ quantity: extraQuantity
318
+ };
319
+ }), ...selectedDiscountedProducts])
313
320
  }));
314
321
  } catch (ex) {
315
322
  console.error("handleSubmit(): ".concat(ex));
@@ -392,12 +399,12 @@ const InternalAppointmentForm = _ref => {
392
399
  placeholder: "Maak een keuze",
393
400
  errorMessage: (errors === null || errors === void 0 ? void 0 : errors['channelType']) || (errors === null || errors === void 0 ? void 0 : errors['channelId']),
394
401
  initialValue: initialChannel,
395
- onChange: _ref3 => {
402
+ onChange: _ref4 => {
396
403
  var _value$kanaalType;
397
404
  let {
398
405
  label,
399
406
  value
400
- } = _ref3;
407
+ } = _ref4;
401
408
  return dispatch({
402
409
  type: _OrderSessionContext.orderSessionActions.SET_MARKETING_CHANNEL,
403
410
  payload: {
@@ -94,7 +94,7 @@ const NormalPageModalContent = _ref => {
94
94
  var _branches$;
95
95
  if (!(_branches !== null && _branches !== void 0 && _branches.length)) return;
96
96
  if (selectedBranch) return;
97
- const shouldAutoSelect = !isLocation && !existingDossierId && !isTMGOrganization && _branches.length === 1;
97
+ const shouldAutoSelect = !existingDossierId && !isTMGOrganization && _branches.length === 1;
98
98
  if (!shouldAutoSelect) return;
99
99
  const branchToSelect = (_branches$ = _branches[0]) === null || _branches$ === void 0 ? void 0 : _branches$.entityId;
100
100
  if (branchToSelect) {
@@ -248,6 +248,14 @@ const InternalBranchSelectorModal = () => {
248
248
  selectedBranch,
249
249
  existingDossierId
250
250
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
251
+ const {
252
+ myBranches,
253
+ isLoadingMyBranches
254
+ } = (0, _queries.useMyBranches)(formula);
255
+ const shouldAutoSelect = _react.default.useMemo(() => {
256
+ if (isSingleOrderPage) return false;
257
+ return !existingDossierId && !isTMGOrganization && !selectedBranch && (myBranches === null || myBranches === void 0 ? void 0 : myBranches.length) === 1;
258
+ }, [existingDossierId, isTMGOrganization, selectedBranch, myBranches, isSingleOrderPage]);
251
259
  const handlePrimaryButtonClicked = () => {
252
260
  dispatch({
253
261
  type: _OrderSessionContext.orderSessionActions.SET_SELECTED_BRANCH,
@@ -256,13 +264,13 @@ const InternalBranchSelectorModal = () => {
256
264
  }
257
265
  });
258
266
  };
259
- if (isLoadingBranchTypes) {
267
+ const shouldShowModalForSingleOrder = APP_CONFIG.internal && !selectedBranch && !existingDossierId && isSingleOrderPage;
268
+ const shouldShowModalForOtherPages = APP_CONFIG.internal && !selectedBranch && !existingDossierId && !isSingleOrderPage && !isTMGOrganization && !shouldAutoSelect && !isLoadingMyBranches;
269
+ if (isLoadingBranchTypes || isLoadingMyBranches) {
260
270
  return /*#__PURE__*/_react.default.createElement("div", {
261
271
  className: "thm-configurator-wrapper--offset"
262
- }, ' ', /*#__PURE__*/_react.default.createElement(_FullPageSpinner.default, null), ' ');
272
+ }, /*#__PURE__*/_react.default.createElement(_FullPageSpinner.default, null));
263
273
  }
264
- const shouldShowModalForSingleOrder = APP_CONFIG.internal && !selectedBranch && !existingDossierId && isSingleOrderPage;
265
- const shouldShowModalForOtherPages = APP_CONFIG.internal && !selectedBranch && !existingDossierId && !isSingleOrderPage && !isTMGOrganization;
266
274
  return /*#__PURE__*/_react.default.createElement(_Modal.default, {
267
275
  isOpen: shouldShowModalForSingleOrder || shouldShowModalForOtherPages,
268
276
  title: 'Kies een vestiging:',
@@ -167,7 +167,8 @@ const InternalQuotationForm = _ref => {
167
167
  discountAmount,
168
168
  discountPercentage,
169
169
  selectedDiscountedProducts = [],
170
- channel
170
+ channel,
171
+ selectedExtras
171
172
  }, dispatch] = (0, _OrderSessionContext.useOrderSession)();
172
173
  const [errors, setErrors] = (0, _react.useState)({});
173
174
  const [_licensePlate, _setLicensePlate] = (0, _react.useState)(licensePlate);
@@ -298,7 +299,13 @@ const InternalQuotationForm = _ref => {
298
299
  }, {
299
300
  articleNumber: selectedTowbar,
300
301
  quantity: 1
301
- }, ...selectedDiscountedProducts])
302
+ }, ...Object.entries(selectedExtras).map(_ref3 => {
303
+ let [extraArticleNumber, extraQuantity] = _ref3;
304
+ return {
305
+ articleNumber: extraArticleNumber,
306
+ quantity: extraQuantity
307
+ };
308
+ }), ...selectedDiscountedProducts])
302
309
  }));
303
310
  } catch (ex) {
304
311
  console.error("handleSubmit(): ".concat(ex));
@@ -330,12 +337,12 @@ const InternalQuotationForm = _ref => {
330
337
  placeholder: "Maak een keuze",
331
338
  errorMessage: (errors === null || errors === void 0 ? void 0 : errors['channelId']) || (errors === null || errors === void 0 ? void 0 : errors['channelType']),
332
339
  initialValue: initialChannel,
333
- onChange: _ref3 => {
340
+ onChange: _ref4 => {
334
341
  var _value$kanaalType;
335
342
  let {
336
343
  label,
337
344
  value
338
- } = _ref3;
345
+ } = _ref4;
339
346
  return dispatch({
340
347
  type: _OrderSessionContext.orderSessionActions.SET_MARKETING_CHANNEL,
341
348
  payload: {
@@ -8,17 +8,18 @@ var _react = require("react");
8
8
  var _queries = require("../__api__/queries");
9
9
  var _constants__ = require("../__constants__");
10
10
  var _useAuthSession = require("./useAuthSession");
11
- const useIsTmg = () => {
11
+ const useIsTmg = exports.useIsTmg = function useIsTmg() {
12
+ let internal = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
12
13
  const {
13
14
  branchTypes
14
- } = (0, _queries.useBranchTypes)();
15
- const {
16
- branch
17
- } = (0, _useAuthSession.useAuthSession)();
15
+ } = (0, _queries.useBranchTypes)() || {};
16
+ const session = (0, _useAuthSession.useAuthSession)();
17
+ const branch = session === null || session === void 0 ? void 0 : session.branch;
18
18
  return (0, _react.useMemo)(() => {
19
- var _branchTypes$byId;
20
- const branchType = branchTypes === null || branchTypes === void 0 || (_branchTypes$byId = branchTypes.byId) === null || _branchTypes$byId === void 0 ? void 0 : _branchTypes$byId[branch === null || branch === void 0 ? void 0 : branch.organisatietype];
19
+ if (!internal || !(branchTypes !== null && branchTypes !== void 0 && branchTypes.byId) || !(branch !== null && branch !== void 0 && branch.organisatietype)) {
20
+ return false;
21
+ }
22
+ const branchType = branchTypes.byId[branch.organisatietype];
21
23
  return (branchType === null || branchType === void 0 ? void 0 : branchType.title) === _constants__.TMG_ORGANIZATION_TYPE;
22
- }, [branchTypes, branch]);
23
- };
24
- exports.useIsTmg = useIsTmg;
24
+ }, [branchTypes, branch, internal]);
25
+ };
@@ -56,17 +56,22 @@ const getSteps = _ref => {
56
56
  onNext,
57
57
  onPrev,
58
58
  onSubmit,
59
- initialValues
59
+ initialValues,
60
+ canSearchLicenseplate
60
61
  } = _ref;
61
62
  return [/*#__PURE__*/_react.default.createElement(_ManualSelectionForm.default, {
62
63
  onSubmit: onNext,
63
- initialValues: initialValues
64
+ initialValues: initialValues,
65
+ canSearchLicenseplate: canSearchLicenseplate
64
66
  }), /*#__PURE__*/_react.default.createElement(_QuestionsForm.default, {
65
67
  onPrev: onPrev,
66
68
  onSubmit: onSubmit
67
69
  })];
68
70
  };
69
- const InternalManualSelectionPage = () => {
71
+ const InternalManualSelectionPage = _ref2 => {
72
+ let {
73
+ canSearchLicenseplate = true
74
+ } = _ref2;
70
75
  const [{
71
76
  brand,
72
77
  model,
@@ -124,7 +129,8 @@ const InternalManualSelectionPage = () => {
124
129
  },
125
130
  onNext: handleNext,
126
131
  onPrev: handlePrev,
127
- onSubmit: handleSubmit
132
+ onSubmit: handleSubmit,
133
+ canSearchLicenseplate
128
134
  }), [persistSession, originalVehicle.current]);
129
135
  return /*#__PURE__*/_react.default.createElement("div", {
130
136
  className: (0, _helpers__.withStyle)('vh-100')
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.assign.js");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = void 0;
8
+ require("core-js/modules/es.object.assign.js");
7
9
  var _react = _interopRequireDefault(require("react"));
8
10
  var _reactRouterDom = require("react-router-dom");
9
11
  var _ = require(".");
@@ -16,8 +18,15 @@ function _interopRequireDefault(e) {
16
18
  default: e
17
19
  };
18
20
  }
19
- // Pages
20
-
21
+ function _extends() {
22
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
23
+ for (var e = 1; e < arguments.length; e++) {
24
+ var t = arguments[e];
25
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
26
+ }
27
+ return n;
28
+ }, _extends.apply(null, arguments);
29
+ } // Pages
21
30
  const TEST_ONLY_INTERNAL_ROUTES = () => {
22
31
  return /*#__PURE__*/_react.default.createElement(_reactRouterDom.Switch, null, /*#__PURE__*/_react.default.createElement(_reactRouterDom.Route, {
23
32
  exact: true,
@@ -48,7 +57,9 @@ const TEST_ONLY_INTERNAL_ROUTES = () => {
48
57
  render: props => /*#__PURE__*/_react.default.createElement(_.InternalProductsPage, null)
49
58
  }), /*#__PURE__*/_react.default.createElement(_reactRouterDom.Route, {
50
59
  path: "/configurator/manual",
51
- render: props => /*#__PURE__*/_react.default.createElement(_.InternalManualSelectionPage, props)
60
+ render: props => /*#__PURE__*/_react.default.createElement(_.InternalManualSelectionPage, _extends({
61
+ canSearchLicenseplate: false
62
+ }, props))
52
63
  }), /*#__PURE__*/_react.default.createElement(_reactRouterDom.Route, {
53
64
  exact: true,
54
65
  path: "/configurator/overzicht",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thm-p3-configurator",
3
- "version": "0.0.96",
3
+ "version": "0.0.98",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.js",
6
6
  "author": "EnoRm.",