thm-p3-configurator 0.0.373 → 0.0.375

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 (27) hide show
  1. package/dist/src/shared/__components__/ProductTable/ProductTableHead.js +32 -0
  2. package/dist/src/shared/__components__/ProductTable/ProductTableSection.js +25 -0
  3. package/dist/src/shared/__components__/ProductTable/ProductTableSectionTotal.js +46 -0
  4. package/dist/src/shared/__components__/ProductTable/ProductTableStaticRow.js +47 -0
  5. package/dist/src/shared/__components__/ProductTable/ProductTableTotal.js +41 -0
  6. package/dist/src/shared/__components__/ProductTable/index.js +127 -0
  7. package/dist/src/shared/__components__/SingleOrderCartCard.js +78 -0
  8. package/dist/src/shared/__components__/SingleOrderProductCard.js +352 -0
  9. package/dist/src/shared/__components__/Spinners/FullPageSpinner.js +73 -0
  10. package/dist/src/shared/__components__/Spinners/InlineSpinner.js +26 -0
  11. package/dist/src/shared/__components__/Spinners/TextSpinner.js +31 -0
  12. package/dist/src/shared/__components__/UspsList.js +27 -0
  13. package/dist/src/shared/__components__/internal/InternalCustomerDetailsForm.js +995 -0
  14. package/dist/src/shared/__constants__/__tests__/index.test.js +20 -0
  15. package/dist/src/shared/__constants__/cartTable.js +32 -0
  16. package/dist/src/shared/__constants__/cookiebot.js +7 -0
  17. package/dist/src/shared/__constants__/index.js +379 -0
  18. package/dist/src/shared/__constants__/sentry.js +20 -0
  19. package/dist/src/shared/__containers__/ANWBMembershipInput.js +170 -0
  20. package/dist/src/shared/__containers__/AppointmentForm.js +535 -0
  21. package/dist/src/shared/__containers__/BoardComputerCard.js +139 -0
  22. package/dist/src/shared/__containers__/BottomNavigationBar.js +182 -0
  23. package/dist/src/shared/__containers__/DiscountProductsSelector.js +149 -0
  24. package/dist/src/shared/__containers__/ExitIntentModal.js +403 -0
  25. package/dist/src/shared/__containers__/ExtraProductsOverview.js +251 -0
  26. package/dist/src/shared/__containers__/LicensePlateForm.js +187 -0
  27. package/package.json +1 -1
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/esnext.iterator.map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/esnext.iterator.map.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _helpers__ = require("../../__helpers__");
11
+ function _interopRequireDefault(e) {
12
+ return e && e.__esModule ? e : {
13
+ default: e
14
+ };
15
+ }
16
+ const ProductTableHead = _ref => {
17
+ let {
18
+ columns
19
+ } = _ref;
20
+ return /*#__PURE__*/_react.default.createElement("thead", null, /*#__PURE__*/_react.default.createElement("tr", null, columns.map((_ref2, index) => {
21
+ let {
22
+ className = '',
23
+ text = ''
24
+ } = _ref2;
25
+ return /*#__PURE__*/_react.default.createElement("th", {
26
+ key: "".concat(text, "-table-head-").concat(index),
27
+ className: (0, _helpers__.withStyle)(className),
28
+ scope: "col"
29
+ }, text);
30
+ })));
31
+ };
32
+ var _default = exports.default = ProductTableHead;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _helpers__ = require("../../__helpers__");
9
+ function _interopRequireDefault(e) {
10
+ return e && e.__esModule ? e : {
11
+ default: e
12
+ };
13
+ }
14
+ const ProductTableSection = _ref => {
15
+ let {
16
+ heading,
17
+ children
18
+ } = _ref;
19
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("tr", {
20
+ className: (0, _helpers__.withStyle)('cart__table-heading')
21
+ }, /*#__PURE__*/_react.default.createElement("th", {
22
+ scope: "row"
23
+ }, /*#__PURE__*/_react.default.createElement("h5", null, heading))), children);
24
+ };
25
+ var _default = exports.default = ProductTableSection;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/esnext.iterator.map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/esnext.iterator.map.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _reactRouterDom = require("react-router-dom");
11
+ var _helpers__ = require("../../__helpers__");
12
+ function _interopRequireDefault(e) {
13
+ return e && e.__esModule ? e : {
14
+ default: e
15
+ };
16
+ }
17
+ const ProductTableSectionTotal = _ref => {
18
+ let {
19
+ isEditable,
20
+ editLink,
21
+ editLabel,
22
+ onEditClick = () => {},
23
+ extraCells = []
24
+ } = _ref;
25
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isEditable && /*#__PURE__*/_react.default.createElement("tr", {
26
+ className: (0, _helpers__.withStyle)('cart__table-subtotal')
27
+ }, /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement("div", {
28
+ className: (0, _helpers__.withStyle)('cart__edit')
29
+ }, /*#__PURE__*/_react.default.createElement(_reactRouterDom.Link, {
30
+ className: "".concat((0, _helpers__.withStyle)('link-primary license-plate__edit')),
31
+ to: editLink,
32
+ onClick: onEditClick
33
+ }, editLabel)))), /*#__PURE__*/_react.default.createElement("tr", {
34
+ className: (0, _helpers__.withStyle)("cart__row--with-border")
35
+ }, extraCells.map((_ref2, index) => {
36
+ let {
37
+ className = '',
38
+ text = ''
39
+ } = _ref2;
40
+ return /*#__PURE__*/_react.default.createElement("td", {
41
+ key: "total-row-".concat(text, "-").concat(index),
42
+ className: (0, _helpers__.withStyle)(className)
43
+ }, text);
44
+ })));
45
+ };
46
+ var _default = exports.default = ProductTableSectionTotal;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/esnext.iterator.map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/esnext.iterator.map.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _logoPrimary = _interopRequireDefault(require("../../../../public/assets/images/logo-primary.svg"));
11
+ var _helpers__ = require("../../__helpers__");
12
+ function _interopRequireDefault(e) {
13
+ return e && e.__esModule ? e : {
14
+ default: e
15
+ };
16
+ }
17
+ const ProductTableStaticRow = _ref => {
18
+ let {
19
+ productImage,
20
+ productTitle,
21
+ productSubtitle,
22
+ extraCells
23
+ } = _ref;
24
+ return /*#__PURE__*/_react.default.createElement("tr", {
25
+ className: (0, _helpers__.withStyle)('cart__table-product')
26
+ }, /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement("div", {
27
+ className: (0, _helpers__.withStyle)('cart__product row align-items-center justify-content-between')
28
+ }, /*#__PURE__*/_react.default.createElement("div", {
29
+ className: (0, _helpers__.withStyle)('col-12')
30
+ }, /*#__PURE__*/_react.default.createElement("img", {
31
+ className: (0, _helpers__.withStyle)('img-fluid rounded-1'),
32
+ src: productImage || _logoPrimary.default,
33
+ alt: "product"
34
+ })), /*#__PURE__*/_react.default.createElement("div", {
35
+ className: (0, _helpers__.withStyle)('col')
36
+ }, /*#__PURE__*/_react.default.createElement("p", null, productTitle, productSubtitle && /*#__PURE__*/_react.default.createElement("span", null, " - ", productSubtitle))))), extraCells.map((_ref2, index) => {
37
+ let {
38
+ className = '',
39
+ text = ''
40
+ } = _ref2;
41
+ return /*#__PURE__*/_react.default.createElement("td", {
42
+ key: "product-table-product-static-".concat(text, "-").concat(index),
43
+ className: (0, _helpers__.withStyle)(className)
44
+ }, text);
45
+ }));
46
+ };
47
+ var _default = exports.default = ProductTableStaticRow;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/esnext.iterator.map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/esnext.iterator.map.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _helpers__ = require("../../__helpers__");
11
+ function _interopRequireDefault(e) {
12
+ return e && e.__esModule ? e : {
13
+ default: e
14
+ };
15
+ }
16
+ const ProductTableTotals = _ref => {
17
+ let {
18
+ rows = []
19
+ } = _ref;
20
+ if (!rows.length) {
21
+ return null;
22
+ }
23
+ return rows.map(function () {
24
+ let cells = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
25
+ let key = arguments.length > 1 ? arguments[1] : undefined;
26
+ return /*#__PURE__*/_react.default.createElement("tr", {
27
+ key: key,
28
+ className: (0, _helpers__.withStyle)('cart__table-total')
29
+ }, cells.map((_ref2, index) => {
30
+ let {
31
+ className = '',
32
+ text = ''
33
+ } = _ref2;
34
+ return /*#__PURE__*/_react.default.createElement("td", {
35
+ key: "product-table-totals-".concat(text, "-").concat(index),
36
+ className: (0, _helpers__.withStyle)(className)
37
+ }, text);
38
+ }));
39
+ });
40
+ };
41
+ var _default = exports.default = ProductTableTotals;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.includes.js");
4
+ require("core-js/modules/es.string.includes.js");
5
+ require("core-js/modules/esnext.iterator.map.js");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.default = void 0;
10
+ require("core-js/modules/es.array.includes.js");
11
+ require("core-js/modules/es.string.includes.js");
12
+ require("core-js/modules/esnext.iterator.map.js");
13
+ var _react = _interopRequireDefault(require("react"));
14
+ var _helpers__ = require("../../__helpers__");
15
+ var _TogglableCard = _interopRequireDefault(require("../Cards/TogglableCard"));
16
+ var _ProductTableEditableRow = _interopRequireDefault(require("./ProductTableEditableRow"));
17
+ var _ProductTableHead = _interopRequireDefault(require("./ProductTableHead"));
18
+ var _ProductTableSection = _interopRequireDefault(require("./ProductTableSection"));
19
+ var _ProductTableSectionTotal = _interopRequireDefault(require("./ProductTableSectionTotal"));
20
+ var _ProductTableStaticRow = _interopRequireDefault(require("./ProductTableStaticRow"));
21
+ var _ProductTableTotal = _interopRequireDefault(require("./ProductTableTotal"));
22
+ var _OrderSessionContext = require("../../__context__/OrderSessionContext");
23
+ function _interopRequireDefault(e) {
24
+ return e && e.__esModule ? e : {
25
+ default: e
26
+ };
27
+ }
28
+ const ProductTable = _ref => {
29
+ let {
30
+ staticProducts = [],
31
+ editableProducts = [],
32
+ canAlterQuantity = true
33
+ } = _ref;
34
+ const {
35
+ selectedBranch,
36
+ allArticleNumbers
37
+ } = (0, _OrderSessionContext.useOrderSession)();
38
+ return /*#__PURE__*/_react.default.createElement("div", {
39
+ className: (0, _helpers__.withStyle)("content col-lg")
40
+ }, /*#__PURE__*/_react.default.createElement(_TogglableCard.default, {
41
+ title: 'Overzicht',
42
+ untoggleButton: selectedBranch ? 'Verberg inkoopprijzen' : undefined,
43
+ toggleButton: selectedBranch ? 'Toon inkoopprijzen' : undefined,
44
+ onToggle: toggled => console.info('Toggled ' + toggled)
45
+ }, /*#__PURE__*/_react.default.createElement("table", {
46
+ className: (0, _helpers__.withStyle)('cart__table table table-borderless align-middle')
47
+ }, /*#__PURE__*/_react.default.createElement(_ProductTableHead.default, {
48
+ columns: [{}, {}, {}, {}, {
49
+ text: 'Verkoop Prjs',
50
+ className: 'fw-bold text-end'
51
+ }]
52
+ }), /*#__PURE__*/_react.default.createElement("tbody", null, /*#__PURE__*/_react.default.createElement(_ProductTableSection.default, {
53
+ heading: 'Trekhaakmontage'
54
+ }, staticProducts.map(_ref2 => {
55
+ let {
56
+ title,
57
+ id,
58
+ image,
59
+ price
60
+ } = _ref2;
61
+ return /*#__PURE__*/_react.default.createElement(_ProductTableStaticRow.default, {
62
+ key: id,
63
+ productTitle: title,
64
+ productImage: image,
65
+ extraCells: [{}, {}, {}, {
66
+ text: (0, _helpers__.formatPrice)(price),
67
+ className: 'cart__table-purchase-price text-end'
68
+ }]
69
+ });
70
+ }), /*#__PURE__*/_react.default.createElement(_ProductTableSectionTotal.default, {
71
+ isEditable: true,
72
+ editLabel: 'Wijzig je trekhaakpakket',
73
+ editLink: '/configurator/trekhaakpakket',
74
+ extraCells: [{}, {}, {}, {
75
+ text: 'Subtotaal (incl. BTW)',
76
+ className: 'fw-bold text-end pb-2'
77
+ }, {
78
+ text: (0, _helpers__.formatPrice)(100),
79
+ className: 'fw-bold text-end pb-2'
80
+ }]
81
+ })), /*#__PURE__*/_react.default.createElement(_ProductTableSection.default, {
82
+ heading: 'Toebehoren'
83
+ }, editableProducts.map(_ref3 => {
84
+ let {
85
+ title,
86
+ image,
87
+ price,
88
+ amount,
89
+ articleNumber
90
+ } = _ref3;
91
+ let canProductBeAltered = canAlterQuantity;
92
+ if (!canAlterQuantity && !(allArticleNumbers !== null && allArticleNumbers !== void 0 && allArticleNumbers.includes(articleNumber))) {
93
+ canProductBeAltered = true;
94
+ }
95
+ return /*#__PURE__*/_react.default.createElement(_ProductTableEditableRow.default, {
96
+ canAlterQuantity: canProductBeAltered,
97
+ productTitle: title,
98
+ productImage: image,
99
+ extraCells: [{}, {}, {}, {
100
+ text: (0, _helpers__.formatPrice)(price),
101
+ className: 'cart__table-purchase-price text-end'
102
+ }],
103
+ productAmount: amount,
104
+ onEdit: () => console.info('Edit'),
105
+ onRemove: () => console.info('Remove'),
106
+ isDisabled: false
107
+ });
108
+ }), /*#__PURE__*/_react.default.createElement(_ProductTableSectionTotal.default, {
109
+ isEditable: false,
110
+ extraCells: [{}, {}, {}, {
111
+ text: 'Subtotaal (incl. BTW)',
112
+ className: 'fw-bold text-end pb-2'
113
+ }, {
114
+ text: (0, _helpers__.formatPrice)(100),
115
+ className: 'fw-bold text-end pb-2'
116
+ }]
117
+ })), /*#__PURE__*/_react.default.createElement(_ProductTableTotal.default, {
118
+ rows: [[{}, {}, {}, {
119
+ text: 'Producten (excl. btw)',
120
+ className: 'fw-bold text-end pt-2'
121
+ }, {
122
+ text: (0, _helpers__.formatPrice)(100),
123
+ className: 'fw-bold text-end pt-2'
124
+ }]]
125
+ })))));
126
+ };
127
+ var _default = exports.default = ProductTable;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.number.to-fixed.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/es.number.to-fixed.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _helpers__ = require("../__helpers__");
11
+ var _LinkButton = _interopRequireDefault(require("./Buttons/LinkButton"));
12
+ var _NumericInput = _interopRequireDefault(require("./Form/NumericInput"));
13
+ function _interopRequireDefault(e) {
14
+ return e && e.__esModule ? e : {
15
+ default: e
16
+ };
17
+ }
18
+ const SingleOrderCardImage = _ref => {
19
+ let {
20
+ productImage
21
+ } = _ref;
22
+ return /*#__PURE__*/_react.default.createElement("div", {
23
+ className: (0, _helpers__.withStyle)('col-md-2')
24
+ }, /*#__PURE__*/_react.default.createElement("img", {
25
+ src: productImage,
26
+ className: (0, _helpers__.withStyle)('card__image img-fluid object-fit-contain rounded-0 w-75'),
27
+ style: {
28
+ objectFit: 'contain',
29
+ maxHeight: '150px',
30
+ width: 'auto'
31
+ },
32
+ alt: ""
33
+ }));
34
+ };
35
+ const SingleOrderCartCard = _ref2 => {
36
+ let {
37
+ productId,
38
+ productImage,
39
+ productTitle,
40
+ productPrice,
41
+ productPriceInclVat,
42
+ productPriceExclVat,
43
+ quantity = 0,
44
+ handleQuantityChange,
45
+ removeFromCart
46
+ } = _ref2;
47
+ return /*#__PURE__*/_react.default.createElement("div", {
48
+ key: "".concat(productId, "-").concat(Date.now()),
49
+ className: (0, _helpers__.withStyle)('w-100 mb-3')
50
+ }, /*#__PURE__*/_react.default.createElement("div", {
51
+ className: (0, _helpers__.withStyle)('row g-0 w-100')
52
+ }, /*#__PURE__*/_react.default.createElement(SingleOrderCardImage, {
53
+ productImage: productImage
54
+ }), /*#__PURE__*/_react.default.createElement("div", {
55
+ className: (0, _helpers__.withStyle)('col-md-10')
56
+ }, /*#__PURE__*/_react.default.createElement("div", {
57
+ className: (0, _helpers__.withStyle)('card-body w-100 h-100 d-flex flex-column pe-0 pl-4')
58
+ }, /*#__PURE__*/_react.default.createElement("div", {
59
+ className: (0, _helpers__.withStyle)('d-flex justify-content-between w-100')
60
+ }, /*#__PURE__*/_react.default.createElement("p", {
61
+ className: (0, _helpers__.withStyle)('mb-0')
62
+ }, productTitle), /*#__PURE__*/_react.default.createElement("p", {
63
+ className: (0, _helpers__.withStyle)('ms-2 fw-bold')
64
+ }, "\u20AC", Number(productPrice).toFixed(2))), /*#__PURE__*/_react.default.createElement("div", {
65
+ className: (0, _helpers__.withStyle)('d-flex mt-1 justify-content-between align-items-center')
66
+ }, /*#__PURE__*/_react.default.createElement(_NumericInput.default, {
67
+ className: (0, _helpers__.withStyle)('me-2 rounded'),
68
+ width: "100px",
69
+ height: "40px",
70
+ defaultValue: quantity,
71
+ onChange: value => handleQuantityChange(productId, value, productPriceExclVat, productPriceInclVat),
72
+ buttonTransformY: 40
73
+ }), /*#__PURE__*/_react.default.createElement(_LinkButton.default, {
74
+ label: "Verwijder",
75
+ onClick: () => removeFromCart(productId)
76
+ }))))));
77
+ };
78
+ var _default = exports.default = SingleOrderCartCard;