@univerjs/sheets-filter-ui 0.3.0 → 0.4.0-alpha.0

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/lib/es/index.js CHANGED
@@ -2,74 +2,19 @@ var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
3
3
  var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
5
- import { CommandType, ICommandService, IUndoRedoService, IUniverInstanceService, Quantity, LocaleService, UniverInstanceType, sequenceExecute, BooleanNumber, createIdentifier, Inject, Disposable, ILogService, extractPureTextFromCell, Injector, IContextService, useDependency, ThemeService, RxDisposable, fromCallback, InterceptorEffectEnum, Tools, DependentOn, Optional, Plugin, IConfigService } from "@univerjs/core";
6
- import { SheetsFilterService, SetSheetsFilterRangeMutation, RemoveSheetsFilterMutation, SetSheetsFilterCriteriaMutation, ReCalcSheetsFilterMutation, CustomFilterOperator, FILTER_MUTATIONS, UniverSheetsFilterPlugin } from "@univerjs/sheets-filter";
5
+ import { CommandType, ICommandService, IUndoRedoService, IUniverInstanceService, Quantity, LocaleService, UniverInstanceType, sequenceExecute, BooleanNumber, createIdentifier, Inject, Disposable, ILogService, extractPureTextFromCell, Injector, IContextService, Tools, useDependency, ThemeService, RxDisposable, fromCallback, InterceptorEffectEnum, DependentOn, Optional, Plugin, IConfigService } from "@univerjs/core";
7
6
  import { IRPCChannelService, toModule, fromModule } from "@univerjs/rpc";
7
+ import { SheetsFilterService, SetSheetsFilterRangeMutation, RemoveSheetsFilterMutation, SetSheetsFilterCriteriaMutation, ReCalcSheetsFilterMutation, CustomFilterOperator, FILTER_MUTATIONS, UniverSheetsFilterPlugin } from "@univerjs/sheets-filter";
8
+ import { getSheetCommandTarget, SheetsSelectionsService, isSingleCellSelection, expandToContinuousRange, RefRangeService, RangeProtectionPermissionViewPoint, WorksheetFilterPermission, WorksheetViewPermission, SheetInterceptorService, SetRangeValuesMutation, INTERCEPTOR_POINT } from "@univerjs/sheets";
9
+ import { SetCellEditVisibleOperation, SheetPermissionInterceptorBaseController, SheetsUIPart, whenSheetEditorFocused, SheetSkeletonManagerService, ISheetSelectionRenderService, SelectionShape, getCoordByCell, SheetsRenderService, getObservableWithExclusiveRange$, getCurrentRangeDisable$, SheetCanvasPopManagerService } from "@univerjs/sheets-ui";
10
+ import { MessageType, Select, RadioGroup, Radio, Input, Checkbox, Tooltip, Button, Segmented } from "@univerjs/design";
8
11
  import { IMessageService, ILayoutService, useObservable, useComponentsOfPart, ComponentContainer, KeyCode, MetaKeys, MenuItemType, getMenuHiddenObservable, RibbonStartGroup, ComponentManager, IShortcutService, IMenuManagerService } from "@univerjs/ui";
9
12
  import { BehaviorSubject, ReplaySubject, of, Subject, merge, combineLatest, throttleTime, startWith, map, shareReplay, switchMap, filter, takeUntil, distinctUntilChanged } from "rxjs";
10
- import { SetCellEditVisibleOperation, SheetsUIPart, whenSheetEditorFocused, SheetSkeletonManagerService, ISheetSelectionRenderService, SelectionShape, getCoordByCell, SheetsRenderService, getObservableWithExclusiveRange$, getCurrentRangeDisable$, SheetCanvasPopManagerService, SheetPermissionInterceptorBaseController } from "@univerjs/sheets-ui";
11
13
  import { Rect, Shape, IRenderManagerService } from "@univerjs/engine-render";
12
- import { MessageType, Select, RadioGroup, Radio, Input, Checkbox, Tooltip, Button, Segmented } from "@univerjs/design";
13
- import { getSheetCommandTarget, SheetsSelectionsService, isSingleCellSelection, expandToContinuousRange, RefRangeService, SheetInterceptorService, INTERCEPTOR_POINT, WorksheetFilterPermission, WorksheetViewPermission, RangeProtectionPermissionViewPoint } from "@univerjs/sheets";
14
14
  import * as React from "react";
15
15
  import React__default, { forwardRef, useRef, createElement, useCallback, useMemo as useMemo$1, version, isValidElement, useEffect, useState } from "react";
16
16
  import ReactDOM, { flushSync } from "react-dom";
17
- var __assign = function() {
18
- return __assign = Object.assign || function(t2) {
19
- for (var s, i = 1, n2 = arguments.length; i < n2; i++) {
20
- s = arguments[i];
21
- for (var p2 in s) Object.prototype.hasOwnProperty.call(s, p2) && (t2[p2] = s[p2]);
22
- }
23
- return t2;
24
- }, __assign.apply(this, arguments);
25
- }, __rest = function(s, e2) {
26
- var t2 = {};
27
- for (var p2 in s) Object.prototype.hasOwnProperty.call(s, p2) && e2.indexOf(p2) < 0 && (t2[p2] = s[p2]);
28
- if (s != null && typeof Object.getOwnPropertySymbols == "function")
29
- for (var i = 0, p2 = Object.getOwnPropertySymbols(s); i < p2.length; i++)
30
- e2.indexOf(p2[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p2[i]) && (t2[p2[i]] = s[p2[i]]);
31
- return t2;
32
- }, IconBase = forwardRef(function(props, ref) {
33
- var icon = props.icon, id = props.id, className = props.className, extend = props.extend, restProps = __rest(props, ["icon", "id", "className", "extend"]), cls = "univerjs-icon univerjs-icon-".concat(id, " ").concat(className || "").trim(), idSuffix = useRef("_".concat(generateShortUuid()));
34
- return render(icon, "".concat(id), { defIds: icon.defIds, idSuffix: idSuffix.current }, __assign({ ref, className: cls }, restProps), extend);
35
- });
36
- function render(node, id, runtimeProps, rootProps, extend) {
37
- return createElement(node.tag, __assign(__assign({ key: id }, replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend)), rootProps), (replaceRuntimeIdsInDefs(node, runtimeProps).children || []).map(function(child, index2) {
38
- return render(child, "".concat(id, "-").concat(node.tag, "-").concat(index2), runtimeProps, void 0, extend);
39
- }));
40
- }
41
- __name(render, "render");
42
- function replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend) {
43
- var attrs = __assign({}, node.attrs);
44
- extend != null && extend.colorChannel1 && attrs.fill === "colorChannel1" && (attrs.fill = extend.colorChannel1);
45
- var defIds = runtimeProps.defIds;
46
- return !defIds || defIds.length === 0 || (node.tag === "use" && attrs["xlink:href"] && (attrs["xlink:href"] = attrs["xlink:href"] + runtimeProps.idSuffix), Object.entries(attrs).forEach(function(_a13) {
47
- var key = _a13[0], value = _a13[1];
48
- typeof value == "string" && (attrs[key] = value.replace(/url\(#(.*)\)/, "url(#$1".concat(runtimeProps.idSuffix, ")")));
49
- })), attrs;
50
- }
51
- __name(replaceRuntimeIdsAndExtInAttrs, "replaceRuntimeIdsAndExtInAttrs");
52
- function replaceRuntimeIdsInDefs(node, runtimeProps) {
53
- var _a13, defIds = runtimeProps.defIds;
54
- return !defIds || defIds.length === 0 ? node : node.tag === "defs" && (!((_a13 = node.children) === null || _a13 === void 0) && _a13.length) ? __assign(__assign({}, node), { children: node.children.map(function(child) {
55
- return typeof child.attrs.id == "string" && defIds && defIds.indexOf(child.attrs.id) > -1 ? __assign(__assign({}, child), { attrs: __assign(__assign({}, child.attrs), { id: child.attrs.id + runtimeProps.idSuffix }) }) : child;
56
- }) }) : node;
57
- }
58
- __name(replaceRuntimeIdsInDefs, "replaceRuntimeIdsInDefs");
59
- function generateShortUuid() {
60
- return Math.random().toString(36).substring(2, 8);
61
- }
62
- __name(generateShortUuid, "generateShortUuid");
63
- IconBase.displayName = "UniverIcon";
64
- var element = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 17 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M3.32182 2.60967C2.98161 2.60967 2.79671 3.0074 3.01601 3.2675L6.85819 7.8246C6.94943 7.93282 6.99947 8.06981 6.99947 8.21136V12.7338C6.99947 12.898 7.0998 13.0455 7.2525 13.1058L8.73833 13.6928C9.00085 13.7965 9.28531 13.6031 9.28531 13.3208V8.21136C9.28531 8.06981 9.33535 7.93282 9.42659 7.8246L13.2688 3.2675C13.4881 3.0074 13.3032 2.60967 12.963 2.60967H3.32182ZM2.09858 4.04101C1.22139 3.0006 1.96097 1.40967 3.32182 1.40967H12.963C14.3238 1.40967 15.0634 3.0006 14.1862 4.04101L10.4853 8.43054V13.3208C10.4853 14.4498 9.34747 15.2237 8.29742 14.8089L6.81158 14.2219C6.20078 13.9806 5.79947 13.3905 5.79947 12.7338V8.43054L2.09858 4.04101Z", fillRule: "evenodd", clipRule: "evenodd" } }] }, FilterSingle = forwardRef(function(props, ref) {
65
- return createElement(IconBase, Object.assign({}, props, {
66
- id: "filter-single",
67
- ref,
68
- icon: element
69
- }));
70
- });
71
- FilterSingle.displayName = "FilterSingle";
72
- const SetSheetFilterRangeCommand = {
17
+ const PLUGIN_CONFIG_KEY = "sheets-filter-ui.config", defaultPluginConfig = {}, SetSheetFilterRangeCommand = {
73
18
  id: "sheet.command.set-filter-range",
74
19
  type: CommandType.COMMAND,
75
20
  handler: /* @__PURE__ */ __name((accessor, params) => {
@@ -1190,7 +1135,121 @@ const FILTER_PANEL_OPENED_KEY = "FILTER_PANEL_OPENED", OpenFilterPanelOperation
1190
1135
  const { filterBy } = params;
1191
1136
  return accessor.get(SheetsFilterPanelService).changeFilterBy(filterBy);
1192
1137
  }, "handler")
1193
- }, sheetsFilterPanel = "univer-sheets-filter-panel", sheetsFilterPanelHeader = "univer-sheets-filter-panel-header", sheetsFilterPanelContent = "univer-sheets-filter-panel-content", sheetsFilterPanelSelectAll = "univer-sheets-filter-panel-select-all", sheetsFilterPanelSelectAllCount = "univer-sheets-filter-panel-select-all-count", sheetsFilterPanelValuesContainer = "univer-sheets-filter-panel-values-container", inputAffixWrapper = "univer-input-affix-wrapper", select = "univer-select", radioGroup = "univer-radio-group", sheetsFilterPanelValuesFind = "univer-sheets-filter-panel-values-find", sheetsFilterPanelValuesList = "univer-sheets-filter-panel-values-list", sheetsFilterPanelValuesListInnerContainer = "univer-sheets-filter-panel-values-list-inner-container", sheetsFilterPanelValuesVirtual = "univer-sheets-filter-panel-values-virtual", sheetsFilterPanelValuesItem = "univer-sheets-filter-panel-values-item", sheetsFilterPanelValuesItemInner = "univer-sheets-filter-panel-values-item-inner", sheetsFilterPanelValuesItemCount = "univer-sheets-filter-panel-values-item-count", sheetsFilterPanelValuesItemExcludeButton = "univer-sheets-filter-panel-values-item-exclude-button", sheetsFilterPanelValuesItemText = "univer-sheets-filter-panel-values-item-text", sheetsFilterPanelConditionsContainer = "univer-sheets-filter-panel-conditions-container", sheetsFilterPanelConditionsContainerInner = "univer-sheets-filter-panel-conditions-container-inner", sheetsFilterPanelConditionsDesc = "univer-sheets-filter-panel-conditions-desc", sheetsFilterPanelFooter = "univer-sheets-filter-panel-footer", sheetsFilterPanelFooterPrimaryButtons = "univer-sheets-filter-panel-footer-primary-buttons", button = "univer-button", input = "univer-input", formDualColumnLayout = "univer-form-dual-column-layout", styles = {
1138
+ };
1139
+ var __defProp$7 = Object.defineProperty, __getOwnPropDesc$7 = Object.getOwnPropertyDescriptor, __decorateClass$7 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
1140
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$7(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
1141
+ (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
1142
+ return kind && result && __defProp$7(target, key, result), result;
1143
+ }, "__decorateClass$7"), __decorateParam$7 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$7"), _a5;
1144
+ let SheetsFilterPermissionController = (_a5 = class extends Disposable {
1145
+ constructor(_sheetsFilterService, _localeService, _commandService, _sheetPermissionInterceptorBaseController, _injector, _sheetsSelectionService) {
1146
+ super(), this._sheetsFilterService = _sheetsFilterService, this._localeService = _localeService, this._commandService = _commandService, this._sheetPermissionInterceptorBaseController = _sheetPermissionInterceptorBaseController, this._injector = _injector, this._sheetsSelectionService = _sheetsSelectionService, this._commandExecutedListener();
1147
+ }
1148
+ _commandExecutedListener() {
1149
+ this.disposeWithMe(
1150
+ this._commandService.beforeCommandExecuted((command) => {
1151
+ var _a13, _b, _c;
1152
+ if (command.id === SmartToggleSheetsFilterCommand.id) {
1153
+ const univerInstanceService = this._injector.get(IUniverInstanceService), target = getSheetCommandTarget(univerInstanceService);
1154
+ if (!target) return;
1155
+ const { unitId, subUnitId, worksheet } = target, filterRange = (_a13 = this._sheetsFilterService.getFilterModel(unitId, subUnitId)) == null ? void 0 : _a13.getRange();
1156
+ let permission;
1157
+ if (filterRange)
1158
+ permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
1159
+ rangeTypes: [RangeProtectionPermissionViewPoint],
1160
+ worksheetTypes: [WorksheetFilterPermission, WorksheetViewPermission]
1161
+ }, [filterRange]);
1162
+ else {
1163
+ const range = (_b = this._sheetsSelectionService.getCurrentLastSelection()) == null ? void 0 : _b.range;
1164
+ if (range) {
1165
+ let newRange = { ...range };
1166
+ newRange = range.startColumn === range.endColumn && range.startRow === range.endRow ? expandToContinuousRange(newRange, { left: !0, right: !0, up: !0, down: !0 }, worksheet) : newRange, permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
1167
+ rangeTypes: [RangeProtectionPermissionViewPoint],
1168
+ worksheetTypes: [WorksheetViewPermission, WorksheetFilterPermission]
1169
+ }, [newRange], unitId, subUnitId);
1170
+ } else
1171
+ permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithoutRange({
1172
+ rangeTypes: [RangeProtectionPermissionViewPoint],
1173
+ worksheetTypes: [WorksheetViewPermission, WorksheetFilterPermission]
1174
+ });
1175
+ }
1176
+ permission || this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr"));
1177
+ }
1178
+ if (command.id === OpenFilterPanelOperation.id) {
1179
+ const params = command.params, { unitId, subUnitId } = params, filterRange = (_c = this._sheetsFilterService.getFilterModel(unitId, subUnitId)) == null ? void 0 : _c.getRange(), colRange = Tools.deepClone(filterRange);
1180
+ colRange && (colRange.startColumn = params.col, colRange.endColumn = params.col, this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
1181
+ rangeTypes: [RangeProtectionPermissionViewPoint],
1182
+ worksheetTypes: [WorksheetFilterPermission, WorksheetViewPermission]
1183
+ }, [colRange]) || this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr")));
1184
+ }
1185
+ })
1186
+ );
1187
+ }
1188
+ }, __name(_a5, "SheetsFilterPermissionController"), _a5);
1189
+ SheetsFilterPermissionController = __decorateClass$7([
1190
+ __decorateParam$7(0, Inject(SheetsFilterService)),
1191
+ __decorateParam$7(1, Inject(LocaleService)),
1192
+ __decorateParam$7(2, ICommandService),
1193
+ __decorateParam$7(3, Inject(SheetPermissionInterceptorBaseController)),
1194
+ __decorateParam$7(4, Inject(Injector)),
1195
+ __decorateParam$7(5, Inject(SheetsSelectionsService))
1196
+ ], SheetsFilterPermissionController);
1197
+ var __assign = function() {
1198
+ return __assign = Object.assign || function(t2) {
1199
+ for (var s, i = 1, n2 = arguments.length; i < n2; i++) {
1200
+ s = arguments[i];
1201
+ for (var p2 in s) Object.prototype.hasOwnProperty.call(s, p2) && (t2[p2] = s[p2]);
1202
+ }
1203
+ return t2;
1204
+ }, __assign.apply(this, arguments);
1205
+ }, __rest = function(s, e2) {
1206
+ var t2 = {};
1207
+ for (var p2 in s) Object.prototype.hasOwnProperty.call(s, p2) && e2.indexOf(p2) < 0 && (t2[p2] = s[p2]);
1208
+ if (s != null && typeof Object.getOwnPropertySymbols == "function")
1209
+ for (var i = 0, p2 = Object.getOwnPropertySymbols(s); i < p2.length; i++)
1210
+ e2.indexOf(p2[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p2[i]) && (t2[p2[i]] = s[p2[i]]);
1211
+ return t2;
1212
+ }, IconBase = forwardRef(function(props, ref) {
1213
+ var icon = props.icon, id = props.id, className = props.className, extend = props.extend, restProps = __rest(props, ["icon", "id", "className", "extend"]), cls = "univerjs-icon univerjs-icon-".concat(id, " ").concat(className || "").trim(), idSuffix = useRef("_".concat(generateShortUuid()));
1214
+ return render(icon, "".concat(id), { defIds: icon.defIds, idSuffix: idSuffix.current }, __assign({ ref, className: cls }, restProps), extend);
1215
+ });
1216
+ function render(node, id, runtimeProps, rootProps, extend) {
1217
+ return createElement(node.tag, __assign(__assign({ key: id }, replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend)), rootProps), (replaceRuntimeIdsInDefs(node, runtimeProps).children || []).map(function(child, index2) {
1218
+ return render(child, "".concat(id, "-").concat(node.tag, "-").concat(index2), runtimeProps, void 0, extend);
1219
+ }));
1220
+ }
1221
+ __name(render, "render");
1222
+ function replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend) {
1223
+ var attrs = __assign({}, node.attrs);
1224
+ extend != null && extend.colorChannel1 && attrs.fill === "colorChannel1" && (attrs.fill = extend.colorChannel1);
1225
+ var defIds = runtimeProps.defIds;
1226
+ return !defIds || defIds.length === 0 || (node.tag === "use" && attrs["xlink:href"] && (attrs["xlink:href"] = attrs["xlink:href"] + runtimeProps.idSuffix), Object.entries(attrs).forEach(function(_a13) {
1227
+ var key = _a13[0], value = _a13[1];
1228
+ typeof value == "string" && (attrs[key] = value.replace(/url\(#(.*)\)/, "url(#$1".concat(runtimeProps.idSuffix, ")")));
1229
+ })), attrs;
1230
+ }
1231
+ __name(replaceRuntimeIdsAndExtInAttrs, "replaceRuntimeIdsAndExtInAttrs");
1232
+ function replaceRuntimeIdsInDefs(node, runtimeProps) {
1233
+ var _a13, defIds = runtimeProps.defIds;
1234
+ return !defIds || defIds.length === 0 ? node : node.tag === "defs" && (!((_a13 = node.children) === null || _a13 === void 0) && _a13.length) ? __assign(__assign({}, node), { children: node.children.map(function(child) {
1235
+ return typeof child.attrs.id == "string" && defIds && defIds.indexOf(child.attrs.id) > -1 ? __assign(__assign({}, child), { attrs: __assign(__assign({}, child.attrs), { id: child.attrs.id + runtimeProps.idSuffix }) }) : child;
1236
+ }) }) : node;
1237
+ }
1238
+ __name(replaceRuntimeIdsInDefs, "replaceRuntimeIdsInDefs");
1239
+ function generateShortUuid() {
1240
+ return Math.random().toString(36).substring(2, 8);
1241
+ }
1242
+ __name(generateShortUuid, "generateShortUuid");
1243
+ IconBase.displayName = "UniverIcon";
1244
+ var element = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 17 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M3.32182 2.60967C2.98161 2.60967 2.79671 3.0074 3.01601 3.2675L6.85819 7.8246C6.94943 7.93282 6.99947 8.06981 6.99947 8.21136V12.7338C6.99947 12.898 7.0998 13.0455 7.2525 13.1058L8.73833 13.6928C9.00085 13.7965 9.28531 13.6031 9.28531 13.3208V8.21136C9.28531 8.06981 9.33535 7.93282 9.42659 7.8246L13.2688 3.2675C13.4881 3.0074 13.3032 2.60967 12.963 2.60967H3.32182ZM2.09858 4.04101C1.22139 3.0006 1.96097 1.40967 3.32182 1.40967H12.963C14.3238 1.40967 15.0634 3.0006 14.1862 4.04101L10.4853 8.43054V13.3208C10.4853 14.4498 9.34747 15.2237 8.29742 14.8089L6.81158 14.2219C6.20078 13.9806 5.79947 13.3905 5.79947 12.7338V8.43054L2.09858 4.04101Z", fillRule: "evenodd", clipRule: "evenodd" } }] }, FilterSingle = forwardRef(function(props, ref) {
1245
+ return createElement(IconBase, Object.assign({}, props, {
1246
+ id: "filter-single",
1247
+ ref,
1248
+ icon: element
1249
+ }));
1250
+ });
1251
+ FilterSingle.displayName = "FilterSingle";
1252
+ const sheetsFilterPanel = "univer-sheets-filter-panel", sheetsFilterPanelHeader = "univer-sheets-filter-panel-header", sheetsFilterPanelContent = "univer-sheets-filter-panel-content", sheetsFilterPanelSelectAll = "univer-sheets-filter-panel-select-all", sheetsFilterPanelSelectAllCount = "univer-sheets-filter-panel-select-all-count", sheetsFilterPanelValuesContainer = "univer-sheets-filter-panel-values-container", inputAffixWrapper = "univer-input-affix-wrapper", select = "univer-select", radioGroup = "univer-radio-group", sheetsFilterPanelValuesFind = "univer-sheets-filter-panel-values-find", sheetsFilterPanelValuesList = "univer-sheets-filter-panel-values-list", sheetsFilterPanelValuesListInnerContainer = "univer-sheets-filter-panel-values-list-inner-container", sheetsFilterPanelValuesVirtual = "univer-sheets-filter-panel-values-virtual", sheetsFilterPanelValuesItem = "univer-sheets-filter-panel-values-item", sheetsFilterPanelValuesItemInner = "univer-sheets-filter-panel-values-item-inner", sheetsFilterPanelValuesItemCount = "univer-sheets-filter-panel-values-item-count", sheetsFilterPanelValuesItemExcludeButton = "univer-sheets-filter-panel-values-item-exclude-button", sheetsFilterPanelValuesItemText = "univer-sheets-filter-panel-values-item-text", sheetsFilterPanelConditionsContainer = "univer-sheets-filter-panel-conditions-container", sheetsFilterPanelConditionsContainerInner = "univer-sheets-filter-panel-conditions-container-inner", sheetsFilterPanelConditionsDesc = "univer-sheets-filter-panel-conditions-desc", sheetsFilterPanelFooter = "univer-sheets-filter-panel-footer", sheetsFilterPanelFooterPrimaryButtons = "univer-sheets-filter-panel-footer-primary-buttons", button = "univer-button", input = "univer-input", formDualColumnLayout = "univer-form-dual-column-layout", styles = {
1194
1253
  sheetsFilterPanel,
1195
1254
  sheetsFilterPanelHeader,
1196
1255
  sheetsFilterPanelContent,
@@ -1228,7 +1287,7 @@ function FilterByCondition(props) {
1228
1287
  }, [model]), placeholder = localeService.t("sheets-filter.panel.input-values-placeholder");
1229
1288
  function renderSecondaryCondition(operator3, val, name) {
1230
1289
  const shouldRenderInput = FilterConditionItems.getItemByOperator(operator3).numOfParameters === 1;
1231
- return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, name === "operator2" && /* @__PURE__ */ React__default.createElement(RadioGroup, { value: radioValue, onChange: onRadioChange }, /* @__PURE__ */ React__default.createElement(Radio, { value: "AND" }, localeService.t("sheets-filter.panel.and")), /* @__PURE__ */ React__default.createElement(Radio, { value: "OR" }, localeService.t("sheets-filter.panel.or"))), /* @__PURE__ */ React__default.createElement(Select, { value: operator3, options: secondaryOptions, onChange: /* @__PURE__ */ __name((operator4) => onFormParamsChange({ [name]: operator4 }), "onChange") }), shouldRenderInput && /* @__PURE__ */ React__default.createElement(Input, { value: val, placeholder, onChange: /* @__PURE__ */ __name((value) => onFormParamsChange({ [name === "operator1" ? "val1" : "val2"]: value }), "onChange") }));
1290
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, name === "operator2" && /* @__PURE__ */ React__default.createElement(RadioGroup, { value: radioValue, onChange: onRadioChange }, /* @__PURE__ */ React__default.createElement(Radio, { value: "AND" }, localeService.t("sheets-filter.panel.and")), /* @__PURE__ */ React__default.createElement(Radio, { value: "OR" }, localeService.t("sheets-filter.panel.or"))), /* @__PURE__ */ React__default.createElement(Select, { value: operator3, options: secondaryOptions, onChange: /* @__PURE__ */ __name((operator4) => onFormParamsChange({ [name]: operator4 }), "onChange") }), shouldRenderInput && /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(Input, { value: val, placeholder, onChange: /* @__PURE__ */ __name((value) => onFormParamsChange({ [name === "operator1" ? "val1" : "val2"]: value }), "onChange") })));
1232
1291
  }
1233
1292
  return __name(renderSecondaryCondition, "renderSecondaryCondition"), /* @__PURE__ */ React__default.createElement("div", { className: styles.sheetsFilterPanelConditionsContainer }, /* @__PURE__ */ React__default.createElement(Select, { value: operator, options: primaryOptions, onChange: onPrimaryConditionChange }), FilterConditionItems.getItemByOperator(operator).numOfParameters !== 0 ? /* @__PURE__ */ React__default.createElement("div", { className: styles.sheetsFilterPanelConditionsContainerInner }, numOfParameters >= 1 && renderSecondaryCondition(operator1, val1 != null ? val1 : "", "operator1"), numOfParameters >= 2 && renderSecondaryCondition(operator2, val2 != null ? val2 : "", "operator2"), /* @__PURE__ */ React__default.createElement("div", { className: styles.sheetsFilterPanelConditionsDesc }, localeService.t("sheets-filter.panel.?"), /* @__PURE__ */ React__default.createElement("br", null), localeService.t("sheets-filter.panel.*"))) : null);
1234
1293
  }
@@ -2927,14 +2986,14 @@ const SmartToggleFilterShortcut = {
2927
2986
  };
2928
2987
  __name(_FilterButton, "FilterButton");
2929
2988
  let FilterButton = _FilterButton;
2930
- var __defProp$7 = Object.defineProperty, __getOwnPropDesc$7 = Object.getOwnPropertyDescriptor, __decorateClass$7 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2931
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$7(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2989
+ var __defProp$6 = Object.defineProperty, __getOwnPropDesc$6 = Object.getOwnPropertyDescriptor, __decorateClass$6 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2990
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$6(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2932
2991
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2933
- return kind && result && __defProp$7(target, key, result), result;
2934
- }, "__decorateClass$7"), __decorateParam$7 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$7");
2992
+ return kind && result && __defProp$6(target, key, result), result;
2993
+ }, "__decorateClass$6"), __decorateParam$6 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$6");
2935
2994
  const FILTER_ICON_SIZE = 16, FILTER_ICON_PADDING = 1;
2936
- var _a5;
2937
- let SheetsFilterButtonShape = (_a5 = class extends Shape {
2995
+ var _a6;
2996
+ let SheetsFilterButtonShape = (_a6 = class extends Shape {
2938
2997
  constructor(key, props, _contextService, _commandService, _themeService) {
2939
2998
  super(key, props);
2940
2999
  __publicField(this, "_cellWidth", 0);
@@ -2975,20 +3034,20 @@ let SheetsFilterButtonShape = (_a5 = class extends Shape {
2975
3034
  onPointerLeave() {
2976
3035
  this._hovered = !1, this.makeDirty(!0);
2977
3036
  }
2978
- }, __name(_a5, "SheetsFilterButtonShape"), _a5);
2979
- SheetsFilterButtonShape = __decorateClass$7([
2980
- __decorateParam$7(2, IContextService),
2981
- __decorateParam$7(3, ICommandService),
2982
- __decorateParam$7(4, Inject(ThemeService))
3037
+ }, __name(_a6, "SheetsFilterButtonShape"), _a6);
3038
+ SheetsFilterButtonShape = __decorateClass$6([
3039
+ __decorateParam$6(2, IContextService),
3040
+ __decorateParam$6(3, ICommandService),
3041
+ __decorateParam$6(4, Inject(ThemeService))
2983
3042
  ], SheetsFilterButtonShape);
2984
- var __defProp$6 = Object.defineProperty, __getOwnPropDesc$6 = Object.getOwnPropertyDescriptor, __decorateClass$6 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2985
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$6(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3043
+ var __defProp$5 = Object.defineProperty, __getOwnPropDesc$5 = Object.getOwnPropertyDescriptor, __decorateClass$5 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3044
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$5(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2986
3045
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2987
- return kind && result && __defProp$6(target, key, result), result;
2988
- }, "__decorateClass$6"), __decorateParam$6 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$6");
3046
+ return kind && result && __defProp$5(target, key, result), result;
3047
+ }, "__decorateClass$5"), __decorateParam$5 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$5");
2989
3048
  const DEFAULT_Z_INDEX = 1e3, SHEETS_FILTER_BUTTON_Z_INDEX = 5e3;
2990
- var _a6;
2991
- let SheetsFilterRenderController = (_a6 = class extends RxDisposable {
3049
+ var _a7;
3050
+ let SheetsFilterRenderController = (_a7 = class extends RxDisposable {
2992
3051
  constructor(_context, _injector, _sheetSkeletonManagerService, _sheetsFilterService, _themeService, _sheetInterceptorService, _commandService, _selectionRenderService) {
2993
3052
  super();
2994
3053
  __publicField(this, "_filterRangeShape", null);
@@ -3013,7 +3072,10 @@ let SheetsFilterRenderController = (_a6 = class extends RxDisposable {
3013
3072
  }), "getParams");
3014
3073
  return fromCallback(this._commandService.onCommandExecuted.bind(this._commandService)).pipe(
3015
3074
  filter(
3016
- ([command]) => command.type === CommandType.MUTATION && command.params.unitId === workbook.getUnitId() && FILTER_MUTATIONS.has(command.id)
3075
+ ([command]) => {
3076
+ var _a14;
3077
+ return command.type === CommandType.MUTATION && ((_a14 = command.params) == null ? void 0 : _a14.unitId) === workbook.getUnitId() && (FILTER_MUTATIONS.has(command.id) || command.id === SetRangeValuesMutation.id);
3078
+ }
3017
3079
  ),
3018
3080
  throttleTime(20, void 0, { leading: !1, trailing: !0 }),
3019
3081
  map(getParams),
@@ -3081,22 +3143,22 @@ let SheetsFilterRenderController = (_a6 = class extends RxDisposable {
3081
3143
  var _a13, _b;
3082
3144
  (_a13 = this._filterRangeShape) == null || _a13.dispose(), this._filterButtonShapes.forEach((s) => s.dispose()), (_b = this._buttonRenderDisposable) == null || _b.dispose(), this._filterRangeShape = null, this._buttonRenderDisposable = null, this._filterButtonShapes = [];
3083
3145
  }
3084
- }, __name(_a6, "SheetsFilterRenderController"), _a6);
3085
- SheetsFilterRenderController = __decorateClass$6([
3086
- __decorateParam$6(1, Inject(Injector)),
3087
- __decorateParam$6(2, Inject(SheetSkeletonManagerService)),
3088
- __decorateParam$6(3, Inject(SheetsFilterService)),
3089
- __decorateParam$6(4, Inject(ThemeService)),
3090
- __decorateParam$6(5, Inject(SheetInterceptorService)),
3091
- __decorateParam$6(6, ICommandService),
3092
- __decorateParam$6(7, ISheetSelectionRenderService)
3146
+ }, __name(_a7, "SheetsFilterRenderController"), _a7);
3147
+ SheetsFilterRenderController = __decorateClass$5([
3148
+ __decorateParam$5(1, Inject(Injector)),
3149
+ __decorateParam$5(2, Inject(SheetSkeletonManagerService)),
3150
+ __decorateParam$5(3, Inject(SheetsFilterService)),
3151
+ __decorateParam$5(4, Inject(ThemeService)),
3152
+ __decorateParam$5(5, Inject(SheetInterceptorService)),
3153
+ __decorateParam$5(6, ICommandService),
3154
+ __decorateParam$5(7, ISheetSelectionRenderService)
3093
3155
  ], SheetsFilterRenderController);
3094
- var __defProp$5 = Object.defineProperty, __getOwnPropDesc$5 = Object.getOwnPropertyDescriptor, __decorateClass$5 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3095
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$5(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3156
+ var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor, __decorateClass$4 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3157
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3096
3158
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
3097
- return kind && result && __defProp$5(target, key, result), result;
3098
- }, "__decorateClass$5"), __decorateParam$5 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$5"), _a7;
3099
- let SheetsFilterUIMobileController = (_a7 = class extends RxDisposable {
3159
+ return kind && result && __defProp$4(target, key, result), result;
3160
+ }, "__decorateClass$4"), __decorateParam$4 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$4"), _a8;
3161
+ let SheetsFilterUIMobileController = (_a8 = class extends RxDisposable {
3100
3162
  constructor(_renderManagerService, _sheetsRenderService) {
3101
3163
  super(), this._renderManagerService = _renderManagerService, this._sheetsRenderService = _sheetsRenderService, [
3102
3164
  SetSheetsFilterRangeMutation,
@@ -3108,10 +3170,10 @@ let SheetsFilterUIMobileController = (_a7 = class extends RxDisposable {
3108
3170
  [SheetsFilterRenderController]
3109
3171
  ));
3110
3172
  }
3111
- }, __name(_a7, "SheetsFilterUIMobileController"), _a7);
3112
- SheetsFilterUIMobileController = __decorateClass$5([
3113
- __decorateParam$5(0, IRenderManagerService),
3114
- __decorateParam$5(1, Inject(SheetsRenderService))
3173
+ }, __name(_a8, "SheetsFilterUIMobileController"), _a8);
3174
+ SheetsFilterUIMobileController = __decorateClass$4([
3175
+ __decorateParam$4(0, IRenderManagerService),
3176
+ __decorateParam$4(1, Inject(SheetsRenderService))
3115
3177
  ], SheetsFilterUIMobileController);
3116
3178
  function SmartToggleFilterMenuItemFactory(accessor) {
3117
3179
  const sheetsFilterService = accessor.get(SheetsFilterService);
@@ -3170,14 +3232,14 @@ const menuSchema = {
3170
3232
  }
3171
3233
  }
3172
3234
  };
3173
- var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor, __decorateClass$4 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3174
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3235
+ var __defProp$3 = Object.defineProperty, __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor, __decorateClass$3 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3236
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3175
3237
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
3176
- return kind && result && __defProp$4(target, key, result), result;
3177
- }, "__decorateClass$4"), __decorateParam$4 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$4");
3238
+ return kind && result && __defProp$3(target, key, result), result;
3239
+ }, "__decorateClass$3"), __decorateParam$3 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$3");
3178
3240
  const FILTER_PANEL_POPUP_KEY = "FILTER_PANEL_POPUP";
3179
- var _a8;
3180
- let SheetsFilterUIDesktopController = (_a8 = class extends SheetsFilterUIMobileController {
3241
+ var _a9;
3242
+ let SheetsFilterUIDesktopController = (_a9 = class extends SheetsFilterUIMobileController {
3181
3243
  constructor(_injector, _componentManager, _sheetsFilterPanelService, _sheetCanvasPopupService, _sheetsFilterService, _localeService, _shortcutService, _commandService, _menuManagerService, _contextService, _messageService, sheetsRenderService, renderManagerService) {
3182
3244
  super(renderManagerService, sheetsRenderService);
3183
3245
  __publicField(this, "_popupDisposable");
@@ -3237,81 +3299,22 @@ let SheetsFilterUIDesktopController = (_a8 = class extends SheetsFilterUIMobileC
3237
3299
  var _a13;
3238
3300
  (_a13 = this._popupDisposable) == null || _a13.dispose(), this._popupDisposable = null;
3239
3301
  }
3240
- }, __name(_a8, "SheetsFilterUIDesktopController"), _a8);
3241
- SheetsFilterUIDesktopController = __decorateClass$4([
3242
- __decorateParam$4(0, Inject(Injector)),
3243
- __decorateParam$4(1, Inject(ComponentManager)),
3244
- __decorateParam$4(2, Inject(SheetsFilterPanelService)),
3245
- __decorateParam$4(3, Inject(SheetCanvasPopManagerService)),
3246
- __decorateParam$4(4, Inject(SheetsFilterService)),
3247
- __decorateParam$4(5, Inject(LocaleService)),
3248
- __decorateParam$4(6, IShortcutService),
3249
- __decorateParam$4(7, ICommandService),
3250
- __decorateParam$4(8, IMenuManagerService),
3251
- __decorateParam$4(9, IContextService),
3252
- __decorateParam$4(10, IMessageService),
3253
- __decorateParam$4(11, Inject(SheetsRenderService)),
3254
- __decorateParam$4(12, IRenderManagerService)
3302
+ }, __name(_a9, "SheetsFilterUIDesktopController"), _a9);
3303
+ SheetsFilterUIDesktopController = __decorateClass$3([
3304
+ __decorateParam$3(0, Inject(Injector)),
3305
+ __decorateParam$3(1, Inject(ComponentManager)),
3306
+ __decorateParam$3(2, Inject(SheetsFilterPanelService)),
3307
+ __decorateParam$3(3, Inject(SheetCanvasPopManagerService)),
3308
+ __decorateParam$3(4, Inject(SheetsFilterService)),
3309
+ __decorateParam$3(5, Inject(LocaleService)),
3310
+ __decorateParam$3(6, IShortcutService),
3311
+ __decorateParam$3(7, ICommandService),
3312
+ __decorateParam$3(8, IMenuManagerService),
3313
+ __decorateParam$3(9, IContextService),
3314
+ __decorateParam$3(10, IMessageService),
3315
+ __decorateParam$3(11, Inject(SheetsRenderService)),
3316
+ __decorateParam$3(12, IRenderManagerService)
3255
3317
  ], SheetsFilterUIDesktopController);
3256
- var __defProp$3 = Object.defineProperty, __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor, __decorateClass$3 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3257
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3258
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
3259
- return kind && result && __defProp$3(target, key, result), result;
3260
- }, "__decorateClass$3"), __decorateParam$3 = /* @__PURE__ */ __name((index2, decorator) => (target, key) => decorator(target, key, index2), "__decorateParam$3"), _a9;
3261
- let SheetsFilterPermissionController = (_a9 = class extends Disposable {
3262
- constructor(_sheetsFilterService, _localeService, _commandService, _sheetPermissionInterceptorBaseController, _injector, _sheetsSelectionService) {
3263
- super(), this._sheetsFilterService = _sheetsFilterService, this._localeService = _localeService, this._commandService = _commandService, this._sheetPermissionInterceptorBaseController = _sheetPermissionInterceptorBaseController, this._injector = _injector, this._sheetsSelectionService = _sheetsSelectionService, this._commandExecutedListener();
3264
- }
3265
- _commandExecutedListener() {
3266
- this.disposeWithMe(
3267
- this._commandService.beforeCommandExecuted((command) => {
3268
- var _a13, _b, _c;
3269
- if (command.id === SmartToggleSheetsFilterCommand.id) {
3270
- const univerInstanceService = this._injector.get(IUniverInstanceService), target = getSheetCommandTarget(univerInstanceService);
3271
- if (!target) return;
3272
- const { unitId, subUnitId, worksheet } = target, filterRange = (_a13 = this._sheetsFilterService.getFilterModel(unitId, subUnitId)) == null ? void 0 : _a13.getRange();
3273
- let permission;
3274
- if (filterRange)
3275
- permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
3276
- rangeTypes: [RangeProtectionPermissionViewPoint],
3277
- worksheetTypes: [WorksheetFilterPermission, WorksheetViewPermission]
3278
- }, [filterRange]);
3279
- else {
3280
- const range = (_b = this._sheetsSelectionService.getCurrentLastSelection()) == null ? void 0 : _b.range;
3281
- if (range) {
3282
- let newRange = { ...range };
3283
- newRange = range.startColumn === range.endColumn && range.startRow === range.endRow ? expandToContinuousRange(newRange, { left: !0, right: !0, up: !0, down: !0 }, worksheet) : newRange, permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
3284
- rangeTypes: [RangeProtectionPermissionViewPoint],
3285
- worksheetTypes: [WorksheetViewPermission, WorksheetFilterPermission]
3286
- }, [newRange], unitId, subUnitId);
3287
- } else
3288
- permission = this._sheetPermissionInterceptorBaseController.permissionCheckWithoutRange({
3289
- rangeTypes: [RangeProtectionPermissionViewPoint],
3290
- worksheetTypes: [WorksheetViewPermission, WorksheetFilterPermission]
3291
- });
3292
- }
3293
- permission || this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr"));
3294
- }
3295
- if (command.id === OpenFilterPanelOperation.id) {
3296
- const params = command.params, { unitId, subUnitId } = params, filterRange = (_c = this._sheetsFilterService.getFilterModel(unitId, subUnitId)) == null ? void 0 : _c.getRange(), colRange = Tools.deepClone(filterRange);
3297
- colRange && (colRange.startColumn = params.col, colRange.endColumn = params.col, this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({
3298
- rangeTypes: [RangeProtectionPermissionViewPoint],
3299
- worksheetTypes: [WorksheetFilterPermission, WorksheetViewPermission]
3300
- }, [colRange]) || this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr")));
3301
- }
3302
- })
3303
- );
3304
- }
3305
- }, __name(_a9, "SheetsFilterPermissionController"), _a9);
3306
- SheetsFilterPermissionController = __decorateClass$3([
3307
- __decorateParam$3(0, Inject(SheetsFilterService)),
3308
- __decorateParam$3(1, Inject(LocaleService)),
3309
- __decorateParam$3(2, ICommandService),
3310
- __decorateParam$3(3, Inject(SheetPermissionInterceptorBaseController)),
3311
- __decorateParam$3(4, Inject(Injector)),
3312
- __decorateParam$3(5, Inject(SheetsSelectionsService))
3313
- ], SheetsFilterPermissionController);
3314
- const PLUGIN_CONFIG_KEY = "sheets-filter-ui.config", defaultPluginConfig = {};
3315
3318
  var __defProp$2 = Object.defineProperty, __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor, __defNormalProp$1 = /* @__PURE__ */ __name((obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, "__defNormalProp$1"), __decorateClass$2 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
3316
3319
  for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
3317
3320
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
@@ -0,0 +1,53 @@
1
+ {
2
+ "sheets-filter": {
3
+ "toolbar": {
4
+ "smart-toggle-filter-tooltip": "تغییر حالت فیلتر",
5
+ "clear-filter-criteria": "پاک کردن شرایط فیلتر",
6
+ "re-calc-filter-conditions": "بازمحاسبه شرایط فیلتر"
7
+ },
8
+ "command": {
9
+ "not-valid-filter-range": "محدوده انتخاب شده فقط یک ردیف دارد و برای فیلتر معتبر نیست."
10
+ },
11
+ "shortcut": {
12
+ "smart-toggle-filter": "تغییر حالت فیلتر"
13
+ },
14
+ "panel": {
15
+ "clear-filter": "پاک کردن فیلتر",
16
+ "cancel": "انصراف",
17
+ "confirm": "تایید",
18
+ "by-values": "بر اساس مقادیر",
19
+ "by-conditions": "بر اساس شرایط",
20
+ "filter-only": "فقط فیلتر",
21
+ "search-placeholder": "برای جداسازی کلیدواژه‌ها از فاصله استفاده کنید",
22
+ "select-all": "انتخاب همه",
23
+ "input-values-placeholder": "ورود مقادیر",
24
+ "and": "و",
25
+ "or": "یا",
26
+ "empty": "(خالی)",
27
+ "?": "برای نمایش یک کاراکتر از “?” استفاده کنید.",
28
+ "*": "برای نمایش چندین کاراکتر از “*” استفاده کنید."
29
+ },
30
+ "conditions": {
31
+ "none": "هیچ کدام",
32
+ "empty": "خالی است",
33
+ "not-empty": "خالی نیست",
34
+ "text-contains": "شامل متن است",
35
+ "does-not-contain": "شامل متن نیست",
36
+ "starts-with": "با متن شروع می‌شود",
37
+ "ends-with": "با متن پایان می‌یابد",
38
+ "equals": "برابر است با",
39
+ "greater-than": "بزرگتر از",
40
+ "greater-than-or-equal": "بزرگتر از یا برابر با",
41
+ "less-than": "کوچکتر از",
42
+ "less-than-or-equal": "کوچکتر از یا برابر با",
43
+ "equal": "برابر است با",
44
+ "not-equal": "برابر نیست با",
45
+ "between": "بین",
46
+ "not-between": "بین نیست",
47
+ "custom": "سفارشی"
48
+ },
49
+ "msg": {
50
+ "filter-header-forbidden": "شما نمی‌توانید ردیف هدر یک فیلتر را جابه‌جا کنید."
51
+ }
52
+ }
53
+ }
@@ -1,6 +1,6 @@
1
+ import { IUniverSheetsFilterUIConfig } from './controllers/config.schema';
1
2
  import { IConfigService, Injector, Plugin, UniverInstanceType } from '@univerjs/core';
2
3
  import { IRPCChannelService } from '@univerjs/rpc';
3
- import { IUniverSheetsFilterUIConfig } from './controllers/config.schema';
4
4
  /**
5
5
  * The plugin for the desktop version of the sheets filter UI. Its type is {@link UniverInstanceType.UNIVER_SHEET}.
6
6
  */
@@ -0,0 +1,3 @@
1
+ import { default as zhCN } from './zh-CN';
2
+ declare const locale: typeof zhCN;
3
+ export default locale;
@@ -1,5 +1,5 @@
1
- import { default as React } from 'react';
2
1
  import { ByConditionsModel } from '../../services/sheets-filter-panel.service';
2
+ import { default as React } from 'react';
3
3
  /**
4
4
  * Filter by conditions.
5
5
  */
@@ -1,8 +1,8 @@
1
- import { ICommandService, Injector, RxDisposable, ThemeService, Workbook } from '@univerjs/core';
1
+ import { Workbook, ICommandService, Injector, RxDisposable, ThemeService } from '@univerjs/core';
2
+ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
2
3
  import { SheetInterceptorService } from '@univerjs/sheets';
3
4
  import { SheetsFilterService } from '@univerjs/sheets-filter';
4
5
  import { ISheetSelectionRenderService, SheetSkeletonManagerService } from '@univerjs/sheets-ui';
5
- import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
6
6
  export declare class SheetsFilterRenderController extends RxDisposable implements IRenderModule {
7
7
  private readonly _context;
8
8
  private readonly _injector;