kitchen-simulator 5.0.0-test.7 → 5.0.0-test.8

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 (171) hide show
  1. package/package.json +13 -3
  2. package/src/components/_export.js +11 -0
  3. package/src/components/catalog-view/catalog-breadcrumb.jsx +0 -53
  4. package/src/components/catalog-view/catalog-item.jsx +0 -229
  5. package/src/components/catalog-view/catalog-list.jsx +0 -173
  6. package/src/components/catalog-view/catalog-page-item.jsx +0 -110
  7. package/src/components/catalog-view/catalog-turn-back-page-item.jsx +0 -80
  8. package/src/components/configurator/custom-configurator.jsx +0 -77
  9. package/src/components/configurator/project-configurator.jsx +0 -120
  10. package/src/components/export.js +0 -36
  11. package/src/components/firstsetting/button/styles.js +0 -223
  12. package/src/components/firstsetting/export.js +0 -9
  13. package/src/components/firstsetting/firstsetting-content-button.jsx +0 -198
  14. package/src/components/firstsetting/firstsetting-toggle-button.jsx +0 -101
  15. package/src/components/firstsetting/firstsetting.jsx +0 -814
  16. package/src/components/footerbar/button/ControlButton.jsx +0 -43
  17. package/src/components/footerbar/button/DirectionButton.jsx +0 -54
  18. package/src/components/footerbar/button/DirectionPanSpinButton.jsx +0 -36
  19. package/src/components/footerbar/button/ToggleButton.jsx +0 -58
  20. package/src/components/footerbar/button/ToggleConvertButton.jsx +0 -48
  21. package/src/components/footerbar/button/ToggleMeasureButton.jsx +0 -33
  22. package/src/components/footerbar/button/styles.js +0 -217
  23. package/src/components/footerbar/export.js +0 -9
  24. package/src/components/footerbar/footer-content-button.jsx +0 -198
  25. package/src/components/footerbar/footer-toggle-button.jsx +0 -101
  26. package/src/components/footerbar/footerbar.jsx +0 -1103
  27. package/src/components/footerbar/styles.js +0 -263
  28. package/src/components/header/button/MenuButton.jsx +0 -46
  29. package/src/components/header/button/SaveButton.jsx +0 -54
  30. package/src/components/header/button/styles.js +0 -181
  31. package/src/components/header/export.js +0 -5
  32. package/src/components/header/header.jsx +0 -631
  33. package/src/components/header/header.style.css +0 -47
  34. package/src/components/header/styles.js +0 -320
  35. package/src/components/login/Login.js +0 -77
  36. package/src/components/login/LoginForm/index.js +0 -108
  37. package/src/components/login/Register.js +0 -83
  38. package/src/components/login/RegisterForm/index.js +0 -171
  39. package/src/components/login/jwtService.js +0 -201
  40. package/src/components/login/style.css +0 -158
  41. package/src/components/login/style.scss +0 -260
  42. package/src/components/myprojects/export.js +0 -5
  43. package/src/components/myprojects/index.jsx +0 -445
  44. package/src/components/myprojects/styles.js +0 -241
  45. package/src/components/sidebar/custom-accordion.jsx +0 -48
  46. package/src/components/sidebar/export.js +0 -15
  47. package/src/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.jsx +0 -73
  48. package/src/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.jsx +0 -101
  49. package/src/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.jsx +0 -149
  50. package/src/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.jsx +0 -316
  51. package/src/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.jsx +0 -108
  52. package/src/components/sidebar/panel-element-editor/element-editor.jsx +0 -1070
  53. package/src/components/sidebar/panel-element-editor/multi-elements-editor.jsx +0 -0
  54. package/src/components/sidebar/panel-element-editor/panel-element-editor.jsx +0 -104
  55. package/src/components/sidebar/panel-element-editor/panel-multi-elements-editor.jsx +0 -155
  56. package/src/components/sidebar/panel-group-editor.jsx +0 -272
  57. package/src/components/sidebar/panel-groups.jsx +0 -310
  58. package/src/components/sidebar/panel-guides.jsx +0 -192
  59. package/src/components/sidebar/panel-layer-elements.jsx +0 -298
  60. package/src/components/sidebar/panel-layers.jsx +0 -381
  61. package/src/components/sidebar/panel.jsx +0 -71
  62. package/src/components/sidebar/sidebar.jsx +0 -106
  63. package/src/components/sidebar/toolbar-panel.jsx +0 -139
  64. package/src/components/sign/export.js +0 -7
  65. package/src/components/sign/main/index.jsx +0 -523
  66. package/src/components/sign/main/styles.js +0 -163
  67. package/src/components/toolbar/button/ControlButton.jsx +0 -41
  68. package/src/components/toolbar/button/DirectionButton.jsx +0 -34
  69. package/src/components/toolbar/button/RightButton.jsx +0 -103
  70. package/src/components/toolbar/button/ToggleButton.jsx +0 -41
  71. package/src/components/toolbar/button/index.jsx +0 -55
  72. package/src/components/toolbar/button/styles.js +0 -127
  73. package/src/components/toolbar/components/DoorStyleMenu.jsx +0 -103
  74. package/src/components/toolbar/components/Pricing.jsx +0 -126
  75. package/src/components/toolbar/components/ReviewForQuote.jsx +0 -635
  76. package/src/components/toolbar/export.js +0 -21
  77. package/src/components/toolbar/main/Alert.js +0 -122
  78. package/src/components/toolbar/main/TakePictureModal.jsx +0 -104
  79. package/src/components/toolbar/main/confirm-popup.jsx +0 -99
  80. package/src/components/toolbar/main/index.jsx +0 -5627
  81. package/src/components/toolbar/main/lShaped.json +0 -311
  82. package/src/components/toolbar/main/longNarrow.json +0 -238
  83. package/src/components/toolbar/main/myComponents.js +0 -123
  84. package/src/components/toolbar/main/oRectangle.json +0 -220
  85. package/src/components/toolbar/main/rectangle.json +0 -238
  86. package/src/components/toolbar/main/style.css +0 -107
  87. package/src/components/toolbar/main/styles.js +0 -696
  88. package/src/components/toolbar/plugin-item.jsx +0 -123
  89. package/src/components/toolbar/popup/appliance/appliance-category/index.jsx +0 -73
  90. package/src/components/toolbar/popup/appliance/choose-appliance/index.jsx +0 -102
  91. package/src/components/toolbar/popup/appliance/index.jsx +0 -83
  92. package/src/components/toolbar/popup/autosaveprompt/index.jsx +0 -150
  93. package/src/components/toolbar/popup/autosaveprompt/styles.css +0 -64
  94. package/src/components/toolbar/popup/autosaveprompt/styles.js +0 -40
  95. package/src/components/toolbar/popup/cabinet/cabinet-category/index.jsx +0 -73
  96. package/src/components/toolbar/popup/cabinet/choose-product/index.jsx +0 -119
  97. package/src/components/toolbar/popup/cabinet/index.jsx +0 -85
  98. package/src/components/toolbar/popup/doorStyle/choose-style/index.jsx +0 -63
  99. package/src/components/toolbar/popup/doorStyle/index.jsx +0 -71
  100. package/src/components/toolbar/popup/doorStyle/style-category/index.jsx +0 -139
  101. package/src/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +0 -2
  102. package/src/components/toolbar/popup/downloadsummary/downloadSummaryTemp.jsx +0 -157
  103. package/src/components/toolbar/popup/downloadsummary/index.jsx +0 -643
  104. package/src/components/toolbar/popup/downloadsummary/show2D/show2DView.jsx +0 -51
  105. package/src/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.jsx +0 -175
  106. package/src/components/toolbar/popup/downloadsummary/show3D/show3DView.jsx +0 -283
  107. package/src/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.jsx +0 -2257
  108. package/src/components/toolbar/popup/downloadsummary/showCabinetInfo.js +0 -93
  109. package/src/components/toolbar/popup/downloadsummary/showElevation/showElevationView.jsx +0 -132
  110. package/src/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.jsx +0 -2198
  111. package/src/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.jsx +0 -152
  112. package/src/components/toolbar/popup/downloadsummary/showWarranty.jsx +0 -149
  113. package/src/components/toolbar/popup/downloadsummary/styles.css +0 -177
  114. package/src/components/toolbar/popup/downloadsummary/styles.js +0 -453
  115. package/src/components/toolbar/popup/finishingtouch/category/index.jsx +0 -34
  116. package/src/components/toolbar/popup/finishingtouch/index.jsx +0 -58
  117. package/src/components/toolbar/popup/finishingtouch/material-edit.jsx +0 -112
  118. package/src/components/toolbar/popup/finishingtouch/product/index.jsx +0 -116
  119. package/src/components/toolbar/popup/floorplan/choose-floor/confirm-popup.jsx +0 -101
  120. package/src/components/toolbar/popup/floorplan/choose-floor/index.jsx +0 -254
  121. package/src/components/toolbar/popup/floorplan/choose-floor/lShaped.json +0 -311
  122. package/src/components/toolbar/popup/floorplan/choose-floor/longNarrow.json +0 -238
  123. package/src/components/toolbar/popup/floorplan/choose-floor/oRectangle.json +0 -220
  124. package/src/components/toolbar/popup/floorplan/choose-floor/rectangle.json +0 -238
  125. package/src/components/toolbar/popup/floorplan/choose-floor/styles.js +0 -86
  126. package/src/components/toolbar/popup/floorplan/floor-category/index.jsx +0 -109
  127. package/src/components/toolbar/popup/floorplan/index.jsx +0 -60
  128. package/src/components/toolbar/popup/index.jsx +0 -241
  129. package/src/components/toolbar/popup/newproject/index.jsx +0 -59
  130. package/src/components/toolbar/popup/newproject/styles.css +0 -64
  131. package/src/components/toolbar/popup/newproject/styles.js +0 -41
  132. package/src/components/toolbar/popup/product/appliance.jsx +0 -54
  133. package/src/components/toolbar/popup/product/cabinetproduct.jsx +0 -15
  134. package/src/components/toolbar/popup/product/doorstyle.jsx +0 -58
  135. package/src/components/toolbar/popup/product/doorstyleproduct.jsx +0 -47
  136. package/src/components/toolbar/popup/product/floor.jsx +0 -36
  137. package/src/components/toolbar/popup/product/floorproduct.jsx +0 -42
  138. package/src/components/toolbar/popup/product/index.jsx +0 -36
  139. package/src/components/toolbar/popup/product/primary.jsx +0 -77
  140. package/src/components/toolbar/popup/product/productline.jsx +0 -93
  141. package/src/components/toolbar/popup/product/reviewItem.jsx +0 -427
  142. package/src/components/toolbar/popup/product/reviewMolding.jsx +0 -310
  143. package/src/components/toolbar/popup/product/style.css +0 -54
  144. package/src/components/toolbar/popup/product/styles.js +0 -260
  145. package/src/components/toolbar/popup/savedesign/FullPictureForm.jsx +0 -146
  146. package/src/components/toolbar/popup/savedesign/index.jsx +0 -495
  147. package/src/components/toolbar/popup/savedesign/savedesign.style.css +0 -16
  148. package/src/components/toolbar/popup/savedesign/styles.js +0 -151
  149. package/src/components/toolbar/popup/setDoorStyleOption/index.jsx +0 -87
  150. package/src/components/toolbar/popup/styles.js +0 -909
  151. package/src/components/toolbar/popup/submitforquote/AddToCartOptions.jsx +0 -192
  152. package/src/components/toolbar/popup/submitforquote/CustomerRequestsForm.jsx +0 -96
  153. package/src/components/toolbar/popup/submitforquote/SkipDesignerReview.jsx +0 -54
  154. package/src/components/toolbar/popup/submitforquote/StepDots.jsx +0 -25
  155. package/src/components/toolbar/popup/submitforquote/cart-choice.jsx +0 -116
  156. package/src/components/toolbar/popup/submitforquote/doorstyle-menus.js +0 -38
  157. package/src/components/toolbar/popup/submitforquote/index.jsx +0 -698
  158. package/src/components/toolbar/popup/submitforquote/styles.css +0 -105
  159. package/src/components/toolbar/popup/submitforquote/styles.js +0 -294
  160. package/src/components/toolbar/popup/submitprompt/index.jsx +0 -89
  161. package/src/components/toolbar/popup/submitprompt/styles.css +0 -64
  162. package/src/components/toolbar/popup/submitprompt/styles.js +0 -42
  163. package/src/components/toolbar/toolbar-button.jsx +0 -90
  164. package/src/components/toolbar/toolbar-load-button.jsx +0 -36
  165. package/src/components/toolbar/toolbar-save-button.jsx +0 -32
  166. package/src/components/wizardstep/button/styles.js +0 -677
  167. package/src/components/wizardstep/export.js +0 -5
  168. package/src/components/wizardstep/index.jsx +0 -1372
  169. package/src/components/wizardstep/styles.js +0 -688
  170. package/src/components/wizardstep/wizardstep-content-button.jsx +0 -198
  171. package/src/components/wizardstep/wizardstep-toggle-button.jsx +0 -101
@@ -1,635 +0,0 @@
1
- import React, { useCallback, useEffect, useState } from 'react';
2
- import * as S from '../../../../src/components/toolbar/main/styles';
3
- import {
4
- DECIMAL_PLACES_2,
5
- LOCAL_STORAGE_TOKEN_VALUE,
6
- STATUS_POSITIVE_COLOR,
7
- SUBMIT_ADD_CART,
8
- SUBMIT_REQUEST_ASSIST,
9
- TEXT_COLOR_NEUTRAL_2,
10
- TOE_KICK_MOLDING
11
- } from '../../../../src/constants';
12
- import {
13
- getToeKickMoldingThumbnail,
14
- makeSKUForMagento
15
- } from '../../../../src/components/viewer2d/utils';
16
- import ReviewItem from '../../../../src/components/toolbar/popup/product/reviewItem';
17
- import ReviewMolding from '../../../../src/components/toolbar/popup/product/reviewMolding';
18
- import { formatNumber } from '../../../../src/utils/math';
19
- import {
20
- refineMoldingForSummaryPdf,
21
- refineProductForSummaryPdf
22
- } from '../../../utils/helper';
23
- import { useGetPricesBySku } from '../../../../src/hooks/useGetPricesBySku';
24
- import Skeleton from '@material-ui/lab/Skeleton';
25
- import ls from 'localstorage-slim';
26
- import InfoIcon from '@material-ui/icons/Info';
27
- import Tooltip from '@material-ui/core/Tooltip';
28
- import { useValidateToken } from '../../../../src/hooks/useValidateToken';
29
-
30
- export const ReviewForQuote = ({
31
- accessToken,
32
- currentTexture,
33
- userInfo,
34
- doorStyles,
35
- catalog,
36
- categoryData,
37
- handleSubmitPrompt,
38
- handleSubmitForQuote,
39
- setDownloadPopupVisible,
40
- moldingData,
41
- items,
42
- measurementUnit,
43
- isTokenPresent
44
- }) => {
45
- const getSkus = useCallback(
46
- data => {
47
- if (data && typeof data.entrySeq === 'function') {
48
- return data
49
- .entrySeq()
50
- .map(([itemID, item]) =>
51
- makeSKUForMagento(item, catalog, categoryData)
52
- )
53
- .filter(sku => sku && !sku.startsWith('#'))
54
- .filter(Boolean)
55
- .toJS();
56
- }
57
- if (Array.isArray(data)) {
58
- return data
59
- .map(item => makeSKUForMagento(item, catalog, categoryData))
60
- .filter(sku => sku && !sku.startsWith('#'))
61
- .filter(Boolean);
62
- }
63
- return [];
64
- },
65
- [catalog]
66
- );
67
-
68
- const { data } = useValidateToken(accessToken);
69
-
70
- const {
71
- data: { prices = [] },
72
- isFetching
73
- } = useGetPricesBySku(
74
- data?.source === 'none' ? [] : [...getSkus(items), ...getSkus(moldingData)]
75
- );
76
-
77
- const products = React.useMemo(() => {
78
- const _products = {};
79
-
80
- if (!prices || isFetching || data?.source === 'none') return _products;
81
-
82
- prices.forEach(data => {
83
- _products[data.sku] = {
84
- description: data.description,
85
- discounted_price: data.discounted_price,
86
- name: data.name,
87
- qty: parseInt(data.qty),
88
- regular_price: data.regular_price,
89
- tier: data.tier
90
- };
91
- });
92
-
93
- return _products;
94
- }, [prices, isFetching, data]);
95
-
96
- const downloadToFile = useCallback(
97
- event => {
98
- event.preventDefault();
99
- event.stopPropagation();
100
-
101
- setDownloadPopupVisible(true);
102
-
103
- const productsInReview = [];
104
-
105
- const tmpProduct = [];
106
- Object.keys(usedObjects).forEach(internalSKU => {
107
- const item = items.find(
108
- item => makeSKUForMagento(item, catalog, categoryData) === internalSKU
109
- );
110
- const molding = moldingData.find(
111
- molding =>
112
- makeSKUForMagento(molding, catalog, categoryData) === internalSKU
113
- );
114
-
115
- if (item) {
116
- const prodCount = usedObjects[internalSKU]?.count ?? 1;
117
- tmpProduct.push(
118
- <ReviewItem
119
- key={item.id}
120
- downLoad={true}
121
- catalog={catalog}
122
- categoryData={categoryData}
123
- internalSKU={internalSKU}
124
- product={products[internalSKU]}
125
- suffix={currentTexture?.install}
126
- item={item}
127
- measurementUnit={measurementUnit}
128
- count={prodCount}
129
- loading={isFetching || data?.source === 'none'}
130
- />
131
- );
132
- refineProductForSummaryPdf(
133
- productsInReview,
134
- catalog,
135
- categoryData,
136
- internalSKU,
137
- currentTexture?.install,
138
- item,
139
- products[internalSKU],
140
- measurementUnit,
141
- prodCount
142
- );
143
- } else if (molding) {
144
- tmpProduct.push(
145
- <ReviewMolding
146
- key={molding.id}
147
- downLoad={true}
148
- molding={molding}
149
- internalSKU={internalSKU}
150
- product={products[internalSKU]}
151
- loading={isFetching || data?.source === 'none'}
152
- />
153
- );
154
- refineMoldingForSummaryPdf(
155
- productsInReview,
156
- molding,
157
- products[internalSKU],
158
- internalSKU
159
- );
160
- }
161
- });
162
-
163
- window.productData = tmpProduct;
164
- window.totalPrice = formatNumber(allDiscountedPrices, DECIMAL_PLACES_2);
165
- window.productsInReview = productsInReview;
166
- },
167
- [
168
- currentTexture,
169
- moldingData,
170
- products,
171
- catalog,
172
- categoryData,
173
- measurementUnit,
174
- isFetching,
175
- data
176
- ]
177
- );
178
-
179
- const {
180
- allCount,
181
- usedObjects,
182
- allDiscountedPrices,
183
- allRegularPrices,
184
- allPrices
185
- } = React.useMemo(() => {
186
- let allCount = 0,
187
- usedObjects = {},
188
- allDiscountedPrices = 0,
189
- allRegularPrices = 0,
190
- allPrices = 0;
191
-
192
- function processData(data, getSKU, getCount) {
193
- data.forEach(element => {
194
- const sku = getSKU(element);
195
- if (!sku || sku.startsWith('#')) return;
196
- const count = getCount(element);
197
- const currentProduct = products[sku];
198
-
199
- if (!usedObjects[sku]) {
200
- usedObjects[sku] = {
201
- count,
202
- regularPrice: currentProduct
203
- ? currentProduct.regular_price * count
204
- : 0,
205
- disCountPrice: currentProduct
206
- ? currentProduct.discounted_price * count
207
- : 0
208
- };
209
- } else {
210
- usedObjects[sku].count += count;
211
- if (currentProduct) {
212
- usedObjects[sku].regularPrice +=
213
- currentProduct.regular_price * count;
214
- usedObjects[sku].disCountPrice +=
215
- currentProduct.discounted_price * count;
216
- }
217
- }
218
- if (currentProduct) {
219
- allRegularPrices += currentProduct.regular_price * count;
220
- allDiscountedPrices += currentProduct.discounted_price * count;
221
- allPrices +=
222
- (currentProduct.discounted_price || currentProduct.regular_price) *
223
- count;
224
- }
225
- allCount += count;
226
- if (currentTexture) {
227
- usedObjects[sku].installation_type = currentTexture.install;
228
- }
229
- });
230
- }
231
-
232
- // Process cabinet items
233
- processData(
234
- items.filter(e => e.itemID !== undefined),
235
- element => makeSKUForMagento(element, catalog, categoryData),
236
- () => 1
237
- );
238
-
239
- // Process molding data
240
- processData(
241
- moldingData,
242
- molding => makeSKUForMagento(molding, catalog, categoryData),
243
- molding => molding.count
244
- );
245
-
246
- return {
247
- allCount,
248
- usedObjects,
249
- allDiscountedPrices: parseFloat(allDiscountedPrices.toFixed(2)),
250
- allRegularPrices: parseFloat(allRegularPrices.toFixed(2)),
251
- allPrices: parseFloat(allPrices.toFixed(2))
252
- };
253
- }, [prices, catalog, moldingData, products]);
254
-
255
- useEffect(() => {
256
- if (!isFetching && data?.source !== 'none') {
257
- sessionStorage.setItem('usedObjects', JSON.stringify(usedObjects));
258
- }
259
- }, [usedObjects, isFetching, data]);
260
-
261
- const discountType = () => {
262
- switch (ls.get('DISCOUNT_TYPE')?.toUpperCase()) {
263
- case 'CUSTOM':
264
- return 'Account';
265
- case 'GENERAL':
266
- return 'Active Sale';
267
- default:
268
- return 'Tier';
269
- }
270
- };
271
-
272
- return (
273
- <div style={{ display: 'flex', flexDirection: 'column' }}>
274
- <div
275
- style={{
276
- display: 'flex',
277
- flexDirection: 'row',
278
- justifyContent: 'space-between',
279
- alignItems: 'center'
280
- }}
281
- >
282
- <S.SubCategoryTitle style={{ margin: '0 0 10px 15px' }}>
283
- Review & Quote
284
- </S.SubCategoryTitle>
285
- <div
286
- style={{
287
- display: 'flex',
288
- gap: '1rem',
289
- alignItems: 'center'
290
- }}
291
- >
292
- <div
293
- style={{
294
- background: '#FAFAFF',
295
- padding: '5px 10px',
296
- borderRadius: 5,
297
- display: 'flex',
298
- justifyContent: 'center',
299
- alignItems: 'center',
300
- height: 'fit-content'
301
- }}
302
- >
303
- <img
304
- src={
305
- doorStyles &&
306
- currentTexture &&
307
- doorStyles.filter(
308
- item =>
309
- item.name.toLowerCase() ===
310
- currentTexture.install?.toLowerCase()
311
- )[0]?.thumbnail
312
- }
313
- style={{ height: 24 }}
314
- />
315
- <S.ReviewQuoteItemLabel
316
- style={{
317
- fontWeight: 'bold'
318
- }}
319
- >
320
- {currentTexture && currentTexture.install}
321
- </S.ReviewQuoteItemLabel>
322
- </div>
323
- <div
324
- style={{
325
- background: '#FAFAFF',
326
- padding: '5px 10px',
327
- borderRadius: 5,
328
- display: 'flex',
329
- justifyContent: 'center',
330
- alignItems: 'center',
331
- height: 'fit-content'
332
- }}
333
- >
334
- <img
335
- src={
336
- doorStyles &&
337
- currentTexture &&
338
- doorStyles
339
- .filter(item => item.name === currentTexture.install)[0]
340
- ?.items.filter(
341
- i => i.name === currentTexture.door_style_name
342
- )[0]?.thumbnail
343
- }
344
- style={{ height: 24 }}
345
- />
346
- <S.ReviewQuoteItemLabel
347
- style={{
348
- fontWeight: 'bold'
349
- }}
350
- >
351
- {currentTexture && currentTexture.name}
352
- </S.ReviewQuoteItemLabel>
353
- </div>
354
- </div>
355
- </div>
356
- <S.ReviewQuoteTable>
357
- <S.ReviewQuoteThead style={{ backgroundColor: '#FAFAFF' }}>
358
- <S.ReviewQuoteTh
359
- style={{
360
- width: 310,
361
- textAlign: 'left',
362
- marginLeft: 15,
363
- color: '#565F77'
364
- }}
365
- >
366
- Product
367
- </S.ReviewQuoteTh>
368
- <S.ReviewQuoteTh style={{ width: 80, color: '#565F77' }}>
369
- Door
370
- </S.ReviewQuoteTh>
371
- <S.ReviewQuoteTh style={{ width: 50, color: '#565F77' }}>
372
- Qty
373
- </S.ReviewQuoteTh>
374
- <S.ReviewQuoteTh style={{ width: 100, color: '#565F77' }}>
375
- Retail Price
376
- </S.ReviewQuoteTh>
377
- <S.ReviewQuoteTh style={{ width: 100, color: '#565F77' }}>
378
- Discounted Price
379
- </S.ReviewQuoteTh>
380
- <S.ReviewQuoteTh
381
- style={{
382
- width: 80,
383
- marginRight: 15,
384
- color: '#565F77'
385
- }}
386
- >
387
- Subtotal
388
- </S.ReviewQuoteTh>
389
- </S.ReviewQuoteThead>
390
- <div
391
- style={{
392
- overflowY: 'scroll',
393
- maxHeight: 'calc(100vh - 420px)',
394
- minHeight: 100
395
- }}
396
- >
397
- {Object.keys(usedObjects).map(internalSKU => {
398
- const item = items.find(
399
- item =>
400
- makeSKUForMagento(item, catalog, categoryData) === internalSKU
401
- );
402
-
403
- const molding = moldingData.find(
404
- molding =>
405
- makeSKUForMagento(molding, catalog, categoryData) ===
406
- internalSKU
407
- );
408
-
409
- if (item) {
410
- return (
411
- <ReviewItem
412
- key={internalSKU}
413
- downLoad={false}
414
- catalog={catalog}
415
- categoryData={categoryData}
416
- internalSKU={internalSKU}
417
- suffix={currentTexture?.install}
418
- item={item}
419
- measurementUnit={measurementUnit}
420
- count={
421
- usedObjects[internalSKU] !== undefined
422
- ? usedObjects[internalSKU].count
423
- : 1
424
- }
425
- product={products[internalSKU]}
426
- loading={isFetching || data?.source === 'none'}
427
- />
428
- );
429
- }
430
- if (molding) {
431
- return (
432
- <ReviewMolding
433
- key={internalSKU}
434
- downLoad={false}
435
- molding={molding}
436
- internalSKU={internalSKU}
437
- product={products[internalSKU]}
438
- loading={isFetching || data?.source === 'none'}
439
- />
440
- );
441
- }
442
-
443
- return <></>;
444
- })}
445
- </div>
446
- <S.ReviewQuoteThead
447
- style={{ backgroundColor: '#FAFAFF', marginBottom: 15 }}
448
- >
449
- <S.ReviewQuoteTh2
450
- style={{
451
- width: 310,
452
- textAlign: 'left',
453
- marginLeft: 15
454
- }}
455
- >
456
- Grand Total
457
- {ls.get('DISCOUNT_TYPE') &&
458
- ls.get('DISCOUNT_TYPE') !== 'retail' && (
459
- <span
460
- style={{
461
- marginLeft: '0.5rem',
462
- fontSize: '12px'
463
- }}
464
- >
465
- *Discounts based on your {discountType()}
466
- </span>
467
- )}
468
- </S.ReviewQuoteTh2>
469
- <S.ReviewQuoteTh2 style={{ width: 80 }} />
470
- <S.ReviewQuoteTh2 style={{ width: 50 }}>
471
- {isFetching || data?.source === 'none' ? (
472
- <Skeleton variant="text" width={30} height={18} />
473
- ) : (
474
- allCount
475
- )}
476
- </S.ReviewQuoteTh2>
477
- <S.ReviewQuoteTh2 style={{ width: 100 }}>
478
- {isFetching || data?.source === 'none' ? (
479
- <Skeleton variant="text" width={50} height={18} />
480
- ) : (
481
- `$${formatNumber(allRegularPrices, DECIMAL_PLACES_2)}`
482
- )}
483
- </S.ReviewQuoteTh2>
484
- <S.ReviewQuoteTh2
485
- style={{
486
- width: 100,
487
- color:
488
- allDiscountedPrices !== allRegularPrices
489
- ? STATUS_POSITIVE_COLOR
490
- : TEXT_COLOR_NEUTRAL_2
491
- }}
492
- >
493
- {isFetching || data?.source === 'none' ? (
494
- <Skeleton variant="text" width={50} height={18} />
495
- ) : allDiscountedPrices !== allRegularPrices ? (
496
- `$${formatNumber(allDiscountedPrices, DECIMAL_PLACES_2)}`
497
- ) : (
498
- `-`
499
- )}
500
- </S.ReviewQuoteTh2>
501
- <S.ReviewQuoteTh2
502
- style={{
503
- width: 80,
504
- marginRight: 15,
505
- color: '#4C12A1'
506
- }}
507
- >
508
- {isFetching || data?.source === 'none' ? (
509
- <Skeleton variant="text" width={50} height={18} />
510
- ) : (
511
- `$${formatNumber(allDiscountedPrices, DECIMAL_PLACES_2)}`
512
- )}
513
- </S.ReviewQuoteTh2>
514
- </S.ReviewQuoteThead>
515
- </S.ReviewQuoteTable>
516
-
517
- <div
518
- style={{
519
- display: 'flex',
520
- marginTop: 15,
521
- justifyContent: 'flex-start'
522
- }}
523
- >
524
- <Tooltip
525
- title={
526
- !isTokenPresent ? (
527
- <span
528
- style={{
529
- fontSize: 14
530
- }}
531
- >
532
- You need to <b>save the project</b> before requesting Designer
533
- Assistance.
534
- </span>
535
- ) : (
536
- ''
537
- )
538
- }
539
- >
540
- <S.Button
541
- style={{ fontSize: 16 }}
542
- onClick={() => {
543
- if (userInfo.pid === undefined)
544
- handleSubmitPrompt(SUBMIT_REQUEST_ASSIST);
545
- else handleSubmitForQuote(true, SUBMIT_REQUEST_ASSIST);
546
- }}
547
- >
548
- <img
549
- style={{ marginRight: 10 }}
550
- src="\assets\img\svg\headerbar\assist.svg"
551
- />
552
- Designer Assistance
553
- {!isTokenPresent && (
554
- <div
555
- style={{
556
- width: '5px',
557
- height: '5px',
558
- position: 'relative'
559
- }}
560
- >
561
- <InfoIcon
562
- style={{
563
- position: 'absolute',
564
- width: '15px',
565
- height: '15px',
566
- bottom: '8px',
567
- right: '-20px'
568
- }}
569
- />
570
- </div>
571
- )}
572
- </S.Button>
573
- </Tooltip>
574
-
575
- <Tooltip
576
- key="test"
577
- title={
578
- !isTokenPresent ? (
579
- <span
580
- style={{
581
- fontSize: 14
582
- }}
583
- >
584
- You need to <b>save the project</b> before Adding to Cart
585
- </span>
586
- ) : (
587
- ''
588
- )
589
- }
590
- >
591
- <S.Button
592
- onClick={() => {
593
- if (userInfo.pid === undefined)
594
- handleSubmitPrompt(SUBMIT_ADD_CART);
595
- else handleSubmitForQuote(true, SUBMIT_ADD_CART);
596
- }}
597
- >
598
- <img
599
- style={{ marginRight: 10 }}
600
- src="\assets\img\svg\toolbar\shopping-cart.svg"
601
- />
602
- Add to Cart
603
- {!isTokenPresent && (
604
- <div
605
- style={{
606
- width: '5px',
607
- height: '5px',
608
- position: 'relative'
609
- }}
610
- >
611
- <InfoIcon
612
- style={{
613
- position: 'absolute',
614
- width: '15px',
615
- height: '15px',
616
- bottom: '8px',
617
- right: '-20px'
618
- }}
619
- />
620
- </div>
621
- )}
622
- </S.Button>
623
- </Tooltip>
624
-
625
- {/*<S.Button onClick={downloadToFile}>*/}
626
- {/* <img*/}
627
- {/* style={{ marginRight: 10 }}*/}
628
- {/* src="\assets\img\svg\toolbar\download.svg"*/}
629
- {/* />*/}
630
- {/* Download Summary*/}
631
- {/*</S.Button>*/}
632
- </div>
633
- </div>
634
- );
635
- };
@@ -1,21 +0,0 @@
1
- import ToolbarButton from './button/ToggleButton';
2
- import RightButton from './button/RightButton';
3
- import ToolbarSaveButton from './toolbar-save-button';
4
- import ToolbarLoadButton from './toolbar-load-button';
5
- import Toolbar from './main';
6
-
7
- export {
8
- ToolbarButton,
9
- RightButton,
10
- ToolbarSaveButton,
11
- ToolbarLoadButton,
12
- Toolbar
13
- };
14
-
15
- export default {
16
- ToolbarButton,
17
- RightButton,
18
- ToolbarSaveButton,
19
- ToolbarLoadButton,
20
- Toolbar
21
- };