@univerjs/sheets-filter-ui 0.4.2 → 0.5.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.
Files changed (35) hide show
  1. package/lib/cjs/index.js +3 -8
  2. package/lib/cjs/locale/en-US.js +1 -0
  3. package/lib/cjs/locale/fa-IR.js +1 -0
  4. package/lib/cjs/locale/ru-RU.js +1 -0
  5. package/lib/cjs/locale/vi-VN.js +1 -0
  6. package/lib/cjs/locale/zh-CN.js +1 -0
  7. package/lib/cjs/locale/zh-TW.js +1 -0
  8. package/lib/es/index.js +1413 -2982
  9. package/lib/{locale/en-US.json → es/locale/en-US.js} +36 -19
  10. package/lib/{locale/fa-IR.json → es/locale/fa-IR.js} +36 -19
  11. package/lib/{locale/ru-RU.json → es/locale/ru-RU.js} +36 -19
  12. package/lib/{locale/vi-VN.json → es/locale/vi-VN.js} +36 -19
  13. package/lib/{locale/zh-CN.json → es/locale/zh-CN.js} +36 -19
  14. package/lib/{locale/zh-TW.json → es/locale/zh-TW.js} +36 -19
  15. package/lib/index.css +1 -1
  16. package/lib/types/__testing__/data.d.ts +60 -9
  17. package/lib/types/controllers/sheets-filter-permission.controller.d.ts +1 -1
  18. package/lib/types/controllers/sheets-filter-ui-desktop.controller.d.ts +2 -2
  19. package/lib/types/controllers/sheets-filter.menu.d.ts +1 -1
  20. package/lib/types/index.d.ts +0 -1
  21. package/lib/types/locale/zh-CN.d.ts +14 -0
  22. package/lib/types/models/utils.d.ts +4 -4
  23. package/lib/types/services/sheets-filter-panel.service.d.ts +20 -9
  24. package/lib/types/services/util.d.ts +5 -0
  25. package/lib/types/views/components/SheetsFilterPanel.stories.d.ts +1 -1
  26. package/lib/types/worker/generate-filter-values.service.d.ts +14 -4
  27. package/lib/umd/index.js +3 -8
  28. package/lib/umd/locale/en-US.js +1 -0
  29. package/lib/umd/locale/fa-IR.js +1 -0
  30. package/lib/umd/locale/ru-RU.js +1 -0
  31. package/lib/umd/locale/vi-VN.js +1 -0
  32. package/lib/umd/locale/zh-CN.js +1 -0
  33. package/lib/umd/locale/zh-TW.js +1 -0
  34. package/package.json +31 -23
  35. package/lib/types/commands/commands/sheets-filter.command.d.ts +0 -57
package/lib/umd/index.js CHANGED
@@ -1,14 +1,9 @@
1
- (function(global2,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("@univerjs/core"),require("@univerjs/rpc"),require("@univerjs/sheets-filter"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/design"),require("@univerjs/ui"),require("rxjs"),require("@univerjs/engine-render"),require("react"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/rpc","@univerjs/sheets-filter","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/design","@univerjs/ui","rxjs","@univerjs/engine-render","react","react-dom"],factory):(global2=typeof globalThis<"u"?globalThis:global2||self,factory(global2.UniverSheetsFilterUi={},global2.UniverCore,global2.UniverRpc,global2.UniverSheetsFilter,global2.UniverSheets,global2.UniverSheetsUi,global2.UniverDesign,global2.UniverUi,global2.rxjs,global2.UniverEngineRender,global2.React,global2.ReactDOM))})(this,function(exports2,core,rpc,sheetsFilter,sheets,sheetsUi,design,ui,rxjs,engineRender,React,ReactDOM){"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l;function _interopNamespaceDefault(e2){const n2=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e2){for(const k2 in e2)if(k2!=="default"){const d2=Object.getOwnPropertyDescriptor(e2,k2);Object.defineProperty(n2,k2,d2.get?d2:{enumerable:!0,get:__name(()=>e2[k2],"get")})}}return n2.default=e2,Object.freeze(n2)}__name(_interopNamespaceDefault,"_interopNamespaceDefault");const React__namespace=_interopNamespaceDefault(React),PLUGIN_CONFIG_KEY="sheets-filter-ui.config",defaultPluginConfig={},SetSheetFilterRangeCommand={id:"sheet.command.set-filter-range",type:core.CommandType.COMMAND,handler:__name((accessor,params)=>{const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),instanceSrv=accessor.get(core.IUniverInstanceService),{unitId,subUnitId,range}=params;if(!sheets.getSheetCommandTarget(instanceSrv,params)||sheetsFilterService.getFilterModel(unitId,subUnitId))return!1;if(range.endRow===range.startRow){const messageService=accessor.get(ui.IMessageService,core.Quantity.OPTIONAL),localeService=accessor.get(core.LocaleService);return messageService==null||messageService.show({type:design.MessageType.Warning,content:localeService.t("sheets-filter.command.not-valid-filter-range")}),!1}const redoMutation={id:sheetsFilter.SetSheetsFilterRangeMutation.id,params:{unitId,subUnitId,range}},result=commandService.syncExecuteCommand(redoMutation.id,redoMutation.params);return result&&undoRedoService.pushUndoRedo({unitID:unitId,undoMutations:[{id:sheetsFilter.RemoveSheetsFilterMutation.id,params:{unitId,subUnitId}}],redoMutations:[redoMutation]}),result},"handler")},RemoveSheetFilterCommand={id:"sheet.command.remove-sheet-filter",type:core.CommandType.COMMAND,handler:__name((accessor,params)=>{const univerInstanceService=accessor.get(core.IUniverInstanceService),sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),commandTarget=sheets.getSheetCommandTarget(univerInstanceService,params);if(!commandTarget)return!1;const{unitId,subUnitId}=commandTarget,filterModel=sheetsFilterService.getFilterModel(unitId,subUnitId);if(!filterModel)return!1;const autoFilter=filterModel==null?void 0:filterModel.serialize(),undoMutations=destructFilterModel(unitId,subUnitId,autoFilter),result=commandService.syncExecuteCommand(sheetsFilter.RemoveSheetsFilterMutation.id,{unitId,subUnitId});return result&&undoRedoService.pushUndoRedo({unitID:unitId,undoMutations,redoMutations:[{id:sheetsFilter.RemoveSheetsFilterMutation.id,params:{unitId,subUnitId}}]}),result},"handler")},SmartToggleSheetsFilterCommand={id:"sheet.command.smart-toggle-filter",type:core.CommandType.COMMAND,handler:__name(async accessor=>{const univerInstanceService=accessor.get(core.IUniverInstanceService),sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),commandService=accessor.get(core.ICommandService),currentWorkbook=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),currentWorksheet=currentWorkbook==null?void 0:currentWorkbook.getActiveSheet();if(!currentWorksheet||!currentWorkbook)return!1;const unitId=currentWorkbook.getUnitId(),subUnitId=currentWorksheet.getSheetId();if(sheetsFilterService.getFilterModel(unitId,subUnitId))return commandService.executeCommand(RemoveSheetFilterCommand.id,{unitId,subUnitId});const lastSelection=accessor.get(sheets.SheetsSelectionsService).getCurrentLastSelection();if(!lastSelection)return!1;const startRange=lastSelection.range,targetFilterRange=sheets.isSingleCellSelection(lastSelection)?sheets.expandToContinuousRange(startRange,{left:!0,right:!0,up:!0,down:!0},currentWorksheet):startRange;return commandService.executeCommand(SetSheetFilterRangeCommand.id,{unitId,subUnitId,range:targetFilterRange})},"handler")},SetSheetsFilterCriteriaCommand={id:"sheet.command.set-filter-criteria",type:core.CommandType.COMMAND,handler:__name(async(accessor,params)=>{const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),{unitId,subUnitId,col,criteria}=params,filterModel=sheetsFilterService.getFilterModel(unitId,subUnitId);if(!filterModel)return!1;const range=filterModel.getRange();if(!range||col<range.startColumn||col>range.endColumn)return!1;const filterColumn=filterModel.getFilterColumn(col),undoMutation=destructFilterColumn(unitId,subUnitId,col,filterColumn),redoMutation={id:sheetsFilter.SetSheetsFilterCriteriaMutation.id,params:{unitId,subUnitId,col,criteria}},result=commandService.syncExecuteCommand(redoMutation.id,redoMutation.params);return result&&undoRedoService.pushUndoRedo({unitID:unitId,undoMutations:[undoMutation],redoMutations:[redoMutation]}),result},"handler")},ClearSheetsFilterCriteriaCommand={id:"sheet.command.clear-filter-criteria",type:core.CommandType.COMMAND,handler:__name((accessor,params)=>{const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),undoRedoService=accessor.get(core.IUndoRedoService),commandService=accessor.get(core.ICommandService),instanceSrv=accessor.get(core.IUniverInstanceService),commandTarget=sheets.getSheetCommandTarget(instanceSrv,params);if(!commandTarget)return!1;const{unitId,subUnitId}=commandTarget,filterModel=sheetsFilterService.getFilterModel(commandTarget.unitId,commandTarget.subUnitId);if(!filterModel)return!1;const autoFilter=filterModel.serialize(),undoMutations=destructFilterCriteria(unitId,subUnitId,autoFilter),redoMutations=generateRemoveCriteriaMutations(unitId,subUnitId,autoFilter);return core.sequenceExecute(redoMutations,commandService).result?(undoRedoService.pushUndoRedo({unitID:unitId,undoMutations,redoMutations}),!0):!1},"handler")},ReCalcSheetsFilterCommand={id:"sheet.command.re-calc-filter",type:core.CommandType.COMMAND,handler:__name((accessor,params)=>{const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),commandService=accessor.get(core.ICommandService),instanceSrv=accessor.get(core.IUniverInstanceService),commandTarget=sheets.getSheetCommandTarget(instanceSrv,params);if(!commandTarget)return!1;const{unitId,subUnitId}=commandTarget;return sheetsFilterService.getFilterModel(commandTarget.unitId,commandTarget.subUnitId)?commandService.executeCommand(sheetsFilter.ReCalcSheetsFilterMutation.id,{unitId,subUnitId}):!1},"handler")};function destructFilterModel(unitId,subUnitId,autoFilter){const mutations=[],setFilterMutation={id:sheetsFilter.SetSheetsFilterRangeMutation.id,params:{unitId,subUnitId,range:autoFilter.ref}};return mutations.push(setFilterMutation),destructFilterCriteria(unitId,subUnitId,autoFilter).forEach(m2=>mutations.push(m2)),mutations}__name(destructFilterModel,"destructFilterModel");function destructFilterCriteria(unitId,subUnitId,autoFilter){var _a2;const mutations=[];return(_a2=autoFilter.filterColumns)==null||_a2.forEach(filterColumn=>{const setFilterCriteriaMutation={id:sheetsFilter.SetSheetsFilterCriteriaMutation.id,params:{unitId,subUnitId,col:filterColumn.colId,criteria:filterColumn}};mutations.push(setFilterCriteriaMutation)}),mutations}__name(destructFilterCriteria,"destructFilterCriteria");function generateRemoveCriteriaMutations(unitId,subUnitId,autoFilter){var _a2;const mutations=[];return(_a2=autoFilter.filterColumns)==null||_a2.forEach(filterColumn=>{const removeFilterCriteriaMutation={id:sheetsFilter.SetSheetsFilterCriteriaMutation.id,params:{unitId,subUnitId,col:filterColumn.colId,criteria:null}};mutations.push(removeFilterCriteriaMutation)}),mutations}__name(generateRemoveCriteriaMutations,"generateRemoveCriteriaMutations");function destructFilterColumn(unitId,subUnitId,colId,filterColumn){if(!filterColumn)return{id:sheetsFilter.SetSheetsFilterCriteriaMutation.id,params:{unitId,subUnitId,col:colId,criteria:null}};const serialize=filterColumn.serialize();return{id:sheetsFilter.SetSheetsFilterCriteriaMutation.id,params:{unitId,subUnitId,col:colId,criteria:serialize}}}__name(destructFilterColumn,"destructFilterColumn");var OperatorOrder=(OperatorOrder2=>(OperatorOrder2[OperatorOrder2.FIRST=0]="FIRST",OperatorOrder2[OperatorOrder2.SECOND=1]="SECOND",OperatorOrder2))(OperatorOrder||{}),ExtendCustomFilterOperator=(ExtendCustomFilterOperator2=>(ExtendCustomFilterOperator2.NONE="none",ExtendCustomFilterOperator2.STARTS_WITH="startsWith",ExtendCustomFilterOperator2.DOES_NOT_START_WITH="doesNotStartWith",ExtendCustomFilterOperator2.ENDS_WITH="endsWith",ExtendCustomFilterOperator2.DOES_NOT_END_WITH="doesNotEndWith",ExtendCustomFilterOperator2.CONTAINS="contains",ExtendCustomFilterOperator2.DOES_NOT_CONTAIN="doesNotContain",ExtendCustomFilterOperator2.EQUALS="equals",ExtendCustomFilterOperator2.NOT_EQUALS="notEquals",ExtendCustomFilterOperator2.EMPTY="empty",ExtendCustomFilterOperator2.NOT_EMPTY="notEmpty",ExtendCustomFilterOperator2.BETWEEN="between",ExtendCustomFilterOperator2.NOT_BETWEEN="notBetween",ExtendCustomFilterOperator2.CUSTOM="custom",ExtendCustomFilterOperator2))(ExtendCustomFilterOperator||{}),FilterConditionItems;(FilterConditionItems2=>{FilterConditionItems2.NONE={label:"sheets-filter.conditions.none",operator:ExtendCustomFilterOperator.NONE,order:OperatorOrder.SECOND,numOfParameters:0,getDefaultFormParams:__name(()=>{throw new Error("[FilterConditionItems.NONE]: should not have initial form params!")},"getDefaultFormParams"),testMappingParams:__name(params=>params.operator1===ExtendCustomFilterOperator.NONE,"testMappingParams"),mapToFilterColumn:__name(()=>null,"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>!filterColumn.customFilters&&!filterColumn.filters?{}:!1,"testMappingFilterColumn")},FilterConditionItems2.EMPTY={label:"sheets-filter.conditions.empty",operator:ExtendCustomFilterOperator.EMPTY,order:OperatorOrder.SECOND,numOfParameters:0,getDefaultFormParams:__name(()=>{throw new Error("[FilterConditionItems.EMPTY]: should not have initial form params!")},"getDefaultFormParams"),testMappingParams:__name(({operator1})=>operator1===ExtendCustomFilterOperator.EMPTY,"testMappingParams"),mapToFilterColumn:__name(()=>({customFilters:{customFilters:[{val:""}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.val===""&&firstCustomFilter.operator===void 0?{operator1:ExtendCustomFilterOperator.EMPTY}:!1},"testMappingFilterColumn")},FilterConditionItems2.NOT_EMPTY={label:"sheets-filter.conditions.not-empty",operator:ExtendCustomFilterOperator.NOT_EMPTY,order:OperatorOrder.SECOND,numOfParameters:0,getDefaultFormParams:__name(()=>{throw new Error("[FilterConditionItems.NOT_EMPTY]: should not have initial form params!")},"getDefaultFormParams"),testMappingParams:__name(({operator1})=>operator1===ExtendCustomFilterOperator.NOT_EMPTY,"testMappingParams"),mapToFilterColumn:__name(()=>({customFilters:{customFilters:[{val:"",operator:sheetsFilter.CustomFilterOperator.NOT_EQUALS}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.val===" "&&firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.NOT_EQUALS?{operator1:ExtendCustomFilterOperator.NOT_EMPTY}:!1},"testMappingFilterColumn")},FilterConditionItems2.TEXT_CONTAINS={label:"sheets-filter.conditions.text-contains",operator:ExtendCustomFilterOperator.CONTAINS,order:OperatorOrder.FIRST,numOfParameters:1,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.CONTAINS,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===ExtendCustomFilterOperator.CONTAINS},"testMappingParams"),mapToFilterColumn:__name(mapParams=>{const{val1}=mapParams;return val1===""?null:{customFilters:{customFilters:[{val:`*${val1}*`}]}}},"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0],valAsString=firstCustomFilter.val.toString();return!firstCustomFilter.operator&&valAsString.startsWith("*")&&valAsString.endsWith("*")?{operator1:ExtendCustomFilterOperator.CONTAINS,val1:valAsString.slice(1,-1)}:!1},"testMappingFilterColumn")},FilterConditionItems2.DOES_NOT_CONTAIN={label:"sheets-filter.conditions.does-not-contain",operator:ExtendCustomFilterOperator.DOES_NOT_CONTAIN,order:OperatorOrder.FIRST,numOfParameters:1,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.DOES_NOT_CONTAIN,val1:""}),"getDefaultFormParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:`*${mapParams.val1}*`,operator:sheetsFilter.CustomFilterOperator.NOT_EQUALS}]}}),"mapToFilterColumn"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===ExtendCustomFilterOperator.DOES_NOT_CONTAIN},"testMappingParams"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0],valAsString=firstCustomFilter.val.toString();return firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.NOT_EQUALS&&valAsString.startsWith("*")&&valAsString.endsWith("*")?{operator1:ExtendCustomFilterOperator.DOES_NOT_CONTAIN,val1:valAsString.slice(1,-1)}:!1},"testMappingFilterColumn")},FilterConditionItems2.STARTS_WITH={label:"sheets-filter.conditions.starts-with",operator:ExtendCustomFilterOperator.STARTS_WITH,order:OperatorOrder.FIRST,numOfParameters:1,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.STARTS_WITH,val1:""}),"getDefaultFormParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:`${mapParams.val1}*`}]}}),"mapToFilterColumn"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===ExtendCustomFilterOperator.STARTS_WITH},"testMappingParams"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0],valAsString=firstCustomFilter.val.toString();return!firstCustomFilter.operator&&valAsString.endsWith("*")&&!valAsString.startsWith("*")?{operator1:ExtendCustomFilterOperator.STARTS_WITH,val1:valAsString.slice(0,-1)}:!1},"testMappingFilterColumn")},FilterConditionItems2.ENDS_WITH={label:"sheets-filter.conditions.ends-with",operator:ExtendCustomFilterOperator.ENDS_WITH,order:OperatorOrder.FIRST,numOfParameters:1,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.ENDS_WITH,val1:""}),"getDefaultFormParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:`*${mapParams.val1}`}]}}),"mapToFilterColumn"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===ExtendCustomFilterOperator.ENDS_WITH},"testMappingParams"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0],valAsString=firstCustomFilter.val.toString();return!firstCustomFilter.operator&&valAsString.startsWith("*")&&!valAsString.endsWith("*")?{operator1:ExtendCustomFilterOperator.ENDS_WITH,val1:valAsString.slice(1)}:!1},"testMappingFilterColumn")},FilterConditionItems2.EQUALS={label:"sheets-filter.conditions.equals",operator:ExtendCustomFilterOperator.EQUALS,order:OperatorOrder.FIRST,numOfParameters:1,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.EQUALS,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===ExtendCustomFilterOperator.EQUALS},"testMappingParams"),mapToFilterColumn:__name(mapParams=>{const{val1}=mapParams;return val1===""?null:{customFilters:{customFilters:[{val:val1}]}}},"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2,_b2,_c2;return((_b2=(_a2=filterColumn.filters)==null?void 0:_a2.filters)==null?void 0:_b2.length)===1?{operator1:ExtendCustomFilterOperator.EQUALS,val1:""}:((_c2=filterColumn.customFilters)==null?void 0:_c2.customFilters.length)===1&&!filterColumn.customFilters.customFilters[0].operator?{operator1:ExtendCustomFilterOperator.EQUALS,val1:filterColumn.customFilters.customFilters[0].val.toString()}:!1},"testMappingFilterColumn")},FilterConditionItems2.GREATER_THAN={label:"sheets-filter.conditions.greater-than",operator:sheetsFilter.CustomFilterOperator.GREATER_THAN,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN,val1:""}),"getDefaultFormParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.GREATER_THAN}]}}),"mapToFilterColumn"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.GREATER_THAN},"testMappingParams"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.GREATER_THAN?!1:{operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.GREATER_THAN_OR_EQUAL={label:"sheets-filter.conditions.greater-than-or-equal",operator:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL},"testMappingParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL?!1:{operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.LESS_THAN={label:"sheets-filter.conditions.less-than",operator:sheetsFilter.CustomFilterOperator.LESS_THAN,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.LESS_THAN,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.LESS_THAN},"testMappingParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.LESS_THAN}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.LESS_THAN?!1:{operator1:sheetsFilter.CustomFilterOperator.LESS_THAN,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.LESS_THAN_OR_EQUAL={label:"sheets-filter.conditions.less-than-or-equal",operator:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL},"testMappingParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL?!1:{operator1:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.EQUAL={label:"sheets-filter.conditions.equal",operator:sheetsFilter.CustomFilterOperator.EQUAL,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.EQUAL,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.EQUAL},"testMappingParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.EQUAL}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.EQUAL?!1:{operator1:sheetsFilter.CustomFilterOperator.EQUAL,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.NOT_EQUAL={label:"sheets-filter.conditions.not-equal",operator:sheetsFilter.CustomFilterOperator.NOT_EQUALS,numOfParameters:1,order:OperatorOrder.FIRST,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.NOT_EQUALS,val1:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const[op]=getOnlyOperatorAndVal(params);return op===sheetsFilter.CustomFilterOperator.NOT_EQUALS},"testMappingParams"),mapToFilterColumn:__name(mapParams=>({customFilters:{customFilters:[{val:mapParams.val1,operator:sheetsFilter.CustomFilterOperator.NOT_EQUALS}]}}),"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==1)return!1;const firstCustomFilter=filterColumn.customFilters.customFilters[0];return firstCustomFilter.operator!==sheetsFilter.CustomFilterOperator.NOT_EQUALS?!1:{operator1:sheetsFilter.CustomFilterOperator.NOT_EQUALS,val1:firstCustomFilter.val.toString()}},"testMappingFilterColumn")},FilterConditionItems2.BETWEEN={label:"sheets-filter.conditions.between",operator:ExtendCustomFilterOperator.BETWEEN,order:OperatorOrder.SECOND,numOfParameters:2,getDefaultFormParams:__name(()=>({and:!0,operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:"",operator2:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const{and,operator1,operator2}=params;if(!and)return!1;const operators=[operator1,operator2];return operators.includes(sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL)&&operators.includes(sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL)},"testMappingParams"),mapToFilterColumn:__name(mapParams=>{const{val1,val2,operator1}=mapParams,operator1IsGreater=operator1===sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL;return{customFilters:{and:core.BooleanNumber.TRUE,customFilters:[{val:operator1IsGreater?val1:val2,operator:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL},{val:operator1IsGreater?val2:val1,operator:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}},"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==2)return!1;const[firstCustomFilter,secondCustomFilter]=filterColumn.customFilters.customFilters;return firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&secondCustomFilter.operator===sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL&&filterColumn.customFilters.and?{and:!0,operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:firstCustomFilter.val.toString(),operator2:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:secondCustomFilter.val.toString()}:secondCustomFilter.operator===sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL&&filterColumn.customFilters.and?{and:!0,operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:secondCustomFilter.val.toString(),operator2:sheetsFilter.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:firstCustomFilter.val.toLocaleString()}:!1},"testMappingFilterColumn")},FilterConditionItems2.NOT_BETWEEN={label:"sheets-filter.conditions.not-between",operator:ExtendCustomFilterOperator.NOT_BETWEEN,order:OperatorOrder.SECOND,numOfParameters:2,getDefaultFormParams:__name(()=>({operator1:sheetsFilter.CustomFilterOperator.LESS_THAN,val1:"",operator2:sheetsFilter.CustomFilterOperator.GREATER_THAN,val2:""}),"getDefaultFormParams"),testMappingParams:__name(params=>{const{and,operator1,operator2}=params;if(and)return!1;const operators=[operator1,operator2];return operators.includes(sheetsFilter.CustomFilterOperator.GREATER_THAN)&&operators.includes(sheetsFilter.CustomFilterOperator.LESS_THAN)},"testMappingParams"),mapToFilterColumn:__name(mapParams=>{const{val1,val2,operator1}=mapParams,operator1IsGreater=operator1===sheetsFilter.CustomFilterOperator.GREATER_THAN;return{customFilters:{customFilters:[{val:operator1IsGreater?val1:val2,operator:sheetsFilter.CustomFilterOperator.GREATER_THAN},{val:operator1IsGreater?val2:val1,operator:sheetsFilter.CustomFilterOperator.LESS_THAN}]}}},"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==2)return!1;const[firstCustomFilter,secondCustomFilter]=filterColumn.customFilters.customFilters;return firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.LESS_THAN&&secondCustomFilter.operator===sheetsFilter.CustomFilterOperator.GREATER_THAN&&!filterColumn.customFilters.and?{operator1:sheetsFilter.CustomFilterOperator.LESS_THAN,val1:firstCustomFilter.val.toString(),operator2:sheetsFilter.CustomFilterOperator.GREATER_THAN,val2:secondCustomFilter.val.toString()}:secondCustomFilter.operator===sheetsFilter.CustomFilterOperator.LESS_THAN&&firstCustomFilter.operator===sheetsFilter.CustomFilterOperator.GREATER_THAN&&!filterColumn.customFilters.and?{operator1:sheetsFilter.CustomFilterOperator.GREATER_THAN,val1:secondCustomFilter.val.toString(),operator2:sheetsFilter.CustomFilterOperator.LESS_THAN,val2:firstCustomFilter.val.toLocaleString()}:!1},"testMappingFilterColumn")},FilterConditionItems2.CUSTOM={label:"sheets-filter.conditions.custom",operator:ExtendCustomFilterOperator.CUSTOM,order:OperatorOrder.SECOND,numOfParameters:2,getDefaultFormParams:__name(()=>({operator1:ExtendCustomFilterOperator.NONE,val1:"",operator2:ExtendCustomFilterOperator.NONE,val2:""}),"getDefaultFormParams"),testMappingParams:__name(()=>!0,"testMappingParams"),mapToFilterColumn:__name(mapParams=>{const{and,val1,val2,operator1,operator2}=mapParams;function mapOperator(operator,val){for(const condition of FilterConditionItems2.ALL_CONDITIONS)if(condition.operator===operator)return condition.mapToFilterColumn({val1:val,operator1:operator})}__name(mapOperator,"mapOperator");const operator1IsNone=!operator1||operator1===FilterConditionItems2.NONE.operator,operator2IsNone=!operator2||operator2===FilterConditionItems2.NONE.operator;if(operator1IsNone&&operator2IsNone)return FilterConditionItems2.NONE.mapToFilterColumn({});if(operator1IsNone)return mapOperator(operator2,val2);if(operator2IsNone)return mapOperator(operator1,val1);const mappedCustomFilter1=mapOperator(operator1,val1),mappedCustomFilter2=mapOperator(operator2,val2),customFilters={customFilters:[mappedCustomFilter1.customFilters.customFilters[0],mappedCustomFilter2.customFilters.customFilters[0]]};return and&&(customFilters.and=core.BooleanNumber.TRUE),{customFilters}},"mapToFilterColumn"),testMappingFilterColumn:__name(filterColumn=>{var _a2;if(((_a2=filterColumn.customFilters)==null?void 0:_a2.customFilters.length)!==2)return!1;const params=filterColumn.customFilters.customFilters.map(customFilter=>testMappingFilterColumn({customFilters:{customFilters:[customFilter]}})),result={operator1:params[0][0].operator,val1:params[0][1].val1,operator2:params[1][0].operator,val2:params[1][1].val1};return filterColumn.customFilters.and&&(result.and=!0),result},"testMappingFilterColumn")},FilterConditionItems2.ALL_CONDITIONS=[FilterConditionItems2.NONE,FilterConditionItems2.EMPTY,FilterConditionItems2.NOT_EMPTY,FilterConditionItems2.TEXT_CONTAINS,FilterConditionItems2.DOES_NOT_CONTAIN,FilterConditionItems2.STARTS_WITH,FilterConditionItems2.ENDS_WITH,FilterConditionItems2.EQUALS,FilterConditionItems2.GREATER_THAN,FilterConditionItems2.GREATER_THAN_OR_EQUAL,FilterConditionItems2.LESS_THAN,FilterConditionItems2.LESS_THAN_OR_EQUAL,FilterConditionItems2.EQUAL,FilterConditionItems2.NOT_EQUAL,FilterConditionItems2.BETWEEN,FilterConditionItems2.NOT_BETWEEN,FilterConditionItems2.CUSTOM];function getItemByOperator(operator){const item=FilterConditionItems2.ALL_CONDITIONS.find(condition=>condition.operator===operator);if(!item)throw new Error(`[SheetsFilter]: no condition item found for operator: ${operator}`);return item}__name(getItemByOperator,"getItemByOperator"),FilterConditionItems2.getItemByOperator=getItemByOperator;function testMappingParams(mapParams,numOfParameters){for(const condition of FilterConditionItems2.ALL_CONDITIONS.filter(condition2=>condition2.numOfParameters===numOfParameters))if(condition.numOfParameters!==0&&condition.testMappingParams(mapParams))return condition;for(const condition of FilterConditionItems2.ALL_CONDITIONS)if(condition.testMappingParams(mapParams))return condition;throw new Error("[SheetsFilter]: no condition item can be mapped from the filter map params!")}__name(testMappingParams,"testMappingParams"),FilterConditionItems2.testMappingParams=testMappingParams;function getInitialFormParams(operator){const condition=FilterConditionItems2.ALL_CONDITIONS.find(condition2=>condition2.operator===operator);return(condition==null?void 0:condition.numOfParameters)===0?{operator1:condition.operator}:condition.getDefaultFormParams()}__name(getInitialFormParams,"getInitialFormParams"),FilterConditionItems2.getInitialFormParams=getInitialFormParams;function mapToFilterColumn(condition,mapParams){return condition.mapToFilterColumn(mapParams)}__name(mapToFilterColumn,"mapToFilterColumn"),FilterConditionItems2.mapToFilterColumn=mapToFilterColumn;function testMappingFilterColumn(filterColumn){if(!filterColumn)return[FilterConditionItems2.NONE,{}];for(const condition of FilterConditionItems2.ALL_CONDITIONS){const mapParams=condition.testMappingFilterColumn(filterColumn);if(mapParams)return[condition,mapParams]}return[FilterConditionItems2.NONE,{}]}__name(testMappingFilterColumn,"testMappingFilterColumn"),FilterConditionItems2.testMappingFilterColumn=testMappingFilterColumn})(FilterConditionItems||(FilterConditionItems={}));function getOnlyOperatorAndVal(mapParams){const{operator1,operator2,val1,val2}=mapParams;if(operator1&&operator2)throw new Error("Both operator1 and operator2 are set!");if(!operator1&&!operator2)throw new Error("Neither operator1 and operator2 and both not set!");return operator1?[operator1,val1]:[operator2,val2]}__name(getOnlyOperatorAndVal,"getOnlyOperatorAndVal");function statisticFilterByValueItems(items){const checkedItems=[],uncheckedItems=[];for(const item of items)item.checked?checkedItems.push(item):uncheckedItems.push(item);return{checkedItems,uncheckedItems,checked:checkedItems.length,unchecked:uncheckedItems.length}}__name(statisticFilterByValueItems,"statisticFilterByValueItems");var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$9");const SHEETS_GENERATE_FILTER_VALUES_SERVICE_NAME="sheets-filter.generate-filter-values.service",ISheetsGenerateFilterValuesService=core.createIdentifier(SHEETS_GENERATE_FILTER_VALUES_SERVICE_NAME);let SheetsGenerateFilterValuesService=(_a=class extends core.Disposable{constructor(_localeService,_univerInstanceService,_logService){super(),this._localeService=_localeService,this._univerInstanceService=_univerInstanceService,this._logService=_logService}async getFilterValues(params){var _a2;const{unitId,subUnitId,filteredOutRowsByOtherColumns,filters,blankChecked,iterateRange,alreadyChecked}=params,worksheet=(_a2=this._univerInstanceService.getUnit(unitId))==null?void 0:_a2.getSheetBySheetId(subUnitId);return worksheet?(this._logService.debug("[SheetsGenerateFilterValuesService]","getFilterValues for",{unitId,subUnitId}),getFilterByValueItems(filters,blankChecked,this._localeService,iterateRange,worksheet,new Set(alreadyChecked.map(String)),new Set(filteredOutRowsByOtherColumns))):[]}},__name(_a,"SheetsGenerateFilterValuesService"),_a);SheetsGenerateFilterValuesService=__decorateClass$9([__decorateParam$9(0,core.Inject(core.LocaleService)),__decorateParam$9(1,core.IUniverInstanceService),__decorateParam$9(2,core.ILogService)],SheetsGenerateFilterValuesService);function getFilterByValueItems(filters,blankChecked,localeService,iterateRange,worksheet,alreadyChecked,filteredOutRowsByOtherColumns){const items=[],itemsByKey={};let index2=0,emptyCount=0;for(const cell of worksheet.iterateByColumn(iterateRange,!1,!1)){const{row,rowSpan=1}=cell;let rowIndex=0;for(;rowIndex<rowSpan;){const targetRow=row+rowIndex;if(filteredOutRowsByOtherColumns.has(targetRow)){rowIndex++;continue}const value=cell!=null&&cell.value?core.extractPureTextFromCell(cell.value):"";if(!value){emptyCount+=1,rowIndex+=rowSpan;continue}if(itemsByKey[value])itemsByKey[value].count++;else{const item={value,checked:alreadyChecked.size?alreadyChecked.has(value):!blankChecked,count:1,index:index2,isEmpty:!1};itemsByKey[value]=item,items.push(item)}rowIndex++}index2++}const initialBlankChecked=filters?blankChecked:!0;if(emptyCount>0){const item={value:localeService.t("sheets-filter.panel.empty"),checked:initialBlankChecked,count:emptyCount,index:index2,isEmpty:!0};items.push(item)}return items}__name(getFilterByValueItems,"getFilterByValueItems");var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$8"),FilterBy=(FilterBy2=>(FilterBy2[FilterBy2.VALUES=0]="VALUES",FilterBy2[FilterBy2.CONDITIONS=1]="CONDITIONS",FilterBy2))(FilterBy||{});core.createIdentifier("sheets-filter-ui.sheets-filter-panel.service");let SheetsFilterPanelService=(_b=class extends core.Disposable{constructor(_injector,_refRangeService){super();__publicField(this,"_filterBy$",new rxjs.BehaviorSubject(0));__publicField(this,"filterBy$",this._filterBy$.asObservable());__publicField(this,"_filterByModel$",new rxjs.ReplaySubject(1));__publicField(this,"filterByModel$",this._filterByModel$.asObservable());__publicField(this,"_filterByModel",null);__publicField(this,"_hasCriteria$",new rxjs.BehaviorSubject(!1));__publicField(this,"hasCriteria$",this._hasCriteria$.asObservable());__publicField(this,"_filterModel",null);__publicField(this,"_col$",new rxjs.BehaviorSubject(-1));__publicField(this,"col$",this._col$.asObservable());__publicField(this,"_filterHeaderListener",null);this._injector=_injector,this._refRangeService=_refRangeService}get filterBy(){return this._filterBy$.getValue()}get filterByModel(){return this._filterByModel}set filterByModel(model){this._filterByModel=model,this._filterByModel$.next(model)}get filterModel(){return this._filterModel}get col(){return this._col$.getValue()}dispose(){this._filterBy$.complete(),this._filterByModel$.complete(),this._hasCriteria$.complete()}setupCol(filterModel,col){this.terminate(),this._filterModel=filterModel,this._col$.next(col);const filterColumn=filterModel.getFilterColumn(col);if(filterColumn){const info=filterColumn.getColumnData();if(info.customFilters){this._hasCriteria$.next(!0),this._setupByConditions(filterModel,col);return}if(info.filters){this._hasCriteria$.next(!0),this._setupByValues(filterModel,col);return}this._hasCriteria$.next(!1),this._setupByValues(filterModel,col);return}this._hasCriteria$.next(!1),this._setupByValues(filterModel,col)}changeFilterBy(filterBy){return!this._filterModel||this.col===-1?!1:(filterBy===0?this._setupByValues(this._filterModel,this.col):this._setupByConditions(this._filterModel,this.col),!0)}terminate(){return this._filterModel=null,this._col$.next(-1),this._disposeFilterHeaderChangeListener(),!0}_disposeFilterHeaderChangeListener(){var _a2;(_a2=this._filterHeaderListener)==null||_a2.dispose(),this._filterHeaderListener=null}_listenToFilterHeaderChange(filterModel,col){this._disposeFilterHeaderChangeListener();const unitId=filterModel.unitId,subUnitId=filterModel.subUnitId,filterRange=filterModel.getRange(),columnHeaderRange={startColumn:col,startRow:filterRange.startRow,endRow:filterRange.startRow,endColumn:col};this._filterHeaderListener=this._refRangeService.watchRange(unitId,subUnitId,columnHeaderRange,(before,after)=>{if(!after)this.terminate();else{const offset=after.startColumn-before.startColumn;offset!==0&&this._filterByModel.deltaCol(offset)}})}async _setupByValues(filterModel,col){this._disposePreviousModel();const range=filterModel.getRange();if(range.startRow===range.endRow)return!1;const filterByModel=await ByValuesModel.fromFilterColumn(this._injector,filterModel,col);return this.filterByModel=filterByModel,this._filterBy$.next(0),this._listenToFilterHeaderChange(filterModel,col),!0}_setupByConditions(filterModel,col){this._disposePreviousModel();const range=filterModel.getRange();if(range.startRow===range.endRow)return!1;const model=ByConditionsModel.fromFilterColumn(this._injector,filterModel,col,filterModel.getFilterColumn(col));return this.filterByModel=model,this._filterBy$.next(1),this._listenToFilterHeaderChange(filterModel,col),!0}_disposePreviousModel(){var _a2;(_a2=this._filterByModel)==null||_a2.dispose(),this.filterByModel=null}},__name(_b,"SheetsFilterPanelService"),_b);SheetsFilterPanelService=__decorateClass$8([__decorateParam$8(0,core.Inject(core.Injector)),__decorateParam$8(1,core.Inject(sheets.RefRangeService))],SheetsFilterPanelService);let ByConditionsModel=(_c=class extends core.Disposable{constructor(_filterModel,col,conditionItem,conditionParams,_commandService){super();__publicField(this,"canApply$",rxjs.of(!0));__publicField(this,"_conditionItem$");__publicField(this,"conditionItem$");__publicField(this,"_filterConditionFormParams$");__publicField(this,"filterConditionFormParams$");this._filterModel=_filterModel,this.col=col,this._commandService=_commandService,this._conditionItem$=new rxjs.BehaviorSubject(conditionItem),this.conditionItem$=this._conditionItem$.asObservable(),this._filterConditionFormParams$=new rxjs.BehaviorSubject(conditionParams),this.filterConditionFormParams$=this._filterConditionFormParams$.asObservable()}static fromFilterColumn(injector,filterModel,col,filterColumn){const[conditionItem,conditionParams]=FilterConditionItems.testMappingFilterColumn(filterColumn==null?void 0:filterColumn.getColumnData());return injector.createInstance(ByConditionsModel,filterModel,col,conditionItem,conditionParams)}get conditionItem(){return this._conditionItem$.getValue()}get filterConditionFormParams(){return this._filterConditionFormParams$.getValue()}dispose(){super.dispose(),this._conditionItem$.complete(),this._filterConditionFormParams$.complete()}deltaCol(offset){this.col+=offset}clear(){return this._disposed?Promise.resolve(!1):this._commandService.executeCommand(SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null})}async apply(){if(this._disposed)return!1;const filterColumn=FilterConditionItems.mapToFilterColumn(this.conditionItem,this.filterConditionFormParams);return this._commandService.executeCommand(SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:filterColumn})}onPrimaryConditionChange(operator){const conditionItem=FilterConditionItems.ALL_CONDITIONS.find(item=>item.operator===operator);if(!conditionItem)throw new Error(`[ByConditionsModel]: condition item not found for operator: ${operator}!`);this._conditionItem$.next(conditionItem),this._filterConditionFormParams$.next(FilterConditionItems.getInitialFormParams(operator))}onConditionFormChange(params){const newParams={...this.filterConditionFormParams,...params};if(newParams.and!==!0&&delete newParams.and,typeof params.and<"u"||typeof params.operator1<"u"||typeof params.operator2<"u"){const conditionItem=FilterConditionItems.testMappingParams(newParams,this.conditionItem.numOfParameters);this._conditionItem$.next(conditionItem)}this._filterConditionFormParams$.next(newParams)}},__name(_c,"ByConditionsModel"),_c);ByConditionsModel=__decorateClass$8([__decorateParam$8(4,core.ICommandService)],ByConditionsModel);let ByValuesModel=(_d=class extends core.Disposable{constructor(_filterModel,col,items,_commandService){super();__publicField(this,"_rawFilterItems$");__publicField(this,"rawFilterItems$");__publicField(this,"filterItems$");__publicField(this,"_filterItems",[]);__publicField(this,"canApply$");__publicField(this,"_manuallyUpdateFilterItems$");__publicField(this,"_searchString$");__publicField(this,"searchString$");this._filterModel=_filterModel,this.col=col,this._commandService=_commandService,this._searchString$=new rxjs.BehaviorSubject(""),this.searchString$=this._searchString$.asObservable(),this._rawFilterItems$=new rxjs.BehaviorSubject(items),this.rawFilterItems$=this._rawFilterItems$.asObservable(),this._manuallyUpdateFilterItems$=new rxjs.Subject,this.filterItems$=rxjs.merge(rxjs.combineLatest([this._searchString$.pipe(rxjs.throttleTime(500,void 0,{leading:!0,trailing:!0}),rxjs.startWith(void 0)),this._rawFilterItems$]).pipe(rxjs.map(([searchString,items2])=>{if(!searchString)return items2;const searchKeyWords=searchString.toLowerCase().split(/\s+/).filter(s=>!!s);return items2.filter(item=>{const loweredItemValue=item.value.toLowerCase();return searchKeyWords.some(keyword=>loweredItemValue.includes(keyword))})})),this._manuallyUpdateFilterItems$).pipe(rxjs.shareReplay(1)),this.canApply$=this.filterItems$.pipe(rxjs.map(items2=>statisticFilterByValueItems(items2).checked>0)),this.disposeWithMe(this.filterItems$.subscribe(items2=>this._filterItems=items2))}static async fromFilterColumn(injector,filterModel,col){var _a2;const univerInstanceService=injector.get(core.IUniverInstanceService),localeService=injector.get(core.LocaleService),generateFilterValuesService=injector.get(ISheetsGenerateFilterValuesService,core.Quantity.OPTIONAL),{unitId,subUnitId}=filterModel,workbook=univerInstanceService.getUniverSheetInstance(unitId);if(!workbook)throw new Error(`[ByValuesModel]: Workbook not found for filter model with unitId: ${unitId}!`);const worksheet=workbook==null?void 0:workbook.getSheetBySheetId(subUnitId);if(!worksheet)throw new Error(`[ByValuesModel]: Worksheet not found for filter model with unitId: ${unitId} and subUnitId: ${subUnitId}!`);const range=filterModel.getRange(),column=col,filters=(_a2=filterModel.getFilterColumn(col))==null?void 0:_a2.getColumnData().filters,alreadyChecked=new Set(filters==null?void 0:filters.filters),blankChecked=!!(filters&&filters.blank),filteredOutRowsByOtherColumns=filterModel.getFilteredOutRowsExceptCol(col),iterateRange={...range,startRow:range.startRow+1,startColumn:column,endColumn:column};let items;return generateFilterValuesService?items=await generateFilterValuesService.getFilterValues({unitId,subUnitId,filteredOutRowsByOtherColumns:Array.from(filteredOutRowsByOtherColumns),filters:!!filters,blankChecked,iterateRange,alreadyChecked:Array.from(alreadyChecked)}):items=getFilterByValueItems(!!filters,blankChecked,localeService,iterateRange,worksheet,alreadyChecked,filteredOutRowsByOtherColumns),injector.createInstance(ByValuesModel,filterModel,col,items)}get rawFilterItems(){return this._rawFilterItems$.getValue()}get filterItems(){return this._filterItems}dispose(){this._rawFilterItems$.complete(),this._searchString$.complete()}deltaCol(offset){this.col+=offset}setSearchString(str){this._searchString$.next(str)}onFilterCheckToggled(item,checked){const items=this._filterItems.slice(),changedItem=items.find(i=>i.index===item.index);changedItem.checked=checked,this._manuallyUpdateFilterItems(items)}onFilterOnly(item){const items=this._filterItems.slice();items.forEach(i=>i.checked=i.index===item.index),this._manuallyUpdateFilterItems(items)}onCheckAllToggled(checked){const items=this._filterItems.slice();items.forEach(i=>i.checked=checked),this._manuallyUpdateFilterItems(items)}_manuallyUpdateFilterItems(items){this._manuallyUpdateFilterItems$.next(items)}clear(){return this._disposed?Promise.resolve(!1):this._commandService.executeCommand(SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null})}async apply(){if(this._disposed)return!1;const statistics=statisticFilterByValueItems(this._filterItems),{checked,checkedItems}=statistics,rawFilterItems=this.rawFilterItems,noChecked=checked===0,allChecked=statistics.checked===rawFilterItems.length,criteria={colId:this.col};if(noChecked)throw new Error("[ByValuesModel]: no checked items!");if(allChecked)return this._commandService.executeCommand(SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});{criteria.filters={};const nonEmptyItems=checkedItems.filter(item=>!item.isEmpty);nonEmptyItems.length>0&&(criteria.filters={filters:nonEmptyItems.map(item=>item.value)}),nonEmptyItems.length!==checkedItems.length&&(criteria.filters.blank=!0)}return this._commandService.executeCommand(SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria})}},__name(_d,"ByValuesModel"),_d);ByValuesModel=__decorateClass$8([__decorateParam$8(3,core.ICommandService)],ByValuesModel);const FILTER_PANEL_OPENED_KEY="FILTER_PANEL_OPENED",OpenFilterPanelOperation={id:"sheet.operation.open-filter-panel",type:core.CommandType.OPERATION,handler:__name((accessor,params)=>{const contextService=accessor.get(core.IContextService),sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService),sheetsFilterPanelService=accessor.get(SheetsFilterPanelService);accessor.get(core.ICommandService).syncExecuteCommand(sheetsUi.SetCellEditVisibleOperation.id,{visible:!1});const{unitId,subUnitId,col}=params,filterModel=sheetsFilterService.getFilterModel(unitId,subUnitId);return filterModel?(sheetsFilterPanelService.setupCol(filterModel,col),contextService.getContextValue(FILTER_PANEL_OPENED_KEY)||contextService.setContextValue(FILTER_PANEL_OPENED_KEY,!0),!0):!1},"handler")},CloseFilterPanelOperation={id:"sheet.operation.close-filter-panel",type:core.CommandType.OPERATION,handler:__name(accessor=>{const contextService=accessor.get(core.IContextService),sheetsFilterPanelService=accessor.get(SheetsFilterPanelService),layoutService=accessor.get(ui.ILayoutService,core.Quantity.OPTIONAL);return contextService.getContextValue(FILTER_PANEL_OPENED_KEY)?(contextService.setContextValue(FILTER_PANEL_OPENED_KEY,!1),layoutService==null||layoutService.focus(),sheetsFilterPanelService.terminate()):!1},"handler")},ChangeFilterByOperation={id:"sheet.operation.apply-filter",type:core.CommandType.OPERATION,handler:__name((accessor,params)=>{const{filterBy}=params;return accessor.get(SheetsFilterPanelService).changeFilterBy(filterBy)},"handler")};var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$7");let SheetsFilterPermissionController=(_e=class extends core.Disposable{constructor(_sheetsFilterService,_localeService,_commandService,_sheetPermissionInterceptorBaseController,_injector,_sheetsSelectionService){super(),this._sheetsFilterService=_sheetsFilterService,this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._injector=_injector,this._sheetsSelectionService=_sheetsSelectionService,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{var _a2,_b2,_c2;if(command.id===SmartToggleSheetsFilterCommand.id){const univerInstanceService=this._injector.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return;const{unitId,subUnitId,worksheet}=target,filterRange=(_a2=this._sheetsFilterService.getFilterModel(unitId,subUnitId))==null?void 0:_a2.getRange();let permission;if(filterRange)permission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[sheets.RangeProtectionPermissionViewPoint],worksheetTypes:[sheets.WorksheetFilterPermission,sheets.WorksheetViewPermission]},[filterRange]);else{const range=(_b2=this._sheetsSelectionService.getCurrentLastSelection())==null?void 0:_b2.range;if(range){let newRange={...range};newRange=range.startColumn===range.endColumn&&range.startRow===range.endRow?sheets.expandToContinuousRange(newRange,{left:!0,right:!0,up:!0,down:!0},worksheet):newRange,permission=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[sheets.RangeProtectionPermissionViewPoint],worksheetTypes:[sheets.WorksheetViewPermission,sheets.WorksheetFilterPermission]},[newRange],unitId,subUnitId)}else permission=this._sheetPermissionInterceptorBaseController.permissionCheckWithoutRange({rangeTypes:[sheets.RangeProtectionPermissionViewPoint],worksheetTypes:[sheets.WorksheetViewPermission,sheets.WorksheetFilterPermission]})}permission||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr"))}if(command.id===OpenFilterPanelOperation.id){const params=command.params,{unitId,subUnitId}=params,filterRange=(_c2=this._sheetsFilterService.getFilterModel(unitId,subUnitId))==null?void 0:_c2.getRange(),colRange=core.Tools.deepClone(filterRange);colRange&&(colRange.startColumn=params.col,colRange.endColumn=params.col,this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[sheets.RangeProtectionPermissionViewPoint],worksheetTypes:[sheets.WorksheetFilterPermission,sheets.WorksheetViewPermission]},[colRange])||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr")))}}))}},__name(_e,"SheetsFilterPermissionController"),_e);SheetsFilterPermissionController=__decorateClass$7([__decorateParam$7(0,core.Inject(sheetsFilter.SheetsFilterService)),__decorateParam$7(1,core.Inject(core.LocaleService)),__decorateParam$7(2,core.ICommandService),__decorateParam$7(3,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController)),__decorateParam$7(4,core.Inject(core.Injector)),__decorateParam$7(5,core.Inject(sheets.SheetsSelectionsService))],SheetsFilterPermissionController);var __assign=function(){return __assign=Object.assign||function(t2){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t2[p2]=s[p2])}return t2},__assign.apply(this,arguments)},__rest=function(s,e2){var t2={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e2.indexOf(p2)<0&&(t2[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e2.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t2[p2[i]]=s[p2[i]]);return t2},IconBase=React.forwardRef(function(props,ref){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=React.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return React.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index2){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index2),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a2){var key=_a2[0],value=_a2[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a2,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a2=node.children)===null||_a2===void 0)&&_a2.length)?__assign(__assign({},node),{children:node.children.map(function(child){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})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid"),IconBase.displayName="UniverIcon";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=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"filter-single",ref,icon:element}))});FilterSingle.displayName="FilterSingle";const styles={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"};function FilterByCondition(props){const{model}=props,localeService=core.useDependency(core.LocaleService),condition=ui.useObservable(model.conditionItem$,void 0,!0),formParams=ui.useObservable(model.filterConditionFormParams$,void 0,!0),{operator,numOfParameters}=condition,{operator1,operator2,val1,val2,and}=formParams,radioValue=and?"AND":"OR",onRadioChange=React.useCallback(key=>{model.onConditionFormChange({and:key==="AND"})},[model]),primaryOptions=usePrimaryOptions(localeService),onPrimaryConditionChange=React.useCallback(value=>{model.onPrimaryConditionChange(value)},[model]),secondaryOptions=useSecondaryOptions(localeService),onFormParamsChange=React.useCallback(diffParams=>{model.onConditionFormChange(diffParams)},[model]),placeholder=localeService.t("sheets-filter.panel.input-values-placeholder");function renderSecondaryCondition(operator3,val,name){const shouldRenderInput=FilterConditionItems.getItemByOperator(operator3).numOfParameters===1;return React.createElement(React.Fragment,null,name==="operator2"&&React.createElement(design.RadioGroup,{value:radioValue,onChange:onRadioChange},React.createElement(design.Radio,{value:"AND"},localeService.t("sheets-filter.panel.and")),React.createElement(design.Radio,{value:"OR"},localeService.t("sheets-filter.panel.or"))),React.createElement(design.Select,{value:operator3,options:secondaryOptions,onChange:__name(operator4=>onFormParamsChange({[name]:operator4}),"onChange")}),shouldRenderInput&&React.createElement("div",null,React.createElement(design.Input,{value:val,placeholder,onChange:__name(value=>onFormParamsChange({[name==="operator1"?"val1":"val2"]:value}),"onChange")})))}return __name(renderSecondaryCondition,"renderSecondaryCondition"),React.createElement("div",{className:styles.sheetsFilterPanelConditionsContainer},React.createElement(design.Select,{value:operator,options:primaryOptions,onChange:onPrimaryConditionChange}),FilterConditionItems.getItemByOperator(operator).numOfParameters!==0?React.createElement("div",{className:styles.sheetsFilterPanelConditionsContainerInner},numOfParameters>=1&&renderSecondaryCondition(operator1,val1!=null?val1:"","operator1"),numOfParameters>=2&&renderSecondaryCondition(operator2,val2!=null?val2:"","operator2"),React.createElement("div",{className:styles.sheetsFilterPanelConditionsDesc},localeService.t("sheets-filter.panel.?"),React.createElement("br",null),localeService.t("sheets-filter.panel.*"))):null)}__name(FilterByCondition,"FilterByCondition");function usePrimaryOptions(localeService){const locale=localeService.getCurrentLocale();return React.useMemo(()=>[{options:[{label:localeService.t(FilterConditionItems.NONE.label),value:FilterConditionItems.NONE.operator}]},{options:[{label:localeService.t(FilterConditionItems.EMPTY.label),value:FilterConditionItems.EMPTY.operator},{label:localeService.t(FilterConditionItems.NOT_EMPTY.label),value:FilterConditionItems.NOT_EMPTY.operator}]},{options:[{label:localeService.t(FilterConditionItems.TEXT_CONTAINS.label),value:FilterConditionItems.TEXT_CONTAINS.operator},{label:localeService.t(FilterConditionItems.DOES_NOT_CONTAIN.label),value:FilterConditionItems.DOES_NOT_CONTAIN.operator},{label:localeService.t(FilterConditionItems.STARTS_WITH.label),value:FilterConditionItems.STARTS_WITH.operator},{label:localeService.t(FilterConditionItems.ENDS_WITH.label),value:FilterConditionItems.ENDS_WITH.operator},{label:localeService.t(FilterConditionItems.EQUALS.label),value:FilterConditionItems.EQUALS.operator}]},{options:[{label:localeService.t(FilterConditionItems.GREATER_THAN.label),value:FilterConditionItems.GREATER_THAN.operator},{label:localeService.t(FilterConditionItems.GREATER_THAN_OR_EQUAL.label),value:FilterConditionItems.GREATER_THAN_OR_EQUAL.operator},{label:localeService.t(FilterConditionItems.LESS_THAN.label),value:FilterConditionItems.LESS_THAN.operator},{label:localeService.t(FilterConditionItems.LESS_THAN_OR_EQUAL.label),value:FilterConditionItems.LESS_THAN_OR_EQUAL.operator},{label:localeService.t(FilterConditionItems.EQUAL.label),value:FilterConditionItems.EQUAL.operator},{label:localeService.t(FilterConditionItems.NOT_EQUAL.label),value:FilterConditionItems.NOT_EQUAL.operator},{label:localeService.t(FilterConditionItems.BETWEEN.label),value:FilterConditionItems.BETWEEN.operator},{label:localeService.t(FilterConditionItems.NOT_BETWEEN.label),value:FilterConditionItems.NOT_BETWEEN.operator}]},{options:[{label:localeService.t(FilterConditionItems.CUSTOM.label),value:FilterConditionItems.CUSTOM.operator}]}],[locale,localeService])}__name(usePrimaryOptions,"usePrimaryOptions");function useSecondaryOptions(localeService){const locale=localeService.getCurrentLocale();return React.useMemo(()=>FilterConditionItems.ALL_CONDITIONS.filter(c2=>c2.numOfParameters!==2).map(c2=>({label:localeService.t(c2.label),value:c2.operator})),[locale,localeService])}__name(useSecondaryOptions,"useSecondaryOptions");function _extends(){return _extends=Object.assign?Object.assign.bind():function(n2){for(var e2=1;e2<arguments.length;e2++){var t2=arguments[e2];for(var r in t2)({}).hasOwnProperty.call(t2,r)&&(n2[r]=t2[r])}return n2},_extends.apply(null,arguments)}__name(_extends,"_extends");function _typeof(o){"@babel/helpers - typeof";return _typeof=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o2){return typeof o2}:function(o2){return o2&&typeof Symbol=="function"&&o2.constructor===Symbol&&o2!==Symbol.prototype?"symbol":typeof o2},_typeof(o)}__name(_typeof,"_typeof");function toPrimitive(t2,r){if(_typeof(t2)!="object"||!t2)return t2;var e2=t2[Symbol.toPrimitive];if(e2!==void 0){var i=e2.call(t2,r||"default");if(_typeof(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(t2)}__name(toPrimitive,"toPrimitive");function toPropertyKey(t2){var i=toPrimitive(t2,"string");return _typeof(i)=="symbol"?i:i+""}__name(toPropertyKey,"toPropertyKey");function _defineProperty(e2,r,t2){return(r=toPropertyKey(r))in e2?Object.defineProperty(e2,r,{value:t2,enumerable:!0,configurable:!0,writable:!0}):e2[r]=t2,e2}__name(_defineProperty,"_defineProperty");function ownKeys(e2,r){var t2=Object.keys(e2);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e2);r&&(o=o.filter(function(r2){return Object.getOwnPropertyDescriptor(e2,r2).enumerable})),t2.push.apply(t2,o)}return t2}__name(ownKeys,"ownKeys");function _objectSpread2(e2){for(var r=1;r<arguments.length;r++){var t2=arguments[r]!=null?arguments[r]:{};r%2?ownKeys(Object(t2),!0).forEach(function(r2){_defineProperty(e2,r2,t2[r2])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e2,Object.getOwnPropertyDescriptors(t2)):ownKeys(Object(t2)).forEach(function(r2){Object.defineProperty(e2,r2,Object.getOwnPropertyDescriptor(t2,r2))})}return e2}__name(_objectSpread2,"_objectSpread2");function _arrayWithHoles(r){if(Array.isArray(r))return r}__name(_arrayWithHoles,"_arrayWithHoles");function _iterableToArrayLimit(r,l2){var t2=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t2!=null){var e2,n2,i,u2,a=[],f2=!0,o=!1;try{if(i=(t2=t2.call(r)).next,l2===0){if(Object(t2)!==t2)return;f2=!1}else for(;!(f2=(e2=i.call(t2)).done)&&(a.push(e2.value),a.length!==l2);f2=!0);}catch(r2){o=!0,n2=r2}finally{try{if(!f2&&t2.return!=null&&(u2=t2.return(),Object(u2)!==u2))return}finally{if(o)throw n2}}return a}}__name(_iterableToArrayLimit,"_iterableToArrayLimit");function _arrayLikeToArray(r,a){(a==null||a>r.length)&&(a=r.length);for(var e2=0,n2=Array(a);e2<a;e2++)n2[e2]=r[e2];return n2}__name(_arrayLikeToArray,"_arrayLikeToArray");function _unsupportedIterableToArray(r,a){if(r){if(typeof r=="string")return _arrayLikeToArray(r,a);var t2={}.toString.call(r).slice(8,-1);return t2==="Object"&&r.constructor&&(t2=r.constructor.name),t2==="Map"||t2==="Set"?Array.from(r):t2==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t2)?_arrayLikeToArray(r,a):void 0}}__name(_unsupportedIterableToArray,"_unsupportedIterableToArray");function _nonIterableRest(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}__name(_nonIterableRest,"_nonIterableRest");function _slicedToArray(r,e2){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e2)||_unsupportedIterableToArray(r,e2)||_nonIterableRest()}__name(_slicedToArray,"_slicedToArray");function _objectWithoutPropertiesLoose(r,e2){if(r==null)return{};var t2={};for(var n2 in r)if({}.hasOwnProperty.call(r,n2)){if(e2.indexOf(n2)>=0)continue;t2[n2]=r[n2]}return t2}__name(_objectWithoutPropertiesLoose,"_objectWithoutPropertiesLoose");function _objectWithoutProperties(e2,t2){if(e2==null)return{};var o,r,i=_objectWithoutPropertiesLoose(e2,t2);if(Object.getOwnPropertySymbols){var n2=Object.getOwnPropertySymbols(e2);for(r=0;r<n2.length;r++)o=n2[r],t2.indexOf(o)>=0||{}.propertyIsEnumerable.call(e2,o)&&(i[o]=e2[o])}return i}__name(_objectWithoutProperties,"_objectWithoutProperties");function getDefaultExportFromCjs(x){return x&&x.__esModule&&Object.prototype.hasOwnProperty.call(x,"default")?x.default:x}__name(getDefaultExportFromCjs,"getDefaultExportFromCjs");var classnames={exports:{}};/*!
3
- Copyright (c) 2018 Jed Watson.
4
- Licensed under the MIT License (MIT), see
5
- http://jedwatson.github.io/classnames
6
- */(function(module2){(function(){var hasOwn={}.hasOwnProperty;function classNames2(){for(var classes="",i=0;i<arguments.length;i++){var arg=arguments[i];arg&&(classes=appendClass(classes,parseValue(arg)))}return classes}__name(classNames2,"classNames");function parseValue(arg){if(typeof arg=="string"||typeof arg=="number")return arg;if(typeof arg!="object")return"";if(Array.isArray(arg))return classNames2.apply(null,arg);if(arg.toString!==Object.prototype.toString&&!arg.toString.toString().includes("[native code]"))return arg.toString();var classes="";for(var key in arg)hasOwn.call(arg,key)&&arg[key]&&(classes=appendClass(classes,key));return classes}__name(parseValue,"parseValue");function appendClass(value,newClass){return newClass?value?value+" "+newClass:value+newClass:value}__name(appendClass,"appendClass"),module2.exports?(classNames2.default=classNames2,module2.exports=classNames2):window.classNames=classNames2})()})(classnames);var classnamesExports=classnames.exports;const classNames=getDefaultExportFromCjs(classnamesExports);var reactIs={exports:{}},reactIs_production_min={};/**
1
+ (function(_,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/rpc"),require("@univerjs/sheets-filter"),require("@univerjs/sheets"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("rxjs"),require("@univerjs/design"),require("@univerjs/engine-render"),require("react")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/rpc","@univerjs/sheets-filter","@univerjs/sheets","@univerjs/sheets-ui","@univerjs/ui","rxjs","@univerjs/design","@univerjs/engine-render","react"],c):(_=typeof globalThis<"u"?globalThis:_||self,c(_.UniverSheetsFilterUi={},_.UniverCore,_.UniverRpc,_.UniverSheetsFilter,_.UniverSheets,_.UniverSheetsUi,_.UniverUi,_.rxjs,_.UniverDesign,_.UniverEngineRender,_.React))})(this,function(_,c,k,u,O,D,F,C,U,oe,y){"use strict";var ar=Object.defineProperty;var lr=(_,c,k)=>c in _?ar(_,c,{enumerable:!0,configurable:!0,writable:!0,value:k}):_[c]=k;var S=(_,c,k)=>lr(_,typeof c!="symbol"?c+"":c,k);var ge;const Ue="sheets-filter-ui.config",we={};var R=(t=>(t[t.FIRST=0]="FIRST",t[t.SECOND=1]="SECOND",t))(R||{}),g=(t=>(t.NONE="none",t.STARTS_WITH="startsWith",t.DOES_NOT_START_WITH="doesNotStartWith",t.ENDS_WITH="endsWith",t.DOES_NOT_END_WITH="doesNotEndWith",t.CONTAINS="contains",t.DOES_NOT_CONTAIN="doesNotContain",t.EQUALS="equals",t.NOT_EQUALS="notEquals",t.EMPTY="empty",t.NOT_EMPTY="notEmpty",t.BETWEEN="between",t.NOT_BETWEEN="notBetween",t.CUSTOM="custom",t))(g||{}),p;(t=>{t.NONE={label:"sheets-filter.conditions.none",operator:g.NONE,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NONE]: should not have initial form params!")},testMappingParams:n=>n.operator1===g.NONE,mapToFilterColumn:()=>null,testMappingFilterColumn:n=>!n.customFilters&&!n.filters?{}:!1},t.EMPTY={label:"sheets-filter.conditions.empty",operator:g.EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.EMPTY]: should not have initial form params!")},testMappingParams:({operator1:n})=>n===g.EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:""}]}}),testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.val===""&&o.operator===void 0?{operator1:g.EMPTY}:!1}},t.NOT_EMPTY={label:"sheets-filter.conditions.not-empty",operator:g.NOT_EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NOT_EMPTY]: should not have initial form params!")},testMappingParams:({operator1:n})=>n===g.NOT_EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:"",operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.val===" "&&o.operator===u.CustomFilterOperator.NOT_EQUALS?{operator1:g.NOT_EMPTY}:!1}},t.TEXT_CONTAINS={label:"sheets-filter.conditions.text-contains",operator:g.CONTAINS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:g.CONTAINS,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===g.CONTAINS},mapToFilterColumn:n=>{const{val1:o}=n;return o===""?null:{customFilters:{customFilters:[{val:`*${o}*`}]}}},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0],a=o.val.toString();return!o.operator&&a.startsWith("*")&&a.endsWith("*")?{operator1:g.CONTAINS,val1:a.slice(1,-1)}:!1}},t.DOES_NOT_CONTAIN={label:"sheets-filter.conditions.does-not-contain",operator:g.DOES_NOT_CONTAIN,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:g.DOES_NOT_CONTAIN,val1:""}),mapToFilterColumn:n=>({customFilters:{customFilters:[{val:`*${n.val1}*`,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingParams:n=>{const[o]=V(n);return o===g.DOES_NOT_CONTAIN},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0],a=o.val.toString();return o.operator===u.CustomFilterOperator.NOT_EQUALS&&a.startsWith("*")&&a.endsWith("*")?{operator1:g.DOES_NOT_CONTAIN,val1:a.slice(1,-1)}:!1}},t.STARTS_WITH={label:"sheets-filter.conditions.starts-with",operator:g.STARTS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:g.STARTS_WITH,val1:""}),mapToFilterColumn:n=>({customFilters:{customFilters:[{val:`${n.val1}*`}]}}),testMappingParams:n=>{const[o]=V(n);return o===g.STARTS_WITH},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0],a=o.val.toString();return!o.operator&&a.endsWith("*")&&!a.startsWith("*")?{operator1:g.STARTS_WITH,val1:a.slice(0,-1)}:!1}},t.ENDS_WITH={label:"sheets-filter.conditions.ends-with",operator:g.ENDS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:g.ENDS_WITH,val1:""}),mapToFilterColumn:n=>({customFilters:{customFilters:[{val:`*${n.val1}`}]}}),testMappingParams:n=>{const[o]=V(n);return o===g.ENDS_WITH},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0],a=o.val.toString();return!o.operator&&a.startsWith("*")&&!a.endsWith("*")?{operator1:g.ENDS_WITH,val1:a.slice(1)}:!1}},t.EQUALS={label:"sheets-filter.conditions.equals",operator:g.EQUALS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:g.EQUALS,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===g.EQUALS},mapToFilterColumn:n=>{const{val1:o}=n;return o===""?null:{customFilters:{customFilters:[{val:o}]}}},testMappingFilterColumn:n=>{var o,a,h;return((a=(o=n.filters)==null?void 0:o.filters)==null?void 0:a.length)===1?{operator1:g.EQUALS,val1:""}:((h=n.customFilters)==null?void 0:h.customFilters.length)===1&&!n.customFilters.customFilters[0].operator?{operator1:g.EQUALS,val1:n.customFilters.customFilters[0].val.toString()}:!1}},t.GREATER_THAN={label:"sheets-filter.conditions.greater-than",operator:u.CustomFilterOperator.GREATER_THAN,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.GREATER_THAN,val1:""}),mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.GREATER_THAN}]}}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.GREATER_THAN},testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.GREATER_THAN?!1:{operator1:u.CustomFilterOperator.GREATER_THAN,val1:o.val.toString()}}},t.GREATER_THAN_OR_EQUAL={label:"sheets-filter.conditions.greater-than-or-equal",operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL}]}}),testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.GREATER_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:o.val.toString()}}},t.LESS_THAN={label:"sheets-filter.conditions.less-than",operator:u.CustomFilterOperator.LESS_THAN,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.LESS_THAN,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.LESS_THAN},mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.LESS_THAN}]}}),testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.LESS_THAN?!1:{operator1:u.CustomFilterOperator.LESS_THAN,val1:o.val.toString()}}},t.LESS_THAN_OR_EQUAL={label:"sheets-filter.conditions.less-than-or-equal",operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.LESS_THAN_OR_EQUAL},mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}),testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.LESS_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:o.val.toString()}}},t.EQUAL={label:"sheets-filter.conditions.equal",operator:u.CustomFilterOperator.EQUAL,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.EQUAL,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.EQUAL},mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.EQUAL}]}}),testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.EQUAL?!1:{operator1:u.CustomFilterOperator.EQUAL,val1:o.val.toString()}}},t.NOT_EQUAL={label:"sheets-filter.conditions.not-equal",operator:u.CustomFilterOperator.NOT_EQUALS,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.NOT_EQUALS,val1:""}),testMappingParams:n=>{const[o]=V(n);return o===u.CustomFilterOperator.NOT_EQUALS},mapToFilterColumn:n=>({customFilters:{customFilters:[{val:n.val1,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:n=>{var a;if(((a=n.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const o=n.customFilters.customFilters[0];return o.operator!==u.CustomFilterOperator.NOT_EQUALS?!1:{operator1:u.CustomFilterOperator.NOT_EQUALS,val1:o.val.toString()}}},t.BETWEEN={label:"sheets-filter.conditions.between",operator:g.BETWEEN,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:"",operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:""}),testMappingParams:n=>{const{and:o,operator1:a,operator2:h}=n;if(!o)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN_OR_EQUAL)&&m.includes(u.CustomFilterOperator.LESS_THAN_OR_EQUAL)},mapToFilterColumn:n=>{const{val1:o,val2:a,operator1:h}=n,m=h===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL;return{customFilters:{and:c.BooleanNumber.TRUE,customFilters:[{val:m?o:a,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},{val:m?a:o,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[o,a]=n.customFilters.customFilters;return o.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&a.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&n.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:o.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&o.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&n.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:o.val.toLocaleString()}:!1}},t.NOT_BETWEEN={label:"sheets-filter.conditions.not-between",operator:g.NOT_BETWEEN,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.LESS_THAN,val1:"",operator2:u.CustomFilterOperator.GREATER_THAN,val2:""}),testMappingParams:n=>{const{and:o,operator1:a,operator2:h}=n;if(o)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN)&&m.includes(u.CustomFilterOperator.LESS_THAN)},mapToFilterColumn:n=>{const{val1:o,val2:a,operator1:h}=n,m=h===u.CustomFilterOperator.GREATER_THAN;return{customFilters:{customFilters:[{val:m?o:a,operator:u.CustomFilterOperator.GREATER_THAN},{val:m?a:o,operator:u.CustomFilterOperator.LESS_THAN}]}}},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[o,a]=n.customFilters.customFilters;return o.operator===u.CustomFilterOperator.LESS_THAN&&a.operator===u.CustomFilterOperator.GREATER_THAN&&!n.customFilters.and?{operator1:u.CustomFilterOperator.LESS_THAN,val1:o.val.toString(),operator2:u.CustomFilterOperator.GREATER_THAN,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.LESS_THAN&&o.operator===u.CustomFilterOperator.GREATER_THAN&&!n.customFilters.and?{operator1:u.CustomFilterOperator.GREATER_THAN,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN,val2:o.val.toLocaleString()}:!1}},t.CUSTOM={label:"sheets-filter.conditions.custom",operator:g.CUSTOM,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:g.NONE,val1:"",operator2:g.NONE,val2:""}),testMappingParams:()=>!0,mapToFilterColumn:n=>{const{and:o,val1:a,val2:h,operator1:m,operator2:d}=n;function T(w,$){for(const N of t.ALL_CONDITIONS)if(N.operator===w)return N.mapToFilterColumn({val1:$,operator1:w})}const v=!m||m===t.NONE.operator,E=!d||d===t.NONE.operator;if(v&&E)return t.NONE.mapToFilterColumn({});if(v)return T(d,h);if(E)return T(m,a);const P=T(m,a),L=T(d,h),A={customFilters:[P.customFilters.customFilters[0],L.customFilters.customFilters[0]]};return o&&(A.and=c.BooleanNumber.TRUE),{customFilters:A}},testMappingFilterColumn:n=>{var h;if(((h=n.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const o=n.customFilters.customFilters.map(m=>l({customFilters:{customFilters:[m]}})),a={operator1:o[0][0].operator,val1:o[0][1].val1,operator2:o[1][0].operator,val2:o[1][1].val1};return n.customFilters.and&&(a.and=!0),a}},t.ALL_CONDITIONS=[t.NONE,t.EMPTY,t.NOT_EMPTY,t.TEXT_CONTAINS,t.DOES_NOT_CONTAIN,t.STARTS_WITH,t.ENDS_WITH,t.EQUALS,t.GREATER_THAN,t.GREATER_THAN_OR_EQUAL,t.LESS_THAN,t.LESS_THAN_OR_EQUAL,t.EQUAL,t.NOT_EQUAL,t.BETWEEN,t.NOT_BETWEEN,t.CUSTOM];function e(n){const o=t.ALL_CONDITIONS.find(a=>a.operator===n);if(!o)throw new Error(`[SheetsFilter]: no condition item found for operator: ${n}`);return o}t.getItemByOperator=e;function r(n,o){for(const a of t.ALL_CONDITIONS.filter(h=>h.numOfParameters===o))if(a.numOfParameters!==0&&a.testMappingParams(n))return a;for(const a of t.ALL_CONDITIONS)if(a.testMappingParams(n))return a;throw new Error("[SheetsFilter]: no condition item can be mapped from the filter map params!")}t.testMappingParams=r;function i(n){const o=t.ALL_CONDITIONS.find(a=>a.operator===n);return(o==null?void 0:o.numOfParameters)===0?{operator1:o.operator}:o.getDefaultFormParams()}t.getInitialFormParams=i;function s(n,o){return n.mapToFilterColumn(o)}t.mapToFilterColumn=s;function l(n){if(!n)return[t.NONE,{}];for(const o of t.ALL_CONDITIONS){const a=o.testMappingFilterColumn(n);if(a)return[o,a]}return[t.NONE,{}]}t.testMappingFilterColumn=l})(p||(p={}));function V(t){const{operator1:e,operator2:r,val1:i,val2:s}=t;if(e&&r)throw new Error("Both operator1 and operator2 are set!");if(!e&&!r)throw new Error("Neither operator1 and operator2 and both not set!");return e?[e,i]:[r,s]}function Te(t){const e=[],r=[];let i=0,s=0;function l(n){n.leaf&&(n.checked?(e.push(n),i+=n.count):(r.push(n),s+=n.count)),n.children&&n.children.forEach(l)}return t.forEach(l),{checkedItems:e,uncheckedItems:r,checked:i,unchecked:s}}var et=Object.defineProperty,tt=Object.getOwnPropertyDescriptor,rt=(t,e,r,i)=>{for(var s=i>1?void 0:i?tt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&et(e,r,s),s},Fe=(t,e)=>(r,i)=>e(r,i,t);const Ee="sheets-filter.generate-filter-values.service",he=c.createIdentifier(Ee),nt=["yyyy-mm-dd","yyyy-mm-dd;@","yyyy/mm/dd;@","yyyy/mm/dd hh:mm","yyyy-m-d am/pm h:mm","yyyy-MM-dd","yyyy/MM/dd","yyyy/mm/dd",'yyyy"年"MM"月"dd"日"',"MM-dd",'M"月"d"日"',"MM-dd A/P hh:mm"];let Oe=class extends c.Disposable{constructor(t,e,r){super(),this._localeService=t,this._univerInstanceService=e,this._logService=r}async getFilterValues(t){var m;const{unitId:e,subUnitId:r,filteredOutRowsByOtherColumns:i,filters:s,blankChecked:l,iterateRange:n,alreadyChecked:o}=t,a=this._univerInstanceService.getUnit(e),h=(m=this._univerInstanceService.getUnit(e))==null?void 0:m.getSheetBySheetId(r);return!a||!h?[]:(this._logService.debug("[SheetsGenerateFilterValuesService]","getFilterValues for",{unitId:e,subUnitId:r}),$e(s,this._localeService,n,h,new Set(i),new Set(o.map(String)),l,a.getStyles()))}};Oe=rt([Fe(0,c.Inject(c.LocaleService)),Fe(1,c.IUniverInstanceService),Fe(2,c.ILogService)],Oe);function $e(t,e,r,i,s,l,n,o){var P,L,A,w,$,N,j,K,ne;const a=new Map,h=new Map,m="yyyy-mm-dd",d=new Set(nt),T="empty";let v=0;for(const b of i.iterateByColumn(r,!1,!1)){const{row:ir,rowSpan:Je=1}=b;let ie=0;for(;ie<Je;){const sr=ir+ie;if(s.has(sr)){ie++;continue}const q=b!=null&&b.value?c.extractPureTextFromCell(b.value):"";if(!q){v+=1,ie+=Je;continue}const Ce=(P=b.value)!=null&&P.v&&!b.value.p?(w=(A=o.get((L=b.value)==null?void 0:L.s))==null?void 0:A.n)==null?void 0:w.pattern:"",or=Ce&&c.numfmt.isDate(Ce);if(Ce&&or&&d.has(Ce)){const X=($=i.getCellRaw(b.row,b.col))==null?void 0:$.v;if(!X){ie++;continue}const se=c.numfmt.format(m,X),[M,W,ue]=se.split("-").map(Number);let z=a.get(`${M}`);z||(z={title:`${M}`,key:`${M}`,children:[],count:0,leaf:!1,checked:!1},a.set(`${M}`,z),h.set(`${M}`,[`${M}`]));let Q=(N=z.children)==null?void 0:N.find(Me=>Me.key===`${M}-${W}`);Q||(Q={title:e.t(`sheets-filter.date.${W}`),key:`${M}-${W}`,children:[],count:0,leaf:!1,checked:!1},(j=z.children)==null||j.push(Q),h.set(`${M}-${W}`,[`${M}`,`${M}-${W}`]));const Le=(K=Q==null?void 0:Q.children)==null?void 0:K.find(Me=>Me.key===`${M}-${W}-${ue}`);Le?(Le.originValues.add(q),Le.count++,Q.count++,z.count++):((ne=Q.children)==null||ne.push({title:`${ue}`,key:`${M}-${W}-${ue}`,count:1,originValues:new Set([q]),leaf:!0,checked:l.size?l.has(q):!n}),Q.count++,z.count++,h.set(`${M}-${W}-${ue}`,[`${M}`,`${M}-${W}`,`${M}-${W}-${ue}`]))}else{const X=q;let se=a.get(X);se?se.count++:(se={title:q,leaf:!0,checked:l.size?l.has(q):!n,key:X,count:1},a.set(X,se),h.set(X,[X]))}ie++}}const E=t?n:!0;if(v>0){const b={title:e.t("sheets-filter.panel.empty"),count:v,leaf:!0,checked:E,key:T};a.set("empty",b),h.set("empty",[T])}return{filterTreeItems:it(Array.from(a.values())),filterTreeMapCache:h}}function it(t){return Array.from(t).sort((e,r)=>e.children&&!r.children?-1:!e.children&&r.children?1:r.title.localeCompare(e.title)).map(e=>(e.children&&e.children.sort((r,i)=>{const s=Number.parseInt(r.key.split("-")[1],10),l=Number.parseInt(i.key.split("-")[1],10);return s-l}).forEach(r=>{r.children&&r.children.sort((i,s)=>{const l=Number.parseInt(i.key.split("-")[2],10),n=Number.parseInt(s.key.split("-")[2],10);return l-n})}),e))}function Pe(t,e){for(const r of t){if(r.key===e)return r;if(r.children){const i=Pe(r.children,e);if(i)return i}}return null}function De(t){return t.leaf?t.checked:t.children?t.children.every(e=>De(e)):!0}function ae(t,e){t.leaf&&(e!==void 0?t.checked=e:t.checked=!t.checked),t.children&&t.children.forEach(r=>ae(r,e))}function He(t,e){const r=[];return t.forEach(i=>{const s=i.originValues?e.some(o=>Array.from(i.originValues).some(a=>a.toLowerCase().includes(o.toLowerCase()))):!1,l=!s&&e.some(o=>i.title.toLowerCase().includes(o.toLowerCase()));if(s||l)r.push({...i});else if(i.children){const o=He(i.children,e);if(o.length>0){const a=o.reduce((h,m)=>h+m.count,0);r.push({...i,count:a,children:o})}}}),r}var st=Object.defineProperty,ot=Object.getOwnPropertyDescriptor,Ie=(t,e,r,i)=>{for(var s=i>1?void 0:i?ot(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&st(e,r,s),s},me=(t,e)=>(r,i)=>e(r,i,t),pe=(t=>(t[t.VALUES=0]="VALUES",t[t.CONDITIONS=1]="CONDITIONS",t))(pe||{});c.createIdentifier("sheets-filter-ui.sheets-filter-panel.service");let G=class extends c.Disposable{constructor(e,r){super();S(this,"_filterBy$",new C.BehaviorSubject(0));S(this,"filterBy$",this._filterBy$.asObservable());S(this,"_filterByModel$",new C.ReplaySubject(1));S(this,"filterByModel$",this._filterByModel$.asObservable());S(this,"_filterByModel",null);S(this,"_hasCriteria$",new C.BehaviorSubject(!1));S(this,"hasCriteria$",this._hasCriteria$.asObservable());S(this,"_filterModel",null);S(this,"_col$",new C.BehaviorSubject(-1));S(this,"col$",this._col$.asObservable());S(this,"_filterHeaderListener",null);this._injector=e,this._refRangeService=r}get filterBy(){return this._filterBy$.getValue()}get filterByModel(){return this._filterByModel}set filterByModel(e){this._filterByModel=e,this._filterByModel$.next(e)}get filterModel(){return this._filterModel}get col(){return this._col$.getValue()}dispose(){this._filterBy$.complete(),this._filterByModel$.complete(),this._hasCriteria$.complete()}setupCol(e,r){this.terminate(),this._filterModel=e,this._col$.next(r);const i=e.getFilterColumn(r);if(i){const s=i.getColumnData();if(s.customFilters){this._hasCriteria$.next(!0),this._setupByConditions(e,r);return}if(s.filters){this._hasCriteria$.next(!0),this._setupByValues(e,r);return}this._hasCriteria$.next(!1),this._setupByValues(e,r);return}this._hasCriteria$.next(!1),this._setupByValues(e,r)}changeFilterBy(e){return!this._filterModel||this.col===-1?!1:(e===0?this._setupByValues(this._filterModel,this.col):this._setupByConditions(this._filterModel,this.col),!0)}terminate(){return this._filterModel=null,this._col$.next(-1),this._disposeFilterHeaderChangeListener(),!0}_disposeFilterHeaderChangeListener(){var e;(e=this._filterHeaderListener)==null||e.dispose(),this._filterHeaderListener=null}_listenToFilterHeaderChange(e,r){this._disposeFilterHeaderChangeListener();const i=e.unitId,s=e.subUnitId,l=e.getRange(),n={startColumn:r,startRow:l.startRow,endRow:l.startRow,endColumn:r};this._filterHeaderListener=this._refRangeService.watchRange(i,s,n,(o,a)=>{if(!a)this.terminate();else{const h=a.startColumn-o.startColumn;h!==0&&this._filterByModel.deltaCol(h)}})}async _setupByValues(e,r){this._disposePreviousModel();const i=e.getRange();if(i.startRow===i.endRow)return!1;const s=await fe.fromFilterColumn(this._injector,e,r);return this.filterByModel=s,this._filterBy$.next(0),this._listenToFilterHeaderChange(e,r),!0}_setupByConditions(e,r){this._disposePreviousModel();const i=e.getRange();if(i.startRow===i.endRow)return!1;const s=de.fromFilterColumn(this._injector,e,r,e.getFilterColumn(r));return this.filterByModel=s,this._filterBy$.next(1),this._listenToFilterHeaderChange(e,r),!0}_disposePreviousModel(){var e;(e=this._filterByModel)==null||e.dispose(),this.filterByModel=null}};G=Ie([me(0,c.Inject(c.Injector)),me(1,c.Inject(O.RefRangeService))],G);let de=class extends c.Disposable{constructor(e,r,i,s,l){super();S(this,"canApply$",C.of(!0));S(this,"_conditionItem$");S(this,"conditionItem$");S(this,"_filterConditionFormParams$");S(this,"filterConditionFormParams$");this._filterModel=e,this.col=r,this._commandService=l,this._conditionItem$=new C.BehaviorSubject(i),this.conditionItem$=this._conditionItem$.asObservable(),this._filterConditionFormParams$=new C.BehaviorSubject(s),this.filterConditionFormParams$=this._filterConditionFormParams$.asObservable()}static fromFilterColumn(e,r,i,s){const[l,n]=p.testMappingFilterColumn(s==null?void 0:s.getColumnData());return e.createInstance(de,r,i,l,n)}get conditionItem(){return this._conditionItem$.getValue()}get filterConditionFormParams(){return this._filterConditionFormParams$.getValue()}dispose(){super.dispose(),this._conditionItem$.complete(),this._filterConditionFormParams$.complete()}deltaCol(e){this.col+=e}clear(){return this._disposed?Promise.resolve(!1):this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null})}async apply(){if(this._disposed)return!1;const e=p.mapToFilterColumn(this.conditionItem,this.filterConditionFormParams);return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:e})}onPrimaryConditionChange(e){const r=p.ALL_CONDITIONS.find(i=>i.operator===e);if(!r)throw new Error(`[ByConditionsModel]: condition item not found for operator: ${e}!`);this._conditionItem$.next(r),this._filterConditionFormParams$.next(p.getInitialFormParams(e))}onConditionFormChange(e){const r={...this.filterConditionFormParams,...e};if(r.and!==!0&&delete r.and,typeof e.and<"u"||typeof e.operator1<"u"||typeof e.operator2<"u"){const i=p.testMappingParams(r,this.conditionItem.numOfParameters);this._conditionItem$.next(i)}this._filterConditionFormParams$.next(r)}};de=Ie([me(4,c.ICommandService)],de);let fe=class extends c.Disposable{constructor(e,r,i,s,l){super();S(this,"_rawFilterItems$");S(this,"rawFilterItems$");S(this,"filterItems$");S(this,"_filterItems",[]);S(this,"_treeMapCache");S(this,"canApply$");S(this,"_manuallyUpdateFilterItems$");S(this,"_searchString$");S(this,"searchString$");this._filterModel=e,this.col=r,this._commandService=l,this._treeMapCache=s,this._searchString$=new C.BehaviorSubject(""),this.searchString$=this._searchString$.asObservable(),this._rawFilterItems$=new C.BehaviorSubject(i),this.rawFilterItems$=this._rawFilterItems$.asObservable(),this._manuallyUpdateFilterItems$=new C.Subject,this.filterItems$=C.merge(C.combineLatest([this._searchString$.pipe(C.throttleTime(500,void 0,{leading:!0,trailing:!0}),C.startWith(void 0)),this._rawFilterItems$]).pipe(C.map(([n,o])=>{if(!n)return o;const h=n.toLowerCase().split(/\s+/).filter(m=>!!m);return He(o,h)})),this._manuallyUpdateFilterItems$).pipe(C.shareReplay(1)),this.canApply$=this.filterItems$.pipe(C.map(n=>Te(n).checked>0)),this.disposeWithMe(this.filterItems$.subscribe(n=>this._filterItems=n))}static async fromFilterColumn(e,r,i){var N;const s=e.get(c.IUniverInstanceService),l=e.get(c.LocaleService),n=e.get(he,c.Quantity.OPTIONAL),{unitId:o,subUnitId:a}=r,h=s.getUniverSheetInstance(o);if(!h)throw new Error(`[ByValuesModel]: Workbook not found for filter model with unitId: ${o}!`);const m=h==null?void 0:h.getSheetBySheetId(a);if(!m)throw new Error(`[ByValuesModel]: Worksheet not found for filter model with unitId: ${o} and subUnitId: ${a}!`);const d=r.getRange(),T=i,v=(N=r.getFilterColumn(i))==null?void 0:N.getColumnData().filters,E=new Set(v==null?void 0:v.filters),P=!!(v&&v.blank),L=r.getFilteredOutRowsExceptCol(i),A={...d,startRow:d.startRow+1,startColumn:T,endColumn:T};let w,$;if(n){const j=await n.getFilterValues({unitId:o,subUnitId:a,filteredOutRowsByOtherColumns:Array.from(L),filters:!!v,blankChecked:P,iterateRange:A,alreadyChecked:Array.from(E)});w=j.filterTreeItems,$=j.filterTreeMapCache}else{const j=$e(!!v,l,A,m,L,E,P,h.getStyles());w=j.filterTreeItems,$=j.filterTreeMapCache}return e.createInstance(fe,r,i,w,$)}get rawFilterItems(){return this._rawFilterItems$.getValue()}get filterItems(){return this._filterItems}get treeMapCache(){return this._treeMapCache}dispose(){this._rawFilterItems$.complete(),this._searchString$.complete()}deltaCol(e){this.col+=e}setSearchString(e){this._searchString$.next(e)}onCheckAllToggled(e){const r=c.Tools.deepClone(this._filterItems);r.forEach(i=>ae(i,e)),this._manuallyUpdateFilterItems(r)}onFilterCheckToggled(e){const r=c.Tools.deepClone(this._filterItems),i=Pe(r,e.key);if(!i)return;const s=De(i);ae(i,!s),this._manuallyUpdateFilterItems(r)}onFilterOnly(e){const r=c.Tools.deepClone(this._filterItems);r.forEach(i=>ae(i,!1)),e.forEach(i=>{const s=Pe(r,i);s&&ae(s,!0)}),this._manuallyUpdateFilterItems(r)}_manuallyUpdateFilterItems(e){this._manuallyUpdateFilterItems$.next(e)}clear(){return this._disposed?Promise.resolve(!1):this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null})}async apply(){if(this._disposed)return!1;const e=Te(this._filterItems),{checked:r,checkedItems:i}=e,s=this.rawFilterItems;let l=0;for(const h of s)l+=h.count;const n=r===0,o=e.checked===l,a={colId:this.col};if(n)throw new Error("[ByValuesModel]: no checked items!");if(o)return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});{a.filters={};const h=i.filter(d=>d.key!=="empty");h.length>0&&(a.filters={filters:h.flatMap(d=>d.originValues?Array.from(d.originValues):[d.title])}),h.length!==i.length&&(a.filters.blank=!0)}return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:a})}};fe=Ie([me(4,c.ICommandService)],fe);const J="FILTER_PANEL_OPENED",le={id:"sheet.operation.open-filter-panel",type:c.CommandType.OPERATION,handler:(t,e)=>{const r=t.get(c.IContextService),i=t.get(u.SheetsFilterService),s=t.get(G);t.get(c.ICommandService).syncExecuteCommand(D.SetCellEditVisibleOperation.id,{visible:!1});const{unitId:n,subUnitId:o,col:a}=e,h=i.getFilterModel(n,o);return h?(s.setupCol(h,a),r.getContextValue(J)||r.setContextValue(J,!0),!0):!1}},ee={id:"sheet.operation.close-filter-panel",type:c.CommandType.OPERATION,handler:t=>{const e=t.get(c.IContextService),r=t.get(G),i=t.get(F.ILayoutService,c.Quantity.OPTIONAL);return e.getContextValue(J)?(e.setContextValue(J,!1),i==null||i.focus(),r.terminate()):!1}},Ne={id:"sheet.operation.apply-filter",type:c.CommandType.OPERATION,handler:(t,e)=>{const{filterBy:r}=e;return t.get(G).changeFilterBy(r)}};var at=Object.defineProperty,lt=Object.getOwnPropertyDescriptor,ct=(t,e,r,i)=>{for(var s=i>1?void 0:i?lt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&at(e,r,s),s},te=(t,e)=>(r,i)=>e(r,i,t);let re=class extends c.Disposable{constructor(t,e,r,i,s,l){super(),this._sheetsFilterService=t,this._localeService=e,this._commandService=r,this._sheetPermissionInterceptorBaseController=i,this._injector=s,this._sheetsSelectionService=l,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(t=>{var e,r,i;if(t.id===u.SmartToggleSheetsFilterCommand.id){const s=this._injector.get(c.IUniverInstanceService),l=O.getSheetCommandTarget(s);if(!l)return;const{unitId:n,subUnitId:o,worksheet:a}=l,h=(e=this._sheetsFilterService.getFilterModel(n,o))==null?void 0:e.getRange();let m;if(h)m=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[O.RangeProtectionPermissionViewPoint],worksheetTypes:[O.WorksheetFilterPermission,O.WorksheetViewPermission]},[h]);else{const d=(r=this._sheetsSelectionService.getCurrentLastSelection())==null?void 0:r.range;if(d){let T={...d};T=d.startColumn===d.endColumn&&d.startRow===d.endRow?O.expandToContinuousRange(T,{left:!0,right:!0,up:!0,down:!0},a):T,m=this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[O.RangeProtectionPermissionViewPoint],worksheetTypes:[O.WorksheetViewPermission,O.WorksheetFilterPermission]},[T],n,o)}else m=this._sheetPermissionInterceptorBaseController.permissionCheckWithoutRange({rangeTypes:[O.RangeProtectionPermissionViewPoint],worksheetTypes:[O.WorksheetViewPermission,O.WorksheetFilterPermission]})}m||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr"))}if(t.id===le.id){const s=t.params,{unitId:l,subUnitId:n}=s,o=(i=this._sheetsFilterService.getFilterModel(l,n))==null?void 0:i.getRange(),a=c.Tools.deepClone(o);a&&(a.startColumn=s.col,a.endColumn=s.col,this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({rangeTypes:[O.RangeProtectionPermissionViewPoint],worksheetTypes:[O.WorksheetFilterPermission,O.WorksheetViewPermission]},[a])||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.filterErr")))}}))}};re=ct([te(0,c.Inject(u.SheetsFilterService)),te(1,c.Inject(c.LocaleService)),te(2,c.ICommandService),te(3,c.Inject(D.SheetPermissionInterceptorBaseController)),te(4,c.Inject(c.Injector)),te(5,c.Inject(O.SheetsSelectionsService))],re);var B=function(){return B=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++){e=arguments[r];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s])}return t},B.apply(this,arguments)},ut=function(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,i=Object.getOwnPropertySymbols(t);s<i.length;s++)e.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(t,i[s])&&(r[i[s]]=t[i[s]]);return r},Be=y.forwardRef(function(t,e){var r=t.icon,i=t.id,s=t.className,l=t.extend,n=ut(t,["icon","id","className","extend"]),o="univerjs-icon univerjs-icon-".concat(i," ").concat(s||"").trim(),a=y.useRef("_".concat(pt()));return je(r,"".concat(i),{defIds:r.defIds,idSuffix:a.current},B({ref:e,className:o},n),l)});function je(t,e,r,i,s){return y.createElement(t.tag,B(B({key:e},ht(t,r,s)),i),(mt(t,r).children||[]).map(function(l,n){return je(l,"".concat(e,"-").concat(t.tag,"-").concat(n),r,void 0,s)}))}function ht(t,e,r){var i=B({},t.attrs);r!=null&&r.colorChannel1&&i.fill==="colorChannel1"&&(i.fill=r.colorChannel1);var s=e.defIds;return!s||s.length===0||(t.tag==="use"&&i["xlink:href"]&&(i["xlink:href"]=i["xlink:href"]+e.idSuffix),Object.entries(i).forEach(function(l){var n=l[0],o=l[1];typeof o=="string"&&(i[n]=o.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),i}function mt(t,e){var r,i=e.defIds;return!i||i.length===0?t:t.tag==="defs"&&(!((r=t.children)===null||r===void 0)&&r.length)?B(B({},t),{children:t.children.map(function(s){return typeof s.attrs.id=="string"&&i&&i.indexOf(s.attrs.id)>-1?B(B({},s),{attrs:B(B({},s.attrs),{id:s.attrs.id+e.idSuffix})}):s})}):t}function pt(){return Math.random().toString(36).substring(2,8)}Be.displayName="UniverIcon";var dt={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"}}]},Ve=y.forwardRef(function(t,e){return y.createElement(Be,Object.assign({},t,{id:"filter-single",ref:e,icon:dt}))});Ve.displayName="FilterSingle";var We={exports:{}},_e={};/**
7
2
  * @license React
8
- * react-is.production.min.js
3
+ * react-jsx-runtime.production.min.js
9
4
  *
10
5
  * Copyright (c) Facebook, Inc. and its affiliates.
11
6
  *
12
7
  * This source code is licensed under the MIT license found in the
13
8
  * LICENSE file in the root directory of this source tree.
14
- */var b=Symbol.for("react.element"),c=Symbol.for("react.portal"),d=Symbol.for("react.fragment"),e=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),g=Symbol.for("react.provider"),h=Symbol.for("react.context"),k=Symbol.for("react.server_context"),l=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),n=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),q=Symbol.for("react.lazy"),t=Symbol.for("react.offscreen"),u;u=Symbol.for("react.module.reference");function v(a){if(typeof a=="object"&&a!==null){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}__name(v,"v"),reactIs_production_min.ContextConsumer=h,reactIs_production_min.ContextProvider=g,reactIs_production_min.Element=b,reactIs_production_min.ForwardRef=l,reactIs_production_min.Fragment=d,reactIs_production_min.Lazy=q,reactIs_production_min.Memo=p,reactIs_production_min.Portal=c,reactIs_production_min.Profiler=f,reactIs_production_min.StrictMode=e,reactIs_production_min.Suspense=m,reactIs_production_min.SuspenseList=n,reactIs_production_min.isAsyncMode=function(){return!1},reactIs_production_min.isConcurrentMode=function(){return!1},reactIs_production_min.isContextConsumer=function(a){return v(a)===h},reactIs_production_min.isContextProvider=function(a){return v(a)===g},reactIs_production_min.isElement=function(a){return typeof a=="object"&&a!==null&&a.$$typeof===b},reactIs_production_min.isForwardRef=function(a){return v(a)===l},reactIs_production_min.isFragment=function(a){return v(a)===d},reactIs_production_min.isLazy=function(a){return v(a)===q},reactIs_production_min.isMemo=function(a){return v(a)===p},reactIs_production_min.isPortal=function(a){return v(a)===c},reactIs_production_min.isProfiler=function(a){return v(a)===f},reactIs_production_min.isStrictMode=function(a){return v(a)===e},reactIs_production_min.isSuspense=function(a){return v(a)===m},reactIs_production_min.isSuspenseList=function(a){return v(a)===n},reactIs_production_min.isValidElementType=function(a){return typeof a=="string"||typeof a=="function"||a===d||a===f||a===e||a===m||a===n||a===t||typeof a=="object"&&a!==null&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||a.getModuleId!==void 0)},reactIs_production_min.typeOf=v,reactIs.exports=reactIs_production_min;var reactIsExports=reactIs.exports;function toArray(children){var option=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ret=[];return React.Children.forEach(children,function(child){child==null&&!option.keepEmpty||(Array.isArray(child)?ret=ret.concat(toArray(child)):reactIsExports.isFragment(child)&&child.props?ret=ret.concat(toArray(child.props.children,option)):ret.push(child))}),ret}__name(toArray,"toArray");function isDOM(node){return node instanceof HTMLElement||node instanceof SVGElement}__name(isDOM,"isDOM");function getDOM(node){return node&&_typeof(node)==="object"&&isDOM(node.nativeElement)?node.nativeElement:isDOM(node)?node:null}__name(getDOM,"getDOM");function findDOMNode(node){var domNode=getDOM(node);if(domNode)return domNode;if(node instanceof React.Component){var _ReactDOM$findDOMNode;return(_ReactDOM$findDOMNode=ReactDOM.findDOMNode)===null||_ReactDOM$findDOMNode===void 0?void 0:_ReactDOM$findDOMNode.call(ReactDOM,node)}return null}__name(findDOMNode,"findDOMNode");function useMemo(getValue,condition,shouldUpdate){var cacheRef=React__namespace.useRef({});return(!("value"in cacheRef.current)||shouldUpdate(cacheRef.current.condition,condition))&&(cacheRef.current.value=getValue(),cacheRef.current.condition=condition),cacheRef.current.value}__name(useMemo,"useMemo");var fillRef=__name(function(ref,node){typeof ref=="function"?ref(node):_typeof(ref)==="object"&&ref&&"current"in ref&&(ref.current=node)},"fillRef"),composeRef=__name(function(){for(var _len=arguments.length,refs=new Array(_len),_key=0;_key<_len;_key++)refs[_key]=arguments[_key];var refList=refs.filter(Boolean);return refList.length<=1?refList[0]:function(node){refs.forEach(function(ref){fillRef(ref,node)})}},"composeRef"),useComposeRef=__name(function(){for(var _len2=arguments.length,refs=new Array(_len2),_key2=0;_key2<_len2;_key2++)refs[_key2]=arguments[_key2];return useMemo(function(){return composeRef.apply(void 0,refs)},refs,function(prev,next){return prev.length!==next.length||prev.every(function(ref,i){return ref!==next[i]})})},"useComposeRef"),supportRef=__name(function(nodeOrComponent){var _type$prototype,_nodeOrComponent$prot,type=reactIsExports.isMemo(nodeOrComponent)?nodeOrComponent.type.type:nodeOrComponent.type;return!(typeof type=="function"&&!((_type$prototype=type.prototype)!==null&&_type$prototype!==void 0&&_type$prototype.render)&&type.$$typeof!==reactIsExports.ForwardRef||typeof nodeOrComponent=="function"&&!((_nodeOrComponent$prot=nodeOrComponent.prototype)!==null&&_nodeOrComponent$prot!==void 0&&_nodeOrComponent$prot.render)&&nodeOrComponent.$$typeof!==reactIsExports.ForwardRef)},"supportRef");function isReactElement(node){return React.isValidElement(node)&&!reactIsExports.isFragment(node)}__name(isReactElement,"isReactElement"),Number(React.version.split(".")[0])>=19;var CollectionContext=React__namespace.createContext(null);function Collection(_ref){var children=_ref.children,onBatchResize=_ref.onBatchResize,resizeIdRef=React__namespace.useRef(0),resizeInfosRef=React__namespace.useRef([]),onCollectionResize=React__namespace.useContext(CollectionContext),onResize2=React__namespace.useCallback(function(size,element2,data){resizeIdRef.current+=1;var currentId=resizeIdRef.current;resizeInfosRef.current.push({size,element:element2,data}),Promise.resolve().then(function(){currentId===resizeIdRef.current&&(onBatchResize==null||onBatchResize(resizeInfosRef.current),resizeInfosRef.current=[])}),onCollectionResize==null||onCollectionResize(size,element2,data)},[onBatchResize,onCollectionResize]);return React__namespace.createElement(CollectionContext.Provider,{value:onResize2},children)}__name(Collection,"Collection");var MapShim=function(){if(typeof Map<"u")return Map;function getIndex(arr,key){var result=-1;return arr.some(function(entry,index2){return entry[0]===key?(result=index2,!0):!1}),result}return __name(getIndex,"getIndex"),function(){function class_1(){this.__entries__=[]}return __name(class_1,"class_1"),Object.defineProperty(class_1.prototype,"size",{get:__name(function(){return this.__entries__.length},"get"),enumerable:!0,configurable:!0}),class_1.prototype.get=function(key){var index2=getIndex(this.__entries__,key),entry=this.__entries__[index2];return entry&&entry[1]},class_1.prototype.set=function(key,value){var index2=getIndex(this.__entries__,key);~index2?this.__entries__[index2][1]=value:this.__entries__.push([key,value])},class_1.prototype.delete=function(key){var entries=this.__entries__,index2=getIndex(entries,key);~index2&&entries.splice(index2,1)},class_1.prototype.has=function(key){return!!~getIndex(this.__entries__,key)},class_1.prototype.clear=function(){this.__entries__.splice(0)},class_1.prototype.forEach=function(callback,ctx){ctx===void 0&&(ctx=null);for(var _i2=0,_a2=this.__entries__;_i2<_a2.length;_i2++){var entry=_a2[_i2];callback.call(ctx,entry[1],entry[0])}},class_1}()}(),isBrowser=typeof window<"u"&&typeof document<"u"&&window.document===document,global$1=function(){return typeof global<"u"&&global.Math===Math?global:typeof self<"u"&&self.Math===Math?self:typeof window<"u"&&window.Math===Math?window:Function("return this")()}(),requestAnimationFrame$1=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(global$1):function(callback){return setTimeout(function(){return callback(Date.now())},1e3/60)}}(),trailingTimeout=2;function throttle(callback,delay){var leadingCall=!1,trailingCall=!1,lastCallTime=0;function resolvePending(){leadingCall&&(leadingCall=!1,callback()),trailingCall&&proxy()}__name(resolvePending,"resolvePending");function timeoutCallback(){requestAnimationFrame$1(resolvePending)}__name(timeoutCallback,"timeoutCallback");function proxy(){var timeStamp=Date.now();if(leadingCall){if(timeStamp-lastCallTime<trailingTimeout)return;trailingCall=!0}else leadingCall=!0,trailingCall=!1,setTimeout(timeoutCallback,delay);lastCallTime=timeStamp}return __name(proxy,"proxy"),proxy}__name(throttle,"throttle");var REFRESH_DELAY=20,transitionKeys=["top","right","bottom","left","width","height","size","weight"],mutationObserverSupported=typeof MutationObserver<"u",ResizeObserverController=function(){function ResizeObserverController2(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=throttle(this.refresh.bind(this),REFRESH_DELAY)}return __name(ResizeObserverController2,"ResizeObserverController"),ResizeObserverController2.prototype.addObserver=function(observer){~this.observers_.indexOf(observer)||this.observers_.push(observer),this.connected_||this.connect_()},ResizeObserverController2.prototype.removeObserver=function(observer){var observers2=this.observers_,index2=observers2.indexOf(observer);~index2&&observers2.splice(index2,1),!observers2.length&&this.connected_&&this.disconnect_()},ResizeObserverController2.prototype.refresh=function(){var changesDetected=this.updateObservers_();changesDetected&&this.refresh()},ResizeObserverController2.prototype.updateObservers_=function(){var activeObservers=this.observers_.filter(function(observer){return observer.gatherActive(),observer.hasActive()});return activeObservers.forEach(function(observer){return observer.broadcastActive()}),activeObservers.length>0},ResizeObserverController2.prototype.connect_=function(){!isBrowser||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),mutationObserverSupported?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},ResizeObserverController2.prototype.disconnect_=function(){!isBrowser||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},ResizeObserverController2.prototype.onTransitionEnd_=function(_a2){var _b2=_a2.propertyName,propertyName=_b2===void 0?"":_b2,isReflowProperty=transitionKeys.some(function(key){return!!~propertyName.indexOf(key)});isReflowProperty&&this.refresh()},ResizeObserverController2.getInstance=function(){return this.instance_||(this.instance_=new ResizeObserverController2),this.instance_},ResizeObserverController2.instance_=null,ResizeObserverController2}(),defineConfigurable=__name(function(target,props){for(var _i2=0,_a2=Object.keys(props);_i2<_a2.length;_i2++){var key=_a2[_i2];Object.defineProperty(target,key,{value:props[key],enumerable:!1,writable:!1,configurable:!0})}return target},"defineConfigurable"),getWindowOf=__name(function(target){var ownerGlobal=target&&target.ownerDocument&&target.ownerDocument.defaultView;return ownerGlobal||global$1},"getWindowOf"),emptyRect=createRectInit(0,0,0,0);function toFloat(value){return parseFloat(value)||0}__name(toFloat,"toFloat");function getBordersSize(styles2){for(var positions=[],_i2=1;_i2<arguments.length;_i2++)positions[_i2-1]=arguments[_i2];return positions.reduce(function(size,position){var value=styles2["border-"+position+"-width"];return size+toFloat(value)},0)}__name(getBordersSize,"getBordersSize");function getPaddings(styles2){for(var positions=["top","right","bottom","left"],paddings={},_i2=0,positions_1=positions;_i2<positions_1.length;_i2++){var position=positions_1[_i2],value=styles2["padding-"+position];paddings[position]=toFloat(value)}return paddings}__name(getPaddings,"getPaddings");function getSVGContentRect(target){var bbox=target.getBBox();return createRectInit(0,0,bbox.width,bbox.height)}__name(getSVGContentRect,"getSVGContentRect");function getHTMLElementContentRect(target){var clientWidth=target.clientWidth,clientHeight=target.clientHeight;if(!clientWidth&&!clientHeight)return emptyRect;var styles2=getWindowOf(target).getComputedStyle(target),paddings=getPaddings(styles2),horizPad=paddings.left+paddings.right,vertPad=paddings.top+paddings.bottom,width=toFloat(styles2.width),height=toFloat(styles2.height);if(styles2.boxSizing==="border-box"&&(Math.round(width+horizPad)!==clientWidth&&(width-=getBordersSize(styles2,"left","right")+horizPad),Math.round(height+vertPad)!==clientHeight&&(height-=getBordersSize(styles2,"top","bottom")+vertPad)),!isDocumentElement(target)){var vertScrollbar=Math.round(width+horizPad)-clientWidth,horizScrollbar=Math.round(height+vertPad)-clientHeight;Math.abs(vertScrollbar)!==1&&(width-=vertScrollbar),Math.abs(horizScrollbar)!==1&&(height-=horizScrollbar)}return createRectInit(paddings.left,paddings.top,width,height)}__name(getHTMLElementContentRect,"getHTMLElementContentRect");var isSVGGraphicsElement=function(){return typeof SVGGraphicsElement<"u"?function(target){return target instanceof getWindowOf(target).SVGGraphicsElement}:function(target){return target instanceof getWindowOf(target).SVGElement&&typeof target.getBBox=="function"}}();function isDocumentElement(target){return target===getWindowOf(target).document.documentElement}__name(isDocumentElement,"isDocumentElement");function getContentRect(target){return isBrowser?isSVGGraphicsElement(target)?getSVGContentRect(target):getHTMLElementContentRect(target):emptyRect}__name(getContentRect,"getContentRect");function createReadOnlyRect(_a2){var x=_a2.x,y=_a2.y,width=_a2.width,height=_a2.height,Constr=typeof DOMRectReadOnly<"u"?DOMRectReadOnly:Object,rect=Object.create(Constr.prototype);return defineConfigurable(rect,{x,y,width,height,top:y,right:x+width,bottom:height+y,left:x}),rect}__name(createReadOnlyRect,"createReadOnlyRect");function createRectInit(x,y,width,height){return{x,y,width,height}}__name(createRectInit,"createRectInit");var ResizeObservation=function(){function ResizeObservation2(target){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=createRectInit(0,0,0,0),this.target=target}return __name(ResizeObservation2,"ResizeObservation"),ResizeObservation2.prototype.isActive=function(){var rect=getContentRect(this.target);return this.contentRect_=rect,rect.width!==this.broadcastWidth||rect.height!==this.broadcastHeight},ResizeObservation2.prototype.broadcastRect=function(){var rect=this.contentRect_;return this.broadcastWidth=rect.width,this.broadcastHeight=rect.height,rect},ResizeObservation2}(),ResizeObserverEntry=function(){function ResizeObserverEntry2(target,rectInit){var contentRect=createReadOnlyRect(rectInit);defineConfigurable(this,{target,contentRect})}return __name(ResizeObserverEntry2,"ResizeObserverEntry"),ResizeObserverEntry2}(),ResizeObserverSPI=function(){function ResizeObserverSPI2(callback,controller,callbackCtx){if(this.activeObservations_=[],this.observations_=new MapShim,typeof callback!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=callback,this.controller_=controller,this.callbackCtx_=callbackCtx}return __name(ResizeObserverSPI2,"ResizeObserverSPI"),ResizeObserverSPI2.prototype.observe=function(target){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(target instanceof getWindowOf(target).Element))throw new TypeError('parameter 1 is not of type "Element".');var observations=this.observations_;observations.has(target)||(observations.set(target,new ResizeObservation(target)),this.controller_.addObserver(this),this.controller_.refresh())}},ResizeObserverSPI2.prototype.unobserve=function(target){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(target instanceof getWindowOf(target).Element))throw new TypeError('parameter 1 is not of type "Element".');var observations=this.observations_;observations.has(target)&&(observations.delete(target),observations.size||this.controller_.removeObserver(this))}},ResizeObserverSPI2.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},ResizeObserverSPI2.prototype.gatherActive=function(){var _this=this;this.clearActive(),this.observations_.forEach(function(observation){observation.isActive()&&_this.activeObservations_.push(observation)})},ResizeObserverSPI2.prototype.broadcastActive=function(){if(this.hasActive()){var ctx=this.callbackCtx_,entries=this.activeObservations_.map(function(observation){return new ResizeObserverEntry(observation.target,observation.broadcastRect())});this.callback_.call(ctx,entries,ctx),this.clearActive()}},ResizeObserverSPI2.prototype.clearActive=function(){this.activeObservations_.splice(0)},ResizeObserverSPI2.prototype.hasActive=function(){return this.activeObservations_.length>0},ResizeObserverSPI2}(),observers=typeof WeakMap<"u"?new WeakMap:new MapShim,ResizeObserver$1=function(){function ResizeObserver2(callback){if(!(this instanceof ResizeObserver2))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var controller=ResizeObserverController.getInstance(),observer=new ResizeObserverSPI(callback,controller,this);observers.set(this,observer)}return __name(ResizeObserver2,"ResizeObserver"),ResizeObserver2}();["observe","unobserve","disconnect"].forEach(function(method){ResizeObserver$1.prototype[method]=function(){var _a2;return(_a2=observers.get(this))[method].apply(_a2,arguments)}});var index=function(){return typeof global$1.ResizeObserver<"u"?global$1.ResizeObserver:ResizeObserver$1}(),elementListeners=new Map;function onResize(entities){entities.forEach(function(entity){var _elementListeners$get,target=entity.target;(_elementListeners$get=elementListeners.get(target))===null||_elementListeners$get===void 0||_elementListeners$get.forEach(function(listener){return listener(target)})})}__name(onResize,"onResize");var resizeObserver=new index(onResize);function observe(element2,callback){elementListeners.has(element2)||(elementListeners.set(element2,new Set),resizeObserver.observe(element2)),elementListeners.get(element2).add(callback)}__name(observe,"observe");function unobserve(element2,callback){elementListeners.has(element2)&&(elementListeners.get(element2).delete(callback),elementListeners.get(element2).size||(resizeObserver.unobserve(element2),elementListeners.delete(element2)))}__name(unobserve,"unobserve");function _classCallCheck(a,n2){if(!(a instanceof n2))throw new TypeError("Cannot call a class as a function")}__name(_classCallCheck,"_classCallCheck");function _defineProperties(e2,r){for(var t2=0;t2<r.length;t2++){var o=r[t2];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e2,toPropertyKey(o.key),o)}}__name(_defineProperties,"_defineProperties");function _createClass(e2,r,t2){return r&&_defineProperties(e2.prototype,r),Object.defineProperty(e2,"prototype",{writable:!1}),e2}__name(_createClass,"_createClass");function _setPrototypeOf(t2,e2){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t3,e3){return t3.__proto__=e3,t3},_setPrototypeOf(t2,e2)}__name(_setPrototypeOf,"_setPrototypeOf");function _inherits(t2,e2){if(typeof e2!="function"&&e2!==null)throw new TypeError("Super expression must either be null or a function");t2.prototype=Object.create(e2&&e2.prototype,{constructor:{value:t2,writable:!0,configurable:!0}}),Object.defineProperty(t2,"prototype",{writable:!1}),e2&&_setPrototypeOf(t2,e2)}__name(_inherits,"_inherits");function _getPrototypeOf(t2){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t3){return t3.__proto__||Object.getPrototypeOf(t3)},_getPrototypeOf(t2)}__name(_getPrototypeOf,"_getPrototypeOf");function _isNativeReflectConstruct(){try{var t2=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(_isNativeReflectConstruct=__name(function(){return!!t2},"_isNativeReflectConstruct"))()}__name(_isNativeReflectConstruct,"_isNativeReflectConstruct");function _assertThisInitialized(e2){if(e2===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e2}__name(_assertThisInitialized,"_assertThisInitialized");function _possibleConstructorReturn(t2,e2){if(e2&&(_typeof(e2)=="object"||typeof e2=="function"))return e2;if(e2!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t2)}__name(_possibleConstructorReturn,"_possibleConstructorReturn");function _createSuper(t2){var r=_isNativeReflectConstruct();return function(){var e2,o=_getPrototypeOf(t2);if(r){var s=_getPrototypeOf(this).constructor;e2=Reflect.construct(o,arguments,s)}else e2=o.apply(this,arguments);return _possibleConstructorReturn(this,e2)}}__name(_createSuper,"_createSuper");var DomWrapper=function(_React$Component){_inherits(DomWrapper2,_React$Component);var _super=_createSuper(DomWrapper2);function DomWrapper2(){return _classCallCheck(this,DomWrapper2),_super.apply(this,arguments)}return __name(DomWrapper2,"DomWrapper"),_createClass(DomWrapper2,[{key:"render",value:__name(function(){return this.props.children},"render")}]),DomWrapper2}(React__namespace.Component);function SingleObserver(props,ref){var children=props.children,disabled=props.disabled,elementRef=React__namespace.useRef(null),wrapperRef=React__namespace.useRef(null),onCollectionResize=React__namespace.useContext(CollectionContext),isRenderProps=typeof children=="function",mergedChildren=isRenderProps?children(elementRef):children,sizeRef=React__namespace.useRef({width:-1,height:-1,offsetWidth:-1,offsetHeight:-1}),canRef=!isRenderProps&&React__namespace.isValidElement(mergedChildren)&&supportRef(mergedChildren),originRef=canRef?mergedChildren.ref:null,mergedRef=useComposeRef(originRef,elementRef),getDom=__name(function(){var _elementRef$current;return findDOMNode(elementRef.current)||(elementRef.current&&_typeof(elementRef.current)==="object"?findDOMNode((_elementRef$current=elementRef.current)===null||_elementRef$current===void 0?void 0:_elementRef$current.nativeElement):null)||findDOMNode(wrapperRef.current)},"getDom2");React__namespace.useImperativeHandle(ref,function(){return getDom()});var propsRef=React__namespace.useRef(props);propsRef.current=props;var onInternalResize=React__namespace.useCallback(function(target){var _propsRef$current=propsRef.current,onResize2=_propsRef$current.onResize,data=_propsRef$current.data,_target$getBoundingCl=target.getBoundingClientRect(),width=_target$getBoundingCl.width,height=_target$getBoundingCl.height,offsetWidth=target.offsetWidth,offsetHeight=target.offsetHeight,fixedWidth=Math.floor(width),fixedHeight=Math.floor(height);if(sizeRef.current.width!==fixedWidth||sizeRef.current.height!==fixedHeight||sizeRef.current.offsetWidth!==offsetWidth||sizeRef.current.offsetHeight!==offsetHeight){var size={width:fixedWidth,height:fixedHeight,offsetWidth,offsetHeight};sizeRef.current=size;var mergedOffsetWidth=offsetWidth===Math.round(width)?width:offsetWidth,mergedOffsetHeight=offsetHeight===Math.round(height)?height:offsetHeight,sizeInfo=_objectSpread2(_objectSpread2({},size),{},{offsetWidth:mergedOffsetWidth,offsetHeight:mergedOffsetHeight});onCollectionResize==null||onCollectionResize(sizeInfo,target,data),onResize2&&Promise.resolve().then(function(){onResize2(sizeInfo,target)})}},[]);return React__namespace.useEffect(function(){var currentElement=getDom();return currentElement&&!disabled&&observe(currentElement,onInternalResize),function(){return unobserve(currentElement,onInternalResize)}},[elementRef.current,disabled]),React__namespace.createElement(DomWrapper,{ref:wrapperRef},canRef?React__namespace.cloneElement(mergedChildren,{ref:mergedRef}):mergedChildren)}__name(SingleObserver,"SingleObserver");var RefSingleObserver=React__namespace.forwardRef(SingleObserver),INTERNAL_PREFIX_KEY="rc-observer-key";function ResizeObserver(props,ref){var children=props.children,childNodes=typeof children=="function"?[children]:toArray(children);return childNodes.map(function(child,index2){var key=(child==null?void 0:child.key)||"".concat(INTERNAL_PREFIX_KEY,"-").concat(index2);return React__namespace.createElement(RefSingleObserver,_extends({},props,{key,ref:index2===0?ref:void 0}),child)})}__name(ResizeObserver,"ResizeObserver");var RefResizeObserver=React__namespace.forwardRef(ResizeObserver);RefResizeObserver.Collection=Collection;function useEvent(callback){var fnRef=React__namespace.useRef();fnRef.current=callback;var memoFn=React__namespace.useCallback(function(){for(var _fnRef$current,_len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];return(_fnRef$current=fnRef.current)===null||_fnRef$current===void 0?void 0:_fnRef$current.call.apply(_fnRef$current,[fnRef].concat(args))},[]);return memoFn}__name(useEvent,"useEvent");function canUseDom(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}__name(canUseDom,"canUseDom");var useInternalLayoutEffect=canUseDom()?React__namespace.useLayoutEffect:React__namespace.useEffect,useLayoutEffect=__name(function(callback,deps){var firstMountRef=React__namespace.useRef(!0);useInternalLayoutEffect(function(){return callback(firstMountRef.current)},deps),useInternalLayoutEffect(function(){return firstMountRef.current=!1,function(){firstMountRef.current=!0}},[])},"useLayoutEffect2"),Filler=React__namespace.forwardRef(function(_ref,ref){var height=_ref.height,offsetY=_ref.offsetY,offsetX=_ref.offsetX,children=_ref.children,prefixCls=_ref.prefixCls,onInnerResize=_ref.onInnerResize,innerProps=_ref.innerProps,rtl=_ref.rtl,extra=_ref.extra,outerStyle={},innerStyle={display:"flex",flexDirection:"column"};return offsetY!==void 0&&(outerStyle={height,position:"relative",overflow:"hidden"},innerStyle=_objectSpread2(_objectSpread2({},innerStyle),{},_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({transform:"translateY(".concat(offsetY,"px)")},rtl?"marginRight":"marginLeft",-offsetX),"position","absolute"),"left",0),"right",0),"top",0))),React__namespace.createElement("div",{style:outerStyle},React__namespace.createElement(RefResizeObserver,{onResize:__name(function(_ref2){var offsetHeight=_ref2.offsetHeight;offsetHeight&&onInnerResize&&onInnerResize()},"onResize")},React__namespace.createElement("div",_extends({style:innerStyle,className:classNames(_defineProperty({},"".concat(prefixCls,"-holder-inner"),prefixCls)),ref},innerProps),children,extra)))});Filler.displayName="Filler";function Item(_ref){var children=_ref.children,setRef=_ref.setRef,refFunc=React__namespace.useCallback(function(node){setRef(node)},[]);return React__namespace.cloneElement(children,{ref:refFunc})}__name(Item,"Item");function useChildren(list,startIndex,endIndex,scrollWidth,offsetX,setNodeRef,renderFunc,_ref){var getKey=_ref.getKey;return list.slice(startIndex,endIndex+1).map(function(item,index2){var eleIndex=startIndex+index2,node=renderFunc(item,eleIndex,{style:{width:scrollWidth},offsetX}),key=getKey(item);return React__namespace.createElement(Item,{key,setRef:__name(function(ele){return setNodeRef(item,ele)},"setRef")},node)})}__name(useChildren,"useChildren");function findListDiffIndex(originList,targetList,getKey){var originLen=originList.length,targetLen=targetList.length,shortList,longList;if(originLen===0&&targetLen===0)return null;originLen<targetLen?(shortList=originList,longList=targetList):(shortList=targetList,longList=originList);var notExistKey={__EMPTY_ITEM__:!0};function getItemKey(item){return item!==void 0?getKey(item):notExistKey}__name(getItemKey,"getItemKey");for(var diffIndex=null,multiple=Math.abs(originLen-targetLen)!==1,i=0;i<longList.length;i+=1){var shortKey=getItemKey(shortList[i]),longKey=getItemKey(longList[i]);if(shortKey!==longKey){diffIndex=i,multiple=multiple||shortKey!==getItemKey(longList[i+1]);break}}return diffIndex===null?null:{index:diffIndex,multiple}}__name(findListDiffIndex,"findListDiffIndex");function useDiffItem(data,getKey,onDiff){var _React$useState=React__namespace.useState(data),_React$useState2=_slicedToArray(_React$useState,2),prevData=_React$useState2[0],setPrevData=_React$useState2[1],_React$useState3=React__namespace.useState(null),_React$useState4=_slicedToArray(_React$useState3,2),diffItem=_React$useState4[0],setDiffItem=_React$useState4[1];return React__namespace.useEffect(function(){var diff=findListDiffIndex(prevData||[],data||[],getKey);(diff==null?void 0:diff.index)!==void 0&&setDiffItem(data[diff.index]),setPrevData(data)},[data]),[diffItem]}__name(useDiffItem,"useDiffItem");var raf=__name(function(callback){return+setTimeout(callback,16)},"raf2"),caf=__name(function(num){return clearTimeout(num)},"caf2");typeof window<"u"&&"requestAnimationFrame"in window&&(raf=__name(function(callback){return window.requestAnimationFrame(callback)},"raf3"),caf=__name(function(handle){return window.cancelAnimationFrame(handle)},"caf3"));var rafUUID=0,rafIds=new Map;function cleanup(id){rafIds.delete(id)}__name(cleanup,"cleanup");var wrapperRaf=__name(function(callback){var times=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;rafUUID+=1;var id=rafUUID;function callRef(leftTimes){if(leftTimes===0)cleanup(id),callback();else{var realId=raf(function(){callRef(leftTimes-1)});rafIds.set(id,realId)}}return __name(callRef,"callRef"),callRef(times),id},"wrapperRaf2");wrapperRaf.cancel=function(id){var realId=rafIds.get(id);return cleanup(id),caf(realId)};var isFF=(typeof navigator>"u"?"undefined":_typeof(navigator))==="object"&&/Firefox/i.test(navigator.userAgent);const useOriginScroll=__name(function(isScrollAtTop,isScrollAtBottom,isScrollAtLeft,isScrollAtRight){var lockRef=React.useRef(!1),lockTimeoutRef=React.useRef(null);function lockScroll(){clearTimeout(lockTimeoutRef.current),lockRef.current=!0,lockTimeoutRef.current=setTimeout(function(){lockRef.current=!1},50)}__name(lockScroll,"lockScroll");var scrollPingRef=React.useRef({top:isScrollAtTop,bottom:isScrollAtBottom,left:isScrollAtLeft,right:isScrollAtRight});return scrollPingRef.current.top=isScrollAtTop,scrollPingRef.current.bottom=isScrollAtBottom,scrollPingRef.current.left=isScrollAtLeft,scrollPingRef.current.right=isScrollAtRight,function(isHorizontal,delta){var smoothOffset=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,originScroll=isHorizontal?delta<0&&scrollPingRef.current.left||delta>0&&scrollPingRef.current.right:delta<0&&scrollPingRef.current.top||delta>0&&scrollPingRef.current.bottom;return smoothOffset&&originScroll?(clearTimeout(lockTimeoutRef.current),lockRef.current=!1):(!originScroll||lockRef.current)&&lockScroll(),!lockRef.current&&originScroll}},"useOriginScroll");function useFrameWheel(inVirtual,isScrollAtTop,isScrollAtBottom,isScrollAtLeft,isScrollAtRight,horizontalScroll,onWheelDelta){var offsetRef=React.useRef(0),nextFrameRef=React.useRef(null),wheelValueRef=React.useRef(null),isMouseScrollRef=React.useRef(!1),originScroll=useOriginScroll(isScrollAtTop,isScrollAtBottom,isScrollAtLeft,isScrollAtRight);function onWheelY(event,deltaY){wrapperRaf.cancel(nextFrameRef.current),offsetRef.current+=deltaY,wheelValueRef.current=deltaY,!originScroll(!1,deltaY)&&(isFF||event.preventDefault(),nextFrameRef.current=wrapperRaf(function(){var patchMultiple=isMouseScrollRef.current?10:1;onWheelDelta(offsetRef.current*patchMultiple),offsetRef.current=0}))}__name(onWheelY,"onWheelY");function onWheelX(event,deltaX){onWheelDelta(deltaX,!0),isFF||event.preventDefault()}__name(onWheelX,"onWheelX");var wheelDirectionRef=React.useRef(null),wheelDirectionCleanRef=React.useRef(null);function onWheel(event){if(inVirtual){wrapperRaf.cancel(wheelDirectionCleanRef.current),wheelDirectionCleanRef.current=wrapperRaf(function(){wheelDirectionRef.current=null},2);var deltaX=event.deltaX,deltaY=event.deltaY,shiftKey=event.shiftKey,mergedDeltaX=deltaX,mergedDeltaY=deltaY;(wheelDirectionRef.current==="sx"||!wheelDirectionRef.current&&shiftKey&&deltaY&&!deltaX)&&(mergedDeltaX=deltaY,mergedDeltaY=0,wheelDirectionRef.current="sx");var absX=Math.abs(mergedDeltaX),absY=Math.abs(mergedDeltaY);wheelDirectionRef.current===null&&(wheelDirectionRef.current=horizontalScroll&&absX>absY?"x":"y"),wheelDirectionRef.current==="y"?onWheelY(event,mergedDeltaY):onWheelX(event,mergedDeltaX)}}__name(onWheel,"onWheel");function onFireFoxScroll(event){inVirtual&&(isMouseScrollRef.current=event.detail===wheelValueRef.current)}return __name(onFireFoxScroll,"onFireFoxScroll"),[onWheel,onFireFoxScroll]}__name(useFrameWheel,"useFrameWheel");function useGetSize(mergedData,getKey,heights,itemHeight){var _React$useMemo=React__namespace.useMemo(function(){return[new Map,[]]},[mergedData,heights.id,itemHeight]),_React$useMemo2=_slicedToArray(_React$useMemo,2),key2Index=_React$useMemo2[0],bottomList=_React$useMemo2[1],getSize=__name(function(startKey){var endKey=arguments.length>1&&arguments[1]!==void 0?arguments[1]:startKey,startIndex=key2Index.get(startKey),endIndex=key2Index.get(endKey);if(startIndex===void 0||endIndex===void 0)for(var dataLen=mergedData.length,i=bottomList.length;i<dataLen;i+=1){var _heights$get,item=mergedData[i],key=getKey(item);key2Index.set(key,i);var cacheHeight=(_heights$get=heights.get(key))!==null&&_heights$get!==void 0?_heights$get:itemHeight;if(bottomList[i]=(bottomList[i-1]||0)+cacheHeight,key===startKey&&(startIndex=i),key===endKey&&(endIndex=i),startIndex!==void 0&&endIndex!==void 0)break}return{top:bottomList[startIndex-1]||0,bottom:bottomList[endIndex]}},"getSize");return getSize}__name(useGetSize,"useGetSize");var CacheMap=function(){function CacheMap2(){_classCallCheck(this,CacheMap2),_defineProperty(this,"maps",void 0),_defineProperty(this,"id",0),this.maps=Object.create(null)}return __name(CacheMap2,"CacheMap"),_createClass(CacheMap2,[{key:"set",value:__name(function(key,value){this.maps[key]=value,this.id+=1},"set")},{key:"get",value:__name(function(key){return this.maps[key]},"get")}]),CacheMap2}();function useHeights(getKey,onItemAdd,onItemRemove){var _React$useState=React__namespace.useState(0),_React$useState2=_slicedToArray(_React$useState,2),updatedMark=_React$useState2[0],setUpdatedMark=_React$useState2[1],instanceRef=React.useRef(new Map),heightsRef=React.useRef(new CacheMap),collectRafRef=React.useRef();function cancelRaf(){wrapperRaf.cancel(collectRafRef.current)}__name(cancelRaf,"cancelRaf");function collectHeight(){var sync=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;cancelRaf();var doCollect=__name(function(){instanceRef.current.forEach(function(element2,key){if(element2&&element2.offsetParent){var htmlElement=findDOMNode(element2),offsetHeight=htmlElement.offsetHeight;heightsRef.current.get(key)!==offsetHeight&&heightsRef.current.set(key,htmlElement.offsetHeight)}}),setUpdatedMark(function(c2){return c2+1})},"doCollect");sync?doCollect():collectRafRef.current=wrapperRaf(doCollect)}__name(collectHeight,"collectHeight");function setInstanceRef(item,instance){var key=getKey(item);instanceRef.current.get(key),instance?(instanceRef.current.set(key,instance),collectHeight()):instanceRef.current.delete(key)}return __name(setInstanceRef,"setInstanceRef"),React.useEffect(function(){return cancelRaf},[]),[setInstanceRef,collectHeight,heightsRef.current,updatedMark]}__name(useHeights,"useHeights");var SMOOTH_PTG=14/15;function useMobileTouchMove(inVirtual,listRef,callback){var touchedRef=React.useRef(!1),touchXRef=React.useRef(0),touchYRef=React.useRef(0),elementRef=React.useRef(null),intervalRef=React.useRef(null),cleanUpEvents,onTouchMove=__name(function(e2){if(touchedRef.current){var currentX=Math.ceil(e2.touches[0].pageX),currentY=Math.ceil(e2.touches[0].pageY),offsetX=touchXRef.current-currentX,offsetY=touchYRef.current-currentY,_isHorizontal=Math.abs(offsetX)>Math.abs(offsetY);_isHorizontal?touchXRef.current=currentX:touchYRef.current=currentY,callback(_isHorizontal,_isHorizontal?offsetX:offsetY)&&e2.preventDefault(),clearInterval(intervalRef.current),intervalRef.current=setInterval(function(){_isHorizontal?offsetX*=SMOOTH_PTG:offsetY*=SMOOTH_PTG;var offset=Math.floor(_isHorizontal?offsetX:offsetY);(!callback(_isHorizontal,offset,!0)||Math.abs(offset)<=.1)&&clearInterval(intervalRef.current)},16)}},"onTouchMove"),onTouchEnd=__name(function(){touchedRef.current=!1,cleanUpEvents()},"onTouchEnd"),onTouchStart=__name(function(e2){cleanUpEvents(),e2.touches.length===1&&!touchedRef.current&&(touchedRef.current=!0,touchXRef.current=Math.ceil(e2.touches[0].pageX),touchYRef.current=Math.ceil(e2.touches[0].pageY),elementRef.current=e2.target,elementRef.current.addEventListener("touchmove",onTouchMove,{passive:!1}),elementRef.current.addEventListener("touchend",onTouchEnd,{passive:!0}))},"onTouchStart");cleanUpEvents=__name(function(){elementRef.current&&(elementRef.current.removeEventListener("touchmove",onTouchMove),elementRef.current.removeEventListener("touchend",onTouchEnd))},"cleanUpEvents"),useLayoutEffect(function(){return inVirtual&&listRef.current.addEventListener("touchstart",onTouchStart,{passive:!0}),function(){var _listRef$current;(_listRef$current=listRef.current)===null||_listRef$current===void 0||_listRef$current.removeEventListener("touchstart",onTouchStart),cleanUpEvents(),clearInterval(intervalRef.current)}},[inVirtual])}__name(useMobileTouchMove,"useMobileTouchMove");var MAX_TIMES=10;function useScrollTo(containerRef,data,heights,itemHeight,getKey,collectHeight,syncScrollTop,triggerFlash){var scrollRef=React__namespace.useRef(),_React$useState=React__namespace.useState(null),_React$useState2=_slicedToArray(_React$useState,2),syncState=_React$useState2[0],setSyncState=_React$useState2[1];return useLayoutEffect(function(){if(syncState&&syncState.times<MAX_TIMES){if(!containerRef.current){setSyncState(function(ori){return _objectSpread2({},ori)});return}collectHeight();var targetAlign=syncState.targetAlign,originAlign=syncState.originAlign,index2=syncState.index,offset=syncState.offset,height=containerRef.current.clientHeight,needCollectHeight=!1,newTargetAlign=targetAlign,targetTop=null;if(height){for(var mergedAlign=targetAlign||originAlign,stackTop=0,itemTop=0,itemBottom=0,maxLen=Math.min(data.length-1,index2),i=0;i<=maxLen;i+=1){var key=getKey(data[i]);itemTop=stackTop;var cacheHeight=heights.get(key);itemBottom=itemTop+(cacheHeight===void 0?itemHeight:cacheHeight),stackTop=itemBottom}for(var leftHeight=mergedAlign==="top"?offset:height-offset,_i2=maxLen;_i2>=0;_i2-=1){var _key=getKey(data[_i2]),_cacheHeight=heights.get(_key);if(_cacheHeight===void 0){needCollectHeight=!0;break}if(leftHeight-=_cacheHeight,leftHeight<=0)break}switch(mergedAlign){case"top":targetTop=itemTop-offset;break;case"bottom":targetTop=itemBottom-height+offset;break;default:{var scrollTop=containerRef.current.scrollTop,scrollBottom=scrollTop+height;itemTop<scrollTop?newTargetAlign="top":itemBottom>scrollBottom&&(newTargetAlign="bottom")}}targetTop!==null&&syncScrollTop(targetTop),targetTop!==syncState.lastTop&&(needCollectHeight=!0)}needCollectHeight&&setSyncState(_objectSpread2(_objectSpread2({},syncState),{},{times:syncState.times+1,targetAlign:newTargetAlign,lastTop:targetTop}))}},[syncState,containerRef.current]),function(arg){if(arg==null){triggerFlash();return}if(wrapperRaf.cancel(scrollRef.current),typeof arg=="number")syncScrollTop(arg);else if(arg&&_typeof(arg)==="object"){var index2,align=arg.align;"index"in arg?index2=arg.index:index2=data.findIndex(function(item){return getKey(item)===arg.key});var _arg$offset=arg.offset,offset=_arg$offset===void 0?0:_arg$offset;setSyncState({times:0,index:index2,offset,originAlign:align})}}}__name(useScrollTo,"useScrollTo");function getPageXY(e2,horizontal){var obj="touches"in e2?e2.touches[0]:e2;return obj[horizontal?"pageX":"pageY"]}__name(getPageXY,"getPageXY");var ScrollBar=React__namespace.forwardRef(function(props,ref){var prefixCls=props.prefixCls,rtl=props.rtl,scrollOffset=props.scrollOffset,scrollRange=props.scrollRange,onStartMove=props.onStartMove,onStopMove=props.onStopMove,onScroll=props.onScroll,horizontal=props.horizontal,spinSize=props.spinSize,containerSize=props.containerSize,style=props.style,propsThumbStyle=props.thumbStyle,_React$useState=React__namespace.useState(!1),_React$useState2=_slicedToArray(_React$useState,2),dragging=_React$useState2[0],setDragging=_React$useState2[1],_React$useState3=React__namespace.useState(null),_React$useState4=_slicedToArray(_React$useState3,2),pageXY=_React$useState4[0],setPageXY=_React$useState4[1],_React$useState5=React__namespace.useState(null),_React$useState6=_slicedToArray(_React$useState5,2),startTop=_React$useState6[0],setStartTop=_React$useState6[1],isLTR=!rtl,scrollbarRef=React__namespace.useRef(),thumbRef=React__namespace.useRef(),_React$useState7=React__namespace.useState(!1),_React$useState8=_slicedToArray(_React$useState7,2),visible=_React$useState8[0],setVisible=_React$useState8[1],visibleTimeoutRef=React__namespace.useRef(),delayHidden=__name(function(){clearTimeout(visibleTimeoutRef.current),setVisible(!0),visibleTimeoutRef.current=setTimeout(function(){setVisible(!1)},3e3)},"delayHidden2"),enableScrollRange=scrollRange-containerSize||0,enableOffsetRange=containerSize-spinSize||0,top=React__namespace.useMemo(function(){if(scrollOffset===0||enableScrollRange===0)return 0;var ptg=scrollOffset/enableScrollRange;return ptg*enableOffsetRange},[scrollOffset,enableScrollRange,enableOffsetRange]),onContainerMouseDown=__name(function(e2){e2.stopPropagation(),e2.preventDefault()},"onContainerMouseDown2"),stateRef=React__namespace.useRef({top,dragging,pageY:pageXY,startTop});stateRef.current={top,dragging,pageY:pageXY,startTop};var onThumbMouseDown=__name(function(e2){setDragging(!0),setPageXY(getPageXY(e2,horizontal)),setStartTop(stateRef.current.top),onStartMove(),e2.stopPropagation(),e2.preventDefault()},"onThumbMouseDown2");React__namespace.useEffect(function(){var onScrollbarTouchStart=__name(function(e2){e2.preventDefault()},"onScrollbarTouchStart2"),scrollbarEle=scrollbarRef.current,thumbEle=thumbRef.current;return scrollbarEle.addEventListener("touchstart",onScrollbarTouchStart,{passive:!1}),thumbEle.addEventListener("touchstart",onThumbMouseDown,{passive:!1}),function(){scrollbarEle.removeEventListener("touchstart",onScrollbarTouchStart),thumbEle.removeEventListener("touchstart",onThumbMouseDown)}},[]);var enableScrollRangeRef=React__namespace.useRef();enableScrollRangeRef.current=enableScrollRange;var enableOffsetRangeRef=React__namespace.useRef();enableOffsetRangeRef.current=enableOffsetRange,React__namespace.useEffect(function(){if(dragging){var moveRafId,onMouseMove=__name(function(e2){var _stateRef$current=stateRef.current,stateDragging=_stateRef$current.dragging,statePageY=_stateRef$current.pageY,stateStartTop=_stateRef$current.startTop;wrapperRaf.cancel(moveRafId);var rect=scrollbarRef.current.getBoundingClientRect(),scale=containerSize/(horizontal?rect.width:rect.height);if(stateDragging){var offset=(getPageXY(e2,horizontal)-statePageY)*scale,newTop=stateStartTop;!isLTR&&horizontal?newTop-=offset:newTop+=offset;var tmpEnableScrollRange=enableScrollRangeRef.current,tmpEnableOffsetRange=enableOffsetRangeRef.current,ptg=tmpEnableOffsetRange?newTop/tmpEnableOffsetRange:0,newScrollTop=Math.ceil(ptg*tmpEnableScrollRange);newScrollTop=Math.max(newScrollTop,0),newScrollTop=Math.min(newScrollTop,tmpEnableScrollRange),moveRafId=wrapperRaf(function(){onScroll(newScrollTop,horizontal)})}},"onMouseMove2"),onMouseUp=__name(function(){setDragging(!1),onStopMove()},"onMouseUp2");return window.addEventListener("mousemove",onMouseMove,{passive:!0}),window.addEventListener("touchmove",onMouseMove,{passive:!0}),window.addEventListener("mouseup",onMouseUp,{passive:!0}),window.addEventListener("touchend",onMouseUp,{passive:!0}),function(){window.removeEventListener("mousemove",onMouseMove),window.removeEventListener("touchmove",onMouseMove),window.removeEventListener("mouseup",onMouseUp),window.removeEventListener("touchend",onMouseUp),wrapperRaf.cancel(moveRafId)}}},[dragging]),React__namespace.useEffect(function(){return delayHidden(),function(){clearTimeout(visibleTimeoutRef.current)}},[scrollOffset]),React__namespace.useImperativeHandle(ref,function(){return{delayHidden}});var scrollbarPrefixCls="".concat(prefixCls,"-scrollbar"),containerStyle={position:"absolute",visibility:visible?null:"hidden"},thumbStyle={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return horizontal?(containerStyle.height=8,containerStyle.left=0,containerStyle.right=0,containerStyle.bottom=0,thumbStyle.height="100%",thumbStyle.width=spinSize,isLTR?thumbStyle.left=top:thumbStyle.right=top):(containerStyle.width=8,containerStyle.top=0,containerStyle.bottom=0,isLTR?containerStyle.right=0:containerStyle.left=0,thumbStyle.width="100%",thumbStyle.height=spinSize,thumbStyle.top=top),React__namespace.createElement("div",{ref:scrollbarRef,className:classNames(scrollbarPrefixCls,_defineProperty(_defineProperty(_defineProperty({},"".concat(scrollbarPrefixCls,"-horizontal"),horizontal),"".concat(scrollbarPrefixCls,"-vertical"),!horizontal),"".concat(scrollbarPrefixCls,"-visible"),visible)),style:_objectSpread2(_objectSpread2({},containerStyle),style),onMouseDown:onContainerMouseDown,onMouseMove:delayHidden},React__namespace.createElement("div",{ref:thumbRef,className:classNames("".concat(scrollbarPrefixCls,"-thumb"),_defineProperty({},"".concat(scrollbarPrefixCls,"-thumb-moving"),dragging)),style:_objectSpread2(_objectSpread2({},thumbStyle),propsThumbStyle),onMouseDown:onThumbMouseDown}))}),MIN_SIZE=20;function getSpinSize(){var containerSize=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,scrollRange=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,baseSize=containerSize/scrollRange*containerSize;return isNaN(baseSize)&&(baseSize=0),baseSize=Math.max(baseSize,MIN_SIZE),Math.floor(baseSize)}__name(getSpinSize,"getSpinSize");var _excluded=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","direction","scrollWidth","component","onScroll","onVirtualScroll","onVisibleChange","innerProps","extraRender","styles"],EMPTY_DATA=[],ScrollStyle={overflowY:"auto",overflowAnchor:"none"};function RawList(props,ref){var _props$prefixCls=props.prefixCls,prefixCls=_props$prefixCls===void 0?"rc-virtual-list":_props$prefixCls,className=props.className,height=props.height,itemHeight=props.itemHeight,_props$fullHeight=props.fullHeight,fullHeight=_props$fullHeight===void 0?!0:_props$fullHeight,style=props.style,data=props.data,children=props.children,itemKey=props.itemKey,virtual=props.virtual,direction=props.direction,scrollWidth=props.scrollWidth,_props$component=props.component,Component=_props$component===void 0?"div":_props$component,onScroll=props.onScroll,onVirtualScroll=props.onVirtualScroll,onVisibleChange=props.onVisibleChange,innerProps=props.innerProps,extraRender=props.extraRender,styles2=props.styles,restProps=_objectWithoutProperties(props,_excluded),getKey=React__namespace.useCallback(function(item){return typeof itemKey=="function"?itemKey(item):item==null?void 0:item[itemKey]},[itemKey]),_useHeights=useHeights(getKey),_useHeights2=_slicedToArray(_useHeights,4),setInstanceRef=_useHeights2[0],collectHeight=_useHeights2[1],heights=_useHeights2[2],heightUpdatedMark=_useHeights2[3],useVirtual=!!(virtual!==!1&&height&&itemHeight),containerHeight=React__namespace.useMemo(function(){return Object.values(heights.maps).reduce(function(total,curr){return total+curr},0)},[heights.id,heights.maps]),inVirtual=useVirtual&&data&&(Math.max(itemHeight*data.length,containerHeight)>height||!!scrollWidth),isRTL=direction==="rtl",mergedClassName=classNames(prefixCls,_defineProperty({},"".concat(prefixCls,"-rtl"),isRTL),className),mergedData=data||EMPTY_DATA,componentRef=React.useRef(),fillerInnerRef=React.useRef(),containerRef=React.useRef(),_useState=React.useState(0),_useState2=_slicedToArray(_useState,2),offsetTop=_useState2[0],setOffsetTop=_useState2[1],_useState3=React.useState(0),_useState4=_slicedToArray(_useState3,2),offsetLeft=_useState4[0],setOffsetLeft=_useState4[1],_useState5=React.useState(!1),_useState6=_slicedToArray(_useState5,2),scrollMoving=_useState6[0],setScrollMoving=_useState6[1],onScrollbarStartMove=__name(function(){setScrollMoving(!0)},"onScrollbarStartMove"),onScrollbarStopMove=__name(function(){setScrollMoving(!1)},"onScrollbarStopMove"),sharedConfig={getKey};function syncScrollTop(newTop){setOffsetTop(function(origin){var value;typeof newTop=="function"?value=newTop(origin):value=newTop;var alignedTop=keepInRange(value);return componentRef.current.scrollTop=alignedTop,alignedTop})}__name(syncScrollTop,"syncScrollTop");var rangeRef=React.useRef({start:0,end:mergedData.length}),diffItemRef=React.useRef(),_useDiffItem=useDiffItem(mergedData,getKey),_useDiffItem2=_slicedToArray(_useDiffItem,1),diffItem=_useDiffItem2[0];diffItemRef.current=diffItem;var _React$useMemo=React__namespace.useMemo(function(){if(!useVirtual)return{scrollHeight:void 0,start:0,end:mergedData.length-1,offset:void 0};if(!inVirtual){var _fillerInnerRef$curre;return{scrollHeight:((_fillerInnerRef$curre=fillerInnerRef.current)===null||_fillerInnerRef$curre===void 0?void 0:_fillerInnerRef$curre.offsetHeight)||0,start:0,end:mergedData.length-1,offset:void 0}}for(var itemTop=0,startIndex,startOffset,endIndex,dataLen=mergedData.length,i=0;i<dataLen;i+=1){var _item=mergedData[i],key=getKey(_item),cacheHeight=heights.get(key),currentItemBottom=itemTop+(cacheHeight===void 0?itemHeight:cacheHeight);currentItemBottom>=offsetTop&&startIndex===void 0&&(startIndex=i,startOffset=itemTop),currentItemBottom>offsetTop+height&&endIndex===void 0&&(endIndex=i),itemTop=currentItemBottom}return startIndex===void 0&&(startIndex=0,startOffset=0,endIndex=Math.ceil(height/itemHeight)),endIndex===void 0&&(endIndex=mergedData.length-1),endIndex=Math.min(endIndex+1,mergedData.length-1),{scrollHeight:itemTop,start:startIndex,end:endIndex,offset:startOffset}},[inVirtual,useVirtual,offsetTop,mergedData,heightUpdatedMark,height]),scrollHeight=_React$useMemo.scrollHeight,start=_React$useMemo.start,end=_React$useMemo.end,fillerOffset=_React$useMemo.offset;rangeRef.current.start=start,rangeRef.current.end=end;var _React$useState=React__namespace.useState({width:0,height}),_React$useState2=_slicedToArray(_React$useState,2),size=_React$useState2[0],setSize=_React$useState2[1],onHolderResize=__name(function(sizeInfo){setSize({width:sizeInfo.offsetWidth,height:sizeInfo.offsetHeight})},"onHolderResize"),verticalScrollBarRef=React.useRef(),horizontalScrollBarRef=React.useRef(),horizontalScrollBarSpinSize=React__namespace.useMemo(function(){return getSpinSize(size.width,scrollWidth)},[size.width,scrollWidth]),verticalScrollBarSpinSize=React__namespace.useMemo(function(){return getSpinSize(size.height,scrollHeight)},[size.height,scrollHeight]),maxScrollHeight=scrollHeight-height,maxScrollHeightRef=React.useRef(maxScrollHeight);maxScrollHeightRef.current=maxScrollHeight;function keepInRange(newScrollTop){var newTop=newScrollTop;return Number.isNaN(maxScrollHeightRef.current)||(newTop=Math.min(newTop,maxScrollHeightRef.current)),newTop=Math.max(newTop,0),newTop}__name(keepInRange,"keepInRange");var isScrollAtTop=offsetTop<=0,isScrollAtBottom=offsetTop>=maxScrollHeight,isScrollAtLeft=offsetLeft<=0,isScrollAtRight=offsetLeft>=scrollWidth,originScroll=useOriginScroll(isScrollAtTop,isScrollAtBottom,isScrollAtLeft,isScrollAtRight),getVirtualScrollInfo=__name(function(){return{x:isRTL?-offsetLeft:offsetLeft,y:offsetTop}},"getVirtualScrollInfo"),lastVirtualScrollInfoRef=React.useRef(getVirtualScrollInfo()),triggerScroll=useEvent(function(params){if(onVirtualScroll){var nextInfo=_objectSpread2(_objectSpread2({},getVirtualScrollInfo()),params);(lastVirtualScrollInfoRef.current.x!==nextInfo.x||lastVirtualScrollInfoRef.current.y!==nextInfo.y)&&(onVirtualScroll(nextInfo),lastVirtualScrollInfoRef.current=nextInfo)}});function onScrollBar(newScrollOffset,horizontal){var newOffset=newScrollOffset;horizontal?(ReactDOM.flushSync(function(){setOffsetLeft(newOffset)}),triggerScroll()):syncScrollTop(newOffset)}__name(onScrollBar,"onScrollBar");function onFallbackScroll(e2){var newScrollTop=e2.currentTarget.scrollTop;newScrollTop!==offsetTop&&syncScrollTop(newScrollTop),onScroll==null||onScroll(e2),triggerScroll()}__name(onFallbackScroll,"onFallbackScroll");var keepInHorizontalRange=__name(function(nextOffsetLeft){var tmpOffsetLeft=nextOffsetLeft,max=scrollWidth?scrollWidth-size.width:0;return tmpOffsetLeft=Math.max(tmpOffsetLeft,0),tmpOffsetLeft=Math.min(tmpOffsetLeft,max),tmpOffsetLeft},"keepInHorizontalRange"),onWheelDelta=useEvent(function(offsetXY,fromHorizontal){fromHorizontal?(ReactDOM.flushSync(function(){setOffsetLeft(function(left){var nextOffsetLeft=left+(isRTL?-offsetXY:offsetXY);return keepInHorizontalRange(nextOffsetLeft)})}),triggerScroll()):syncScrollTop(function(top){var newTop=top+offsetXY;return newTop})}),_useFrameWheel=useFrameWheel(useVirtual,isScrollAtTop,isScrollAtBottom,isScrollAtLeft,isScrollAtRight,!!scrollWidth,onWheelDelta),_useFrameWheel2=_slicedToArray(_useFrameWheel,2),onRawWheel=_useFrameWheel2[0],onFireFoxScroll=_useFrameWheel2[1];useMobileTouchMove(useVirtual,componentRef,function(isHorizontal,delta,smoothOffset){return originScroll(isHorizontal,delta,smoothOffset)?!1:(onRawWheel({preventDefault:__name(function(){},"preventDefault"),deltaX:isHorizontal?delta:0,deltaY:isHorizontal?0:delta}),!0)}),useLayoutEffect(function(){function onMozMousePixelScroll(e2){useVirtual&&e2.preventDefault()}__name(onMozMousePixelScroll,"onMozMousePixelScroll");var componentEle=componentRef.current;return componentEle.addEventListener("wheel",onRawWheel,{passive:!1}),componentEle.addEventListener("DOMMouseScroll",onFireFoxScroll,{passive:!0}),componentEle.addEventListener("MozMousePixelScroll",onMozMousePixelScroll,{passive:!1}),function(){componentEle.removeEventListener("wheel",onRawWheel),componentEle.removeEventListener("DOMMouseScroll",onFireFoxScroll),componentEle.removeEventListener("MozMousePixelScroll",onMozMousePixelScroll)}},[useVirtual]),useLayoutEffect(function(){if(scrollWidth){var newOffsetLeft=keepInHorizontalRange(offsetLeft);setOffsetLeft(newOffsetLeft),triggerScroll({x:newOffsetLeft})}},[size.width,scrollWidth]);var delayHideScrollBar=__name(function(){var _verticalScrollBarRef,_horizontalScrollBarR;(_verticalScrollBarRef=verticalScrollBarRef.current)===null||_verticalScrollBarRef===void 0||_verticalScrollBarRef.delayHidden(),(_horizontalScrollBarR=horizontalScrollBarRef.current)===null||_horizontalScrollBarR===void 0||_horizontalScrollBarR.delayHidden()},"delayHideScrollBar"),_scrollTo=useScrollTo(componentRef,mergedData,heights,itemHeight,getKey,function(){return collectHeight(!0)},syncScrollTop,delayHideScrollBar);React__namespace.useImperativeHandle(ref,function(){return{nativeElement:containerRef.current,getScrollInfo:getVirtualScrollInfo,scrollTo:__name(function(config){function isPosScroll(arg){return arg&&_typeof(arg)==="object"&&("left"in arg||"top"in arg)}__name(isPosScroll,"isPosScroll"),isPosScroll(config)?(config.left!==void 0&&setOffsetLeft(keepInHorizontalRange(config.left)),_scrollTo(config.top)):_scrollTo(config)},"scrollTo")}}),useLayoutEffect(function(){if(onVisibleChange){var renderList=mergedData.slice(start,end+1);onVisibleChange(renderList,mergedData)}},[start,end,mergedData]);var getSize=useGetSize(mergedData,getKey,heights,itemHeight),extraContent=extraRender==null?void 0:extraRender({start,end,virtual:inVirtual,offsetX:offsetLeft,offsetY:fillerOffset,rtl:isRTL,getSize}),listChildren=useChildren(mergedData,start,end,scrollWidth,offsetLeft,setInstanceRef,children,sharedConfig),componentStyle=null;height&&(componentStyle=_objectSpread2(_defineProperty({},fullHeight?"height":"maxHeight",height),ScrollStyle),useVirtual&&(componentStyle.overflowY="hidden",scrollWidth&&(componentStyle.overflowX="hidden"),scrollMoving&&(componentStyle.pointerEvents="none")));var containerProps={};return isRTL&&(containerProps.dir="rtl"),React__namespace.createElement("div",_extends({ref:containerRef,style:_objectSpread2(_objectSpread2({},style),{},{position:"relative"}),className:mergedClassName},containerProps,restProps),React__namespace.createElement(RefResizeObserver,{onResize:onHolderResize},React__namespace.createElement(Component,{className:"".concat(prefixCls,"-holder"),style:componentStyle,ref:componentRef,onScroll:onFallbackScroll,onMouseEnter:delayHideScrollBar},React__namespace.createElement(Filler,{prefixCls,height:scrollHeight,offsetX:offsetLeft,offsetY:fillerOffset,scrollWidth,onInnerResize:collectHeight,ref:fillerInnerRef,innerProps,rtl:isRTL,extra:extraContent},listChildren))),inVirtual&&scrollHeight>height&&React__namespace.createElement(ScrollBar,{ref:verticalScrollBarRef,prefixCls,scrollOffset:offsetTop,scrollRange:scrollHeight,rtl:isRTL,onScroll:onScrollBar,onStartMove:onScrollbarStartMove,onStopMove:onScrollbarStopMove,spinSize:verticalScrollBarSpinSize,containerSize:size.height,style:styles2==null?void 0:styles2.verticalScrollBar,thumbStyle:styles2==null?void 0:styles2.verticalScrollBarThumb}),inVirtual&&scrollWidth>size.width&&React__namespace.createElement(ScrollBar,{ref:horizontalScrollBarRef,prefixCls,scrollOffset:offsetLeft,scrollRange:scrollWidth,rtl:isRTL,onScroll:onScrollBar,onStartMove:onScrollbarStartMove,onStopMove:onScrollbarStopMove,spinSize:horizontalScrollBarSpinSize,containerSize:size.width,horizontal:!0,style:styles2==null?void 0:styles2.horizontalScrollBar,thumbStyle:styles2==null?void 0:styles2.horizontalScrollBarThumb}))}__name(RawList,"RawList");var List=React__namespace.forwardRef(RawList);List.displayName="List";function FilterByValue(props){const{model}=props,localeService=core.useDependency(core.LocaleService),searchText=ui.useObservable(model.searchString$,"",!0),items=ui.useObservable(model.filterItems$,void 0,!0),filterOnly=localeService.t("sheets-filter.panel.filter-only"),stat=statisticFilterByValueItems(items),allChecked=stat.checked>0&&stat.unchecked===0,indeterminate=stat.checked>0&&stat.unchecked>0,onFilterCheckToggled=React.useCallback((item,checked)=>{model.onFilterCheckToggled(item,checked)},[model]),onFilterOnlyClicked=React.useCallback(item=>{model.onFilterOnly(item)},[model]),onCheckAllToggled=React.useCallback(()=>{model.onCheckAllToggled(!allChecked)},[model,allChecked]),onSearchValueChange=React.useCallback(str=>{model.setSearchString(str)},[model]);return React.createElement("div",{className:styles.sheetsFilterPanelValuesContainer},React.createElement(design.Input,{autoFocus:!0,value:searchText,placeholder:localeService.t("sheets-filter.panel.search-placeholder"),onChange:onSearchValueChange}),React.createElement("div",{className:styles.sheetsFilterPanelValuesList},React.createElement("div",{className:styles.sheetsFilterPanelValuesItem},React.createElement("div",{className:styles.sheetsFilterPanelValuesItemInner},React.createElement(design.Checkbox,{indeterminate,disabled:items.length===0,checked:allChecked,onChange:onCheckAllToggled}),React.createElement("span",{className:styles.sheetsFilterPanelValuesItemText},`${localeService.t("sheets-filter.panel.select-all")}`),React.createElement("span",{className:styles.sheetsFilterPanelValuesItemCount},`(${stat.checked}/${stat.checked+stat.unchecked})`))),React.createElement("div",{className:styles.sheetsFilterPanelValuesVirtual},React.createElement(List,{style:{paddingRight:8},data:items,height:190,itemHeight:32,itemKey:__name(item=>`${item.value}----${item.checked}`,"itemKey")},item=>React.createElement("div",{className:styles.sheetsFilterPanelValuesItem},React.createElement("div",{className:styles.sheetsFilterPanelValuesItemInner},React.createElement(design.Checkbox,{checked:item.checked,onChange:__name(()=>onFilterCheckToggled(item,!item.checked),"onChange")}),React.createElement(design.Tooltip,{showIfEllipsis:!0,placement:"top",title:item.value},React.createElement("span",{className:styles.sheetsFilterPanelValuesItemText},item.value)),React.createElement("span",{className:styles.sheetsFilterPanelValuesItemCount},`(${item.count})`),React.createElement(design.Button,{className:styles.sheetsFilterPanelValuesItemExcludeButton,size:"small",type:"link",onClick:__name(()=>onFilterOnlyClicked(item),"onClick")},filterOnly)))))))}__name(FilterByValue,"FilterByValue");function FilterPanel(){var _a2;const sheetsFilterPanelService=core.useDependency(SheetsFilterPanelService),localeService=core.useDependency(core.LocaleService),commandService=core.useDependency(core.ICommandService),filterBy=ui.useObservable(sheetsFilterPanelService.filterBy$,void 0,!0),filterByModel=ui.useObservable(sheetsFilterPanelService.filterByModel$,void 0,!1),canApply=ui.useObservable(()=>(filterByModel==null?void 0:filterByModel.canApply$)||rxjs.of(!1),void 0,!1,[filterByModel]),options=useFilterByOptions(localeService),clearFilterDisabled=!ui.useObservable(sheetsFilterPanelService.hasCriteria$),onFilterByTypeChange=React.useCallback(value=>{commandService.executeCommand(ChangeFilterByOperation.id,{filterBy:value})},[commandService]),onClearCriteria=React.useCallback(async()=>{await(filterByModel==null?void 0:filterByModel.clear()),commandService.executeCommand(CloseFilterPanelOperation.id)},[filterByModel,commandService]),onCancel=React.useCallback(()=>{commandService.executeCommand(CloseFilterPanelOperation.id)},[commandService]),onApply=React.useCallback(async()=>{await(filterByModel==null?void 0:filterByModel.apply()),commandService.executeCommand(CloseFilterPanelOperation.id)},[filterByModel,commandService]),range=(_a2=core.useDependency(sheetsFilter.SheetsFilterService).activeFilterModel)==null?void 0:_a2.getRange(),colIndex=sheetsFilterPanelService.col,FilterPanelEmbedPointPart=ui.useComponentsOfPart(sheetsUi.SheetsUIPart.FILTER_PANEL_EMBED_POINT);return React.createElement("div",{className:styles.sheetsFilterPanel},React.createElement(ui.ComponentContainer,{components:FilterPanelEmbedPointPart,sharedProps:{range,colIndex,onClose:onCancel}}),React.createElement("div",{className:styles.sheetsFilterPanelHeader},React.createElement(design.Segmented,{value:filterBy,options,onChange:__name(value=>onFilterByTypeChange(value),"onChange")})),filterByModel?React.createElement("div",{className:styles.sheetsFilterPanelContent},filterBy===FilterBy.VALUES?React.createElement(FilterByValue,{model:filterByModel}):React.createElement(FilterByCondition,{model:filterByModel})):React.createElement("div",{style:{flex:1}}),React.createElement("div",{className:styles.sheetsFilterPanelFooter},React.createElement(design.Button,{type:"link",onClick:onClearCriteria,disabled:clearFilterDisabled},localeService.t("sheets-filter.panel.clear-filter")),React.createElement("span",{className:styles.sheetsFilterPanelFooterPrimaryButtons},React.createElement(design.Button,{type:"default",onClick:onCancel},localeService.t("sheets-filter.panel.cancel")),React.createElement(design.Button,{disabled:!canApply,type:"primary",onClick:onApply},localeService.t("sheets-filter.panel.confirm")))))}__name(FilterPanel,"FilterPanel");function useFilterByOptions(localeService){const locale=localeService.getCurrentLocale();return React.useMemo(()=>[{label:localeService.t("sheets-filter.panel.by-values"),value:FilterBy.VALUES},{label:localeService.t("sheets-filter.panel.by-conditions"),value:FilterBy.CONDITIONS}],[locale,localeService])}__name(useFilterByOptions,"useFilterByOptions");const SmartToggleFilterShortcut={id:SmartToggleSheetsFilterCommand.id,binding:ui.KeyCode.L|ui.MetaKeys.CTRL_COMMAND|ui.MetaKeys.SHIFT,description:"sheets-filter.shortcut.smart-toggle-filter",preconditions:sheetsUi.whenSheetEditorFocused,group:"4_sheet-edit"},BUTTON_VIEWPORT=16,FILTER_BUTTON_EMPTY=new Path2D("M3.30363 3C2.79117 3 2.51457 3.60097 2.84788 3.99024L6.8 8.60593V12.5662C6.8 12.7184 6.8864 12.8575 7.02289 12.9249L8.76717 13.7863C8.96655 13.8847 9.2 13.7396 9.2 13.5173V8.60593L13.1521 3.99024C13.4854 3.60097 13.2088 3 12.6964 3H3.30363Z"),_FilterButton=class _FilterButton{static drawNoCriteria(ctx,size,fgColor,bgColor){ctx.save(),engineRender.Rect.drawWith(ctx,{radius:2,width:BUTTON_VIEWPORT,height:BUTTON_VIEWPORT,fill:bgColor}),ctx.lineCap="square",ctx.strokeStyle=fgColor,ctx.scale(size/BUTTON_VIEWPORT,size/BUTTON_VIEWPORT),ctx.beginPath(),ctx.lineWidth=1,ctx.lineCap="round",ctx.moveTo(3,4),ctx.lineTo(13,4),ctx.moveTo(4.5,8),ctx.lineTo(11.5,8),ctx.moveTo(6,12),ctx.lineTo(10,12),ctx.stroke(),ctx.restore()}static drawHasCriteria(ctx,size,fgColor,bgColor){ctx.save(),engineRender.Rect.drawWith(ctx,{radius:2,width:BUTTON_VIEWPORT,height:BUTTON_VIEWPORT,fill:bgColor}),ctx.scale(size/BUTTON_VIEWPORT,size/BUTTON_VIEWPORT),ctx.fillStyle=fgColor,ctx.fill(FILTER_BUTTON_EMPTY),ctx.restore()}};__name(_FilterButton,"FilterButton");let FilterButton=_FilterButton;var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$6");const FILTER_ICON_SIZE=16,FILTER_ICON_PADDING=1;let SheetsFilterButtonShape=(_f=class extends engineRender.Shape{constructor(key,props,_contextService,_commandService,_themeService){super(key,props);__publicField(this,"_cellWidth",0);__publicField(this,"_cellHeight",0);__publicField(this,"_filterParams");__publicField(this,"_hovered",!1);this._contextService=_contextService,this._commandService=_commandService,this._themeService=_themeService,this.setShapeProps(props),this.onPointerDown$.subscribeEvent(evt=>this.onPointerDown(evt)),this.onPointerEnter$.subscribeEvent(()=>this.onPointerEnter()),this.onPointerLeave$.subscribeEvent(()=>this.onPointerLeave())}setShapeProps(props){typeof props.cellHeight<"u"&&(this._cellHeight=props.cellHeight),typeof props.cellWidth<"u"&&(this._cellWidth=props.cellWidth),typeof props.filterParams<"u"&&(this._filterParams=props.filterParams),this.transformByState({width:props.width,height:props.height})}_draw(ctx){const cellHeight=this._cellHeight,cellWidth=this._cellWidth,left=FILTER_ICON_SIZE-cellWidth,top=FILTER_ICON_SIZE-cellHeight;ctx.save();const cellRegion=new Path2D;cellRegion.rect(left,top,cellWidth,cellHeight),ctx.clip(cellRegion);const{hasCriteria}=this._filterParams,fgColor=this._themeService.getCurrentTheme().primaryColor,bgColor=this._hovered?this._themeService.getCurrentTheme().grey50:"rgba(255, 255, 255, 1.0)";hasCriteria?FilterButton.drawHasCriteria(ctx,FILTER_ICON_SIZE,fgColor,bgColor):FilterButton.drawNoCriteria(ctx,FILTER_ICON_SIZE,fgColor,bgColor),ctx.restore()}onPointerDown(evt){if(evt.button===2)return;const{col,unitId,subUnitId}=this._filterParams;this._contextService.getContextValue(FILTER_PANEL_OPENED_KEY)||!this._commandService.hasCommand(OpenFilterPanelOperation.id)||setTimeout(()=>{this._commandService.executeCommand(OpenFilterPanelOperation.id,{unitId,subUnitId,col})},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}},__name(_f,"SheetsFilterButtonShape"),_f);SheetsFilterButtonShape=__decorateClass$6([__decorateParam$6(2,core.IContextService),__decorateParam$6(3,core.ICommandService),__decorateParam$6(4,core.Inject(core.ThemeService))],SheetsFilterButtonShape);var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$5");const DEFAULT_Z_INDEX=1e3,SHEETS_FILTER_BUTTON_Z_INDEX=5e3;let SheetsFilterRenderController=(_g=class extends core.RxDisposable{constructor(_context,_injector,_sheetSkeletonManagerService,_sheetsFilterService,_themeService,_sheetInterceptorService,_commandService,_selectionRenderService){super();__publicField(this,"_filterRangeShape",null);__publicField(this,"_buttonRenderDisposable",null);__publicField(this,"_filterButtonShapes",[]);this._context=_context,this._injector=_injector,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._sheetsFilterService=_sheetsFilterService,this._themeService=_themeService,this._sheetInterceptorService=_sheetInterceptorService,this._commandService=_commandService,this._selectionRenderService=_selectionRenderService,this._initRenderer()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){this._sheetSkeletonManagerService.currentSkeleton$.pipe(rxjs.switchMap(skeletonParams=>{var _a2,_b2;if(!skeletonParams)return rxjs.of(null);const{unit:workbook,unitId}=this._context,worksheetId=((_a2=workbook.getActiveSheet())==null?void 0:_a2.getSheetId())||"",filterModel=(_b2=this._sheetsFilterService.getFilterModel(unitId,worksheetId))!=null?_b2:void 0,getParams=__name(()=>({unitId,worksheetId,filterModel,range:filterModel==null?void 0:filterModel.getRange(),skeleton:skeletonParams.skeleton}),"getParams");return core.fromCallback(this._commandService.onCommandExecuted.bind(this._commandService)).pipe(rxjs.filter(([command])=>{var _a3;return command.type===core.CommandType.MUTATION&&((_a3=command.params)==null?void 0:_a3.unitId)===workbook.getUnitId()&&(sheetsFilter.FILTER_MUTATIONS.has(command.id)||command.id===sheets.SetRangeValuesMutation.id)}),rxjs.throttleTime(20,void 0,{leading:!1,trailing:!0}),rxjs.map(getParams),rxjs.startWith(getParams()))}),rxjs.takeUntil(this.dispose$)).subscribe(renderParams=>{this._disposeRendering(),!(!renderParams||!renderParams.range)&&(this._renderRange(renderParams.range,renderParams.skeleton),this._renderButtons(renderParams))})}_renderRange(range,skeleton){const{scene}=this._context,{rangeWithCoord,style}=this._selectionRenderService.attachSelectionWithCoord({range,primary:null,style:null}),{rowHeaderWidth,columnHeaderHeight}=skeleton,filterRangeShape=this._filterRangeShape=new sheetsUi.SelectionShape(scene,DEFAULT_Z_INDEX,this._themeService,!0);filterRangeShape.update(rangeWithCoord,rowHeaderWidth,columnHeaderHeight,{hasAutoFill:!1,fill:"rgba(0, 0, 0, 0.0)",...style}),filterRangeShape.setEvent(!1),scene.makeDirty(!0)}_renderButtons(params){const{range,filterModel,unitId,skeleton,worksheetId}=params,{scene}=this._context;this._interceptCellContent(unitId,worksheetId,params.range);const{startColumn,endColumn,startRow}=range;for(let col=startColumn;col<=endColumn;col++){const key=`sheets-filter-button-${col}`,startPosition=sheetsUi.getCoordByCell(startRow,col,scene,skeleton),{startX,startY,endX,endY}=startPosition,cellWidth=endX-startX,cellHeight=endY-startY;if(cellHeight<=FILTER_ICON_PADDING||cellWidth<=FILTER_ICON_PADDING)continue;const hasCriteria=!!filterModel.getFilterColumn(col),iconStartX=endX-FILTER_ICON_SIZE-FILTER_ICON_PADDING,iconStartY=endY-FILTER_ICON_SIZE-FILTER_ICON_PADDING,props={left:iconStartX,top:iconStartY,height:FILTER_ICON_SIZE,width:FILTER_ICON_SIZE,zIndex:SHEETS_FILTER_BUTTON_Z_INDEX,cellHeight,cellWidth,filterParams:{unitId,subUnitId:worksheetId,col,hasCriteria}},buttonShape=this._injector.createInstance(SheetsFilterButtonShape,key,props);this._filterButtonShapes.push(buttonShape)}scene.addObjects(this._filterButtonShapes),scene.makeDirty()}_interceptCellContent(workbookId,worksheetId,range){const{startRow,startColumn,endColumn}=range;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{effect:core.InterceptorEffectEnum.Style,handler:__name((cell,pos,next)=>{const{row,col,unitId,subUnitId}=pos;return unitId!==workbookId||subUnitId!==worksheetId||row!==startRow||col<startColumn||col>endColumn?next(cell):next({...cell,fontRenderExtension:{...cell==null?void 0:cell.fontRenderExtension,rightOffset:FILTER_ICON_SIZE}})},"handler"),priority:10})}_disposeRendering(){var _a2,_b2;(_a2=this._filterRangeShape)==null||_a2.dispose(),this._filterButtonShapes.forEach(s=>s.dispose()),(_b2=this._buttonRenderDisposable)==null||_b2.dispose(),this._filterRangeShape=null,this._buttonRenderDisposable=null,this._filterButtonShapes=[]}},__name(_g,"SheetsFilterRenderController"),_g);SheetsFilterRenderController=__decorateClass$5([__decorateParam$5(1,core.Inject(core.Injector)),__decorateParam$5(2,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$5(3,core.Inject(sheetsFilter.SheetsFilterService)),__decorateParam$5(4,core.Inject(core.ThemeService)),__decorateParam$5(5,core.Inject(sheets.SheetInterceptorService)),__decorateParam$5(6,core.ICommandService),__decorateParam$5(7,sheetsUi.ISheetSelectionRenderService)],SheetsFilterRenderController);var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$4");let SheetsFilterUIMobileController=(_h=class extends core.RxDisposable{constructor(_renderManagerService,_sheetsRenderService){super(),this._renderManagerService=_renderManagerService,this._sheetsRenderService=_sheetsRenderService,[sheetsFilter.SetSheetsFilterRangeMutation,sheetsFilter.SetSheetsFilterCriteriaMutation,sheetsFilter.RemoveSheetsFilterMutation,sheetsFilter.ReCalcSheetsFilterMutation].forEach(m2=>this.disposeWithMe(this._sheetsRenderService.registerSkeletonChangingMutations(m2.id))),this.disposeWithMe(this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,[SheetsFilterRenderController]))}},__name(_h,"SheetsFilterUIMobileController"),_h);SheetsFilterUIMobileController=__decorateClass$4([__decorateParam$4(0,engineRender.IRenderManagerService),__decorateParam$4(1,core.Inject(sheetsUi.SheetsRenderService))],SheetsFilterUIMobileController);function SmartToggleFilterMenuItemFactory(accessor){const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService);return{id:SmartToggleSheetsFilterCommand.id,type:ui.MenuItemType.BUTTON_SELECTOR,icon:"FilterSingle",tooltip:"sheets-filter.toolbar.smart-toggle-filter-tooltip",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),activated$:sheetsFilterService.activeFilterModel$.pipe(rxjs.map(model=>!!model)),disabled$:sheetsUi.getObservableWithExclusiveRange$(accessor,sheetsUi.getCurrentRangeDisable$(accessor,{worksheetTypes:[sheets.WorksheetFilterPermission,sheets.WorksheetViewPermission],rangeTypes:[sheets.RangeProtectionPermissionViewPoint]}))}}__name(SmartToggleFilterMenuItemFactory,"SmartToggleFilterMenuItemFactory");function ClearFilterCriteriaMenuItemFactory(accessor){const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService);return{id:ClearSheetsFilterCriteriaCommand.id,type:ui.MenuItemType.BUTTON,title:"sheets-filter.toolbar.clear-filter-criteria",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsFilterService.activeFilterModel$.pipe(rxjs.switchMap(model=>{var _a2;return(_a2=model==null?void 0:model.hasCriteria$.pipe(rxjs.map(m2=>!m2)))!=null?_a2:rxjs.of(!0)}))}}__name(ClearFilterCriteriaMenuItemFactory,"ClearFilterCriteriaMenuItemFactory");function ReCalcFilterMenuItemFactory(accessor){const sheetsFilterService=accessor.get(sheetsFilter.SheetsFilterService);return{id:ReCalcSheetsFilterCommand.id,type:ui.MenuItemType.BUTTON,title:"sheets-filter.toolbar.re-calc-filter-conditions",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsFilterService.activeFilterModel$.pipe(rxjs.switchMap(model=>{var _a2;return(_a2=model==null?void 0:model.hasCriteria$.pipe(rxjs.map(m2=>!m2)))!=null?_a2:rxjs.of(!0)}))}}__name(ReCalcFilterMenuItemFactory,"ReCalcFilterMenuItemFactory");const menuSchema={[ui.RibbonStartGroup.FORMULAS_INSERT]:{[SmartToggleSheetsFilterCommand.id]:{order:10,menuItemFactory:SmartToggleFilterMenuItemFactory,[ClearSheetsFilterCriteriaCommand.id]:{order:0,menuItemFactory:ClearFilterCriteriaMenuItemFactory},[ReCalcSheetsFilterCommand.id]:{order:1,menuItemFactory:ReCalcFilterMenuItemFactory}}}};var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$3");const FILTER_PANEL_POPUP_KEY="FILTER_PANEL_POPUP";let SheetsFilterUIDesktopController=(_i=class extends SheetsFilterUIMobileController{constructor(_injector,_componentManager,_sheetsFilterPanelService,_sheetCanvasPopupService,_sheetsFilterService,_localeService,_shortcutService,_commandService,_menuManagerService,_contextService,_messageService,sheetsRenderService,renderManagerService){super(renderManagerService,sheetsRenderService);__publicField(this,"_popupDisposable");this._injector=_injector,this._componentManager=_componentManager,this._sheetsFilterPanelService=_sheetsFilterPanelService,this._sheetCanvasPopupService=_sheetCanvasPopupService,this._sheetsFilterService=_sheetsFilterService,this._localeService=_localeService,this._shortcutService=_shortcutService,this._commandService=_commandService,this._menuManagerService=_menuManagerService,this._contextService=_contextService,this._messageService=_messageService,this._initCommands(),this._initShortcuts(),this._initMenuItems(),this._initUI()}dispose(){super.dispose(),this._closeFilterPopup()}_initShortcuts(){[SmartToggleFilterShortcut].forEach(shortcut=>{this.disposeWithMe(this._shortcutService.registerShortcut(shortcut))})}_initCommands(){[SmartToggleSheetsFilterCommand,RemoveSheetFilterCommand,SetSheetFilterRangeCommand,SetSheetsFilterCriteriaCommand,ClearSheetsFilterCriteriaCommand,ReCalcSheetsFilterCommand,ChangeFilterByOperation,OpenFilterPanelOperation,CloseFilterPanelOperation].forEach(c2=>{this.disposeWithMe(this._commandService.registerCommand(c2))})}_initMenuItems(){this._menuManagerService.mergeMenu(menuSchema)}_initUI(){this.disposeWithMe(this._componentManager.register(FILTER_PANEL_POPUP_KEY,FilterPanel)),this.disposeWithMe(this._componentManager.register("FilterSingle",FilterSingle)),this.disposeWithMe(this._contextService.subscribeContextValue$(FILTER_PANEL_OPENED_KEY).pipe(rxjs.distinctUntilChanged()).subscribe(open=>{open?this._openFilterPopup():this._closeFilterPopup()})),this.disposeWithMe(this._sheetsFilterService.errorMsg$.subscribe(content=>{content&&this._messageService.show({type:design.MessageType.Error,content:this._localeService.t(content)})}))}_openFilterPopup(){const currentFilterModel=this._sheetsFilterPanelService.filterModel;if(!currentFilterModel)throw new Error("[SheetsFilterUIController]: no filter model when opening filter popup!");const range=currentFilterModel.getRange(),col=this._sheetsFilterPanelService.col,{startRow}=range;this._popupDisposable=this._sheetCanvasPopupService.attachPopupToCell(startRow,col,{componentKey:FILTER_PANEL_POPUP_KEY,direction:"horizontal",onClickOutside:__name(()=>this._commandService.syncExecuteCommand(CloseFilterPanelOperation.id),"onClickOutside"),offset:[5,0]})}_closeFilterPopup(){var _a2;(_a2=this._popupDisposable)==null||_a2.dispose(),this._popupDisposable=null}},__name(_i,"SheetsFilterUIDesktopController"),_i);SheetsFilterUIDesktopController=__decorateClass$3([__decorateParam$3(0,core.Inject(core.Injector)),__decorateParam$3(1,core.Inject(ui.ComponentManager)),__decorateParam$3(2,core.Inject(SheetsFilterPanelService)),__decorateParam$3(3,core.Inject(sheetsUi.SheetCanvasPopManagerService)),__decorateParam$3(4,core.Inject(sheetsFilter.SheetsFilterService)),__decorateParam$3(5,core.Inject(core.LocaleService)),__decorateParam$3(6,ui.IShortcutService),__decorateParam$3(7,core.ICommandService),__decorateParam$3(8,ui.IMenuManagerService),__decorateParam$3(9,core.IContextService),__decorateParam$3(10,ui.IMessageService),__decorateParam$3(11,core.Inject(sheetsUi.SheetsRenderService)),__decorateParam$3(12,engineRender.IRenderManagerService)],SheetsFilterUIDesktopController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__defNormalProp$1=__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=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$2"),__publicField$1=__name((obj,key,value)=>__defNormalProp$1(obj,typeof key!="symbol"?key+"":key,value),"__publicField$1");const NAME$1="SHEET_FILTER_UI_PLUGIN";exports2.UniverSheetsFilterUIPlugin=(_j=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_configService,_rpcChannelService){super(),this._config=_config,this._injector=_injector,this._configService=_configService,this._rpcChannelService=_rpcChannelService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[SheetsFilterPanelService],[SheetsFilterPermissionController],[SheetsFilterUIDesktopController]].forEach(d2=>this._injector.add(d2)),this._config.useRemoteFilterValuesGenerator&&this._rpcChannelService&&this._injector.add([ISheetsGenerateFilterValuesService,{useFactory:__name(()=>rpc.toModule(this._rpcChannelService.requestChannel(SHEETS_GENERATE_FILTER_VALUES_SERVICE_NAME)),"useFactory")}])}onReady(){this._injector.get(SheetsFilterPermissionController)}onRendered(){this._injector.get(SheetsFilterUIDesktopController)}},__name(_j,"UniverSheetsFilterUIPlugin"),_j),__publicField$1(exports2.UniverSheetsFilterUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET),__publicField$1(exports2.UniverSheetsFilterUIPlugin,"pluginName",NAME$1),exports2.UniverSheetsFilterUIPlugin=__decorateClass$2([core.DependentOn(sheetsFilter.UniverSheetsFilterPlugin),__decorateParam$2(1,core.Inject(core.Injector)),__decorateParam$2(2,core.IConfigService),__decorateParam$2(3,core.Optional(rpc.IRPCChannelService))],exports2.UniverSheetsFilterUIPlugin);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp$1(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$1"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField");const NAME="SHEET_FILTER_UI_PLUGIN";exports2.UniverSheetsFilterMobileUIPlugin=(_k=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_configService){super(),this._config=_config,this._injector=_injector,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[SheetsFilterPermissionController],[SheetsFilterUIMobileController]].forEach(d2=>this._injector.add(d2))}onReady(){this._injector.get(SheetsFilterPermissionController)}onRendered(){this._injector.get(SheetsFilterUIMobileController)}},__name(_k,"UniverSheetsFilterMobileUIPlugin"),_k),__publicField2(exports2.UniverSheetsFilterMobileUIPlugin,"type",core.UniverInstanceType.UNIVER_SHEET),__publicField2(exports2.UniverSheetsFilterMobileUIPlugin,"pluginName",NAME),exports2.UniverSheetsFilterMobileUIPlugin=__decorateClass$1([core.DependentOn(sheetsFilter.UniverSheetsFilterPlugin),__decorateParam$1(1,core.Inject(core.Injector)),__decorateParam$1(2,core.IConfigService)],exports2.UniverSheetsFilterMobileUIPlugin);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam");exports2.UniverSheetsFilterUIWorkerPlugin=(_l=class extends core.Plugin{constructor(_config,_injector,_rpcChannelService){super(),this._config=_config,this._injector=_injector,this._rpcChannelService=_rpcChannelService}onStarting(){[[ISheetsGenerateFilterValuesService,{useClass:SheetsGenerateFilterValuesService}]].forEach(d2=>this._injector.add(d2))}onReady(){this._rpcChannelService.registerChannel(SHEETS_GENERATE_FILTER_VALUES_SERVICE_NAME,rpc.fromModule(this._injector.get(ISheetsGenerateFilterValuesService)))}},__name(_l,"UniverSheetsFilterUIWorkerPlugin"),__publicField(_l,"type",core.UniverInstanceType.UNIVER_SHEET),__publicField(_l,"pluginName","SHEET_FILTER_UI_WORKER_PLUGIN"),_l),exports2.UniverSheetsFilterUIWorkerPlugin=__decorateClass([__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,rpc.IRPCChannelService)],exports2.UniverSheetsFilterUIWorkerPlugin),exports2.ChangeFilterByOperation=ChangeFilterByOperation,exports2.ClearSheetsFilterCriteriaCommand=ClearSheetsFilterCriteriaCommand,exports2.CloseFilterPanelOperation=CloseFilterPanelOperation,exports2.OpenFilterPanelOperation=OpenFilterPanelOperation,exports2.ReCalcSheetsFilterCommand=ReCalcSheetsFilterCommand,exports2.RemoveSheetFilterCommand=RemoveSheetFilterCommand,exports2.SetSheetFilterRangeCommand=SetSheetFilterRangeCommand,exports2.SetSheetsFilterCriteriaCommand=SetSheetsFilterCriteriaCommand,exports2.SmartToggleSheetsFilterCommand=SmartToggleSheetsFilterCommand,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});
9
+ */var ft=y,_t=Symbol.for("react.element"),vt=Symbol.for("react.fragment"),St=Object.prototype.hasOwnProperty,gt=ft.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Ct={key:!0,ref:!0,__self:!0,__source:!0};function ke(t,e,r){var i,s={},l=null,n=null;r!==void 0&&(l=""+r),e.key!==void 0&&(l=""+e.key),e.ref!==void 0&&(n=e.ref);for(i in e)St.call(e,i)&&!Ct.hasOwnProperty(i)&&(s[i]=e[i]);if(t&&t.defaultProps)for(i in e=t.defaultProps,e)s[i]===void 0&&(s[i]=e[i]);return{$$typeof:_t,type:t,key:l,ref:n,props:s,_owner:gt.current}}_e.Fragment=vt,_e.jsx=ke,_e.jsxs=ke,We.exports=_e;var f=We.exports;const I={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",sheetsFilterTreeNode:"univer-sheets-filter-tree-node",sheetsFilterTreeNodeFilterOnly:"univer-sheets-filter-tree-node-filter-only",sheetsFilterTreeNodeAttach:"univer-sheets-filter-tree-node-attach"};function Tt(t){const{model:e}=t,r=c.useDependency(c.LocaleService),i=F.useObservable(e.conditionItem$,void 0,!0),s=F.useObservable(e.filterConditionFormParams$,void 0,!0),{operator:l,numOfParameters:n}=i,{operator1:o,operator2:a,val1:h,val2:m,and:d}=s,T=d?"AND":"OR",v=y.useCallback(N=>{e.onConditionFormChange({and:N==="AND"})},[e]),E=Ft(r),P=y.useCallback(N=>{e.onPrimaryConditionChange(N)},[e]),L=Et(r),A=y.useCallback(N=>{e.onConditionFormChange(N)},[e]),w=r.t("sheets-filter.panel.input-values-placeholder");function $(N,j,K){const ne=p.getItemByOperator(N).numOfParameters===1;return f.jsxs(f.Fragment,{children:[K==="operator2"&&f.jsxs(U.RadioGroup,{value:T,onChange:v,children:[f.jsx(U.Radio,{value:"AND",children:r.t("sheets-filter.panel.and")}),f.jsx(U.Radio,{value:"OR",children:r.t("sheets-filter.panel.or")})]}),f.jsx(U.Select,{value:N,options:L,onChange:b=>A({[K]:b})}),ne&&f.jsx("div",{children:f.jsx(U.Input,{value:j,placeholder:w,onChange:b=>A({[K==="operator1"?"val1":"val2"]:b})})})]})}return f.jsxs("div",{className:I.sheetsFilterPanelConditionsContainer,children:[f.jsx(U.Select,{value:l,options:E,onChange:P}),p.getItemByOperator(l).numOfParameters!==0?f.jsxs("div",{className:I.sheetsFilterPanelConditionsContainerInner,children:[n>=1&&$(o,h!=null?h:"","operator1"),n>=2&&$(a,m!=null?m:"","operator2"),f.jsxs("div",{className:I.sheetsFilterPanelConditionsDesc,children:[r.t("sheets-filter.panel.?"),f.jsx("br",{}),r.t("sheets-filter.panel.*")]})]}):null]})}function Ft(t){const e=t.getCurrentLocale();return y.useMemo(()=>[{options:[{label:t.t(p.NONE.label),value:p.NONE.operator}]},{options:[{label:t.t(p.EMPTY.label),value:p.EMPTY.operator},{label:t.t(p.NOT_EMPTY.label),value:p.NOT_EMPTY.operator}]},{options:[{label:t.t(p.TEXT_CONTAINS.label),value:p.TEXT_CONTAINS.operator},{label:t.t(p.DOES_NOT_CONTAIN.label),value:p.DOES_NOT_CONTAIN.operator},{label:t.t(p.STARTS_WITH.label),value:p.STARTS_WITH.operator},{label:t.t(p.ENDS_WITH.label),value:p.ENDS_WITH.operator},{label:t.t(p.EQUALS.label),value:p.EQUALS.operator}]},{options:[{label:t.t(p.GREATER_THAN.label),value:p.GREATER_THAN.operator},{label:t.t(p.GREATER_THAN_OR_EQUAL.label),value:p.GREATER_THAN_OR_EQUAL.operator},{label:t.t(p.LESS_THAN.label),value:p.LESS_THAN.operator},{label:t.t(p.LESS_THAN_OR_EQUAL.label),value:p.LESS_THAN_OR_EQUAL.operator},{label:t.t(p.EQUAL.label),value:p.EQUAL.operator},{label:t.t(p.NOT_EQUAL.label),value:p.NOT_EQUAL.operator},{label:t.t(p.BETWEEN.label),value:p.BETWEEN.operator},{label:t.t(p.NOT_BETWEEN.label),value:p.NOT_BETWEEN.operator}]},{options:[{label:t.t(p.CUSTOM.label),value:p.CUSTOM.operator}]}],[e,t])}function Et(t){const e=t.getCurrentLocale();return y.useMemo(()=>p.ALL_CONDITIONS.filter(r=>r.numOfParameters!==2).map(r=>({label:t.t(r.label),value:r.operator})),[e,t])}function Ot(t){const{model:e}=t,r=c.useDependency(c.LocaleService),i=F.useObservable(e.searchString$,"",!0),s=F.useObservable(e.filterItems$,void 0,!0),l=r.t("sheets-filter.panel.filter-only"),n=Te(s),o=n.checked>0&&n.unchecked===0,a=n.checked>0&&n.unchecked>0,h=e.treeMapCache,m=y.useCallback(()=>{e.onCheckAllToggled(!o)},[e,o]),d=y.useCallback(v=>{e.setSearchString(v)},[e]);function T(v){let E=[];return v.forEach(P=>{P.checked&&E.push(P.key),P.children&&(E=E.concat(T(P.children)))}),E}return f.jsxs("div",{className:I.sheetsFilterPanelValuesContainer,children:[f.jsx(U.Input,{autoFocus:!0,value:i,placeholder:r.t("sheets-filter.panel.search-placeholder"),onChange:d}),f.jsxs("div",{className:I.sheetsFilterPanelValuesList,children:[f.jsx("div",{className:I.sheetsFilterPanelValuesItem,children:f.jsxs("div",{className:I.sheetsFilterPanelValuesItemInner,children:[f.jsx(U.Checkbox,{indeterminate:a,disabled:s.length===0,checked:o,onChange:m}),f.jsx("span",{className:I.sheetsFilterPanelValuesItemText,children:`${r.t("sheets-filter.panel.select-all")}`}),f.jsx("span",{className:I.sheetsFilterPanelValuesItemCount,children:`(${n.checked}/${n.checked+n.unchecked})`})]})}),f.jsx("div",{className:I.sheetsFilterPanelValuesVirtual,children:f.jsx(U.Tree,{data:s,defaultExpandAll:!1,valueGroup:T(s),height:180,onChange:v=>{e.onFilterCheckToggled(v)},defaultCache:h,itemHeight:28,treeNodeClassName:I.sheetsFilterTreeNode,attachRender:v=>f.jsxs("div",{className:I.sheetsFilterTreeNodeAttach,children:[f.jsx("span",{className:I.sheetsFilterPanelValuesItemCount,children:`(${v.count})`}),f.jsx(U.Button,{className:I.sheetsFilterTreeNodeFilterOnly,size:"small",type:"link",onClick:()=>{const E=[];v.children?v.children.forEach(P=>{P.children?P.children.forEach(L=>{E.push(L.key)}):E.push(P.key)}):E.push(v.key),e.onFilterOnly(E)},children:l})]})})})]})]})}function Pt(){var L;const t=c.useDependency(G),e=c.useDependency(c.LocaleService),r=c.useDependency(c.ICommandService),i=F.useObservable(t.filterBy$,void 0,!0),s=F.useObservable(t.filterByModel$,void 0,!1),l=F.useObservable(()=>(s==null?void 0:s.canApply$)||C.of(!1),void 0,!1,[s]),n=It(e),o=!F.useObservable(t.hasCriteria$),a=y.useCallback(A=>{r.executeCommand(Ne.id,{filterBy:A})},[r]),h=y.useCallback(async()=>{await(s==null?void 0:s.clear()),r.executeCommand(ee.id)},[s,r]),m=y.useCallback(()=>{r.executeCommand(ee.id)},[r]),d=y.useCallback(async()=>{await(s==null?void 0:s.apply()),r.executeCommand(ee.id)},[s,r]),v=(L=c.useDependency(u.SheetsFilterService).activeFilterModel)==null?void 0:L.getRange(),E=t.col,P=F.useComponentsOfPart(D.SheetsUIPart.FILTER_PANEL_EMBED_POINT);return f.jsxs("div",{className:I.sheetsFilterPanel,children:[f.jsx(F.ComponentContainer,{components:P,sharedProps:{range:v,colIndex:E,onClose:m}}),f.jsx("div",{className:I.sheetsFilterPanelHeader,children:f.jsx(U.Segmented,{value:i,options:n,onChange:A=>a(A)})}),s?f.jsx("div",{className:I.sheetsFilterPanelContent,children:i===pe.VALUES?f.jsx(Ot,{model:s}):f.jsx(Tt,{model:s})}):f.jsx("div",{style:{flex:1}}),f.jsxs("div",{className:I.sheetsFilterPanelFooter,children:[f.jsx(U.Button,{type:"link",onClick:h,disabled:o,children:e.t("sheets-filter.panel.clear-filter")}),f.jsxs("span",{className:I.sheetsFilterPanelFooterPrimaryButtons,children:[f.jsx(U.Button,{type:"default",onClick:m,children:e.t("sheets-filter.panel.cancel")}),f.jsx(U.Button,{disabled:!l,type:"primary",onClick:d,children:e.t("sheets-filter.panel.confirm")})]})]})]})}function It(t){const e=t.getCurrentLocale();return y.useMemo(()=>[{label:t.t("sheets-filter.panel.by-values"),value:pe.VALUES},{label:t.t("sheets-filter.panel.by-conditions"),value:pe.CONDITIONS}],[e,t])}function Nt(t){const e=t.get(u.SheetsFilterService);return{id:u.SmartToggleSheetsFilterCommand.id,type:F.MenuItemType.BUTTON_SELECTOR,icon:"FilterSingle",tooltip:"sheets-filter.toolbar.smart-toggle-filter-tooltip",hidden$:F.getMenuHiddenObservable(t,c.UniverInstanceType.UNIVER_SHEET),activated$:e.activeFilterModel$.pipe(C.map(r=>!!r)),disabled$:D.getObservableWithExclusiveRange$(t,D.getCurrentRangeDisable$(t,{worksheetTypes:[O.WorksheetFilterPermission,O.WorksheetViewPermission],rangeTypes:[O.RangeProtectionPermissionViewPoint]}))}}function yt(t){const e=t.get(u.SheetsFilterService);return{id:u.ClearSheetsFilterCriteriaCommand.id,type:F.MenuItemType.BUTTON,title:"sheets-filter.toolbar.clear-filter-criteria",hidden$:F.getMenuHiddenObservable(t,c.UniverInstanceType.UNIVER_SHEET),disabled$:e.activeFilterModel$.pipe(C.switchMap(r=>{var i;return(i=r==null?void 0:r.hasCriteria$.pipe(C.map(s=>!s)))!=null?i:C.of(!0)}))}}function Rt(t){const e=t.get(u.SheetsFilterService);return{id:u.ReCalcSheetsFilterCommand.id,type:F.MenuItemType.BUTTON,title:"sheets-filter.toolbar.re-calc-filter-conditions",hidden$:F.getMenuHiddenObservable(t,c.UniverInstanceType.UNIVER_SHEET),disabled$:e.activeFilterModel$.pipe(C.switchMap(r=>{var i;return(i=r==null?void 0:r.hasCriteria$.pipe(C.map(s=>!s)))!=null?i:C.of(!0)}))}}const At={[F.RibbonStartGroup.FORMULAS_INSERT]:{[u.SmartToggleSheetsFilterCommand.id]:{order:10,menuItemFactory:Nt,[u.ClearSheetsFilterCriteriaCommand.id]:{order:0,menuItemFactory:yt},[u.ReCalcSheetsFilterCommand.id]:{order:1,menuItemFactory:Rt}}}},bt={id:u.SmartToggleSheetsFilterCommand.id,binding:F.KeyCode.L|F.MetaKeys.CTRL_COMMAND|F.MetaKeys.SHIFT,description:"sheets-filter.shortcut.smart-toggle-filter",preconditions:D.whenSheetEditorFocused,group:"4_sheet-edit"},Y=16,Lt=new Path2D("M3.30363 3C2.79117 3 2.51457 3.60097 2.84788 3.99024L6.8 8.60593V12.5662C6.8 12.7184 6.8864 12.8575 7.02289 12.9249L8.76717 13.7863C8.96655 13.8847 9.2 13.7396 9.2 13.5173V8.60593L13.1521 3.99024C13.4854 3.60097 13.2088 3 12.6964 3H3.30363Z");class xe{static drawNoCriteria(e,r,i,s){e.save(),oe.Rect.drawWith(e,{radius:2,width:Y,height:Y,fill:s}),e.lineCap="square",e.strokeStyle=i,e.scale(r/Y,r/Y),e.beginPath(),e.lineWidth=1,e.lineCap="round",e.moveTo(3,4),e.lineTo(13,4),e.moveTo(4.5,8),e.lineTo(11.5,8),e.moveTo(6,12),e.lineTo(10,12),e.stroke(),e.restore()}static drawHasCriteria(e,r,i,s){e.save(),oe.Rect.drawWith(e,{radius:2,width:Y,height:Y,fill:s}),e.scale(r/Y,r/Y),e.fillStyle=i,e.fill(Lt),e.restore()}}var Mt=Object.defineProperty,Ut=Object.getOwnPropertyDescriptor,wt=(t,e,r,i)=>{for(var s=i>1?void 0:i?Ut(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&Mt(e,r,s),s},ye=(t,e)=>(r,i)=>e(r,i,t);const x=16,ve=1;let Re=class extends oe.Shape{constructor(e,r,i,s,l){super(e,r);S(this,"_cellWidth",0);S(this,"_cellHeight",0);S(this,"_filterParams");S(this,"_hovered",!1);this._contextService=i,this._commandService=s,this._themeService=l,this.setShapeProps(r),this.onPointerDown$.subscribeEvent(n=>this.onPointerDown(n)),this.onPointerEnter$.subscribeEvent(()=>this.onPointerEnter()),this.onPointerLeave$.subscribeEvent(()=>this.onPointerLeave())}setShapeProps(e){typeof e.cellHeight<"u"&&(this._cellHeight=e.cellHeight),typeof e.cellWidth<"u"&&(this._cellWidth=e.cellWidth),typeof e.filterParams<"u"&&(this._filterParams=e.filterParams),this.transformByState({width:e.width,height:e.height})}_draw(e){const r=this._cellHeight,i=this._cellWidth,s=x-i,l=x-r;e.save();const n=new Path2D;n.rect(s,l,i,r),e.clip(n);const{hasCriteria:o}=this._filterParams,a=this._themeService.getCurrentTheme().primaryColor,h=this._hovered?this._themeService.getCurrentTheme().grey50:"rgba(255, 255, 255, 1.0)";o?xe.drawHasCriteria(e,x,a,h):xe.drawNoCriteria(e,x,a,h),e.restore()}onPointerDown(e){if(e.button===2)return;const{col:r,unitId:i,subUnitId:s}=this._filterParams;this._contextService.getContextValue(J)||!this._commandService.hasCommand(le.id)||setTimeout(()=>{this._commandService.executeCommand(le.id,{unitId:i,subUnitId:s,col:r})},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}};Re=wt([ye(2,c.IContextService),ye(3,c.ICommandService),ye(4,c.Inject(c.ThemeService))],Re);var $t=Object.defineProperty,Dt=Object.getOwnPropertyDescriptor,Ht=(t,e,r,i)=>{for(var s=i>1?void 0:i?Dt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&$t(e,r,s),s},Z=(t,e)=>(r,i)=>e(r,i,t);const Bt=1e3,jt=5e3;let Ae=class extends c.RxDisposable{constructor(e,r,i,s,l,n,o,a){super();S(this,"_filterRangeShape",null);S(this,"_buttonRenderDisposable",null);S(this,"_filterButtonShapes",[]);this._context=e,this._injector=r,this._sheetSkeletonManagerService=i,this._sheetsFilterService=s,this._themeService=l,this._sheetInterceptorService=n,this._commandService=o,this._selectionRenderService=a,this._initRenderer()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){this._sheetSkeletonManagerService.currentSkeleton$.pipe(C.switchMap(e=>{var o,a;if(!e)return C.of(null);const{unit:r,unitId:i}=this._context,s=((o=r.getActiveSheet())==null?void 0:o.getSheetId())||"",l=(a=this._sheetsFilterService.getFilterModel(i,s))!=null?a:void 0,n=()=>({unitId:i,worksheetId:s,filterModel:l,range:l==null?void 0:l.getRange(),skeleton:e.skeleton});return c.fromCallback(this._commandService.onCommandExecuted.bind(this._commandService)).pipe(C.filter(([h])=>{var m;return h.type===c.CommandType.MUTATION&&((m=h.params)==null?void 0:m.unitId)===r.getUnitId()&&(u.FILTER_MUTATIONS.has(h.id)||h.id===O.SetRangeValuesMutation.id)}),C.throttleTime(20,void 0,{leading:!1,trailing:!0}),C.map(n),C.startWith(n()))}),C.takeUntil(this.dispose$)).subscribe(e=>{this._disposeRendering(),!(!e||!e.range)&&(this._renderRange(e.range,e.skeleton),this._renderButtons(e))})}_renderRange(e,r){const{scene:i}=this._context,{rangeWithCoord:s,style:l}=this._selectionRenderService.attachSelectionWithCoord({range:e,primary:null,style:null}),{rowHeaderWidth:n,columnHeaderHeight:o}=r,a=this._filterRangeShape=new D.SelectionShape(i,Bt,this._themeService,!0);a.update(s,n,o,{hasAutoFill:!1,fill:"rgba(0, 0, 0, 0.0)",...l}),a.setEvent(!1),i.makeDirty(!0)}_renderButtons(e){const{range:r,filterModel:i,unitId:s,skeleton:l,worksheetId:n}=e,{scene:o}=this._context;this._interceptCellContent(s,n,e.range);const{startColumn:a,endColumn:h,startRow:m}=r;for(let d=a;d<=h;d++){const T=`sheets-filter-button-${d}`,v=D.getCoordByCell(m,d,o,l),{startX:E,startY:P,endX:L,endY:A}=v,w=L-E,$=A-P;if($<=ve||w<=ve)continue;const N=!!i.getFilterColumn(d),j=L-x-ve,K=A-x-ve,ne={left:j,top:K,height:x,width:x,zIndex:jt,cellHeight:$,cellWidth:w,filterParams:{unitId:s,subUnitId:n,col:d,hasCriteria:N}},b=this._injector.createInstance(Re,T,ne);this._filterButtonShapes.push(b)}o.addObjects(this._filterButtonShapes),o.makeDirty()}_interceptCellContent(e,r,i){const{startRow:s,startColumn:l,endColumn:n}=i;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(O.INTERCEPTOR_POINT.CELL_CONTENT,{effect:c.InterceptorEffectEnum.Style,handler:(o,a,h)=>{const{row:m,col:d,unitId:T,subUnitId:v}=a;return T!==e||v!==r||m!==s||d<l||d>n?h(o):h({...o,fontRenderExtension:{...o==null?void 0:o.fontRenderExtension,rightOffset:x}})},priority:10})}_disposeRendering(){var e,r;(e=this._filterRangeShape)==null||e.dispose(),this._filterButtonShapes.forEach(i=>i.dispose()),(r=this._buttonRenderDisposable)==null||r.dispose(),this._filterRangeShape=null,this._buttonRenderDisposable=null,this._filterButtonShapes=[]}};Ae=Ht([Z(1,c.Inject(c.Injector)),Z(2,c.Inject(D.SheetSkeletonManagerService)),Z(3,c.Inject(u.SheetsFilterService)),Z(4,c.Inject(c.ThemeService)),Z(5,c.Inject(O.SheetInterceptorService)),Z(6,c.ICommandService),Z(7,D.ISheetSelectionRenderService)],Ae);var Vt=Object.defineProperty,Wt=Object.getOwnPropertyDescriptor,kt=(t,e,r,i)=>{for(var s=i>1?void 0:i?Wt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&Vt(e,r,s),s},Qe=(t,e)=>(r,i)=>e(r,i,t);let ce=class extends c.RxDisposable{constructor(t,e){super(),this._renderManagerService=t,this._sheetsRenderService=e,[u.SetSheetsFilterRangeMutation,u.SetSheetsFilterCriteriaMutation,u.RemoveSheetsFilterMutation,u.ReCalcSheetsFilterMutation].forEach(r=>this.disposeWithMe(this._sheetsRenderService.registerSkeletonChangingMutations(r.id))),this.disposeWithMe(this._renderManagerService.registerRenderModule(c.UniverInstanceType.UNIVER_SHEET,[Ae]))}};ce=kt([Qe(0,oe.IRenderManagerService),Qe(1,c.Inject(D.SheetsRenderService))],ce);var xt=Object.defineProperty,Qt=Object.getOwnPropertyDescriptor,Gt=(t,e,r,i)=>{for(var s=i>1?void 0:i?Qt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&xt(e,r,s),s},H=(t,e)=>(r,i)=>e(r,i,t);const Ge="FILTER_PANEL_POPUP";let Se=class extends ce{constructor(e,r,i,s,l,n,o,a,h,m,d,T,v){super(v,T);S(this,"_popupDisposable");this._injector=e,this._componentManager=r,this._sheetsFilterPanelService=i,this._sheetCanvasPopupService=s,this._sheetsFilterService=l,this._localeService=n,this._shortcutService=o,this._commandService=a,this._menuManagerService=h,this._contextService=m,this._messageService=d,this._initCommands(),this._initShortcuts(),this._initMenuItems(),this._initUI()}dispose(){super.dispose(),this._closeFilterPopup()}_initShortcuts(){[bt].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}_initCommands(){[u.SmartToggleSheetsFilterCommand,u.RemoveSheetFilterCommand,u.SetSheetFilterRangeCommand,u.SetSheetsFilterCriteriaCommand,u.ClearSheetsFilterCriteriaCommand,u.ReCalcSheetsFilterCommand,Ne,le,ee].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initMenuItems(){this._menuManagerService.mergeMenu(At)}_initUI(){this.disposeWithMe(this._componentManager.register(Ge,Pt)),this.disposeWithMe(this._componentManager.register("FilterSingle",Ve)),this.disposeWithMe(this._contextService.subscribeContextValue$(J).pipe(C.distinctUntilChanged()).subscribe(e=>{e?this._openFilterPopup():this._closeFilterPopup()})),this.disposeWithMe(this._sheetsFilterService.errorMsg$.subscribe(e=>{e&&this._messageService.show({type:U.MessageType.Error,content:this._localeService.t(e)})}))}_openFilterPopup(){const e=this._sheetsFilterPanelService.filterModel;if(!e)throw new Error("[SheetsFilterUIController]: no filter model when opening filter popup!");const r=e.getRange(),i=this._sheetsFilterPanelService.col,{startRow:s}=r;this._popupDisposable=this._sheetCanvasPopupService.attachPopupToCell(s,i,{componentKey:Ge,direction:"horizontal",onClickOutside:()=>this._commandService.syncExecuteCommand(ee.id),offset:[5,0]})}_closeFilterPopup(){var e;(e=this._popupDisposable)==null||e.dispose(),this._popupDisposable=null}};Se=Gt([H(0,c.Inject(c.Injector)),H(1,c.Inject(F.ComponentManager)),H(2,c.Inject(G)),H(3,c.Inject(D.SheetCanvasPopManagerService)),H(4,c.Inject(u.SheetsFilterService)),H(5,c.Inject(c.LocaleService)),H(6,F.IShortcutService),H(7,c.ICommandService),H(8,F.IMenuManagerService),H(9,c.IContextService),H(10,F.IMessageService),H(11,c.Inject(D.SheetsRenderService)),H(12,oe.IRenderManagerService)],Se);var Ye=Object.defineProperty,Yt=Object.getOwnPropertyDescriptor,Kt=(t,e,r)=>e in t?Ye(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Xt=(t,e,r,i)=>{for(var s=i>1?void 0:i?Yt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&Ye(e,r,s),s},be=(t,e)=>(r,i)=>e(r,i,t),Ke=(t,e,r)=>Kt(t,typeof e!="symbol"?e+"":e,r);const Zt="SHEET_FILTER_UI_PLUGIN";_.UniverSheetsFilterUIPlugin=class extends c.Plugin{constructor(e=we,r,i,s){super(),this._config=e,this._injector=r,this._configService=i,this._rpcChannelService=s;const{menu:l,...n}=this._config;l&&this._configService.setConfig("menu",l,{merge:!0}),this._configService.setConfig(Ue,n)}onStarting(){[[G],[re],[Se]].forEach(e=>this._injector.add(e)),this._config.useRemoteFilterValuesGenerator&&this._rpcChannelService&&this._injector.add([he,{useFactory:()=>k.toModule(this._rpcChannelService.requestChannel(Ee))}])}onReady(){this._injector.get(re)}onRendered(){this._injector.get(Se)}},Ke(_.UniverSheetsFilterUIPlugin,"type",c.UniverInstanceType.UNIVER_SHEET),Ke(_.UniverSheetsFilterUIPlugin,"pluginName",Zt),_.UniverSheetsFilterUIPlugin=Xt([c.DependentOn(u.UniverSheetsFilterPlugin),be(1,c.Inject(c.Injector)),be(2,c.IConfigService),be(3,c.Optional(k.IRPCChannelService))],_.UniverSheetsFilterUIPlugin);var Xe=Object.defineProperty,qt=Object.getOwnPropertyDescriptor,zt=(t,e,r)=>e in t?Xe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Jt=(t,e,r,i)=>{for(var s=i>1?void 0:i?qt(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&Xe(e,r,s),s},Ze=(t,e)=>(r,i)=>e(r,i,t),qe=(t,e,r)=>zt(t,typeof e!="symbol"?e+"":e,r);const er="SHEET_FILTER_UI_PLUGIN";_.UniverSheetsFilterMobileUIPlugin=class extends c.Plugin{constructor(e=we,r,i){super(),this._config=e,this._injector=r,this._configService=i;const{menu:s,...l}=this._config;s&&this._configService.setConfig("menu",s,{merge:!0}),this._configService.setConfig(Ue,l)}onStarting(){[[re],[ce]].forEach(e=>this._injector.add(e))}onReady(){this._injector.get(re)}onRendered(){this._injector.get(ce)}},qe(_.UniverSheetsFilterMobileUIPlugin,"type",c.UniverInstanceType.UNIVER_SHEET),qe(_.UniverSheetsFilterMobileUIPlugin,"pluginName",er),_.UniverSheetsFilterMobileUIPlugin=Jt([c.DependentOn(u.UniverSheetsFilterPlugin),Ze(1,c.Inject(c.Injector)),Ze(2,c.IConfigService)],_.UniverSheetsFilterMobileUIPlugin);var tr=Object.defineProperty,rr=Object.getOwnPropertyDescriptor,nr=(t,e,r,i)=>{for(var s=i>1?void 0:i?rr(e,r):e,l=t.length-1,n;l>=0;l--)(n=t[l])&&(s=(i?n(e,r,s):n(s))||s);return i&&s&&tr(e,r,s),s},ze=(t,e)=>(r,i)=>e(r,i,t);_.UniverSheetsFilterUIWorkerPlugin=(ge=class extends c.Plugin{constructor(e,r,i){super(),this._config=e,this._injector=r,this._rpcChannelService=i}onStarting(){[[he,{useClass:Oe}]].forEach(e=>this._injector.add(e))}onReady(){this._rpcChannelService.registerChannel(Ee,k.fromModule(this._injector.get(he)))}},S(ge,"type",c.UniverInstanceType.UNIVER_SHEET),S(ge,"pluginName","SHEET_FILTER_UI_WORKER_PLUGIN"),ge),_.UniverSheetsFilterUIWorkerPlugin=nr([ze(1,c.Inject(c.Injector)),ze(2,k.IRPCChannelService)],_.UniverSheetsFilterUIWorkerPlugin),_.ChangeFilterByOperation=Ne,_.CloseFilterPanelOperation=ee,_.OpenFilterPanelOperation=le,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})});
@@ -0,0 +1 @@
1
+ (function(e,t){typeof exports=="object"&&typeof module<"u"?module.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.UniverSheetsFilterUiEnUS=t())})(this,function(){"use strict";return{"sheets-filter":{toolbar:{"smart-toggle-filter-tooltip":"Toggle Filter","clear-filter-criteria":"Clear Filter Conditions","re-calc-filter-conditions":"Re-calc Filter Conditions"},command:{"not-valid-filter-range":"The selected range only has one row and not valid for filter."},shortcut:{"smart-toggle-filter":"Toggle Filter"},panel:{"clear-filter":"Clear Filter",cancel:"Cancel",confirm:"Confirm","by-values":"By Values","by-conditions":"By Conditions","filter-only":"Filter Only","search-placeholder":"Use space to separate keywords","select-all":"Select All","input-values-placeholder":"Input Values",and:"AND",or:"OR",empty:"(empty)","?":"Use “?” to represent a single character.","*":"Use “*” to represent multiple characters."},conditions:{none:"None",empty:"Is Empty","not-empty":"Is Not Empty","text-contains":"Text Contains","does-not-contain":"Text Does Not Contain","starts-with":"Text Starts With","ends-with":"Text Ends With",equals:"Text Equals","greater-than":"Greater Than","greater-than-or-equal":"Greater Than Or Equal To","less-than":"Less Than","less-than-or-equal":"Less Than Or Equal To",equal:"Equal","not-equal":"Not Equal",between:"Between","not-between":"Not Between",custom:"Custom"},msg:{"filter-header-forbidden":"You can't move the header row of a filter."},date:{1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September",10:"October",11:"November",12:"December"}}}});
@@ -0,0 +1 @@
1
+ (function(e,t){typeof exports=="object"&&typeof module<"u"?module.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.UniverSheetsFilterUiFaIR=t())})(this,function(){"use strict";return{"sheets-filter":{toolbar:{"smart-toggle-filter-tooltip":"تغییر حالت فیلتر","clear-filter-criteria":"پاک کردن شرایط فیلتر","re-calc-filter-conditions":"بازمحاسبه شرایط فیلتر"},command:{"not-valid-filter-range":"محدوده انتخاب شده فقط یک ردیف دارد و برای فیلتر معتبر نیست."},shortcut:{"smart-toggle-filter":"تغییر حالت فیلتر"},panel:{"clear-filter":"پاک کردن فیلتر",cancel:"انصراف",confirm:"تایید","by-values":"بر اساس مقادیر","by-conditions":"بر اساس شرایط","filter-only":"فقط فیلتر","search-placeholder":"برای جداسازی کلیدواژه‌ها از فاصله استفاده کنید","select-all":"انتخاب همه","input-values-placeholder":"ورود مقادیر",and:"و",or:"یا",empty:"(خالی)","?":"برای نمایش یک کاراکتر از “?” استفاده کنید.","*":"برای نمایش چندین کاراکتر از “*” استفاده کنید."},conditions:{none:"هیچ کدام",empty:"خالی است","not-empty":"خالی نیست","text-contains":"شامل متن است","does-not-contain":"شامل متن نیست","starts-with":"با متن شروع می‌شود","ends-with":"با متن پایان می‌یابد",equals:"برابر است با","greater-than":"بزرگتر از","greater-than-or-equal":"بزرگتر از یا برابر با","less-than":"کوچکتر از","less-than-or-equal":"کوچکتر از یا برابر با",equal:"برابر است با","not-equal":"برابر نیست با",between:"بین","not-between":"بین نیست",custom:"سفارشی"},msg:{"filter-header-forbidden":"شما نمی‌توانید ردیف هدر یک فیلتر را جابه‌جا کنید."},date:{1:"ژانویه",2:"فوریه",3:"مارس",4:"آوریل",5:"مه",6:"ژوئن",7:"جولای",8:"آگوست",9:"سپتامبر",10:"اکتبر",11:"نوامبر",12:"دسامبر"}}}});
@@ -0,0 +1 @@
1
+ (function(e,t){typeof exports=="object"&&typeof module<"u"?module.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self,e.UniverSheetsFilterUiRuRU=t())})(this,function(){"use strict";return{"sheets-filter":{toolbar:{"smart-toggle-filter-tooltip":"Переключить фильтр","clear-filter-criteria":"Очистить условия фильтра","re-calc-filter-conditions":"Пересчитать условия фильтра"},command:{"not-valid-filter-range":"Выбранный диапазон содержит только одну строку и не подходит для фильтра."},shortcut:{"smart-toggle-filter":"Переключить фильтр"},panel:{"clear-filter":"Очистить фильтр",cancel:"Отмена",confirm:"Подтвердить","by-values":"По значениям","by-conditions":"По условиям","filter-only":"Только фильтр","search-placeholder":"Используйте пробел для разделения ключевых слов","select-all":"Выбрать все","input-values-placeholder":"Введите значения",and:"И",or:"ИЛИ",empty:"(пусто)","?":"Используйте “?” для обозначения одного символа.","*":"Используйте “*” для обозначения нескольких символов."},conditions:{none:"Нет",empty:"Пусто","not-empty":"Не пусто","text-contains":"Содержит текст","does-not-contain":"Не содержит текст","starts-with":"Начинается с","ends-with":"Заканчивается на",equals:"Равно","greater-than":"Больше чем","greater-than-or-equal":"Больше или равно","less-than":"Меньше чем","less-than-or-equal":"Меньше или равно",equal:"Равно","not-equal":"Не равно",between:"Между","not-between":"Не между",custom:"Пользовательский"},msg:{"filter-header-forbidden":"Вы не можете переместить строку заголовка фильтра."},date:{1:"Январь",2:"Февраль",3:"Март",4:"Апрель",5:"Май",6:"Июнь",7:"Июль",8:"Август",9:"Сентябрь",10:"Октябрь",11:"Ноябрь",12:"Декабрь"}}}});
@@ -0,0 +1 @@
1
+ (function(n,e){typeof exports=="object"&&typeof module<"u"?module.exports=e():typeof define=="function"&&define.amd?define(e):(n=typeof globalThis<"u"?globalThis:n||self,n.UniverSheetsFilterUiViVN=e())})(this,function(){"use strict";return{"sheets-filter":{toolbar:{"smart-toggle-filter-tooltip":"Lọc","clear-filter-criteria":"Xóa điều kiện lọc","re-calc-filter-conditions":"Tính toán lại"},command:{"not-valid-filter-range":"Khu vực được chọn chỉ có một hàng, không thể lọc"},shortcut:{"smart-toggle-filter":"Chuyển đổi lọc"},panel:{"clear-filter":"Xóa lọc",cancel:"Hủy bỏ",confirm:"Xác nhận","by-values":"Theo giá trị","by-conditions":"Theo điều kiện","filter-only":"Chỉ lọc","search-placeholder":"Sử dụng khoảng trắng để tách các từ khóa","select-all":"Chọn tất cả","input-values-placeholder":"Vui lòng nhập",or:"hoặc",and:"và",empty:"(Trống)","?":"Sử dụng ? để đại diện cho một ký tự","*":"Sử dụng * để đại diện cho nhiều ký tự"},conditions:{none:"Không",empty:"Trống","not-empty":"Không trống","text-contains":"Văn bản chứa","does-not-contain":"Văn bản không chứa","starts-with":"Văn bản bắt đầu với","ends-with":"Văn bản kết thúc với",equals:"Văn bản khớp","greater-than":"Lớn hơn","greater-than-or-equal":"Lớn hơn hoặc bằng","less-than":"Nhỏ hơn","less-than-or-equal":"Nhỏ hơn hoặc bằng",equal:"Bằng","not-equal":"Không bằng",between:"Giữa","not-between":"Không giữa",custom:"Tùy chỉnh"},msg:{"filter-header-forbidden":"Không thể di chuyển hàng đầu lọc"},date:{1:"Tháng 1",2:"Tháng 2",3:"Tháng 3",4:"Tháng 4",5:"Tháng 5",6:"Tháng 6",7:"Tháng 7",8:"Tháng 8",9:"Tháng 9",10:"Tháng 10",11:"Tháng 11",12:"Tháng 12"}}}});