kitchen-simulator 5.0.0-test.17 → 5.0.0-test.18

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 (29) hide show
  1. package/package.json +11 -3
  2. package/src/_KitchenConfigurator.jsx +0 -88
  3. package/src/components/atoms/Snackbar/index.jsx +43 -0
  4. package/src/components/atoms/radio-button/index.jsx +20 -0
  5. package/src/components/atoms/radio-button/styles.js +56 -0
  6. package/src/components/button/MainButton.jsx +157 -0
  7. package/src/components/button/ToggleMeasureButton.jsx +65 -0
  8. package/src/components/content.jsx +136 -0
  9. package/src/components/molecules/slider/index.jsx +15 -0
  10. package/src/components/molecules/slider/styles.js +0 -0
  11. package/src/components/molecules/slider/styles.scss +3 -0
  12. package/src/components/style/button.jsx +95 -0
  13. package/src/components/style/cancel-button.jsx +20 -0
  14. package/src/components/style/content-container.jsx +29 -0
  15. package/src/components/style/content-title.jsx +20 -0
  16. package/src/components/style/delete-button.jsx +23 -0
  17. package/src/components/style/export.jsx +48 -0
  18. package/src/components/style/form-block.jsx +13 -0
  19. package/src/components/style/form-color-input.jsx +27 -0
  20. package/src/components/style/form-label.jsx +15 -0
  21. package/src/components/style/form-number-input.jsx +196 -0
  22. package/src/components/style/form-number-input_2.jsx +191 -0
  23. package/src/components/style/form-select.jsx +38 -0
  24. package/src/components/style/form-slider.jsx +36 -0
  25. package/src/components/style/form-submit-button.jsx +23 -0
  26. package/src/components/style/form-text-input.jsx +65 -0
  27. package/src/components/tutorial-view/Modal.jsx +584 -0
  28. package/src/components/tutorial-view/style.css +111 -0
  29. package/src/components/tutorial-view/styles.js +65 -0
@@ -0,0 +1,584 @@
1
+ import React, { useEffect, useState, useRef } from 'react';
2
+ // import { Modal, Button } from 'antd';
3
+ import { withStyles } from '@material-ui/core/styles';
4
+ import Button from '@material-ui/core/Button';
5
+ import Dialog from '@material-ui/core/Dialog';
6
+ import MuiDialogTitle from '@material-ui/core/DialogTitle';
7
+ import Grid from '@material-ui/core/Grid';
8
+ import MuiDialogContent from '@material-ui/core/DialogContent';
9
+ import DialogActions from '@material-ui/core/DialogActions';
10
+ import IconButton from '@material-ui/core/IconButton';
11
+ import { Checkbox, FormControlLabel } from '@material-ui/core';
12
+ // import CloseIcon from '@material-ui/icons/Close';
13
+ import Typography from '@material-ui/core/Typography';
14
+ import { CaretLeftFilled } from '@ant-design/icons';
15
+ import { CloseSquareFilled } from '@ant-design/icons';
16
+ import { StarOutlined, StarFilled, StarTwoTone } from '@ant-design/icons';
17
+ import { FaTimes } from 'react-icons/fa';
18
+ import { TutorialDialog } from './styles';
19
+
20
+ const DialogContent = withStyles(theme => ({
21
+ root: {
22
+ padding: theme.spacing(0),
23
+ minWidth: 550,
24
+ minHeight: 335,
25
+ '&:first-child': {
26
+ paddingTop: 0
27
+ }
28
+ }
29
+ }))(MuiDialogContent);
30
+
31
+ const styles = theme => ({
32
+ root: {
33
+ margin: 0,
34
+ padding: 0
35
+ },
36
+ closeButton: {
37
+ position: 'absolute',
38
+ right: 3,
39
+ top: 3,
40
+ color: theme.palette.grey[500]
41
+ }
42
+ });
43
+
44
+ const DialogTitle = withStyles(styles)(props => {
45
+ const { classes, onClose } = props;
46
+ return (
47
+ <MuiDialogTitle disableTypography className={classes.root}>
48
+ {onClose ? (
49
+ <IconButton
50
+ aria-label="close"
51
+ className={classes.closeButton}
52
+ onClick={onClose}
53
+ style={{
54
+ color: ' #FFF',
55
+ fontSize: '18px',
56
+ border: ' 0px',
57
+ borderRadius: ' 3px',
58
+ background: '#000',
59
+ border: ' 1px solid #000',
60
+ padding: ' 4px 4px 1px 4px',
61
+ cursor: ' pointer',
62
+ marginTop: '10px',
63
+ marginRight: '10px'
64
+ }}
65
+ >
66
+ <FaTimes style={{ marginBottom: '4px' }} />
67
+ </IconButton>
68
+ ) : null}
69
+ </MuiDialogTitle>
70
+ );
71
+ });
72
+
73
+ export default function Modal(props) {
74
+ const [tutorial_state, setTutorial_state] = useState(null);
75
+ const [data] = useState([]);
76
+
77
+ useEffect(() => {
78
+ switch (tutorial_state) {
79
+ case 0:
80
+ props.closeFloorTB();
81
+ break;
82
+ case 1:
83
+ props.toggleDoorStyle(false);
84
+ props.openFloor();
85
+ break;
86
+ case 2:
87
+ props.closeFloorTB();
88
+ props.toggleDoorStyle(true);
89
+ props.closeCabinetTB();
90
+ break;
91
+ case 3:
92
+ props.openCabinet();
93
+ props.toggleDoorStyle(false);
94
+ document.getElementById('toggle_2d_3d').style.zIndex = '';
95
+ break;
96
+ case 4:
97
+ props.closeCabinetTB();
98
+ document.getElementById('toggle_2d_3d').style.zIndex = 1000;
99
+ break;
100
+ case 5:
101
+ document.getElementById('toggle_2d_3d').style.zIndex = '';
102
+ props.closeFinishingTB();
103
+ props.openAppliance();
104
+ break;
105
+ case 6:
106
+ props.closeApplianceTB();
107
+ props.onReviewQuoteClicked(false);
108
+ props.openFinishing();
109
+ break;
110
+ case 7:
111
+ props.closeFinishingTB();
112
+ props.onReviewQuoteClicked(true);
113
+ break;
114
+ }
115
+ }, [tutorial_state]);
116
+
117
+ const handleNext = () => {
118
+ setTutorial_state(tutorial_state + 1);
119
+ };
120
+
121
+ const handlePrev = () => {
122
+ setTutorial_state(tutorial_state - 1);
123
+ };
124
+
125
+ useEffect(() => {
126
+ data.push(
127
+ <div style={{ width: '100%' }} key="1">
128
+ <br />
129
+ <br />
130
+ <div style={{ width: '100%', display: 'flex' }}>
131
+ <div style={{ width: '20%' }}>
132
+ <CaretLeftFilled
133
+ style={{
134
+ fontSize: '650%',
135
+ color: '#1890ff',
136
+ // marginLeft: '-20%',
137
+ marginTop: '100%'
138
+ }}
139
+ />
140
+ </div>
141
+ <div style={{ width: '80%', marginTop: '-40px' }}>
142
+ <br />
143
+ <br />
144
+ <p
145
+ style={{
146
+ color: 'white',
147
+ fontWeight: '400',
148
+ display: 'block',
149
+ fontSize: '3em'
150
+ }}
151
+ >
152
+ DIY Design Space
153
+ </p>
154
+ <p
155
+ style={{
156
+ color: 'white',
157
+ fontWeight: '400',
158
+ display: 'block',
159
+ fontSize: '1.5em',
160
+ marginTop: '-10%'
161
+ }}
162
+ >
163
+ Quick start guide
164
+ </p>
165
+ <br />
166
+ <br />
167
+ <br />
168
+ <p
169
+ style={{
170
+ color: 'white',
171
+ fontWeight: '350',
172
+ display: 'block',
173
+ fontSize: '1.35em',
174
+ marginTop: '-10%'
175
+ }}
176
+ >
177
+ Follow the steps 1 through 6 in the left menu
178
+ <br />
179
+ to create your kitchen design
180
+ </p>
181
+ </div>
182
+ </div>
183
+ </div>
184
+ );
185
+ data.push(
186
+ <div style={{ width: '100%' }}>
187
+ <div>
188
+ <Grid
189
+ container
190
+ direction="row"
191
+ justifyContent="space-between"
192
+ alignItems="flex-start"
193
+ >
194
+ <img
195
+ src="/assets/img/step2.jpg"
196
+ align="left"
197
+ width="75px"
198
+ height="75px"
199
+ />
200
+ </Grid>
201
+ </div>
202
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
203
+ <p
204
+ style={{
205
+ color: 'white',
206
+ fontWeight: '400',
207
+ display: 'block',
208
+ fontSize: '3em'
209
+ }}
210
+ >
211
+ 1. Make a floor plan
212
+ </p>
213
+ <br />
214
+ <p
215
+ style={{
216
+ color: 'white',
217
+ fontWeight: '350',
218
+ display: 'block',
219
+ fontSize: '1.35em',
220
+ marginTop: '-10%'
221
+ }}
222
+ >
223
+ Choose from a predefined floor space
224
+ <br />
225
+ or create your own from measurements.
226
+ <br />
227
+ Add windows and doors to finalize the space.
228
+ </p>
229
+ </div>
230
+ </div>
231
+ );
232
+ data.push(
233
+ <div style={{ width: '100%' }}>
234
+ <div>
235
+ <Grid
236
+ container
237
+ direction="row"
238
+ justifyContent="space-between"
239
+ alignItems="flex-start"
240
+ >
241
+ <img
242
+ src="/assets/img/step5.jpg"
243
+ align="left"
244
+ width="75px"
245
+ height="75px"
246
+ />
247
+ </Grid>
248
+ </div>
249
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
250
+ <p
251
+ style={{
252
+ color: 'white',
253
+ fontWeight: '400',
254
+ display: 'block',
255
+ fontSize: '3em'
256
+ }}
257
+ >
258
+ 2. Changing door styles
259
+ <br />
260
+ and colors
261
+ </p>
262
+ <br />
263
+
264
+ <p
265
+ style={{
266
+ color: 'white',
267
+ fontWeight: '350',
268
+ display: 'block',
269
+ fontSize: '1.35em',
270
+ marginTop: '-10%'
271
+ }}
272
+ >
273
+ Explore the various door choices.
274
+ <br />
275
+ Use the change option to select
276
+ <br />a new door and see it applied in your space.
277
+ </p>
278
+ </div>
279
+ </div>
280
+ );
281
+ data.push(
282
+ <div style={{ width: '100%' }}>
283
+ <div>
284
+ <Grid
285
+ container
286
+ direction="row"
287
+ justifyContent="space-between"
288
+ alignItems="flex-start"
289
+ >
290
+ <img
291
+ src="/assets/img/step3.jpg"
292
+ align="left"
293
+ width="75px"
294
+ height="75px"
295
+ />
296
+ </Grid>
297
+ </div>
298
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
299
+ <p
300
+ style={{
301
+ color: 'white',
302
+ fontWeight: '400',
303
+ display: 'block',
304
+ fontSize: '3em'
305
+ }}
306
+ >
307
+ 3. Adding cabinets
308
+ </p>
309
+
310
+ <br />
311
+ <br />
312
+ <p
313
+ style={{
314
+ color: 'white',
315
+ fontWeight: '350',
316
+ display: 'block',
317
+ fontSize: '1.35em',
318
+ marginTop: '-10%'
319
+ }}
320
+ >
321
+ Start building your kitchen layout
322
+ <br />
323
+ by adding cabinets and accessories.
324
+ </p>
325
+ </div>
326
+ </div>
327
+ );
328
+ data.push(
329
+ <div style={{ width: '100%' }}>
330
+ <div style={{ height: '75px' }}>
331
+ <Grid
332
+ container
333
+ direction="row"
334
+ justifyContent="space-between"
335
+ alignItems="flex-start"
336
+ >
337
+ <img src="/assets/img/step4.jpg" align="left" width="75px" />
338
+ </Grid>
339
+ </div>
340
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
341
+ <p
342
+ style={{
343
+ color: 'white',
344
+ fontWeight: '400',
345
+ display: 'block',
346
+ fontSize: '2.6em'
347
+ }}
348
+ >
349
+ View Space in 3D Mode
350
+ </p>
351
+ <br />
352
+ <br />
353
+ <p
354
+ style={{
355
+ color: 'white',
356
+ fontWeight: '350',
357
+ display: 'block',
358
+ fontSize: '1.35em',
359
+ marginTop: '-10%'
360
+ }}
361
+ >
362
+ Toggle the kitchen between
363
+ <br />
364
+ 2D floor plan and 3D room view
365
+ <br />
366
+ using the menu at the bottom
367
+ <br />
368
+ of the screen.
369
+ </p>
370
+ </div>
371
+ </div>
372
+ );
373
+ data.push(
374
+ <div style={{ width: '100%' }}>
375
+ <div>
376
+ <Grid
377
+ container
378
+ direction="row"
379
+ justifyContent="space-between"
380
+ alignItems="flex-start"
381
+ >
382
+ <img
383
+ src="/assets/img/step6.jpg"
384
+ align="left"
385
+ width="75px"
386
+ height="75px"
387
+ />
388
+ </Grid>
389
+ </div>
390
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
391
+ <p
392
+ style={{
393
+ color: 'white',
394
+ fontWeight: '400',
395
+ display: 'block',
396
+ fontSize: '3em'
397
+ }}
398
+ >
399
+ 4. Adding appliances
400
+ </p>
401
+ <br />
402
+ <br />
403
+ <p
404
+ style={{
405
+ color: 'white',
406
+ fontWeight: '350',
407
+ display: 'block',
408
+ fontSize: '1.35em',
409
+ marginTop: '-10%'
410
+ }}
411
+ >
412
+ Pick your appliances from the list
413
+ <br />
414
+ and add them to your design.
415
+ </p>
416
+ </div>
417
+ </div>
418
+ );
419
+ data.push(
420
+ <div style={{ width: '100%' }}>
421
+ <div>
422
+ <Grid
423
+ container
424
+ direction="row"
425
+ justifyContent="space-between"
426
+ alignItems="flex-start"
427
+ >
428
+ <img
429
+ src="/assets/img/step7.jpg"
430
+ align="left"
431
+ width="75px"
432
+ height="75px"
433
+ />
434
+ </Grid>
435
+ </div>
436
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
437
+ <p
438
+ style={{
439
+ color: 'white',
440
+ fontWeight: '400',
441
+ display: 'block',
442
+ fontSize: '3em'
443
+ }}
444
+ >
445
+ 5. Finishing touches
446
+ </p>
447
+ <br />
448
+ <br />
449
+ <p
450
+ style={{
451
+ color: 'white',
452
+ fontWeight: '350',
453
+ display: 'block',
454
+ fontSize: '1.35em',
455
+ marginTop: '-10%'
456
+ }}
457
+ >
458
+ Further customize your kitchen by adding paint,
459
+ <br />
460
+ furniture, backsplash and more.
461
+ </p>
462
+ </div>
463
+ </div>
464
+ );
465
+ data.push(
466
+ <div style={{ width: '100%' }}>
467
+ <div>
468
+ <Grid
469
+ container
470
+ direction="row"
471
+ justifyContent="space-between"
472
+ alignItems="flex-start"
473
+ >
474
+ <img
475
+ src="/assets/img/step8.jpg"
476
+ align="left"
477
+ width="75px"
478
+ height="75px"
479
+ />
480
+ </Grid>
481
+ </div>
482
+ <div style={{ marginLeft: '15%', marginTop: '-40px' }}>
483
+ <p
484
+ style={{
485
+ color: 'white',
486
+ fontWeight: '400',
487
+ display: 'block',
488
+ fontSize: '3em'
489
+ }}
490
+ >
491
+ 6. Save/Submit project
492
+ </p>
493
+ <br />
494
+ <br />
495
+ <p
496
+ style={{
497
+ color: 'white',
498
+ fontWeight: '350',
499
+ display: 'block',
500
+ fontSize: '1.35em',
501
+ marginTop: '-10%'
502
+ }}
503
+ >
504
+ Save your project, review it or submit for a quote.
505
+ <br />
506
+ You can also request design assistance at anytime
507
+ <br />
508
+ from the top right menu on the main screen.
509
+ </p>
510
+ </div>
511
+ </div>
512
+ );
513
+ setTutorial_state(0);
514
+ }, []);
515
+
516
+ return tutorial_state == null ? null : (
517
+ <TutorialDialog
518
+ open={props.isModalVisible}
519
+ onClose={props.cancel}
520
+ aria-labelledby="alert-dialog-title"
521
+ aria-describedby="alert-dialog-description"
522
+ id="tutorial_dialog"
523
+ >
524
+ <DialogTitle onClose={props.cancel} />
525
+
526
+ <DialogContent>{data[tutorial_state]}</DialogContent>
527
+ <DialogActions style={{ backgroundColor: '#41403F' }}>
528
+ <Grid container>
529
+ <Grid
530
+ container
531
+ direction="row"
532
+ justifyContent="space-around"
533
+ alignItems="flex-start"
534
+ >
535
+ <Grid item xs={1}>
536
+ {!(tutorial_state == 0) && (
537
+ <div>
538
+ <Button
539
+ onClick={handlePrev}
540
+ color="primary"
541
+ style={{ minWidth: 80, marginLeft: '-35px' }}
542
+ >
543
+ {'< Prev'}
544
+ </Button>
545
+ </div>
546
+ )}
547
+ </Grid>
548
+ <Grid item xs={1}>
549
+ {!(tutorial_state == 7) && (
550
+ <div style={{ minWidth: 80, marginLeft: '10px' }}>
551
+ <Button onClick={handleNext} color="primary">
552
+ {' Next >'}
553
+ </Button>
554
+ </div>
555
+ )}
556
+ </Grid>
557
+ <Grid item xs={1}>
558
+ {' '}
559
+ <div style={{ width: '300%' }}>
560
+ <Button onClick={props.cancel} color="primary">
561
+ <u>Close Guide</u>
562
+ </Button>
563
+ </div>
564
+ </Grid>
565
+ </Grid>
566
+ <Grid container direction="row-reverse">
567
+ <FormControlLabel
568
+ className="never-show-check"
569
+ control={
570
+ <Checkbox
571
+ label="Never show again"
572
+ color="primary"
573
+ style={{ color: 'white' }}
574
+ inputRef={props.neverShowInput}
575
+ />
576
+ }
577
+ label="Do not show this again"
578
+ />
579
+ </Grid>
580
+ </Grid>
581
+ </DialogActions>
582
+ </TutorialDialog>
583
+ );
584
+ }
@@ -0,0 +1,111 @@
1
+ /* .MuiDialog-root {
2
+
3
+ }
4
+
5
+
6
+ .MuiDialogTitle-root {
7
+ background-color:#41403F !important;
8
+ }
9
+
10
+ .MuiDialog-root {
11
+ z-index: -1 !important;
12
+ }
13
+
14
+ .MuiDialogContent-root {
15
+
16
+ background-color: #41403F !important;
17
+ border-top-right-radius: 4px;
18
+ border-top-left-radius: 4px;
19
+ }
20
+
21
+ .MuiDialogActions-root {
22
+ border-bottom-right-radius: 4px;
23
+ border-bottom-left-radius: 4px;
24
+ }
25
+
26
+ h1, h2, h3, h4, h5, h6 {
27
+ color: rgba(255, 255, 255, 0.85);
28
+ }
29
+ .MuiButton-textPrimary {
30
+ color: white !important;
31
+ }
32
+ .MuiDialog-paperWidthSm {
33
+ max-width: 550px !important;
34
+
35
+
36
+ }
37
+ .MuiDialog-paper {
38
+ opacity: 0.84;
39
+ overflow-y: unset !important;
40
+ } */
41
+
42
+ .never-show-check {
43
+ color: white;
44
+ }
45
+
46
+ .never-show-check > .MuiTypography-body1 {
47
+ font-size: 0.7rem;
48
+ }
49
+
50
+ .never-show-check .MuiSvgIcon-root {
51
+ width: 0.7em;
52
+ height: 0.7em;
53
+ }
54
+
55
+ .never-show-check .MuiCheckbox-colorPrimary.Mui-checked {
56
+ color: white;
57
+ }
58
+
59
+ .t_modal {
60
+ z-index: 0 !important;
61
+ }
62
+ .MuiDialogTitle-root {
63
+ background-color: #41403f !important;
64
+ }
65
+
66
+ .MuiDialogContent-root {
67
+ background-color: #41403f !important;
68
+ margin: 0;
69
+ color: rgba(0, 0, 0, 0.65);
70
+ font-size: 14px;
71
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
72
+ 'Helvetica Neue', Arial, 'Noto Sans', Open Sans, 'Apple Color Emoji',
73
+ 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
74
+ font-variant: tabular-nums;
75
+ line-height: 1.5715;
76
+ background-color: #fff;
77
+ -webkit-font-feature-settings: 'tnum';
78
+ font-feature-settings: 'tnum';
79
+ }
80
+
81
+ .MuiDialog-root {
82
+ z-index: 998 !important;
83
+ }
84
+
85
+ .MuiDialog-root p {
86
+ margin-top: 0;
87
+ margin-bottom: 1em;
88
+ }
89
+
90
+ h1,
91
+ h2,
92
+ h3,
93
+ h4,
94
+ h5,
95
+ h6 {
96
+ /* margin-top: 0; */
97
+ /* margin-bottom: 0.5em; */
98
+ color: rgba(255, 255, 255, 0.85);
99
+ /* font-weight: 500; */
100
+ }
101
+ .MuiButton-textPrimary {
102
+ color: white !important;
103
+ }
104
+ .MuiDialog-paperWidthSm {
105
+ max-width: 550px !important;
106
+ height: 380px !important;
107
+ }
108
+ .MuiDialog-paper {
109
+ opacity: 0.84;
110
+ overflow-y: unset !important;
111
+ }