@app-studio/web 0.9.3 → 0.9.4

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.
@@ -39,31 +39,6 @@ require('core-js/modules/es.array.flat-map.js');
39
39
  require('core-js/modules/es.array.unscopables.flat-map.js');
40
40
  require('core-js/modules/es.string.trim.js');
41
41
 
42
- function asyncGeneratorStep(n, t, e, r, o, a, c) {
43
- try {
44
- var i = n[a](c),
45
- u = i.value;
46
- } catch (n) {
47
- return void e(n);
48
- }
49
- i.done ? t(u) : Promise.resolve(u).then(r, o);
50
- }
51
- function _asyncToGenerator(n) {
52
- return function () {
53
- var t = this,
54
- e = arguments;
55
- return new Promise(function (r, o) {
56
- var a = n.apply(t, e);
57
- function _next(n) {
58
- asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
59
- }
60
- function _throw(n) {
61
- asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
62
- }
63
- _next(void 0);
64
- });
65
- };
66
- }
67
42
  function _objectWithoutPropertiesLoose(r, e) {
68
43
  if (null == r) return {};
69
44
  var t = {};
@@ -722,7 +697,7 @@ var _excluded$3 = ["widthHeight", "color", "transform", "orientation", "children
722
697
  _excluded38 = ["widthHeight", "color", "filled", "strokeWidth"],
723
698
  _excluded39 = ["widthHeight", "color", "strokeWidth", "filled"],
724
699
  _excluded40 = ["widthHeight", "color", "strokeWidth", "filled"],
725
- _excluded41 = ["widthHeight", "color", "strokeWidth", "filled"],
700
+ _excluded41 = ["widthHeight", "color", "filled", "strokeWidth"],
726
701
  _excluded42 = ["widthHeight", "color", "filled", "strokeWidth"],
727
702
  _excluded43 = ["widthHeight", "color", "filled", "strokeWidth"],
728
703
  _excluded44 = ["widthHeight", "color", "filled", "strokeWidth"],
@@ -734,9 +709,9 @@ var _excluded$3 = ["widthHeight", "color", "transform", "orientation", "children
734
709
  _excluded50 = ["widthHeight", "color", "filled", "strokeWidth"],
735
710
  _excluded51 = ["widthHeight", "color", "filled", "strokeWidth"],
736
711
  _excluded52 = ["widthHeight", "color", "filled", "strokeWidth"],
737
- _excluded53 = ["widthHeight", "color", "filled", "strokeWidth"],
712
+ _excluded53 = ["widthHeight", "color", "strokeWidth", "filled"],
738
713
  _excluded54 = ["widthHeight", "color", "strokeWidth", "filled"],
739
- _excluded55 = ["widthHeight", "color", "strokeWidth", "filled"],
714
+ _excluded55 = ["widthHeight", "color", "filled", "strokeWidth"],
740
715
  _excluded56 = ["widthHeight", "color", "filled", "strokeWidth"],
741
716
  _excluded57 = ["widthHeight", "color", "filled", "strokeWidth"],
742
717
  _excluded58 = ["widthHeight", "color", "filled", "strokeWidth"],
@@ -754,8 +729,8 @@ var _excluded$3 = ["widthHeight", "color", "transform", "orientation", "children
754
729
  _excluded70 = ["widthHeight", "color", "filled", "strokeWidth"],
755
730
  _excluded71 = ["widthHeight", "color", "filled", "strokeWidth"],
756
731
  _excluded72 = ["widthHeight", "color", "filled", "strokeWidth"],
757
- _excluded73 = ["widthHeight", "color", "filled", "strokeWidth"],
758
- _excluded74 = ["widthHeight", "color", "filled", "strokeWidth"],
732
+ _excluded73 = ["widthHeight", "color", "strokeWidth", "filled"],
733
+ _excluded74 = ["widthHeight", "color", "strokeWidth", "filled"],
759
734
  _excluded75 = ["widthHeight", "color", "strokeWidth", "filled"],
760
735
  _excluded76 = ["widthHeight", "color", "strokeWidth", "filled"],
761
736
  _excluded77 = ["widthHeight", "color", "strokeWidth", "filled"],
@@ -767,9 +742,7 @@ var _excluded$3 = ["widthHeight", "color", "transform", "orientation", "children
767
742
  _excluded83 = ["widthHeight", "color", "strokeWidth", "filled"],
768
743
  _excluded84 = ["widthHeight", "color", "strokeWidth", "filled"],
769
744
  _excluded85 = ["widthHeight", "color", "strokeWidth", "filled"],
770
- _excluded86 = ["widthHeight", "color", "strokeWidth", "filled"],
771
- _excluded87 = ["widthHeight", "color", "strokeWidth", "filled"],
772
- _excluded88 = ["widthHeight", "color", "strokeWidth", "filled"];
745
+ _excluded86 = ["widthHeight", "color", "strokeWidth", "filled"];
773
746
  // Default wrapper component for consistent sizing and styling
774
747
  var IconWrapper = _ref => {
775
748
  var {
@@ -812,12 +785,21 @@ var UserIcon = _ref2 => {
812
785
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
813
786
  widthHeight: widthHeight,
814
787
  color: color
815
- }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
788
+ }, props), /*#__PURE__*/React__default.createElement("svg", {
816
789
  viewBox: "0 0 24 24",
817
790
  "aria-hidden": "true",
818
- focusable: "false"
819
- }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
820
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"
791
+ focusable: "false",
792
+ fill: filled ? color : 'none',
793
+ stroke: filled ? 'none' : color,
794
+ strokeWidth: strokeWidth,
795
+ strokeLinecap: "round",
796
+ strokeLinejoin: "round"
797
+ }, /*#__PURE__*/React__default.createElement("circle", {
798
+ cx: "12",
799
+ cy: "8",
800
+ r: "4"
801
+ }), /*#__PURE__*/React__default.createElement("path", {
802
+ d: "M4 20c0-4 4-7 8-7s8 3 8 7"
821
803
  })));
822
804
  };
823
805
  var HelpIcon = _ref3 => {
@@ -964,7 +946,8 @@ var ChevronIcon = _ref5 => {
964
946
  "aria-hidden": "true",
965
947
  focusable: "false"
966
948
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
967
- d: "M12.771 7.115a.829.829 0 0 0-1.2 0L3 15.686l1.2 1.2 7.971-7.971 7.972 7.971 1.2-1.2-8.572-8.571Z"
949
+ d: "M7.41 15.41L12 10.83L16.59 15.41L18 14L12 8L6 14L7.41 15.41Z",
950
+ fill: "currentColor"
968
951
  })));
969
952
  };
970
953
  var DragHandleIcon = _ref6 => {
@@ -1008,32 +991,28 @@ var DragHandleIcon = _ref6 => {
1008
991
  r: "2"
1009
992
  }))));
1010
993
  };
1011
- // File Icon Component
1012
994
  var FileIcon = _ref7 => {
1013
995
  var {
1014
996
  widthHeight = 24,
1015
997
  color = 'currentColor',
1016
- filled = true,
998
+ filled = false,
1017
999
  strokeWidth = 1
1018
1000
  } = _ref7,
1019
1001
  props = _objectWithoutPropertiesLoose(_ref7, _excluded7);
1020
1002
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
1021
1003
  widthHeight: widthHeight,
1022
1004
  color: color
1023
- }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
1005
+ }, props), /*#__PURE__*/React__default.createElement("svg", {
1024
1006
  viewBox: "0 0 24 24",
1025
1007
  "aria-hidden": "true",
1026
- focusable: "false"
1027
- }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
1028
- d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6z",
1008
+ focusable: "false",
1029
1009
  fill: filled ? color : 'none',
1030
1010
  stroke: filled ? 'none' : color,
1031
- strokeWidth: filled ? 0 : strokeWidth
1032
- }), /*#__PURE__*/React__default.createElement("polyline", {
1033
- points: "14 2 14 8 20 8",
1034
- fill: "none",
1035
- stroke: color,
1036
1011
  strokeWidth: strokeWidth
1012
+ }, /*#__PURE__*/React__default.createElement("path", {
1013
+ d: "M6 2H14L20 8V20C20 21.1 19.1 22 18 22H6C4.9 22 4 21.1 4 20V4C4 2.9 4.9 2 6 2Z"
1014
+ }), /*#__PURE__*/React__default.createElement("path", {
1015
+ d: "M14 2V8H20"
1037
1016
  })));
1038
1017
  };
1039
1018
  // Video Icon Component
@@ -1187,7 +1166,7 @@ var CloseIcon = _ref13 => {
1187
1166
  widthHeight = 24,
1188
1167
  color = 'currentColor',
1189
1168
  filled = false,
1190
- strokeWidth = 1
1169
+ strokeWidth = 2
1191
1170
  } = _ref13,
1192
1171
  props = _objectWithoutPropertiesLoose(_ref13, _excluded13);
1193
1172
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
@@ -1837,7 +1816,7 @@ var MagicWandIcon = _ref39 => {
1837
1816
  d: "M16 15L16.7 16.5L18 17L16.7 17.5L16 19L15.3 17.5L14 17L15.3 16.5L16 15Z"
1838
1817
  })));
1839
1818
  };
1840
- var SliderVerticalIcon = _ref40 => {
1819
+ var PanelIcon = _ref40 => {
1841
1820
  var {
1842
1821
  widthHeight = 24,
1843
1822
  color = 'currentColor',
@@ -1852,77 +1831,6 @@ var SliderVerticalIcon = _ref40 => {
1852
1831
  viewBox: "0 0 24 24",
1853
1832
  "aria-hidden": "false",
1854
1833
  focusable: "false"
1855
- }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("line", {
1856
- stroke: color,
1857
- x1: "4",
1858
- y1: "21",
1859
- x2: "4",
1860
- y2: "14"
1861
- }), /*#__PURE__*/React__default.createElement("line", {
1862
- stroke: color,
1863
- x1: "4",
1864
- y1: "10",
1865
- x2: "4",
1866
- y2: "3"
1867
- }), /*#__PURE__*/React__default.createElement("line", {
1868
- stroke: color,
1869
- x1: "12",
1870
- y1: "21",
1871
- x2: "12",
1872
- y2: "12"
1873
- }), /*#__PURE__*/React__default.createElement("line", {
1874
- stroke: color,
1875
- x1: "12",
1876
- y1: "8",
1877
- x2: "12",
1878
- y2: "3"
1879
- }), /*#__PURE__*/React__default.createElement("line", {
1880
- stroke: color,
1881
- x1: "20",
1882
- y1: "21",
1883
- x2: "20",
1884
- y2: "16"
1885
- }), /*#__PURE__*/React__default.createElement("line", {
1886
- stroke: color,
1887
- x1: "20",
1888
- y1: "12",
1889
- x2: "20",
1890
- y2: "3"
1891
- }), /*#__PURE__*/React__default.createElement("line", {
1892
- stroke: color,
1893
- x1: "1",
1894
- y1: "14",
1895
- x2: "7",
1896
- y2: "14"
1897
- }), /*#__PURE__*/React__default.createElement("line", {
1898
- stroke: color,
1899
- x1: "9",
1900
- y1: "8",
1901
- x2: "15",
1902
- y2: "8"
1903
- }), /*#__PURE__*/React__default.createElement("line", {
1904
- stroke: color,
1905
- x1: "17",
1906
- y1: "16",
1907
- x2: "23",
1908
- y2: "16"
1909
- })));
1910
- };
1911
- var PanelIcon = _ref41 => {
1912
- var {
1913
- widthHeight = 24,
1914
- color = 'currentColor',
1915
- strokeWidth = 1,
1916
- filled = false
1917
- } = _ref41,
1918
- props = _objectWithoutPropertiesLoose(_ref41, _excluded41);
1919
- return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
1920
- widthHeight: widthHeight,
1921
- color: color
1922
- }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
1923
- viewBox: "0 0 24 24",
1924
- "aria-hidden": "false",
1925
- focusable: "false"
1926
1834
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("rect", {
1927
1835
  width: "18",
1928
1836
  height: "18",
@@ -1933,14 +1841,14 @@ var PanelIcon = _ref41 => {
1933
1841
  d: "M9 3v18"
1934
1842
  })));
1935
1843
  };
1936
- var FilterIcon = _ref42 => {
1844
+ var FilterIcon = _ref41 => {
1937
1845
  var {
1938
1846
  widthHeight = 24,
1939
1847
  color = 'currentColor',
1940
1848
  filled = false,
1941
1849
  strokeWidth = 1
1942
- } = _ref42,
1943
- props = _objectWithoutPropertiesLoose(_ref42, _excluded42);
1850
+ } = _ref41,
1851
+ props = _objectWithoutPropertiesLoose(_ref41, _excluded41);
1944
1852
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
1945
1853
  widthHeight: widthHeight,
1946
1854
  color: color
@@ -1952,14 +1860,14 @@ var FilterIcon = _ref42 => {
1952
1860
  d: "M3 4h18l-7 10v5l-4 2v-7L3 4z"
1953
1861
  })));
1954
1862
  };
1955
- var HomeIcon = _ref43 => {
1863
+ var HomeIcon = _ref42 => {
1956
1864
  var {
1957
1865
  widthHeight = 24,
1958
1866
  color = 'currentColor',
1959
1867
  filled = true,
1960
1868
  strokeWidth = 1
1961
- } = _ref43,
1962
- props = _objectWithoutPropertiesLoose(_ref43, _excluded43);
1869
+ } = _ref42,
1870
+ props = _objectWithoutPropertiesLoose(_ref42, _excluded42);
1963
1871
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
1964
1872
  widthHeight: widthHeight,
1965
1873
  color: color
@@ -1971,14 +1879,14 @@ var HomeIcon = _ref43 => {
1971
1879
  d: "M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8h5z"
1972
1880
  })));
1973
1881
  };
1974
- var LocationIcon = _ref44 => {
1882
+ var LocationIcon = _ref43 => {
1975
1883
  var {
1976
1884
  widthHeight = 24,
1977
1885
  color = 'currentColor',
1978
1886
  filled = true,
1979
1887
  strokeWidth = 1
1980
- } = _ref44,
1981
- props = _objectWithoutPropertiesLoose(_ref44, _excluded44);
1888
+ } = _ref43,
1889
+ props = _objectWithoutPropertiesLoose(_ref43, _excluded43);
1982
1890
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
1983
1891
  widthHeight: widthHeight,
1984
1892
  color: color
@@ -1990,14 +1898,14 @@ var LocationIcon = _ref44 => {
1990
1898
  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"
1991
1899
  })));
1992
1900
  };
1993
- var LockIcon = _ref45 => {
1901
+ var LockIcon = _ref44 => {
1994
1902
  var {
1995
1903
  widthHeight = 24,
1996
1904
  color = 'currentColor',
1997
1905
  filled = false,
1998
1906
  strokeWidth = 1
1999
- } = _ref45,
2000
- props = _objectWithoutPropertiesLoose(_ref45, _excluded45);
1907
+ } = _ref44,
1908
+ props = _objectWithoutPropertiesLoose(_ref44, _excluded44);
2001
1909
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2002
1910
  widthHeight: widthHeight,
2003
1911
  color: color
@@ -2022,14 +1930,14 @@ var LockIcon = _ref45 => {
2022
1930
  r: "1.5"
2023
1931
  })))));
2024
1932
  };
2025
- var MicrophoneIcon = _ref46 => {
1933
+ var MicrophoneIcon = _ref45 => {
2026
1934
  var {
2027
1935
  widthHeight = 24,
2028
1936
  color = 'currentColor',
2029
1937
  filled = false,
2030
1938
  strokeWidth = 1
2031
- } = _ref46,
2032
- props = _objectWithoutPropertiesLoose(_ref46, _excluded46);
1939
+ } = _ref45,
1940
+ props = _objectWithoutPropertiesLoose(_ref45, _excluded45);
2033
1941
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2034
1942
  widthHeight: widthHeight,
2035
1943
  color: color
@@ -2055,14 +1963,14 @@ var MicrophoneIcon = _ref46 => {
2055
1963
  y2: "23"
2056
1964
  })));
2057
1965
  };
2058
- var MoonIcon = _ref47 => {
1966
+ var MoonIcon = _ref46 => {
2059
1967
  var {
2060
1968
  widthHeight = 24,
2061
1969
  color = 'currentColor',
2062
1970
  filled = true,
2063
1971
  strokeWidth = 1
2064
- } = _ref47,
2065
- props = _objectWithoutPropertiesLoose(_ref47, _excluded47);
1972
+ } = _ref46,
1973
+ props = _objectWithoutPropertiesLoose(_ref46, _excluded46);
2066
1974
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2067
1975
  widthHeight: widthHeight,
2068
1976
  color: color
@@ -2074,14 +1982,14 @@ var MoonIcon = _ref47 => {
2074
1982
  d: "M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"
2075
1983
  })));
2076
1984
  };
2077
- var NotificationIcon = _ref48 => {
1985
+ var NotificationIcon = _ref47 => {
2078
1986
  var {
2079
1987
  widthHeight = 24,
2080
1988
  color = 'currentColor',
2081
1989
  filled = false,
2082
1990
  strokeWidth = 1
2083
- } = _ref48,
2084
- props = _objectWithoutPropertiesLoose(_ref48, _excluded48);
1991
+ } = _ref47,
1992
+ props = _objectWithoutPropertiesLoose(_ref47, _excluded47);
2085
1993
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2086
1994
  widthHeight: widthHeight,
2087
1995
  color: color
@@ -2095,14 +2003,14 @@ var NotificationIcon = _ref48 => {
2095
2003
  d: "M13.73 21a2 2 0 0 1-3.46 0"
2096
2004
  })));
2097
2005
  };
2098
- var OpenEyeIcon = _ref49 => {
2006
+ var OpenEyeIcon = _ref48 => {
2099
2007
  var {
2100
2008
  widthHeight = 24,
2101
2009
  color = 'currentColor',
2102
2010
  filled = true,
2103
2011
  strokeWidth = 1
2104
- } = _ref49,
2105
- props = _objectWithoutPropertiesLoose(_ref49, _excluded49);
2012
+ } = _ref48,
2013
+ props = _objectWithoutPropertiesLoose(_ref48, _excluded48);
2106
2014
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2107
2015
  widthHeight: widthHeight,
2108
2016
  color: color
@@ -2114,14 +2022,14 @@ var OpenEyeIcon = _ref49 => {
2114
2022
  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"
2115
2023
  })));
2116
2024
  };
2117
- var ProfileIcon = _ref50 => {
2025
+ var ProfileIcon = _ref49 => {
2118
2026
  var {
2119
2027
  widthHeight = 24,
2120
2028
  color = 'currentColor',
2121
2029
  filled = true,
2122
2030
  strokeWidth = 1
2123
- } = _ref50,
2124
- props = _objectWithoutPropertiesLoose(_ref50, _excluded50);
2031
+ } = _ref49,
2032
+ props = _objectWithoutPropertiesLoose(_ref49, _excluded49);
2125
2033
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2126
2034
  widthHeight: widthHeight,
2127
2035
  color: color
@@ -2134,14 +2042,14 @@ var ProfileIcon = _ref50 => {
2134
2042
  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"
2135
2043
  }), ' '));
2136
2044
  };
2137
- var SettingsIcon = _ref51 => {
2045
+ var SettingsIcon = _ref50 => {
2138
2046
  var {
2139
2047
  widthHeight = 24,
2140
2048
  color = 'currentColor',
2141
2049
  filled = false,
2142
2050
  strokeWidth = 1
2143
- } = _ref51,
2144
- props = _objectWithoutPropertiesLoose(_ref51, _excluded51);
2051
+ } = _ref50,
2052
+ props = _objectWithoutPropertiesLoose(_ref50, _excluded50);
2145
2053
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2146
2054
  widthHeight: widthHeight,
2147
2055
  color: color
@@ -2153,14 +2061,14 @@ var SettingsIcon = _ref51 => {
2153
2061
  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"
2154
2062
  })));
2155
2063
  };
2156
- var SuccessIcon = _ref52 => {
2064
+ var SuccessIcon = _ref51 => {
2157
2065
  var {
2158
2066
  widthHeight = 24,
2159
2067
  color = 'currentColor',
2160
2068
  filled = true,
2161
2069
  strokeWidth = 1
2162
- } = _ref52,
2163
- props = _objectWithoutPropertiesLoose(_ref52, _excluded52);
2070
+ } = _ref51,
2071
+ props = _objectWithoutPropertiesLoose(_ref51, _excluded51);
2164
2072
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2165
2073
  widthHeight: widthHeight,
2166
2074
  color: color
@@ -2172,14 +2080,14 @@ var SuccessIcon = _ref52 => {
2172
2080
  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"
2173
2081
  })));
2174
2082
  };
2175
- var UnLikeIcon = _ref53 => {
2083
+ var UnLikeIcon = _ref52 => {
2176
2084
  var {
2177
2085
  widthHeight = 24,
2178
2086
  color = 'currentColor',
2179
2087
  filled = true,
2180
2088
  strokeWidth = 1
2181
- } = _ref53,
2182
- props = _objectWithoutPropertiesLoose(_ref53, _excluded53);
2089
+ } = _ref52,
2090
+ props = _objectWithoutPropertiesLoose(_ref52, _excluded52);
2183
2091
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2184
2092
  widthHeight: widthHeight,
2185
2093
  color: color
@@ -2191,14 +2099,14 @@ var UnLikeIcon = _ref53 => {
2191
2099
  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"
2192
2100
  })));
2193
2101
  };
2194
- var ClockIcon = _ref54 => {
2102
+ var ClockIcon = _ref53 => {
2195
2103
  var {
2196
2104
  widthHeight = 24,
2197
2105
  color = 'currentColor',
2198
2106
  strokeWidth = 1,
2199
2107
  filled = false
2200
- } = _ref54,
2201
- props = _objectWithoutPropertiesLoose(_ref54, _excluded54);
2108
+ } = _ref53,
2109
+ props = _objectWithoutPropertiesLoose(_ref53, _excluded53);
2202
2110
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2203
2111
  widthHeight: widthHeight,
2204
2112
  color: color
@@ -2214,14 +2122,14 @@ var ClockIcon = _ref54 => {
2214
2122
  points: "12 6 12 12 16 14"
2215
2123
  })));
2216
2124
  };
2217
- var CameraIcon = _ref55 => {
2125
+ var CameraIcon = _ref54 => {
2218
2126
  var {
2219
2127
  widthHeight = 24,
2220
2128
  color = 'currentColor',
2221
2129
  strokeWidth = 1,
2222
2130
  filled = false
2223
- } = _ref55,
2224
- props = _objectWithoutPropertiesLoose(_ref55, _excluded55);
2131
+ } = _ref54,
2132
+ props = _objectWithoutPropertiesLoose(_ref54, _excluded54);
2225
2133
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2226
2134
  widthHeight: widthHeight,
2227
2135
  color: color
@@ -2237,14 +2145,14 @@ var CameraIcon = _ref55 => {
2237
2145
  r: "4"
2238
2146
  })));
2239
2147
  };
2240
- var BluetoothIcon = _ref56 => {
2148
+ var BluetoothIcon = _ref55 => {
2241
2149
  var {
2242
2150
  widthHeight = 24,
2243
2151
  color = 'currentColor',
2244
2152
  filled = true,
2245
2153
  strokeWidth = 1
2246
- } = _ref56,
2247
- props = _objectWithoutPropertiesLoose(_ref56, _excluded56);
2154
+ } = _ref55,
2155
+ props = _objectWithoutPropertiesLoose(_ref55, _excluded55);
2248
2156
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2249
2157
  widthHeight: widthHeight,
2250
2158
  color: color
@@ -2256,14 +2164,14 @@ var BluetoothIcon = _ref56 => {
2256
2164
  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"
2257
2165
  })));
2258
2166
  };
2259
- var LikeIcon = _ref57 => {
2167
+ var LikeIcon = _ref56 => {
2260
2168
  var {
2261
2169
  widthHeight = 24,
2262
2170
  color = 'currentColor',
2263
2171
  filled = true,
2264
2172
  strokeWidth = 1
2265
- } = _ref57,
2266
- props = _objectWithoutPropertiesLoose(_ref57, _excluded57);
2173
+ } = _ref56,
2174
+ props = _objectWithoutPropertiesLoose(_ref56, _excluded56);
2267
2175
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2268
2176
  widthHeight: widthHeight,
2269
2177
  color: color
@@ -2275,14 +2183,14 @@ var LikeIcon = _ref57 => {
2275
2183
  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"
2276
2184
  })));
2277
2185
  };
2278
- var UnlockIcon = _ref58 => {
2186
+ var UnlockIcon = _ref57 => {
2279
2187
  var {
2280
2188
  widthHeight = 24,
2281
2189
  color = 'currentColor',
2282
2190
  filled = false,
2283
2191
  strokeWidth = 1
2284
- } = _ref58,
2285
- props = _objectWithoutPropertiesLoose(_ref58, _excluded58);
2192
+ } = _ref57,
2193
+ props = _objectWithoutPropertiesLoose(_ref57, _excluded57);
2286
2194
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2287
2195
  widthHeight: widthHeight,
2288
2196
  color: color
@@ -2307,14 +2215,14 @@ var UnlockIcon = _ref58 => {
2307
2215
  r: "1.5"
2308
2216
  })))));
2309
2217
  };
2310
- var WifiIcon = _ref59 => {
2218
+ var WifiIcon = _ref58 => {
2311
2219
  var {
2312
2220
  widthHeight = 24,
2313
2221
  color = 'currentColor',
2314
2222
  filled = false,
2315
2223
  strokeWidth = 1
2316
- } = _ref59,
2317
- props = _objectWithoutPropertiesLoose(_ref59, _excluded59);
2224
+ } = _ref58,
2225
+ props = _objectWithoutPropertiesLoose(_ref58, _excluded58);
2318
2226
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2319
2227
  widthHeight: widthHeight,
2320
2228
  color: color
@@ -2326,14 +2234,14 @@ var WifiIcon = _ref59 => {
2326
2234
  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"
2327
2235
  })));
2328
2236
  };
2329
- var UploadIcon = _ref60 => {
2237
+ var UploadIcon = _ref59 => {
2330
2238
  var {
2331
2239
  widthHeight = 24,
2332
2240
  color = 'currentColor',
2333
2241
  filled = false,
2334
2242
  strokeWidth = 1
2335
- } = _ref60,
2336
- props = _objectWithoutPropertiesLoose(_ref60, _excluded60);
2243
+ } = _ref59,
2244
+ props = _objectWithoutPropertiesLoose(_ref59, _excluded59);
2337
2245
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2338
2246
  widthHeight: widthHeight,
2339
2247
  color: color
@@ -2349,14 +2257,14 @@ var UploadIcon = _ref60 => {
2349
2257
  d: "M12 12l0 9"
2350
2258
  })));
2351
2259
  };
2352
- var SearchIcon = _ref61 => {
2260
+ var SearchIcon = _ref60 => {
2353
2261
  var {
2354
2262
  widthHeight = 24,
2355
2263
  color = 'currentColor',
2356
2264
  filled = true,
2357
2265
  strokeWidth = 1
2358
- } = _ref61,
2359
- props = _objectWithoutPropertiesLoose(_ref61, _excluded61);
2266
+ } = _ref60,
2267
+ props = _objectWithoutPropertiesLoose(_ref60, _excluded60);
2360
2268
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2361
2269
  widthHeight: widthHeight,
2362
2270
  color: color
@@ -2369,14 +2277,14 @@ var SearchIcon = _ref61 => {
2369
2277
  })));
2370
2278
  };
2371
2279
  // Stop Icon (rectangle) for stopping agent
2372
- var StopIcon = _ref62 => {
2280
+ var StopIcon = _ref61 => {
2373
2281
  var {
2374
2282
  widthHeight = 24,
2375
2283
  color = 'currentColor',
2376
2284
  filled = true,
2377
2285
  strokeWidth = 2
2378
- } = _ref62,
2379
- props = _objectWithoutPropertiesLoose(_ref62, _excluded62);
2286
+ } = _ref61,
2287
+ props = _objectWithoutPropertiesLoose(_ref61, _excluded61);
2380
2288
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2381
2289
  widthHeight: widthHeight,
2382
2290
  color: color
@@ -2394,14 +2302,14 @@ var StopIcon = _ref62 => {
2394
2302
  })));
2395
2303
  };
2396
2304
  // Send Icon (paper airplane) for chat submit
2397
- var SendIcon = _ref63 => {
2305
+ var SendIcon = _ref62 => {
2398
2306
  var {
2399
2307
  widthHeight = 24,
2400
2308
  color = 'currentColor',
2401
2309
  filled = false,
2402
2310
  strokeWidth = 2
2403
- } = _ref63,
2404
- props = _objectWithoutPropertiesLoose(_ref63, _excluded63);
2311
+ } = _ref62,
2312
+ props = _objectWithoutPropertiesLoose(_ref62, _excluded62);
2405
2313
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2406
2314
  widthHeight: widthHeight,
2407
2315
  color: color
@@ -2419,14 +2327,14 @@ var SendIcon = _ref63 => {
2419
2327
  })));
2420
2328
  };
2421
2329
  // Loading Spinner Icon for agent running indicator
2422
- var LoadingSpinnerIcon = _ref64 => {
2330
+ var LoadingSpinnerIcon = _ref63 => {
2423
2331
  var {
2424
2332
  widthHeight = 24,
2425
2333
  color = 'currentColor',
2426
2334
  filled = false,
2427
2335
  strokeWidth = 2
2428
- } = _ref64,
2429
- props = _objectWithoutPropertiesLoose(_ref64, _excluded64);
2336
+ } = _ref63,
2337
+ props = _objectWithoutPropertiesLoose(_ref63, _excluded63);
2430
2338
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2431
2339
  widthHeight: widthHeight,
2432
2340
  color: color
@@ -2477,14 +2385,14 @@ var LoadingSpinnerIcon = _ref64 => {
2477
2385
  })));
2478
2386
  };
2479
2387
  // Horizontal lines drag handle icon for Tree component
2480
- var DragHandleLinesIcon = _ref65 => {
2388
+ var DragHandleLinesIcon = _ref64 => {
2481
2389
  var {
2482
2390
  widthHeight = 16,
2483
2391
  color = 'currentColor',
2484
2392
  filled = false,
2485
2393
  strokeWidth = 1.5
2486
- } = _ref65,
2487
- props = _objectWithoutPropertiesLoose(_ref65, _excluded65);
2394
+ } = _ref64,
2395
+ props = _objectWithoutPropertiesLoose(_ref64, _excluded64);
2488
2396
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2489
2397
  widthHeight: widthHeight,
2490
2398
  color: color
@@ -2504,36 +2412,14 @@ var DragHandleLinesIcon = _ref65 => {
2504
2412
  strokeLinecap: "round"
2505
2413
  })));
2506
2414
  };
2507
- // ChevronDown Icon for dropdown menus
2508
- var ChevronDownIcon = _ref66 => {
2509
- var {
2510
- widthHeight = 24,
2511
- color = 'currentColor',
2512
- filled = true,
2513
- strokeWidth = 1
2514
- } = _ref66,
2515
- props = _objectWithoutPropertiesLoose(_ref66, _excluded66);
2516
- return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2517
- widthHeight: widthHeight,
2518
- color: color
2519
- }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
2520
- viewBox: "0 0 24 24",
2521
- "aria-hidden": "false",
2522
- focusable: "false"
2523
- }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
2524
- d: "M16.59 8.59L12 13.17L7.41 8.59L6 10L12 16L18 10L16.59 8.59Z",
2525
- fill: "currentColor"
2526
- })));
2527
- };
2528
- // ChevronRight Icon for submenu indicators
2529
- var ChevronRightIcon = _ref67 => {
2415
+ var CloseEyeIcon = _ref65 => {
2530
2416
  var {
2531
2417
  widthHeight = 24,
2532
2418
  color = 'currentColor',
2533
2419
  filled = true,
2534
2420
  strokeWidth = 1
2535
- } = _ref67,
2536
- props = _objectWithoutPropertiesLoose(_ref67, _excluded67);
2421
+ } = _ref65,
2422
+ props = _objectWithoutPropertiesLoose(_ref65, _excluded65);
2537
2423
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2538
2424
  widthHeight: widthHeight,
2539
2425
  color: color
@@ -2542,39 +2428,40 @@ var ChevronRightIcon = _ref67 => {
2542
2428
  "aria-hidden": "false",
2543
2429
  focusable: "false"
2544
2430
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
2545
- d: "M8.59 16.59L13.17 12L8.59 7.41L10 6L16 12L10 18L8.59 16.59Z",
2431
+ d: "M19.7071 5.70711C20.0976 5.31658 20.0976 4.68342 19.7071 4.29289C19.3166 3.90237 18.6834 3.90237 18.2929 4.29289L14.032 8.55382C13.4365 8.20193 12.7418 8 12 8C9.79086 8 8 9.79086 8 12C8 12.7418 8.20193 13.4365 8.55382 14.032L4.29289 18.2929C3.90237 18.6834 3.90237 19.3166 4.29289 19.7071C4.68342 20.0976 5.31658 20.0976 5.70711 19.7071L9.96803 15.4462C10.5635 15.7981 11.2582 16 12 16C14.2091 16 16 14.2091 16 12C16 11.2582 15.7981 10.5635 15.4462 9.96803L19.7071 5.70711ZM12.518 10.0677C12.3528 10.0236 12.1792 10 12 10C10.8954 10 10 10.8954 10 12C10 12.1792 10.0236 12.3528 10.0677 12.518L12.518 10.0677ZM11.482 13.9323L13.9323 11.482C13.9764 11.6472 14 11.8208 14 12C14 13.1046 13.1046 14 12 14C11.8208 14 11.6472 13.9764 11.482 13.9323ZM15.7651 4.8207C14.6287 4.32049 13.3675 4 12 4C9.14754 4 6.75717 5.39462 4.99812 6.90595C3.23268 8.42276 2.00757 10.1376 1.46387 10.9698C1.05306 11.5985 1.05306 12.4015 1.46387 13.0302C1.92276 13.7326 2.86706 15.0637 4.21194 16.3739L5.62626 14.9596C4.4555 13.8229 3.61144 12.6531 3.18002 12C3.6904 11.2274 4.77832 9.73158 6.30147 8.42294C7.87402 7.07185 9.81574 6 12 6C12.7719 6 13.5135 6.13385 14.2193 6.36658L15.7651 4.8207ZM12 18C11.2282 18 10.4866 17.8661 9.78083 17.6334L8.23496 19.1793C9.37136 19.6795 10.6326 20 12 20C14.8525 20 17.2429 18.6054 19.002 17.0941C20.7674 15.5772 21.9925 13.8624 22.5362 13.0302C22.947 12.4015 22.947 11.5985 22.5362 10.9698C22.0773 10.2674 21.133 8.93627 19.7881 7.62611L18.3738 9.04043C19.5446 10.1771 20.3887 11.3469 20.8201 12C20.3097 12.7726 19.2218 14.2684 17.6986 15.5771C16.1261 16.9282 14.1843 18 12 18Z",
2546
2432
  fill: "currentColor"
2547
2433
  })));
2548
2434
  };
2549
- var CloseEyeIcon = _ref68 => {
2435
+ var TrashIcon = DeleteIcon;
2436
+ var AttachmentIcon = _ref66 => {
2550
2437
  var {
2551
2438
  widthHeight = 24,
2552
2439
  color = 'currentColor',
2553
2440
  filled = true,
2554
2441
  strokeWidth = 1
2555
- } = _ref68,
2556
- props = _objectWithoutPropertiesLoose(_ref68, _excluded68);
2442
+ } = _ref66,
2443
+ props = _objectWithoutPropertiesLoose(_ref66, _excluded66);
2557
2444
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2558
2445
  widthHeight: widthHeight,
2559
2446
  color: color
2560
2447
  }, props), /*#__PURE__*/React__default.createElement("svg", Object.assign({
2561
- viewBox: "0 0 24 24",
2562
- "aria-hidden": "false",
2563
- focusable: "false"
2448
+ width: widthHeight,
2449
+ height: widthHeight,
2450
+ viewBox: "0 0 24 24"
2564
2451
  }, getSvgProps(filled, color, strokeWidth)), /*#__PURE__*/React__default.createElement("path", {
2565
- d: "M19.7071 5.70711C20.0976 5.31658 20.0976 4.68342 19.7071 4.29289C19.3166 3.90237 18.6834 3.90237 18.2929 4.29289L14.032 8.55382C13.4365 8.20193 12.7418 8 12 8C9.79086 8 8 9.79086 8 12C8 12.7418 8.20193 13.4365 8.55382 14.032L4.29289 18.2929C3.90237 18.6834 3.90237 19.3166 4.29289 19.7071C4.68342 20.0976 5.31658 20.0976 5.70711 19.7071L9.96803 15.4462C10.5635 15.7981 11.2582 16 12 16C14.2091 16 16 14.2091 16 12C16 11.2582 15.7981 10.5635 15.4462 9.96803L19.7071 5.70711ZM12.518 10.0677C12.3528 10.0236 12.1792 10 12 10C10.8954 10 10 10.8954 10 12C10 12.1792 10.0236 12.3528 10.0677 12.518L12.518 10.0677ZM11.482 13.9323L13.9323 11.482C13.9764 11.6472 14 11.8208 14 12C14 13.1046 13.1046 14 12 14C11.8208 14 11.6472 13.9764 11.482 13.9323ZM15.7651 4.8207C14.6287 4.32049 13.3675 4 12 4C9.14754 4 6.75717 5.39462 4.99812 6.90595C3.23268 8.42276 2.00757 10.1376 1.46387 10.9698C1.05306 11.5985 1.05306 12.4015 1.46387 13.0302C1.92276 13.7326 2.86706 15.0637 4.21194 16.3739L5.62626 14.9596C4.4555 13.8229 3.61144 12.6531 3.18002 12C3.6904 11.2274 4.77832 9.73158 6.30147 8.42294C7.87402 7.07185 9.81574 6 12 6C12.7719 6 13.5135 6.13385 14.2193 6.36658L15.7651 4.8207ZM12 18C11.2282 18 10.4866 17.8661 9.78083 17.6334L8.23496 19.1793C9.37136 19.6795 10.6326 20 12 20C14.8525 20 17.2429 18.6054 19.002 17.0941C20.7674 15.5772 21.9925 13.8624 22.5362 13.0302C22.947 12.4015 22.947 11.5985 22.5362 10.9698C22.0773 10.2674 21.133 8.93627 19.7881 7.62611L18.3738 9.04043C19.5446 10.1771 20.3887 11.3469 20.8201 12C20.3097 12.7726 19.2218 14.2684 17.6986 15.5771C16.1261 16.9282 14.1843 18 12 18Z",
2566
- fill: "currentColor"
2567
- })));
2452
+ // fillRule="evenodd"
2453
+ // clipRule="evenodd"
2454
+ d: "M3.70104 5.15932C3.0938 3.61775 3.85122 1.8758 5.39278 1.26856L5.56558 1.2005C7.10714 0.593259 8.84909 1.35068 9.45633 2.89225L13.071 12.0685C13.4252 12.9677 12.9833 13.9839 12.0841 14.3381L11.9977 14.3721C11.0985 14.7264 10.0823 14.2845 9.72809 13.3853L7.81051 8.5172C7.7093 8.26027 7.83554 7.96995 8.09247 7.86874C8.34939 7.76753 8.63972 7.89377 8.74092 8.1507L10.6585 13.0188C10.8103 13.4042 11.2458 13.5935 11.6312 13.4417L11.7176 13.4077C12.103 13.2559 12.2923 12.8204 12.1405 12.435L8.52592 3.25875C8.12109 2.23104 6.95979 1.72609 5.93208 2.13092L5.75929 2.19898C4.73158 2.60381 4.22663 3.76511 4.63145 4.79282L8.99282 15.8648C9.65066 17.5348 11.5378 18.3554 13.2078 17.6975L13.467 17.5954C15.137 16.9376 15.9576 15.0505 15.2997 13.3804L12.6354 6.61663C12.5342 6.3597 12.6604 6.06938 12.9173 5.96817C13.1743 5.86696 13.4646 5.9932 13.5658 6.25013L16.2301 13.0139C17.0904 15.1978 16.0174 17.6656 13.8335 18.5258L13.5743 18.6279C11.3904 19.4882 8.92266 18.4152 8.0624 16.2313L3.70104 5.15932Z"
2455
+ }), ' '));
2568
2456
  };
2569
- var TrashIcon = DeleteIcon;
2570
- var ExternalLinkIcon = _ref69 => {
2457
+ var ExternalLinkIcon = _ref67 => {
2571
2458
  var {
2572
2459
  widthHeight = 24,
2573
2460
  color = 'currentColor',
2574
2461
  filled = true,
2575
2462
  strokeWidth = 1
2576
- } = _ref69,
2577
- props = _objectWithoutPropertiesLoose(_ref69, _excluded69);
2463
+ } = _ref67,
2464
+ props = _objectWithoutPropertiesLoose(_ref67, _excluded67);
2578
2465
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2579
2466
  widthHeight: widthHeight,
2580
2467
  color: color
@@ -2586,14 +2473,14 @@ var ExternalLinkIcon = _ref69 => {
2586
2473
  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"
2587
2474
  })));
2588
2475
  };
2589
- var PlusIcon = _ref70 => {
2476
+ var PlusIcon = _ref68 => {
2590
2477
  var {
2591
2478
  widthHeight = 24,
2592
2479
  color = 'currentColor',
2593
2480
  filled = false,
2594
2481
  strokeWidth = 1
2595
- } = _ref70,
2596
- props = _objectWithoutPropertiesLoose(_ref70, _excluded70);
2482
+ } = _ref68,
2483
+ props = _objectWithoutPropertiesLoose(_ref68, _excluded68);
2597
2484
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2598
2485
  widthHeight: widthHeight,
2599
2486
  color: color
@@ -2615,14 +2502,14 @@ var PlusIcon = _ref70 => {
2615
2502
  y2: "12"
2616
2503
  })));
2617
2504
  };
2618
- var TickIcon = _ref71 => {
2505
+ var TickIcon = _ref69 => {
2619
2506
  var {
2620
2507
  widthHeight = 24,
2621
2508
  color = 'currentColor',
2622
2509
  filled = false,
2623
2510
  strokeWidth = 1
2624
- } = _ref71,
2625
- props = _objectWithoutPropertiesLoose(_ref71, _excluded71);
2511
+ } = _ref69,
2512
+ props = _objectWithoutPropertiesLoose(_ref69, _excluded69);
2626
2513
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2627
2514
  widthHeight: widthHeight,
2628
2515
  color: color
@@ -2636,14 +2523,14 @@ var TickIcon = _ref71 => {
2636
2523
  strokeLinejoin: "round"
2637
2524
  })));
2638
2525
  };
2639
- var BoldArrowIcon = _ref72 => {
2526
+ var BoldArrowIcon = _ref70 => {
2640
2527
  var {
2641
2528
  widthHeight = 24,
2642
2529
  color = 'currentColor',
2643
2530
  filled = true,
2644
2531
  strokeWidth = 1
2645
- } = _ref72,
2646
- props = _objectWithoutPropertiesLoose(_ref72, _excluded72);
2532
+ } = _ref70,
2533
+ props = _objectWithoutPropertiesLoose(_ref70, _excluded70);
2647
2534
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2648
2535
  widthHeight: widthHeight,
2649
2536
  color: color
@@ -2655,14 +2542,14 @@ var BoldArrowIcon = _ref72 => {
2655
2542
  d: "M12 4l7 7h-4v7h-6v-7H5l7-7z"
2656
2543
  })));
2657
2544
  };
2658
- var ArrowIcon = _ref73 => {
2545
+ var ArrowIcon = _ref71 => {
2659
2546
  var {
2660
2547
  widthHeight = 24,
2661
2548
  color = 'currentColor',
2662
2549
  filled = false,
2663
2550
  strokeWidth = 1
2664
- } = _ref73,
2665
- props = _objectWithoutPropertiesLoose(_ref73, _excluded73);
2551
+ } = _ref71,
2552
+ props = _objectWithoutPropertiesLoose(_ref71, _excluded71);
2666
2553
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2667
2554
  widthHeight: widthHeight,
2668
2555
  color: color
@@ -2680,14 +2567,14 @@ var ArrowIcon = _ref73 => {
2680
2567
  points: "6 12 12 6 18 12"
2681
2568
  })));
2682
2569
  };
2683
- var SpinnerIcon = _ref74 => {
2570
+ var SpinnerIcon = _ref72 => {
2684
2571
  var {
2685
2572
  widthHeight = 24,
2686
2573
  color = 'currentColor',
2687
2574
  filled = false,
2688
2575
  strokeWidth = 1
2689
- } = _ref74,
2690
- props = _objectWithoutPropertiesLoose(_ref74, _excluded74);
2576
+ } = _ref72,
2577
+ props = _objectWithoutPropertiesLoose(_ref72, _excluded72);
2691
2578
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2692
2579
  widthHeight: widthHeight,
2693
2580
  color: color
@@ -2705,14 +2592,14 @@ var SpinnerIcon = _ref74 => {
2705
2592
  strokeOpacity: "1"
2706
2593
  })));
2707
2594
  };
2708
- var CalendarIcon = _ref75 => {
2595
+ var CalendarIcon = _ref73 => {
2709
2596
  var {
2710
2597
  widthHeight = 24,
2711
2598
  color = 'currentColor',
2712
2599
  strokeWidth = 1,
2713
2600
  filled = false
2714
- } = _ref75,
2715
- props = _objectWithoutPropertiesLoose(_ref75, _excluded75);
2601
+ } = _ref73,
2602
+ props = _objectWithoutPropertiesLoose(_ref73, _excluded73);
2716
2603
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2717
2604
  widthHeight: widthHeight,
2718
2605
  color: color
@@ -2747,14 +2634,14 @@ var CalendarIcon = _ref75 => {
2747
2634
  y2: "10"
2748
2635
  })));
2749
2636
  };
2750
- var SliderIcon = _ref76 => {
2637
+ var SliderIcon = _ref74 => {
2751
2638
  var {
2752
2639
  widthHeight = 24,
2753
2640
  color = 'currentColor',
2754
2641
  strokeWidth = 1,
2755
2642
  filled = false
2756
- } = _ref76,
2757
- props = _objectWithoutPropertiesLoose(_ref76, _excluded76);
2643
+ } = _ref74,
2644
+ props = _objectWithoutPropertiesLoose(_ref74, _excluded74);
2758
2645
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2759
2646
  widthHeight: widthHeight,
2760
2647
  color: color
@@ -2782,16 +2669,6 @@ var SliderIcon = _ref76 => {
2782
2669
  y1: "12",
2783
2670
  x2: "21",
2784
2671
  y2: "12"
2785
- }), /*#__PURE__*/React__default.createElement("line", {
2786
- x1: "3",
2787
- y1: "20",
2788
- x2: "8",
2789
- y2: "20"
2790
- }), /*#__PURE__*/React__default.createElement("line", {
2791
- x1: "12",
2792
- y1: "20",
2793
- x2: "21",
2794
- y2: "20"
2795
2672
  }), /*#__PURE__*/React__default.createElement("line", {
2796
2673
  x1: "10",
2797
2674
  y1: "1",
@@ -2802,21 +2679,16 @@ var SliderIcon = _ref76 => {
2802
2679
  y1: "9",
2803
2680
  x2: "16",
2804
2681
  y2: "15"
2805
- }), /*#__PURE__*/React__default.createElement("line", {
2806
- x1: "8",
2807
- y1: "17",
2808
- x2: "8",
2809
- y2: "23"
2810
2682
  })));
2811
2683
  };
2812
- var CropIcon = _ref77 => {
2684
+ var CropIcon = _ref75 => {
2813
2685
  var {
2814
2686
  widthHeight = 24,
2815
2687
  color = 'currentColor',
2816
2688
  strokeWidth = 1,
2817
2689
  filled = false
2818
- } = _ref77,
2819
- props = _objectWithoutPropertiesLoose(_ref77, _excluded77);
2690
+ } = _ref75,
2691
+ props = _objectWithoutPropertiesLoose(_ref75, _excluded75);
2820
2692
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2821
2693
  widthHeight: widthHeight,
2822
2694
  color: color
@@ -2830,14 +2702,14 @@ var CropIcon = _ref77 => {
2830
2702
  d: "M18 22V8a2 2 0 0 0-2-2H2"
2831
2703
  })));
2832
2704
  };
2833
- var ZoomInIcon = _ref78 => {
2705
+ var ZoomInIcon = _ref76 => {
2834
2706
  var {
2835
2707
  widthHeight = 24,
2836
2708
  color = 'currentColor',
2837
2709
  strokeWidth = 1,
2838
2710
  filled = false
2839
- } = _ref78,
2840
- props = _objectWithoutPropertiesLoose(_ref78, _excluded78);
2711
+ } = _ref76,
2712
+ props = _objectWithoutPropertiesLoose(_ref76, _excluded76);
2841
2713
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2842
2714
  widthHeight: widthHeight,
2843
2715
  color: color
@@ -2866,14 +2738,14 @@ var ZoomInIcon = _ref78 => {
2866
2738
  y2: "11"
2867
2739
  })));
2868
2740
  };
2869
- var ZoomOutIcon = _ref79 => {
2741
+ var ZoomOutIcon = _ref77 => {
2870
2742
  var {
2871
2743
  widthHeight = 24,
2872
2744
  color = 'currentColor',
2873
2745
  strokeWidth = 1,
2874
2746
  filled = false
2875
- } = _ref79,
2876
- props = _objectWithoutPropertiesLoose(_ref79, _excluded79);
2747
+ } = _ref77,
2748
+ props = _objectWithoutPropertiesLoose(_ref77, _excluded77);
2877
2749
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2878
2750
  widthHeight: widthHeight,
2879
2751
  color: color
@@ -2897,14 +2769,14 @@ var ZoomOutIcon = _ref79 => {
2897
2769
  y2: "11"
2898
2770
  })));
2899
2771
  };
2900
- var TextIcon = _ref80 => {
2772
+ var TextIcon = _ref78 => {
2901
2773
  var {
2902
2774
  widthHeight = 24,
2903
2775
  color = 'currentColor',
2904
2776
  strokeWidth = 1,
2905
2777
  filled = false
2906
- } = _ref80,
2907
- props = _objectWithoutPropertiesLoose(_ref80, _excluded80);
2778
+ } = _ref78,
2779
+ props = _objectWithoutPropertiesLoose(_ref78, _excluded78);
2908
2780
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2909
2781
  widthHeight: widthHeight,
2910
2782
  color: color
@@ -2929,14 +2801,14 @@ var TextIcon = _ref80 => {
2929
2801
  y2: "18"
2930
2802
  })));
2931
2803
  };
2932
- var ShapeIcon = _ref81 => {
2804
+ var ShapeIcon = _ref79 => {
2933
2805
  var {
2934
2806
  widthHeight = 24,
2935
2807
  color = 'currentColor',
2936
2808
  strokeWidth = 1,
2937
2809
  filled = false
2938
- } = _ref81,
2939
- props = _objectWithoutPropertiesLoose(_ref81, _excluded81);
2810
+ } = _ref79,
2811
+ props = _objectWithoutPropertiesLoose(_ref79, _excluded79);
2940
2812
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2941
2813
  widthHeight: widthHeight,
2942
2814
  color: color
@@ -2957,14 +2829,14 @@ var ShapeIcon = _ref81 => {
2957
2829
  points: "16,4 19,8 13,8"
2958
2830
  })));
2959
2831
  };
2960
- var RotateIcon = _ref82 => {
2832
+ var RotateIcon = _ref80 => {
2961
2833
  var {
2962
2834
  widthHeight = 24,
2963
2835
  color = 'currentColor',
2964
2836
  strokeWidth = 1,
2965
2837
  filled = false
2966
- } = _ref82,
2967
- props = _objectWithoutPropertiesLoose(_ref82, _excluded82);
2838
+ } = _ref80,
2839
+ props = _objectWithoutPropertiesLoose(_ref80, _excluded80);
2968
2840
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2969
2841
  widthHeight: widthHeight,
2970
2842
  color: color
@@ -2978,14 +2850,14 @@ var RotateIcon = _ref82 => {
2978
2850
  d: "M3.51 15a9 9 0 1 0 2.13-9.36L1 10"
2979
2851
  })));
2980
2852
  };
2981
- var DocumentIcon = _ref83 => {
2853
+ var DocumentIcon = _ref81 => {
2982
2854
  var {
2983
2855
  widthHeight = 24,
2984
2856
  color = 'currentColor',
2985
2857
  strokeWidth = 1,
2986
2858
  filled = false
2987
- } = _ref83,
2988
- props = _objectWithoutPropertiesLoose(_ref83, _excluded83);
2859
+ } = _ref81,
2860
+ props = _objectWithoutPropertiesLoose(_ref81, _excluded81);
2989
2861
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
2990
2862
  widthHeight: widthHeight,
2991
2863
  color: color
@@ -3011,14 +2883,14 @@ var DocumentIcon = _ref83 => {
3011
2883
  points: "10 9 9 9 8 9"
3012
2884
  })));
3013
2885
  };
3014
- var ChartIcon = _ref84 => {
2886
+ var ChartIcon = _ref82 => {
3015
2887
  var {
3016
2888
  widthHeight = 24,
3017
2889
  color = 'currentColor',
3018
2890
  strokeWidth = 1,
3019
2891
  filled = false
3020
- } = _ref84,
3021
- props = _objectWithoutPropertiesLoose(_ref84, _excluded84);
2892
+ } = _ref82,
2893
+ props = _objectWithoutPropertiesLoose(_ref82, _excluded82);
3022
2894
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
3023
2895
  widthHeight: widthHeight,
3024
2896
  color: color
@@ -3062,14 +2934,14 @@ var ChartIcon = _ref84 => {
3062
2934
  y2: "17"
3063
2935
  })));
3064
2936
  };
3065
- var GiftIcon = _ref85 => {
2937
+ var GiftIcon = _ref83 => {
3066
2938
  var {
3067
2939
  widthHeight = 24,
3068
2940
  color = 'currentColor',
3069
2941
  strokeWidth = 1,
3070
2942
  filled = false
3071
- } = _ref85,
3072
- props = _objectWithoutPropertiesLoose(_ref85, _excluded85);
2943
+ } = _ref83,
2944
+ props = _objectWithoutPropertiesLoose(_ref83, _excluded83);
3073
2945
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
3074
2946
  widthHeight: widthHeight,
3075
2947
  color: color
@@ -3095,14 +2967,14 @@ var GiftIcon = _ref85 => {
3095
2967
  d: "M12 8c.5-2.5 4-3 5-1.5S15 10 12 8z"
3096
2968
  })));
3097
2969
  };
3098
- var ShieldIcon = _ref86 => {
2970
+ var ShieldIcon = _ref84 => {
3099
2971
  var {
3100
2972
  widthHeight = 24,
3101
2973
  color = 'currentColor',
3102
2974
  strokeWidth = 1,
3103
2975
  filled = true
3104
- } = _ref86,
3105
- props = _objectWithoutPropertiesLoose(_ref86, _excluded86);
2976
+ } = _ref84,
2977
+ props = _objectWithoutPropertiesLoose(_ref84, _excluded84);
3106
2978
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
3107
2979
  widthHeight: widthHeight,
3108
2980
  color: color
@@ -3115,14 +2987,14 @@ var ShieldIcon = _ref86 => {
3115
2987
  })));
3116
2988
  };
3117
2989
  var CheckIcon = TickIcon;
3118
- var LogoutIcon = _ref87 => {
2990
+ var LogoutIcon = _ref85 => {
3119
2991
  var {
3120
2992
  widthHeight = 24,
3121
2993
  color = 'currentColor',
3122
2994
  strokeWidth = 1,
3123
2995
  filled = false
3124
- } = _ref87,
3125
- props = _objectWithoutPropertiesLoose(_ref87, _excluded87);
2996
+ } = _ref85,
2997
+ props = _objectWithoutPropertiesLoose(_ref85, _excluded85);
3126
2998
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
3127
2999
  widthHeight: widthHeight,
3128
3000
  color: color
@@ -3138,14 +3010,14 @@ var LogoutIcon = _ref87 => {
3138
3010
  d: "M13 5v-2a1 1 0 0 0-1-1H5a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h7a1 1 0 0 0 1-1v-2"
3139
3011
  })));
3140
3012
  };
3141
- var PowerOffIcon = _ref88 => {
3013
+ var PowerOffIcon = _ref86 => {
3142
3014
  var {
3143
3015
  widthHeight = 24,
3144
3016
  color = 'currentColor',
3145
3017
  strokeWidth = 1.5,
3146
3018
  filled = false
3147
- } = _ref88,
3148
- props = _objectWithoutPropertiesLoose(_ref88, _excluded88);
3019
+ } = _ref86,
3020
+ props = _objectWithoutPropertiesLoose(_ref86, _excluded86);
3149
3021
  return /*#__PURE__*/React__default.createElement(IconWrapper, Object.assign({
3150
3022
  widthHeight: widthHeight,
3151
3023
  color: color
@@ -3204,7 +3076,6 @@ var Icon = {
3204
3076
  RefreshIcon: RefreshIcon,
3205
3077
  PrintIcon: PrintIcon,
3206
3078
  MagicWandIcon: MagicWandIcon,
3207
- SliderVerticalIcon: SliderVerticalIcon,
3208
3079
  PanelIcon: PanelIcon,
3209
3080
  FilterIcon: FilterIcon,
3210
3081
  HomeIcon: HomeIcon,
@@ -3230,10 +3101,9 @@ var Icon = {
3230
3101
  SendIcon: SendIcon,
3231
3102
  LoadingSpinnerIcon: LoadingSpinnerIcon,
3232
3103
  DragHandleLinesIcon: DragHandleLinesIcon,
3233
- ChevronDownIcon: ChevronDownIcon,
3234
- ChevronRightIcon: ChevronRightIcon,
3235
3104
  CloseEyeIcon: CloseEyeIcon,
3236
3105
  TrashIcon: TrashIcon,
3106
+ AttachmentIcon: AttachmentIcon,
3237
3107
  ExternalLinkIcon: ExternalLinkIcon,
3238
3108
  PlusIcon: PlusIcon,
3239
3109
  TickIcon: TickIcon,
@@ -6661,7 +6531,8 @@ var ContextMenuItem = _ref4 => {
6661
6531
  flexGrow: 1
6662
6532
  }, item.label), hasSubmenu && (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
6663
6533
  marginLeft: 8
6664
- }, views == null ? void 0 : views.submenuIndicator), /*#__PURE__*/React__default.createElement(ChevronRightIcon, {
6534
+ }, views == null ? void 0 : views.submenuIndicator), /*#__PURE__*/React__default.createElement(ChevronIcon, {
6535
+ orientation: "right",
6665
6536
  widthHeight: 16,
6666
6537
  color: "currentColor",
6667
6538
  filled: true
@@ -12530,8 +12401,10 @@ var useUpload = _ref => {
12530
12401
  maxSize = 100 * 1024 * 1024,
12531
12402
  // 100MB default
12532
12403
  onFileSelect,
12404
+ onMultipleFileSelect,
12533
12405
  validateFile,
12534
12406
  thumbnail,
12407
+ multiple = false,
12535
12408
  onError = error => {
12536
12409
  showMessage('error', 'Error', error);
12537
12410
  }
@@ -12539,40 +12412,70 @@ var useUpload = _ref => {
12539
12412
  var fileInputRef = React.useRef(null);
12540
12413
  var videoRef = React.useRef(null);
12541
12414
  var [selectedFile, setSelectedFile] = React.useState(null);
12415
+ var [selectedFiles, setSelectedFiles] = React.useState([]);
12542
12416
  var [errorMessage, setErrorMessage] = React.useState(null);
12543
12417
  var [previewUrl, setPreviewUrl] = React.useState(null);
12544
12418
  var [thumbnailUrl, setThumbnailUrl] = React.useState(thumbnail || null);
12545
12419
  var handleFileChange = React.useCallback(event => {
12546
- var _event$target$files;
12547
- var file = (_event$target$files = event.target.files) == null ? void 0 : _event$target$files[0];
12420
+ var files = event.target.files;
12548
12421
  setErrorMessage(null);
12549
- if (!file) {
12422
+ if (!files || files.length === 0) {
12550
12423
  onError('No file selected');
12551
12424
  setErrorMessage('No file selected');
12552
12425
  return;
12553
12426
  }
12554
- if (file.size > maxSize) {
12555
- onError("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12556
- setErrorMessage("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12557
- return;
12558
- }
12559
- if (validateFile) {
12560
- var validationError = validateFile(file);
12561
- if (validationError) {
12562
- onError(validationError);
12563
- setErrorMessage(validationError);
12427
+ if (multiple) {
12428
+ // Handle multiple files
12429
+ var fileArray = Array.from(files);
12430
+ var validFiles = [];
12431
+ for (var file of fileArray) {
12432
+ if (file.size > maxSize) {
12433
+ onError("File " + file.name + " exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12434
+ setErrorMessage("File " + file.name + " exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12435
+ continue;
12436
+ }
12437
+ if (validateFile) {
12438
+ var validationError = validateFile(file);
12439
+ if (validationError) {
12440
+ onError(file.name + ": " + validationError);
12441
+ setErrorMessage(file.name + ": " + validationError);
12442
+ continue;
12443
+ }
12444
+ }
12445
+ validFiles.push(file);
12446
+ }
12447
+ if (validFiles.length > 0) {
12448
+ setSelectedFiles(validFiles);
12449
+ if (onMultipleFileSelect) {
12450
+ onMultipleFileSelect(validFiles);
12451
+ }
12452
+ }
12453
+ } else {
12454
+ // Handle single file (existing logic)
12455
+ var _file = files[0];
12456
+ if (_file.size > maxSize) {
12457
+ onError("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12458
+ setErrorMessage("File exceeds " + Math.round(maxSize / (1024 * 1024)) + "MB.");
12564
12459
  return;
12565
12460
  }
12461
+ if (validateFile) {
12462
+ var _validationError = validateFile(_file);
12463
+ if (_validationError) {
12464
+ onError(_validationError);
12465
+ setErrorMessage(_validationError);
12466
+ return;
12467
+ }
12468
+ }
12469
+ setPreviewUrl(URL.createObjectURL(_file));
12470
+ if (_file.type.startsWith('video/')) {
12471
+ generateThumbnail(_file, setThumbnailUrl);
12472
+ }
12473
+ if (onFileSelect) {
12474
+ setSelectedFile(_file);
12475
+ onFileSelect(_file);
12476
+ }
12566
12477
  }
12567
- setPreviewUrl(URL.createObjectURL(file));
12568
- if (file.type.startsWith('video/')) {
12569
- generateThumbnail(file, setThumbnailUrl);
12570
- }
12571
- if (onFileSelect) {
12572
- setSelectedFile(file);
12573
- onFileSelect(file);
12574
- }
12575
- }, [maxSize, onFileSelect, validateFile]);
12478
+ }, [maxSize, onFileSelect, onMultipleFileSelect, validateFile, multiple]);
12576
12479
  var handleClick = () => {
12577
12480
  var _fileInputRef$current;
12578
12481
  return (_fileInputRef$current = fileInputRef.current) == null ? void 0 : _fileInputRef$current.click();
@@ -12590,6 +12493,7 @@ var useUpload = _ref => {
12590
12493
  fileInputRef,
12591
12494
  videoRef,
12592
12495
  selectedFile,
12496
+ selectedFiles,
12593
12497
  handleFileChange,
12594
12498
  handleClick
12595
12499
  };
@@ -12608,8 +12512,10 @@ var UploadView = _ref => {
12608
12512
  fileInputRef,
12609
12513
  videoRef,
12610
12514
  selectedFile,
12515
+ selectedFiles,
12611
12516
  handleFileChange,
12612
12517
  handleClick,
12518
+ multiple = false,
12613
12519
  containerProps,
12614
12520
  errorMessageProps,
12615
12521
  progressProps,
@@ -12768,13 +12674,14 @@ var UploadView = _ref => {
12768
12674
  ref: fileInputRef,
12769
12675
  onChange: handleFileChange,
12770
12676
  accept: accept,
12677
+ multiple: multiple,
12771
12678
  style: {
12772
12679
  display: 'none'
12773
12680
  }
12774
12681
  }, views == null ? void 0 : views.view)));
12775
12682
  };
12776
12683
 
12777
- var _excluded$H = ["accept", "icon", "text", "maxSize", "onFileSelect", "validateFile", "isLoading", "progress", "fileType"];
12684
+ var _excluded$H = ["accept", "icon", "text", "maxSize", "onFileSelect", "onMultipleFileSelect", "validateFile", "isLoading", "progress", "fileType", "multiple"];
12778
12685
  var Uploader = _ref => {
12779
12686
  var {
12780
12687
  accept = '*/*',
@@ -12782,10 +12689,12 @@ var Uploader = _ref => {
12782
12689
  text,
12783
12690
  maxSize,
12784
12691
  onFileSelect,
12692
+ onMultipleFileSelect,
12785
12693
  validateFile,
12786
12694
  isLoading = false,
12787
12695
  progress = 0,
12788
- fileType
12696
+ fileType,
12697
+ multiple = false
12789
12698
  } = _ref,
12790
12699
  props = _objectWithoutPropertiesLoose(_ref, _excluded$H);
12791
12700
  var {
@@ -12795,13 +12704,16 @@ var Uploader = _ref => {
12795
12704
  videoRef,
12796
12705
  fileInputRef,
12797
12706
  selectedFile,
12707
+ selectedFiles,
12798
12708
  handleFileChange,
12799
12709
  handleClick
12800
12710
  } = useUpload({
12801
12711
  accept,
12802
12712
  maxSize,
12803
12713
  onFileSelect,
12804
- validateFile
12714
+ onMultipleFileSelect,
12715
+ validateFile,
12716
+ multiple
12805
12717
  });
12806
12718
  // Determine file type based on the selected file's MIME type if not explicitly provided
12807
12719
  var determineFileType = () => {
@@ -12829,11 +12741,13 @@ var Uploader = _ref => {
12829
12741
  errorMessage: errorMessage,
12830
12742
  handleFileChange: handleFileChange,
12831
12743
  selectedFile: selectedFile,
12744
+ selectedFiles: selectedFiles,
12832
12745
  videoRef: videoRef,
12833
12746
  fileInputRef: fileInputRef,
12834
12747
  previewUrl: previewUrl,
12835
12748
  thumbnailUrl: thumbnailUrl,
12836
- fileType: detectedFileType
12749
+ fileType: detectedFileType,
12750
+ multiple: multiple
12837
12751
  }, props));
12838
12752
  };
12839
12753
 
@@ -13480,7 +13394,8 @@ var NavigationMenuTrigger = _ref4 => {
13480
13394
  }, children), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
13481
13395
  transition: "transform 0.2s ease",
13482
13396
  transform: isExpanded ? 'rotate(180deg)' : 'rotate(0deg)'
13483
- }, views == null ? void 0 : views.indicator), /*#__PURE__*/React__default.createElement(ChevronDownIcon, {
13397
+ }, views == null ? void 0 : views.indicator), /*#__PURE__*/React__default.createElement(ChevronIcon, {
13398
+ orientation: "down",
13484
13399
  widthHeight: 16,
13485
13400
  color: "currentColor",
13486
13401
  filled: true
@@ -15067,7 +14982,8 @@ var DropdownMenuItem = _ref4 => {
15067
14982
  flexGrow: 1
15068
14983
  }, item.label), hasSubmenu && (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
15069
14984
  marginLeft: 8
15070
- }, views == null ? void 0 : views.submenuIndicator), /*#__PURE__*/React__default.createElement(ChevronRightIcon, {
14985
+ }, views == null ? void 0 : views.submenuIndicator), /*#__PURE__*/React__default.createElement(ChevronIcon, {
14986
+ orientation: "right",
15071
14987
  widthHeight: 16,
15072
14988
  color: "currentColor",
15073
14989
  filled: true
@@ -21127,6 +21043,7 @@ var useChatInputState = props => {
21127
21043
  var [pendingFiles, setPendingFiles] = React.useState([]);
21128
21044
  var [isUploading, setIsUploading] = React.useState(false);
21129
21045
  var [isDraggingOver, setIsDraggingOver] = React.useState(false);
21046
+ // Reference images are now tracked within uploadedFiles using isReferenceImage flag
21130
21047
  // State for model selection
21131
21048
  var [selectedModel, setSelectedModel] = React.useState('gpt-4');
21132
21049
  var [modelOptions] = React.useState([{
@@ -21184,9 +21101,17 @@ var useChatInputState = props => {
21184
21101
  return;
21185
21102
  }
21186
21103
  var message = value;
21104
+ // Separate reference images from regular files
21105
+ var referenceFiles = uploadedFiles.filter(file => file.isReferenceImage);
21106
+ var regularFiles = uploadedFiles.filter(file => !file.isReferenceImage);
21107
+ // Add reference image information to the message if reference images are uploaded
21108
+ if (referenceFiles.length > 0) {
21109
+ var referenceImageInfo = referenceFiles.map(image => "[Reference Image: " + image.path + "]").join('\n');
21110
+ message = message ? referenceImageInfo + "\n\n" + message : referenceImageInfo;
21111
+ }
21187
21112
  // Add file information to the message if files are uploaded
21188
- if (uploadedFiles.length > 0) {
21189
- var fileInfo = uploadedFiles.map(file => "[Uploaded File: " + file.path + "]").join('\n');
21113
+ if (regularFiles.length > 0) {
21114
+ var fileInfo = regularFiles.map(file => "[Uploaded File: " + file.path + "]").join('\n');
21190
21115
  message = message ? message + "\n\n" + fileInfo : fileInfo;
21191
21116
  }
21192
21117
  // Determine model and thinking mode
@@ -21205,7 +21130,7 @@ var useChatInputState = props => {
21205
21130
  if (!isControlled) {
21206
21131
  setUncontrolledValue('');
21207
21132
  }
21208
- // Clear uploaded files
21133
+ // Clear uploaded files (including reference images)
21209
21134
  setUploadedFiles([]);
21210
21135
  };
21211
21136
  // Handle removing an uploaded file
@@ -21263,6 +21188,52 @@ var useChatInputState = props => {
21263
21188
  editableRef.current.focus();
21264
21189
  }
21265
21190
  };
21191
+ // Handle reference image upload
21192
+ var handleReferenceImageUpload = files => {
21193
+ var imageFiles = files.filter(file => file.type.startsWith('image/'));
21194
+ if (imageFiles.length === 0) {
21195
+ console.error('Only image files are allowed as reference images');
21196
+ return;
21197
+ }
21198
+ // Clear existing reference images first
21199
+ var updatedFiles = uploadedFiles.map(file => Object.assign({}, file, {
21200
+ isReferenceImage: false
21201
+ }));
21202
+ // Create reference image objects (only take the first one)
21203
+ var newReferenceImage = {
21204
+ name: imageFiles[0].name,
21205
+ path: "/workspace/" + imageFiles[0].name,
21206
+ size: imageFiles[0].size,
21207
+ type: imageFiles[0].type,
21208
+ localUrl: URL.createObjectURL(imageFiles[0]),
21209
+ isReferenceImage: true
21210
+ };
21211
+ // Add to pending files
21212
+ setPendingFiles(prevFiles => [...prevFiles, imageFiles[0]]);
21213
+ // Add the reference image to uploaded files
21214
+ setUploadedFiles([...updatedFiles, newReferenceImage]);
21215
+ };
21216
+ // Remove reference image
21217
+ var removeReferenceImage = () => {
21218
+ // Clear reference image flag from all uploaded files
21219
+ var updatedFiles = uploadedFiles.map(file => Object.assign({}, file, {
21220
+ isReferenceImage: false
21221
+ }));
21222
+ setUploadedFiles(updatedFiles);
21223
+ };
21224
+ // Set an uploaded file as reference image
21225
+ var setFileAsReference = fileIndex => {
21226
+ var file = uploadedFiles[fileIndex];
21227
+ if (!file || !file.type.startsWith('image/')) {
21228
+ console.error('Only image files can be set as reference images');
21229
+ return;
21230
+ }
21231
+ // Update the files to mark only the selected one as reference image
21232
+ var updatedFiles = uploadedFiles.map((f, index) => Object.assign({}, f, {
21233
+ isReferenceImage: index === fileIndex
21234
+ }));
21235
+ setUploadedFiles(updatedFiles);
21236
+ };
21266
21237
  return {
21267
21238
  value,
21268
21239
  handleChange,
@@ -21288,7 +21259,10 @@ var useChatInputState = props => {
21288
21259
  hideGuideTip,
21289
21260
  isReferenceImageModalShown,
21290
21261
  toggleReferenceImageModal,
21291
- handlePromptExampleSelect
21262
+ handlePromptExampleSelect,
21263
+ handleReferenceImageUpload,
21264
+ removeReferenceImage,
21265
+ setFileAsReference
21292
21266
  };
21293
21267
  };
21294
21268
 
@@ -21459,6 +21433,7 @@ var AttachmentGroup = _ref => {
21459
21433
  files,
21460
21434
  sandboxId,
21461
21435
  onRemove,
21436
+ onSetAsReference,
21462
21437
  layout = 'inline',
21463
21438
  maxHeight = '120px',
21464
21439
  showPreviews = false,
@@ -21516,7 +21491,7 @@ var AttachmentGroup = _ref => {
21516
21491
  as: "span",
21517
21492
  marginLeft: "4px",
21518
21493
  color: "theme.primary"
21519
- }, "(pending)"))), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21494
+ }, "(pending)"))), onSetAsReference && file.type.startsWith('image/') && (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21520
21495
  as: "button",
21521
21496
  type: "button",
21522
21497
  width: "16px",
@@ -21525,35 +21500,28 @@ var AttachmentGroup = _ref => {
21525
21500
  alignItems: "center",
21526
21501
  justifyContent: "center",
21527
21502
  borderRadius: "50%",
21528
- backgroundColor: "transparent",
21529
- color: "color.gray.500",
21503
+ backgroundColor: file.isReferenceImage ? 'theme.primary' : 'transparent',
21504
+ color: file.isReferenceImage ? 'color.white' : 'color.gray.500',
21530
21505
  cursor: "pointer",
21531
21506
  transition: "all 0.2s ease",
21532
- onClick: () => onRemove(index),
21507
+ onClick: () => onSetAsReference(index),
21508
+ title: file.isReferenceImage ? 'Reference image' : 'Set as reference image',
21533
21509
  _hover: {
21534
- backgroundColor: 'color.gray.200',
21535
- color: 'color.gray.700'
21510
+ backgroundColor: file.isReferenceImage ? 'color.blue.600' : 'color.blue.100',
21511
+ color: file.isReferenceImage ? 'color.white' : 'theme.primary'
21536
21512
  }
21537
- }, views == null ? void 0 : views.removeButton), /*#__PURE__*/React__default.createElement("svg", {
21538
- width: "10",
21539
- height: "10",
21540
- viewBox: "0 0 24 24",
21541
- fill: "none",
21542
- stroke: "currentColor",
21543
- strokeWidth: "2",
21544
- strokeLinecap: "round",
21545
- strokeLinejoin: "round"
21546
- }, /*#__PURE__*/React__default.createElement("line", {
21547
- x1: "18",
21548
- y1: "6",
21549
- x2: "6",
21550
- y2: "18"
21551
- }), /*#__PURE__*/React__default.createElement("line", {
21552
- x1: "6",
21553
- y1: "6",
21554
- x2: "18",
21555
- y2: "18"
21556
- })))))));
21513
+ }, views == null ? void 0 : views.referenceButton), /*#__PURE__*/React__default.createElement(ImageIcon, {
21514
+ widthHeight: 20,
21515
+ color: "currentColor",
21516
+ filled: file.isReferenceImage
21517
+ }))), /*#__PURE__*/React__default.createElement(Button, {
21518
+ variant: "ghost",
21519
+ size: "sm",
21520
+ icon: /*#__PURE__*/React__default.createElement(TrashIcon, {
21521
+ widthHeight: 12
21522
+ }),
21523
+ onClick: () => onRemove(index)
21524
+ })))));
21557
21525
  };
21558
21526
 
21559
21527
  var EditableInput = /*#__PURE__*/React.forwardRef((_ref, ref) => {
@@ -21625,132 +21593,6 @@ var EditableInput = /*#__PURE__*/React.forwardRef((_ref, ref) => {
21625
21593
  });
21626
21594
  EditableInput.displayName = 'EditableInput';
21627
21595
 
21628
- /**
21629
- * Handle local files without uploading to server
21630
- */
21631
- var handleLocalFiles = (files, setPendingFiles, setUploadedFiles) => {
21632
- // Filter files that exceed size limit
21633
- var filteredFiles = files.filter(file => {
21634
- if (file.size > 50 * 1024 * 1024) {
21635
- console.error("File size exceeds 50MB limit: " + file.name);
21636
- return false;
21637
- }
21638
- return true;
21639
- });
21640
- // Add files to pending files
21641
- setPendingFiles(prevFiles => [...prevFiles, ...filteredFiles]);
21642
- // Create uploaded file objects
21643
- var newUploadedFiles = filteredFiles.map(file => ({
21644
- name: file.name,
21645
- path: "/workspace/" + file.name,
21646
- size: file.size,
21647
- type: file.type || 'application/octet-stream',
21648
- localUrl: URL.createObjectURL(file)
21649
- }));
21650
- // Add files to uploaded files
21651
- setUploadedFiles(prev => [...prev, ...newUploadedFiles]);
21652
- };
21653
- /**
21654
- * Handle files based on whether a sandboxId is available
21655
- */
21656
- var handleFiles = /*#__PURE__*/function () {
21657
- var _ref = /*#__PURE__*/_asyncToGenerator(function* (files, sandboxId, setPendingFiles, setUploadedFiles, setIsUploading) {
21658
- // If no sandboxId, just handle files locally
21659
- handleLocalFiles(files, setPendingFiles, setUploadedFiles);
21660
- });
21661
- return function handleFiles(_x, _x2, _x3, _x4, _x5) {
21662
- return _ref.apply(this, arguments);
21663
- };
21664
- }();
21665
- var FileUploadHandler = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
21666
- var {
21667
- loading,
21668
- disabled,
21669
- isAgentRunning,
21670
- isUploading,
21671
- sandboxId,
21672
- setPendingFiles,
21673
- setUploadedFiles,
21674
- setIsUploading,
21675
- views = {}
21676
- } = _ref2;
21677
- var {
21678
- getColor
21679
- } = appStudio.useTheme();
21680
- // Clean up object URLs when component unmounts
21681
- React.useEffect(() => {
21682
- return () => {
21683
- setUploadedFiles(prev => {
21684
- prev.forEach(file => {
21685
- if (file.localUrl) {
21686
- URL.revokeObjectURL(file.localUrl);
21687
- }
21688
- });
21689
- return prev;
21690
- });
21691
- };
21692
- }, [setUploadedFiles]);
21693
- // Handle file upload button click
21694
- var handleFileUpload = () => {
21695
- if (ref && 'current' in ref && ref.current) {
21696
- ref.current.click();
21697
- }
21698
- };
21699
- // Process file upload
21700
- var processFileUpload = /*#__PURE__*/function () {
21701
- var _ref3 = _asyncToGenerator(function* (event) {
21702
- if (!event.target.files || event.target.files.length === 0) return;
21703
- var files = Array.from(event.target.files);
21704
- // Handle files
21705
- handleFiles(files, sandboxId, setPendingFiles, setUploadedFiles, setIsUploading);
21706
- // Reset the input value
21707
- event.target.value = '';
21708
- });
21709
- return function processFileUpload(_x6) {
21710
- return _ref3.apply(this, arguments);
21711
- };
21712
- }();
21713
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(appStudio.Button, Object.assign({
21714
- type: "button",
21715
- onClick: handleFileUpload,
21716
- variant: "ghost",
21717
- height: "36px",
21718
- padding: "0 12px",
21719
- borderRadius: "8px",
21720
- backgroundColor: "transparent",
21721
- color: "color.gray.500",
21722
- disabled: loading || disabled && !isAgentRunning || isUploading,
21723
- _hover: {
21724
- backgroundColor: 'color.gray.100'
21725
- }
21726
- }, views == null ? void 0 : views.button), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, {
21727
- gap: 4,
21728
- alignItems: "center"
21729
- }, isUploading ? (/*#__PURE__*/React__default.createElement(LoadingSpinnerIcon, Object.assign({
21730
- widthHeight: 16,
21731
- color: "currentColor",
21732
- filled: false,
21733
- style: {
21734
- animation: 'spin 1s linear infinite'
21735
- }
21736
- }, views == null ? void 0 : views.icon))) : (/*#__PURE__*/React__default.createElement(UploadIcon, Object.assign({
21737
- widthHeight: 16,
21738
- color: "currentColor",
21739
- filled: false
21740
- }, views == null ? void 0 : views.icon))), /*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
21741
- fontSize: "14px"
21742
- }, views == null ? void 0 : views.text), "Attachments"))), /*#__PURE__*/React__default.createElement("input", {
21743
- type: "file",
21744
- ref: ref,
21745
- style: {
21746
- display: 'none'
21747
- },
21748
- onChange: processFileUpload,
21749
- multiple: true
21750
- }));
21751
- });
21752
- FileUploadHandler.displayName = 'FileUploadHandler';
21753
-
21754
21596
  var PromptExamples = _ref => {
21755
21597
  var {
21756
21598
  examples,
@@ -21788,109 +21630,7 @@ var PromptExamples = _ref => {
21788
21630
  }, views == null ? void 0 : views.text), example.text)))));
21789
21631
  };
21790
21632
 
21791
- var ReferenceImageButton = _ref => {
21792
- var {
21793
- onClick,
21794
- views = {}
21795
- } = _ref;
21796
- // Using theme context for potential future styling
21797
- return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21798
- as: "button",
21799
- type: "button",
21800
- display: "flex",
21801
- alignItems: "center",
21802
- gap: 4,
21803
- padding: "6px 10px",
21804
- border: "1px solid",
21805
- borderColor: "color.gray.300",
21806
- borderRadius: "4px",
21807
- backgroundColor: "transparent",
21808
- cursor: "pointer",
21809
- transition: "all 0.2s ease",
21810
- onClick: onClick,
21811
- _hover: {
21812
- backgroundColor: 'color.gray.100'
21813
- }
21814
- }, views == null ? void 0 : views.button), /*#__PURE__*/React__default.createElement(appStudio.Text, Object.assign({
21815
- fontSize: "14px",
21816
- color: "color.gray.700"
21817
- }, views == null ? void 0 : views.text), "Reference image"), /*#__PURE__*/React__default.createElement(ImageIcon, Object.assign({
21818
- widthHeight: 20,
21819
- color: "currentColor",
21820
- filled: false,
21821
- strokeWidth: 2
21822
- }, views == null ? void 0 : views.icon)));
21823
- };
21824
-
21825
- var ReferenceImageModal = _ref => {
21826
- var {
21827
- isOpen,
21828
- onClose,
21829
- views = {}
21830
- } = _ref;
21831
- // Using theme context for potential future styling
21832
- if (!isOpen) {
21833
- return null;
21834
- }
21835
- return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21836
- position: "absolute",
21837
- top: "0",
21838
- left: "0",
21839
- width: "100%",
21840
- height: isOpen ? '300px' : '0',
21841
- backgroundColor: "color.white",
21842
- borderRadius: "8px",
21843
- boxShadow: "0 4px 12px rgba(0, 0, 0, 0.1)",
21844
- overflow: "hidden",
21845
- transition: "height 0.3s ease",
21846
- zIndex: "10"
21847
- }, views == null ? void 0 : views.container), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21848
- padding: "16px",
21849
- width: "100%",
21850
- height: "100%"
21851
- }, views == null ? void 0 : views.content), /*#__PURE__*/React__default.createElement(appStudio.Text, {
21852
- fontSize: "16px",
21853
- fontWeight: "600",
21854
- marginBottom: "16px"
21855
- }, "Reference Image"), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21856
- as: "button",
21857
- type: "button",
21858
- position: "absolute",
21859
- top: "8px",
21860
- right: "8px",
21861
- width: "24px",
21862
- height: "24px",
21863
- display: "flex",
21864
- alignItems: "center",
21865
- justifyContent: "center",
21866
- borderRadius: "50%",
21867
- backgroundColor: "transparent",
21868
- border: "none",
21869
- cursor: "pointer",
21870
- transition: "all 0.2s ease",
21871
- onClick: onClose,
21872
- _hover: {
21873
- backgroundColor: 'color.gray.100'
21874
- }
21875
- }, views == null ? void 0 : views.closeButton), /*#__PURE__*/React__default.createElement(CloseIcon, {
21876
- widthHeight: 16,
21877
- color: "currentColor",
21878
- filled: false,
21879
- strokeWidth: 2
21880
- })), /*#__PURE__*/React__default.createElement(appStudio.View, {
21881
- width: "100%",
21882
- height: "calc(100% - 40px)",
21883
- backgroundColor: "color.gray.100",
21884
- borderRadius: "4px",
21885
- display: "flex",
21886
- alignItems: "center",
21887
- justifyContent: "center"
21888
- }, /*#__PURE__*/React__default.createElement(appStudio.Text, {
21889
- color: "color.gray.500"
21890
- }, "Drop an image here or click to upload"))));
21891
- };
21892
-
21893
- var _excluded$18 = ["onSubmit", "placeholder", "loading", "disabled", "isAgentRunning", "onStopAgent", "autoFocus", "sandboxId", "hideAttachments", "promptExamples", "showReferenceImageButton", "errorMessage", "size", "shape", "variant", "views", "value", "handleChange", "handleSubmit", "editableRef", "fileInputRef", "isUploading", "isDraggingOver", "uploadedFiles", "removeUploadedFile", "setPendingFiles", "setUploadedFiles", "setIsUploading", "selectedModel", "handleModelChange", "modelOptions", "subscriptionStatus", "canAccessModel", "isGuideTipShown", "hideGuideTip", "isReferenceImageModalShown", "toggleReferenceImageModal", "handlePromptExampleSelect"];
21633
+ var _excluded$18 = ["onSubmit", "placeholder", "loading", "disabled", "isAgentRunning", "onStopAgent", "loadingText", "autoFocus", "sandboxId", "hideAttachments", "attachmentText", "promptExamples", "showReferenceImageButton", "errorMessage", "size", "shape", "variant", "views", "value", "handleChange", "handleSubmit", "editableRef", "fileInputRef", "isUploading", "isDraggingOver", "uploadedFiles", "removeUploadedFile", "setPendingFiles", "setUploadedFiles", "setIsUploading", "selectedModel", "handleModelChange", "modelOptions", "subscriptionStatus", "canAccessModel", "isGuideTipShown", "hideGuideTip", "isReferenceImageModalShown", "toggleReferenceImageModal", "handlePromptExampleSelect", "handleDragOver", "handleDragLeave", "handleReferenceImageUpload", "removeReferenceImage", "setFileAsReference"];
21894
21634
  var ChatInputView = _ref => {
21895
21635
  var _value$trim$length;
21896
21636
  var {
@@ -21899,9 +21639,11 @@ var ChatInputView = _ref => {
21899
21639
  loading = false,
21900
21640
  disabled = false,
21901
21641
  isAgentRunning = false,
21642
+ loadingText = 'Agent is working...',
21902
21643
  autoFocus = true,
21903
21644
  sandboxId,
21904
21645
  hideAttachments = false,
21646
+ attachmentText = '',
21905
21647
  promptExamples = [],
21906
21648
  showReferenceImageButton = false,
21907
21649
  errorMessage,
@@ -21914,17 +21656,18 @@ var ChatInputView = _ref => {
21914
21656
  handleChange,
21915
21657
  handleSubmit,
21916
21658
  editableRef,
21917
- fileInputRef,
21918
21659
  isUploading,
21919
21660
  isDraggingOver,
21920
21661
  uploadedFiles,
21921
21662
  removeUploadedFile,
21922
21663
  setPendingFiles,
21923
21664
  setUploadedFiles,
21924
- setIsUploading,
21925
21665
  isReferenceImageModalShown,
21926
- toggleReferenceImageModal,
21927
- handlePromptExampleSelect
21666
+ handlePromptExampleSelect,
21667
+ handleDragOver,
21668
+ handleDragLeave,
21669
+ handleReferenceImageUpload,
21670
+ setFileAsReference
21928
21671
  // Other props
21929
21672
  } = _ref,
21930
21673
  props = _objectWithoutPropertiesLoose(_ref, _excluded$18);
@@ -21934,39 +21677,55 @@ var ChatInputView = _ref => {
21934
21677
  var contentStyles = Object.assign({}, DefaultChatInputStyles.content, Sizes$1[size], Variants[variant], views == null ? void 0 : views.content);
21935
21678
  // Determine if the submit button should be enabled
21936
21679
  var hasText = ((_value$trim$length = value == null ? void 0 : value.trim().length) != null ? _value$trim$length : 0) > 0 || uploadedFiles.length > 0;
21680
+ // Handle multiple file uploads for the Uploader component
21681
+ var handleMultipleFileUpload = files => {
21682
+ // Filter files that exceed size limit (50MB)
21683
+ var filteredFiles = files.filter(file => {
21684
+ if (file.size > 50 * 1024 * 1024) {
21685
+ console.error("File size exceeds 50MB limit: " + file.name);
21686
+ return false;
21687
+ }
21688
+ return true;
21689
+ });
21690
+ if (filteredFiles.length > 0) {
21691
+ // Add files to pending files
21692
+ setPendingFiles(prevFiles => [...prevFiles, ...filteredFiles]);
21693
+ // Create uploaded file objects
21694
+ var newUploadedFiles = filteredFiles.map(file => ({
21695
+ name: file.name,
21696
+ path: "/workspace/" + file.name,
21697
+ size: file.size,
21698
+ type: file.type || 'application/octet-stream',
21699
+ localUrl: URL.createObjectURL(file),
21700
+ isReferenceImage: false
21701
+ }));
21702
+ // Add files to uploaded files
21703
+ setUploadedFiles(prev => [...prev, ...newUploadedFiles]);
21704
+ }
21705
+ };
21937
21706
  return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21938
21707
  display: "flex",
21939
21708
  flexDirection: "column",
21940
21709
  // Width and maxWidth will come from containerStyles
21941
21710
  boxSizing: "border-box"
21942
21711
  }, containerStyles, props, {
21943
- onDragOver: e => {
21944
- e.preventDefault();
21945
- e.stopPropagation();
21946
- if (fileInputRef.current) {
21947
- props.handleDragOver == null || props.handleDragOver(e);
21948
- }
21949
- },
21950
- onDragLeave: e => {
21951
- e.preventDefault();
21952
- e.stopPropagation();
21953
- props.handleDragLeave == null || props.handleDragLeave(e);
21954
- },
21712
+ onDragOver: handleDragOver,
21713
+ onDragLeave: handleDragLeave,
21955
21714
  onDrop: e => {
21956
21715
  e.preventDefault();
21957
21716
  e.stopPropagation();
21958
- props.handleDragLeave == null || props.handleDragLeave(e);
21959
- if (fileInputRef.current && e.dataTransfer.files.length > 0) {
21717
+ handleDragLeave(e);
21718
+ if (e.dataTransfer.files.length > 0) {
21960
21719
  var files = Array.from(e.dataTransfer.files);
21961
- setPendingFiles(prevFiles => [...prevFiles, ...files]);
21962
- var newUploadedFiles = files.map(file => ({
21963
- name: file.name,
21964
- path: "/workspace/" + file.name,
21965
- size: file.size,
21966
- type: file.type || 'application/octet-stream',
21967
- localUrl: URL.createObjectURL(file)
21968
- }));
21969
- setUploadedFiles(prev => [...prev, ...newUploadedFiles]);
21720
+ // Separate image files from other files
21721
+ var imageFiles = files.filter(file => file.type.startsWith('image/'));
21722
+ // Handle image files as reference images if reference image modal is open
21723
+ if (isReferenceImageModalShown && imageFiles.length > 0) {
21724
+ handleReferenceImageUpload(imageFiles);
21725
+ } else {
21726
+ // Use the same file handling logic as the Uploader component
21727
+ handleMultipleFileUpload(files);
21728
+ }
21970
21729
  }
21971
21730
  }
21972
21731
  }), promptExamples.length > 0 && (/*#__PURE__*/React__default.createElement(PromptExamples, {
@@ -21976,24 +21735,36 @@ var ChatInputView = _ref => {
21976
21735
  container: views == null ? void 0 : views.promptExamples,
21977
21736
  item: views == null ? void 0 : views.promptExampleItem
21978
21737
  }
21979
- })), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
21980
- justifyContent: "space-between",
21981
- alignItems: "center"
21982
- }, views == null ? void 0 : views.header), showReferenceImageButton && (/*#__PURE__*/React__default.createElement(ReferenceImageButton, {
21983
- onClick: toggleReferenceImageModal,
21984
- views: {
21985
- button: views == null ? void 0 : views.referenceImageButton
21738
+ })), isAgentRunning && (/*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
21739
+ justifyContent: "center",
21740
+ alignItems: "center",
21741
+ gap: 8,
21742
+ padding: "8px 0",
21743
+ animate: {
21744
+ from: {
21745
+ opacity: 0,
21746
+ y: -10
21747
+ },
21748
+ to: {
21749
+ opacity: 1,
21750
+ y: 0
21751
+ },
21752
+ duration: '0.3s'
21986
21753
  }
21987
- }))), /*#__PURE__*/React__default.createElement(appStudio.View, {
21754
+ }, views == null ? void 0 : views.loadingIndicator), /*#__PURE__*/React__default.createElement(LoadingSpinnerIcon, {
21755
+ widthHeight: 12,
21756
+ color: "currentColor",
21757
+ filled: false,
21758
+ style: {
21759
+ animation: 'spin 1s linear infinite'
21760
+ }
21761
+ }), /*#__PURE__*/React__default.createElement(appStudio.Text, {
21762
+ fontSize: "12px",
21763
+ color: "color.gray.500"
21764
+ }, loadingText))), /*#__PURE__*/React__default.createElement(appStudio.View, {
21988
21765
  position: "relative",
21989
21766
  width: "100%"
21990
- }, /*#__PURE__*/React__default.createElement(ReferenceImageModal, {
21991
- isOpen: isReferenceImageModalShown,
21992
- onClose: toggleReferenceImageModal,
21993
- views: {
21994
- container: views == null ? void 0 : views.referenceImageModal
21995
- }
21996
- }), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21767
+ }, /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
21997
21768
  as: "form",
21998
21769
  onSubmit: handleSubmit,
21999
21770
  overflowY: "auto",
@@ -22007,12 +21778,14 @@ var ChatInputView = _ref => {
22007
21778
  files: uploadedFiles,
22008
21779
  sandboxId: sandboxId,
22009
21780
  onRemove: removeUploadedFile,
21781
+ onSetAsReference: setFileAsReference,
22010
21782
  views: {
22011
21783
  container: views == null ? void 0 : views.attachments,
22012
21784
  item: views == null ? void 0 : views.attachmentItem,
22013
21785
  name: views == null ? void 0 : views.attachmentName,
22014
21786
  size: views == null ? void 0 : views.attachmentSize,
22015
- removeButton: views == null ? void 0 : views.attachmentRemove
21787
+ removeButton: views == null ? void 0 : views.attachmentRemove,
21788
+ referenceButton: views == null ? void 0 : views.referenceButton
22016
21789
  }
22017
21790
  }), /*#__PURE__*/React__default.createElement(EditableInput, {
22018
21791
  ref: editableRef,
@@ -22033,18 +21806,46 @@ var ChatInputView = _ref => {
22033
21806
  }, /*#__PURE__*/React__default.createElement(appStudio.Horizontal, {
22034
21807
  gap: 8,
22035
21808
  alignItems: "center"
22036
- }, !hideAttachments && (/*#__PURE__*/React__default.createElement(FileUploadHandler, {
22037
- ref: fileInputRef,
22038
- loading: loading,
22039
- disabled: disabled,
22040
- isAgentRunning: isAgentRunning,
22041
- isUploading: isUploading,
22042
- sandboxId: sandboxId,
22043
- setPendingFiles: setPendingFiles,
22044
- setUploadedFiles: setUploadedFiles,
22045
- setIsUploading: setIsUploading,
21809
+ }, !hideAttachments && (/*#__PURE__*/React__default.createElement(Uploader, {
21810
+ accept: "*/*",
21811
+ icon: /*#__PURE__*/React__default.createElement(AttachmentIcon, {
21812
+ widthHeight: 16
21813
+ }),
21814
+ maxSize: 50 * 1024 * 1024,
21815
+ multiple: true,
21816
+ onMultipleFileSelect: handleMultipleFileUpload,
21817
+ isLoading: isUploading,
21818
+ text: attachmentText,
21819
+ fileType: "file",
22046
21820
  views: {
22047
- button: views == null ? void 0 : views.fileButton
21821
+ container: Object.assign({
21822
+ height: '36px',
21823
+ margin: '0 12px',
21824
+ // borderRadius: '8px',
21825
+ // backgroundColor: 'transparent',
21826
+ // border: '1px solid',
21827
+ // borderColor: 'color.gray.300',
21828
+ cursor: 'pointer',
21829
+ _hover: {
21830
+ backgroundColor: 'color.gray.100'
21831
+ }
21832
+ }, views == null ? void 0 : views.fileButton, containerStyles)
21833
+ },
21834
+ containerProps: {
21835
+ display: 'flex',
21836
+ alignItems: 'center',
21837
+ justifyContent: 'center',
21838
+ gap: 4
21839
+ },
21840
+ textProps: {
21841
+ fontSize: '14px',
21842
+ color: 'color.gray.600'
21843
+ },
21844
+ validateFile: file => {
21845
+ if (file.size > 50 * 1024 * 1024) {
21846
+ return 'File size exceeds 50MB limit';
21847
+ }
21848
+ return null;
22048
21849
  }
22049
21850
  }))), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
22050
21851
  as: "button",
@@ -22080,35 +21881,12 @@ var ChatInputView = _ref => {
22080
21881
  fontSize: "12px",
22081
21882
  color: "theme.error",
22082
21883
  marginTop: "4px"
22083
- }, views == null ? void 0 : views.bottomTip), errorMessage)), isAgentRunning && (/*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
22084
- justifyContent: "center",
22085
- alignItems: "center",
22086
- gap: 8,
22087
- padding: "8px 0",
22088
- animate: {
22089
- from: {
22090
- opacity: 0,
22091
- y: -10
22092
- },
22093
- to: {
22094
- opacity: 1,
22095
- y: 0
22096
- },
22097
- duration: '0.3s'
22098
- }
22099
- }, views == null ? void 0 : views.loadingIndicator), /*#__PURE__*/React__default.createElement(LoadingSpinnerIcon, {
22100
- widthHeight: 12,
22101
- color: "currentColor",
22102
- filled: false,
22103
- style: {
22104
- animation: 'spin 1s linear infinite'
22105
- }
22106
- }), /*#__PURE__*/React__default.createElement(appStudio.Text, {
22107
- fontSize: "12px",
22108
- color: "color.gray.500"
22109
- }, "Agent is working..."))));
21884
+ }, views == null ? void 0 : views.bottomTip), errorMessage)));
22110
21885
  };
22111
21886
 
21887
+ /**
21888
+ * Interface for the ChatInput component's imperative handle
21889
+ */
22112
21890
  /**
22113
21891
  * ChatInput component
22114
21892
  *
@@ -22117,11 +21895,6 @@ var ChatInputView = _ref => {
22117
21895
  var ChatInput = /*#__PURE__*/React.forwardRef((props, ref) => {
22118
21896
  // Get state from custom hook
22119
21897
  var state = useChatInputState(props);
22120
- // Expose methods via ref
22121
- React.useImperativeHandle(ref, () => ({
22122
- getPendingFiles: () => state.pendingFiles || [],
22123
- clearPendingFiles: () => state.setPendingFiles([])
22124
- }));
22125
21898
  // Render the view component with props and state
22126
21899
  return /*#__PURE__*/React__default.createElement(ChatInputView, Object.assign({}, props, state));
22127
21900
  });
@@ -22131,6 +21904,7 @@ exports.Accordion = Accordion;
22131
21904
  exports.Alert = Alert;
22132
21905
  exports.ArrowIcon = ArrowIcon;
22133
21906
  exports.AspectRatio = AspectRatio;
21907
+ exports.AttachmentIcon = AttachmentIcon;
22134
21908
  exports.Avatar = Avatar;
22135
21909
  exports.Badge = Badge;
22136
21910
  exports.BatteryIcon = BatteryIcon;
@@ -22147,9 +21921,7 @@ exports.ChartIcon = ChartIcon;
22147
21921
  exports.ChatInput = ChatInput;
22148
21922
  exports.CheckIcon = CheckIcon;
22149
21923
  exports.Checkbox = Checkbox;
22150
- exports.ChevronDownIcon = ChevronDownIcon;
22151
21924
  exports.ChevronIcon = ChevronIcon;
22152
- exports.ChevronRightIcon = ChevronRightIcon;
22153
21925
  exports.ClockIcon = ClockIcon;
22154
21926
  exports.CloseEyeIcon = CloseEyeIcon;
22155
21927
  exports.CloseIcon = CloseIcon;
@@ -22248,7 +22020,6 @@ exports.ShieldIcon = ShieldIcon;
22248
22020
  exports.Sidebar = Sidebar;
22249
22021
  exports.Slider = Slider;
22250
22022
  exports.SliderIcon = SliderIcon;
22251
- exports.SliderVerticalIcon = SliderVerticalIcon;
22252
22023
  exports.SpinnerIcon = SpinnerIcon;
22253
22024
  exports.StarIcon = StarIcon;
22254
22025
  exports.StopIcon = StopIcon;