@app-studio/web 0.8.60 → 0.8.61

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.
package/dist/web.esm.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import 'core-js/modules/es.symbol.description.js';
2
2
  import React, { useRef, useState, useEffect, useCallback, useMemo, createContext, useContext, Fragment } from 'react';
3
3
  import 'core-js/modules/es.object.assign.js';
4
- import { View as View$1, Element, Typography, Image, useTheme, Input, Form } from 'app-studio';
4
+ import { View as View$1, Element, Typography, Image, useTheme, Animation, Input, Form, Text as Text$1, Horizontal as Horizontal$1 } from 'app-studio';
5
5
  import 'core-js/modules/es.array.iterator.js';
6
6
  import 'core-js/modules/es.parse-float.js';
7
7
  import 'core-js/modules/web.dom-collections.iterator.js';
@@ -11,6 +11,9 @@ import 'core-js/modules/es.string.includes.js';
11
11
  import 'core-js/modules/es.string.starts-with.js';
12
12
  import format from 'date-fns/format';
13
13
  import { useFormikContext, getIn } from 'formik';
14
+ import 'core-js/modules/web.url.js';
15
+ import 'core-js/modules/web.url.to-json.js';
16
+ import 'core-js/modules/web.url-search-params.js';
14
17
  import { create } from 'zustand';
15
18
 
16
19
  var Top = props => (/*#__PURE__*/React.createElement(View$1, Object.assign({
@@ -74,7 +77,7 @@ var HeadingSizes = {
74
77
  }
75
78
  };
76
79
 
77
- var _excluded = ["children", "heading", "maxLines", "isItalic", "isUnderlined", "isSub", "isSup", "isStriked", "isTruncated", "weight", "size"];
80
+ var _excluded = ["children", "heading", "maxLines", "isItalic", "isUnderlined", "isSub", "isSup", "isStriked", "weight", "size"];
78
81
  var TextContent = _ref => {
79
82
  var {
80
83
  children,
@@ -129,7 +132,6 @@ var TextView = _ref3 => {
129
132
  isSub = false,
130
133
  isSup = false,
131
134
  isStriked = false,
132
- isTruncated = false,
133
135
  weight = 'normal',
134
136
  size = 'md'
135
137
  } = _ref3,
@@ -145,7 +147,7 @@ var TextView = _ref3 => {
145
147
  fontStyle: isItalic ? 'italic' : 'normal',
146
148
  fontWeight: Typography.fontWeights[weight],
147
149
  textDecoration: isStriked ? 'line-through' : isUnderlined ? 'underline' : 'none'
148
- }, noLineBreak, headingStyles, props), isTruncated && maxLines && typeof children === 'string' ? (/*#__PURE__*/React.createElement(TruncateText, {
150
+ }, noLineBreak, headingStyles, props), maxLines && typeof children === 'string' ? (/*#__PURE__*/React.createElement(TruncateText, {
149
151
  text: children,
150
152
  maxLines: maxLines
151
153
  })) : (/*#__PURE__*/React.createElement(TextContent, Object.assign({
@@ -240,18 +242,18 @@ var _excluded$4 = ["size", "color", "transform", "orientation", "children"],
240
242
  _excluded22 = ["size", "color", "filled", "strokeWidth"],
241
243
  _excluded23 = ["size", "color", "filled", "strokeWidth"],
242
244
  _excluded24 = ["size", "color", "filled", "strokeWidth"],
243
- _excluded25 = ["size", "color", "strokeWidth", "filled"],
245
+ _excluded25 = ["size", "color", "filled", "strokeWidth"],
244
246
  _excluded26 = ["size", "color", "filled", "strokeWidth"],
245
- _excluded27 = ["size", "color", "strokeWidth", "filled"],
247
+ _excluded27 = ["size", "color", "filled", "strokeWidth"],
246
248
  _excluded28 = ["size", "color", "filled", "strokeWidth"],
247
- _excluded29 = ["size", "color", "strokeWidth", "filled"],
248
- _excluded30 = ["size", "color", "filled", "strokeWidth"],
249
- _excluded31 = ["size", "color", "strokeWidth", "filled"],
250
- _excluded32 = ["size", "color", "filled", "strokeWidth"],
249
+ _excluded29 = ["size", "color", "filled", "strokeWidth"],
250
+ _excluded30 = ["size", "color", "strokeWidth", "filled"],
251
+ _excluded31 = ["size", "color", "filled", "strokeWidth"],
252
+ _excluded32 = ["size", "color", "strokeWidth", "filled"],
251
253
  _excluded33 = ["size", "color", "filled", "strokeWidth"],
252
- _excluded34 = ["size", "color", "filled", "strokeWidth"],
254
+ _excluded34 = ["size", "color", "strokeWidth", "filled"],
253
255
  _excluded35 = ["size", "color", "filled", "strokeWidth"],
254
- _excluded36 = ["size", "color", "filled", "strokeWidth"],
256
+ _excluded36 = ["size", "color", "strokeWidth", "filled"],
255
257
  _excluded37 = ["size", "color", "filled", "strokeWidth"],
256
258
  _excluded38 = ["size", "color", "filled", "strokeWidth"],
257
259
  _excluded39 = ["size", "color", "filled", "strokeWidth"],
@@ -259,13 +261,13 @@ var _excluded$4 = ["size", "color", "transform", "orientation", "children"],
259
261
  _excluded41 = ["size", "color", "filled", "strokeWidth"],
260
262
  _excluded42 = ["size", "color", "filled", "strokeWidth"],
261
263
  _excluded43 = ["size", "color", "filled", "strokeWidth"],
262
- _excluded44 = ["size", "color", "strokeWidth", "filled"],
263
- _excluded45 = ["size", "color", "strokeWidth", "filled"],
264
+ _excluded44 = ["size", "color", "filled", "strokeWidth"],
265
+ _excluded45 = ["size", "color", "filled", "strokeWidth"],
264
266
  _excluded46 = ["size", "color", "filled", "strokeWidth"],
265
267
  _excluded47 = ["size", "color", "filled", "strokeWidth"],
266
268
  _excluded48 = ["size", "color", "filled", "strokeWidth"],
267
- _excluded49 = ["size", "color", "filled", "strokeWidth"],
268
- _excluded50 = ["size", "color", "filled", "strokeWidth"],
269
+ _excluded49 = ["size", "color", "strokeWidth", "filled"],
270
+ _excluded50 = ["size", "color", "strokeWidth", "filled"],
269
271
  _excluded51 = ["size", "color", "filled", "strokeWidth"],
270
272
  _excluded52 = ["size", "color", "filled", "strokeWidth"],
271
273
  _excluded53 = ["size", "color", "filled", "strokeWidth"],
@@ -274,7 +276,12 @@ var _excluded$4 = ["size", "color", "transform", "orientation", "children"],
274
276
  _excluded56 = ["size", "color", "filled", "strokeWidth"],
275
277
  _excluded57 = ["size", "color", "filled", "strokeWidth"],
276
278
  _excluded58 = ["size", "color", "filled", "strokeWidth"],
277
- _excluded59 = ["size", "color", "strokeWidth", "filled"];
279
+ _excluded59 = ["size", "color", "filled", "strokeWidth"],
280
+ _excluded60 = ["size", "color", "filled", "strokeWidth"],
281
+ _excluded61 = ["size", "color", "filled", "strokeWidth"],
282
+ _excluded62 = ["size", "color", "filled", "strokeWidth"],
283
+ _excluded63 = ["size", "color", "filled", "strokeWidth"],
284
+ _excluded64 = ["size", "color", "strokeWidth", "filled"];
278
285
  // Default wrapper component for consistent sizing and styling
279
286
  var IconWrapper = _ref => {
280
287
  var {
@@ -364,7 +371,8 @@ var DragHandleIcon = _ref3 => {
364
371
  r: "2"
365
372
  }))));
366
373
  };
367
- var TwitterIcon = _ref4 => {
374
+ // File Icon Component
375
+ var FileIcon = _ref4 => {
368
376
  var {
369
377
  size = 24,
370
378
  color = 'currentColor',
@@ -380,13 +388,19 @@ var TwitterIcon = _ref4 => {
380
388
  "aria-hidden": "true",
381
389
  focusable: "false"
382
390
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("path", {
383
- d: "M22.46 6.01c-.83.37-1.72.62-2.65.74a4.6 4.6 0 0 0 2.01-2.54 9.2 9.2 0 0 1-2.91 1.11 4.54 4.54 0 0 0-7.75 4.14A12.86 12.86 0 0 1 3.15 4.47a4.54 4.54 0 0 0 1.4 6.06 4.5 4.5 0 0 1-2.06-.57v.06a4.54 4.54 0 0 0 3.64 4.45 4.61 4.61 0 0 1-2.05.08 4.54 4.54 0 0 0 4.23 3.15 9.12 9.12 0 0 1-5.64 1.94c-.37 0-.74-.02-1.1-.07A12.86 12.86 0 0 0 8.21 21c8.38 0 12.96-6.94 12.96-12.96 0-.2 0-.4-.01-.6a9.28 9.28 0 0 0 2.3-2.37z",
391
+ d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6z",
384
392
  fill: filled ? color : 'none',
385
393
  stroke: filled ? 'none' : color,
386
394
  strokeWidth: filled ? 0 : strokeWidth
395
+ }), /*#__PURE__*/React.createElement("polyline", {
396
+ points: "14 2 14 8 20 8",
397
+ fill: "none",
398
+ stroke: color,
399
+ strokeWidth: strokeWidth
387
400
  })));
388
401
  };
389
- var XIcon = _ref5 => {
402
+ // Video Icon Component
403
+ var VideoIcon = _ref5 => {
390
404
  var {
391
405
  size = 24,
392
406
  color = 'currentColor',
@@ -401,6 +415,100 @@ var XIcon = _ref5 => {
401
415
  viewBox: "0 0 24 24",
402
416
  "aria-hidden": "true",
403
417
  focusable: "false"
418
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("rect", {
419
+ x: "2",
420
+ y: "4",
421
+ width: "20",
422
+ height: "16",
423
+ rx: "2",
424
+ ry: "2",
425
+ fill: filled ? color : 'none',
426
+ stroke: filled ? 'none' : color,
427
+ strokeWidth: filled ? 0 : strokeWidth
428
+ }), /*#__PURE__*/React.createElement("polygon", {
429
+ points: "10 8 16 12 10 16 10 8",
430
+ fill: filled ? filled ? 'white' : color : 'none',
431
+ stroke: filled ? 'none' : color,
432
+ strokeWidth: filled ? 0 : strokeWidth
433
+ })));
434
+ };
435
+ // Image Icon Component
436
+ var ImageIcon = _ref6 => {
437
+ var {
438
+ size = 24,
439
+ color = 'currentColor',
440
+ filled = true,
441
+ strokeWidth = 1
442
+ } = _ref6,
443
+ props = _objectWithoutPropertiesLoose(_ref6, _excluded6);
444
+ return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
445
+ size: size,
446
+ color: color
447
+ }, props), /*#__PURE__*/React.createElement("svg", Object.assign({
448
+ viewBox: "0 0 24 24",
449
+ "aria-hidden": "true",
450
+ focusable: "false"
451
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("rect", {
452
+ x: "2",
453
+ y: "2",
454
+ width: "20",
455
+ height: "20",
456
+ rx: "2",
457
+ ry: "2",
458
+ fill: filled ? color : 'none',
459
+ stroke: filled ? 'none' : color,
460
+ strokeWidth: filled ? 0 : strokeWidth
461
+ }), /*#__PURE__*/React.createElement("circle", {
462
+ cx: "8.5",
463
+ cy: "8.5",
464
+ r: "1.5",
465
+ fill: filled ? filled ? 'white' : color : 'none',
466
+ stroke: filled ? 'none' : color,
467
+ strokeWidth: filled ? 0 : strokeWidth
468
+ }), /*#__PURE__*/React.createElement("polyline", {
469
+ points: "21 15 16 10 5 21",
470
+ fill: "none",
471
+ stroke: filled ? 'white' : color,
472
+ strokeWidth: strokeWidth
473
+ })));
474
+ };
475
+ var TwitterIcon = _ref7 => {
476
+ var {
477
+ size = 24,
478
+ color = 'currentColor',
479
+ filled = true,
480
+ strokeWidth = 1
481
+ } = _ref7,
482
+ props = _objectWithoutPropertiesLoose(_ref7, _excluded7);
483
+ return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
484
+ size: size,
485
+ color: color
486
+ }, props), /*#__PURE__*/React.createElement("svg", Object.assign({
487
+ viewBox: "0 0 24 24",
488
+ "aria-hidden": "true",
489
+ focusable: "false"
490
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("path", {
491
+ d: "M22.46 6.01c-.83.37-1.72.62-2.65.74a4.6 4.6 0 0 0 2.01-2.54 9.2 9.2 0 0 1-2.91 1.11 4.54 4.54 0 0 0-7.75 4.14A12.86 12.86 0 0 1 3.15 4.47a4.54 4.54 0 0 0 1.4 6.06 4.5 4.5 0 0 1-2.06-.57v.06a4.54 4.54 0 0 0 3.64 4.45 4.61 4.61 0 0 1-2.05.08 4.54 4.54 0 0 0 4.23 3.15 9.12 9.12 0 0 1-5.64 1.94c-.37 0-.74-.02-1.1-.07A12.86 12.86 0 0 0 8.21 21c8.38 0 12.96-6.94 12.96-12.96 0-.2 0-.4-.01-.6a9.28 9.28 0 0 0 2.3-2.37z",
492
+ fill: filled ? color : 'none',
493
+ stroke: filled ? 'none' : color,
494
+ strokeWidth: filled ? 0 : strokeWidth
495
+ })));
496
+ };
497
+ var XIcon = _ref8 => {
498
+ var {
499
+ size = 24,
500
+ color = 'currentColor',
501
+ filled = true,
502
+ strokeWidth = 1
503
+ } = _ref8,
504
+ props = _objectWithoutPropertiesLoose(_ref8, _excluded8);
505
+ return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
506
+ size: size,
507
+ color: color
508
+ }, props), /*#__PURE__*/React.createElement("svg", Object.assign({
509
+ viewBox: "0 0 24 24",
510
+ "aria-hidden": "true",
511
+ focusable: "false"
404
512
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("path", {
405
513
  d: "M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z",
406
514
  fill: filled ? color : 'none',
@@ -409,14 +517,14 @@ var XIcon = _ref5 => {
409
517
  })));
410
518
  };
411
519
  // Example of a Twitch Icon
412
- var TwitchIcon = _ref6 => {
520
+ var TwitchIcon = _ref9 => {
413
521
  var {
414
522
  size = 24,
415
523
  color = 'currentColor',
416
524
  filled = true,
417
525
  strokeWidth = 1
418
- } = _ref6,
419
- props = _objectWithoutPropertiesLoose(_ref6, _excluded6);
526
+ } = _ref9,
527
+ props = _objectWithoutPropertiesLoose(_ref9, _excluded9);
420
528
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
421
529
  size: size,
422
530
  color: color
@@ -437,14 +545,14 @@ var TwitchIcon = _ref6 => {
437
545
  })));
438
546
  };
439
547
  // Example of another Icon: CloseIcon
440
- var CloseIcon = _ref7 => {
548
+ var CloseIcon = _ref10 => {
441
549
  var {
442
550
  size = 24,
443
551
  color = 'currentColor',
444
552
  filled = false,
445
553
  strokeWidth = 1
446
- } = _ref7,
447
- props = _objectWithoutPropertiesLoose(_ref7, _excluded7);
554
+ } = _ref10,
555
+ props = _objectWithoutPropertiesLoose(_ref10, _excluded10);
448
556
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
449
557
  size: size,
450
558
  color: color
@@ -466,14 +574,14 @@ var CloseIcon = _ref7 => {
466
574
  y2: "18"
467
575
  })));
468
576
  };
469
- var InstagramIcon = _ref8 => {
577
+ var InstagramIcon = _ref11 => {
470
578
  var {
471
579
  size = 24,
472
580
  color = 'currentColor',
473
581
  filled = false,
474
582
  strokeWidth = 1
475
- } = _ref8,
476
- props = _objectWithoutPropertiesLoose(_ref8, _excluded8);
583
+ } = _ref11,
584
+ props = _objectWithoutPropertiesLoose(_ref11, _excluded11);
477
585
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
478
586
  size: size,
479
587
  color: color
@@ -497,14 +605,14 @@ var InstagramIcon = _ref8 => {
497
605
  y2: "6.5"
498
606
  })));
499
607
  };
500
- var YoutubeIcon = _ref9 => {
608
+ var YoutubeIcon = _ref12 => {
501
609
  var {
502
610
  size = 24,
503
611
  color = 'currentColor',
504
612
  filled = true,
505
613
  strokeWidth = 1
506
- } = _ref9,
507
- props = _objectWithoutPropertiesLoose(_ref9, _excluded9);
614
+ } = _ref12,
615
+ props = _objectWithoutPropertiesLoose(_ref12, _excluded12);
508
616
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
509
617
  size: size,
510
618
  color: color
@@ -525,14 +633,14 @@ var YoutubeIcon = _ref9 => {
525
633
  strokeWidth: strokeWidth
526
634
  })));
527
635
  };
528
- var FacebookIcon = _ref10 => {
636
+ var FacebookIcon = _ref13 => {
529
637
  var {
530
638
  size = 24,
531
639
  color = 'currentColor',
532
640
  filled = true,
533
641
  strokeWidth = 1
534
- } = _ref10,
535
- props = _objectWithoutPropertiesLoose(_ref10, _excluded10);
642
+ } = _ref13,
643
+ props = _objectWithoutPropertiesLoose(_ref13, _excluded13);
536
644
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
537
645
  size: size,
538
646
  color: color
@@ -547,14 +655,14 @@ var FacebookIcon = _ref10 => {
547
655
  strokeWidth: filled ? 0 : strokeWidth
548
656
  })));
549
657
  };
550
- var LinkedinIcon = _ref11 => {
658
+ var LinkedinIcon = _ref14 => {
551
659
  var {
552
660
  size = 24,
553
661
  color = 'currentColor',
554
662
  filled = true,
555
663
  strokeWidth = 1
556
- } = _ref11,
557
- props = _objectWithoutPropertiesLoose(_ref11, _excluded11);
664
+ } = _ref14,
665
+ props = _objectWithoutPropertiesLoose(_ref14, _excluded14);
558
666
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
559
667
  size: size,
560
668
  color: color
@@ -573,14 +681,14 @@ var LinkedinIcon = _ref11 => {
573
681
  r: "2"
574
682
  })));
575
683
  };
576
- var ThreadsIcon = _ref12 => {
684
+ var ThreadsIcon = _ref15 => {
577
685
  var {
578
686
  size = 24,
579
687
  color = 'currentColor',
580
688
  filled = false,
581
689
  strokeWidth = 1
582
- } = _ref12,
583
- props = _objectWithoutPropertiesLoose(_ref12, _excluded12);
690
+ } = _ref15,
691
+ props = _objectWithoutPropertiesLoose(_ref15, _excluded15);
584
692
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
585
693
  size: size,
586
694
  color: color
@@ -595,15 +703,15 @@ var ThreadsIcon = _ref12 => {
595
703
  })));
596
704
  };
597
705
  // Example Refactored Icon: MinusIcon without undefined 'padding' prop
598
- var MinusIcon = _ref13 => {
706
+ var MinusIcon = _ref16 => {
599
707
  var {
600
708
  size = 24,
601
709
  color = 'currentColor',
602
710
  filled = false,
603
711
  // Assuming minus can be filled; adjust as needed
604
712
  strokeWidth = 1
605
- } = _ref13,
606
- props = _objectWithoutPropertiesLoose(_ref13, _excluded13);
713
+ } = _ref16,
714
+ props = _objectWithoutPropertiesLoose(_ref16, _excluded16);
607
715
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
608
716
  size: size,
609
717
  color: color
@@ -620,14 +728,14 @@ var MinusIcon = _ref13 => {
620
728
  })));
621
729
  };
622
730
  // Example Refactored Icon: InfoIcon with accessibility enhancements
623
- var InfoIcon = _ref14 => {
731
+ var InfoIcon = _ref17 => {
624
732
  var {
625
733
  size = 24,
626
734
  color = 'currentColor',
627
735
  filled = false,
628
736
  strokeWidth = 1
629
- } = _ref14,
630
- props = _objectWithoutPropertiesLoose(_ref14, _excluded14);
737
+ } = _ref17,
738
+ props = _objectWithoutPropertiesLoose(_ref17, _excluded17);
631
739
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
632
740
  size: size,
633
741
  color: color
@@ -641,14 +749,52 @@ var InfoIcon = _ref14 => {
641
749
  d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"
642
750
  })));
643
751
  };
644
- var HeartIcon = _ref15 => {
752
+ var PlayIcon = _ref18 => {
645
753
  var {
646
754
  size = 24,
647
755
  color = 'currentColor',
648
756
  filled = true,
649
757
  strokeWidth = 1
650
- } = _ref15,
651
- props = _objectWithoutPropertiesLoose(_ref15, _excluded15);
758
+ } = _ref18,
759
+ props = _objectWithoutPropertiesLoose(_ref18, _excluded18);
760
+ return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
761
+ size: size,
762
+ color: color
763
+ }, props), /*#__PURE__*/React.createElement("svg", Object.assign({
764
+ viewBox: "0 0 24 24",
765
+ "aria-hidden": "false",
766
+ focusable: "false"
767
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("path", {
768
+ d: "M8 5v14l11-7z"
769
+ })));
770
+ };
771
+ var PauseIcon = _ref19 => {
772
+ var {
773
+ size = 24,
774
+ color = 'currentColor',
775
+ filled = true,
776
+ strokeWidth = 1
777
+ } = _ref19,
778
+ props = _objectWithoutPropertiesLoose(_ref19, _excluded19);
779
+ return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
780
+ size: size,
781
+ color: color
782
+ }, props), /*#__PURE__*/React.createElement("svg", Object.assign({
783
+ viewBox: "0 0 24 24",
784
+ "aria-hidden": "false",
785
+ focusable: "false"
786
+ }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React.createElement("path", {
787
+ d: "M6 4h4v16H6V4zm8 0h4v16h-4V4z"
788
+ })));
789
+ };
790
+ var HeartIcon = _ref20 => {
791
+ var {
792
+ size = 24,
793
+ color = 'currentColor',
794
+ filled = true,
795
+ strokeWidth = 1
796
+ } = _ref20,
797
+ props = _objectWithoutPropertiesLoose(_ref20, _excluded20);
652
798
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
653
799
  size: size,
654
800
  color: color
@@ -660,14 +806,14 @@ var HeartIcon = _ref15 => {
660
806
  d: "M20.84 4.61c-1.54-1.56-4.04-1.56-5.59 0l-.7.72-.7-.72a3.95 3.95 0 0 0-5.59 0c-1.56 1.56-1.56 4.09 0 5.66l6.29 6.36 6.29-6.36c1.56-1.56 1.56-4.09 0-5.66z"
661
807
  })));
662
808
  };
663
- var StarIcon = _ref16 => {
809
+ var StarIcon = _ref21 => {
664
810
  var {
665
811
  size = 24,
666
812
  color = 'currentColor',
667
813
  filled = true,
668
814
  strokeWidth = 1
669
- } = _ref16,
670
- props = _objectWithoutPropertiesLoose(_ref16, _excluded16);
815
+ } = _ref21,
816
+ props = _objectWithoutPropertiesLoose(_ref21, _excluded21);
671
817
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
672
818
  size: size,
673
819
  color: color
@@ -679,14 +825,14 @@ var StarIcon = _ref16 => {
679
825
  points: "12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"
680
826
  })));
681
827
  };
682
- var SaveIcon = _ref17 => {
828
+ var SaveIcon = _ref22 => {
683
829
  var {
684
830
  size = 24,
685
831
  color = 'currentColor',
686
832
  filled = false,
687
833
  strokeWidth = 1
688
- } = _ref17,
689
- props = _objectWithoutPropertiesLoose(_ref17, _excluded17);
834
+ } = _ref22,
835
+ props = _objectWithoutPropertiesLoose(_ref22, _excluded22);
690
836
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
691
837
  size: size,
692
838
  color: color
@@ -702,14 +848,14 @@ var SaveIcon = _ref17 => {
702
848
  points: "7 3 7 8 15 8"
703
849
  })));
704
850
  };
705
- var WarningIcon = _ref18 => {
851
+ var WarningIcon = _ref23 => {
706
852
  var {
707
853
  size = 24,
708
854
  color = 'currentColor',
709
855
  filled = false,
710
856
  strokeWidth = 1
711
- } = _ref18,
712
- props = _objectWithoutPropertiesLoose(_ref18, _excluded18);
857
+ } = _ref23,
858
+ props = _objectWithoutPropertiesLoose(_ref23, _excluded23);
713
859
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
714
860
  size: size,
715
861
  color: color
@@ -733,14 +879,14 @@ var WarningIcon = _ref18 => {
733
879
  y2: "15"
734
880
  })));
735
881
  };
736
- var BatteryIcon = _ref19 => {
882
+ var BatteryIcon = _ref24 => {
737
883
  var {
738
884
  size = 24,
739
885
  color = 'currentColor',
740
886
  filled = true,
741
887
  strokeWidth = 1
742
- } = _ref19,
743
- props = _objectWithoutPropertiesLoose(_ref19, _excluded19);
888
+ } = _ref24,
889
+ props = _objectWithoutPropertiesLoose(_ref24, _excluded24);
744
890
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
745
891
  size: size,
746
892
  color: color
@@ -752,14 +898,14 @@ var BatteryIcon = _ref19 => {
752
898
  d: "M15.67 4H14V2h-4v2H8.33C7.6 4 7 4.6 7 5.33v15.33C7 21.4 7.6 22 8.33 22h7.33c.74 0 1.34-.6 1.34-1.33V5.33C17 4.6 16.4 4 15.67 4z"
753
899
  })));
754
900
  };
755
- var BookmarkIcon = _ref20 => {
901
+ var BookmarkIcon = _ref25 => {
756
902
  var {
757
903
  size = 24,
758
904
  color = 'currentColor',
759
905
  filled = false,
760
906
  strokeWidth = 1
761
- } = _ref20,
762
- props = _objectWithoutPropertiesLoose(_ref20, _excluded20);
907
+ } = _ref25,
908
+ props = _objectWithoutPropertiesLoose(_ref25, _excluded25);
763
909
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
764
910
  size: size,
765
911
  color: color
@@ -771,14 +917,14 @@ var BookmarkIcon = _ref20 => {
771
917
  d: "M17 3H7c-1.1 0-2 .9-2 2v16l7-3 7 3V5c0-1.1-.9-2-2-2z"
772
918
  })));
773
919
  };
774
- var CloudIcon = _ref21 => {
920
+ var CloudIcon = _ref26 => {
775
921
  var {
776
922
  size = 24,
777
923
  color = 'currentColor',
778
924
  filled = true,
779
925
  strokeWidth = 1
780
- } = _ref21,
781
- props = _objectWithoutPropertiesLoose(_ref21, _excluded21);
926
+ } = _ref26,
927
+ props = _objectWithoutPropertiesLoose(_ref26, _excluded26);
782
928
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
783
929
  size: size,
784
930
  color: color
@@ -790,14 +936,14 @@ var CloudIcon = _ref21 => {
790
936
  d: "M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z"
791
937
  })));
792
938
  };
793
- var CopyIcon = _ref22 => {
939
+ var CopyIcon = _ref27 => {
794
940
  var {
795
941
  size = 24,
796
942
  color = 'currentColor',
797
943
  filled = false,
798
944
  strokeWidth = 1
799
- } = _ref22,
800
- props = _objectWithoutPropertiesLoose(_ref22, _excluded22);
945
+ } = _ref27,
946
+ props = _objectWithoutPropertiesLoose(_ref27, _excluded27);
801
947
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
802
948
  size: size,
803
949
  color: color
@@ -816,14 +962,14 @@ var CopyIcon = _ref22 => {
816
962
  d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"
817
963
  })));
818
964
  };
819
- var DustBinIcon = _ref23 => {
965
+ var DustBinIcon = _ref28 => {
820
966
  var {
821
967
  size = 24,
822
968
  color = 'currentColor',
823
969
  filled = false,
824
970
  strokeWidth = 1
825
- } = _ref23,
826
- props = _objectWithoutPropertiesLoose(_ref23, _excluded23);
971
+ } = _ref28,
972
+ props = _objectWithoutPropertiesLoose(_ref28, _excluded28);
827
973
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
828
974
  size: size,
829
975
  color: color
@@ -835,14 +981,14 @@ var DustBinIcon = _ref23 => {
835
981
  d: "M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"
836
982
  })));
837
983
  };
838
- var EditIcon = _ref24 => {
984
+ var EditIcon = _ref29 => {
839
985
  var {
840
986
  size = 24,
841
987
  color = 'currentColor',
842
988
  filled = false,
843
989
  strokeWidth = 1
844
- } = _ref24,
845
- props = _objectWithoutPropertiesLoose(_ref24, _excluded24);
990
+ } = _ref29,
991
+ props = _objectWithoutPropertiesLoose(_ref29, _excluded29);
846
992
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
847
993
  size: size,
848
994
  color: color
@@ -854,14 +1000,14 @@ var EditIcon = _ref24 => {
854
1000
  d: "M18.3785 8.44975L8.9636 17.8648C8.6844 18.144 8.3288 18.3343 7.94161 18.4117L4.99988 19.0001L5.58823 16.0583C5.66566 15.6711 5.85597 15.3155 6.13517 15.0363L15.5501 5.62132M18.3785 8.44975L19.7927 7.03553C20.1832 6.64501 20.1832 6.01184 19.7927 5.62132L18.3785 4.20711C17.988 3.81658 17.3548 3.81658 16.9643 4.20711L15.5501 5.62132M18.3785 8.44975L15.5501 5.62132"
855
1001
  })));
856
1002
  };
857
- var ErrorIcon = _ref25 => {
1003
+ var ErrorIcon = _ref30 => {
858
1004
  var {
859
1005
  size = 24,
860
1006
  color = 'currentColor',
861
1007
  strokeWidth = 1,
862
1008
  filled = true
863
- } = _ref25,
864
- props = _objectWithoutPropertiesLoose(_ref25, _excluded25);
1009
+ } = _ref30,
1010
+ props = _objectWithoutPropertiesLoose(_ref30, _excluded30);
865
1011
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
866
1012
  size: size,
867
1013
  color: color
@@ -887,14 +1033,14 @@ var ErrorIcon = _ref25 => {
887
1033
  stroke: filled ? 'white' : color
888
1034
  })));
889
1035
  };
890
- var DownloadIcon = _ref26 => {
1036
+ var DownloadIcon = _ref31 => {
891
1037
  var {
892
1038
  size = 24,
893
1039
  color = 'currentColor',
894
1040
  filled = true,
895
1041
  strokeWidth = 1
896
- } = _ref26,
897
- props = _objectWithoutPropertiesLoose(_ref26, _excluded26);
1042
+ } = _ref31,
1043
+ props = _objectWithoutPropertiesLoose(_ref31, _excluded31);
898
1044
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
899
1045
  size: size,
900
1046
  color: color
@@ -906,14 +1052,14 @@ var DownloadIcon = _ref26 => {
906
1052
  d: "M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"
907
1053
  })));
908
1054
  };
909
- var MenuIcon = _ref27 => {
1055
+ var MenuIcon = _ref32 => {
910
1056
  var {
911
1057
  size = 24,
912
1058
  color = 'currentColor',
913
1059
  strokeWidth = 1,
914
1060
  filled = false
915
- } = _ref27,
916
- props = _objectWithoutPropertiesLoose(_ref27, _excluded27);
1061
+ } = _ref32,
1062
+ props = _objectWithoutPropertiesLoose(_ref32, _excluded32);
917
1063
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
918
1064
  size: size,
919
1065
  color: color
@@ -941,14 +1087,14 @@ var MenuIcon = _ref27 => {
941
1087
  y2: "18"
942
1088
  })));
943
1089
  };
944
- var ShareIcon = _ref28 => {
1090
+ var ShareIcon = _ref33 => {
945
1091
  var {
946
1092
  size = 24,
947
1093
  color = 'currentColor',
948
1094
  filled = false,
949
1095
  strokeWidth = 1
950
- } = _ref28,
951
- props = _objectWithoutPropertiesLoose(_ref28, _excluded28);
1096
+ } = _ref33,
1097
+ props = _objectWithoutPropertiesLoose(_ref33, _excluded33);
952
1098
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
953
1099
  size: size,
954
1100
  color: color
@@ -982,14 +1128,14 @@ var ShareIcon = _ref28 => {
982
1128
  y2: "10.49"
983
1129
  })));
984
1130
  };
985
- var RefreshIcon = _ref29 => {
1131
+ var RefreshIcon = _ref34 => {
986
1132
  var {
987
1133
  size = 24,
988
1134
  color = 'currentColor',
989
1135
  strokeWidth = 1,
990
1136
  filled = false
991
- } = _ref29,
992
- props = _objectWithoutPropertiesLoose(_ref29, _excluded29);
1137
+ } = _ref34,
1138
+ props = _objectWithoutPropertiesLoose(_ref34, _excluded34);
993
1139
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
994
1140
  size: size,
995
1141
  color: color
@@ -1003,14 +1149,14 @@ var RefreshIcon = _ref29 => {
1003
1149
  d: "M20.49 15a9 9 0 1 1-2.13-9.36L23 10"
1004
1150
  })));
1005
1151
  };
1006
- var PrintIcon = _ref30 => {
1152
+ var PrintIcon = _ref35 => {
1007
1153
  var {
1008
1154
  size = 24,
1009
1155
  color = 'currentColor',
1010
1156
  filled = true,
1011
1157
  strokeWidth = 1
1012
- } = _ref30,
1013
- props = _objectWithoutPropertiesLoose(_ref30, _excluded30);
1158
+ } = _ref35,
1159
+ props = _objectWithoutPropertiesLoose(_ref35, _excluded35);
1014
1160
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1015
1161
  size: size,
1016
1162
  color: color
@@ -1023,14 +1169,14 @@ var PrintIcon = _ref30 => {
1023
1169
  d: "M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3zm-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12V3z"
1024
1170
  })));
1025
1171
  };
1026
- var PanelIcon = _ref31 => {
1172
+ var PanelIcon = _ref36 => {
1027
1173
  var {
1028
1174
  size = 24,
1029
1175
  color = 'currentColor',
1030
1176
  strokeWidth = 1,
1031
1177
  filled = false
1032
- } = _ref31,
1033
- props = _objectWithoutPropertiesLoose(_ref31, _excluded31);
1178
+ } = _ref36,
1179
+ props = _objectWithoutPropertiesLoose(_ref36, _excluded36);
1034
1180
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1035
1181
  size: size,
1036
1182
  color: color
@@ -1094,14 +1240,14 @@ var PanelIcon = _ref31 => {
1094
1240
  y2: "16"
1095
1241
  })));
1096
1242
  };
1097
- var FilterIcon = _ref32 => {
1243
+ var FilterIcon = _ref37 => {
1098
1244
  var {
1099
1245
  size = 24,
1100
1246
  color = 'currentColor',
1101
1247
  filled = false,
1102
1248
  strokeWidth = 1
1103
- } = _ref32,
1104
- props = _objectWithoutPropertiesLoose(_ref32, _excluded32);
1249
+ } = _ref37,
1250
+ props = _objectWithoutPropertiesLoose(_ref37, _excluded37);
1105
1251
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1106
1252
  size: size,
1107
1253
  color: color
@@ -1113,14 +1259,14 @@ var FilterIcon = _ref32 => {
1113
1259
  d: "M3 4h18l-7 10v5l-4 2v-7L3 4z"
1114
1260
  })));
1115
1261
  };
1116
- var HomeIcon = _ref33 => {
1262
+ var HomeIcon = _ref38 => {
1117
1263
  var {
1118
1264
  size = 24,
1119
1265
  color = 'currentColor',
1120
1266
  filled = true,
1121
1267
  strokeWidth = 1
1122
- } = _ref33,
1123
- props = _objectWithoutPropertiesLoose(_ref33, _excluded33);
1268
+ } = _ref38,
1269
+ props = _objectWithoutPropertiesLoose(_ref38, _excluded38);
1124
1270
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1125
1271
  size: size,
1126
1272
  color: color
@@ -1132,14 +1278,14 @@ var HomeIcon = _ref33 => {
1132
1278
  d: "M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8h5z"
1133
1279
  })));
1134
1280
  };
1135
- var LocationIcon = _ref34 => {
1281
+ var LocationIcon = _ref39 => {
1136
1282
  var {
1137
1283
  size = 24,
1138
1284
  color = 'currentColor',
1139
1285
  filled = true,
1140
1286
  strokeWidth = 1
1141
- } = _ref34,
1142
- props = _objectWithoutPropertiesLoose(_ref34, _excluded34);
1287
+ } = _ref39,
1288
+ props = _objectWithoutPropertiesLoose(_ref39, _excluded39);
1143
1289
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1144
1290
  size: size,
1145
1291
  color: color
@@ -1151,14 +1297,14 @@ var LocationIcon = _ref34 => {
1151
1297
  d: "M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"
1152
1298
  })));
1153
1299
  };
1154
- var LockIcon = _ref35 => {
1300
+ var LockIcon = _ref40 => {
1155
1301
  var {
1156
1302
  size = 24,
1157
1303
  color = 'currentColor',
1158
1304
  filled = false,
1159
1305
  strokeWidth = 1
1160
- } = _ref35,
1161
- props = _objectWithoutPropertiesLoose(_ref35, _excluded35);
1306
+ } = _ref40,
1307
+ props = _objectWithoutPropertiesLoose(_ref40, _excluded40);
1162
1308
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1163
1309
  size: size,
1164
1310
  color: color
@@ -1177,14 +1323,14 @@ var LockIcon = _ref35 => {
1177
1323
  d: "M7 11V7a5 5 0 0 1 10 0v4"
1178
1324
  })));
1179
1325
  };
1180
- var MicrophoneIcon = _ref36 => {
1326
+ var MicrophoneIcon = _ref41 => {
1181
1327
  var {
1182
1328
  size = 24,
1183
1329
  color = 'currentColor',
1184
1330
  filled = false,
1185
1331
  strokeWidth = 1
1186
- } = _ref36,
1187
- props = _objectWithoutPropertiesLoose(_ref36, _excluded36);
1332
+ } = _ref41,
1333
+ props = _objectWithoutPropertiesLoose(_ref41, _excluded41);
1188
1334
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1189
1335
  size: size,
1190
1336
  color: color
@@ -1210,14 +1356,14 @@ var MicrophoneIcon = _ref36 => {
1210
1356
  y2: "23"
1211
1357
  })));
1212
1358
  };
1213
- var MoonIcon = _ref37 => {
1359
+ var MoonIcon = _ref42 => {
1214
1360
  var {
1215
1361
  size = 24,
1216
1362
  color = 'currentColor',
1217
1363
  filled = true,
1218
1364
  strokeWidth = 1
1219
- } = _ref37,
1220
- props = _objectWithoutPropertiesLoose(_ref37, _excluded37);
1365
+ } = _ref42,
1366
+ props = _objectWithoutPropertiesLoose(_ref42, _excluded42);
1221
1367
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1222
1368
  size: size,
1223
1369
  color: color
@@ -1229,14 +1375,14 @@ var MoonIcon = _ref37 => {
1229
1375
  d: "M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"
1230
1376
  })));
1231
1377
  };
1232
- var NotificationIcon = _ref38 => {
1378
+ var NotificationIcon = _ref43 => {
1233
1379
  var {
1234
1380
  size = 24,
1235
1381
  color = 'currentColor',
1236
1382
  filled = false,
1237
1383
  strokeWidth = 1
1238
- } = _ref38,
1239
- props = _objectWithoutPropertiesLoose(_ref38, _excluded38);
1384
+ } = _ref43,
1385
+ props = _objectWithoutPropertiesLoose(_ref43, _excluded43);
1240
1386
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1241
1387
  size: size,
1242
1388
  color: color
@@ -1250,14 +1396,14 @@ var NotificationIcon = _ref38 => {
1250
1396
  d: "M13.73 21a2 2 0 0 1-3.46 0"
1251
1397
  })));
1252
1398
  };
1253
- var OpenEyeIcon = _ref39 => {
1399
+ var OpenEyeIcon = _ref44 => {
1254
1400
  var {
1255
1401
  size = 24,
1256
1402
  color = 'currentColor',
1257
1403
  filled = true,
1258
1404
  strokeWidth = 1
1259
- } = _ref39,
1260
- props = _objectWithoutPropertiesLoose(_ref39, _excluded39);
1405
+ } = _ref44,
1406
+ props = _objectWithoutPropertiesLoose(_ref44, _excluded44);
1261
1407
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1262
1408
  size: size,
1263
1409
  color: color
@@ -1269,14 +1415,14 @@ var OpenEyeIcon = _ref39 => {
1269
1415
  d: "M12 4C7 4 2.73 7.11 1 12c1.73 4.89 6 8 11 8s9.27-3.11 11-8c-1.73-4.89-6-8-11-8zm0 12.5c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"
1270
1416
  })));
1271
1417
  };
1272
- var ProfileIcon = _ref40 => {
1418
+ var ProfileIcon = _ref45 => {
1273
1419
  var {
1274
1420
  size = 24,
1275
1421
  color = 'currentColor',
1276
1422
  filled = true,
1277
1423
  strokeWidth = 1
1278
- } = _ref40,
1279
- props = _objectWithoutPropertiesLoose(_ref40, _excluded40);
1424
+ } = _ref45,
1425
+ props = _objectWithoutPropertiesLoose(_ref45, _excluded45);
1280
1426
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1281
1427
  size: size,
1282
1428
  color: color
@@ -1289,14 +1435,14 @@ var ProfileIcon = _ref40 => {
1289
1435
  d: "M12 13c-2.67 0-8 1.34-8 4v2c0 .55.45 1 1 1h14c.55 0 1-.45 1-1v-2c0-2.66-5.33-4-8-4zm0-9c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z M12 2C9.79 2 8 3.79 8 6s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4z M12 13c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z"
1290
1436
  }), ' '));
1291
1437
  };
1292
- var SettingsIcon = _ref41 => {
1438
+ var SettingsIcon = _ref46 => {
1293
1439
  var {
1294
1440
  size = 24,
1295
1441
  color = 'currentColor',
1296
1442
  filled = false,
1297
1443
  strokeWidth = 1
1298
- } = _ref41,
1299
- props = _objectWithoutPropertiesLoose(_ref41, _excluded41);
1444
+ } = _ref46,
1445
+ props = _objectWithoutPropertiesLoose(_ref46, _excluded46);
1300
1446
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1301
1447
  size: size,
1302
1448
  color: color
@@ -1308,14 +1454,14 @@ var SettingsIcon = _ref41 => {
1308
1454
  d: "M19.4 13c0-.3.1-.6.1-1s0-.7-.1-1l2.1-1.6c.2-.2.2-.4.1-.6l-2-3.5c-.1-.2-.4-.3-.6-.2l-2.5 1c-.5-.4-1.1-.7-1.7-.9l-.4-2.6c0-.2-.3-.4-.5-.4h-4c-.2 0-.5.2-.5.4l-.4 2.6c-.6.2-1.2.5-1.7.9l-2.5-1c-.2-.1-.5 0-.6.2l-2 3.5c-.1.2-.1.4.1.6L4.6 11c0 .3-.1.6-.1 1s0 .7.1 1l-2.1 1.6c-.2.2-.2.4-.1.6l2 3.5c.1.2.4.3.6.2l2.5-1c.5.4 1.1.7 1.7.9l.4 2.6c0 .2.3.4.5.4h4c.2 0 .5-.2.5-.4l.4-2.6c.6-.2 1.2-.5 1.7-.9l2.5 1c.2.1.5 0 .6-.2l2-3.5c.1-.2.1-.4-.1-.6L19.4 13zM12 15.5c-1.9 0-3.5-1.6-3.5-3.5s1.6-3.5 3.5-3.5 3.5 1.6 3.5 3.5-1.6 3.5-3.5 3.5z"
1309
1455
  })));
1310
1456
  };
1311
- var SuccessIcon = _ref42 => {
1457
+ var SuccessIcon = _ref47 => {
1312
1458
  var {
1313
1459
  size = 24,
1314
1460
  color = 'currentColor',
1315
1461
  filled = true,
1316
1462
  strokeWidth = 1
1317
- } = _ref42,
1318
- props = _objectWithoutPropertiesLoose(_ref42, _excluded42);
1463
+ } = _ref47,
1464
+ props = _objectWithoutPropertiesLoose(_ref47, _excluded47);
1319
1465
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1320
1466
  size: size,
1321
1467
  color: color
@@ -1327,14 +1473,14 @@ var SuccessIcon = _ref42 => {
1327
1473
  d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
1328
1474
  })));
1329
1475
  };
1330
- var UnLikeIcon = _ref43 => {
1476
+ var UnLikeIcon = _ref48 => {
1331
1477
  var {
1332
1478
  size = 24,
1333
1479
  color = 'currentColor',
1334
1480
  filled = true,
1335
1481
  strokeWidth = 1
1336
- } = _ref43,
1337
- props = _objectWithoutPropertiesLoose(_ref43, _excluded43);
1482
+ } = _ref48,
1483
+ props = _objectWithoutPropertiesLoose(_ref48, _excluded48);
1338
1484
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1339
1485
  size: size,
1340
1486
  color: color
@@ -1346,14 +1492,14 @@ var UnLikeIcon = _ref43 => {
1346
1492
  d: "M15 3H6c-.83 0-1.54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v2c0 1.1.9 2 2 2h6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1.41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"
1347
1493
  })));
1348
1494
  };
1349
- var ClockIcon = _ref44 => {
1495
+ var ClockIcon = _ref49 => {
1350
1496
  var {
1351
1497
  size = 24,
1352
1498
  color = 'currentColor',
1353
1499
  strokeWidth = 1,
1354
1500
  filled = false
1355
- } = _ref44,
1356
- props = _objectWithoutPropertiesLoose(_ref44, _excluded44);
1501
+ } = _ref49,
1502
+ props = _objectWithoutPropertiesLoose(_ref49, _excluded49);
1357
1503
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1358
1504
  size: size,
1359
1505
  color: color
@@ -1369,14 +1515,14 @@ var ClockIcon = _ref44 => {
1369
1515
  points: "12 6 12 12 16 14"
1370
1516
  })));
1371
1517
  };
1372
- var CameraIcon = _ref45 => {
1518
+ var CameraIcon = _ref50 => {
1373
1519
  var {
1374
1520
  size = 24,
1375
1521
  color = 'currentColor',
1376
1522
  strokeWidth = 1,
1377
1523
  filled = false
1378
- } = _ref45,
1379
- props = _objectWithoutPropertiesLoose(_ref45, _excluded45);
1524
+ } = _ref50,
1525
+ props = _objectWithoutPropertiesLoose(_ref50, _excluded50);
1380
1526
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1381
1527
  size: size,
1382
1528
  color: color
@@ -1392,14 +1538,14 @@ var CameraIcon = _ref45 => {
1392
1538
  r: "4"
1393
1539
  })));
1394
1540
  };
1395
- var BluetoothIcon = _ref46 => {
1541
+ var BluetoothIcon = _ref51 => {
1396
1542
  var {
1397
1543
  size = 24,
1398
1544
  color = 'currentColor',
1399
1545
  filled = true,
1400
1546
  strokeWidth = 1
1401
- } = _ref46,
1402
- props = _objectWithoutPropertiesLoose(_ref46, _excluded46);
1547
+ } = _ref51,
1548
+ props = _objectWithoutPropertiesLoose(_ref51, _excluded51);
1403
1549
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1404
1550
  size: size,
1405
1551
  color: color
@@ -1411,14 +1557,14 @@ var BluetoothIcon = _ref46 => {
1411
1557
  d: "M17.71 7.71L12 2h-1v7.59L6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 11 14.41V22h1l5.71-5.71-4.3-4.29 4.3-4.29zM13 5.83l1.88 1.88L13 9.59V5.83zm1.88 10.46L13 18.17v-3.76l1.88 1.88z"
1412
1558
  })));
1413
1559
  };
1414
- var LikeIcon = _ref47 => {
1560
+ var LikeIcon = _ref52 => {
1415
1561
  var {
1416
1562
  size = 24,
1417
1563
  color = 'currentColor',
1418
1564
  filled = true,
1419
1565
  strokeWidth = 1
1420
- } = _ref47,
1421
- props = _objectWithoutPropertiesLoose(_ref47, _excluded47);
1566
+ } = _ref52,
1567
+ props = _objectWithoutPropertiesLoose(_ref52, _excluded52);
1422
1568
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1423
1569
  size: size,
1424
1570
  color: color
@@ -1430,14 +1576,14 @@ var LikeIcon = _ref47 => {
1430
1576
  d: "M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z"
1431
1577
  })));
1432
1578
  };
1433
- var UnlockIcon = _ref48 => {
1579
+ var UnlockIcon = _ref53 => {
1434
1580
  var {
1435
1581
  size = 24,
1436
1582
  color = 'currentColor',
1437
1583
  filled = false,
1438
1584
  strokeWidth = 1
1439
- } = _ref48,
1440
- props = _objectWithoutPropertiesLoose(_ref48, _excluded48);
1585
+ } = _ref53,
1586
+ props = _objectWithoutPropertiesLoose(_ref53, _excluded53);
1441
1587
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1442
1588
  size: size,
1443
1589
  color: color
@@ -1456,14 +1602,14 @@ var UnlockIcon = _ref48 => {
1456
1602
  d: "M7 11V7a5 5 0 0 1 9.9-1"
1457
1603
  })));
1458
1604
  };
1459
- var WifiIcon = _ref49 => {
1605
+ var WifiIcon = _ref54 => {
1460
1606
  var {
1461
1607
  size = 24,
1462
1608
  color = 'currentColor',
1463
1609
  filled = false,
1464
1610
  strokeWidth = 1
1465
- } = _ref49,
1466
- props = _objectWithoutPropertiesLoose(_ref49, _excluded49);
1611
+ } = _ref54,
1612
+ props = _objectWithoutPropertiesLoose(_ref54, _excluded54);
1467
1613
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1468
1614
  size: size,
1469
1615
  color: color
@@ -1475,14 +1621,14 @@ var WifiIcon = _ref49 => {
1475
1621
  d: "M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3c-1.65-1.66-4.34-1.66-6 0zm-4-4l2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"
1476
1622
  })));
1477
1623
  };
1478
- var UploadIcon = _ref50 => {
1624
+ var UploadIcon = _ref55 => {
1479
1625
  var {
1480
1626
  size = 24,
1481
1627
  color = 'currentColor',
1482
1628
  filled = false,
1483
1629
  strokeWidth = 1
1484
- } = _ref50,
1485
- props = _objectWithoutPropertiesLoose(_ref50, _excluded50);
1630
+ } = _ref55,
1631
+ props = _objectWithoutPropertiesLoose(_ref55, _excluded55);
1486
1632
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1487
1633
  size: size,
1488
1634
  color: color
@@ -1498,14 +1644,14 @@ var UploadIcon = _ref50 => {
1498
1644
  d: "M12 12l0 9"
1499
1645
  })));
1500
1646
  };
1501
- var SearchIcon = _ref51 => {
1647
+ var SearchIcon = _ref56 => {
1502
1648
  var {
1503
1649
  size = 24,
1504
1650
  color = 'currentColor',
1505
1651
  filled = true,
1506
1652
  strokeWidth = 1
1507
- } = _ref51,
1508
- props = _objectWithoutPropertiesLoose(_ref51, _excluded51);
1653
+ } = _ref56,
1654
+ props = _objectWithoutPropertiesLoose(_ref56, _excluded56);
1509
1655
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1510
1656
  size: size,
1511
1657
  color: color
@@ -1517,14 +1663,14 @@ var SearchIcon = _ref51 => {
1517
1663
  d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"
1518
1664
  })));
1519
1665
  };
1520
- var CloseEyeIcon = _ref52 => {
1666
+ var CloseEyeIcon = _ref57 => {
1521
1667
  var {
1522
1668
  size = 24,
1523
1669
  color = 'currentColor',
1524
1670
  filled = true,
1525
1671
  strokeWidth = 1
1526
- } = _ref52,
1527
- props = _objectWithoutPropertiesLoose(_ref52, _excluded52);
1672
+ } = _ref57,
1673
+ props = _objectWithoutPropertiesLoose(_ref57, _excluded57);
1528
1674
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1529
1675
  size: size,
1530
1676
  color: color
@@ -1537,14 +1683,14 @@ var CloseEyeIcon = _ref52 => {
1537
1683
  fill: "currentColor"
1538
1684
  })));
1539
1685
  };
1540
- var ExternalLinkIcon = _ref53 => {
1686
+ var ExternalLinkIcon = _ref58 => {
1541
1687
  var {
1542
1688
  size = 24,
1543
1689
  color = 'currentColor',
1544
1690
  filled = true,
1545
1691
  strokeWidth = 1
1546
- } = _ref53,
1547
- props = _objectWithoutPropertiesLoose(_ref53, _excluded53);
1692
+ } = _ref58,
1693
+ props = _objectWithoutPropertiesLoose(_ref58, _excluded58);
1548
1694
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1549
1695
  size: size,
1550
1696
  color: color
@@ -1556,14 +1702,14 @@ var ExternalLinkIcon = _ref53 => {
1556
1702
  d: "M14 3h7v7h-2V5.41l-9.29 9.3-1.42-1.42 9.3-9.29H14V3ZM5 5h5v2H6v11h11v-4h2v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z"
1557
1703
  })));
1558
1704
  };
1559
- var PlusIcon = _ref54 => {
1705
+ var PlusIcon = _ref59 => {
1560
1706
  var {
1561
1707
  size = 24,
1562
1708
  color = 'currentColor',
1563
1709
  filled = false,
1564
1710
  strokeWidth = 1
1565
- } = _ref54,
1566
- props = _objectWithoutPropertiesLoose(_ref54, _excluded54);
1711
+ } = _ref59,
1712
+ props = _objectWithoutPropertiesLoose(_ref59, _excluded59);
1567
1713
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1568
1714
  size: size,
1569
1715
  color: color
@@ -1585,14 +1731,14 @@ var PlusIcon = _ref54 => {
1585
1731
  y2: "12"
1586
1732
  })));
1587
1733
  };
1588
- var TickIcon = _ref55 => {
1734
+ var TickIcon = _ref60 => {
1589
1735
  var {
1590
1736
  size = 24,
1591
1737
  color = 'currentColor',
1592
1738
  filled = false,
1593
1739
  strokeWidth = 1
1594
- } = _ref55,
1595
- props = _objectWithoutPropertiesLoose(_ref55, _excluded55);
1740
+ } = _ref60,
1741
+ props = _objectWithoutPropertiesLoose(_ref60, _excluded60);
1596
1742
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1597
1743
  size: size,
1598
1744
  color: color
@@ -1606,14 +1752,14 @@ var TickIcon = _ref55 => {
1606
1752
  strokeLinejoin: "round"
1607
1753
  })));
1608
1754
  };
1609
- var BoldArrowIcon = _ref56 => {
1755
+ var BoldArrowIcon = _ref61 => {
1610
1756
  var {
1611
1757
  size = 24,
1612
1758
  color = 'currentColor',
1613
1759
  filled = true,
1614
1760
  strokeWidth = 1
1615
- } = _ref56,
1616
- props = _objectWithoutPropertiesLoose(_ref56, _excluded56);
1761
+ } = _ref61,
1762
+ props = _objectWithoutPropertiesLoose(_ref61, _excluded61);
1617
1763
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1618
1764
  size: size,
1619
1765
  color: color
@@ -1625,14 +1771,14 @@ var BoldArrowIcon = _ref56 => {
1625
1771
  d: "M12 4l7 7h-4v7h-6v-7H5l7-7z"
1626
1772
  })));
1627
1773
  };
1628
- var ArrowIcon = _ref57 => {
1774
+ var ArrowIcon = _ref62 => {
1629
1775
  var {
1630
1776
  size = 24,
1631
1777
  color = 'currentColor',
1632
1778
  filled = false,
1633
1779
  strokeWidth = 1
1634
- } = _ref57,
1635
- props = _objectWithoutPropertiesLoose(_ref57, _excluded57);
1780
+ } = _ref62,
1781
+ props = _objectWithoutPropertiesLoose(_ref62, _excluded62);
1636
1782
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1637
1783
  size: size,
1638
1784
  color: color
@@ -1650,14 +1796,14 @@ var ArrowIcon = _ref57 => {
1650
1796
  points: "6 12 12 6 18 12"
1651
1797
  })));
1652
1798
  };
1653
- var SpinnerIcon = _ref58 => {
1799
+ var SpinnerIcon = _ref63 => {
1654
1800
  var {
1655
1801
  size = 24,
1656
1802
  color = 'currentColor',
1657
1803
  filled = false,
1658
1804
  strokeWidth = 1
1659
- } = _ref58,
1660
- props = _objectWithoutPropertiesLoose(_ref58, _excluded58);
1805
+ } = _ref63,
1806
+ props = _objectWithoutPropertiesLoose(_ref63, _excluded63);
1661
1807
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1662
1808
  size: size,
1663
1809
  color: color
@@ -1675,14 +1821,14 @@ var SpinnerIcon = _ref58 => {
1675
1821
  strokeOpacity: "1"
1676
1822
  })));
1677
1823
  };
1678
- var CalendarIcon = _ref59 => {
1824
+ var CalendarIcon = _ref64 => {
1679
1825
  var {
1680
1826
  size = 24,
1681
1827
  color = 'currentColor',
1682
1828
  strokeWidth = 1,
1683
1829
  filled = false
1684
- } = _ref59,
1685
- props = _objectWithoutPropertiesLoose(_ref59, _excluded59);
1830
+ } = _ref64,
1831
+ props = _objectWithoutPropertiesLoose(_ref64, _excluded64);
1686
1832
  return /*#__PURE__*/React.createElement(IconWrapper, Object.assign({
1687
1833
  size: size,
1688
1834
  color: color
@@ -1722,6 +1868,9 @@ var Icon = {
1722
1868
  __proto__: null,
1723
1869
  ChevronIcon: ChevronIcon,
1724
1870
  DragHandleIcon: DragHandleIcon,
1871
+ FileIcon: FileIcon,
1872
+ VideoIcon: VideoIcon,
1873
+ ImageIcon: ImageIcon,
1725
1874
  TwitterIcon: TwitterIcon,
1726
1875
  XIcon: XIcon,
1727
1876
  TwitchIcon: TwitchIcon,
@@ -1733,6 +1882,8 @@ var Icon = {
1733
1882
  ThreadsIcon: ThreadsIcon,
1734
1883
  MinusIcon: MinusIcon,
1735
1884
  InfoIcon: InfoIcon,
1885
+ PlayIcon: PlayIcon,
1886
+ PauseIcon: PauseIcon,
1736
1887
  HeartIcon: HeartIcon,
1737
1888
  StarIcon: StarIcon,
1738
1889
  SaveIcon: SaveIcon,
@@ -2555,7 +2706,7 @@ React.createElement(LoaderView, Object.assign({}, props)));
2555
2706
  // Exports the LoaderComponent as Loader, making it available for use in other parts of the application.
2556
2707
  var Loader = LoaderComponent;
2557
2708
 
2558
- var _excluded$9 = ["icon", "shadow", "children", "ariaLabel", "to", "isAuto", "isFilled", "isIconRounded", "isLoading", "isDisabled", "size", "variant", "iconPosition", "colorScheme", "shape", "onClick", "loaderProps", "loaderPosition", "effect", "isHovered", "setIsHovered", "isExternal", "themeMode"];
2709
+ var _excluded$9 = ["icon", "shadow", "children", "ariaLabel", "to", "isAuto", "isFilled", "isIconRounded", "isLoading", "isDisabled", "size", "variant", "iconPosition", "colorScheme", "shape", "onClick", "loaderProps", "loaderPosition", "effect", "isHovered", "setIsHovered", "isExternal", "themeMode", "containerProps", "linkProps"];
2559
2710
  var contrast = /*#__PURE__*/require('contrast');
2560
2711
  var ButtonView = _ref => {
2561
2712
  var _props$onClick;
@@ -2590,7 +2741,9 @@ var ButtonView = _ref => {
2590
2741
  isHovered,
2591
2742
  setIsHovered = () => {},
2592
2743
  isExternal = false,
2593
- themeMode: elementMode
2744
+ themeMode: elementMode,
2745
+ containerProps,
2746
+ linkProps
2594
2747
  // Defines CSS properties for 'outline' variant of the button with conditional styles based on reverse state.
2595
2748
  } = _ref,
2596
2749
  props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
@@ -2653,7 +2806,11 @@ var ButtonView = _ref => {
2653
2806
  var changePadding = isIconRounded ? IconSizes$1[size] : ButtonSizes[size];
2654
2807
  var content = /*#__PURE__*/React.createElement(Horizontal, {
2655
2808
  gap: 10
2656
- }, isLoading && loaderPosition === 'left' && /*#__PURE__*/React.createElement(Loader, Object.assign({}, loaderProps)), icon && iconPosition === 'left' && !isLoading && icon, children, icon && iconPosition === 'right' && !isLoading && icon, isLoading && loaderPosition === 'right' && /*#__PURE__*/React.createElement(Loader, Object.assign({}, loaderProps)));
2809
+ }, isLoading && loaderPosition === 'left' && /*#__PURE__*/React.createElement(Loader, Object.assign({}, loaderProps)), icon && iconPosition === 'left' && !isLoading && (/*#__PURE__*/React.createElement(View$1, Object.assign({}, isHovered ? {
2810
+ animate: Animation.jackInTheBox({})
2811
+ } : {}), icon)), children, icon && iconPosition === 'right' && !isLoading && (/*#__PURE__*/React.createElement(View$1, Object.assign({}, isHovered ? {
2812
+ animate: Animation.jackInTheBox({})
2813
+ } : {}), icon)), isLoading && loaderPosition === 'right' && /*#__PURE__*/React.createElement(Loader, Object.assign({}, loaderProps)));
2657
2814
  return /*#__PURE__*/React.createElement(Element, Object.assign({
2658
2815
  gap: 8,
2659
2816
  as: "button",
@@ -2673,12 +2830,12 @@ var ButtonView = _ref => {
2673
2830
  }, hovering && !props.isDisabled ? {
2674
2831
  transition: 'transform 0.3s ease',
2675
2832
  transform: 'translateY(-5px)'
2676
- } : {}, defaultNativeProps, buttonSizeStyles, buttonVariant, scaleWidth, props.padding || props.paddingHorizontal || props.paddingVertical || props.paddingLeft || props.paddingRight || props.paddingTop || props.paddingBottom ? {} : changePadding, shadow, props), variant === 'link' && to ? (/*#__PURE__*/React.createElement(Link, {
2833
+ } : {}, defaultNativeProps, buttonSizeStyles, buttonVariant, scaleWidth, props.padding || props.paddingHorizontal || props.paddingVertical || props.paddingLeft || props.paddingRight || props.paddingTop || props.paddingBottom ? {} : changePadding, shadow, props, containerProps), variant === 'link' && to ? (/*#__PURE__*/React.createElement(Link, Object.assign({
2677
2834
  to: to,
2678
2835
  textDecorationColor: colorScheme,
2679
2836
  colorScheme: colorScheme,
2680
2837
  isExternal: isExternal
2681
- }, content)) : content);
2838
+ }, linkProps), content)) : content);
2682
2839
  };
2683
2840
 
2684
2841
  // Importing a custom hook to manage the state specific to the button component.
@@ -6801,6 +6958,277 @@ var MessageLayout = _ref => {
6801
6958
  return visible ? MessageContainer : null;
6802
6959
  };
6803
6960
 
6961
+ var useUpload = _ref => {
6962
+ var {
6963
+ maxSize = 100 * 1024 * 1024,
6964
+ // 100MB default
6965
+ onFileSelect,
6966
+ validateFile,
6967
+ thumbnail,
6968
+ onError = error => {
6969
+ showMessage('error', 'Error', error);
6970
+ }
6971
+ } = _ref;
6972
+ var fileInputRef = useRef(null);
6973
+ var videoRef = useRef(null);
6974
+ var [selectedFile, setSelectedFile] = useState(null);
6975
+ var [errorMessage, setErrorMessage] = useState(null);
6976
+ var [previewUrl, setPreviewUrl] = useState(null);
6977
+ var [thumbnailUrl, setThumbnailUrl] = useState(thumbnail || null);
6978
+ var generateThumbnail = videoFile => {
6979
+ var video = document.createElement('video');
6980
+ video.preload = 'metadata';
6981
+ video.onloadedmetadata = () => {
6982
+ video.currentTime = 1;
6983
+ };
6984
+ video.oncanplay = () => {
6985
+ var canvas = document.createElement('canvas');
6986
+ canvas.width = video.videoWidth;
6987
+ canvas.height = video.videoHeight;
6988
+ var ctx = canvas.getContext('2d');
6989
+ if (ctx) {
6990
+ ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
6991
+ var thumbnailDataUrl = canvas.toDataURL('image/jpeg');
6992
+ setThumbnailUrl(thumbnailDataUrl);
6993
+ }
6994
+ URL.revokeObjectURL(video.src);
6995
+ };
6996
+ video.src = URL.createObjectURL(videoFile);
6997
+ };
6998
+ var handleFileChange = useCallback(event => {
6999
+ var _event$target$files;
7000
+ var file = (_event$target$files = event.target.files) == null ? void 0 : _event$target$files[0];
7001
+ setErrorMessage(null);
7002
+ if (!file) {
7003
+ onError('No file selected');
7004
+ setErrorMessage('No file selected');
7005
+ return;
7006
+ }
7007
+ if (file.size > maxSize) {
7008
+ onError("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
7009
+ setErrorMessage("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
7010
+ return;
7011
+ }
7012
+ if (validateFile) {
7013
+ var validationError = validateFile(file);
7014
+ if (validationError) {
7015
+ onError(validationError);
7016
+ setErrorMessage(validationError);
7017
+ return;
7018
+ }
7019
+ }
7020
+ setPreviewUrl(URL.createObjectURL(file));
7021
+ if (file.type.startsWith('video/')) {
7022
+ generateThumbnail(file);
7023
+ }
7024
+ if (onFileSelect) {
7025
+ setSelectedFile(file);
7026
+ onFileSelect(file);
7027
+ }
7028
+ }, [maxSize, onFileSelect, validateFile]);
7029
+ var handleClick = () => {
7030
+ var _fileInputRef$current;
7031
+ return (_fileInputRef$current = fileInputRef.current) == null ? void 0 : _fileInputRef$current.click();
7032
+ };
7033
+ useEffect(() => {
7034
+ return () => {
7035
+ if (previewUrl) URL.revokeObjectURL(previewUrl);
7036
+ if (thumbnailUrl) URL.revokeObjectURL(thumbnailUrl);
7037
+ };
7038
+ }, [previewUrl, thumbnailUrl]);
7039
+ return {
7040
+ previewUrl,
7041
+ thumbnailUrl,
7042
+ errorMessage,
7043
+ fileInputRef,
7044
+ videoRef,
7045
+ selectedFile,
7046
+ handleFileChange,
7047
+ handleClick
7048
+ };
7049
+ };
7050
+ var Uploader = _ref2 => {
7051
+ var {
7052
+ accept = '*/*',
7053
+ isLoading = false,
7054
+ progress = 0,
7055
+ icon,
7056
+ text,
7057
+ maxSize,
7058
+ onFileSelect,
7059
+ validateFile,
7060
+ containerProps,
7061
+ errorMessageProps,
7062
+ progressProps,
7063
+ videoProps,
7064
+ imageProps,
7065
+ iconProps,
7066
+ textProps,
7067
+ renderError = _ref3 => {
7068
+ var {
7069
+ errorMessage,
7070
+ errorMessageProps
7071
+ } = _ref3;
7072
+ return /*#__PURE__*/React.createElement(Text$1, Object.assign({
7073
+ color: "red",
7074
+ fontSize: 12,
7075
+ marginTop: 8
7076
+ }, errorMessageProps), errorMessage);
7077
+ },
7078
+ renderText = _ref4 => {
7079
+ var {
7080
+ text,
7081
+ textProps
7082
+ } = _ref4;
7083
+ return /*#__PURE__*/React.createElement(Text$1, Object.assign({
7084
+ marginTop: 8
7085
+ }, textProps), text);
7086
+ },
7087
+ renderFile = _ref5 => {
7088
+ var {
7089
+ selectedFile,
7090
+ textProps
7091
+ } = _ref5;
7092
+ return /*#__PURE__*/React.createElement(Center, {
7093
+ marginTop: 8,
7094
+ gap: 10,
7095
+ flexDirection: "column"
7096
+ }, /*#__PURE__*/React.createElement(Text$1, Object.assign({
7097
+ maxLines: 2
7098
+ }, textProps), selectedFile.name), /*#__PURE__*/React.createElement(Text$1, Object.assign({}, textProps), "(", Math.round(selectedFile.size / 1024), " KB)"));
7099
+ },
7100
+ renderVideo = _ref6 => {
7101
+ var {
7102
+ selectedFile,
7103
+ thumbnailUrl,
7104
+ videoRef,
7105
+ videoProps,
7106
+ imageProps,
7107
+ iconProps
7108
+ } = _ref6;
7109
+ console.log('thumbnailUrl', thumbnailUrl);
7110
+ return /*#__PURE__*/React.createElement(View$1, {
7111
+ width: "100%",
7112
+ height: "100%",
7113
+ position: "relative"
7114
+ }, /*#__PURE__*/React.createElement(View$1, Object.assign({
7115
+ as: "video",
7116
+ width: 0,
7117
+ height: 0,
7118
+ src: selectedFile == null ? void 0 : selectedFile.name,
7119
+ style: {
7120
+ objectFit: 'cover'
7121
+ },
7122
+ ref: videoRef
7123
+ }, videoProps)), /*#__PURE__*/React.createElement(Image, Object.assign({
7124
+ src: thumbnailUrl,
7125
+ alt: "Video Thumbnail",
7126
+ width: "100%",
7127
+ height: "100%",
7128
+ objectFit: "cover"
7129
+ }, imageProps)), /*#__PURE__*/React.createElement(PlayIcon, Object.assign({
7130
+ position: "absolute",
7131
+ top: "50%",
7132
+ left: "50%",
7133
+ color: "white",
7134
+ size: '20%',
7135
+ transform: "translate(-50%, -50%)"
7136
+ }, iconProps)));
7137
+ },
7138
+ renderImage = _ref7 => {
7139
+ var {
7140
+ previewUrl,
7141
+ imageProps
7142
+ } = _ref7;
7143
+ return /*#__PURE__*/React.createElement(Image, Object.assign({
7144
+ src: previewUrl,
7145
+ alt: "Preview",
7146
+ width: "100%",
7147
+ height: "100%",
7148
+ objectFit: "cover"
7149
+ }, imageProps));
7150
+ },
7151
+ renderProgress = _ref8 => {
7152
+ var {
7153
+ progress,
7154
+ progressProps
7155
+ } = _ref8;
7156
+ return /*#__PURE__*/React.createElement(Horizontal$1, Object.assign({
7157
+ gap: 8,
7158
+ alignItems: "center"
7159
+ }, progressProps), /*#__PURE__*/React.createElement(View$1, {
7160
+ height: 4,
7161
+ backgroundColor: "rgba(0,0,0,0.1)",
7162
+ width: "100%",
7163
+ borderRadius: 2
7164
+ }, /*#__PURE__*/React.createElement(View$1, {
7165
+ height: 4,
7166
+ width: progress + "%",
7167
+ borderRadius: 2
7168
+ })), /*#__PURE__*/React.createElement(Text$1, {
7169
+ fontSize: 12
7170
+ }, progress, "%"));
7171
+ }
7172
+ } = _ref2;
7173
+ var {
7174
+ previewUrl,
7175
+ thumbnailUrl,
7176
+ errorMessage,
7177
+ videoRef,
7178
+ fileInputRef,
7179
+ selectedFile,
7180
+ handleFileChange,
7181
+ handleClick
7182
+ } = useUpload({
7183
+ accept,
7184
+ maxSize,
7185
+ onFileSelect,
7186
+ validateFile
7187
+ });
7188
+ var fileType = previewUrl && accept.includes('video') ? 'video' : previewUrl && accept.includes('image') ? 'image' : 'file';
7189
+ return /*#__PURE__*/React.createElement(Center, Object.assign({
7190
+ onClick: handleClick,
7191
+ cursor: "pointer",
7192
+ border: "1px solid rgba(0,0,0,0.1)",
7193
+ borderRadius: 8,
7194
+ padding: 16,
7195
+ flexDirection: "column",
7196
+ overflow: "hidden",
7197
+ position: "relative"
7198
+ }, containerProps), progress == 100 && fileType == 'image' && previewUrl && renderImage({
7199
+ previewUrl,
7200
+ imageProps
7201
+ }), progress == 100 && fileType == 'video' && thumbnailUrl && renderVideo({
7202
+ thumbnailUrl,
7203
+ videoRef,
7204
+ videoProps,
7205
+ iconProps
7206
+ }), progress == 100 && fileType == 'file' && previewUrl && renderFile({
7207
+ selectedFile,
7208
+ textProps
7209
+ }), progress < 100 && (icon || /*#__PURE__*/React.createElement(UploadIcon, Object.assign({
7210
+ size: 32
7211
+ }, iconProps))), !selectedFile && text && renderText({
7212
+ text,
7213
+ textProps
7214
+ }), isLoading && renderProgress({
7215
+ progress,
7216
+ progressProps
7217
+ }), renderError({
7218
+ errorMessage,
7219
+ errorMessageProps
7220
+ }), /*#__PURE__*/React.createElement(View$1, {
7221
+ as: "input",
7222
+ type: "file",
7223
+ ref: fileInputRef,
7224
+ onChange: handleFileChange,
7225
+ accept: accept,
7226
+ style: {
7227
+ display: 'none'
7228
+ }
7229
+ }));
7230
+ };
7231
+
6804
7232
  var useModalStore = /*#__PURE__*/create(set => ({
6805
7233
  modals: [],
6806
7234
  onHide: name => name,
@@ -7649,5 +8077,5 @@ var DragAndDropComponent = props => {
7649
8077
  };
7650
8078
  var DragAndDrop = DragAndDropComponent;
7651
8079
 
7652
- export { Alert, ArrowIcon, AspectRatio, Avatar, Badge, BatteryIcon, BluetoothIcon, BoldArrowIcon, BookmarkIcon, Bottom, Button, CalendarIcon, CameraIcon, Center, CenterBase, Checkbox, ChevronIcon, ClockIcon, CloseEyeIcon, CloseIcon, CloudIcon, ComboBox, CopyIcon, CountryPicker, DatePicker, DownloadIcon, DragAndDrop, DragAndDropComponent, DragHandleIcon, DustBinIcon, EditIcon, ErrorIcon, ExternalLinkIcon, FacebookIcon, FileImage, FileSVG, FilterIcon, FormikCheckbox, FormikComboBox, FormikCountryPicker, FormikDatePicker, FormikForm, FormikPassword, FormikSelect, FormikSwitch, FormikTextArea, FormikTextField, HeartIcon, HomeIcon, Horizontal, HorizontalBase, Icon, InfoIcon, Inline, InstagramIcon, Left, LikeIcon, Link, LinkedinIcon, Loader, LocationIcon, LockIcon, MenuIcon, MessageLayout, MessageView, MicrophoneIcon, MinusIcon, Modal, MoonIcon, NotificationIcon, OpenEyeIcon, PanelIcon, Password, PlusIcon, PrintIcon, ProfileIcon, RefreshIcon, Right, SaveIcon, SearchIcon, Select, SettingsIcon, ShareIcon, SpinnerIcon, StarIcon, SuccessIcon, Switch, Table, Tabs, Text, TextArea, TextField, ThreadsIcon, TickIcon, Toggle, ToggleGroup, Top, TwitchIcon, TwitterIcon, UnLikeIcon, UnlockIcon, UploadIcon, Vertical, VerticalBase, View, WarningIcon, WifiIcon, XIcon, YoutubeIcon, hideMessage, hideModal, showMessage, showModal, useMessageStore, useModalStore };
8080
+ export { Alert, ArrowIcon, AspectRatio, Avatar, Badge, BatteryIcon, BluetoothIcon, BoldArrowIcon, BookmarkIcon, Bottom, Button, CalendarIcon, CameraIcon, Center, CenterBase, Checkbox, ChevronIcon, ClockIcon, CloseEyeIcon, CloseIcon, CloudIcon, ComboBox, CopyIcon, CountryPicker, DatePicker, DownloadIcon, DragAndDrop, DragAndDropComponent, DragHandleIcon, DustBinIcon, EditIcon, ErrorIcon, ExternalLinkIcon, FacebookIcon, FileIcon, FileImage, FileSVG, FilterIcon, FormikCheckbox, FormikComboBox, FormikCountryPicker, FormikDatePicker, FormikForm, FormikPassword, FormikSelect, FormikSwitch, FormikTextArea, FormikTextField, HeartIcon, HomeIcon, Horizontal, HorizontalBase, Icon, ImageIcon, InfoIcon, Inline, InstagramIcon, Left, LikeIcon, Link, LinkedinIcon, Loader, LocationIcon, LockIcon, MenuIcon, MessageLayout, MessageView, MicrophoneIcon, MinusIcon, Modal, MoonIcon, NotificationIcon, OpenEyeIcon, PanelIcon, Password, PauseIcon, PlayIcon, PlusIcon, PrintIcon, ProfileIcon, RefreshIcon, Right, SaveIcon, SearchIcon, Select, SettingsIcon, ShareIcon, SpinnerIcon, StarIcon, SuccessIcon, Switch, Table, Tabs, Text, TextArea, TextField, ThreadsIcon, TickIcon, Toggle, ToggleGroup, Top, TwitchIcon, TwitterIcon, UnLikeIcon, UnlockIcon, UploadIcon, Uploader, Vertical, VerticalBase, VideoIcon, View, WarningIcon, WifiIcon, XIcon, YoutubeIcon, hideMessage, hideModal, showMessage, showModal, useMessageStore, useModalStore, useUpload };
7653
8081
  //# sourceMappingURL=web.esm.js.map