@fileverse-dev/fortune-react 1.0.2-mod-28-patch-2 → 1.0.2-mod-34

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.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defaultContext, defaultSettings, getSheetIndex, colLocationByIndex, fixPositionOnFrozenCells, colLocation, getFlowdata, isAllowEdit, handleColumnHeaderMouseDown, handleColSizeHandleMouseDown, handleColFreezeHandleMouseDown, handleContextMenu, selectTitlesMap, selectTitlesRange, fixColumnStyleOverflowInFreeze, rowLocationByIndex, rowLocation, handleRowHeaderMouseDown, handleRowSizeHandleMouseDown, handleRowFreezeHandleMouseDown, fixRowStyleOverflowInFreeze, locale, getStyleByCell, getCellValue, createRangeHightlight, isInlineStringCell, getInlineStringHTML, valueShowEs, escapeHTMLTag, escapeScriptTag, moveToEnd, isShowHidenCR, getrangeseleciton, cancelNormalSelected, moveHighlightCell, israngeseleciton, handleFormulaInput, onSearchDialogMoveStart, replaceAll, replace, searchAll, searchNext, normalizeSelection, scrollToHighlightCell, isLinkValid, getRangetxt, goToLink, replaceHtml, removeHyperlink, onRangeSelectionModalMoveStart, saveHyperlink, createFilterOptions, onImageMoveStart, onImageResizeStart, showComments, setEditingComment, onCommentBoxMoveStart, confirmMessage, getRangeByTxt, getDropdownList, setCellValue, setConditionRules, mergeBorder, setDropcownValue, handleCellAreaMouseDown, handleCellAreaDoubleClick, selectAll, showLinkCard, getCellRowColumn, getCellHyperlink, handleOverlayMouseMove, handleOverlayMouseUp, handleKeydownForZoom, handleOverlayTouchStart, handleOverlayTouchMove, handleOverlayTouchEnd, insertRowCol, drawArrow, onCellsMoveStart, createDropCellRange, updateContextWithSheetData, updateContextWithCanvas, initFreeze, Canvas, handleGlobalWheel, getDataArr, updateMoreCell, getRegStr, getOptionValue, getSelectRange, applyLocation, updateItem, update, normalizedCellAttr, updateFormat, handleTextSize, handleHorizontalAlign, handleVerticalAlign, handleScreenShot, showImgChooser, insertImage, editComment, deleteComment, showHideComment, showHideAllComments, newComment, handleSum, autoSelectionFormula, handleMerge, handleBorder, handleFreeze, handleSort, createFilter, clearFilter, toolbarItemSelectedFunc, toolbarItemClickHandler, handleTextColor, handleTextBackground, getInlineStringNoStyle, rangeHightlightselected, updateCell, editSheetName, cancelActiveImgItem, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, addSheet, getFreezeState, toggleFreeze, jfrefreshgrid, handleCopy, deleteRowCol, hideSelected, showSelected, api, removeActiveImage, deleteSelectedCellText, sortSelection, handleLink, handlePasteByClick, deleteSheet, opToPatch, setCaretPosition, orderbydatafiler, getFilterColumnValues, getFilterColumnColors, saveFilter, calcSelectionInfo, patchToOp, filterPatch, inverseRowColOptions, ensureSheetIndex, initSheetIndex, handleGlobalKeyDown, handlePaste, groupValuesRefresh } from '@fileverse-dev/fortune-core';
1
+ import { defaultContext, defaultSettings, getSheetIndex, colLocationByIndex, fixPositionOnFrozenCells, colLocation, getFlowdata, isAllowEdit, handleColumnHeaderMouseDown, handleColSizeHandleMouseDown, handleColFreezeHandleMouseDown, handleContextMenu, selectTitlesMap, selectTitlesRange, fixColumnStyleOverflowInFreeze, rowLocationByIndex, rowLocation, handleRowHeaderMouseDown, handleRowSizeHandleMouseDown, handleRowFreezeHandleMouseDown, fixRowStyleOverflowInFreeze, locale, getStyleByCell, getCellValue, createRangeHightlight, isInlineStringCell, getInlineStringHTML, valueShowEs, escapeHTMLTag, escapeScriptTag, moveToEnd, isShowHidenCR, getrangeseleciton, cancelNormalSelected, moveHighlightCell, israngeseleciton, handleFormulaInput, onSearchDialogMoveStart, replaceAll, replace, searchAll, searchNext, normalizeSelection, scrollToHighlightCell, isLinkValid, goToLink, replaceHtml, removeHyperlink, saveHyperlink, createFilterOptions, onImageMoveStart, onImageResizeStart, showComments, setEditingComment, onCommentBoxMoveStart, confirmMessage, getRangeByTxt, getDropdownList, setCellValue, getRangetxt, setConditionRules, mergeBorder, setDropcownValue, handleCellAreaMouseDown, handleCellAreaDoubleClick, selectAll, showLinkCard, getCellRowColumn, getCellHyperlink, handleOverlayMouseMove, handleOverlayMouseUp, handleKeydownForZoom, handleOverlayTouchStart, handleOverlayTouchMove, handleOverlayTouchEnd, insertRowCol, drawArrow, onCellsMoveStart, createDropCellRange, updateContextWithSheetData, updateContextWithCanvas, initFreeze, Canvas, handleGlobalWheel, getDataArr, updateMoreCell, getRegStr, getOptionValue, getSelectRange, applyLocation, updateItem, update, normalizedCellAttr, updateFormat, handleTextSize, handleHorizontalAlign, handleVerticalAlign, handleScreenShot, showImgChooser, insertImage, editComment, deleteComment, showHideComment, showHideAllComments, newComment, handleSum, autoSelectionFormula, handleMerge, handleBorder, handleFreeze, handleSort, createFilter, clearFilter, toolbarItemSelectedFunc, toolbarItemClickHandler, handleTextColor, handleTextBackground, getInlineStringNoStyle, rangeHightlightselected, updateCell, editSheetName, cancelActiveImgItem, MAX_ZOOM_RATIO, MIN_ZOOM_RATIO, addSheet, getFreezeState, toggleFreeze, jfrefreshgrid, handleCopy, deleteRowCol, hideSelected, showSelected, api, removeActiveImage, deleteSelectedCellText, sortSelection, handleLink, handlePasteByClick, deleteSheet, opToPatch, setCaretPosition, orderbydatafiler, getFilterColumnValues, getFilterColumnColors, saveFilter, calcSelectionInfo, patchToOp, filterPatch, inverseRowColOptions, ensureSheetIndex, initSheetIndex, handleGlobalKeyDown, handlePaste, groupValuesRefresh } from '@fileverse-dev/fortune-core';
2
2
  import React, { useContext, useRef, useState, useMemo, useCallback, useEffect, useLayoutEffect, useImperativeHandle } from 'react';
3
3
  import produce, { applyPatches, enablePatches, produceWithPatches } from 'immer';
4
4
  import _ from 'lodash';
@@ -894,7 +894,10 @@ var FormulaHint = function FormulaHint(props) {
894
894
  className: "fa fa-angle-up",
895
895
  "aria-hidden": "true"
896
896
  })), /*#__PURE__*/React.createElement("div", {
897
- className: "flex roun items-center justify-between",
897
+ onClick: function onClick() {
898
+ setShouldShowFunctionBody(!showFunctionBody);
899
+ },
900
+ className: "flex cursor-pointer items-center justify-between",
898
901
  style: {
899
902
  backgroundColor: "".concat(fn.BRAND_COLOR ? fn.BRAND_COLOR : "#F8F9FA"),
900
903
  padding: "10px",
@@ -956,12 +959,8 @@ var FormulaHint = function FormulaHint(props) {
956
959
  width: "12px",
957
960
  height: "12px"
958
961
  }
959
- }))), /*#__PURE__*/React.createElement("div", {
960
- onClick: function onClick() {
961
- setShouldShowFunctionBody(!showFunctionBody);
962
- }
963
- }, /*#__PURE__*/React.createElement(LucideIcon, {
964
- name: "ChevronDown",
962
+ }))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(LucideIcon, {
963
+ name: showFunctionBody ? "ChevronUp" : "ChevronDown",
965
964
  width: 16,
966
965
  height: 16
967
966
  })))), showFunctionBody && (/*#__PURE__*/React.createElement("div", {
@@ -992,7 +991,7 @@ var FormulaHint = function FormulaHint(props) {
992
991
  },
993
992
  className: "text-heading-xsm color-text-default"
994
993
  }, isKeyAdded ? "API key provided" : "API key is required"), /*#__PURE__*/React.createElement(LucideIcon, {
995
- name: "ChevronDown",
994
+ name: showAPInput ? "ChevronUp" : "ChevronDown",
996
995
  width: 24,
997
996
  height: 24
998
997
  })), showAPInput && (/*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", {
@@ -1905,8 +1904,7 @@ var LinkEditCard = function LinkEditCard(_ref) {
1905
1904
  originType = _ref.originType,
1906
1905
  originAddress = _ref.originAddress,
1907
1906
  isEditing = _ref.isEditing,
1908
- position = _ref.position,
1909
- selectingCellRange = _ref.selectingCellRange;
1907
+ position = _ref.position;
1910
1908
  var _useContext = useContext(WorkbookContext),
1911
1909
  context = _useContext.context,
1912
1910
  setContext = _useContext.setContext,
@@ -1925,29 +1923,24 @@ var LinkEditCard = function LinkEditCard(_ref) {
1925
1923
  setLinkType = _useState6[1];
1926
1924
  var _locale = locale(context),
1927
1925
  insertLink = _locale.insertLink,
1928
- linkTypeList = _locale.linkTypeList,
1929
- button = _locale.button;
1930
- var lastCell = useRef(normalizeSelection(context, [{
1931
- row: [r, r],
1932
- column: [c, c]
1933
- }]));
1934
- var skipCellRangeSet = useRef(true);
1926
+ linkTypeList = _locale.linkTypeList;
1935
1927
  var isLinkAddressValid = isLinkValid(context, linkType, linkAddress);
1936
- var tooltip = /*#__PURE__*/React.createElement("div", {
1937
- className: "validation-input-tip"
1938
- }, isLinkAddressValid.tooltip);
1928
+ var isButtonDisabled = useMemo(function () {
1929
+ if (!linkText.trim()) return true;
1930
+ if (linkType === "webpage") {
1931
+ return !linkAddress.trim() || !isLinkAddressValid.isValid;
1932
+ }
1933
+ if (linkType === "sheet") {
1934
+ return !linkAddress.trim();
1935
+ }
1936
+ return false;
1937
+ }, [linkText, linkAddress, linkType, isLinkAddressValid.isValid]);
1939
1938
  var hideLinkCard = useCallback(function () {
1940
1939
  _.set(refs.globalCache, "linkCard.mouseEnter", false);
1941
1940
  setContext(function (draftCtx) {
1942
1941
  draftCtx.linkCard = undefined;
1943
1942
  });
1944
1943
  }, [refs.globalCache, setContext]);
1945
- var setRangeModalVisible = useCallback(function (visible) {
1946
- return setContext(function (draftCtx) {
1947
- draftCtx.luckysheet_select_save = lastCell.current;
1948
- if (draftCtx.linkCard != null) draftCtx.linkCard.selectingCellRange = visible;
1949
- });
1950
- }, [setContext]);
1951
1944
  var containerEvent = useMemo(function () {
1952
1945
  return {
1953
1946
  onMouseEnter: function onMouseEnter() {
@@ -1973,19 +1966,6 @@ var LinkEditCard = function LinkEditCard(_ref) {
1973
1966
  }
1974
1967
  };
1975
1968
  }, [refs.globalCache]);
1976
- var renderBottomButton = useCallback(function (onOk, onCancel) {
1977
- return /*#__PURE__*/React.createElement("div", {
1978
- className: "button-group"
1979
- }, /*#__PURE__*/React.createElement("div", {
1980
- className: "button-basic button-default",
1981
- onClick: onCancel,
1982
- tabIndex: 0
1983
- }, button.cancel), /*#__PURE__*/React.createElement("div", {
1984
- className: "button-basic button-primary",
1985
- onClick: onOk,
1986
- tabIndex: 0
1987
- }, button.confirm));
1988
- }, [button]);
1989
1969
  var renderToolbarButton = useCallback(function (iconId, onClick) {
1990
1970
  return /*#__PURE__*/React.createElement("div", {
1991
1971
  className: "fortune-toolbar-button",
@@ -2004,23 +1984,6 @@ var LinkEditCard = function LinkEditCard(_ref) {
2004
1984
  setLinkText(originText);
2005
1985
  setLinkType(originType);
2006
1986
  }, [rc, originAddress, originText, originType]);
2007
- useLayoutEffect(function () {
2008
- if (selectingCellRange) {
2009
- skipCellRangeSet.current = true;
2010
- }
2011
- }, [selectingCellRange]);
2012
- useLayoutEffect(function () {
2013
- if (skipCellRangeSet.current) {
2014
- skipCellRangeSet.current = false;
2015
- return;
2016
- }
2017
- if (selectingCellRange) {
2018
- var len = _.size(context.luckysheet_select_save);
2019
- if (len > 0) {
2020
- setLinkAddress(getRangetxt(context, context.currentSheetId, context.luckysheet_select_save[len - 1], ""));
2021
- }
2022
- }
2023
- }, [context, selectingCellRange]);
2024
1987
  if (!isEditing) {
2025
1988
  return /*#__PURE__*/React.createElement("div", _objectSpread2(_objectSpread2({}, containerEvent), {}, {
2026
1989
  onKeyDown: function onKeyDown(e) {
@@ -2061,69 +2024,16 @@ var LinkEditCard = function LinkEditCard(_ref) {
2061
2024
  });
2062
2025
  }));
2063
2026
  }
2064
- return selectingCellRange ? (/*#__PURE__*/React.createElement("div", _objectSpread2(_objectSpread2({
2065
- className: "fortune-link-modify-modal range-selection-modal",
2066
- style: {
2067
- left: position.cellLeft,
2068
- top: position.cellBottom + 5
2069
- }
2070
- }, _.omit(containerEvent, ["onMouseDown", "onMouseMove", "onMouseUp"])), {}, {
2071
- onMouseDown: function onMouseDown(e) {
2072
- var nativeEvent = e.nativeEvent;
2073
- onRangeSelectionModalMoveStart(context, refs.globalCache, nativeEvent);
2074
- e.stopPropagation();
2075
- }
2076
- }), /*#__PURE__*/React.createElement("div", {
2077
- className: "modal-icon-close",
2078
- onClick: function onClick() {
2079
- return setRangeModalVisible(false);
2080
- },
2081
- tabIndex: 0
2082
- }, /*#__PURE__*/React.createElement(SVGIcon, {
2083
- name: "close"
2084
- })), /*#__PURE__*/React.createElement("div", {
2085
- className: "modal-title"
2086
- }, insertLink.selectCellRange), /*#__PURE__*/React.createElement("input", _objectSpread2(_objectSpread2({}, containerEvent), {}, {
2087
- className: "range-selection-input ".concat(!linkAddress || isLinkAddressValid.isValid ? "" : "error-input"),
2088
- placeholder: insertLink.cellRangePlaceholder,
2089
- onChange: function onChange(e) {
2090
- return setLinkAddress(e.target.value);
2091
- },
2092
- value: linkAddress
2093
- })), tooltip, /*#__PURE__*/React.createElement("div", {
2094
- className: "modal-footer"
2095
- }, renderBottomButton(function () {
2096
- if (isLinkAddressValid.isValid) setRangeModalVisible(false);
2097
- }, function () {
2098
- setLinkAddress(originAddress);
2099
- setRangeModalVisible(false);
2100
- })))) : (/*#__PURE__*/React.createElement("div", _objectSpread2({
2101
- className: "fortune-link-modify-modal",
2027
+ return /*#__PURE__*/React.createElement("div", _objectSpread2({
2028
+ className: "fortune-link-card",
2102
2029
  style: {
2103
2030
  left: position.cellLeft + 20,
2104
2031
  top: position.cellBottom
2105
2032
  }
2106
- }, containerEvent), /*#__PURE__*/React.createElement("div", {
2107
- className: "fortune-link-modify-line"
2108
- }, /*#__PURE__*/React.createElement("div", {
2109
- className: "fortune-link-modify-title"
2110
- }, insertLink.linkText), /*#__PURE__*/React.createElement("input", {
2111
- className: "fortune-link-modify-input",
2112
- spellCheck: "false",
2113
- autoFocus: true,
2114
- value: linkText,
2115
- onChange: function onChange(e) {
2116
- return setLinkText(e.target.value);
2117
- }
2118
- })), /*#__PURE__*/React.createElement("div", {
2119
- className: "fortune-link-modify-line"
2120
- }, /*#__PURE__*/React.createElement("div", {
2121
- className: "fortune-link-modify-title"
2122
- }, insertLink.linkType), /*#__PURE__*/React.createElement("select", {
2123
- className: "fortune-link-modify-select",
2033
+ }, containerEvent), /*#__PURE__*/React.createElement(Select$1, {
2124
2034
  value: linkType,
2125
- onChange: function onChange(e) {
2126
- if (e.target.value === "sheet") {
2035
+ onValueChange: function onValueChange(value) {
2036
+ if (value === "sheet") {
2127
2037
  if (!linkText) {
2128
2038
  setLinkText(context.luckysheetfile[0].name);
2129
2039
  }
@@ -2131,65 +2041,79 @@ var LinkEditCard = function LinkEditCard(_ref) {
2131
2041
  } else {
2132
2042
  setLinkAddress("");
2133
2043
  }
2134
- if (e.target.value === "cellrange") setRangeModalVisible(true);
2135
- setLinkType(e.target.value);
2136
- }
2137
- }, linkTypeList.map(function (type) {
2138
- return /*#__PURE__*/React.createElement("option", {
2044
+ setLinkType(value);
2045
+ }
2046
+ }, /*#__PURE__*/React.createElement(SelectTrigger, {
2047
+ className: "fortune-link-type-select"
2048
+ }, /*#__PURE__*/React.createElement(SelectValue, null)), /*#__PURE__*/React.createElement(SelectContent, {
2049
+ className: "fortune-link-type-dropdown"
2050
+ }, linkTypeList.filter(function (type) {
2051
+ return type.value !== "cellrange";
2052
+ }).map(function (type) {
2053
+ return /*#__PURE__*/React.createElement(SelectItem$1, {
2139
2054
  key: type.value,
2140
2055
  value: type.value
2141
2056
  }, type.text);
2142
2057
  }))), /*#__PURE__*/React.createElement("div", {
2143
- className: "fortune-link-modify-line"
2144
- }, linkType === "webpage" && (/*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2145
- className: "fortune-link-modify-title"
2146
- }, insertLink.linkAddress), /*#__PURE__*/React.createElement("input", {
2147
- className: "fortune-link-modify-input ".concat(!linkAddress || isLinkAddressValid.isValid ? "" : "error-input"),
2148
- spellCheck: "false",
2149
- value: linkAddress,
2058
+ className: "fortune-input-with-icon"
2059
+ }, /*#__PURE__*/React.createElement("div", {
2060
+ className: "input-icon"
2061
+ }, /*#__PURE__*/React.createElement(LucideIcon, {
2062
+ name: "ALargeSmall"
2063
+ })), /*#__PURE__*/React.createElement(TextField, {
2064
+ placeholder: "Display text",
2065
+ value: linkText,
2150
2066
  onChange: function onChange(e) {
2151
- return setLinkAddress(e.target.value);
2152
- }
2153
- }), tooltip)), linkType === "cellrange" && (/*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2154
- className: "fortune-link-modify-title"
2155
- }, insertLink.linkCell), /*#__PURE__*/React.createElement("input", {
2156
- className: "fortune-link-modify-input ".concat(!linkAddress || isLinkAddressValid.isValid ? "" : "error-input"),
2157
- spellCheck: "false",
2067
+ return setLinkText(e.target.value);
2068
+ },
2069
+ className: "fortune-link-input"
2070
+ })), linkType === "webpage" && (/*#__PURE__*/React.createElement("div", {
2071
+ className: "fortune-input-with-icon"
2072
+ }, /*#__PURE__*/React.createElement("div", {
2073
+ className: "input-icon"
2074
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
2075
+ name: "link"
2076
+ })), /*#__PURE__*/React.createElement(TextField, {
2077
+ placeholder: "Paste URL",
2158
2078
  value: linkAddress,
2159
2079
  onChange: function onChange(e) {
2160
2080
  return setLinkAddress(e.target.value);
2161
- }
2162
- }), /*#__PURE__*/React.createElement("div", {
2163
- className: "fortune-link-modify-cell-selector",
2164
- onClick: function onClick() {
2165
- return setRangeModalVisible(true);
2166
2081
  },
2167
- tabIndex: 0
2082
+ className: "fortune-link-input ".concat(!linkAddress || isLinkAddressValid.isValid ? "" : "error-input")
2083
+ }))), linkType === "sheet" && (/*#__PURE__*/React.createElement("div", {
2084
+ className: "fortune-input-with-icon"
2085
+ }, /*#__PURE__*/React.createElement("div", {
2086
+ className: "input-icon"
2168
2087
  }, /*#__PURE__*/React.createElement(SVGIcon, {
2169
- name: "border-all"
2170
- })), tooltip)), linkType === "sheet" && (/*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
2171
- className: "fortune-link-modify-title"
2172
- }, insertLink.linkSheet), /*#__PURE__*/React.createElement("select", {
2173
- className: "fortune-link-modify-select",
2174
- onChange: function onChange(e) {
2175
- if (!linkText) setLinkText(e.target.value);
2176
- setLinkAddress(e.target.value);
2088
+ name: "link"
2089
+ })), /*#__PURE__*/React.createElement(Select$1, {
2090
+ onValueChange: function onValueChange(value) {
2091
+ if (!linkText) setLinkText(value);
2092
+ setLinkAddress(value);
2177
2093
  },
2178
2094
  value: linkAddress
2095
+ }, /*#__PURE__*/React.createElement(SelectTrigger, {
2096
+ className: "fortune-sheet-select"
2097
+ }, /*#__PURE__*/React.createElement(SelectValue, {
2098
+ placeholder: "[Sheet name]"
2099
+ })), /*#__PURE__*/React.createElement(SelectContent, {
2100
+ className: "fortune-sheet-dropdown"
2179
2101
  }, context.luckysheetfile.map(function (sheet) {
2180
- return /*#__PURE__*/React.createElement("option", {
2102
+ return /*#__PURE__*/React.createElement(SelectItem$1, {
2181
2103
  key: sheet.id,
2182
2104
  value: sheet.name
2183
2105
  }, sheet.name);
2184
- })), tooltip))), /*#__PURE__*/React.createElement("div", {
2185
- className: "modal-footer"
2186
- }, renderBottomButton(function () {
2187
- if (!isLinkAddressValid.isValid) return;
2188
- _.set(refs.globalCache, "linkCard.mouseEnter", false);
2189
- setContext(function (draftCtx) {
2190
- return saveHyperlink(draftCtx, r, c, linkText, linkType, linkAddress);
2191
- });
2192
- }, hideLinkCard))));
2106
+ }))))), /*#__PURE__*/React.createElement(Button$1, {
2107
+ className: "fortune-insert-button",
2108
+ disabled: isButtonDisabled,
2109
+ onClick: function onClick() {
2110
+ if (isButtonDisabled) return;
2111
+ _.set(refs.globalCache, "linkCard.mouseEnter", false);
2112
+ setContext(function (draftCtx) {
2113
+ return saveHyperlink(draftCtx, r, c, linkText, linkType, linkAddress);
2114
+ });
2115
+ }
2116
+ }, "Insert link"));
2193
2117
  };
2194
2118
 
2195
2119
  var FilterOptions = function FilterOptions(_ref) {
@@ -2291,15 +2215,11 @@ var FilterOptions = function FilterOptions(_ref) {
2291
2215
  width: undefined
2292
2216
  }),
2293
2217
  className: "luckysheet-filter-options ".concat(filterParam == null ? "" : "luckysheet-filter-options-active")
2294
- }, filterParam == null ? (/*#__PURE__*/React.createElement("div", {
2295
- className: "caret down"
2296
- })) : (/*#__PURE__*/React.createElement(SVGIcon, {
2297
- name: "filter-fill-white",
2298
- style: {
2299
- width: 15,
2300
- height: 15
2301
- }
2302
- })));
2218
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
2219
+ name: "filter",
2220
+ width: 15,
2221
+ height: 15
2222
+ }));
2303
2223
  })));
2304
2224
  };
2305
2225
 
@@ -3397,6 +3317,7 @@ var ConditionRules = function ConditionRules(_ref) {
3397
3317
  }, /*#__PURE__*/React.createElement("span", {
3398
3318
  id: "checkTextColor"
3399
3319
  }, /*#__PURE__*/React.createElement(Checkbox, {
3320
+ className: "border-2",
3400
3321
  checked: context.conditionRules.textColor.check,
3401
3322
  onCheckedChange: function onCheckedChange(e) {
3402
3323
  var checked = e.target.checked;
@@ -3424,6 +3345,7 @@ var ConditionRules = function ConditionRules(_ref) {
3424
3345
  }, /*#__PURE__*/React.createElement("span", {
3425
3346
  id: "checkCellColor"
3426
3347
  }, /*#__PURE__*/React.createElement(Checkbox, {
3348
+ className: "border-2",
3427
3349
  checked: context.conditionRules.cellColor.check,
3428
3350
  onCheckedChange: function onCheckedChange(e) {
3429
3351
  var checked = e.target.checked;
@@ -4463,6 +4385,8 @@ var Combo = function Combo(_ref) {
4463
4385
  _onClick = _ref.onClick,
4464
4386
  text = _ref.text,
4465
4387
  iconId = _ref.iconId,
4388
+ _ref$showArrow = _ref.showArrow,
4389
+ showArrow = _ref$showArrow === void 0 ? true : _ref$showArrow,
4466
4390
  children = _ref.children;
4467
4391
  var style = {
4468
4392
  userSelect: "none"
@@ -4479,12 +4403,9 @@ var Combo = function Combo(_ref) {
4479
4403
  setPopupPosition = _useState4[1];
4480
4404
  var popupRef = useRef(null);
4481
4405
  var buttonRef = useRef(null);
4482
- var openState = useRef(false);
4483
- var triggerRef = useRef(null);
4484
4406
  useOutsideClick(popupRef, function () {
4485
4407
  setOpen(false);
4486
- openState.current = false;
4487
- }, [], triggerRef);
4408
+ });
4488
4409
  useLayoutEffect(function () {
4489
4410
  if (!popupRef.current) {
4490
4411
  return;
@@ -4510,27 +4431,43 @@ var Combo = function Combo(_ref) {
4510
4431
  ref: buttonRef,
4511
4432
  className: "fortune-toolbar-combo"
4512
4433
  }, /*#__PURE__*/React.createElement("div", {
4513
- ref: triggerRef,
4514
4434
  className: "fortune-toolbar-combo-button",
4515
4435
  onClick: function onClick(e) {
4516
- openState.current = !openState.current;
4517
- setOpen(openState.current);
4518
- if (_onClick) _onClick(e);else setOpen(openState.current);
4436
+ if (_onClick) {
4437
+ _onClick(e);
4438
+ if (!showArrow) setOpen(!open);
4439
+ } else {
4440
+ setOpen(!open);
4441
+ }
4519
4442
  },
4520
4443
  tabIndex: 0,
4521
4444
  "data-tips": tooltip,
4522
4445
  role: "button",
4523
- "aria-label": tooltip,
4446
+ "aria-label": "".concat(tooltip, ": ").concat(text !== undefined ? text : ""),
4524
4447
  style: style
4525
4448
  }, iconId ? (/*#__PURE__*/React.createElement(SVGIcon, {
4526
4449
  name: iconId
4527
4450
  })) : (/*#__PURE__*/React.createElement("span", {
4528
4451
  className: "fortune-toolbar-combo-text"
4529
- }, text))), tooltip && /*#__PURE__*/React.createElement("div", {
4452
+ }, text !== undefined ? text : ""))), showArrow && (/*#__PURE__*/React.createElement("div", {
4453
+ className: "fortune-toolbar-combo-arrow",
4454
+ onClick: function onClick() {
4455
+ return setOpen(!open);
4456
+ },
4457
+ tabIndex: 0,
4458
+ "data-tips": tooltip,
4459
+ role: "button",
4460
+ "aria-label": tooltip,
4461
+ style: style
4462
+ }, /*#__PURE__*/React.createElement(LucideIcon, {
4463
+ name: "ChevronDown",
4464
+ width: 14,
4465
+ height: 14
4466
+ }))), tooltip && /*#__PURE__*/React.createElement("div", {
4530
4467
  className: "fortune-tooltip"
4531
4468
  }, tooltip)), open && (/*#__PURE__*/React.createElement("div", {
4532
4469
  ref: popupRef,
4533
- className: "fortune-toolbar-combo-popup color-text-default",
4470
+ className: "fortune-toolbar-combo-popup",
4534
4471
  style: popupPosition
4535
4472
  }, children === null || children === void 0 ? void 0 : children(setOpen))));
4536
4473
  };
@@ -5293,215 +5230,6 @@ var CustomColor = function CustomColor(_ref) {
5293
5230
  }));
5294
5231
  };
5295
5232
 
5296
- var size = [{
5297
- Text: "1",
5298
- value: "Thin",
5299
- strokeDasharray: "1,0",
5300
- strokeWidth: "1"
5301
- }, {
5302
- Text: "2",
5303
- value: "Hair",
5304
- strokeDasharray: "1,5",
5305
- strokeWidth: "1"
5306
- }, {
5307
- Text: "3",
5308
- value: "Dotted",
5309
- strokeDasharray: "2,5",
5310
- strokeWidth: "2"
5311
- }, {
5312
- Text: "4",
5313
- value: "Dashed",
5314
- strokeDasharray: "5,5",
5315
- strokeWidth: "2"
5316
- }, {
5317
- Text: "5",
5318
- value: "DashDot",
5319
- strokeDasharray: "20,5,5,10,5,5",
5320
- strokeWidth: "2"
5321
- }, {
5322
- Text: "6",
5323
- value: "DashDotDot",
5324
- strokeDasharray: "20,5,5,5,5,10,5,5,5,5",
5325
- strokeWidth: "2"
5326
- }, {
5327
- Text: "8",
5328
- value: "Medium",
5329
- strokeDasharray: "2,0",
5330
- strokeWidth: "2"
5331
- }, {
5332
- Text: "9",
5333
- value: "MediumDashed",
5334
- strokeDasharray: "3,5",
5335
- strokeWidth: "3"
5336
- }, {
5337
- Text: "10",
5338
- value: "MediumDashDot",
5339
- strokeDasharray: "20,5,5,10,5,5",
5340
- strokeWidth: "3"
5341
- }, {
5342
- Text: "11",
5343
- value: "MediumDashDotDot",
5344
- strokeDasharray: "5,5,5,5,20,5,5,5,5,10",
5345
- strokeWidth: "3"
5346
- }, {
5347
- Text: "13",
5348
- value: "Thick",
5349
- strokeDasharray: "2,0",
5350
- strokeWidth: "3"
5351
- }];
5352
- var CustomBorder = function CustomBorder(_ref) {
5353
- var onPick = _ref.onPick;
5354
- var _useContext = useContext(WorkbookContext),
5355
- context = _useContext.context,
5356
- refs = _useContext.refs;
5357
- var _locale = locale(context),
5358
- border = _locale.border;
5359
- var _useState = useState("#000000"),
5360
- _useState2 = _slicedToArray(_useState, 2),
5361
- changeColor = _useState2[0],
5362
- setchangeColor = _useState2[1];
5363
- var _useState3 = useState("1"),
5364
- _useState4 = _slicedToArray(_useState3, 2),
5365
- changeStyle = _useState4[0],
5366
- setchangeStyle = _useState4[1];
5367
- var colorRef = useRef(null);
5368
- var styleRef = useRef(null);
5369
- var colorPreviewRef = useRef(null);
5370
- var _useState5 = useState(""),
5371
- _useState6 = _slicedToArray(_useState5, 2),
5372
- previewWith = _useState6[0],
5373
- setPreviewWith = _useState6[1];
5374
- var _useState7 = useState(""),
5375
- _useState8 = _slicedToArray(_useState7, 2),
5376
- previewdasharry = _useState8[0],
5377
- setPreviewdasharray = _useState8[1];
5378
- var showBorderSubMenu = useCallback(function (e) {
5379
- var target = e.target;
5380
- var menuItemRect = target.getBoundingClientRect();
5381
- var subMenuItem = target.querySelector(".fortune-border-select-menu");
5382
- if (_.isNil(subMenuItem)) return;
5383
- subMenuItem.style.display = "block";
5384
- var workbookContainerRect = refs.workbookContainer.current.getBoundingClientRect();
5385
- if (workbookContainerRect.width - menuItemRect.right > parseFloat(subMenuItem.style.width.replace("px", ""))) {
5386
- subMenuItem.style.left = "".concat(menuItemRect === null || menuItemRect === void 0 ? void 0 : menuItemRect.width, "px");
5387
- } else {
5388
- subMenuItem.style.left = "-".concat(subMenuItem.style.width);
5389
- }
5390
- }, [refs.workbookContainer]);
5391
- var hideBorderSubMenu = useCallback(function () {
5392
- styleRef.current.style.display = "none";
5393
- colorRef.current.style.display = "none";
5394
- }, []);
5395
- var changePreviewStyle = useCallback(function (width, dasharray) {
5396
- setPreviewWith(width);
5397
- setPreviewdasharray(dasharray);
5398
- }, []);
5399
- return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
5400
- className: "fortune-border-select-option",
5401
- key: "borderColor",
5402
- onMouseEnter: function onMouseEnter(e) {
5403
- showBorderSubMenu(e);
5404
- },
5405
- onMouseLeave: function onMouseLeave() {
5406
- hideBorderSubMenu();
5407
- }
5408
- }, /*#__PURE__*/React.createElement("div", {
5409
- className: "fortune-toolbar-menu-line"
5410
- }, border.borderColor, /*#__PURE__*/React.createElement(SVGIcon, {
5411
- name: "rightArrow",
5412
- style: {
5413
- width: "14px"
5414
- }
5415
- })), /*#__PURE__*/React.createElement("div", {
5416
- ref: colorPreviewRef,
5417
- className: "fortune-border-color-preview",
5418
- style: {
5419
- backgroundColor: changeColor
5420
- }
5421
- }), /*#__PURE__*/React.createElement("div", {
5422
- ref: colorRef,
5423
- className: "fortune-border-select-menu",
5424
- style: {
5425
- display: "none",
5426
- width: "166px"
5427
- }
5428
- }, /*#__PURE__*/React.createElement(CustomColor, {
5429
- onCustomPick: function onCustomPick(color) {
5430
- onPick(color, changeStyle);
5431
- colorPreviewRef.current.style.backgroundColor = changeColor;
5432
- setchangeColor(color);
5433
- },
5434
- onColorPick: function onColorPick(color) {
5435
- onPick(color, changeStyle);
5436
- setchangeColor(color);
5437
- }
5438
- }))), /*#__PURE__*/React.createElement("div", {
5439
- className: "fortune-border-select-option",
5440
- key: "borderStyle",
5441
- onMouseEnter: function onMouseEnter(e) {
5442
- showBorderSubMenu(e);
5443
- },
5444
- onMouseLeave: function onMouseLeave() {
5445
- hideBorderSubMenu();
5446
- }
5447
- }, /*#__PURE__*/React.createElement("div", {
5448
- className: "fortune-toolbar-menu-line"
5449
- }, border.borderStyle, /*#__PURE__*/React.createElement(SVGIcon, {
5450
- name: "rightArrow",
5451
- style: {
5452
- width: "14px"
5453
- }
5454
- })), /*#__PURE__*/React.createElement("div", {
5455
- className: "fortune-border-style-preview"
5456
- }, /*#__PURE__*/React.createElement("svg", {
5457
- width: "90"
5458
- }, /*#__PURE__*/React.createElement("g", {
5459
- fill: "none",
5460
- stroke: "black",
5461
- strokeWidth: previewWith
5462
- }, /*#__PURE__*/React.createElement("path", {
5463
- strokeDasharray: previewdasharry,
5464
- d: "M0 0 l90 0"
5465
- })))), /*#__PURE__*/React.createElement("div", {
5466
- ref: styleRef,
5467
- className: "fortune-border-select-menu fortune-toolbar-select",
5468
- style: {
5469
- display: "none",
5470
- width: "110px"
5471
- }
5472
- }, /*#__PURE__*/React.createElement("div", {
5473
- className: "fortune-border-style-picker-menu fortune-border-style-reset",
5474
- onClick: function onClick() {
5475
- onPick(changeColor, "1");
5476
- changePreviewStyle("1", "1,0");
5477
- },
5478
- tabIndex: 0
5479
- }, border.borderDefault), /*#__PURE__*/React.createElement("div", {
5480
- className: "fortune-boder-style-picker"
5481
- }, size.map(function (items, i) {
5482
- return /*#__PURE__*/React.createElement("div", {
5483
- key: i,
5484
- className: "fortune-border-style-picker-menu",
5485
- onClick: function onClick() {
5486
- onPick(changeColor, items.Text);
5487
- setchangeStyle(items.Text);
5488
- changePreviewStyle(items.strokeWidth, items.strokeDasharray);
5489
- },
5490
- tabIndex: 0
5491
- }, /*#__PURE__*/React.createElement("svg", {
5492
- height: "10",
5493
- width: "90"
5494
- }, /*#__PURE__*/React.createElement("g", {
5495
- fill: "none",
5496
- stroke: "black",
5497
- strokeWidth: items.strokeWidth
5498
- }, /*#__PURE__*/React.createElement("path", {
5499
- strokeDasharray: items.strokeDasharray,
5500
- d: "M0 5 l85 0"
5501
- }))));
5502
- })))));
5503
- };
5504
-
5505
5233
  var FormatSearch = function FormatSearch(_ref) {
5506
5234
  var type = _ref.type,
5507
5235
  _onCancel = _ref.onCancel;
@@ -5678,13 +5406,11 @@ var Toolbar = function Toolbar(_ref) {
5678
5406
  var currency = settings.currency;
5679
5407
  var defaultFormat = defaultFmt(currency);
5680
5408
  var _useState5 = useState("#000000"),
5681
- _useState6 = _slicedToArray(_useState5, 2),
5682
- customColor = _useState6[0],
5683
- setcustomColor = _useState6[1];
5409
+ _useState6 = _slicedToArray(_useState5, 1),
5410
+ customColor = _useState6[0];
5684
5411
  var _useState7 = useState("1"),
5685
- _useState8 = _slicedToArray(_useState7, 2),
5686
- customStyle = _useState8[0],
5687
- setcustomStyle = _useState8[1];
5412
+ _useState8 = _slicedToArray(_useState7, 1),
5413
+ customStyle = _useState8[0];
5688
5414
  var showSubMenu = useCallback(function (e, className) {
5689
5415
  var target = e.target;
5690
5416
  var menuItem = target.className === "fortune-toolbar-menu-line" ? target.parentElement : target;
@@ -5784,6 +5510,7 @@ var Toolbar = function Toolbar(_ref) {
5784
5510
  }), /*#__PURE__*/React.createElement(Combo, {
5785
5511
  iconId: name,
5786
5512
  tooltip: tooltip,
5513
+ showArrow: false,
5787
5514
  onClick: function onClick() {
5788
5515
  var color = name === "font-color" ? refs.globalCache.recentTextColor : refs.globalCache.recentBackgroundColor;
5789
5516
  if (color) pick(color);
@@ -5816,7 +5543,8 @@ var Toolbar = function Toolbar(_ref) {
5816
5543
  return /*#__PURE__*/React.createElement(Combo, {
5817
5544
  text: currentFmt,
5818
5545
  key: name,
5819
- tooltip: tooltip
5546
+ tooltip: tooltip,
5547
+ showArrow: false
5820
5548
  }, function (setOpen) {
5821
5549
  return /*#__PURE__*/React.createElement(Select, null, defaultFormat.map(function (_ref2, ii) {
5822
5550
  var text = _ref2.text,
@@ -5900,7 +5628,8 @@ var Toolbar = function Toolbar(_ref) {
5900
5628
  return /*#__PURE__*/React.createElement(Combo, {
5901
5629
  text: current,
5902
5630
  key: name,
5903
- tooltip: tooltip
5631
+ tooltip: tooltip,
5632
+ showArrow: false
5904
5633
  }, function (setOpen) {
5905
5634
  return /*#__PURE__*/React.createElement(Select, null, fontarray.map(function (o) {
5906
5635
  return /*#__PURE__*/React.createElement(Option, {
@@ -5922,7 +5651,8 @@ var Toolbar = function Toolbar(_ref) {
5922
5651
  return /*#__PURE__*/React.createElement(Combo, {
5923
5652
  text: cell ? normalizedCellAttr(cell, "fs", context.defaultFontSize) : context.defaultFontSize.toString(),
5924
5653
  key: name,
5925
- tooltip: tooltip
5654
+ tooltip: tooltip,
5655
+ showArrow: false
5926
5656
  }, function (setOpen) {
5927
5657
  return /*#__PURE__*/React.createElement(Select, null, [9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72].map(function (num) {
5928
5658
  return /*#__PURE__*/React.createElement(Option, {
@@ -5957,7 +5687,8 @@ var Toolbar = function Toolbar(_ref) {
5957
5687
  return "".concat(item.value) === "".concat(cell === null || cell === void 0 ? void 0 : cell.ht);
5958
5688
  })) === null || _$find === void 0 ? void 0 : _$find.title) || "align-left",
5959
5689
  key: name,
5960
- tooltip: toolbar.horizontalAlign
5690
+ tooltip: toolbar.horizontalAlign,
5691
+ showArrow: false
5961
5692
  }, function (setOpen) {
5962
5693
  return /*#__PURE__*/React.createElement(Select, null, items.map(function (_ref3) {
5963
5694
  var text = _ref3.text,
@@ -5998,7 +5729,8 @@ var Toolbar = function Toolbar(_ref) {
5998
5729
  return "".concat(item.value) === "".concat(cell === null || cell === void 0 ? void 0 : cell.vt);
5999
5730
  })) === null || _$find2 === void 0 ? void 0 : _$find2.title) || "align-top",
6000
5731
  key: name,
6001
- tooltip: toolbar.verticalAlign
5732
+ tooltip: toolbar.verticalAlign,
5733
+ showArrow: false
6002
5734
  }, function (setOpen) {
6003
5735
  return /*#__PURE__*/React.createElement(Select, null, _items.map(function (_ref4) {
6004
5736
  var text = _ref4.text,
@@ -6123,7 +5855,8 @@ var Toolbar = function Toolbar(_ref) {
6123
5855
  return /*#__PURE__*/React.createElement(Combo, {
6124
5856
  iconId: "locationCondition",
6125
5857
  key: name,
6126
- tooltip: findAndReplace.location
5858
+ tooltip: findAndReplace.location,
5859
+ showArrow: false
6127
5860
  }, function (setOpen) {
6128
5861
  return /*#__PURE__*/React.createElement(Select, null, _items2.map(function (_ref5) {
6129
5862
  var text = _ref5.text,
@@ -6208,7 +5941,8 @@ var Toolbar = function Toolbar(_ref) {
6208
5941
  return /*#__PURE__*/React.createElement(Combo, {
6209
5942
  iconId: "conditionFormat",
6210
5943
  key: name,
6211
- tooltip: toolbar.conditionalFormat
5944
+ tooltip: toolbar.conditionalFormat,
5945
+ showArrow: false
6212
5946
  }, function (setOpen) {
6213
5947
  return /*#__PURE__*/React.createElement(ConditionalFormat, {
6214
5948
  items: _items3,
@@ -6305,7 +6039,8 @@ var Toolbar = function Toolbar(_ref) {
6305
6039
  return /*#__PURE__*/React.createElement(Combo, {
6306
6040
  iconId: name,
6307
6041
  key: name,
6308
- tooltip: tooltip
6042
+ tooltip: tooltip,
6043
+ showArrow: false
6309
6044
  }, function (setOpen) {
6310
6045
  return /*#__PURE__*/React.createElement(Select, null, itemData.map(function (_ref6) {
6311
6046
  var key = _ref6.key,
@@ -6344,6 +6079,7 @@ var Toolbar = function Toolbar(_ref) {
6344
6079
  iconId: "formula-sum",
6345
6080
  key: name,
6346
6081
  tooltip: toolbar.autoSum,
6082
+ showArrow: false,
6347
6083
  onClick: function onClick() {
6348
6084
  return setContext(function (ctx) {
6349
6085
  handleSum(ctx, refs.cellInput.current, refs.fxInput.current, refs.globalCache);
@@ -6415,12 +6151,13 @@ var Toolbar = function Toolbar(_ref) {
6415
6151
  setOpen(false);
6416
6152
  }
6417
6153
  }, /*#__PURE__*/React.createElement("div", {
6418
- className: "fortune-toolbar-menu-line"
6419
- }, /*#__PURE__*/React.createElement(SVGIcon, {
6420
- name: value,
6421
6154
  style: {
6422
- marginRight: 4
6155
+ display: "flex",
6156
+ alignItems: "center",
6157
+ gap: 6
6423
6158
  }
6159
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
6160
+ name: value
6424
6161
  }), text));
6425
6162
  }));
6426
6163
  });
@@ -6438,9 +6175,6 @@ var Toolbar = function Toolbar(_ref) {
6438
6175
  }, {
6439
6176
  text: border.borderRight,
6440
6177
  value: "border-right"
6441
- }, {
6442
- text: "",
6443
- value: "divider"
6444
6178
  }, {
6445
6179
  text: border.borderNone,
6446
6180
  value: "border-none"
@@ -6450,9 +6184,6 @@ var Toolbar = function Toolbar(_ref) {
6450
6184
  }, {
6451
6185
  text: border.borderOutside,
6452
6186
  value: "border-outside"
6453
- }, {
6454
- text: "",
6455
- value: "divider"
6456
6187
  }, {
6457
6188
  text: border.borderInside,
6458
6189
  value: "border-inside"
@@ -6465,44 +6196,35 @@ var Toolbar = function Toolbar(_ref) {
6465
6196
  }, {
6466
6197
  text: border.borderSlash,
6467
6198
  value: "border-slash"
6468
- }, {
6469
- text: "",
6470
- value: "divider"
6471
6199
  }];
6472
6200
  return /*#__PURE__*/React.createElement(Combo, {
6473
6201
  iconId: "border-all",
6474
6202
  key: name,
6475
6203
  tooltip: tooltip,
6476
6204
  text: "\u8FB9\u6846\u8BBE\u7F6E",
6205
+ showArrow: false,
6477
6206
  onClick: function onClick() {
6478
6207
  return setContext(function (ctx) {
6479
6208
  handleBorder(ctx, "border-all", customColor, customStyle);
6480
6209
  });
6481
6210
  }
6482
6211
  }, function (setOpen) {
6483
- return /*#__PURE__*/React.createElement(Select, null, _items4.map(function (_ref9, ii) {
6484
- var text = _ref9.text,
6485
- value = _ref9.value;
6486
- return value !== "divider" ? (/*#__PURE__*/React.createElement(Option, {
6212
+ return /*#__PURE__*/React.createElement("div", {
6213
+ className: "fortune-toolbar-select fortune-border-grid"
6214
+ }, _items4.map(function (_ref9) {
6215
+ var value = _ref9.value;
6216
+ return /*#__PURE__*/React.createElement("div", {
6487
6217
  key: value,
6218
+ className: "fortune-border-grid-item",
6488
6219
  onClick: function onClick() {
6489
6220
  setContext(function (ctx) {
6490
6221
  handleBorder(ctx, value, customColor, customStyle);
6491
6222
  });
6492
6223
  setOpen(false);
6493
6224
  }
6494
- }, /*#__PURE__*/React.createElement("div", {
6495
- className: "fortune-toolbar-menu-line"
6496
- }, text, /*#__PURE__*/React.createElement(SVGIcon, {
6225
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
6497
6226
  name: value
6498
- })))) : (/*#__PURE__*/React.createElement(MenuDivider, {
6499
- key: ii
6500
6227
  }));
6501
- }), /*#__PURE__*/React.createElement(CustomBorder, {
6502
- onPick: function onPick(color, style) {
6503
- setcustomColor(color);
6504
- setcustomStyle(style);
6505
- }
6506
6228
  }));
6507
6229
  });
6508
6230
  }
@@ -6524,6 +6246,7 @@ var Toolbar = function Toolbar(_ref) {
6524
6246
  iconId: "freeze-row-col",
6525
6247
  key: name,
6526
6248
  tooltip: tooltip,
6249
+ showArrow: false,
6527
6250
  onClick: function onClick() {
6528
6251
  return setContext(function (ctx) {
6529
6252
  handleFreeze(ctx, "freeze-row-col");
@@ -6570,7 +6293,8 @@ var Toolbar = function Toolbar(_ref) {
6570
6293
  return /*#__PURE__*/React.createElement(Combo, {
6571
6294
  iconId: _curr.iconId,
6572
6295
  key: name,
6573
- tooltip: toolbar.textWrap
6296
+ tooltip: toolbar.textWrap,
6297
+ showArrow: false
6574
6298
  }, function (setOpen) {
6575
6299
  return /*#__PURE__*/React.createElement(Select, null, _items6.map(function (_ref1) {
6576
6300
  var text = _ref1.text,
@@ -6627,7 +6351,8 @@ var Toolbar = function Toolbar(_ref) {
6627
6351
  return /*#__PURE__*/React.createElement(Combo, {
6628
6352
  iconId: _curr2.iconId,
6629
6353
  key: name,
6630
- tooltip: toolbar.textRotate
6354
+ tooltip: toolbar.textRotate,
6355
+ showArrow: false
6631
6356
  }, function (setOpen) {
6632
6357
  return /*#__PURE__*/React.createElement(Select, null, _items7.map(function (_ref10) {
6633
6358
  var text = _ref10.text,
@@ -6695,7 +6420,8 @@ var Toolbar = function Toolbar(_ref) {
6695
6420
  return /*#__PURE__*/React.createElement(Combo, {
6696
6421
  iconId: "filter",
6697
6422
  key: name,
6698
- tooltip: toolbar.sortAndFilter
6423
+ tooltip: toolbar.sortAndFilter,
6424
+ showArrow: false
6699
6425
  }, function (setOpen) {
6700
6426
  return /*#__PURE__*/React.createElement(Select, {
6701
6427
  style: {
@@ -6718,7 +6444,9 @@ var Toolbar = function Toolbar(_ref) {
6718
6444
  justifyContent: "start"
6719
6445
  }
6720
6446
  }, /*#__PURE__*/React.createElement(SVGIcon, {
6721
- name: iconId
6447
+ name: iconId,
6448
+ width: 24,
6449
+ height: 18
6722
6450
  }), text))) : (/*#__PURE__*/React.createElement(MenuDivider, {
6723
6451
  key: "divider-".concat(index)
6724
6452
  }));
@@ -6743,7 +6471,7 @@ var Toolbar = function Toolbar(_ref) {
6743
6471
  className: "fortune-toolbar",
6744
6472
  "aria-label": toolbar.toolbar
6745
6473
  }, settings.customToolbarItems.filter(function (n) {
6746
- return n.key !== "templates";
6474
+ return n.key === "import-export";
6747
6475
  }).map(function (n) {
6748
6476
  return /*#__PURE__*/React.createElement(CustomButton, {
6749
6477
  tooltip: n.tooltip,
@@ -6780,6 +6508,18 @@ var Toolbar = function Toolbar(_ref) {
6780
6508
  icon: n.icon,
6781
6509
  iconName: n.iconName
6782
6510
  }, n.children);
6511
+ }), /*#__PURE__*/React.createElement(Divider, {
6512
+ key: "customDivider"
6513
+ }), settings.customToolbarItems.filter(function (n) {
6514
+ return n.key !== "templates" && n.key !== "import-export";
6515
+ }).map(function (n) {
6516
+ return /*#__PURE__*/React.createElement(CustomButton, {
6517
+ tooltip: n.tooltip,
6518
+ onClick: n.onClick,
6519
+ key: n.key,
6520
+ icon: n.icon,
6521
+ iconName: n.iconName
6522
+ }, n.children);
6783
6523
  }));
6784
6524
  };
6785
6525
 
@@ -8024,7 +7764,8 @@ var ContextMenu = function ContextMenu() {
8024
7764
  }
8025
7765
  }, /*#__PURE__*/React.createElement(SVGIcon, {
8026
7766
  name: "sort-asc",
8027
- width: 22,
7767
+ width: 24,
7768
+ height: 18,
8028
7769
  style: {
8029
7770
  marginRight: "4px"
8030
7771
  }
@@ -8042,7 +7783,8 @@ var ContextMenu = function ContextMenu() {
8042
7783
  }
8043
7784
  }, /*#__PURE__*/React.createElement(SVGIcon, {
8044
7785
  name: "sort-desc",
8045
- width: 22,
7786
+ width: 24,
7787
+ height: 18,
8046
7788
  style: {
8047
7789
  marginRight: "4px"
8048
7790
  }
@@ -8098,7 +7840,7 @@ var ContextMenu = function ContextMenu() {
8098
7840
  }
8099
7841
  }, /*#__PURE__*/React.createElement(SVGIcon, {
8100
7842
  name: "filter",
8101
- width: 22,
7843
+ width: 24,
8102
7844
  style: {
8103
7845
  marginRight: "4px"
8104
7846
  }
@@ -8116,9 +7858,11 @@ var ContextMenu = function ContextMenu() {
8116
7858
  }
8117
7859
  }, /*#__PURE__*/React.createElement(SVGIcon, {
8118
7860
  name: "eraser",
8119
- width: 22,
7861
+ width: 24,
7862
+ height: 22,
8120
7863
  style: {
8121
- marginRight: "4px"
7864
+ marginRight: "4px",
7865
+ marginLeft: "2px"
8122
7866
  }
8123
7867
  }), /*#__PURE__*/React.createElement("p", null, filter.clearFilter))))),
8124
7868
  trigger: "mouseenter focus",
@@ -8129,7 +7873,7 @@ var ContextMenu = function ContextMenu() {
8129
7873
  className: "context-item"
8130
7874
  }, /*#__PURE__*/React.createElement(SVGIcon, {
8131
7875
  name: "filter",
8132
- width: 22,
7876
+ width: 24,
8133
7877
  style: {
8134
7878
  marginRight: "4px"
8135
7879
  }
@@ -10553,23 +10297,24 @@ function generateAPIs(context, setContext, handleUndo, handleRedo, settings, cel
10553
10297
  var SelectItem = function SelectItem(_ref) {
10554
10298
  var item = _ref.item,
10555
10299
  isChecked = _ref.isChecked,
10556
- _onChange = _ref.onChange,
10300
+ onChange = _ref.onChange,
10557
10301
  isItemVisible = _ref.isItemVisible;
10558
10302
  var checked = useMemo(function () {
10559
10303
  return isChecked(item.key);
10560
10304
  }, [isChecked, item.key]);
10561
10305
  return isItemVisible(item) ? (/*#__PURE__*/React.createElement("div", {
10562
10306
  className: "select-item"
10563
- }, /*#__PURE__*/React.createElement("input", {
10564
- className: "filter-checkbox",
10565
- type: "checkbox",
10307
+ }, /*#__PURE__*/React.createElement("div", {
10308
+ className: "flex items-center gap-2"
10309
+ }, /*#__PURE__*/React.createElement(Checkbox, {
10310
+ className: "border-2",
10566
10311
  checked: checked,
10567
- onChange: function onChange() {
10568
- _onChange(item, !checked);
10312
+ onCheckedChange: function onCheckedChange(e) {
10313
+ onChange(item, e.target.checked);
10569
10314
  }
10570
- }), /*#__PURE__*/React.createElement("div", null, item.text), /*#__PURE__*/React.createElement("span", {
10315
+ }), /*#__PURE__*/React.createElement("span", null, item.text)), /*#__PURE__*/React.createElement("span", {
10571
10316
  className: "count"
10572
- }, "( ".concat(item.rows.length, " )")))) : null;
10317
+ }, "".concat(item.rows.length)))) : null;
10573
10318
  };
10574
10319
  var _DateSelectTreeItem = function DateSelectTreeItem(_ref2) {
10575
10320
  var item = _ref2.item,
@@ -10578,7 +10323,7 @@ var _DateSelectTreeItem = function DateSelectTreeItem(_ref2) {
10578
10323
  initialExpand = _ref2.initialExpand,
10579
10324
  onExpand = _ref2.onExpand,
10580
10325
  isChecked = _ref2.isChecked,
10581
- _onChange2 = _ref2.onChange,
10326
+ onChange = _ref2.onChange,
10582
10327
  isItemVisible = _ref2.isItemVisible;
10583
10328
  var _useState = useState(initialExpand(item.key)),
10584
10329
  _useState2 = _slicedToArray(_useState, 2),
@@ -10587,39 +10332,43 @@ var _DateSelectTreeItem = function DateSelectTreeItem(_ref2) {
10587
10332
  var checked = useMemo(function () {
10588
10333
  return isChecked(item.key);
10589
10334
  }, [isChecked, item.key]);
10590
- return isItemVisible(item) ? (/*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
10335
+ return isItemVisible(item) ? (/*#__PURE__*/React.createElement("div", {
10336
+ className: "flex flex-col gap-2"
10337
+ }, /*#__PURE__*/React.createElement("div", {
10591
10338
  className: "select-item",
10592
10339
  style: {
10593
10340
  marginLeft: -2 + depth * 20
10594
10341
  },
10595
- onClick: function onClick() {
10596
- onExpand === null || onExpand === void 0 ? void 0 : onExpand(item.key, !expand);
10597
- setExpand(!expand);
10598
- },
10599
10342
  tabIndex: 0
10343
+ }, /*#__PURE__*/React.createElement("div", {
10344
+ className: "flex items-center gap-2",
10345
+ style: {
10346
+ flex: 1
10347
+ },
10348
+ onClick: function onClick(e) {
10349
+ return e.stopPropagation();
10350
+ }
10600
10351
  }, _.isEmpty(item.children) ? (/*#__PURE__*/React.createElement("div", {
10601
10352
  style: {
10602
10353
  width: 10
10603
10354
  }
10604
- })) : (/*#__PURE__*/React.createElement("div", {
10605
- className: "filter-caret ".concat(expand ? "down" : "right"),
10606
- style: {
10607
- cursor: "pointer"
10355
+ })) : (/*#__PURE__*/React.createElement(LucideIcon, {
10356
+ name: expand ? "ChevronDown" : "ChevronRight",
10357
+ className: "cursor-pointer",
10358
+ size: "sm",
10359
+ onClick: function onClick() {
10360
+ onExpand === null || onExpand === void 0 ? void 0 : onExpand(item.key, !expand);
10361
+ setExpand(!expand);
10608
10362
  }
10609
- })), /*#__PURE__*/React.createElement("input", {
10610
- className: "filter-checkbox",
10611
- type: "checkbox",
10363
+ })), /*#__PURE__*/React.createElement(Checkbox, {
10364
+ className: "border-2",
10612
10365
  checked: checked,
10613
- onChange: function onChange() {
10614
- _onChange2(item, !checked);
10615
- },
10616
- onClick: function onClick(e) {
10617
- return e.stopPropagation();
10618
- },
10619
- tabIndex: 0
10620
- }), /*#__PURE__*/React.createElement("div", null, item.text), /*#__PURE__*/React.createElement("span", {
10366
+ onCheckedChange: function onCheckedChange(e) {
10367
+ onChange(item, e.target.checked);
10368
+ }
10369
+ }), /*#__PURE__*/React.createElement("span", null, item.text)), /*#__PURE__*/React.createElement("span", {
10621
10370
  className: "count"
10622
- }, "( ".concat(item.rows.length, " )"))), expand && item.children.map(function (v) {
10371
+ }, "".concat(item.rows.length))), expand && item.children.map(function (v) {
10623
10372
  return /*#__PURE__*/React.createElement(_DateSelectTreeItem, _objectSpread2({
10624
10373
  key: v.key,
10625
10374
  item: v,
@@ -10628,7 +10377,7 @@ var _DateSelectTreeItem = function DateSelectTreeItem(_ref2) {
10628
10377
  initialExpand: initialExpand,
10629
10378
  onExpand: onExpand,
10630
10379
  isChecked: isChecked,
10631
- onChange: _onChange2,
10380
+ onChange: onChange,
10632
10381
  isItemVisible: isItemVisible
10633
10382
  }));
10634
10383
  }))) : null;
@@ -10677,8 +10426,7 @@ var FilterMenu = function FilterMenu() {
10677
10426
  startCol = _ref4.startCol,
10678
10427
  endRow = _ref4.endRow,
10679
10428
  endCol = _ref4.endCol,
10680
- col = _ref4.col,
10681
- listBoxMaxHeight = _ref4.listBoxMaxHeight;
10429
+ col = _ref4.col;
10682
10430
  var _locale = locale(context),
10683
10431
  filter = _locale.filter;
10684
10432
  var _useState3 = useState({
@@ -10753,25 +10501,6 @@ var FilterMenu = function FilterMenu() {
10753
10501
  }));
10754
10502
  }, 300);
10755
10503
  }, [data.flattenValues]);
10756
- var selectAll = useCallback(function () {
10757
- setDatesUncheck([]);
10758
- setValuesUncheck([]);
10759
- hiddenRows.current = [];
10760
- }, []);
10761
- var clearAll = useCallback(function () {
10762
- setDatesUncheck(_.keys(data.dateRowMap));
10763
- setValuesUncheck(_.keys(data.valueRowMap));
10764
- hiddenRows.current = data.visibleRows;
10765
- }, [data.dateRowMap, data.valueRowMap, data.visibleRows]);
10766
- var inverseSelect = useCallback(function () {
10767
- setDatesUncheck(produce(function (draft) {
10768
- return _.xor(draft, _.keys(data.dateRowMap));
10769
- }));
10770
- setValuesUncheck(produce(function (draft) {
10771
- return _.xor(draft, _.keys(data.valueRowMap));
10772
- }));
10773
- hiddenRows.current = _.xor(hiddenRows.current, data.visibleRows);
10774
- }, [data.dateRowMap, data.valueRowMap, data.visibleRows]);
10775
10504
  var onColorSelectChange = useCallback(function (key, color, checked) {
10776
10505
  setFilterColors(produce(function (draft) {
10777
10506
  var colorData = _.find(_.get(draft, key), function (v) {
@@ -10901,11 +10630,12 @@ var FilterMenu = function FilterMenu() {
10901
10630
  ref: containerRef,
10902
10631
  style: {
10903
10632
  left: filterContextMenu.x,
10904
- top: filterContextMenu.y
10633
+ top: filterContextMenu.y,
10634
+ minWidth: "280px !important"
10905
10635
  }
10906
10636
  }, (_settings$filterConte = settings.filterContextMenu) === null || _settings$filterConte === void 0 ? void 0 : _settings$filterConte.map(function (name, i) {
10907
10637
  if (name === "|") {
10908
- return /*#__PURE__*/React.createElement(Divider$1, {
10638
+ return /*#__PURE__*/React.createElement(Divider$2, {
10909
10639
  key: "divider-".concat(i)
10910
10640
  });
10911
10641
  }
@@ -10915,7 +10645,16 @@ var FilterMenu = function FilterMenu() {
10915
10645
  onClick: function onClick() {
10916
10646
  return sortData(true);
10917
10647
  }
10918
- }, filter.sortByAsc);
10648
+ }, /*#__PURE__*/React.createElement("div", {
10649
+ className: "context-item w-full"
10650
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
10651
+ name: "sort-asc",
10652
+ width: 24,
10653
+ height: 18,
10654
+ style: {
10655
+ marginRight: "4px"
10656
+ }
10657
+ }), /*#__PURE__*/React.createElement("p", null, filter.sortByAsc)));
10919
10658
  }
10920
10659
  if (name === "sort-by-desc") {
10921
10660
  return /*#__PURE__*/React.createElement(Menu, {
@@ -10923,7 +10662,16 @@ var FilterMenu = function FilterMenu() {
10923
10662
  onClick: function onClick() {
10924
10663
  return sortData(false);
10925
10664
  }
10926
- }, filter.sortByDesc);
10665
+ }, /*#__PURE__*/React.createElement("div", {
10666
+ className: "context-item w-full"
10667
+ }, /*#__PURE__*/React.createElement(SVGIcon, {
10668
+ name: "sort-desc",
10669
+ width: 24,
10670
+ height: 18,
10671
+ style: {
10672
+ marginRight: "4px"
10673
+ }
10674
+ }), /*#__PURE__*/React.createElement("p", null, filter.sortByDesc)));
10927
10675
  }
10928
10676
  if (name === "filter-by-color") {
10929
10677
  return /*#__PURE__*/React.createElement("div", {
@@ -10951,72 +10699,22 @@ var FilterMenu = function FilterMenu() {
10951
10699
  className: "filter-caret right"
10952
10700
  }))));
10953
10701
  }
10954
- if (name === "filter-by-condition") {
10955
- return /*#__PURE__*/React.createElement("div", {
10956
- key: "name"
10957
- }, /*#__PURE__*/React.createElement(Menu, {
10958
- onClick: function onClick() {}
10959
- }, /*#__PURE__*/React.createElement("div", {
10960
- className: "filter-caret right"
10961
- }), filter.filterByCondition), /*#__PURE__*/React.createElement("div", {
10962
- className: "luckysheet-\\${menuid}-bycondition",
10963
- style: {
10964
- display: "none"
10965
- }
10966
- }, /*#__PURE__*/React.createElement("div", {
10967
- className: "luckysheet-flat-menu-button luckysheet-mousedown-cancel",
10968
- id: "luckysheet-\\${menuid}-selected"
10969
- }, /*#__PURE__*/React.createElement("span", {
10970
- className: "luckysheet-mousedown-cancel",
10971
- "data-value": "null",
10972
- "data-type": "0"
10973
- }, filter.filiterInputNone), /*#__PURE__*/React.createElement("div", {
10974
- className: "luckysheet-mousedown-cancel"
10975
- }, /*#__PURE__*/React.createElement("i", {
10976
- className: "fa fa-sort",
10977
- "aria-hidden": "true"
10978
- })))));
10979
- }
10980
10702
  if (name === "filter-by-value") {
10981
10703
  return /*#__PURE__*/React.createElement("div", {
10982
10704
  key: name
10983
- }, /*#__PURE__*/React.createElement(Menu, {
10984
- onClick: function onClick() {}
10985
10705
  }, /*#__PURE__*/React.createElement("div", {
10986
- className: "filter-caret right"
10987
- }), filter.filterByValues), /*#__PURE__*/React.createElement("div", {
10988
- className: "luckysheet-filter-byvalue"
10706
+ className: "luckysheet-filter-byvalue flex flex-col gap-2 mt-2"
10989
10707
  }, /*#__PURE__*/React.createElement("div", {
10990
- className: "fortune-menuitem-row byvalue-btn-row"
10991
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", {
10992
- className: "fortune-byvalue-btn",
10993
- onClick: selectAll,
10994
- tabIndex: 0
10995
- }, filter.filterValueByAllBtn), " - ", /*#__PURE__*/React.createElement("span", {
10996
- className: "fortune-byvalue-btn",
10997
- onClick: clearAll,
10998
- tabIndex: 0
10999
- }, filter.filterValueByClearBtn), " - ", /*#__PURE__*/React.createElement("span", {
11000
- className: "fortune-byvalue-btn",
11001
- onClick: inverseSelect,
11002
- tabIndex: 0
11003
- }, filter.filterValueByInverseBtn)), /*#__PURE__*/React.createElement("div", {
11004
- className: "byvalue-filter-icon"
11005
- }, /*#__PURE__*/React.createElement(SVGIcon, {
11006
- name: "filter-fill",
11007
- style: {
11008
- width: 20,
11009
- height: 20
11010
- }
11011
- }))), /*#__PURE__*/React.createElement("div", {
11012
10708
  className: "filtermenu-input-container"
11013
- }, /*#__PURE__*/React.createElement("input", {
11014
- type: "text",
10709
+ }, /*#__PURE__*/React.createElement(TextField, {
10710
+ leftIcon: /*#__PURE__*/React.createElement(LucideIcon, {
10711
+ name: "Search",
10712
+ size: "sm"
10713
+ }),
11015
10714
  onKeyDown: function onKeyDown(e) {
11016
10715
  return e.stopPropagation();
11017
10716
  },
11018
10717
  placeholder: filter.filterValueByTip,
11019
- className: "luckysheet-mousedown-cancel",
11020
10718
  id: "luckysheet-\\${menuid}-byvalue-input",
11021
10719
  value: searchText,
11022
10720
  onChange: function onChange(e) {
@@ -11024,10 +10722,7 @@ var FilterMenu = function FilterMenu() {
11024
10722
  searchValues(e.target.value);
11025
10723
  }
11026
10724
  })), /*#__PURE__*/React.createElement("div", {
11027
- id: "luckysheet-filter-byvalue-select",
11028
- style: {
11029
- maxHeight: listBoxMaxHeight
11030
- }
10725
+ id: "luckysheet-filter-byvalue-select"
11031
10726
  }, /*#__PURE__*/React.createElement(DateSelectTree, {
11032
10727
  dates: data.dates,
11033
10728
  onExpand: onExpand,
@@ -11049,6 +10744,37 @@ var FilterMenu = function FilterMenu() {
11049
10744
  return v.match(item.key) != null;
11050
10745
  }) > -1;
11051
10746
  }
10747
+ }), /*#__PURE__*/React.createElement(SelectItem, {
10748
+ item: {
10749
+ key: "all",
10750
+ text: filter.filterValueByAllBtn,
10751
+ value: "",
10752
+ mask: "",
10753
+ rows: data.values.filter(function (v) {
10754
+ return showValues.includes(v.text);
10755
+ }).flatMap(function (v) {
10756
+ return v.rows;
10757
+ })
10758
+ },
10759
+ isChecked: function isChecked() {
10760
+ var allDatesChecked = datesUncheck.length === 0;
10761
+ var allValuesChecked = valuesUncheck.length === 0;
10762
+ return allDatesChecked && allValuesChecked;
10763
+ },
10764
+ onChange: function onChange(item, checked) {
10765
+ if (checked) {
10766
+ setDatesUncheck([]);
10767
+ setValuesUncheck([]);
10768
+ hiddenRows.current = [];
10769
+ } else {
10770
+ setDatesUncheck(_.keys(data.dateRowMap));
10771
+ setValuesUncheck(_.keys(data.valueRowMap));
10772
+ hiddenRows.current = data.visibleRows;
10773
+ }
10774
+ },
10775
+ isItemVisible: function isItemVisible() {
10776
+ return true;
10777
+ }
11052
10778
  }), data.values.map(function (v) {
11053
10779
  return /*#__PURE__*/React.createElement(SelectItem, {
11054
10780
  key: v.key,
@@ -11058,14 +10784,17 @@ var FilterMenu = function FilterMenu() {
11058
10784
  },
11059
10785
  onChange: function onChange(item, checked) {
11060
10786
  var rows = hiddenRows.current;
11061
- hiddenRows.current = checked ? _.without.apply(_, [rows].concat(_toConsumableArray(item.rows))) : _.concat(rows, item.rows);
11062
- setValuesUncheck(produce(function (draft) {
11063
- if (checked) {
10787
+ if (checked) {
10788
+ hiddenRows.current = _.without.apply(_, [rows].concat(_toConsumableArray(item.rows)));
10789
+ setValuesUncheck(produce(function (draft) {
11064
10790
  _.pull(draft, item.key);
11065
- } else {
10791
+ }));
10792
+ } else {
10793
+ hiddenRows.current = _.concat(rows, item.rows);
10794
+ setValuesUncheck(produce(function (draft) {
11066
10795
  draft.push(item.key);
11067
- }
11068
- }));
10796
+ }));
10797
+ }
11069
10798
  },
11070
10799
  isItemVisible: function isItemVisible(item) {
11071
10800
  return showValues.length === data.flattenValues.length ? true : _.includes(showValues, item.text);
@@ -11074,40 +10803,49 @@ var FilterMenu = function FilterMenu() {
11074
10803
  }))));
11075
10804
  }
11076
10805
  return null;
11077
- }), /*#__PURE__*/React.createElement(Divider$1, null), /*#__PURE__*/React.createElement("div", {
11078
- className: "fortune-menuitem-row"
11079
- }, /*#__PURE__*/React.createElement("div", {
11080
- className: "button-basic button-primary",
10806
+ }), /*#__PURE__*/React.createElement("div", {
10807
+ className: "fortune-menuitem-row mt-2"
10808
+ }, /*#__PURE__*/React.createElement(Button$1, {
10809
+ variant: "ghost",
10810
+ style: {
10811
+ minWidth: "80px"
10812
+ },
11081
10813
  onClick: function onClick() {
11082
- if (col == null) return;
11083
10814
  setContext(function (draftCtx) {
11084
- var rowHidden = _.reduce(hiddenRows.current, function (pre, curr) {
11085
- pre[curr] = 0;
11086
- return pre;
11087
- }, {});
11088
- saveFilter(draftCtx, hiddenRows.current.length > 0, rowHidden, {}, startRow, endRow, col, startCol, endCol);
11089
- hiddenRows.current = [];
11090
- draftCtx.filterContextMenu = undefined;
10815
+ clearFilter(draftCtx);
11091
10816
  });
11092
10817
  },
11093
10818
  tabIndex: 0
11094
- }, filter.filterConform), /*#__PURE__*/React.createElement("div", {
11095
- className: "button-basic button-default",
10819
+ }, filter.clearFilter), /*#__PURE__*/React.createElement(Button$1, {
10820
+ variant: "secondary",
10821
+ style: {
10822
+ minWidth: "80px"
10823
+ },
11096
10824
  onClick: function onClick() {
11097
10825
  setContext(function (draftCtx) {
11098
10826
  draftCtx.filterContextMenu = undefined;
11099
10827
  });
11100
10828
  },
11101
10829
  tabIndex: 0
11102
- }, filter.filterCancel), /*#__PURE__*/React.createElement("div", {
11103
- className: "button-basic button-danger",
10830
+ }, filter.filterCancel), /*#__PURE__*/React.createElement(Button$1, {
10831
+ variant: "default",
10832
+ style: {
10833
+ minWidth: "80px"
10834
+ },
11104
10835
  onClick: function onClick() {
10836
+ if (col == null) return;
11105
10837
  setContext(function (draftCtx) {
11106
- clearFilter(draftCtx);
10838
+ var rowHidden = _.reduce(hiddenRows.current, function (pre, curr) {
10839
+ pre[curr] = 0;
10840
+ return pre;
10841
+ }, {});
10842
+ saveFilter(draftCtx, hiddenRows.current.length > 0, rowHidden, {}, startRow, endRow, col, startCol, endCol);
10843
+ hiddenRows.current = [];
10844
+ draftCtx.filterContextMenu = undefined;
11107
10845
  });
11108
10846
  },
11109
10847
  tabIndex: 0
11110
- }, filter.clearFilter))), showSubMenu && (/*#__PURE__*/React.createElement("div", {
10848
+ }, filter.filterConfirm))), showSubMenu && (/*#__PURE__*/React.createElement("div", {
11111
10849
  ref: subMenuRef,
11112
10850
  className: "luckysheet-filter-bycolor-submenu",
11113
10851
  style: subMenuPos,
@@ -11147,7 +10885,7 @@ var FilterMenu = function FilterMenu() {
11147
10885
  });
11148
10886
  },
11149
10887
  tabIndex: 0
11150
- }, filter.filterConform))))));
10888
+ }, filter.filterConfirm))))));
11151
10889
  };
11152
10890
 
11153
10891
  var SheetHiddenButton = function SheetHiddenButton(_ref) {