@fileverse-dev/fortune-react 1.0.2-mod-26 → 1.0.2-mod-28

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/index.js CHANGED
@@ -8,6 +8,7 @@ var produce = require('immer');
8
8
  var _ = require('lodash');
9
9
  var ui = require('@fileverse/ui');
10
10
  var regeneratorRuntime = require('regenerator-runtime');
11
+ var Tippy = require('@tippyjs/react');
11
12
 
12
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
14
 
@@ -15,6 +16,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
16
  var produce__default = /*#__PURE__*/_interopDefaultLegacy(produce);
16
17
  var ___default = /*#__PURE__*/_interopDefaultLegacy(_);
17
18
  var regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(regeneratorRuntime);
19
+ var Tippy__default = /*#__PURE__*/_interopDefaultLegacy(Tippy);
18
20
 
19
21
  function _arrayLikeToArray(r, a) {
20
22
  (null == a || a > r.length) && (a = r.length);
@@ -817,12 +819,12 @@ var FormulaSearch = function FormulaSearch(props) {
817
819
  display: "flex",
818
820
  gap: "4px"
819
821
  }
820
- }, v.LOGO && /*#__PURE__*/React__default['default'].createElement("img", {
822
+ }, v.LOGO && (/*#__PURE__*/React__default['default'].createElement("img", {
821
823
  src: v.LOGO,
822
824
  alt: "Service Logo",
823
825
  width: 32,
824
826
  height: 32
825
- }), v.API_KEY && /*#__PURE__*/React__default['default'].createElement("div", {
827
+ })), v.API_KEY && (/*#__PURE__*/React__default['default'].createElement("div", {
826
828
  style: {
827
829
  borderRadius: "4px",
828
830
  width: "20px",
@@ -834,7 +836,7 @@ var FormulaSearch = function FormulaSearch(props) {
834
836
  style: {
835
837
  color: "white"
836
838
  }
837
- })))), /*#__PURE__*/React__default['default'].createElement("div", {
839
+ }))))), /*#__PURE__*/React__default['default'].createElement("div", {
838
840
  className: "luckysheet-formula-search-detail"
839
841
  }, v.d));
840
842
  }));
@@ -842,7 +844,7 @@ var FormulaSearch = function FormulaSearch(props) {
842
844
 
843
845
  function lightenHexColor(hex) {
844
846
  var amount = 100;
845
- if (hex.startsWith('#')) {
847
+ if (hex.startsWith("#")) {
846
848
  hex = hex.slice(1);
847
849
  }
848
850
  var r = parseInt(hex.slice(0, 2), 16);
@@ -851,7 +853,7 @@ function lightenHexColor(hex) {
851
853
  r = Math.min(255, r + amount);
852
854
  g = Math.min(255, g + amount);
853
855
  b = Math.min(255, b + amount);
854
- var newHex = '#' + (1 << 24 | r << 16 | g << 8 | b).toString(16).slice(1).toUpperCase();
856
+ var newHex = "#".concat((1 << 24 | r << 16 | g << 8 | b).toString(16).slice(1).toUpperCase());
855
857
  return newHex;
856
858
  }
857
859
  var FormulaHint = function FormulaHint(props) {
@@ -859,10 +861,8 @@ var FormulaHint = function FormulaHint(props) {
859
861
  context = _useContext.context;
860
862
  var _locale = fortuneCore.locale(context),
861
863
  formulaMore = _locale.formulaMore;
862
- if (!context.functionHint) return null;
863
864
  var fn = context.formulaCache.functionlistMap[context.functionHint];
864
- if (!fn) return null;
865
- var _useState = React.useState(localStorage.getItem(fn.API_KEY)),
865
+ var _useState = React.useState(localStorage.getItem(fn === null || fn === void 0 ? void 0 : fn.API_KEY)),
866
866
  _useState2 = _slicedToArray(_useState, 2),
867
867
  API_KEY = _useState2[0],
868
868
  setAPI_KEY = _useState2[1];
@@ -870,12 +870,13 @@ var FormulaHint = function FormulaHint(props) {
870
870
  _useState4 = _slicedToArray(_useState3, 2),
871
871
  showAPInput = _useState4[0],
872
872
  setShowAPInput = _useState4[1];
873
+ if (!fn) return null;
873
874
  return /*#__PURE__*/React__default['default'].createElement("div", _objectSpread2(_objectSpread2({}, props), {}, {
874
875
  id: "luckysheet-formula-help-c",
875
876
  className: "luckysheet-formula-help-c",
876
877
  style: {
877
878
  border: "1px solid ".concat(fn.BRAND_COLOR),
878
- backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : '#F8F9FA')
879
+ backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : "#F8F9FA")
879
880
  }
880
881
  }), /*#__PURE__*/React__default['default'].createElement("div", {
881
882
  className: "luckysheet-formula-help-close",
@@ -892,7 +893,7 @@ var FormulaHint = function FormulaHint(props) {
892
893
  })), /*#__PURE__*/React__default['default'].createElement("div", {
893
894
  className: "luckysheet-formula-help-title formula-title",
894
895
  style: {
895
- backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : '#F8F9FA')
896
+ backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : "#F8F9FA")
896
897
  }
897
898
  }, /*#__PURE__*/React__default['default'].createElement("div", {
898
899
  className: "luckysheet-formula-help-title-formula"
@@ -922,12 +923,12 @@ var FormulaHint = function FormulaHint(props) {
922
923
  display: "flex",
923
924
  gap: "4px"
924
925
  }
925
- }, fn.LOGO && /*#__PURE__*/React__default['default'].createElement("img", {
926
+ }, fn.LOGO && (/*#__PURE__*/React__default['default'].createElement("img", {
926
927
  src: fn.LOGO,
927
928
  alt: "Service Logo",
928
929
  width: 32,
929
930
  height: 32
930
- }), fn.API_KEY && /*#__PURE__*/React__default['default'].createElement("div", {
931
+ })), fn.API_KEY && (/*#__PURE__*/React__default['default'].createElement("div", {
931
932
  style: {
932
933
  borderRadius: "4px",
933
934
  width: "20px",
@@ -939,18 +940,18 @@ var FormulaHint = function FormulaHint(props) {
939
940
  style: {
940
941
  color: "white"
941
942
  }
942
- })))), /*#__PURE__*/React__default['default'].createElement("div", {
943
+ }))))), /*#__PURE__*/React__default['default'].createElement("div", {
943
944
  className: "luckysheet-formula-help-content",
944
945
  style: {
945
- backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : '#F8F9FA')
946
+ backgroundColor: "".concat(fn.BRAND_COLOR ? lightenHexColor(fn.BRAND_COLOR) : "#F8F9FA")
946
947
  }
947
- }, fn.API_KEY && /*#__PURE__*/React__default['default'].createElement("div", {
948
+ }, fn.API_KEY && (/*#__PURE__*/React__default['default'].createElement("div", {
948
949
  style: {
949
950
  borderLeft: "4px solid ".concat(API_KEY ? "#177E23" : "#fb923c"),
950
- backgroundColor: 'white',
951
- padding: '16px',
952
- margin: '4px 4px 0px 4px',
953
- borderRadius: '4px'
951
+ backgroundColor: "white",
952
+ padding: "16px",
953
+ margin: "4px 4px 0px 4px",
954
+ borderRadius: "4px"
954
955
  }
955
956
  }, /*#__PURE__*/React__default['default'].createElement("div", {
956
957
  style: {
@@ -963,24 +964,24 @@ var FormulaHint = function FormulaHint(props) {
963
964
  }
964
965
  }, /*#__PURE__*/React__default['default'].createElement("h3", {
965
966
  style: {
966
- fontSize: '14px',
967
- fontWeight: '600',
968
- color: '#1f2937',
969
- margin: '0 0 8px 0'
967
+ fontSize: "14px",
968
+ fontWeight: "600",
969
+ color: "#1f2937",
970
+ margin: "0 0 8px 0"
970
971
  }
971
972
  }, "API key is required"), /*#__PURE__*/React__default['default'].createElement(ui.LucideIcon, {
972
973
  name: "ChevronDown",
973
974
  width: 24,
974
975
  height: 24
975
- })), showAPInput && /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("p", {
976
+ })), showAPInput && (/*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("p", {
976
977
  style: {
977
- color: '#6b7280',
978
- margin: '0 0 16px 0'
978
+ color: "#6b7280",
979
+ margin: "0 0 16px 0"
979
980
  }
980
- }, "This function is require API key. Please paste it below and press \"Ok\"."), /*#__PURE__*/React__default['default'].createElement("div", {
981
+ }, "This function is require API key. Please paste it below and\n press 'Ok'."), /*#__PURE__*/React__default['default'].createElement("div", {
981
982
  style: {
982
- display: 'flex',
983
- gap: '12px'
983
+ display: "flex",
984
+ gap: "12px"
984
985
  }
985
986
  }, /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
986
987
  value: API_KEY,
@@ -994,12 +995,12 @@ var FormulaHint = function FormulaHint(props) {
994
995
  onClick: function onClick() {
995
996
  localStorage.setItem(fn.API_KEY, API_KEY);
996
997
  }
997
- }, "Ok")))), /*#__PURE__*/React__default['default'].createElement("div", {
998
+ }, "Ok")))))), /*#__PURE__*/React__default['default'].createElement("div", {
998
999
  style: {
999
- backgroundColor: 'white',
1000
- padding: '6px',
1001
- margin: '4px 4px 0px 4px',
1002
- borderRadius: '4px'
1000
+ backgroundColor: "white",
1001
+ padding: "6px",
1002
+ margin: "4px 4px 0px 4px",
1003
+ borderRadius: "4px"
1003
1004
  }
1004
1005
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1005
1006
  className: "luckysheet-formula-help-content-example"
@@ -1024,7 +1025,7 @@ var FormulaHint = function FormulaHint(props) {
1024
1025
  }, ")"))), /*#__PURE__*/React__default['default'].createElement("div", {
1025
1026
  className: "luckysheet-formula-help-content-detail",
1026
1027
  style: {
1027
- paddingBottom: '6px'
1028
+ paddingBottom: "6px"
1028
1029
  }
1029
1030
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1030
1031
  className: "luckysheet-arguments-help-section"
@@ -1043,17 +1044,17 @@ var FormulaHint = function FormulaHint(props) {
1043
1044
  }, param.name, param.repeat === "y" && (/*#__PURE__*/React__default['default'].createElement("span", {
1044
1045
  className: "luckysheet-arguments-help-argument-info example-value",
1045
1046
  style: {
1046
- marginTop: '2px'
1047
+ marginTop: "2px"
1047
1048
  }
1048
1049
  }, "...-", formulaMore.allowRepeatText)), param.require === "o" && (/*#__PURE__*/React__default['default'].createElement("span", {
1049
1050
  className: "luckysheet-arguments-help-argument-info example-value",
1050
1051
  style: {
1051
- marginTop: '2px'
1052
+ marginTop: "2px"
1052
1053
  }
1053
1054
  }, "-[", formulaMore.allowOptionText, "]"))), /*#__PURE__*/React__default['default'].createElement("span", {
1054
1055
  className: "luckysheet-arguments-help-parameter-content example-value",
1055
1056
  style: {
1056
- marginTop: '2px'
1057
+ marginTop: "2px"
1057
1058
  }
1058
1059
  }, param.detail));
1059
1060
  })))), /*#__PURE__*/React__default['default'].createElement("div", {
@@ -1381,7 +1382,8 @@ var Dialog = function Dialog(_ref) {
1381
1382
  onCancel = _ref.onCancel,
1382
1383
  children = _ref.children,
1383
1384
  containerStyle = _ref.containerStyle,
1384
- contentStyle = _ref.contentStyle;
1385
+ contentStyle = _ref.contentStyle,
1386
+ title = _ref.title;
1385
1387
  var _useContext = React.useContext(WorkbookContext),
1386
1388
  context = _useContext.context;
1387
1389
  var _locale = fortuneCore.locale(context),
@@ -1390,8 +1392,12 @@ var Dialog = function Dialog(_ref) {
1390
1392
  className: "fortune-dialog",
1391
1393
  style: containerStyle
1392
1394
  }, /*#__PURE__*/React__default['default'].createElement("div", {
1393
- className: "flex items-center justify-end border-b color-border-default py-3 px-6"
1394
- }, /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
1395
+ className: ui.cn("flex items-center justify-end border-b color-border-default py-3 px-6", {
1396
+ "justify-between": title
1397
+ })
1398
+ }, title && /*#__PURE__*/React__default['default'].createElement("div", {
1399
+ className: "text-heading-sm"
1400
+ }, title), /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
1395
1401
  icon: "X",
1396
1402
  variant: "ghost",
1397
1403
  onClick: onCancel,
@@ -1508,8 +1514,7 @@ var SearchReplace = function SearchReplace(_ref) {
1508
1514
  setContext = _useContext.setContext,
1509
1515
  refs = _useContext.refs;
1510
1516
  var _locale = fortuneCore.locale(context),
1511
- findAndReplace = _locale.findAndReplace,
1512
- button = _locale.button;
1517
+ findAndReplace = _locale.findAndReplace;
1513
1518
  var _useState = React.useState(""),
1514
1519
  _useState2 = _slicedToArray(_useState, 2),
1515
1520
  searchText = _useState2[0],
@@ -1573,9 +1578,7 @@ var SearchReplace = function SearchReplace(_ref) {
1573
1578
  fortuneCore.onSearchDialogMoveStart(refs.globalCache, nativeEvent, getContainer());
1574
1579
  e.stopPropagation();
1575
1580
  }
1576
- }, /*#__PURE__*/React__default['default'].createElement("div", {
1577
- className: ""
1578
- }, /*#__PURE__*/React__default['default'].createElement("div", {
1581
+ }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
1579
1582
  className: "flex items-center justify-between border-b color-border-default py-3 px-6"
1580
1583
  }, /*#__PURE__*/React__default['default'].createElement("h3", {
1581
1584
  className: "text-heading-sm"
@@ -1611,7 +1614,10 @@ var SearchReplace = function SearchReplace(_ref) {
1611
1614
  },
1612
1615
  value: searchText,
1613
1616
  onChange: function onChange(e) {
1614
- return setSearchText(e.target.value);
1617
+ if (e.target.value.length === 0) {
1618
+ setSearchResult([]);
1619
+ }
1620
+ setSearchText(e.target.value);
1615
1621
  }
1616
1622
  })), /*#__PURE__*/React__default['default'].createElement("div", {
1617
1623
  id: "replaceInput",
@@ -1671,13 +1677,8 @@ var SearchReplace = function SearchReplace(_ref) {
1671
1677
  }), /*#__PURE__*/React__default['default'].createElement("span", null, findAndReplace.wholeTextbox)))), /*#__PURE__*/React__default['default'].createElement(ui.Divider, {
1672
1678
  className: "w-full border-t-[1px]"
1673
1679
  }), /*#__PURE__*/React__default['default'].createElement("div", {
1674
- className: "flex flex-row gap-2 justify-center items-center"
1680
+ className: "flex flex-row gap-2 justify-center items-center mb-4"
1675
1681
  }, /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1676
- variant: "secondary",
1677
- className: "min-w-fit",
1678
- onClick: closeDialog,
1679
- tabIndex: 0
1680
- }, button.close), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1681
1682
  id: "replaceAllBtn",
1682
1683
  variant: "secondary",
1683
1684
  className: "min-w-fit",
@@ -1688,7 +1689,8 @@ var SearchReplace = function SearchReplace(_ref) {
1688
1689
  showAlert(alertMsg);
1689
1690
  });
1690
1691
  },
1691
- tabIndex: 0
1692
+ tabIndex: 0,
1693
+ disabled: searchText.length === 0 || replaceText.length === 0
1692
1694
  }, findAndReplace.allReplaceBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1693
1695
  id: "replaceBtn",
1694
1696
  variant: "secondary",
@@ -1702,7 +1704,8 @@ var SearchReplace = function SearchReplace(_ref) {
1702
1704
  }
1703
1705
  });
1704
1706
  },
1705
- tabIndex: 0
1707
+ tabIndex: 0,
1708
+ disabled: searchText.length === 0 || replaceText.length === 0
1706
1709
  }, findAndReplace.replaceBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1707
1710
  id: "searchAllBtn",
1708
1711
  variant: "secondary",
@@ -1716,10 +1719,11 @@ var SearchReplace = function SearchReplace(_ref) {
1716
1719
  if (___default['default'].isEmpty(res)) showAlert(findAndReplace.noFindTip);
1717
1720
  });
1718
1721
  },
1719
- tabIndex: 0
1722
+ tabIndex: 0,
1723
+ disabled: searchText.length === 0
1720
1724
  }, findAndReplace.allFindBtn), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
1721
1725
  id: "searchNextBtn",
1722
- variant: "secondary",
1726
+ variant: "default",
1723
1727
  className: "min-w-fit",
1724
1728
  onClick: function onClick() {
1725
1729
  return setContext(function (draftCtx) {
@@ -1728,10 +1732,13 @@ var SearchReplace = function SearchReplace(_ref) {
1728
1732
  if (alertMsg != null) showAlert(alertMsg);
1729
1733
  });
1730
1734
  },
1731
- tabIndex: 0
1732
- }, findAndReplace.findBtn)))), searchResult.length > 0 && (/*#__PURE__*/React__default['default'].createElement("div", {
1735
+ tabIndex: 0,
1736
+ disabled: searchText.length === 0
1737
+ }, findAndReplace.findBtn))), searchResult.length > 0 && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(ui.Divider, {
1738
+ className: "w-full border-t-[1px] mb-4"
1739
+ }), /*#__PURE__*/React__default['default'].createElement("div", {
1733
1740
  ref: tableContainerRef,
1734
- className: "px-6 pb-6 max-h-[300px] overflow-y-auto",
1741
+ className: "mb-6 table-container max-h-[300px] overflow-y-auto",
1735
1742
  onMouseDown: function onMouseDown(e) {
1736
1743
  var _tableContainerRef$cu;
1737
1744
  if (e.target === tableContainerRef.current || ((_tableContainerRef$cu = tableContainerRef.current) === null || _tableContainerRef$cu === void 0 ? void 0 : _tableContainerRef$cu.contains(e.target))) {
@@ -1740,6 +1747,19 @@ var SearchReplace = function SearchReplace(_ref) {
1740
1747
  (_tableContainerRef$cu2 = tableContainerRef.current) === null || _tableContainerRef$cu2 === void 0 ? void 0 : _tableContainerRef$cu2.focus();
1741
1748
  }
1742
1749
  },
1750
+ onWheel: function onWheel(e) {
1751
+ e.preventDefault();
1752
+ e.stopPropagation();
1753
+ if (tableContainerRef.current) {
1754
+ tableContainerRef.current.scrollTop += e.deltaY;
1755
+ }
1756
+ },
1757
+ onTouchStart: function onTouchStart(e) {
1758
+ e.stopPropagation();
1759
+ },
1760
+ onTouchMove: function onTouchMove(e) {
1761
+ e.stopPropagation();
1762
+ },
1743
1763
  tabIndex: 0
1744
1764
  }, /*#__PURE__*/React__default['default'].createElement(ui.Table, {
1745
1765
  id: "searchAllbox"
@@ -1747,10 +1767,10 @@ var SearchReplace = function SearchReplace(_ref) {
1747
1767
  className: "color-bg-secondary"
1748
1768
  }, /*#__PURE__*/React__default['default'].createElement(ui.TableRow, null, /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetSheet), /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetCell), /*#__PURE__*/React__default['default'].createElement(ui.TableHead, null, findAndReplace.searchTargetValue))), /*#__PURE__*/React__default['default'].createElement(ui.TableBody, null, searchResult.map(function (v) {
1749
1769
  return /*#__PURE__*/React__default['default'].createElement(ui.TableRow, {
1750
- className: "".concat(___default['default'].isEqual(selectedCell, {
1770
+ className: ui.cn(___default['default'].isEqual(selectedCell, {
1751
1771
  r: v.r,
1752
1772
  c: v.c
1753
- }) ? "on" : ""),
1773
+ }) ? "color-bg-default-selected" : ""),
1754
1774
  key: v.cellPosition,
1755
1775
  onClick: function onClick() {
1756
1776
  setContext(function (draftCtx) {
@@ -1773,7 +1793,7 @@ var SearchReplace = function SearchReplace(_ref) {
1773
1793
  }, v.cellPosition), /*#__PURE__*/React__default['default'].createElement(ui.TableCell, {
1774
1794
  className: "find-replace-table-cell"
1775
1795
  }, v.value));
1776
- })))))));
1796
+ })))))))));
1777
1797
  };
1778
1798
 
1779
1799
  var LinkEditCard = function LinkEditCard(_ref) {
@@ -2502,13 +2522,14 @@ function useDialog() {
2502
2522
  var _useContext = React.useContext(ModalContext),
2503
2523
  showModal = _useContext.showModal,
2504
2524
  hideModal = _useContext.hideModal;
2505
- var showDialog = React.useCallback(function (content, type) {
2506
- var onOk = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : hideModal;
2507
- var onCancel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : hideModal;
2525
+ var showDialog = React.useCallback(function (content, type, title) {
2526
+ var onOk = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : hideModal;
2527
+ var onCancel = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : hideModal;
2508
2528
  showModal(/*#__PURE__*/React__default['default'].createElement(Dialog, {
2509
2529
  type: type,
2510
2530
  onOk: onOk,
2511
- onCancel: onCancel
2531
+ onCancel: onCancel,
2532
+ title: title
2512
2533
  }, content));
2513
2534
  }, [hideModal, showModal]);
2514
2535
  return {
@@ -3022,6 +3043,21 @@ var DataVerification = function DataVerification() {
3022
3043
  }, button.cancel));
3023
3044
  };
3024
3045
 
3046
+ function getDisplayedRangeTxt(context) {
3047
+ var _context$rangeDialog$, _context$rangeDialog;
3048
+ if (context.luckysheet_select_save) {
3049
+ var range = context.luckysheet_select_save[context.luckysheet_select_save.length - 1];
3050
+ return fortuneCore.getRangetxt(context, context.currentSheetId, range, context.currentSheetId);
3051
+ }
3052
+ return (_context$rangeDialog$ = (_context$rangeDialog = context.rangeDialog) === null || _context$rangeDialog === void 0 ? void 0 : _context$rangeDialog.rangeTxt) !== null && _context$rangeDialog$ !== void 0 ? _context$rangeDialog$ : "";
3053
+ }
3054
+
3055
+ var datepickerStyles = "\n .datepicker-toggle {\n display: inline-block;\n position: relative;\n width: 100%;\n }\n \n .datepicker-toggle-button {\n opacity: 0.3;\n position: absolute;\n right: 12px;\n top: 50%;\n transform: translateY(-50%);\n width: 16px;\n height: 16px;\n background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjMiIHk9IjQiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgcng9IjIiIHJ5PSIyIj48L3JlY3Q+PGxpbmUgeDE9IjE2IiB5MT0iMiIgeDI9IjE2IiB5Mj0iNiI+PC9saW5lPjxsaW5lIHgxPSI4IiB5MT0iMiIgeDI9IjgiIHkyPSI2Ij48L2xpbmU+PGxpbmUgeDE9IjMiIHkxPSIxMCIgeDI9IjIxIiB5Mj0iMTAiPjwvbGluZT48L3N2Zz4=');\n background-repeat: no-repeat;\n background-position: center;\n pointer-events: none;\n }\n \n .datepicker-input {\n width: 100%;\n padding: 8px 12px;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n font-size: 14px;\n line-height: 1.5;\n color: #1a202c;\n background-color: #fff;\n cursor: pointer;\n }\n \n .datepicker-input::-webkit-calendar-picker-indicator {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n cursor: pointer;\n opacity: 0;\n }\n \n .datepicker-input:focus {\n outline: none;\n border-color: #4299e1;\n box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.1);\n }\n";
3056
+ if (typeof document !== "undefined") {
3057
+ var styleSheet = document.createElement("style");
3058
+ styleSheet.textContent = datepickerStyles;
3059
+ document.head.appendChild(styleSheet);
3060
+ }
3025
3061
  var ConditionRules = function ConditionRules(_ref) {
3026
3062
  var type = _ref.type;
3027
3063
  var _useContext = React.useContext(WorkbookContext),
@@ -3035,12 +3071,23 @@ var ConditionRules = function ConditionRules(_ref) {
3035
3071
  protection = _locale.protection,
3036
3072
  generalDialog = _locale.generalDialog;
3037
3073
  var _useState = React.useState({
3038
- textColor: "#000000",
3039
- cellColor: "#000000"
3074
+ textColor: "#FFFFFF",
3075
+ cellColor: "#D82E2A"
3040
3076
  }),
3041
3077
  _useState2 = _slicedToArray(_useState, 2),
3042
3078
  colorRules = _useState2[0],
3043
3079
  setColorRules = _useState2[1];
3080
+ var dataSelectRange = React.useCallback(function (selectType) {
3081
+ hideDialog();
3082
+ setContext(function (ctx) {
3083
+ ctx.conditionRules.textColor.color = colorRules.textColor;
3084
+ ctx.conditionRules.cellColor.color = colorRules.cellColor;
3085
+ ctx.rangeDialog.show = true;
3086
+ ctx.rangeDialog.type = selectType;
3087
+ ctx.rangeDialog.rangeTxt = ctx.conditionRules.rulesValue;
3088
+ ctx.rangeDialog.singleSelect = true;
3089
+ });
3090
+ }, [colorRules.cellColor, colorRules.textColor, hideDialog, setContext]);
3044
3091
  var close = React.useCallback(function (closeType) {
3045
3092
  if (closeType === "confirm") {
3046
3093
  setContext(function (ctx) {
@@ -3109,17 +3156,16 @@ var ConditionRules = function ConditionRules(_ref) {
3109
3156
  ctx.rangeDialog.rangeTxt = "";
3110
3157
  });
3111
3158
  }, []);
3159
+ var titleType = type === "top10_percent" ? "top10" : type === "last10_percent" ? "last10" : type;
3112
3160
  return /*#__PURE__*/React__default['default'].createElement("div", {
3113
3161
  className: "condition-rules"
3162
+ }, !["aboveAverage", "belowAverage"].includes(type) && (/*#__PURE__*/React__default['default'].createElement("div", {
3163
+ className: "flex flex-col"
3114
3164
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3115
- className: "condition-rules-title"
3116
- }, conditionformat["conditionformat_".concat(type)]), /*#__PURE__*/React__default['default'].createElement("div", {
3117
- className: "conditin-rules-value"
3118
- }, conditionformat["conditionformat_".concat(type, "_title")]), (type === "greaterThan" || type === "lessThan" || type === "equal" || type === "textContains") && (/*#__PURE__*/React__default['default'].createElement("div", {
3119
- className: "condition-rules-inpbox"
3120
- }, /*#__PURE__*/React__default['default'].createElement("input", {
3121
- className: "condition-rules-input",
3122
- type: "text",
3165
+ className: "condition-rules-value text-heading-xsm"
3166
+ }, conditionformat["conditionformat_".concat(titleType, "_title")]), (type === "greaterThan" || type === "lessThan" || type === "equal" || type === "textContains") && (/*#__PURE__*/React__default['default'].createElement("div", {
3167
+ className: "w-full"
3168
+ }, /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3123
3169
  value: context.conditionRules.rulesValue,
3124
3170
  onChange: function onChange(e) {
3125
3171
  var value = e.target.value;
@@ -3128,12 +3174,11 @@ var ConditionRules = function ConditionRules(_ref) {
3128
3174
  });
3129
3175
  }
3130
3176
  }))), type === "between" && (/*#__PURE__*/React__default['default'].createElement("div", {
3131
- className: "condition-rules-between-box"
3177
+ className: "w-full flex gap-2 items-center"
3132
3178
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3133
- className: "condition-rules-between-inpbox"
3134
- }, /*#__PURE__*/React__default['default'].createElement("input", {
3135
- className: "condition-rules-between-input",
3136
- type: "text",
3179
+ className: "w-full"
3180
+ }, /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3181
+ placeholder: "From",
3137
3182
  value: context.conditionRules.betweenValue.value1,
3138
3183
  onChange: function onChange(e) {
3139
3184
  var value = e.target.value;
@@ -3141,15 +3186,10 @@ var ConditionRules = function ConditionRules(_ref) {
3141
3186
  ctx.conditionRules.betweenValue.value1 = value;
3142
3187
  });
3143
3188
  }
3144
- })), /*#__PURE__*/React__default['default'].createElement("span", {
3145
- style: {
3146
- margin: "0px 4px"
3147
- }
3148
- }, conditionformat.to), /*#__PURE__*/React__default['default'].createElement("div", {
3149
- className: "condition-rules-between-inpbox"
3150
- }, /*#__PURE__*/React__default['default'].createElement("input", {
3151
- className: "condition-rules-between-input",
3152
- type: "text",
3189
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
3190
+ className: "w-full"
3191
+ }, /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3192
+ placeholder: "To",
3153
3193
  value: context.conditionRules.betweenValue.value2,
3154
3194
  onChange: function onChange(e) {
3155
3195
  var value = e.target.value;
@@ -3158,10 +3198,10 @@ var ConditionRules = function ConditionRules(_ref) {
3158
3198
  });
3159
3199
  }
3160
3200
  })))), type === "occurrenceDate" && (/*#__PURE__*/React__default['default'].createElement("div", {
3161
- className: "condition-rules-inpbox"
3201
+ className: "datepicker-toggle"
3162
3202
  }, /*#__PURE__*/React__default['default'].createElement("input", {
3163
3203
  type: "date",
3164
- className: "condition-rules-date",
3204
+ className: "datepicker-input",
3165
3205
  value: context.conditionRules.dateValue,
3166
3206
  onChange: function onChange(e) {
3167
3207
  var value = e.target.value;
@@ -3169,50 +3209,101 @@ var ConditionRules = function ConditionRules(_ref) {
3169
3209
  ctx.conditionRules.dateValue = value;
3170
3210
  });
3171
3211
  }
3172
- }))), type === "duplicateValue" && (/*#__PURE__*/React__default['default'].createElement("select", {
3173
- className: "condition-rules-select",
3174
- onChange: function onChange(e) {
3175
- var value = e.target.value;
3212
+ }), /*#__PURE__*/React__default['default'].createElement("span", {
3213
+ className: "datepicker-toggle-button"
3214
+ }))), type === "duplicateValue" && (/*#__PURE__*/React__default['default'].createElement(ui.Select, {
3215
+ value: context.conditionRules.repeatValue,
3216
+ onValueChange: function onValueChange(value) {
3176
3217
  setContext(function (ctx) {
3177
3218
  ctx.conditionRules.repeatValue = value;
3178
3219
  });
3179
3220
  }
3180
- }, /*#__PURE__*/React__default['default'].createElement("option", {
3221
+ }, /*#__PURE__*/React__default['default'].createElement(ui.SelectTrigger, null, /*#__PURE__*/React__default['default'].createElement(ui.SelectValue, null)), /*#__PURE__*/React__default['default'].createElement(ui.SelectContent, {
3222
+ className: "condition-rules-select"
3223
+ }, /*#__PURE__*/React__default['default'].createElement(ui.SelectItem, {
3181
3224
  value: "0"
3182
- }, conditionformat.duplicateValue), /*#__PURE__*/React__default['default'].createElement("option", {
3225
+ }, conditionformat.duplicateValue), /*#__PURE__*/React__default['default'].createElement(ui.SelectItem, {
3183
3226
  value: "1"
3184
- }, conditionformat.uniqueValue))), (type === "top10" || type === "top10_percent" || type === "last10" || type === "last10_percent") && (/*#__PURE__*/React__default['default'].createElement("div", {
3227
+ }, conditionformat.uniqueValue)))), (type === "top10" || type === "top10_percent" || type === "last10" || type === "last10_percent") && (/*#__PURE__*/React__default['default'].createElement("div", {
3185
3228
  className: "condition-rules-project-box"
3186
- }, type === "top10" || type === "top10_percent" ? conditionformat.top : conditionformat.last, /*#__PURE__*/React__default['default'].createElement("input", {
3187
- className: "condition-rules-project-input",
3229
+ }, type === "top10" || type === "top10_percent" ? conditionformat.top : conditionformat.last, /*#__PURE__*/React__default['default'].createElement("div", {
3230
+ className: "flex items-center"
3231
+ }, /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
3232
+ icon: "Minus",
3233
+ variant: "ghost",
3234
+ className: "!bg-transparent",
3235
+ disabled: Number(context.conditionRules.projectValue) <= 1,
3236
+ onClick: function onClick() {
3237
+ setContext(function (ctx) {
3238
+ var current = Number(ctx.conditionRules.projectValue) || 0;
3239
+ ctx.conditionRules.projectValue = String(Math.max(current - 1, 1));
3240
+ });
3241
+ }
3242
+ }), /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3243
+ className: "condition-rules-project-input pr-0",
3188
3244
  type: "number",
3245
+ min: 1,
3246
+ max: type === "top10" || type === "last10" ? 10 : 100,
3189
3247
  value: context.conditionRules.projectValue,
3190
3248
  onChange: function onChange(e) {
3191
3249
  var value = e.target.value;
3192
3250
  setContext(function (ctx) {
3193
3251
  ctx.conditionRules.projectValue = value;
3194
3252
  });
3253
+ },
3254
+ rightIcon: type === "top10" || type === "last10" ? (/*#__PURE__*/React__default['default'].createElement("span", {
3255
+ className: "color-icon-secondary"
3256
+ }, conditionformat.oneself)) : (/*#__PURE__*/React__default['default'].createElement("span", {
3257
+ className: "color-icon-secondary"
3258
+ }, "%"))
3259
+ }), /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
3260
+ icon: "Plus",
3261
+ variant: "ghost",
3262
+ className: "!bg-transparent",
3263
+ disabled: Number(context.conditionRules.projectValue) >= (type === "top10" || type === "last10" ? 10 : 100),
3264
+ onClick: function onClick() {
3265
+ setContext(function (ctx) {
3266
+ var current = Number(ctx.conditionRules.projectValue) || 0;
3267
+ ctx.conditionRules.projectValue = String(current + 1);
3268
+ });
3269
+ }
3270
+ })))))), /*#__PURE__*/React__default['default'].createElement("div", {
3271
+ className: "flex flex-col"
3272
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
3273
+ className: "condition-rules-value text-heading-xsm"
3274
+ }, conditionformat.applyRange), /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3275
+ rightIcon: /*#__PURE__*/React__default['default'].createElement(ui.LucideIcon, {
3276
+ name: "Grid2x2",
3277
+ size: "sm"
3278
+ }),
3279
+ "aria-hidden": "true",
3280
+ readOnly: true,
3281
+ placeholder: conditionformat.selectRange,
3282
+ value: getDisplayedRangeTxt(context),
3283
+ onClick: function onClick() {
3284
+ dataSelectRange("conditionRules".concat(type));
3195
3285
  }
3196
- }), type === "top10" || type === "last10" ? conditionformat.oneself : "%")), /*#__PURE__*/React__default['default'].createElement("div", {
3197
- className: "condition-rules-set-title"
3286
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
3287
+ className: "flex flex-col"
3288
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
3289
+ className: "condition-rules-set-title text-heading-xsm"
3198
3290
  }, "".concat(conditionformat.setAs, "\uFF1A")), /*#__PURE__*/React__default['default'].createElement("div", {
3199
3291
  className: "condition-rules-setbox"
3200
3292
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3201
3293
  className: "condition-rules-set"
3202
3294
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3203
3295
  className: "condition-rules-color"
3204
- }, /*#__PURE__*/React__default['default'].createElement("input", {
3205
- id: "checkTextColor",
3206
- type: "checkbox",
3207
- className: "condition-rules-check",
3296
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
3297
+ id: "checkTextColor"
3298
+ }, /*#__PURE__*/React__default['default'].createElement(ui.Checkbox, {
3208
3299
  checked: context.conditionRules.textColor.check,
3209
- onChange: function onChange(e) {
3300
+ onCheckedChange: function onCheckedChange(e) {
3210
3301
  var checked = e.target.checked;
3211
3302
  setContext(function (ctx) {
3212
3303
  ctx.conditionRules.textColor.check = checked;
3213
3304
  });
3214
3305
  }
3215
- }), /*#__PURE__*/React__default['default'].createElement("label", {
3306
+ })), /*#__PURE__*/React__default['default'].createElement("label", {
3216
3307
  htmlFor: "checkTextColor",
3217
3308
  className: "condition-rules-label"
3218
3309
  }, conditionformat.textColor), /*#__PURE__*/React__default['default'].createElement("input", {
@@ -3229,18 +3320,17 @@ var ConditionRules = function ConditionRules(_ref) {
3229
3320
  className: "condition-rules-set"
3230
3321
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3231
3322
  className: "condition-rules-color"
3232
- }, /*#__PURE__*/React__default['default'].createElement("input", {
3233
- id: "checkCellColor",
3234
- type: "checkbox",
3235
- className: "condition-rules-check",
3323
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
3324
+ id: "checkCellColor"
3325
+ }, /*#__PURE__*/React__default['default'].createElement(ui.Checkbox, {
3236
3326
  checked: context.conditionRules.cellColor.check,
3237
- onChange: function onChange(e) {
3327
+ onCheckedChange: function onCheckedChange(e) {
3238
3328
  var checked = e.target.checked;
3239
3329
  setContext(function (ctx) {
3240
3330
  ctx.conditionRules.cellColor.check = checked;
3241
3331
  });
3242
3332
  }
3243
- }), /*#__PURE__*/React__default['default'].createElement("label", {
3333
+ })), /*#__PURE__*/React__default['default'].createElement("label", {
3244
3334
  htmlFor: "checkCellColor",
3245
3335
  className: "condition-rules-label"
3246
3336
  }, conditionformat.cellColor), /*#__PURE__*/React__default['default'].createElement("input", {
@@ -3253,23 +3343,32 @@ var ConditionRules = function ConditionRules(_ref) {
3253
3343
  draft.cellColor = value;
3254
3344
  }));
3255
3345
  }
3256
- })))), /*#__PURE__*/React__default['default'].createElement("div", {
3257
- className: "button-basic button-primary",
3346
+ }))))), /*#__PURE__*/React__default['default'].createElement(ui.Divider, {
3347
+ className: "w-full border-t-[1px]"
3348
+ }), /*#__PURE__*/React__default['default'].createElement("div", {
3349
+ className: "flex gap-2 justify-end"
3350
+ }, /*#__PURE__*/React__default['default'].createElement(ui.Button, {
3351
+ variant: "secondary",
3352
+ style: {
3353
+ minWidth: "80px"
3354
+ },
3258
3355
  onClick: function onClick() {
3259
- close("confirm");
3356
+ close("close");
3260
3357
  },
3261
3358
  tabIndex: 0
3262
- }, button.confirm), /*#__PURE__*/React__default['default'].createElement("div", {
3263
- className: "button-basic button-close",
3359
+ }, button.cancel), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
3360
+ variant: "default",
3361
+ style: {
3362
+ minWidth: "80px"
3363
+ },
3264
3364
  onClick: function onClick() {
3265
- close("close");
3365
+ close("confirm");
3266
3366
  },
3267
3367
  tabIndex: 0
3268
- }, button.cancel));
3368
+ }, button.apply)));
3269
3369
  };
3270
3370
 
3271
3371
  var RangeDialog = function RangeDialog() {
3272
- var _context$rangeDialog$, _context$rangeDialog;
3273
3372
  var _useContext = React.useContext(WorkbookContext),
3274
3373
  context = _useContext.context,
3275
3374
  setContext = _useContext.setContext;
@@ -3278,7 +3377,7 @@ var RangeDialog = function RangeDialog() {
3278
3377
  var _locale = fortuneCore.locale(context),
3279
3378
  dataVerification = _locale.dataVerification,
3280
3379
  button = _locale.button;
3281
- var _useState = React.useState((_context$rangeDialog$ = (_context$rangeDialog = context.rangeDialog) === null || _context$rangeDialog === void 0 ? void 0 : _context$rangeDialog.rangeTxt) !== null && _context$rangeDialog$ !== void 0 ? _context$rangeDialog$ : ""),
3380
+ var _useState = React.useState(getDisplayedRangeTxt(context)),
3282
3381
  _useState2 = _slicedToArray(_useState, 2),
3283
3382
  rangeTxt2 = _useState2[0],
3284
3383
  setRangeTxt2 = _useState2[1];
@@ -3292,30 +3391,24 @@ var RangeDialog = function RangeDialog() {
3292
3391
  if (rangeDialogType.indexOf("between") >= 0) {
3293
3392
  showDialog(/*#__PURE__*/React__default['default'].createElement(ConditionRules, {
3294
3393
  type: "between"
3295
- }));
3394
+ }), undefined, fortuneCore.locale(context).conditionformat.conditionformat_between);
3296
3395
  return;
3297
3396
  }
3298
3397
  if (rangeDialogType.indexOf("conditionRules") >= 0) {
3299
3398
  var rulesType = rangeDialogType.substring("conditionRules".length, rangeDialogType.length);
3300
3399
  showDialog(/*#__PURE__*/React__default['default'].createElement(ConditionRules, {
3301
3400
  type: rulesType
3302
- }));
3401
+ }), undefined, fortuneCore.locale(context).conditionformat["conditionformat_".concat(rulesType)]);
3303
3402
  return;
3304
3403
  }
3305
3404
  showDialog(/*#__PURE__*/React__default['default'].createElement(DataVerification, null));
3306
- }, [context.rangeDialog, setContext, showDialog]);
3405
+ }, [setContext, showDialog, context]);
3307
3406
  React.useEffect(function () {
3308
- setRangeTxt2(function (r) {
3309
- if (context.luckysheet_select_save) {
3310
- var range = context.luckysheet_select_save[context.luckysheet_select_save.length - 1];
3311
- r = fortuneCore.getRangetxt(context, context.currentSheetId, range, context.currentSheetId);
3312
- return r;
3313
- }
3314
- return "";
3315
- });
3407
+ setRangeTxt2(getDisplayedRangeTxt(context));
3316
3408
  }, [context, context.luckysheet_select_save]);
3317
3409
  return /*#__PURE__*/React__default['default'].createElement("div", {
3318
3410
  id: "range-dialog",
3411
+ className: "fortune-dialog",
3319
3412
  onClick: function onClick(e) {
3320
3413
  return e.stopPropagation();
3321
3414
  },
@@ -3333,15 +3426,34 @@ var RangeDialog = function RangeDialog() {
3333
3426
  },
3334
3427
  tabIndex: 0
3335
3428
  }, /*#__PURE__*/React__default['default'].createElement("div", {
3336
- className: "dialog-title"
3337
- }, dataVerification.selectCellRange), /*#__PURE__*/React__default['default'].createElement("input", {
3429
+ className: ui.cn("flex items-center justify-between border-b color-border-default py-3 px-6")
3430
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
3431
+ className: "text-heading-sm"
3432
+ }, dataVerification.selectCellRange), /*#__PURE__*/React__default['default'].createElement(ui.IconButton, {
3433
+ icon: "X",
3434
+ variant: "ghost",
3435
+ onClick: close,
3436
+ tabIndex: 0
3437
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
3438
+ className: "px-6 pb-6 pt-4 text-body-sm"
3439
+ }, /*#__PURE__*/React__default['default'].createElement(ui.TextField, {
3440
+ className: "w-full",
3338
3441
  readOnly: true,
3339
3442
  placeholder: dataVerification.selectCellRange2,
3340
3443
  value: rangeTxt2
3341
- }), /*#__PURE__*/React__default['default'].createElement("div", {
3342
- className: "button-basic button-primary",
3444
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
3445
+ className: "px-6 pb-6 flex flex-row gap-2 justify-end"
3446
+ }, /*#__PURE__*/React__default['default'].createElement(ui.Button, {
3447
+ variant: "secondary",
3448
+ style: {
3449
+ minWidth: "80px"
3450
+ },
3451
+ onClick: close,
3452
+ tabIndex: 0
3453
+ }, button.close), /*#__PURE__*/React__default['default'].createElement(ui.Button, {
3454
+ variant: "default",
3343
3455
  style: {
3344
- marginLeft: "6px"
3456
+ minWidth: "80px"
3345
3457
  },
3346
3458
  onClick: function onClick() {
3347
3459
  setContext(function (ctx) {
@@ -3350,13 +3462,7 @@ var RangeDialog = function RangeDialog() {
3350
3462
  close();
3351
3463
  },
3352
3464
  tabIndex: 0
3353
- }, button.confirm), /*#__PURE__*/React__default['default'].createElement("div", {
3354
- className: "button-basic button-close",
3355
- onClick: function onClick() {
3356
- close();
3357
- },
3358
- tabIndex: 0
3359
- }, button.close));
3465
+ }, button.confirm)));
3360
3466
  };
3361
3467
 
3362
3468
  function useOutsideClick(containerRef, handler, deps, optionalContainerRef) {
@@ -4275,7 +4381,6 @@ var Combo = function Combo(_ref) {
4275
4381
  var openState = React.useRef(false);
4276
4382
  var triggerRef = React.useRef(null);
4277
4383
  useOutsideClick(popupRef, function () {
4278
- console.log("Combo useOutsideClick", openState.current);
4279
4384
  setOpen(false);
4280
4385
  openState.current = false;
4281
4386
  }, [], triggerRef);
@@ -4307,10 +4412,8 @@ var Combo = function Combo(_ref) {
4307
4412
  ref: triggerRef,
4308
4413
  className: "fortune-toolbar-combo-button",
4309
4414
  onClick: function onClick(e) {
4310
- console.log("Combo onClick pop ref", popupRef.current, "ll", document.getElementsByClassName("fortune-toolbar-combo-popup"));
4311
4415
  openState.current = !openState.current;
4312
4416
  setOpen(openState.current);
4313
- console.log("Combo onClick", iconId, _onClick, open, openState.current, e, e.target);
4314
4417
  if (_onClick) _onClick(e);else setOpen(openState.current);
4315
4418
  },
4316
4419
  tabIndex: 0,
@@ -4326,7 +4429,7 @@ var Combo = function Combo(_ref) {
4326
4429
  className: "fortune-tooltip"
4327
4430
  }, tooltip)), open && (/*#__PURE__*/React__default['default'].createElement("div", {
4328
4431
  ref: popupRef,
4329
- className: "fortune-toolbar-combo-popup",
4432
+ className: "fortune-toolbar-combo-popup color-text-default",
4330
4433
  style: popupPosition
4331
4434
  }, children === null || children === void 0 ? void 0 : children(setOpen))));
4332
4435
  };
@@ -4358,209 +4461,10 @@ var Option = function Option(_ref2) {
4358
4461
  }, iconId && /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
4359
4462
  name: iconId
4360
4463
  }), /*#__PURE__*/React__default['default'].createElement("div", {
4361
- className: "fortuen-toolbar-text"
4464
+ className: "fortuen-toolbar-text color-text-default text-body-sm"
4362
4465
  }, children));
4363
4466
  };
4364
4467
 
4365
- var FormulaSearch$1 = function FormulaSearch(_ref) {
4366
- var _onCancel = _ref.onCancel;
4367
- var _useContext = React.useContext(WorkbookContext),
4368
- context = _useContext.context,
4369
- setContext = _useContext.setContext,
4370
- _useContext$refs = _useContext.refs,
4371
- cellInput = _useContext$refs.cellInput,
4372
- globalCache = _useContext$refs.globalCache;
4373
- var _useState = React.useState(20),
4374
- _useState2 = _slicedToArray(_useState, 2),
4375
- selectedType = _useState2[0],
4376
- setSelectedType = _useState2[1];
4377
- var _useState3 = React.useState(0),
4378
- _useState4 = _slicedToArray(_useState3, 2),
4379
- selectedFuncIndex = _useState4[0],
4380
- setSelectedFuncIndex = _useState4[1];
4381
- var _useState5 = React.useState(""),
4382
- _useState6 = _slicedToArray(_useState5, 2),
4383
- searchText = _useState6[0],
4384
- setSearchText = _useState6[1];
4385
- var _locale = fortuneCore.locale(context),
4386
- formulaMore = _locale.formulaMore,
4387
- functionlist = _locale.functionlist,
4388
- button = _locale.button;
4389
- var typeList = React.useMemo(function () {
4390
- return [{
4391
- t: 20,
4392
- n: formulaMore.Crypto
4393
- }, {
4394
- t: 0,
4395
- n: formulaMore.Math
4396
- }, {
4397
- t: 1,
4398
- n: formulaMore.Statistical
4399
- }, {
4400
- t: 2,
4401
- n: formulaMore.Lookup
4402
- }, {
4403
- t: 3,
4404
- n: formulaMore.luckysheet
4405
- }, {
4406
- t: 4,
4407
- n: formulaMore.dataMining
4408
- }, {
4409
- t: 5,
4410
- n: formulaMore.Database
4411
- }, {
4412
- t: 6,
4413
- n: formulaMore.Date
4414
- }, {
4415
- t: 7,
4416
- n: formulaMore.Filter
4417
- }, {
4418
- t: 8,
4419
- n: formulaMore.Financial
4420
- }, {
4421
- t: 9,
4422
- n: formulaMore.Engineering
4423
- }, {
4424
- t: 10,
4425
- n: formulaMore.Logical
4426
- }, {
4427
- t: 11,
4428
- n: formulaMore.Operator
4429
- }, {
4430
- t: 12,
4431
- n: formulaMore.Text
4432
- }, {
4433
- t: 13,
4434
- n: formulaMore.Parser
4435
- }, {
4436
- t: 14,
4437
- n: formulaMore.Array
4438
- }, {
4439
- t: -1,
4440
- n: formulaMore.other
4441
- }];
4442
- }, [formulaMore]);
4443
- var filteredFunctionList = React.useMemo(function () {
4444
- if (searchText) {
4445
- var list = [];
4446
- var text = ___default['default'].cloneDeep(searchText.toUpperCase());
4447
- for (var i = 0; i < functionlist.length; i += 1) {
4448
- if (/^[a-zA-Z]+$/.test(text)) {
4449
- if (functionlist[i].n.indexOf(text) !== -1) {
4450
- list.push(functionlist[i]);
4451
- }
4452
- } else if (functionlist[i].a.indexOf(text) !== -1) {
4453
- list.push(functionlist[i]);
4454
- }
4455
- }
4456
- return list;
4457
- }
4458
- return ___default['default'].filter(functionlist, function (v) {
4459
- return v.t === selectedType;
4460
- });
4461
- }, [functionlist, selectedType, searchText]);
4462
- var onConfirm = React.useCallback(function () {
4463
- var _context$luckysheet_s;
4464
- var last = (_context$luckysheet_s = context.luckysheet_select_save) === null || _context$luckysheet_s === void 0 ? void 0 : _context$luckysheet_s[context.luckysheet_select_save.length - 1];
4465
- var row_index = last === null || last === void 0 ? void 0 : last.row_focus;
4466
- var col_index = last === null || last === void 0 ? void 0 : last.column_focus;
4467
- if (!last) {
4468
- row_index = 0;
4469
- col_index = 0;
4470
- } else {
4471
- if (row_index == null) {
4472
- var _last$row = _slicedToArray(last.row, 1);
4473
- row_index = _last$row[0];
4474
- }
4475
- if (col_index == null) {
4476
- var _last$column = _slicedToArray(last.column, 1);
4477
- col_index = _last$column[0];
4478
- }
4479
- }
4480
- var formulaTxt = "<span dir=\"auto\" class=\"luckysheet-formula-text-color\">=</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">".concat(filteredFunctionList[selectedFuncIndex].n.toUpperCase(), "</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">(</span>");
4481
- setContext(function (ctx) {
4482
- if (cellInput.current != null) {
4483
- ctx.luckysheetCellUpdate = [row_index, col_index];
4484
- globalCache.doNotUpdateCell = true;
4485
- cellInput.current.innerHTML = formulaTxt;
4486
- var spans = cellInput.current.childNodes;
4487
- if (!___default['default'].isEmpty(spans)) {
4488
- fortuneCore.setCaretPosition(ctx, spans[spans.length - 1], 0, 1);
4489
- }
4490
- ctx.functionHint = filteredFunctionList[selectedFuncIndex].n.toUpperCase();
4491
- ctx.functionCandidates = [];
4492
- if (___default['default'].isEmpty(ctx.formulaCache.functionlistMap)) {
4493
- for (var i = 0; i < functionlist.length; i += 1) {
4494
- ctx.formulaCache.functionlistMap[functionlist[i].n] = functionlist[i];
4495
- }
4496
- }
4497
- _onCancel();
4498
- }
4499
- });
4500
- }, [cellInput, context.luckysheet_select_save, filteredFunctionList, globalCache, selectedFuncIndex, setContext, _onCancel, functionlist]);
4501
- var onCancel = React.useCallback(function () {
4502
- setContext(function (ctx) {
4503
- fortuneCore.cancelNormalSelected(ctx);
4504
- if (cellInput.current) {
4505
- cellInput.current.innerHTML = "";
4506
- }
4507
- });
4508
- _onCancel();
4509
- }, [_onCancel, cellInput, setContext]);
4510
- return /*#__PURE__*/React__default['default'].createElement("div", {
4511
- id: "luckysheet-search-formula"
4512
- }, /*#__PURE__*/React__default['default'].createElement("div", {
4513
- className: "inpbox"
4514
- }, /*#__PURE__*/React__default['default'].createElement("div", null, formulaMore.findFunctionTitle, "\uFF1A"), /*#__PURE__*/React__default['default'].createElement("input", {
4515
- className: "formulaInputFocus",
4516
- id: "searchFormulaListInput",
4517
- placeholder: formulaMore.tipInputFunctionName,
4518
- spellCheck: "false",
4519
- onChange: function onChange(e) {
4520
- return setSearchText(e.target.value);
4521
- }
4522
- })), /*#__PURE__*/React__default['default'].createElement("div", {
4523
- className: "selbox"
4524
- }, /*#__PURE__*/React__default['default'].createElement("span", null, formulaMore.selectCategory, "\uFF1A"), /*#__PURE__*/React__default['default'].createElement("select", {
4525
- id: "formulaTypeSelect",
4526
- onChange: function onChange(e) {
4527
- setSelectedType(parseInt(e.target.value, 10));
4528
- setSelectedFuncIndex(0);
4529
- }
4530
- }, typeList.map(function (v) {
4531
- return /*#__PURE__*/React__default['default'].createElement("option", {
4532
- key: v.t,
4533
- value: v.t
4534
- }, v.n);
4535
- }))), /*#__PURE__*/React__default['default'].createElement("div", {
4536
- className: "listbox",
4537
- style: {
4538
- height: 200
4539
- }
4540
- }, /*#__PURE__*/React__default['default'].createElement("div", null, formulaMore.selectFunctionTitle, "\uFF1A"), /*#__PURE__*/React__default['default'].createElement("div", {
4541
- className: "formulaList"
4542
- }, filteredFunctionList.map(function (v, index) {
4543
- return /*#__PURE__*/React__default['default'].createElement("div", {
4544
- className: "listBox".concat(index === selectedFuncIndex ? " on" : ""),
4545
- key: v.n,
4546
- onClick: function onClick() {
4547
- return setSelectedFuncIndex(index);
4548
- },
4549
- tabIndex: 0
4550
- }, /*#__PURE__*/React__default['default'].createElement("div", null, v.n), /*#__PURE__*/React__default['default'].createElement("div", null, v.a));
4551
- }))), /*#__PURE__*/React__default['default'].createElement("div", {
4552
- className: "fortune-dialog-box-button-container"
4553
- }, /*#__PURE__*/React__default['default'].createElement("div", {
4554
- className: "fortune-message-box-button button-primary",
4555
- onClick: onConfirm,
4556
- tabIndex: 0
4557
- }, button.confirm), /*#__PURE__*/React__default['default'].createElement("div", {
4558
- className: "fortune-message-box-button button-default",
4559
- onClick: onCancel,
4560
- tabIndex: 0
4561
- }, button.cancel)));
4562
- };
4563
-
4564
4468
  var SplitColumn = function SplitColumn() {
4565
4469
  var _useContext = React.useContext(WorkbookContext),
4566
4470
  context = _useContext.context,
@@ -4604,7 +4508,7 @@ var SplitColumn = function SplitColumn() {
4604
4508
  }
4605
4509
  }
4606
4510
  if (dataCover) {
4607
- showDialog(splitText.splitConfirmToExe, "yesno", function () {
4511
+ showDialog(splitText.splitConfirmToExe, "yesno", undefined, function () {
4608
4512
  hideDialog();
4609
4513
  setContext(function (ctx) {
4610
4514
  fortuneCore.updateMoreCell(r, c, dataArr, ctx);
@@ -4927,33 +4831,53 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
4927
4831
  showDialog = _useDialog.showDialog;
4928
4832
  var _locale = fortuneCore.locale(context),
4929
4833
  conditionformat = _locale.conditionformat;
4930
- var showSubMenu = React.useCallback(function (e) {
4931
- var target = e.target;
4932
- var menuItem = target.className === "fortune-toolbar-menu-line" ? target.parentElement : target;
4834
+ var activeSubMenuRef = React.useRef(null);
4835
+ var updateSubMenuPosition = React.useCallback(function (subMenu, menuItem) {
4933
4836
  var menuItemRect = menuItem.getBoundingClientRect();
4934
4837
  var workbookContainerRect = refs.workbookContainer.current.getBoundingClientRect();
4935
- var subMenu = menuItem.querySelector(".condition-format-sub-menu");
4936
- if (___default['default'].isNil(subMenu)) return;
4937
- var menuItemStyle = window.getComputedStyle(menuItem);
4938
- var menuItemPaddingRight = parseFloat(menuItemStyle.getPropertyValue("padding-right").replace("px", ""));
4939
- if (workbookContainerRect.right - menuItemRect.right < parseFloat(subMenu.style.width.replace("px", ""))) {
4940
- subMenu.style.display = "block";
4941
- subMenu.style.right = "".concat(menuItemRect.width - menuItemPaddingRight, "px");
4838
+ var subMenuWidth = subMenu.offsetWidth;
4839
+ var availableSpace = workbookContainerRect.right - menuItemRect.right;
4840
+ if (availableSpace < subMenuWidth) {
4841
+ subMenu.style.right = "108%";
4942
4842
  } else {
4943
- subMenu.style.display = "block";
4944
- subMenu.style.right = "".concat(-(parseFloat(subMenu.style.width.replace("px", "")) + menuItemPaddingRight), "px");
4843
+ subMenu.style.right = "-100%";
4945
4844
  }
4946
4845
  }, [refs.workbookContainer]);
4846
+ var showSubMenu = React.useCallback(function (e) {
4847
+ var target = e.target;
4848
+ var menuItem = target.className === "fortune-toolbar-menu-line" ? target.parentElement : target;
4849
+ var subMenu = menuItem.querySelector(".condition-format-sub-menu");
4850
+ if (___default['default'].isNil(subMenu)) return;
4851
+ subMenu.style.display = "block";
4852
+ activeSubMenuRef.current = subMenu;
4853
+ updateSubMenuPosition(subMenu, menuItem);
4854
+ }, [updateSubMenuPosition]);
4947
4855
  var hideSubMenu = React.useCallback(function (e) {
4948
4856
  var target = e.target;
4949
4857
  if (target.className === "condition-format-sub-menu") {
4950
4858
  target.style.display = "none";
4859
+ activeSubMenuRef.current = null;
4951
4860
  return;
4952
4861
  }
4953
4862
  var subMenu = target.className === "condition-format-item" ? target.parentElement : target.querySelector(".condition-format-sub-menu");
4954
4863
  if (___default['default'].isNil(subMenu)) return;
4955
4864
  subMenu.style.display = "none";
4865
+ activeSubMenuRef.current = null;
4956
4866
  }, []);
4867
+ React.useEffect(function () {
4868
+ var handleResize = function handleResize() {
4869
+ if (activeSubMenuRef.current) {
4870
+ var menuItem = activeSubMenuRef.current.parentElement;
4871
+ if (menuItem) {
4872
+ updateSubMenuPosition(activeSubMenuRef.current, menuItem);
4873
+ }
4874
+ }
4875
+ };
4876
+ window.addEventListener("resize", handleResize);
4877
+ return function () {
4878
+ window.removeEventListener("resize", handleResize);
4879
+ };
4880
+ }, [updateSubMenuPosition]);
4957
4881
  var getConditionFormatItem = React.useCallback(function (name) {
4958
4882
  if (name === "-") {
4959
4883
  return /*#__PURE__*/React__default['default'].createElement(MenuDivider, {
@@ -4974,8 +4898,7 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
4974
4898
  }), /*#__PURE__*/React__default['default'].createElement("div", {
4975
4899
  className: "condition-format-sub-menu",
4976
4900
  style: {
4977
- display: "none",
4978
- width: 150
4901
+ display: "none"
4979
4902
  }
4980
4903
  }, [{
4981
4904
  text: "greaterThan",
@@ -5000,13 +4923,13 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
5000
4923
  value: "##"
5001
4924
  }].map(function (v) {
5002
4925
  return /*#__PURE__*/React__default['default'].createElement("div", {
5003
- className: "condition-format-item",
4926
+ className: "condition-format-item text-body-sm color-text-default",
5004
4927
  key: v.text,
5005
4928
  onClick: function onClick() {
5006
- setOpen(false);
4929
+ setOpen === null || setOpen === void 0 ? void 0 : setOpen(false);
5007
4930
  showDialog(/*#__PURE__*/React__default['default'].createElement(ConditionRules, {
5008
4931
  type: v.text
5009
- }));
4932
+ }), undefined, conditionformat["conditionformat_".concat(v.text)]);
5010
4933
  },
5011
4934
  tabIndex: 0
5012
4935
  }, conditionformat[v.text], /*#__PURE__*/React__default['default'].createElement("span", null, v.value));
@@ -5025,8 +4948,7 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
5025
4948
  }), /*#__PURE__*/React__default['default'].createElement("div", {
5026
4949
  className: "condition-format-sub-menu",
5027
4950
  style: {
5028
- display: "none",
5029
- width: 180
4951
+ display: "none"
5030
4952
  }
5031
4953
  }, [{
5032
4954
  text: "top10",
@@ -5048,13 +4970,13 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
5048
4970
  value: conditionformat.below
5049
4971
  }].map(function (v) {
5050
4972
  return /*#__PURE__*/React__default['default'].createElement("div", {
5051
- className: "condition-format-item",
4973
+ className: "condition-format-item text-body-sm color-text-default",
5052
4974
  key: v.text,
5053
4975
  onClick: function onClick() {
5054
- setOpen(false);
4976
+ setOpen === null || setOpen === void 0 ? void 0 : setOpen(false);
5055
4977
  showDialog(/*#__PURE__*/React__default['default'].createElement(ConditionRules, {
5056
4978
  type: v.text
5057
- }));
4979
+ }), undefined, conditionformat["conditionformat_".concat(v.text)]);
5058
4980
  },
5059
4981
  tabIndex: 0
5060
4982
  }, conditionformat[v.text], /*#__PURE__*/React__default['default'].createElement("span", null, v.value));
@@ -5103,12 +5025,11 @@ var ConditionalFormat = function ConditionalFormat(_ref) {
5103
5025
  }), /*#__PURE__*/React__default['default'].createElement("div", {
5104
5026
  className: "condition-format-sub-menu",
5105
5027
  style: {
5106
- display: "none",
5107
- width: 150
5028
+ display: "none"
5108
5029
  }
5109
5030
  }, ["deleteSheetRule"].map(function (v) {
5110
5031
  return /*#__PURE__*/React__default['default'].createElement("div", {
5111
- className: "condition-format-item",
5032
+ className: "condition-format-item text-body-sm color-text-default",
5112
5033
  key: v,
5113
5034
  style: {
5114
5035
  padding: "6px 10px"
@@ -6347,9 +6268,10 @@ var Toolbar = function Toolbar(_ref) {
6347
6268
  }), /*#__PURE__*/React__default['default'].createElement(MenuDivider, null), /*#__PURE__*/React__default['default'].createElement(Option, {
6348
6269
  key: "formula",
6349
6270
  onClick: function onClick() {
6350
- showDialog(/*#__PURE__*/React__default['default'].createElement(FormulaSearch$1, {
6351
- onCancel: hideDialog
6352
- }));
6271
+ var button = document.getElementById("function-button");
6272
+ if (button) {
6273
+ button.click();
6274
+ }
6353
6275
  setOpen(false);
6354
6276
  }
6355
6277
  }, "".concat(formula.find, "...")));
@@ -6674,7 +6596,11 @@ var Toolbar = function Toolbar(_ref) {
6674
6596
  key: name,
6675
6597
  tooltip: toolbar.sortAndFilter
6676
6598
  }, function (setOpen) {
6677
- return /*#__PURE__*/React__default['default'].createElement(Select, null, _items8.map(function (_ref11, index) {
6599
+ return /*#__PURE__*/React__default['default'].createElement(Select, {
6600
+ style: {
6601
+ minWidth: "11.25rem"
6602
+ }
6603
+ }, _items8.map(function (_ref11, index) {
6678
6604
  var text = _ref11.text,
6679
6605
  iconId = _ref11.iconId,
6680
6606
  value = _ref11.value,
@@ -6686,10 +6612,13 @@ var Toolbar = function Toolbar(_ref) {
6686
6612
  setOpen(false);
6687
6613
  }
6688
6614
  }, /*#__PURE__*/React__default['default'].createElement("div", {
6689
- className: "fortune-toolbar-menu-line"
6690
- }, text, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
6615
+ className: "fortune-toolbar-menu-line gap-1",
6616
+ style: {
6617
+ justifyContent: "start"
6618
+ }
6619
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
6691
6620
  name: iconId
6692
- })))) : (/*#__PURE__*/React__default['default'].createElement(MenuDivider, {
6621
+ }), text))) : (/*#__PURE__*/React__default['default'].createElement(MenuDivider, {
6693
6622
  key: "divider-".concat(index)
6694
6623
  }));
6695
6624
  }));
@@ -7447,120 +7376,6 @@ var Menu = function Menu(_ref) {
7447
7376
  }, children));
7448
7377
  };
7449
7378
 
7450
- var CustomSort = function CustomSort() {
7451
- var _useState = React.useState([]),
7452
- _useState2 = _slicedToArray(_useState, 2),
7453
- rangeColChar = _useState2[0],
7454
- setRangeColChar = _useState2[1];
7455
- var _useState3 = React.useState(true),
7456
- _useState4 = _slicedToArray(_useState3, 2),
7457
- ascOrDesc = _useState4[0],
7458
- setAscOrDesc = _useState4[1];
7459
- var _useContext = React.useContext(WorkbookContext),
7460
- context = _useContext.context,
7461
- setContext = _useContext.setContext;
7462
- var _useState5 = React.useState("0"),
7463
- _useState6 = _slicedToArray(_useState5, 2),
7464
- selectedValue = _useState6[0],
7465
- setSelectedValue = _useState6[1];
7466
- var _useState7 = React.useState(false),
7467
- _useState8 = _slicedToArray(_useState7, 2),
7468
- isTitleChange = _useState8[0],
7469
- setIstitleChange = _useState8[1];
7470
- var _locale = fortuneCore.locale(context),
7471
- sort = _locale.sort;
7472
- var _useDialog = useDialog(),
7473
- hideDialog = _useDialog.hideDialog;
7474
- var col_start = context.luckysheet_select_save[0].column[0];
7475
- var col_end = context.luckysheet_select_save[0].column[1];
7476
- var row_start = context.luckysheet_select_save[0].row[0];
7477
- var row_end = context.luckysheet_select_save[0].row[1];
7478
- var sheetIndex = fortuneCore.getSheetIndex(context, context.currentSheetId);
7479
- var handleSelectChange = function handleSelectChange(event) {
7480
- setSelectedValue(event.target.value);
7481
- };
7482
- var handleRadioChange = React.useCallback(function (e) {
7483
- var sortValue = e.target.value;
7484
- setAscOrDesc(sortValue === "asc");
7485
- }, []);
7486
- var handleTitleChange = React.useCallback(function (e) {
7487
- var value = e.target.checked;
7488
- setIstitleChange(value);
7489
- }, []);
7490
- React.useEffect(function () {
7491
- var list = [];
7492
- if (isTitleChange) {
7493
- for (var i = col_start; i <= col_end; i += 1) {
7494
- var _context$luckysheetfi, _context$luckysheetfi2;
7495
- var cell = (_context$luckysheetfi = context.luckysheetfile[sheetIndex].data) === null || _context$luckysheetfi === void 0 ? void 0 : (_context$luckysheetfi2 = _context$luckysheetfi[row_start]) === null || _context$luckysheetfi2 === void 0 ? void 0 : _context$luckysheetfi2[i];
7496
- var colHeaderValue = (cell === null || cell === void 0 ? void 0 : cell.m) || (cell === null || cell === void 0 ? void 0 : cell.v);
7497
- if (colHeaderValue) {
7498
- list.push(colHeaderValue);
7499
- } else {
7500
- var ColumnChar = fortuneCore.indexToColumnChar(i);
7501
- list.push("".concat(sort.columnOperation, " ").concat(ColumnChar));
7502
- }
7503
- }
7504
- } else {
7505
- for (var _i = col_start; _i <= col_end; _i += 1) {
7506
- var _ColumnChar = fortuneCore.indexToColumnChar(_i);
7507
- list.push(_ColumnChar);
7508
- }
7509
- }
7510
- setRangeColChar(list);
7511
- }, [col_end, col_start, context.luckysheetfile, isTitleChange, row_start, sheetIndex, sort.columnOperation]);
7512
- return /*#__PURE__*/React__default['default'].createElement("div", {
7513
- className: "fortune-sort"
7514
- }, /*#__PURE__*/React__default['default'].createElement("div", {
7515
- className: "fortune-sort-title"
7516
- }, /*#__PURE__*/React__default['default'].createElement("span", null, /*#__PURE__*/React__default['default'].createElement("span", null, sort.sortRangeTitle), fortuneCore.indexToColumnChar(col_start), row_start + 1, /*#__PURE__*/React__default['default'].createElement("span", null, sort.sortRangeTitleTo), fortuneCore.indexToColumnChar(col_end), row_end + 1)), /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
7517
- className: "fortune-sort-modal"
7518
- }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("input", {
7519
- type: "checkbox",
7520
- id: "fortune-sort-haveheader",
7521
- onChange: handleTitleChange
7522
- }), /*#__PURE__*/React__default['default'].createElement("span", null, sort.hasTitle)), /*#__PURE__*/React__default['default'].createElement("div", {
7523
- className: "fortune-sort-tablec"
7524
- }, /*#__PURE__*/React__default['default'].createElement("table", {
7525
- cellSpacing: "0"
7526
- }, /*#__PURE__*/React__default['default'].createElement("tbody", null, /*#__PURE__*/React__default['default'].createElement("tr", null, /*#__PURE__*/React__default['default'].createElement("td", {
7527
- style: {
7528
- width: "190px"
7529
- }
7530
- }, sort.sortBy, /*#__PURE__*/React__default['default'].createElement("select", {
7531
- name: "sort_0",
7532
- onChange: handleSelectChange
7533
- }, rangeColChar.map(function (col, index) {
7534
- return /*#__PURE__*/React__default['default'].createElement("option", {
7535
- value: index,
7536
- key: index
7537
- }, col);
7538
- }))), /*#__PURE__*/React__default['default'].createElement("td", null, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("input", {
7539
- type: "radio",
7540
- value: "asc",
7541
- defaultChecked: true,
7542
- name: "sort_0",
7543
- onChange: handleRadioChange
7544
- }), /*#__PURE__*/React__default['default'].createElement("span", null, sort.asc)), /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("input", {
7545
- type: "radio",
7546
- value: "desc",
7547
- name: "sort_0",
7548
- onChange: handleRadioChange
7549
- }), /*#__PURE__*/React__default['default'].createElement("span", null, sort.desc))))))))), /*#__PURE__*/React__default['default'].createElement("div", {
7550
- className: "fortune-sort-button"
7551
- }, /*#__PURE__*/React__default['default'].createElement("div", {
7552
- className: "button-basic button-primary",
7553
- onClick: function onClick() {
7554
- setContext(function (draftCtx) {
7555
- fortuneCore.sortSelection(draftCtx, ascOrDesc, parseInt(selectedValue, 10));
7556
- draftCtx.contextMenu = {};
7557
- });
7558
- hideDialog();
7559
- },
7560
- tabIndex: 0
7561
- }, sort.confirm)));
7562
- };
7563
-
7564
7379
  var ContextMenu = function ContextMenu() {
7565
7380
  var _useDialog = useDialog(),
7566
7381
  showDialog = _useDialog.showDialog;
@@ -7586,6 +7401,65 @@ var ContextMenu = function ContextMenu() {
7586
7401
  key: "divider-".concat(i)
7587
7402
  });
7588
7403
  }
7404
+ if (name === "freeze-row") {
7405
+ var freezeState = fortuneCore.getFreezeState(context);
7406
+ var isFrozen = freezeState.isRowFrozen;
7407
+ var isEntireRowSelected = (selection === null || selection === void 0 ? void 0 : selection.row_select) === true;
7408
+ if (!isEntireRowSelected) return null;
7409
+ return /*#__PURE__*/React__default['default'].createElement(Menu, {
7410
+ key: "freeze-row",
7411
+ onClick: function onClick() {
7412
+ setContext(function (draftCtx) {
7413
+ if (isFrozen) {
7414
+ fortuneCore.toggleFreeze(draftCtx, "unfreeze-row");
7415
+ } else {
7416
+ fortuneCore.toggleFreeze(draftCtx, "row");
7417
+ }
7418
+ draftCtx.contextMenu = {};
7419
+ });
7420
+ }
7421
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7422
+ className: "context-item"
7423
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7424
+ name: "freeze-flv",
7425
+ width: 18,
7426
+ height: 18,
7427
+ style: {
7428
+ marginTop: "4px",
7429
+ marginRight: "4px"
7430
+ }
7431
+ }), isFrozen ? "Unfreeze row" : "Freeze to current row"));
7432
+ }
7433
+ if (name === "freeze-column") {
7434
+ var _freezeState = fortuneCore.getFreezeState(context);
7435
+ var _isFrozen = _freezeState.isColFrozen;
7436
+ var isEntireColumnSelected = (selection === null || selection === void 0 ? void 0 : selection.column_select) === true;
7437
+ if (!isEntireColumnSelected) return null;
7438
+ return /*#__PURE__*/React__default['default'].createElement(Menu, {
7439
+ key: "freeze-column",
7440
+ onClick: function onClick() {
7441
+ setContext(function (draftCtx) {
7442
+ if (_isFrozen) {
7443
+ fortuneCore.toggleFreeze(draftCtx, "unfreeze-column");
7444
+ } else {
7445
+ fortuneCore.toggleFreeze(draftCtx, "column");
7446
+ fortuneCore.jfrefreshgrid(draftCtx, null, undefined, false);
7447
+ }
7448
+ draftCtx.contextMenu = {};
7449
+ });
7450
+ }
7451
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7452
+ className: "context-item"
7453
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7454
+ name: "freeze-flv",
7455
+ width: 18,
7456
+ height: 18,
7457
+ style: {
7458
+ marginTop: "4px",
7459
+ marginRight: "4px"
7460
+ }
7461
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, _isFrozen ? "Unfreeze column" : "Freeze to current column")));
7462
+ }
7589
7463
  if (name === "comment") {
7590
7464
  return /*#__PURE__*/React__default['default'].createElement(Menu, {
7591
7465
  key: name,
@@ -7704,19 +7578,14 @@ var ContextMenu = function ContextMenu() {
7704
7578
  }, /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7705
7579
  name: "insert-flv",
7706
7580
  width: 18,
7707
- height: 18,
7708
- style: {
7709
- marginRight: "8px",
7710
- position: "relative",
7711
- top: "3px"
7712
- }
7713
- }), ___default['default'].startsWith((_context$lang = context.lang) !== null && _context$lang !== void 0 ? _context$lang : "", "zh") && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, rightclick.to, /*#__PURE__*/React__default['default'].createElement("span", {
7581
+ height: 18
7582
+ }), /*#__PURE__*/React__default['default'].createElement("div", null, ___default['default'].startsWith((_context$lang = context.lang) !== null && _context$lang !== void 0 ? _context$lang : "", "zh") && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, rightclick.to, /*#__PURE__*/React__default['default'].createElement("span", {
7714
7583
  className: "luckysheet-cols-rows-shift-".concat(dir)
7715
7584
  }, rightclick[dir]))), "".concat(rightclick.insert, " "), "1", /*#__PURE__*/React__default['default'].createElement("span", {
7716
7585
  className: "luckysheet-cols-rows-shift-word luckysheet-mousedown-cancel"
7717
7586
  }, " ".concat(rightclick.column, " ")), !___default['default'].startsWith((_context$lang2 = context.lang) !== null && _context$lang2 !== void 0 ? _context$lang2 : "", "zh") && (/*#__PURE__*/React__default['default'].createElement("span", {
7718
7587
  className: "luckysheet-cols-rows-shift-".concat(dir)
7719
- }, rightclick[dir]))));
7588
+ }, rightclick[dir])))));
7720
7589
  });
7721
7590
  }
7722
7591
  if (name === "insert-row") {
@@ -7752,19 +7621,14 @@ var ContextMenu = function ContextMenu() {
7752
7621
  }, /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7753
7622
  name: "insert-flv",
7754
7623
  width: 18,
7755
- height: 18,
7756
- style: {
7757
- marginRight: "8px",
7758
- position: "relative",
7759
- top: "3px"
7760
- }
7761
- }), ___default['default'].startsWith((_context$lang3 = context.lang) !== null && _context$lang3 !== void 0 ? _context$lang3 : "", "zh") && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, rightclick.to, /*#__PURE__*/React__default['default'].createElement("span", {
7624
+ height: 18
7625
+ }), /*#__PURE__*/React__default['default'].createElement("div", null, ___default['default'].startsWith((_context$lang3 = context.lang) !== null && _context$lang3 !== void 0 ? _context$lang3 : "", "zh") && (/*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, rightclick.to, /*#__PURE__*/React__default['default'].createElement("span", {
7762
7626
  className: "luckysheet-cols-rows-shift-".concat(dir)
7763
7627
  }, rightclick[dir]))), "".concat(rightclick.insert, " "), "1", /*#__PURE__*/React__default['default'].createElement("span", {
7764
7628
  className: "luckysheet-cols-rows-shift-word luckysheet-mousedown-cancel"
7765
7629
  }, " ".concat(rightclick.row, " ")), !___default['default'].startsWith((_context$lang4 = context.lang) !== null && _context$lang4 !== void 0 ? _context$lang4 : "", "zh") && (/*#__PURE__*/React__default['default'].createElement("span", {
7766
7630
  className: "luckysheet-cols-rows-shift-".concat(dir)
7767
- }, rightclick[dir]))));
7631
+ }, rightclick[dir])))));
7768
7632
  });
7769
7633
  }
7770
7634
  if (name === "delete-column") {
@@ -8026,49 +7890,152 @@ var ContextMenu = function ContextMenu() {
8026
7890
  }
8027
7891
  }), /*#__PURE__*/React__default['default'].createElement("p", null, rightclick.clearContent)));
8028
7892
  }
8029
- if (name === "orderAZ") {
8030
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
8031
- key: name,
8032
- onClick: function onClick() {
8033
- setContext(function (draftCtx) {
8034
- fortuneCore.sortSelection(draftCtx, true);
8035
- draftCtx.contextMenu = {};
8036
- });
8037
- }
8038
- }, rightclick.orderAZ);
8039
- }
8040
- if (name === "orderZA") {
8041
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
8042
- key: name,
8043
- onClick: function onClick() {
8044
- setContext(function (draftCtx) {
8045
- fortuneCore.sortSelection(draftCtx, false);
8046
- draftCtx.contextMenu = {};
8047
- });
8048
- }
8049
- }, rightclick.orderZA);
8050
- }
8051
7893
  if (name === "sort") {
8052
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
7894
+ var _locale2 = fortuneCore.locale(context),
7895
+ sort = _locale2.sort;
7896
+ return /*#__PURE__*/React__default['default'].createElement(Tippy__default['default'], {
8053
7897
  key: name,
8054
- onClick: function onClick() {
8055
- setContext(function (draftCtx) {
8056
- showDialog(/*#__PURE__*/React__default['default'].createElement(CustomSort, null));
8057
- draftCtx.contextMenu = {};
8058
- });
7898
+ placement: "right-start",
7899
+ interactive: true,
7900
+ interactiveBorder: 50,
7901
+ offset: [0, 0],
7902
+ arrow: false,
7903
+ zIndex: 3000,
7904
+ appendTo: document.body,
7905
+ content: /*#__PURE__*/React__default['default'].createElement("div", {
7906
+ className: "fortune-toolbar-select",
7907
+ style: {
7908
+ minWidth: "11.25rem"
7909
+ }
7910
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7911
+ className: "flex flex-col color-text-default text-body-sm"
7912
+ }, /*#__PURE__*/React__default['default'].createElement(Menu, {
7913
+ onClick: function onClick() {
7914
+ setContext(function (draftCtx) {
7915
+ fortuneCore.sortSelection(draftCtx, true);
7916
+ draftCtx.contextMenu = {};
7917
+ });
7918
+ }
7919
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7920
+ className: "context-item p-2 w-full",
7921
+ style: {
7922
+ height: "40px"
7923
+ }
7924
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7925
+ name: "sort-asc",
7926
+ width: 22,
7927
+ style: {
7928
+ marginRight: "4px"
7929
+ }
7930
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, sort.asc))), /*#__PURE__*/React__default['default'].createElement(Menu, {
7931
+ onClick: function onClick() {
7932
+ setContext(function (draftCtx) {
7933
+ fortuneCore.sortSelection(draftCtx, false);
7934
+ draftCtx.contextMenu = {};
7935
+ });
7936
+ }
7937
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7938
+ className: "context-item p-2 w-full",
7939
+ style: {
7940
+ height: "40px"
7941
+ }
7942
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7943
+ name: "sort-desc",
7944
+ width: 22,
7945
+ style: {
7946
+ marginRight: "4px"
7947
+ }
7948
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, sort.desc))))),
7949
+ trigger: "mouseenter focus",
7950
+ hideOnClick: false
7951
+ }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(Menu, null, /*#__PURE__*/React__default['default'].createElement("div", {
7952
+ className: "flex items-center justify-between w-full"
7953
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7954
+ className: "context-item"
7955
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7956
+ name: "sort-flv",
7957
+ width: 18,
7958
+ height: 18,
7959
+ style: {
7960
+ marginRight: "8px"
8059
7961
  }
8060
- }, rightclick.sortSelection);
7962
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, rightclick.sortSelection)), /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7963
+ name: "rightArrow",
7964
+ width: 18
7965
+ })))));
8061
7966
  }
8062
7967
  if (name === "filter") {
8063
- return /*#__PURE__*/React__default['default'].createElement(Menu, {
7968
+ var _locale3 = fortuneCore.locale(context),
7969
+ filter = _locale3.filter;
7970
+ return /*#__PURE__*/React__default['default'].createElement(Tippy__default['default'], {
8064
7971
  key: name,
8065
- onClick: function onClick() {
8066
- setContext(function (draftCtx) {
8067
- fortuneCore.createFilter(draftCtx);
8068
- draftCtx.contextMenu = {};
8069
- });
7972
+ placement: "right-start",
7973
+ interactive: true,
7974
+ interactiveBorder: 50,
7975
+ offset: [0, 0],
7976
+ arrow: false,
7977
+ zIndex: 3000,
7978
+ appendTo: document.body,
7979
+ content: /*#__PURE__*/React__default['default'].createElement("div", {
7980
+ className: "fortune-toolbar-select",
7981
+ style: {
7982
+ minWidth: "11.25rem"
7983
+ }
7984
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7985
+ className: "flex flex-col color-text-default text-body-sm"
7986
+ }, /*#__PURE__*/React__default['default'].createElement(Menu, {
7987
+ onClick: function onClick() {
7988
+ setContext(function (draftCtx) {
7989
+ fortuneCore.createFilter(draftCtx);
7990
+ draftCtx.contextMenu = {};
7991
+ });
7992
+ }
7993
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
7994
+ className: "context-item p-2 w-full",
7995
+ style: {
7996
+ height: "40px"
7997
+ }
7998
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
7999
+ name: "filter",
8000
+ width: 22,
8001
+ style: {
8002
+ marginRight: "4px"
8003
+ }
8004
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, filter.filter))), /*#__PURE__*/React__default['default'].createElement(Menu, {
8005
+ onClick: function onClick() {
8006
+ setContext(function (draftCtx) {
8007
+ fortuneCore.clearFilter(draftCtx);
8008
+ draftCtx.contextMenu = {};
8009
+ });
8010
+ }
8011
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
8012
+ className: "context-item p-2 w-full",
8013
+ style: {
8014
+ height: "40px"
8015
+ }
8016
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
8017
+ name: "eraser",
8018
+ width: 22,
8019
+ style: {
8020
+ marginRight: "4px"
8021
+ }
8022
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, filter.clearFilter))))),
8023
+ trigger: "mouseenter focus",
8024
+ hideOnClick: false
8025
+ }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(Menu, null, /*#__PURE__*/React__default['default'].createElement("div", {
8026
+ className: "flex items-center justify-between w-full"
8027
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
8028
+ className: "context-item"
8029
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
8030
+ name: "filter",
8031
+ width: 22,
8032
+ style: {
8033
+ marginRight: "4px"
8070
8034
  }
8071
- }, rightclick.filterSelection);
8035
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, rightclick.filterSelection)), /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
8036
+ name: "rightArrow",
8037
+ width: 18
8038
+ })))));
8072
8039
  }
8073
8040
  if (name === "image") {
8074
8041
  return /*#__PURE__*/React__default['default'].createElement(Menu, {
@@ -8092,8 +8059,45 @@ var ContextMenu = function ContextMenu() {
8092
8059
  }
8093
8060
  }, rightclick.link);
8094
8061
  }
8062
+ if (name === "conditionFormat") {
8063
+ var closeContextMenu = function closeContextMenu() {
8064
+ return setContext(function (ctx) {
8065
+ ctx.contextMenu = {};
8066
+ });
8067
+ };
8068
+ return /*#__PURE__*/React__default['default'].createElement(Tippy__default['default'], {
8069
+ key: name,
8070
+ placement: "right-start",
8071
+ interactive: true,
8072
+ interactiveBorder: 50,
8073
+ offset: [0, 0],
8074
+ arrow: false,
8075
+ zIndex: 3000,
8076
+ appendTo: document.body,
8077
+ content: /*#__PURE__*/React__default['default'].createElement("div", {
8078
+ style: {
8079
+ minWidth: 220
8080
+ }
8081
+ }, /*#__PURE__*/React__default['default'].createElement(ConditionalFormat, {
8082
+ items: ["highlightCellRules", "itemSelectionRules", "-", "deleteRule"],
8083
+ setOpen: closeContextMenu
8084
+ })),
8085
+ trigger: "mouseenter focus",
8086
+ hideOnClick: false
8087
+ }, /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(Menu, null, /*#__PURE__*/React__default['default'].createElement("div", {
8088
+ className: "flex items-center justify-between w-full"
8089
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
8090
+ className: "flex items-center gap-2"
8091
+ }, /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
8092
+ name: "conditionFormat",
8093
+ width: 18
8094
+ }), /*#__PURE__*/React__default['default'].createElement("p", null, rightclick.conditionFormat || "Conditional Format")), /*#__PURE__*/React__default['default'].createElement(SVGIcon, {
8095
+ name: "rightArrow",
8096
+ width: 18
8097
+ })))));
8098
+ }
8095
8099
  return null;
8096
- }, [context.currentSheetId, context.lang, context.luckysheet_select_save, context.defaultrowlen, context.defaultcollen, rightclick, info, setContext, showAlert, showDialog, drag, generalDialog]);
8100
+ }, [context, setContext, refs.globalCache, rightclick, showAlert, showDialog, drag.noMulti, info.tipRowHeightLimit, info.tipColumnWidthLimit, generalDialog.partiallyError, generalDialog.readOnlyError, generalDialog.dataNullError]);
8097
8101
  React.useLayoutEffect(function () {
8098
8102
  var _refs$workbookContain;
8099
8103
  if (!containerRef.current) {
@@ -9361,31 +9365,41 @@ var SVGDefines = function SVGDefines(_ref) {
9361
9365
  stroke: "#535A68",
9362
9366
  strokeWidth: "1.5"
9363
9367
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9364
- viewBox: "0 0 1024 1024",
9365
- fill: "#535A68",
9366
- id: "sort-desc"
9368
+ id: "sort-desc",
9369
+ width: "18",
9370
+ height: "18",
9371
+ viewBox: "0 0 18 18",
9372
+ fill: "none"
9367
9373
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9368
- d: "M839.6 433.8L749 150.5c-1.2-3.9-4.8-6.5-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-0.3 0.9-0.5 1.9-0.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-0.1 2.8-0.4 2.4-0.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7 0.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2z",
9369
- "p-id": "2016"
9374
+ d: "M6.75 12.75C7.16421 12.75 7.5 13.0858 7.5 13.5C7.5 13.9142 7.16421 14.25 6.75 14.25H5.25C4.83579 14.25 4.5 13.9142 4.5 13.5C4.5 13.0858 4.83579 12.75 5.25 12.75H6.75Z",
9375
+ fill: "#363B3F"
9370
9376
  }), /*#__PURE__*/React__default['default'].createElement("path", {
9371
- d: "M806.8 818.4H677.2v-0.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v0.4L587.7 828.9c-1.1 1.6-1.7 3.4-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43c0.1-5.1-4.1-9.3-9.2-9.3z",
9372
- "p-id": "2017"
9377
+ d: "M9 9.75C9.41421 9.75 9.75 10.0858 9.75 10.5C9.75 10.9142 9.41421 11.25 9 11.25H5.25C4.83579 11.25 4.5 10.9142 4.5 10.5C4.5 10.0858 4.83579 9.75 5.25 9.75H9Z",
9378
+ fill: "#363B3F"
9373
9379
  }), /*#__PURE__*/React__default['default'].createElement("path", {
9374
- d: "M416 702h-76V172c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v530h-76c-6.7 0-10.5 7.8-6.3 13l112 141.9c3.2 4.1 9.4 4.1 12.6 0l112-141.9c4.1-5.2 0.4-13-6.3-13z",
9375
- "p-id": "2018"
9376
- })), /*#__PURE__*/React__default['default'].createElement("svg", {
9377
- viewBox: "0 0 1024 1024",
9378
- fill: "#535A68",
9379
- id: "sort-asc"
9380
+ d: "M11.25 6.75C11.6642 6.75 12 7.08579 12 7.5C12 7.91421 11.6642 8.25 11.25 8.25H5.25C4.83579 8.25 4.5 7.91421 4.5 7.5C4.5 7.08579 4.83579 6.75 5.25 6.75H11.25Z",
9381
+ fill: "#363B3F"
9382
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9383
+ d: "M13.5 3.75C13.9142 3.75 14.25 4.08579 14.25 4.5C14.25 4.91421 13.9142 5.25 13.5 5.25H5.25C4.83579 5.25 4.5 4.91421 4.5 4.5C4.5 4.08579 4.83579 3.75 5.25 3.75H13.5Z",
9384
+ fill: "#363B3F"
9385
+ })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9386
+ id: "sort-asc",
9387
+ width: "18",
9388
+ height: "18",
9389
+ viewBox: "0 0 18 18",
9390
+ fill: "none"
9380
9391
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9381
- d: "M839.6 433.8L749 150.5c-1.2-3.9-4.8-6.5-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-0.3 0.9-0.5 1.9-0.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-0.1 2.8-0.4 2.4-0.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7 0.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2z",
9382
- "p-id": "2263"
9392
+ d: "M13.5 12.75C13.9142 12.75 14.25 13.0858 14.25 13.5C14.25 13.9142 13.9142 14.25 13.5 14.25H5.25C4.83579 14.25 4.5 13.9142 4.5 13.5C4.5 13.0858 4.83579 12.75 5.25 12.75H13.5Z",
9393
+ fill: "#363B3F"
9394
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9395
+ d: "M11.25 9.75C11.6642 9.75 12 10.0858 12 10.5C12 10.9142 11.6642 11.25 11.25 11.25H5.25C4.83579 11.25 4.5 10.9142 4.5 10.5C4.5 10.0858 4.83579 9.75 5.25 9.75H11.25Z",
9396
+ fill: "#363B3F"
9383
9397
  }), /*#__PURE__*/React__default['default'].createElement("path", {
9384
- d: "M806.8 818.4H677.2v-0.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v0.4L587.7 828.9c-1.1 1.6-1.7 3.4-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43c0.1-5.1-4.1-9.3-9.2-9.3z",
9385
- "p-id": "2264"
9398
+ d: "M9 6.75C9.41421 6.75 9.75 7.08579 9.75 7.5C9.75 7.91421 9.41421 8.25 9 8.25H5.25C4.83579 8.25 4.5 7.91421 4.5 7.5C4.5 7.08579 4.83579 6.75 5.25 6.75H9Z",
9399
+ fill: "#363B3F"
9386
9400
  }), /*#__PURE__*/React__default['default'].createElement("path", {
9387
- d: "M310.3 167.1c-3.2-4.1-9.4-4.1-12.6 0L185.7 309c-4.2 5.3-0.4 13 6.3 13h76v530c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V322h76c6.7 0 10.5-7.8 6.3-13l-112-141.9z",
9388
- "p-id": "2265"
9401
+ d: "M6.75 3.75C7.16421 3.75 7.5 4.08579 7.5 4.5C7.5 4.91421 7.16421 5.25 6.75 5.25H5.25C4.83579 5.25 4.5 4.91421 4.5 4.5C4.5 4.08579 4.83579 3.75 5.25 3.75H6.75Z",
9402
+ fill: "#363B3F"
9389
9403
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9390
9404
  viewBox: "0 0 1024 1024",
9391
9405
  fill: "#535A68",
@@ -9448,13 +9462,16 @@ var SVGDefines = function SVGDefines(_ref) {
9448
9462
  d: "M4.66663 1.33334C4.66663 0.965149 4.36815 0.666672 3.99996 0.666672C3.63177 0.666672 3.33329 0.965149 3.33329 1.33334V3.33334H1.33329C0.965103 3.33334 0.666626 3.63182 0.666626 4C0.666626 4.36819 0.965103 4.66667 1.33329 4.66667H3.33329V10.6667C3.33329 11.1971 3.54401 11.7058 3.91908 12.0809C4.29415 12.456 4.80286 12.6667 5.33329 12.6667H11.3333V14.6667C11.3333 15.0349 11.6318 15.3333 12 15.3333C12.3681 15.3333 12.6666 15.0349 12.6666 14.6667V12.6667H14.6666C15.0348 12.6667 15.3333 12.3682 15.3333 12C15.3333 11.6318 15.0348 11.3333 14.6666 11.3333H12.6666V5.33334C12.6666 4.8029 12.4559 4.2942 12.0808 3.91912C11.7058 3.54405 11.1971 3.33334 10.6666 3.33334H4.66663V1.33334ZM4.66663 4.66667V10.6667C4.66663 10.8435 4.73686 11.0131 4.86189 11.1381C4.98691 11.2631 5.15648 11.3333 5.33329 11.3333H11.3333V5.33334C11.3333 5.15653 11.2631 4.98696 11.138 4.86193C11.013 4.73691 10.8434 4.66667 10.6666 4.66667H4.66663Z",
9449
9463
  fill: "#363B3F"
9450
9464
  }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9451
- viewBox: "0 0 1024 1024",
9452
- fill: "#535A68",
9453
- id: "conditionFormat",
9454
- width: "20"
9465
+ width: "20",
9466
+ height: "24",
9467
+ viewBox: "0 0 16 16",
9468
+ fill: "none",
9469
+ id: "conditionFormat"
9455
9470
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9456
- d: "M128 128h768v768H128V128z m64 512v128h128v-128H192z m256 0v128h192v-128H448zM192 448v128h128V448H192z m0-192v128h128V256H192z m192 0v128h192V256H384z m320 384v128h128v-128h-128z m0-192v128h128V448h-128z m0-192v128h128V256h-128z",
9457
- "p-id": "1955"
9471
+ "fill-rule": "evenodd",
9472
+ "clip-rule": "evenodd",
9473
+ d: "M11.4661 0.673182C11.7715 0.703436 12.0585 0.838439 12.2773 1.0573C12.5274 1.30735 12.668 1.64638 12.668 2.00001V7.51303C12.7678 7.57076 12.861 7.64098 12.944 7.72396C13.1941 7.97401 13.3346 8.31305 13.3346 8.66667V9.33334C13.3346 9.86377 13.1238 10.3723 12.7487 10.7474C12.3736 11.1225 11.8651 11.3333 11.3346 11.3333H10.0013V13.2669C10.0012 13.7973 9.79038 14.306 9.41536 14.681C9.0403 15.056 8.53167 15.2669 8.0013 15.2669C7.47093 15.2669 6.9623 15.056 6.58724 14.681C6.21223 14.306 6.00137 13.7973 6.0013 13.2669V11.3333H4.66797C4.13754 11.3333 3.62898 11.1225 3.25391 10.7474C2.92577 10.4193 2.72324 9.98901 2.67773 9.53125L2.66797 9.33334V8.66667C2.66797 8.31305 2.80855 7.97401 3.05859 7.72396C3.14158 7.64098 3.23477 7.57076 3.33464 7.51303V2.00001C3.33464 1.64638 3.47521 1.30734 3.72526 1.0573C3.97531 0.807248 4.31435 0.666672 4.66797 0.666672H11.3346L11.4661 0.673182ZM4.0013 8.66667V9.33334L4.00456 9.39909C4.01968 9.55176 4.08719 9.69526 4.19661 9.80469C4.32164 9.92972 4.49116 10 4.66797 10H6.0013C6.35492 10 6.69396 10.1406 6.94401 10.3906C7.19406 10.6407 7.33464 10.9797 7.33464 11.3333V13.2669C7.3347 13.4436 7.40498 13.6133 7.52995 13.7383C7.65496 13.8632 7.82455 13.9336 8.0013 13.9336C8.17805 13.9336 8.34764 13.8632 8.47266 13.7383C8.59762 13.6133 8.6679 13.4436 8.66797 13.2669V11.3333C8.66797 10.9797 8.80855 10.6407 9.05859 10.3906C9.30864 10.1406 9.64768 10 10.0013 10H11.3346C11.5114 10 11.681 9.92972 11.806 9.80469C11.931 9.67967 12.0013 9.51015 12.0013 9.33334V8.66667H4.0013ZM4.66797 7.33334H11.3346V2.00001H10.0013V4C10.0013 4.36819 9.70283 4.66667 9.33463 4.66667C8.96644 4.66667 8.66797 4.36819 8.66797 4V2.00001H7.33464V2.66667C7.33464 3.03486 7.03616 3.33334 6.66797 3.33334C6.29978 3.33334 6.0013 3.03486 6.0013 2.66667V2.00001H4.66797V7.33334Z",
9474
+ fill: "#363B3F"
9458
9475
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9459
9476
  viewBox: "0 0 1024 1024",
9460
9477
  fill: "#535A68",
@@ -9560,19 +9577,29 @@ var SVGDefines = function SVGDefines(_ref) {
9560
9577
  d: "M0.728617 1.71942C0.837856 1.48397 1.07381 1.33333 1.33336 1.33333H14.6667C14.9262 1.33333 15.1622 1.48397 15.2714 1.71942C15.3807 1.95486 15.3433 2.2323 15.1757 2.43048L10 8.55077V14C10 14.2311 9.88039 14.4456 9.68385 14.5671C9.48731 14.6886 9.24188 14.6996 9.03522 14.5963L6.36855 13.263C6.1427 13.15 6.00003 12.9192 6.00003 12.6667V8.55077L0.824316 2.43048C0.656718 2.2323 0.619379 1.95486 0.728617 1.71942ZM2.77023 2.66667L7.17574 7.87618C7.27752 7.99653 7.33336 8.14905 7.33336 8.30667V12.2546L8.6667 12.9213V8.30667C8.6667 8.14905 8.72254 7.99653 8.82432 7.87618L13.2298 2.66667H2.77023Z",
9561
9578
  fill: "#363B3F"
9562
9579
  }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9563
- viewBox: "0 0 1024 1024",
9564
- fill: "#535A68",
9565
- id: "filter1"
9580
+ id: "filter1",
9581
+ width: "18",
9582
+ height: "18",
9583
+ viewBox: "0 0 18 18",
9584
+ fill: "none"
9566
9585
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9567
- d: "M608 864C588.8 864 576 851.2 576 832L576 448c0-6.4 6.4-19.2 12.8-25.6L787.2 256c6.4-6.4 6.4-19.2 0-19.2 0-6.4-6.4-12.8-19.2-12.8L256 224c-12.8 0-19.2 6.4-19.2 12.8 0 6.4-6.4 12.8 6.4 19.2l198.4 166.4C441.6 428.8 448 441.6 448 448l0 256c0 19.2-12.8 32-32 32S384 723.2 384 704L384 460.8 198.4 307.2c-25.6-25.6-32-64-19.2-96C185.6 179.2 217.6 160 256 160L768 160c32 0 64 19.2 76.8 51.2 12.8 32 6.4 70.4-19.2 89.6l-192 160L633.6 832C640 851.2 627.2 864 608 864z",
9568
- "p-id": "43727"
9586
+ d: "M10.0149 1.5C10.4291 1.5 10.7649 1.83579 10.7649 2.25C10.7649 2.66421 10.4291 3 10.0149 3H2.24975L7.66821 8.99121L7.80004 9.15161C8.09041 9.53914 8.24953 10.0121 8.24975 10.5V15.0007L9.74902 15.75L9.74975 10.5C9.75 9.9426 9.95667 9.4046 10.3306 8.99121L11.2439 7.98047L11.2988 7.92627C11.5809 7.67149 12.0156 7.66669 12.3037 7.927C12.6108 8.20473 12.6348 8.67881 12.3572 8.98608L11.4438 9.99683L11.4431 9.99756C11.3186 10.1353 11.2499 10.3143 11.2498 10.5V15.75L11.2468 15.8452C11.2327 16.0677 11.1689 16.2847 11.0601 16.4802C10.9356 16.7036 10.756 16.8914 10.5386 17.0259C10.3211 17.1604 10.0726 17.237 9.81713 17.2485C9.5937 17.2586 9.37132 17.2188 9.16601 17.1321L9.07885 17.0918L7.57885 16.3418C7.32961 16.2172 7.11961 16.0259 6.97314 15.7888C6.84501 15.5814 6.77019 15.3462 6.75341 15.104L6.74975 15V10.5C6.7496 10.3375 6.69633 10.1801 6.5996 10.051L6.55566 9.99756L1.13647 4.00562C0.94211 3.79026 0.81445 3.52231 0.768793 3.23584C0.723182 2.94943 0.760896 2.65567 0.878656 2.39062C0.996448 2.12559 1.18922 1.90053 1.43237 1.74243C1.67547 1.58442 1.95908 1.50014 2.24902 1.5H10.0149Z",
9587
+ fill: "#363B3F"
9588
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9589
+ d: "M14.2498 1.5C14.6638 1.50014 14.9998 1.83587 14.9998 2.25V3.75H16.4998C16.9138 3.75014 17.2498 4.08587 17.2498 4.5C17.2498 4.91413 16.9138 5.24986 16.4998 5.25H14.9998V6.75C14.9998 7.16413 14.6638 7.49986 14.2498 7.5C13.8355 7.5 13.4998 7.16421 13.4998 6.75V5.25H11.9998C11.5855 5.25 11.2498 4.91421 11.2498 4.5C11.2498 4.08579 11.5855 3.75 11.9998 3.75H13.4998V2.25C13.4998 1.83579 13.8355 1.5 14.2498 1.5Z",
9590
+ fill: "#363B3F"
9569
9591
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9570
- viewBox: "0 0 1024 1024",
9571
- fill: "#535A68",
9572
- id: "eraser"
9592
+ id: "eraser",
9593
+ width: "18",
9594
+ height: "18",
9595
+ viewBox: "0 0 18 18",
9596
+ fill: "none"
9573
9597
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9574
- d: "M596.437333 85.333333a42.837333 42.837333 0 0 0-30.549333 13.824l-469.333333 512a42.666667 42.666667 0 0 0 1.28 59.008l170.666666 170.666667A42.496 42.496 0 0 0 298.666667 853.333333h512v-85.333333h-195.669334l311.168-311.168a42.538667 42.538667 0 0 0 0-60.330667l-298.666666-298.666666A43.221333 43.221333 0 0 0 596.437333 85.333333z m-102.144 682.666667H316.330667l-129.28-129.28 268.8-293.205333 230.485333 230.485333-192.042667 192z m252.373334-252.330667l-233.130667-233.130666 85.12-92.842667L835.669333 426.666667 746.666667 515.669333z",
9575
- "p-id": "50819"
9598
+ d: "M9.39746 1.5C9.81167 1.5 10.1475 1.83579 10.1475 2.25C10.1475 2.66421 9.81167 3 9.39746 3H2.24975L7.66821 8.99121L7.80004 9.15161C8.09041 9.53914 8.24953 10.0121 8.24975 10.5V15.0007L9.74902 15.75L9.74975 10.5C9.75 9.94243 9.95719 9.40465 10.3313 8.99121L10.6506 8.63672L10.7048 8.58252C10.9867 8.32757 11.4214 8.32258 11.7097 8.58252C12.0172 8.86008 12.0415 9.33487 11.7639 9.64233L11.4438 9.99683L11.4431 9.99756C11.3186 10.1353 11.2499 10.3143 11.2498 10.5V15.75L11.2468 15.8452C11.2327 16.0677 11.1689 16.2847 11.0601 16.4802C10.9356 16.7036 10.756 16.8914 10.5386 17.0259C10.3211 17.1604 10.0726 17.237 9.81713 17.2485C9.5937 17.2586 9.37132 17.2188 9.16601 17.1321L9.07885 17.0918L7.57885 16.3418C7.32961 16.2172 7.11961 16.0259 6.97314 15.7888C6.84501 15.5814 6.77019 15.3462 6.75341 15.104L6.74975 15V10.5C6.7496 10.3375 6.69633 10.1801 6.5996 10.051L6.55566 9.99756L1.13647 4.00562C0.94211 3.79026 0.81445 3.52231 0.768793 3.23584C0.723182 2.94943 0.760896 2.65567 0.878656 2.39062C0.996448 2.12559 1.18922 1.90053 1.43237 1.74243C1.67547 1.58442 1.95908 1.50014 2.24902 1.5H9.39746Z",
9599
+ fill: "#363B3F"
9600
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9601
+ d: "M11.8445 2.09473C12.1191 1.82027 12.5534 1.80323 12.8479 2.04346L12.905 2.09473L14.2498 3.43945L15.5945 2.09473L15.6516 2.04346C15.9462 1.80333 16.3805 1.82019 16.655 2.09473C16.9294 2.36928 16.9464 2.80361 16.7063 3.09814L16.655 3.15527L15.3103 4.5L16.655 5.84473L16.7063 5.90186C16.9464 6.19639 16.9294 6.63072 16.655 6.90527C16.3805 7.17981 15.9462 7.19667 15.6516 6.95654L15.5945 6.90527L14.2498 5.56055L12.905 6.90527C12.6122 7.19812 12.1374 7.19804 11.8445 6.90527C11.5516 6.61238 11.5516 6.13762 11.8445 5.84473L13.1892 4.5L11.8445 3.15527L11.7932 3.09814C11.5529 2.80356 11.5699 2.36931 11.8445 2.09473Z",
9602
+ fill: "#363B3F"
9576
9603
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9577
9604
  viewBox: "0 0 1057 1024",
9578
9605
  fill: "#535A68",
@@ -9626,12 +9653,16 @@ var SVGDefines = function SVGDefines(_ref) {
9626
9653
  fill: "",
9627
9654
  "p-id": "5612"
9628
9655
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9629
- viewBox: "0 0 1024 1024",
9630
- fill: "#A8ABB0",
9656
+ width: "16",
9657
+ height: "24",
9658
+ viewBox: "0 0 16 16",
9659
+ fill: "none",
9631
9660
  id: "rightArrow"
9632
9661
  }, /*#__PURE__*/React__default['default'].createElement("path", {
9633
- d: "M781.963636 495.709091l-418.909091-323.490909c-20.945455-16.290909-37.236364-9.309091-37.236363 16.290909v646.981818c0 25.6 16.290909 32.581818 37.236363 16.290909l418.909091-323.490909c11.636364-9.309091 11.636364-23.272727 0-32.581818z",
9634
- "p-id": "5380"
9662
+ "fill-rule": "evenodd",
9663
+ "clip-rule": "evenodd",
9664
+ d: "M5.52729 3.52859C5.78764 3.26824 6.20975 3.26824 6.4701 3.52859L10.4701 7.52859C10.7305 7.78894 10.7305 8.21105 10.4701 8.4714L6.4701 12.4714C6.20975 12.7317 5.78764 12.7317 5.52729 12.4714C5.26694 12.2111 5.26694 11.7889 5.52729 11.5286L9.05589 8L5.52729 4.4714C5.26694 4.21105 5.26694 3.78894 5.52729 3.52859Z",
9665
+ fill: "#77818A"
9635
9666
  })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9636
9667
  viewBox: "0 0 1024 1024",
9637
9668
  id: "downArrow"
@@ -9721,6 +9752,20 @@ var SVGDefines = function SVGDefines(_ref) {
9721
9752
  "clip-rule": "evenodd",
9722
9753
  d: "M3.75 1.5C3.15326 1.5 2.58097 1.73705 2.15901 2.15901C1.73705 2.58097 1.5 3.15326 1.5 3.75V15.75C1.5 16.0533 1.68273 16.3268 1.96299 16.4429C2.24324 16.559 2.56583 16.4948 2.78033 16.2803L5.56066 13.5H14.25C14.8467 13.5 15.419 13.2629 15.841 12.841C16.2629 12.419 16.5 11.8467 16.5 11.25V3.75C16.5 3.15326 16.2629 2.58097 15.841 2.15901C15.419 1.73705 14.8467 1.5 14.25 1.5H3.75ZM3.21967 3.21967C3.36032 3.07902 3.55109 3 3.75 3H14.25C14.4489 3 14.6397 3.07902 14.7803 3.21967C14.921 3.36032 15 3.55109 15 3.75V11.25C15 11.4489 14.921 11.6397 14.7803 11.7803C14.6397 11.921 14.4489 12 14.25 12H5.25C5.05109 12 4.86032 12.079 4.71967 12.2197L3 13.9393V3.75C3 3.55109 3.07902 3.36032 3.21967 3.21967Z",
9723
9754
  fill: "#363B3F"
9755
+ }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9756
+ id: "freeze-flv",
9757
+ viewBox: "0 0 24 24"
9758
+ }, /*#__PURE__*/React__default['default'].createElement("svg", {
9759
+ width: "18",
9760
+ height: "16",
9761
+ viewBox: "0 0 18 16",
9762
+ fill: "none",
9763
+ xmlns: "http://www.w3.org/2000/svg"
9764
+ }, /*#__PURE__*/React__default['default'].createElement("path", {
9765
+ "fill-rule": "evenodd",
9766
+ "clip-rule": "evenodd",
9767
+ d: "M13.4208 1.58557C13.6061 1.21509 13.4559 0.764586 13.0854 0.579344C12.7149 0.394102 12.2644 0.54427 12.0792 0.914754L11.4375 2.19811L11.1708 1.66475C10.9856 1.29427 10.5351 1.1441 10.1646 1.32934C9.79411 1.51459 9.64394 1.96509 9.82918 2.33557L10.599 3.87516L10.0365 5.00016H7.96353L7.40103 3.87516L8.17083 2.33557C8.35607 1.96509 8.2059 1.51459 7.83541 1.32934C7.46493 1.1441 7.01443 1.29427 6.82918 1.66475L6.5625 2.19811L5.92082 0.914754C5.73558 0.54427 5.28508 0.394102 4.91459 0.579344C4.54411 0.764586 4.39394 1.21509 4.57918 1.58557L5.22086 2.86893L4.63417 2.76226C4.22664 2.68817 3.8362 2.95847 3.7621 3.366C3.688 3.77353 3.95831 4.16397 4.36584 4.23807L6.05939 4.54598L6.66148 5.75016L5.91147 7.25016H4.49999L3.6 6.05018C3.35147 5.71881 2.88137 5.65165 2.55 5.90018C2.21863 6.14871 2.15147 6.61881 2.4 6.95018L2.62499 7.25016H1.5C1.08579 7.25016 0.75 7.58595 0.75 8.00016C0.75 8.41438 1.08579 8.75016 1.5 8.75016H2.62501L2.4 9.05018C2.15147 9.38155 2.21863 9.85165 2.55 10.1002C2.88137 10.3487 3.35147 10.2816 3.6 9.95018L4.50001 8.75016H5.91148L6.66148 10.2502L6.05938 11.4544L4.36584 11.7623C3.95831 11.8364 3.688 12.2268 3.7621 12.6344C3.8362 13.0419 4.22664 13.3122 4.63417 13.2381L5.22085 13.1314L4.57918 14.4148C4.39394 14.7852 4.54411 15.2357 4.91459 15.421C5.28508 15.6062 5.73558 15.4561 5.92082 15.0856L6.5625 13.8022L6.82918 14.3356C7.01443 14.7061 7.46493 14.8562 7.83541 14.671C8.2059 14.4858 8.35607 14.0353 8.17083 13.6648L7.40102 12.1252L7.96352 11.0002H10.0365L10.599 12.1252L9.82918 13.6648C9.64394 14.0353 9.79411 14.4858 10.1646 14.671C10.5351 14.8562 10.9856 14.7061 11.1708 14.3356L11.4375 13.8022L12.0792 15.0856C12.2644 15.4561 12.7149 15.6062 13.0854 15.421C13.4559 15.2358 13.6061 14.7853 13.4208 14.4148L12.7791 13.1314L13.3658 13.2381C13.7734 13.3122 14.1638 13.0419 14.2379 12.6344C14.312 12.2268 14.0417 11.8364 13.6342 11.7623L11.9406 11.4544L11.3385 10.2502L12.0885 8.75018H13.5L14.4 9.95018C14.6485 10.2816 15.1186 10.3487 15.45 10.1002C15.7814 9.85165 15.8485 9.38155 15.6 9.05018L15.375 8.75018H16.5C16.9142 8.75018 17.25 8.4144 17.25 8.00018C17.25 7.58597 16.9142 7.25018 16.5 7.25018H15.375L15.6 6.95018C15.8485 6.61881 15.7814 6.14871 15.45 5.90018C15.1186 5.65165 14.6485 5.71881 14.4 6.05018L13.5 7.25018H12.0885L11.3385 5.75016L11.9406 4.54599L13.6342 4.23807C14.0417 4.16397 14.312 3.77353 14.2379 3.366C14.1638 2.95847 13.7734 2.68817 13.3658 2.76226L12.7791 2.86893L13.4208 1.58557ZM7.96353 6.50016L7.21353 8.00016L7.96354 9.50018H10.0365L10.7865 8.00018L10.0365 6.50016H7.96353Z",
9768
+ fill: "#363B3F"
9724
9769
  }))), /*#__PURE__*/React__default['default'].createElement("symbol", {
9725
9770
  viewBox: "0 0 1024 1024",
9726
9771
  id: "tab"
@@ -9735,6 +9780,32 @@ var SVGDefines = function SVGDefines(_ref) {
9735
9780
  d: "M844.8 896c25.6 0 51.2-19.2 51.2-51.2v-185.6h-51.2c-44.8 0-83.2-38.4-83.2-83.2s38.4-83.2 83.2-83.2h51.2V313.6c0-25.6-19.2-51.2-51.2-51.2h-134.4c0-70.4-57.6-128-128-128S448 185.6 448 256H313.6c-25.6 0-51.2 19.2-51.2 51.2V448C185.6 448 128 505.6 128 576s57.6 128 128 128v134.4c0 25.6 19.2 51.2 51.2 51.2h185.6v-51.2c0-44.8 38.4-83.2 83.2-83.2 44.8 0 83.2 38.4 83.2 83.2v57.6h185.6zM576 710.4c-70.4 0-128 57.6-128 128H307.2v-185.6H256c-44.8 0-83.2-38.4-83.2-83.2S211.2 492.8 256 492.8h51.2V307.2h185.6V256c0-44.8 38.4-83.2 83.2-83.2 44.8 0 83.2 38.4 83.2 83.2v51.2h185.6V448c-70.4 0-128 57.6-128 128s57.6 128 128 128v140.8H704c6.4-70.4-51.2-134.4-128-134.4z",
9736
9781
  fill: "",
9737
9782
  "p-id": "36983"
9783
+ })), /*#__PURE__*/React__default['default'].createElement("symbol", {
9784
+ id: "sort-flv",
9785
+ width: "18",
9786
+ height: "18",
9787
+ viewBox: "0 0 18 18",
9788
+ fill: "none"
9789
+ }, /*#__PURE__*/React__default['default'].createElement("path", {
9790
+ "fill-rule": "evenodd",
9791
+ "clip-rule": "evenodd",
9792
+ d: "M1.71967 11.4697C2.01256 11.1768 2.48744 11.1768 2.78033 11.4697L5.25 13.9393L7.71967 11.4697C8.01256 11.1768 8.48744 11.1768 8.78033 11.4697C9.07322 11.7626 9.07322 12.2374 8.78033 12.5303L5.78033 15.5303C5.48744 15.8232 5.01256 15.8232 4.71967 15.5303L1.71967 12.5303C1.42678 12.2374 1.42678 11.7626 1.71967 11.4697Z",
9793
+ fill: "#363B3F"
9794
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9795
+ "fill-rule": "evenodd",
9796
+ "clip-rule": "evenodd",
9797
+ d: "M5.25 2.25C5.66421 2.25 6 2.58579 6 3V15C6 15.4142 5.66421 15.75 5.25 15.75C4.83579 15.75 4.5 15.4142 4.5 15V3C4.5 2.58579 4.83579 2.25 5.25 2.25Z",
9798
+ fill: "#363B3F"
9799
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9800
+ "fill-rule": "evenodd",
9801
+ "clip-rule": "evenodd",
9802
+ d: "M12.2197 2.46967C12.5126 2.17678 12.9874 2.17678 13.2803 2.46967L16.2803 5.46967C16.5732 5.76256 16.5732 6.23744 16.2803 6.53033C15.9874 6.82322 15.5126 6.82322 15.2197 6.53033L12.75 4.06066L10.2803 6.53033C9.98744 6.82322 9.51256 6.82322 9.21967 6.53033C8.92678 6.23744 8.92678 5.76256 9.21967 5.46967L12.2197 2.46967Z",
9803
+ fill: "#363B3F"
9804
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
9805
+ "fill-rule": "evenodd",
9806
+ "clip-rule": "evenodd",
9807
+ d: "M12.75 2.25C13.1642 2.25 13.5 2.58579 13.5 3V15C13.5 15.4142 13.1642 15.75 12.75 15.75C12.3358 15.75 12 15.4142 12 15V3C12 2.58579 12.3358 2.25 12.75 2.25Z",
9808
+ fill: "#363B3F"
9738
9809
  }))));
9739
9810
  };
9740
9811
 
@@ -10029,7 +10100,7 @@ var MoreItemsContaier = function MoreItemsContaier(_ref) {
10029
10100
  }, children);
10030
10101
  };
10031
10102
 
10032
- function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cellInput, scrollbarX, scrollbarY) {
10103
+ function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cellInput, scrollbarX, scrollbarY, globalCache) {
10033
10104
  return {
10034
10105
  applyOp: function applyOp(ops) {
10035
10106
  setContext(function (ctx_) {
@@ -10330,6 +10401,50 @@ function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cel
10330
10401
  },
10331
10402
  celldataToData: function celldataToData(celldata, rowCount, colCount) {
10332
10403
  return fortuneCore.api.celldataToData(celldata, rowCount, colCount);
10404
+ },
10405
+ insertFunction: function insertFunction(selectedFuncIndex, filteredFunctionList, callback) {
10406
+ var _context$luckysheet_s2;
10407
+ var last = (_context$luckysheet_s2 = context.luckysheet_select_save) === null || _context$luckysheet_s2 === void 0 ? void 0 : _context$luckysheet_s2[context.luckysheet_select_save.length - 1];
10408
+ var row_index = last === null || last === void 0 ? void 0 : last.row_focus;
10409
+ var col_index = last === null || last === void 0 ? void 0 : last.column_focus;
10410
+ if (!last) {
10411
+ row_index = 0;
10412
+ col_index = 0;
10413
+ } else {
10414
+ if (row_index == null) {
10415
+ var _last$row2 = _slicedToArray(last.row, 1);
10416
+ row_index = _last$row2[0];
10417
+ }
10418
+ if (col_index == null) {
10419
+ var _last$column2 = _slicedToArray(last.column, 1);
10420
+ col_index = _last$column2[0];
10421
+ }
10422
+ }
10423
+ var formulaTxt = "<span dir=\"auto\" class=\"luckysheet-formula-text-color\">=</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">".concat(filteredFunctionList[selectedFuncIndex].n.toUpperCase(), "</span><span dir=\"auto\" class=\"luckysheet-formula-text-color\">(</span>");
10424
+ var _locale2 = fortuneCore.locale(context),
10425
+ functionlist = _locale2.functionlist;
10426
+ setContext(function (ctx) {
10427
+ if (cellInput != null && globalCache != null) {
10428
+ ctx.luckysheetCellUpdate = [row_index, col_index];
10429
+ globalCache.doNotUpdateCell = true;
10430
+ cellInput.innerHTML = formulaTxt;
10431
+ var spans = cellInput.childNodes;
10432
+ if (!___default['default'].isEmpty(spans)) {
10433
+ fortuneCore.setCaretPosition(ctx, spans[spans.length - 1], 0, 1);
10434
+ }
10435
+ ctx.functionHint = filteredFunctionList[selectedFuncIndex].n.toUpperCase();
10436
+ ctx.functionCandidates = [];
10437
+ if (___default['default'].isEmpty(ctx.formulaCache.functionlistMap)) {
10438
+ for (var i = 0; i < functionlist.length; i += 1) {
10439
+ ctx.formulaCache.functionlistMap[functionlist[i].n] = functionlist[i];
10440
+ }
10441
+ }
10442
+ callback === null || callback === void 0 ? void 0 : callback();
10443
+ }
10444
+ });
10445
+ },
10446
+ getLocaleContext: function getLocaleContext() {
10447
+ return fortuneCore.locale(context);
10333
10448
  }
10334
10449
  };
10335
10450
  }
@@ -11537,8 +11652,8 @@ var Workbook = /*#__PURE__*/React__default['default'].forwardRef(function (_ref,
11537
11652
  };
11538
11653
  }, [onPaste]);
11539
11654
  React.useImperativeHandle(ref, function () {
11540
- return generateAPIs(context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, cellInput.current, scrollbarX.current, scrollbarY.current);
11541
- }, [context, setContextWithProduce, handleUndo, handleRedo, mergedSettings]);
11655
+ return generateAPIs(context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, cellInput.current, scrollbarX.current, scrollbarY.current, globalCache.current);
11656
+ }, [context, setContextWithProduce, handleUndo, handleRedo, mergedSettings, globalCache]);
11542
11657
  var i = fortuneCore.getSheetIndex(context, context.currentSheetId);
11543
11658
  if (i == null) {
11544
11659
  return null;