@univerjs/preset-sheets-filter 0.11.0 → 0.12.1

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.
@@ -0,0 +1 @@
1
+ "use strict";const e=require("@univerjs/core"),r=require("@univerjs/sheets-filter-ui/locale/ja-JP"),s=e.mergeLocales(r);module.exports=s;
@@ -0,0 +1,8 @@
1
+ import { mergeLocales as e } from "@univerjs/core";
2
+ import r from "@univerjs/sheets-filter-ui/locale/ja-JP";
3
+ const s = e(
4
+ r
5
+ );
6
+ export {
7
+ s as default
8
+ };
@@ -0,0 +1,8 @@
1
+ import { mergeLocales as e } from "@univerjs/core";
2
+ import r from "@univerjs/sheets-filter-ui/locale/ja-JP";
3
+ const s = e(
4
+ r
5
+ );
6
+ export {
7
+ s as default
8
+ };
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ [x: string]: any;
3
+ };
4
+ export default _default;
package/lib/umd/index.js CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
 
9
9
  // @univerjs/sheets-filter-ui/index
10
- (function(C,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/sheets-filter"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("rxjs"),require("@univerjs/rpc"),require("@univerjs/design"),require("react"),require("react/jsx-runtime")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets-filter","@univerjs/sheets-ui","@univerjs/ui","@univerjs/engine-render","@univerjs/sheets","rxjs","@univerjs/rpc","@univerjs/design","react","react/jsx-runtime"],c):(C=typeof globalThis<"u"?globalThis:C||self,c(C.UniverSheetsFilterUi={},C.UniverCore,C.UniverSheetsFilter,C.UniverSheetsUi,C.UniverUi,C.UniverEngineRender,C.UniverSheets,C.rxjs,C.UniverRpc,C.UniverDesign,C.React,C.React))})(this,(function(C,c,u,$,g,K,y,S,me,N,F,d){"use strict";var ir=Object.defineProperty;var nr=(C,c,u)=>c in C?ir(C,c,{enumerable:!0,configurable:!0,writable:!0,value:u}):C[c]=u;var _=(C,c,u)=>nr(C,typeof c!="symbol"?c+"":c,u);var Te;var R=(r=>(r[r.FIRST=0]="FIRST",r[r.SECOND=1]="SECOND",r))(R||{}),E=(r=>(r.NONE="none",r.STARTS_WITH="startsWith",r.DOES_NOT_START_WITH="doesNotStartWith",r.ENDS_WITH="endsWith",r.DOES_NOT_END_WITH="doesNotEndWith",r.CONTAINS="contains",r.DOES_NOT_CONTAIN="doesNotContain",r.EQUALS="equals",r.NOT_EQUALS="notEquals",r.EMPTY="empty",r.NOT_EMPTY="notEmpty",r.BETWEEN="between",r.NOT_BETWEEN="notBetween",r.CUSTOM="custom",r))(E||{}),f;(r=>{r.NONE={label:"sheets-filter.conditions.none",operator:E.NONE,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NONE]: should not have initial form params!")},testMappingParams:i=>i.operator1===E.NONE,mapToFilterColumn:()=>null,testMappingFilterColumn:i=>!i.customFilters&&!i.filters?{}:!1},r.EMPTY={label:"sheets-filter.conditions.empty",operator:E.EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.EMPTY]: should not have initial form params!")},testMappingParams:({operator1:i})=>i===E.EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:""}]}}),testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.val===""&&s.operator===void 0?{operator1:E.EMPTY}:!1}},r.NOT_EMPTY={label:"sheets-filter.conditions.not-empty",operator:E.NOT_EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NOT_EMPTY]: should not have initial form params!")},testMappingParams:({operator1:i})=>i===E.NOT_EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:"",operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.val===" "&&s.operator===u.CustomFilterOperator.NOT_EQUALS?{operator1:E.NOT_EMPTY}:!1}},r.TEXT_CONTAINS={label:"sheets-filter.conditions.text-contains",operator:E.CONTAINS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.CONTAINS,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===E.CONTAINS},mapToFilterColumn:i=>{const{val1:s}=i;return s===""?null:{customFilters:{customFilters:[{val:`*${s}*`}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.startsWith("*")&&a.endsWith("*")?{operator1:E.CONTAINS,val1:a.slice(1,-1)}:!1}},r.DOES_NOT_CONTAIN={label:"sheets-filter.conditions.does-not-contain",operator:E.DOES_NOT_CONTAIN,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.DOES_NOT_CONTAIN,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`*${i.val1}*`,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.DOES_NOT_CONTAIN},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return s.operator===u.CustomFilterOperator.NOT_EQUALS&&a.startsWith("*")&&a.endsWith("*")?{operator1:E.DOES_NOT_CONTAIN,val1:a.slice(1,-1)}:!1}},r.STARTS_WITH={label:"sheets-filter.conditions.starts-with",operator:E.STARTS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.STARTS_WITH,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`${i.val1}*`}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.STARTS_WITH},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.endsWith("*")&&!a.startsWith("*")?{operator1:E.STARTS_WITH,val1:a.slice(0,-1)}:!1}},r.ENDS_WITH={label:"sheets-filter.conditions.ends-with",operator:E.ENDS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.ENDS_WITH,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`*${i.val1}`}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.ENDS_WITH},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.startsWith("*")&&!a.endsWith("*")?{operator1:E.ENDS_WITH,val1:a.slice(1)}:!1}},r.EQUALS={label:"sheets-filter.conditions.equals",operator:E.EQUALS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.EQUALS,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===E.EQUALS},mapToFilterColumn:i=>{const{val1:s}=i;return s===""?null:{customFilters:{customFilters:[{val:s}]}}},testMappingFilterColumn:i=>{var s,a,h;return((a=(s=i.filters)==null?void 0:s.filters)==null?void 0:a.length)===1?{operator1:E.EQUALS,val1:""}:((h=i.customFilters)==null?void 0:h.customFilters.length)===1&&!i.customFilters.customFilters[0].operator?{operator1:E.EQUALS,val1:i.customFilters.customFilters[0].val.toString()}:!1}},r.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:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.GREATER_THAN}]}}),testMappingParams:i=>{const[s]=D(i);return s===u.CustomFilterOperator.GREATER_THAN},testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.GREATER_THAN?!1:{operator1:u.CustomFilterOperator.GREATER_THAN,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.GREATER_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.LESS_THAN},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.LESS_THAN}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.LESS_THAN?!1:{operator1:u.CustomFilterOperator.LESS_THAN,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.LESS_THAN_OR_EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.LESS_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:s.val.toString()}}},r.EQUAL={label:"sheets-filter.conditions.equal",operator:u.CustomFilterOperator.EQUAL,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.EQUAL,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===u.CustomFilterOperator.EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.EQUAL?!1:{operator1:u.CustomFilterOperator.EQUAL,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.NOT_EQUALS},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.NOT_EQUALS?!1:{operator1:u.CustomFilterOperator.NOT_EQUALS,val1:s.val.toString()}}},r.BETWEEN={label:"sheets-filter.conditions.between",operator:E.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:i=>{const{and:s,operator1:a,operator2:h}=i;if(!s)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN_OR_EQUAL)&&m.includes(u.CustomFilterOperator.LESS_THAN_OR_EQUAL)},mapToFilterColumn:i=>{const{val1:s,val2:a,operator1:h}=i,m=h===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL;return{customFilters:{and:c.BooleanNumber.TRUE,customFilters:[{val:m?s:a,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},{val:m?a:s,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[s,a]=i.customFilters.customFilters;return s.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&a.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&i.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:s.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&s.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&i.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:s.val.toLocaleString()}:!1}},r.NOT_BETWEEN={label:"sheets-filter.conditions.not-between",operator:E.NOT_BETWEEN,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.LESS_THAN,val1:"",operator2:u.CustomFilterOperator.GREATER_THAN,val2:""}),testMappingParams:i=>{const{and:s,operator1:a,operator2:h}=i;if(s)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN)&&m.includes(u.CustomFilterOperator.LESS_THAN)},mapToFilterColumn:i=>{const{val1:s,val2:a,operator1:h}=i,m=h===u.CustomFilterOperator.GREATER_THAN;return{customFilters:{customFilters:[{val:m?s:a,operator:u.CustomFilterOperator.GREATER_THAN},{val:m?a:s,operator:u.CustomFilterOperator.LESS_THAN}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[s,a]=i.customFilters.customFilters;return s.operator===u.CustomFilterOperator.LESS_THAN&&a.operator===u.CustomFilterOperator.GREATER_THAN&&!i.customFilters.and?{operator1:u.CustomFilterOperator.LESS_THAN,val1:s.val.toString(),operator2:u.CustomFilterOperator.GREATER_THAN,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.LESS_THAN&&s.operator===u.CustomFilterOperator.GREATER_THAN&&!i.customFilters.and?{operator1:u.CustomFilterOperator.GREATER_THAN,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN,val2:s.val.toLocaleString()}:!1}},r.CUSTOM={label:"sheets-filter.conditions.custom",operator:E.CUSTOM,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:E.NONE,val1:"",operator2:E.NONE,val2:""}),testMappingParams:()=>!0,mapToFilterColumn:i=>{const{and:s,val1:a,val2:h,operator1:m,operator2:p}=i;function O(M,L){for(const U of r.ALL_CONDITIONS)if(U.operator===M)return U.mapToFilterColumn({val1:L,operator1:M})}const v=!m||m===r.NONE.operator,T=!p||p===r.NONE.operator;if(v&&T)return r.NONE.mapToFilterColumn({});if(v)return O(p,h);if(T)return O(m,a);const I=O(m,a),P=O(p,h),A={customFilters:[I.customFilters.customFilters[0],P.customFilters.customFilters[0]]};return s&&(A.and=c.BooleanNumber.TRUE),{customFilters:A}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const s=i.customFilters.customFilters.map(m=>l({customFilters:{customFilters:[m]}})),a={operator1:s[0][0].operator,val1:s[0][1].val1,operator2:s[1][0].operator,val2:s[1][1].val1};return i.customFilters.and&&(a.and=!0),a}},r.ALL_CONDITIONS=[r.NONE,r.EMPTY,r.NOT_EMPTY,r.TEXT_CONTAINS,r.DOES_NOT_CONTAIN,r.STARTS_WITH,r.ENDS_WITH,r.EQUALS,r.GREATER_THAN,r.GREATER_THAN_OR_EQUAL,r.LESS_THAN,r.LESS_THAN_OR_EQUAL,r.EQUAL,r.NOT_EQUAL,r.BETWEEN,r.NOT_BETWEEN,r.CUSTOM];function e(i){const s=r.ALL_CONDITIONS.find(a=>a.operator===i);if(!s)throw new Error(`[SheetsFilter]: no condition item found for operator: ${i}`);return s}r.getItemByOperator=e;function t(i,s){for(const a of r.ALL_CONDITIONS.filter(h=>h.numOfParameters===s))if(a.numOfParameters!==0&&a.testMappingParams(i))return a;for(const a of r.ALL_CONDITIONS)if(a.testMappingParams(i))return a;throw new Error("[SheetsFilter]: no condition item can be mapped from the filter map params!")}r.testMappingParams=t;function n(i){const s=r.ALL_CONDITIONS.find(a=>a.operator===i);return(s==null?void 0:s.numOfParameters)===0?{operator1:s.operator}:s.getDefaultFormParams()}r.getInitialFormParams=n;function o(i,s){return i.mapToFilterColumn(s)}r.mapToFilterColumn=o;function l(i){if(!i)return[r.NONE,{}];for(const s of r.ALL_CONDITIONS){const a=s.testMappingFilterColumn(i);if(a)return[s,a]}return[r.NONE,{}]}r.testMappingFilterColumn=l})(f||(f={}));function D(r){const{operator1:e,operator2:t,val1:n,val2:o}=r;if(e&&t)throw new Error("Both operator1 and operator2 are set!");if(!e&&!t)throw new Error("Neither operator1 and operator2 and both not set!");return e?[e,n]:[t,o]}function Ie(r){const e=[],t=[];let n=0,o=0;function l(i){i.leaf&&(i.checked?(e.push(i),n+=i.count):(t.push(i),o+=i.count)),i.children&&i.children.forEach(l)}return r.forEach(l),{checkedItems:e,uncheckedItems:t,checked:n,unchecked:o}}var nt=Object.getOwnPropertyDescriptor,ot=(r,e,t,n)=>{for(var o=n>1?void 0:n?nt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Fe=(r,e)=>(t,n)=>e(t,n,r);const Ne="sheets-filter.generate-filter-values.service",pe=c.createIdentifier(Ne);let be=class extends c.Disposable{constructor(r,e,t){super(),this._localeService=r,this._univerInstanceService=e,this._logService=t}async getFilterValues(r){var p;const{unitId:e,subUnitId:t,filteredOutRowsByOtherColumns:n,filterColumn:o,filters:l,blankChecked:i,iterateRange:s,alreadyChecked:a}=r,h=this._univerInstanceService.getUnit(e),m=(p=this._univerInstanceService.getUnit(e))==null?void 0:p.getSheetBySheetId(t);return!h||!m?[]:(this._logService.debug("[SheetsGenerateFilterValuesService]","getFilterValues for",{unitId:e,subUnitId:t}),ke(l,this._localeService,s,m,new Set(n),o,new Set(a.map(String)),i,h.getStyles()))}};be=ot([Fe(0,c.Inject(c.LocaleService)),Fe(1,c.IUniverInstanceService),Fe(2,c.ILogService)],be);function ke(r,e,t,n,o,l,i,s,a){var P,A,M,L,U,B,Y,q,oe,H;const h=new Map,m=new Map,p="yyyy-mm-dd",O="empty",v=!r&&((l==null?void 0:l.filterBy)===u.FilterBy.COLORS||(l==null?void 0:l.filterBy)===u.FilterBy.CONDITIONS)&&((P=l.filteredOutRows)==null?void 0:P.size);let T=0;for(const b of n.iterateByColumn(t,!1,!1)){const{row:$e,rowSpan:Ee=1}=b;let se=0;for(;se<Ee;){const rr=$e+se;if(o.has(rr)){se++;continue}const z=b!=null&&b.value?c.extractPureTextFromCell(b.value):"";if(!z){T+=1,se+=Ee;continue}const Oe=(A=b.value)!=null&&A.v&&!b.value.p?(U=(L=a.get((M=b.value)==null?void 0:M.s))==null?void 0:L.n)==null?void 0:U.pattern:"",rt=Oe&&c.numfmt.getFormatInfo(Oe).isDate;let it=!1;if(rt){const{year:W,month:Z,day:w}=c.numfmt.getFormatDateInfo(Oe);it=W||Z||w}if(Oe&&rt&&it){const W=(B=n.getCellRaw(b.row,b.col))==null?void 0:B.v;if(!W){se++;continue}const Z=c.numfmt.format(p,Number(W)),[w,V,de]=Z.split("-").map(Number);let J=h.get(`${w}`);J||(J={title:`${w}`,key:`${w}`,children:[],count:0,leaf:!1,checked:!1},h.set(`${w}`,J),m.set(`${w}`,[`${w}`]));let j=(Y=J.children)==null?void 0:Y.find(Ue=>Ue.key===`${w}-${V}`);j||(j={title:e.t(`sheets-filter.date.${V}`),key:`${w}-${V}`,children:[],count:0,leaf:!1,checked:!1},(q=J.children)==null||q.push(j),m.set(`${w}-${V}`,[`${w}`,`${w}-${V}`]));const Me=(oe=j==null?void 0:j.children)==null?void 0:oe.find(Ue=>Ue.key===`${w}-${V}-${de}`);Me?(Me.originValues.add(z),Me.count++,j.count++,J.count++):((H=j.children)==null||H.push({title:`${de}`,key:`${w}-${V}-${de}`,count:1,originValues:new Set([z]),leaf:!0,checked:v?!1:i.size?i.has(z):!s}),j.count++,J.count++,m.set(`${w}-${V}-${de}`,[`${w}`,`${w}-${V}`,`${w}-${V}-${de}`]))}else{const W=z;let Z=h.get(W);Z?Z.count++:(Z={title:z,leaf:!0,checked:v?!1:i.size?i.has(z):!s,key:W,count:1},h.set(W,Z),m.set(W,[W]))}se++}}const I=v?!1:r?s:!0;if(T>0){const b={title:e.t("sheets-filter.panel.empty"),count:T,leaf:!0,checked:I,key:O};h.set("empty",b),m.set("empty",[O])}return{filterTreeItems:st(Array.from(h.values())),filterTreeMapCache:m}}function st(r){return Array.from(r).sort((e,t)=>e.children&&!t.children?-1:!e.children&&t.children?1:at(e.title,t.title)).map(e=>(e.children&&e.children.sort((t,n)=>{const o=Number.parseInt(t.key.split("-")[1],10),l=Number.parseInt(n.key.split("-")[1],10);return o-l}).forEach(t=>{t.children&&t.children.sort((n,o)=>{const l=Number.parseInt(n.key.split("-")[2],10),i=Number.parseInt(o.key.split("-")[2],10);return l-i})}),e))}const Be=r=>!Number.isNaN(Number(r))&&!Number.isNaN(Number.parseFloat(r));function at(r,e){const t=Be(r),n=Be(e);return t&&n?Number.parseFloat(r)-Number.parseFloat(e):t&&!n?-1:!t&&n?1:r.localeCompare(e)}function ye(r,e){for(const t of r){if(t.key===e)return t;if(t.children){const n=ye(t.children,e);if(n)return n}}return null}function De(r){return r.leaf?r.checked:r.children?r.children.every(e=>De(e)):!0}function ae(r,e){r.leaf&&(e!==void 0?r.checked=e:r.checked=!r.checked),r.children&&r.children.forEach(t=>ae(t,e))}function He(r,e){const t=[];return r.forEach(n=>{const o=n.originValues?e.some(s=>Array.from(n.originValues).some(a=>a.toLowerCase().includes(s.toLowerCase()))):!1,l=!o&&e.some(s=>n.title.toLowerCase().includes(s.toLowerCase()));if(o||l)t.push({...n});else if(n.children){const s=He(n.children,e);if(s.length>0){const a=s.reduce((h,m)=>h+m.count,0);t.push({...n,count:a,children:s})}}}),t}var lt=Object.getOwnPropertyDescriptor,fe=(r,e,t,n)=>{for(var o=n>1?void 0:n?lt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},le=(r,e)=>(t,n)=>e(t,n,r);c.createIdentifier("sheets-filter-ui.sheets-filter-panel.service");let Q=class extends c.Disposable{constructor(e,t){super();_(this,"_filterBy$",new S.BehaviorSubject(u.FilterBy.VALUES));_(this,"filterBy$",this._filterBy$.asObservable());_(this,"_filterByModel$",new S.ReplaySubject(1));_(this,"filterByModel$",this._filterByModel$.asObservable());_(this,"_filterByModel",null);_(this,"_hasCriteria$",new S.BehaviorSubject(!1));_(this,"hasCriteria$",this._hasCriteria$.asObservable());_(this,"_filterModel",null);_(this,"_col$",new S.BehaviorSubject(-1));_(this,"col$",this._col$.asObservable());_(this,"_filterHeaderListener",null);this._injector=e,this._refRangeService=t}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,t){this.terminate(),this._filterModel=e,this._col$.next(t);const n=e.getFilterColumn(t);if(n){const o=n.getColumnData();if(o.customFilters){this._hasCriteria$.next(!0),this._setupByConditions(e,t);return}if(o.colorFilters){this._hasCriteria$.next(!0),this._setupByColors(e,t);return}if(o.filters){this._hasCriteria$.next(!0),this._setupByValues(e,t);return}this._hasCriteria$.next(!1),this._setupByValues(e,t);return}this._hasCriteria$.next(!1),this._setupByValues(e,t)}changeFilterBy(e){if(!this._filterModel||this.col===-1)return!1;switch(e){case u.FilterBy.VALUES:this._setupByValues(this._filterModel,this.col);break;case u.FilterBy.COLORS:this._setupByColors(this._filterModel,this.col);break;case u.FilterBy.CONDITIONS:this._setupByConditions(this._filterModel,this.col);break}return!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,t){this._disposeFilterHeaderChangeListener();const n=e.unitId,o=e.subUnitId,l=e.getRange(),i={startColumn:t,startRow:l.startRow,endRow:l.startRow,endColumn:t};this._filterHeaderListener=this._refRangeService.watchRange(n,o,i,(s,a)=>{if(!a)this.terminate();else{const h=a.startColumn-s.startColumn;h!==0&&this._filterByModel.deltaCol(h)}})}async _setupByValues(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=await _e.fromFilterColumn(this._injector,e,t);return this.filterByModel=o,this._filterBy$.next(u.FilterBy.VALUES),this._listenToFilterHeaderChange(e,t),!0}async _setupByColors(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=await ge.fromFilterColumn(this._injector,e,t);return this.filterByModel=o,this._filterBy$.next(u.FilterBy.COLORS),this._listenToFilterHeaderChange(e,t),!0}_setupByConditions(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=ve.fromFilterColumn(this._injector,e,t,e.getFilterColumn(t));return this.filterByModel=o,this._filterBy$.next(u.FilterBy.CONDITIONS),this._listenToFilterHeaderChange(e,t),!0}_disposePreviousModel(){var e;(e=this._filterByModel)==null||e.dispose(),this.filterByModel=null}};Q=fe([le(0,c.Inject(c.Injector)),le(1,c.Inject(y.RefRangeService))],Q);let ve=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"canApply$",S.of(!0));_(this,"_conditionItem$");_(this,"conditionItem$");_(this,"_filterConditionFormParams$");_(this,"filterConditionFormParams$");this._filterModel=e,this.col=t,this._commandService=l,this._conditionItem$=new S.BehaviorSubject(n),this.conditionItem$=this._conditionItem$.asObservable(),this._filterConditionFormParams$=new S.BehaviorSubject(o),this.filterConditionFormParams$=this._filterConditionFormParams$.asObservable()}static fromFilterColumn(e,t,n,o){const[l,i]=f.testMappingFilterColumn(o==null?void 0:o.getColumnData());return e.createInstance(ve,t,n,l,i)}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=f.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 t=f.ALL_CONDITIONS.find(n=>n.operator===e);if(!t)throw new Error(`[ByConditionsModel]: condition item not found for operator: ${e}!`);this._conditionItem$.next(t),this._filterConditionFormParams$.next(f.getInitialFormParams(e))}onConditionFormChange(e){const t={...this.filterConditionFormParams,...e};if(t.and!==!0&&delete t.and,typeof e.and<"u"||typeof e.operator1<"u"||typeof e.operator2<"u"){const n=f.testMappingParams(t,this.conditionItem.numOfParameters);this._conditionItem$.next(n)}this._filterConditionFormParams$.next(t)}};ve=fe([le(4,c.ICommandService)],ve);let _e=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"_rawFilterItems$");_(this,"rawFilterItems$");_(this,"filterItems$");_(this,"_filterItems",[]);_(this,"_treeMapCache");_(this,"canApply$");_(this,"_manuallyUpdateFilterItems$");_(this,"_searchString$");_(this,"searchString$");this._filterModel=e,this.col=t,this._commandService=l,this._treeMapCache=o,this._searchString$=new S.BehaviorSubject(""),this.searchString$=this._searchString$.asObservable(),this._rawFilterItems$=new S.BehaviorSubject(n),this.rawFilterItems$=this._rawFilterItems$.asObservable(),this._manuallyUpdateFilterItems$=new S.Subject,this.filterItems$=S.merge(S.combineLatest([this._searchString$.pipe(S.throttleTime(500,void 0,{leading:!0,trailing:!0}),S.startWith(void 0)),this._rawFilterItems$]).pipe(S.map(([i,s])=>{if(!i)return s;const h=i.toLowerCase().split(/\s+/).filter(m=>!!m);return He(s,h)})),this._manuallyUpdateFilterItems$).pipe(S.shareReplay(1)),this.canApply$=this.filterItems$.pipe(S.map(i=>Ie(i).checked>0)),this.disposeWithMe(this.filterItems$.subscribe(i=>this._filterItems=i))}static async fromFilterColumn(e,t,n){const o=e.get(c.IUniverInstanceService),l=e.get(c.LocaleService),i=e.get(pe,c.Quantity.OPTIONAL),{unitId:s,subUnitId:a}=t,h=o.getUniverSheetInstance(s);if(!h)throw new Error(`[ByValuesModel]: Workbook not found for filter model with unitId: ${s}!`);const m=h==null?void 0:h.getSheetBySheetId(a);if(!m)throw new Error(`[ByValuesModel]: Worksheet not found for filter model with unitId: ${s} and subUnitId: ${a}!`);const p=t.getRange(),O=n,v=t.getFilterColumn(n),T=v==null?void 0:v.getColumnData().filters,I=new Set(T==null?void 0:T.filters),P=!!(T&&T.blank),A=t.getFilteredOutRowsExceptCol(n),M={...p,startRow:p.startRow+1,startColumn:O,endColumn:O};let L,U;if(i){const B=await i.getFilterValues({unitId:s,subUnitId:a,filteredOutRowsByOtherColumns:Array.from(A),filterColumn:v,filters:!!T,blankChecked:P,iterateRange:M,alreadyChecked:Array.from(I)});L=B.filterTreeItems,U=B.filterTreeMapCache}else{const B=ke(!!T,l,M,m,A,v,I,P,h.getStyles());L=B.filterTreeItems,U=B.filterTreeMapCache}return e.createInstance(_e,t,n,L,U)}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 t=c.Tools.deepClone(this._filterItems);t.forEach(n=>ae(n,e)),this._manuallyUpdateFilterItems(t)}onFilterCheckToggled(e){const t=c.Tools.deepClone(this._filterItems),n=ye(t,e.key);if(!n)return;const o=De(n);ae(n,!o),this._manuallyUpdateFilterItems(t)}onFilterOnly(e){const t=c.Tools.deepClone(this._filterItems);t.forEach(n=>ae(n,!1)),e.forEach(n=>{const o=ye(t,n);o&&ae(o,!0)}),this._manuallyUpdateFilterItems(t)}_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=Ie(this._filterItems),{checked:t,checkedItems:n}=e,o=this.rawFilterItems;let l=0;for(const h of o)l+=h.count;const i=t===0,s=e.checked===l,a={colId:this.col};if(i)throw new Error("[ByValuesModel]: no checked items!");if(s)return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});{a.filters={};const h=n.filter(p=>p.key!=="empty");h.length>0&&(a.filters={filters:h.flatMap(p=>p.originValues?Array.from(p.originValues):[p.title])}),h.length!==n.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})}};_e=fe([le(4,c.ICommandService)],_e);let ge=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"canApply$",S.of(!0));_(this,"_cellFillColors$");_(this,"cellFillColors$");_(this,"_cellTextColors$");_(this,"cellTextColors$");this._filterModel=e,this.col=t,this._commandService=l,this._cellFillColors$=new S.BehaviorSubject(Array.from(n.values())),this.cellFillColors$=this._cellFillColors$.asObservable(),this._cellTextColors$=new S.BehaviorSubject(Array.from(o.values())),this.cellTextColors$=this._cellTextColors$.asObservable()}static async fromFilterColumn(e,t,n){var M,L,U;const o=e.get(c.IUniverInstanceService),{unitId:l,subUnitId:i}=t,s=o.getUniverSheetInstance(l);if(!s)throw new Error(`[ByColorsModel]: Workbook not found for filter model with unitId: ${l}!`);const a=s==null?void 0:s.getSheetBySheetId(i);if(!a)throw new Error(`[ByColorsModel]: Worksheet not found for filter model with unitId: ${l} and subUnitId: ${i}!`);const h=t.getRange(),m=n,p=(M=t.getFilterColumn(n))==null?void 0:M.getColumnData().colorFilters,O=t.getFilteredOutRowsExceptCol(n),v={...h,startRow:h.startRow+1,startColumn:m,endColumn:m},T=new Map,I=new Set((L=p==null?void 0:p.cellFillColors)!=null?L:[]),P=new Map,A=new Set((U=p==null?void 0:p.cellTextColors)!=null?U:[]);for(const B of a.iterateByColumn(v,!1,!0)){const{row:Y,col:q,value:oe}=B;if(O.has(Y))continue;const H=a.getComposedCellStyleByCellData(Y,q,oe);if(H.bg&&H.bg.rgb){const b=new c.ColorKit(H.bg.rgb).toRgbString();T.has(b)||T.set(b,{color:b,checked:I.has(b)})}else T.set("default-fill-color",{color:null,checked:I.has(null)});if(H.cl&&H.cl.rgb){const b=new c.ColorKit(H.cl.rgb).toRgbString();P.has(b)||P.set(b,{color:b,checked:A.has(b)})}else P.set("default-font-color",{color:K.COLOR_BLACK_RGB,checked:A.has(K.COLOR_BLACK_RGB)})}return e.createInstance(ge,t,n,T,P)}get cellFillColors(){return this._cellFillColors$.getValue()}get cellTextColors(){return this._cellTextColors$.getValue()}dispose(){super.dispose(),this._cellFillColors$.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})}onFilterCheckToggled(e,t=!0){const n=t?this.cellFillColors:this.cellTextColors,o=[];let l=!1;for(let i=0;i<n.length;i++){const s=n[i];if(s.color===e.color){l=!0,o.push({color:s.color,checked:!s.checked});continue}o.push({color:s.color,checked:s.checked})}l&&(this._resetColorsCheckedStatus(!t),t?this._cellFillColors$.next([...o]):this._cellTextColors$.next([...o]))}_resetColorsCheckedStatus(e=!0){const t=e?this.cellFillColors:this.cellTextColors,n=[];for(let o=0;o<t.length;o++)n.push({color:t[o].color,checked:!1});e?this._cellFillColors$.next([...n]):this._cellTextColors$.next([...n])}async apply(){if(this._disposed)return!1;const e=this.cellFillColors.filter(o=>o.checked).map(o=>o.color),t=this.cellTextColors.filter(o=>o.checked).map(o=>o.color);if(e.length===0&&t.length===0)return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});const n={colId:this.col};return e.length>0?n.colorFilters={cellFillColors:e}:t.length>0&&(n.colorFilters={cellTextColors:t}),this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:n})}};ge=fe([le(4,c.ICommandService)],ge);const ee="FILTER_PANEL_OPENED",ce={id:"sheet.operation.open-filter-panel",type:c.CommandType.OPERATION,handler:(r,e)=>{const t=r.get(c.IContextService),n=r.get(u.SheetsFilterService),o=r.get(Q),l=r.get(c.ICommandService),i=r.has($.IEditorBridgeService)?r.get($.IEditorBridgeService):null;i!=null&&i.isVisible().visible&&l.syncExecuteCommand($.SetCellEditVisibleOperation.id,{visible:!1});const{unitId:s,subUnitId:a,col:h}=e,m=n.getFilterModel(s,a);return m?(o.setupCol(m,h),t.getContextValue(ee)||t.setContextValue(ee,!0),!0):!1}},te={id:"sheet.operation.close-filter-panel",type:c.CommandType.OPERATION,handler:r=>{const e=r.get(c.IContextService),t=r.get(Q),n=r.get(g.ILayoutService,c.Quantity.OPTIONAL);return e.getContextValue(ee)?(e.setContextValue(ee,!1),n==null||n.focus(),t.terminate()):!1}},Pe={id:"sheet.operation.apply-filter",type:c.CommandType.OPERATION,handler:(r,e)=>{const{filterBy:t}=e;return r.get(Q).changeFilterBy(t)}},xe="sheets-filter-ui.config",Ce={};var ct=Object.getOwnPropertyDescriptor,ut=(r,e,t,n)=>{for(var o=n>1?void 0:n?ct(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},re=(r,e)=>(t,n)=>e(t,n,r);let ie=class extends c.Disposable{constructor(r,e,t,n,o,l){super(),this._sheetsFilterService=r,this._localeService=e,this._commandService=t,this._sheetPermissionCheckPermission=n,this._injector=o,this._sheetsSelectionService=l,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(r=>{var e,t,n;if(r.id===u.SmartToggleSheetsFilterCommand.id){const o=this._injector.get(c.IUniverInstanceService),l=y.getSheetCommandTarget(o);if(!l)return;const{unitId:i,subUnitId:s,worksheet:a}=l,h=(e=this._sheetsFilterService.getFilterModel(i,s))==null?void 0:e.getRange();let m;if(h)m=this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetFilterPermission,y.WorksheetViewPermission]},[h]);else{const p=(t=this._sheetsSelectionService.getCurrentLastSelection())==null?void 0:t.range;if(p){let O={...p};O=p.startColumn===p.endColumn&&p.startRow===p.endRow?y.expandToContinuousRange(O,{left:!0,right:!0,up:!0,down:!0},a):O,m=this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetViewPermission,y.WorksheetFilterPermission]},[O],i,s)}else m=this._sheetPermissionCheckPermission.permissionCheckWithoutRange({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetViewPermission,y.WorksheetFilterPermission]})}m||this._sheetPermissionCheckPermission.blockExecuteWithoutPermission(this._localeService.t("permission.dialog.filterErr"))}if(r.id===ce.id){const o=r.params,{unitId:l,subUnitId:i}=o,s=(n=this._sheetsFilterService.getFilterModel(l,i))==null?void 0:n.getRange(),a=c.Tools.deepClone(s);a&&(a.startColumn=o.col,a.endColumn=o.col,this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetFilterPermission,y.WorksheetViewPermission]},[a])||this._sheetPermissionCheckPermission.blockExecuteWithoutPermission(this._localeService.t("permission.dialog.filterErr")))}}))}};ie=ut([re(0,c.Inject(u.SheetsFilterService)),re(1,c.Inject(c.LocaleService)),re(2,c.ICommandService),re(3,c.Inject(y.SheetPermissionCheckController)),re(4,c.Inject(c.Injector)),re(5,c.Inject(y.SheetsSelectionsService))],ie);const G=16,ht=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 We{static drawNoCriteria(e,t,n,o){e.save(),K.Rect.drawWith(e,{radius:2,width:G,height:G,fill:o}),e.lineCap="square",e.strokeStyle=n,e.scale(t/G,t/G),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,t,n,o){e.save(),K.Rect.drawWith(e,{radius:2,width:G,height:G,fill:o}),e.scale(t/G,t/G),e.fillStyle=n,e.fill(ht),e.restore()}}var dt=Object.getOwnPropertyDescriptor,mt=(r,e,t,n)=>{for(var o=n>1?void 0:n?dt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Ae=(r,e)=>(t,n)=>e(t,n,r);const x=16,ue=1;let we=class extends K.Shape{constructor(e,t,n,o,l){super(e,t);_(this,"_cellWidth",0);_(this,"_cellHeight",0);_(this,"_filterParams");_(this,"_hovered",!1);this._contextService=n,this._commandService=o,this._themeService=l,this.setShapeProps(t),this.onPointerDown$.subscribeEvent(i=>this.onPointerDown(i)),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 t=this._cellHeight,n=this._cellWidth,o=x-n,l=x-t;e.save();const i=new Path2D;i.rect(o,l,n,t),e.clip(i);const{hasCriteria:s}=this._filterParams,a=this._themeService.getColorFromTheme("primary.600"),h=this._hovered?this._themeService.getColorFromTheme("gray.50"):"rgba(255, 255, 255, 1.0)";s?We.drawHasCriteria(e,x,a,h):We.drawNoCriteria(e,x,a,h),e.restore()}onPointerDown(e){if(e.button===2)return;const{col:t,unitId:n,subUnitId:o}=this._filterParams;this._contextService.getContextValue(ee)||!this._commandService.hasCommand(ce.id)||setTimeout(()=>{this._commandService.executeCommand(ce.id,{unitId:n,subUnitId:o,col:t})},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}};we=mt([Ae(2,c.IContextService),Ae(3,c.ICommandService),Ae(4,c.Inject(c.ThemeService))],we);var pt=Object.getOwnPropertyDescriptor,ft=(r,e,t,n)=>{for(var o=n>1?void 0:n?pt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},X=(r,e)=>(t,n)=>e(t,n,r);const vt=1e3,_t=5e3;function gt(r,e,t,n){switch(n){case c.VerticalAlign.TOP:return r+ue;case c.VerticalAlign.MIDDLE:return r+Math.max(0,(t-x)/2);case c.VerticalAlign.BOTTOM:default:return e-x-ue}}let Re=class extends c.RxDisposable{constructor(e,t,n,o,l,i,s,a){super();_(this,"_filterRangeShape",null);_(this,"_buttonRenderDisposable",null);_(this,"_filterButtonShapes",[]);this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._sheetsFilterService=o,this._themeService=l,this._sheetInterceptorService=i,this._commandService=s,this._selectionRenderService=a,this._initRenderer()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){this._sheetSkeletonManagerService.currentSkeleton$.pipe(S.switchMap(e=>{var s,a;if(!e)return S.of(null);const{unit:t,unitId:n}=this._context,o=((s=t.getActiveSheet())==null?void 0:s.getSheetId())||"",l=(a=this._sheetsFilterService.getFilterModel(n,o))!=null?a:void 0,i=()=>({unitId:n,worksheetId:o,filterModel:l,range:l==null?void 0:l.getRange(),skeleton:e.skeleton});return c.fromCallback(this._commandService.onCommandExecuted.bind(this._commandService)).pipe(S.filter(([h])=>{var m;return h.type===c.CommandType.MUTATION&&((m=h.params)==null?void 0:m.unitId)===t.getUnitId()&&(u.FILTER_MUTATIONS.has(h.id)||h.id===y.SetRangeValuesMutation.id)}),S.throttleTime(20,void 0,{leading:!1,trailing:!0}),S.map(i),S.startWith(i()))}),S.takeUntil(this.dispose$)).subscribe(e=>{this._disposeRendering(),!(!e||!e.range)&&(this._renderRange(e.range,e.skeleton),this._renderButtons(e))})}_renderRange(e,t){const{scene:n}=this._context,{rowHeaderWidth:o,columnHeaderHeight:l}=t,i=this._filterRangeShape=new $.SelectionControl(n,vt,this._themeService,{rowHeaderWidth:o,columnHeaderHeight:l,enableAutoFill:!1,highlightHeader:!1}),s={range:e,primary:null,style:{fill:"rgba(0, 0, 0, 0.0)"}},a=$.attachSelectionWithCoord(s,t);i.updateRangeBySelectionWithCoord(a),i.setEvent(!1),n.makeDirty(!0)}_renderButtons(e){const{range:t,filterModel:n,unitId:o,skeleton:l,worksheetId:i}=e,{unit:s,scene:a}=this._context,h=s.getSheetBySheetId(i);if(!h)return;this._interceptCellContent(o,i,e.range);const{startColumn:m,endColumn:p,startRow:O}=t;for(let v=m;v<=p;v++){const T=`sheets-filter-button-${v}`,I=$.getCoordByCell(O,v,a,l),P=h.getComposedCellStyle(O,v),A=(P==null?void 0:P.vt)||c.VerticalAlign.BOTTOM,{startX:M,startY:L,endX:U,endY:B}=I,Y=U-M,q=B-L;if(q<=ue||Y<=ue)continue;const oe=!!n.getFilterColumn(v),H=U-x-ue,b=gt(L,B,q,A),$e={left:H,top:b,height:x,width:x,zIndex:_t,cellHeight:q,cellWidth:Y,filterParams:{unitId:o,subUnitId:i,col:v,hasCriteria:oe}},Ee=this._injector.createInstance(we,T,$e);this._filterButtonShapes.push(Ee)}a.addObjects(this._filterButtonShapes),a.makeDirty()}_interceptCellContent(e,t,n){const{startRow:o,startColumn:l,endColumn:i}=n;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(y.INTERCEPTOR_POINT.CELL_CONTENT,{effect:c.InterceptorEffectEnum.Style,handler:(s,a,h)=>{const{row:m,col:p,unitId:O,subUnitId:v}=a;return O!==e||v!==t||m!==o||p<l||p>i||((!s||s===a.rawData)&&(s={...a.rawData}),s.fontRenderExtension={...s==null?void 0:s.fontRenderExtension,rightOffset:x}),h(s)},priority:10})}_disposeRendering(){var e,t;(e=this._filterRangeShape)==null||e.dispose(),this._filterButtonShapes.forEach(n=>n.dispose()),(t=this._buttonRenderDisposable)==null||t.dispose(),this._filterRangeShape=null,this._buttonRenderDisposable=null,this._filterButtonShapes=[]}};Re=ft([X(1,c.Inject(c.Injector)),X(2,c.Inject($.SheetSkeletonManagerService)),X(3,c.Inject(u.SheetsFilterService)),X(4,c.Inject(c.ThemeService)),X(5,c.Inject(y.SheetInterceptorService)),X(6,c.ICommandService),X(7,$.ISheetSelectionRenderService)],Re);var Ct=Object.getOwnPropertyDescriptor,St=(r,e,t,n)=>{for(var o=n>1?void 0:n?Ct(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Ve=(r,e)=>(t,n)=>e(t,n,r);let he=class extends c.RxDisposable{constructor(r,e){super(),this._renderManagerService=r,this._sheetsRenderService=e,[u.SetSheetsFilterRangeMutation,u.SetSheetsFilterCriteriaMutation,u.RemoveSheetsFilterMutation,u.ReCalcSheetsFilterMutation].forEach(t=>this.disposeWithMe(this._sheetsRenderService.registerSkeletonChangingMutations(t.id))),this.disposeWithMe(this._renderManagerService.registerRenderModule(c.UniverInstanceType.UNIVER_SHEET,[Re]))}};he=St([Ve(0,K.IRenderManagerService),Ve(1,c.Inject($.SheetsRenderService))],he);var Tt=Object.defineProperty,Et=Object.getOwnPropertyDescriptor,Ot=(r,e,t)=>e in r?Tt(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,It=(r,e,t,n)=>{for(var o=n>1?void 0:n?Et(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},je=(r,e)=>(t,n)=>e(t,n,r),Qe=(r,e,t)=>Ot(r,typeof e!="symbol"?e+"":e,t);const Ft="SHEET_FILTER_UI_PLUGIN";C.UniverSheetsFilterMobileUIPlugin=class extends c.Plugin{constructor(e=Ce,t,n){super(),this._config=e,this._injector=t,this._configService=n;const{menu:o,...l}=c.merge({},Ce,this._config);o&&this._configService.setConfig("menu",o,{merge:!0}),this._configService.setConfig(xe,l)}onStarting(){[[ie],[he]].forEach(e=>this._injector.add(e))}onReady(){this._injector.get(ie)}onRendered(){this._injector.get(he)}},Qe(C.UniverSheetsFilterMobileUIPlugin,"type",c.UniverInstanceType.UNIVER_SHEET),Qe(C.UniverSheetsFilterMobileUIPlugin,"pluginName",Ft),C.UniverSheetsFilterMobileUIPlugin=It([c.DependentOn(u.UniverSheetsFilterPlugin),je(1,c.Inject(c.Injector)),je(2,c.IConfigService)],C.UniverSheetsFilterMobileUIPlugin);function ne({ref:r,...e}){const{icon:t,id:n,className:o,extend:l,...i}=e,s=`univerjs-icon univerjs-icon-${n} ${o||""}`.trim(),a=F.useRef(`_${yt()}`);return Ge(t,`${n}`,{defIds:t.defIds,idSuffix:a.current},{ref:r,className:s,...i},l)}function Ge(r,e,t,n,o){return F.createElement(r.tag,{key:e,...Nt(r,t,o),...n},(bt(r,t).children||[]).map((l,i)=>Ge(l,`${e}-${r.tag}-${i}`,t,void 0,o)))}function Nt(r,e,t){const n={...r.attrs};t!=null&&t.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=t.colorChannel1),r.tag==="mask"&&n.id&&(n.id=n.id+e.idSuffix),Object.entries(n).forEach(([l,i])=>{l==="mask"&&typeof i=="string"&&(n[l]=i.replace(/url\(#(.*)\)/,`url(#$1${e.idSuffix})`))});const{defIds:o}=e;return!o||o.length===0||(r.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(([l,i])=>{typeof i=="string"&&(n[l]=i.replace(/url\(#(.*)\)/,`url(#$1${e.idSuffix})`))})),n}function bt(r,e){var n;const{defIds:t}=e;return!t||t.length===0?r:r.tag==="defs"&&((n=r.children)!=null&&n.length)?{...r,children:r.children.map(o=>typeof o.attrs.id=="string"&&t&&t.includes(o.attrs.id)?{...o,attrs:{...o.attrs,id:o.attrs.id+e.idSuffix}}:o)}:r}function yt(){return Math.random().toString(36).substring(2,8)}ne.displayName="UniverIcon";const Pt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M10 1.05957C10.356 1.05957 10.6816 1.26162 10.8408 1.58008L18.8408 17.5801L18.8799 17.668C19.0486 18.1134 18.8551 18.6232 18.4199 18.8408C17.9557 19.0727 17.3913 18.8841 17.1592 18.4199L10 4.10156L2.84082 18.4199C2.60871 18.8841 2.04434 19.0727 1.58008 18.8408C1.11587 18.6087 0.92731 18.0443 1.15918 17.5801L9.15918 1.58008C9.31841 1.26162 9.64395 1.05957 10 1.05957Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M15.3337 11.7261L15.4294 11.731C15.9035 11.779 16.2732 12.1798 16.2732 12.6665C16.2732 13.1532 15.9035 13.554 15.4294 13.602L15.3337 13.6069H4.66675C4.1476 13.6069 3.72632 13.1856 3.72632 12.6665C3.72632 12.1474 4.1476 11.7261 4.66675 11.7261H15.3337Z"}}]},Ye=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"a-icon",ref:t,icon:Pt}))});Ye.displayName="AIcon";const At={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M17.0596 10C17.0596 6.10087 13.8992 2.94043 10 2.94043C6.10087 2.94043 2.94043 6.10087 2.94043 10C2.94043 13.8992 6.10087 17.0596 10 17.0596C13.8992 17.0596 17.0596 13.8992 17.0596 10ZM18.9404 10C18.9404 14.9374 14.9374 18.9404 10 18.9404C5.06257 18.9404 1.05957 14.9374 1.05957 10C1.05957 5.06257 5.06257 1.05957 10 1.05957C14.9374 1.05957 18.9404 5.06257 18.9404 10Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.29492 4.13476C4.63911 3.79057 5.1845 3.76906 5.55371 4.07031L5.625 4.13476L16.0244 14.5352L16.0889 14.6064C16.3902 14.9757 16.3686 15.52 16.0244 15.8643C15.6573 16.2313 15.0624 16.2313 14.6953 15.8643L4.29492 5.46484L4.23047 5.39355C3.92922 5.02434 3.95073 4.47895 4.29492 4.13476Z"}}]},qe=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"ban-icon",ref:t,icon:At}))});qe.displayName="BanIcon";const wt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",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"}}]},Ze=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"filter-icon",ref:t,icon:wt}))});Ze.displayName="FilterIcon";const Rt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.00016 1.33203C6.68162 1.33203 5.39269 1.72302 4.29636 2.45557C3.20004 3.18811 2.34555 4.2293 1.84097 5.44747C1.33638 6.66565 1.20436 8.00609 1.4616 9.2993C1.71883 10.5925 2.35377 11.7804 3.28612 12.7127C4.21847 13.6451 5.40636 14.28 6.69956 14.5373C7.99277 14.7945 9.33321 14.6625 10.5514 14.1579C11.7696 13.6533 12.8108 12.7988 13.5433 11.7025C14.2758 10.6062 14.6668 9.31724 14.6668 7.9987C14.6649 6.23118 13.9619 4.53662 12.7121 3.2868C11.4622 2.03697 9.76768 1.33397 8.00016 1.33203ZM7.66683 3.9987C7.86461 3.9987 8.05795 4.05735 8.2224 4.16723C8.38685 4.27711 8.51502 4.43329 8.59071 4.61601C8.6664 4.79874 8.6862 4.99981 8.64762 5.19379C8.60903 5.38777 8.51379 5.56595 8.37394 5.7058C8.23409 5.84566 8.0559 5.9409 7.86192 5.97948C7.66794 6.01807 7.46687 5.99826 7.28415 5.92258C7.10142 5.84689 6.94524 5.71872 6.83536 5.55427C6.72548 5.38982 6.66683 5.19648 6.66683 4.9987C6.66683 4.73348 6.77219 4.47913 6.95972 4.29159C7.14726 4.10405 7.40162 3.9987 7.66683 3.9987ZM9.3335 11.332H6.66683C6.49002 11.332 6.32045 11.2618 6.19543 11.1368C6.0704 11.0117 6.00016 10.8422 6.00016 10.6654C6.00016 10.4886 6.0704 10.319 6.19543 10.194C6.32045 10.0689 6.49002 9.9987 6.66683 9.9987H7.3335V7.9987H6.66683C6.49002 7.9987 6.32045 7.92846 6.19543 7.80343C6.0704 7.67841 6.00016 7.50884 6.00016 7.33203C6.00016 7.15522 6.0704 6.98565 6.19543 6.86063C6.32045 6.7356 6.49002 6.66536 6.66683 6.66536H8.00016C8.17698 6.66536 8.34655 6.7356 8.47157 6.86063C8.59659 6.98565 8.66683 7.15522 8.66683 7.33203V9.9987H9.3335C9.51031 9.9987 9.67988 10.0689 9.8049 10.194C9.92993 10.319 10.0002 10.4886 10.0002 10.6654C10.0002 10.8422 9.92993 11.0117 9.8049 11.1368C9.67988 11.2618 9.51031 11.332 9.3335 11.332Z"}}]},Ke=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"info-icon",ref:t,icon:Rt}))});Ke.displayName="InfoIcon";const Lt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM11.7245 6.42417C11.9588 6.18985 11.9588 5.80995 11.7245 5.57564C11.4901 5.34132 11.1102 5.34132 10.8759 5.57564L7.3002 9.15137L5.72446 7.57564C5.49014 7.34132 5.11025 7.34132 4.87593 7.57564C4.64162 7.80995 4.64162 8.18985 4.87593 8.42417L6.87593 10.4242C7.11025 10.6585 7.49014 10.6585 7.72446 10.4242L11.7245 6.42417Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xe=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"success-icon",ref:t,icon:Lt}))});Xe.displayName="SuccessIcon";function $t(r){const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.cellFillColors$,[],!0),o=g.useObservable(e.cellTextColors$,[],!0),l=F.useCallback(s=>{e.onFilterCheckToggled(s)},[e]),i=F.useCallback(s=>{e.onFilterCheckToggled(s,!1)},[e]);return d.jsx("div",{"data-u-comp":"sheets-filter-panel-colors-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:d.jsxs("div",{"data-u-comp":"sheets-filter-panel",className:N.clsx("univer-mt-2 univer-box-border univer-flex univer-h-[300px] univer-flex-grow univer-flex-col univer-gap-4 univer-overflow-auto univer-rounded-md univer-px-2 univer-py-2.5",N.borderClassName),children:[n.length>1&&d.jsxs("div",{children:[d.jsx("div",{className:"univer-mb-2 univer-text-sm univer-text-gray-900 dark:!univer-text-white",children:t.t("sheets-filter.panel.filter-by-cell-fill-color")}),d.jsx("div",{className:"univer-grid univer-grid-cols-8 univer-items-center univer-justify-start univer-gap-2",children:n.map((s,a)=>d.jsxs("div",{className:"univer-relative univer-h-6 univer-w-6",onClick:()=>l(s),children:[s.color?d.jsx("button",{type:"button",className:N.clsx("univer-box-border univer-h-6 univer-w-6 univer-cursor-pointer univer-rounded-full univer-border univer-border-solid univer-border-transparent univer-bg-gray-300 univer-transition-shadow hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white"),style:{backgroundColor:s.color}}):d.jsx(qe,{className:"univer-h-6 univer-w-6 univer-cursor-pointer univer-rounded-full hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white"}),s.checked&&d.jsx(ze,{})]},`sheets-filter-cell-fill-color-${a}`))})]}),o.length>1&&d.jsxs("div",{children:[d.jsx("div",{className:"univer-mb-2 univer-text-sm univer-text-gray-900 dark:!univer-text-white",children:t.t("sheets-filter.panel.filter-by-cell-text-color")}),d.jsx("div",{className:"univer-grid univer-grid-cols-8 univer-items-center univer-justify-start univer-gap-2",children:o.map((s,a)=>d.jsxs("div",{className:"univer-relative univer-h-6 univer-w-6",onClick:()=>i(s),children:[d.jsx("div",{className:"univer-box-border univer-flex univer-h-full univer-w-full univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-border univer-border-solid univer-border-[rgba(13,13,13,0.06)] univer-p-0.5 hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white dark:!univer-border-[rgba(255,255,255,0.06)]",children:d.jsx(Ye,{style:{color:s.color}})}),s.checked&&d.jsx(ze,{})]},`sheets-filter-cell-text-color-${a}`))})]}),n.length<=1&&o.length<=1&&d.jsx("div",{className:"univer-flex univer-h-full univer-w-full univer-items-center univer-justify-center univer-text-sm univer-text-gray-900 dark:!univer-text-gray-200",children:t.t("sheets-filter.panel.filter-by-color-none")})]})})}function ze(){return d.jsx("div",{className:"univer-absolute -univer-bottom-0.5 -univer-right-0.5 univer-flex univer-h-3 univer-w-3 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-bg-white",children:d.jsx(Xe,{className:"univer-h-full univer-w-full univer-font-bold univer-text-[#418F1F]"})})}function Mt(r){var v,T;const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.conditionItem$,void 0),o=g.useObservable(e.filterConditionFormParams$,void 0),l=o!=null&&o.and?"AND":"OR",i=F.useCallback(I=>{e.onConditionFormChange({and:I==="AND"})},[e]),s=Ut(t),a=F.useCallback(I=>{e.onPrimaryConditionChange(I)},[e]),h=kt(t),m=F.useCallback(I=>{e.onConditionFormChange(I)},[e]),p=t.t("sheets-filter.panel.input-values-placeholder");function O(I,P,A){const M=f.getItemByOperator(I).numOfParameters===1;return d.jsxs(d.Fragment,{children:[A==="operator2"&&d.jsxs(N.RadioGroup,{value:l,onChange:i,children:[d.jsx(N.Radio,{value:"AND",children:t.t("sheets-filter.panel.and")}),d.jsx(N.Radio,{value:"OR",children:t.t("sheets-filter.panel.or")})]}),d.jsx(N.Select,{value:I,options:h,onChange:L=>m({[A]:L})}),M&&d.jsx("div",{children:d.jsx(N.Input,{className:"univer-mt-2",value:P,placeholder:p,onChange:L=>m({[A==="operator1"?"val1":"val2"]:L})})})]})}return d.jsx("div",{"data-u-comp":"sheets-filter-panel-conditions-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:n&&o&&d.jsxs(d.Fragment,{children:[d.jsx(N.Select,{value:n.operator,options:s,onChange:a}),f.getItemByOperator(n.operator).numOfParameters!==0?d.jsxs("div",{"data-u-comp":"sheets-filter-panel-conditions-container-inner",className:N.clsx("univer-mt-2 univer-flex-grow univer-overflow-hidden univer-rounded-md univer-p-2",N.borderClassName),children:[n.numOfParameters>=1&&O(o.operator1,(v=o.val1)!=null?v:"","operator1"),n.numOfParameters>=2&&O(o.operator2,(T=o.val2)!=null?T:"","operator2"),d.jsxs("div",{"data-u-comp":"sheets-filter-panel-conditions-desc",className:"univer-mt-2 univer-text-xs univer-text-gray-500",children:[t.t("sheets-filter.panel.?"),d.jsx("br",{}),t.t("sheets-filter.panel.*")]})]}):null]})})}function Ut(r){const e=r.getCurrentLocale();return F.useMemo(()=>[{options:[{label:r.t(f.NONE.label),value:f.NONE.operator}]},{options:[{label:r.t(f.EMPTY.label),value:f.EMPTY.operator},{label:r.t(f.NOT_EMPTY.label),value:f.NOT_EMPTY.operator}]},{options:[{label:r.t(f.TEXT_CONTAINS.label),value:f.TEXT_CONTAINS.operator},{label:r.t(f.DOES_NOT_CONTAIN.label),value:f.DOES_NOT_CONTAIN.operator},{label:r.t(f.STARTS_WITH.label),value:f.STARTS_WITH.operator},{label:r.t(f.ENDS_WITH.label),value:f.ENDS_WITH.operator},{label:r.t(f.EQUALS.label),value:f.EQUALS.operator}]},{options:[{label:r.t(f.GREATER_THAN.label),value:f.GREATER_THAN.operator},{label:r.t(f.GREATER_THAN_OR_EQUAL.label),value:f.GREATER_THAN_OR_EQUAL.operator},{label:r.t(f.LESS_THAN.label),value:f.LESS_THAN.operator},{label:r.t(f.LESS_THAN_OR_EQUAL.label),value:f.LESS_THAN_OR_EQUAL.operator},{label:r.t(f.EQUAL.label),value:f.EQUAL.operator},{label:r.t(f.NOT_EQUAL.label),value:f.NOT_EQUAL.operator},{label:r.t(f.BETWEEN.label),value:f.BETWEEN.operator},{label:r.t(f.NOT_BETWEEN.label),value:f.NOT_BETWEEN.operator}]},{options:[{label:r.t(f.CUSTOM.label),value:f.CUSTOM.operator}]}],[e,r])}function kt(r){const e=r.getCurrentLocale();return F.useMemo(()=>f.ALL_CONDITIONS.filter(t=>t.numOfParameters!==2).map(t=>({label:r.t(t.label),value:t.operator})),[e,r])}function Bt(r){const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.searchString$,"",!0),o=g.useObservable(e.filterItems$,void 0,!0),l=t.t("sheets-filter.panel.filter-only"),i=Ie(o),s=i.checked>0&&i.unchecked===0,a=i.checked>0&&i.unchecked>0,h=e.treeMapCache,m=F.useCallback(()=>{e.onCheckAllToggled(!s)},[e,s]),p=F.useCallback(v=>{e.setSearchString(v)},[e]);function O(v){let T=[];return v.forEach(I=>{I.checked&&T.push(I.key),I.children&&(T=T.concat(O(I.children)))}),T}return d.jsxs("div",{"data-u-comp":"sheets-filter-panel-values-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:[d.jsx(N.Input,{autoFocus:!0,value:n,placeholder:t.t("sheets-filter.panel.search-placeholder"),onChange:p}),d.jsxs("div",{"data-u-comp":"sheets-filter-panel",className:N.clsx("univer-mt-2 univer-box-border univer-flex univer-flex-grow univer-flex-col univer-overflow-hidden univer-rounded-md univer-px-2 univer-py-2.5",N.borderClassName),children:[d.jsx("div",{"data-u-comp":"sheets-filter-panel-values-item",className:"univer-box-border univer-h-8 univer-w-full univer-py-0.5",children:d.jsxs("div",{"data-u-comp":"sheets-filter-panel-values-item-inner",className:"univer-box-border univer-flex univer-h-7 univer-items-center univer-rounded-md univer-pb-0 univer-pl-5 univer-pr-0.5 univer-pt-0 univer-text-sm",children:[d.jsx(N.Checkbox,{indeterminate:a,disabled:o.length===0,checked:s,onChange:m}),d.jsx("span",{"data-u-comp":"sheets-filter-panel-values-item-text",className:"univer-mx-1 univer-inline-block univer-flex-shrink univer-truncate univer-text-gray-900 dark:!univer-text-white",children:`${t.t("sheets-filter.panel.select-all")}`}),d.jsx("span",{"data-u-comp":"sheets-filter-panel-values-item-count",className:"univer-text-gray-400 dark:!univer-text-gray-500",children:`(${i.checked}/${i.checked+i.unchecked})`})]})}),d.jsx("div",{"data-u-comp":"sheets-filter-panel-values-virtual",className:"univer-flex-grow",children:d.jsx(N.Tree,{data:o,defaultExpandAll:!1,valueGroup:O(o),onChange:v=>{e.onFilterCheckToggled(v)},defaultCache:h,itemHeight:28,treeNodeClassName:`
10
+ (function(C,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/sheets-filter"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("@univerjs/engine-render"),require("@univerjs/sheets"),require("rxjs"),require("@univerjs/rpc"),require("@univerjs/design"),require("react"),require("react/jsx-runtime")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets-filter","@univerjs/sheets-ui","@univerjs/ui","@univerjs/engine-render","@univerjs/sheets","rxjs","@univerjs/rpc","@univerjs/design","react","react/jsx-runtime"],c):(C=typeof globalThis<"u"?globalThis:C||self,c(C.UniverSheetsFilterUi={},C.UniverCore,C.UniverSheetsFilter,C.UniverSheetsUi,C.UniverUi,C.UniverEngineRender,C.UniverSheets,C.rxjs,C.UniverRpc,C.UniverDesign,C.React,C.React))})(this,(function(C,c,u,$,g,K,y,S,me,N,F,d){"use strict";var ir=Object.defineProperty;var nr=(C,c,u)=>c in C?ir(C,c,{enumerable:!0,configurable:!0,writable:!0,value:u}):C[c]=u;var _=(C,c,u)=>nr(C,typeof c!="symbol"?c+"":c,u);var Te;var R=(r=>(r[r.FIRST=0]="FIRST",r[r.SECOND=1]="SECOND",r))(R||{}),E=(r=>(r.NONE="none",r.STARTS_WITH="startsWith",r.DOES_NOT_START_WITH="doesNotStartWith",r.ENDS_WITH="endsWith",r.DOES_NOT_END_WITH="doesNotEndWith",r.CONTAINS="contains",r.DOES_NOT_CONTAIN="doesNotContain",r.EQUALS="equals",r.NOT_EQUALS="notEquals",r.EMPTY="empty",r.NOT_EMPTY="notEmpty",r.BETWEEN="between",r.NOT_BETWEEN="notBetween",r.CUSTOM="custom",r))(E||{}),f;(r=>{r.NONE={label:"sheets-filter.conditions.none",operator:E.NONE,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NONE]: should not have initial form params!")},testMappingParams:i=>i.operator1===E.NONE,mapToFilterColumn:()=>null,testMappingFilterColumn:i=>!i.customFilters&&!i.filters?{}:!1},r.EMPTY={label:"sheets-filter.conditions.empty",operator:E.EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.EMPTY]: should not have initial form params!")},testMappingParams:({operator1:i})=>i===E.EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:""}]}}),testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.val===""&&s.operator===void 0?{operator1:E.EMPTY}:!1}},r.NOT_EMPTY={label:"sheets-filter.conditions.not-empty",operator:E.NOT_EMPTY,order:R.SECOND,numOfParameters:0,getDefaultFormParams:()=>{throw new Error("[FilterConditionItems.NOT_EMPTY]: should not have initial form params!")},testMappingParams:({operator1:i})=>i===E.NOT_EMPTY,mapToFilterColumn:()=>({customFilters:{customFilters:[{val:"",operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.val===" "&&s.operator===u.CustomFilterOperator.NOT_EQUALS?{operator1:E.NOT_EMPTY}:!1}},r.TEXT_CONTAINS={label:"sheets-filter.conditions.text-contains",operator:E.CONTAINS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.CONTAINS,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===E.CONTAINS},mapToFilterColumn:i=>{const{val1:s}=i;return s===""?null:{customFilters:{customFilters:[{val:`*${s}*`}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.startsWith("*")&&a.endsWith("*")?{operator1:E.CONTAINS,val1:a.slice(1,-1)}:!1}},r.DOES_NOT_CONTAIN={label:"sheets-filter.conditions.does-not-contain",operator:E.DOES_NOT_CONTAIN,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.DOES_NOT_CONTAIN,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`*${i.val1}*`,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.DOES_NOT_CONTAIN},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return s.operator===u.CustomFilterOperator.NOT_EQUALS&&a.startsWith("*")&&a.endsWith("*")?{operator1:E.DOES_NOT_CONTAIN,val1:a.slice(1,-1)}:!1}},r.STARTS_WITH={label:"sheets-filter.conditions.starts-with",operator:E.STARTS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.STARTS_WITH,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`${i.val1}*`}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.STARTS_WITH},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.endsWith("*")&&!a.startsWith("*")?{operator1:E.STARTS_WITH,val1:a.slice(0,-1)}:!1}},r.ENDS_WITH={label:"sheets-filter.conditions.ends-with",operator:E.ENDS_WITH,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.ENDS_WITH,val1:""}),mapToFilterColumn:i=>({customFilters:{customFilters:[{val:`*${i.val1}`}]}}),testMappingParams:i=>{const[s]=D(i);return s===E.ENDS_WITH},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0],a=s.val.toString();return!s.operator&&a.startsWith("*")&&!a.endsWith("*")?{operator1:E.ENDS_WITH,val1:a.slice(1)}:!1}},r.EQUALS={label:"sheets-filter.conditions.equals",operator:E.EQUALS,order:R.FIRST,numOfParameters:1,getDefaultFormParams:()=>({operator1:E.EQUALS,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===E.EQUALS},mapToFilterColumn:i=>{const{val1:s}=i;return s===""?null:{customFilters:{customFilters:[{val:s}]}}},testMappingFilterColumn:i=>{var s,a,h;return((a=(s=i.filters)==null?void 0:s.filters)==null?void 0:a.length)===1?{operator1:E.EQUALS,val1:""}:((h=i.customFilters)==null?void 0:h.customFilters.length)===1&&!i.customFilters.customFilters[0].operator?{operator1:E.EQUALS,val1:i.customFilters.customFilters[0].val.toString()}:!1}},r.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:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.GREATER_THAN}]}}),testMappingParams:i=>{const[s]=D(i);return s===u.CustomFilterOperator.GREATER_THAN},testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.GREATER_THAN?!1:{operator1:u.CustomFilterOperator.GREATER_THAN,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.GREATER_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.LESS_THAN},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.LESS_THAN}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.LESS_THAN?!1:{operator1:u.CustomFilterOperator.LESS_THAN,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.LESS_THAN_OR_EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.LESS_THAN_OR_EQUAL?!1:{operator1:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val1:s.val.toString()}}},r.EQUAL={label:"sheets-filter.conditions.equal",operator:u.CustomFilterOperator.EQUAL,numOfParameters:1,order:R.FIRST,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.EQUAL,val1:""}),testMappingParams:i=>{const[s]=D(i);return s===u.CustomFilterOperator.EQUAL},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.EQUAL}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.EQUAL?!1:{operator1:u.CustomFilterOperator.EQUAL,val1:s.val.toString()}}},r.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:i=>{const[s]=D(i);return s===u.CustomFilterOperator.NOT_EQUALS},mapToFilterColumn:i=>({customFilters:{customFilters:[{val:i.val1,operator:u.CustomFilterOperator.NOT_EQUALS}]}}),testMappingFilterColumn:i=>{var a;if(((a=i.customFilters)==null?void 0:a.customFilters.length)!==1)return!1;const s=i.customFilters.customFilters[0];return s.operator!==u.CustomFilterOperator.NOT_EQUALS?!1:{operator1:u.CustomFilterOperator.NOT_EQUALS,val1:s.val.toString()}}},r.BETWEEN={label:"sheets-filter.conditions.between",operator:E.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:i=>{const{and:s,operator1:a,operator2:h}=i;if(!s)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN_OR_EQUAL)&&m.includes(u.CustomFilterOperator.LESS_THAN_OR_EQUAL)},mapToFilterColumn:i=>{const{val1:s,val2:a,operator1:h}=i,m=h===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL;return{customFilters:{and:c.BooleanNumber.TRUE,customFilters:[{val:m?s:a,operator:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL},{val:m?a:s,operator:u.CustomFilterOperator.LESS_THAN_OR_EQUAL}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[s,a]=i.customFilters.customFilters;return s.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&a.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&i.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:s.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.GREATER_THAN_OR_EQUAL&&s.operator===u.CustomFilterOperator.LESS_THAN_OR_EQUAL&&i.customFilters.and?{and:!0,operator1:u.CustomFilterOperator.GREATER_THAN_OR_EQUAL,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN_OR_EQUAL,val2:s.val.toLocaleString()}:!1}},r.NOT_BETWEEN={label:"sheets-filter.conditions.not-between",operator:E.NOT_BETWEEN,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:u.CustomFilterOperator.LESS_THAN,val1:"",operator2:u.CustomFilterOperator.GREATER_THAN,val2:""}),testMappingParams:i=>{const{and:s,operator1:a,operator2:h}=i;if(s)return!1;const m=[a,h];return m.includes(u.CustomFilterOperator.GREATER_THAN)&&m.includes(u.CustomFilterOperator.LESS_THAN)},mapToFilterColumn:i=>{const{val1:s,val2:a,operator1:h}=i,m=h===u.CustomFilterOperator.GREATER_THAN;return{customFilters:{customFilters:[{val:m?s:a,operator:u.CustomFilterOperator.GREATER_THAN},{val:m?a:s,operator:u.CustomFilterOperator.LESS_THAN}]}}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const[s,a]=i.customFilters.customFilters;return s.operator===u.CustomFilterOperator.LESS_THAN&&a.operator===u.CustomFilterOperator.GREATER_THAN&&!i.customFilters.and?{operator1:u.CustomFilterOperator.LESS_THAN,val1:s.val.toString(),operator2:u.CustomFilterOperator.GREATER_THAN,val2:a.val.toString()}:a.operator===u.CustomFilterOperator.LESS_THAN&&s.operator===u.CustomFilterOperator.GREATER_THAN&&!i.customFilters.and?{operator1:u.CustomFilterOperator.GREATER_THAN,val1:a.val.toString(),operator2:u.CustomFilterOperator.LESS_THAN,val2:s.val.toLocaleString()}:!1}},r.CUSTOM={label:"sheets-filter.conditions.custom",operator:E.CUSTOM,order:R.SECOND,numOfParameters:2,getDefaultFormParams:()=>({operator1:E.NONE,val1:"",operator2:E.NONE,val2:""}),testMappingParams:()=>!0,mapToFilterColumn:i=>{const{and:s,val1:a,val2:h,operator1:m,operator2:p}=i;function O(M,L){for(const U of r.ALL_CONDITIONS)if(U.operator===M)return U.mapToFilterColumn({val1:L,operator1:M})}const v=!m||m===r.NONE.operator,T=!p||p===r.NONE.operator;if(v&&T)return r.NONE.mapToFilterColumn({});if(v)return O(p,h);if(T)return O(m,a);const I=O(m,a),P=O(p,h),A={customFilters:[I.customFilters.customFilters[0],P.customFilters.customFilters[0]]};return s&&(A.and=c.BooleanNumber.TRUE),{customFilters:A}},testMappingFilterColumn:i=>{var h;if(((h=i.customFilters)==null?void 0:h.customFilters.length)!==2)return!1;const s=i.customFilters.customFilters.map(m=>l({customFilters:{customFilters:[m]}})),a={operator1:s[0][0].operator,val1:s[0][1].val1,operator2:s[1][0].operator,val2:s[1][1].val1};return i.customFilters.and&&(a.and=!0),a}},r.ALL_CONDITIONS=[r.NONE,r.EMPTY,r.NOT_EMPTY,r.TEXT_CONTAINS,r.DOES_NOT_CONTAIN,r.STARTS_WITH,r.ENDS_WITH,r.EQUALS,r.GREATER_THAN,r.GREATER_THAN_OR_EQUAL,r.LESS_THAN,r.LESS_THAN_OR_EQUAL,r.EQUAL,r.NOT_EQUAL,r.BETWEEN,r.NOT_BETWEEN,r.CUSTOM];function e(i){const s=r.ALL_CONDITIONS.find(a=>a.operator===i);if(!s)throw new Error(`[SheetsFilter]: no condition item found for operator: ${i}`);return s}r.getItemByOperator=e;function t(i,s){for(const a of r.ALL_CONDITIONS.filter(h=>h.numOfParameters===s))if(a.numOfParameters!==0&&a.testMappingParams(i))return a;for(const a of r.ALL_CONDITIONS)if(a.testMappingParams(i))return a;throw new Error("[SheetsFilter]: no condition item can be mapped from the filter map params!")}r.testMappingParams=t;function n(i){const s=r.ALL_CONDITIONS.find(a=>a.operator===i);return(s==null?void 0:s.numOfParameters)===0?{operator1:s.operator}:s.getDefaultFormParams()}r.getInitialFormParams=n;function o(i,s){return i.mapToFilterColumn(s)}r.mapToFilterColumn=o;function l(i){if(!i)return[r.NONE,{}];for(const s of r.ALL_CONDITIONS){const a=s.testMappingFilterColumn(i);if(a)return[s,a]}return[r.NONE,{}]}r.testMappingFilterColumn=l})(f||(f={}));function D(r){const{operator1:e,operator2:t,val1:n,val2:o}=r;if(e&&t)throw new Error("Both operator1 and operator2 are set!");if(!e&&!t)throw new Error("Neither operator1 and operator2 and both not set!");return e?[e,n]:[t,o]}function Ie(r){const e=[],t=[];let n=0,o=0;function l(i){i.leaf&&(i.checked?(e.push(i),n+=i.count):(t.push(i),o+=i.count)),i.children&&i.children.forEach(l)}return r.forEach(l),{checkedItems:e,uncheckedItems:t,checked:n,unchecked:o}}var nt=Object.getOwnPropertyDescriptor,ot=(r,e,t,n)=>{for(var o=n>1?void 0:n?nt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Fe=(r,e)=>(t,n)=>e(t,n,r);const Ne="sheets-filter.generate-filter-values.service",pe=c.createIdentifier(Ne);let be=class extends c.Disposable{constructor(r,e,t){super(),this._localeService=r,this._univerInstanceService=e,this._logService=t}async getFilterValues(r){var p;const{unitId:e,subUnitId:t,filteredOutRowsByOtherColumns:n,filterColumn:o,filters:l,blankChecked:i,iterateRange:s,alreadyChecked:a}=r,h=this._univerInstanceService.getUnit(e),m=(p=this._univerInstanceService.getUnit(e))==null?void 0:p.getSheetBySheetId(t);return!h||!m?[]:(this._logService.debug("[SheetsGenerateFilterValuesService]","getFilterValues for",{unitId:e,subUnitId:t}),ke(l,this._localeService,s,m,new Set(n),o,new Set(a.map(String)),i,h.getStyles()))}};be=ot([Fe(0,c.Inject(c.LocaleService)),Fe(1,c.IUniverInstanceService),Fe(2,c.ILogService)],be);function ke(r,e,t,n,o,l,i,s,a){var P,A,M,L,U,B,Y,q,oe,H;const h=new Map,m=new Map,p="yyyy-mm-dd",O="empty",v=!r&&((l==null?void 0:l.filterBy)===u.FilterBy.COLORS||(l==null?void 0:l.filterBy)===u.FilterBy.CONDITIONS)&&((P=l.filteredOutRows)==null?void 0:P.size);let T=0;for(const b of n.iterateByColumn(t,!1,!1)){const{row:$e,rowSpan:Ee=1}=b;let se=0;for(;se<Ee;){const rr=$e+se;if(o.has(rr)){se++;continue}const z=b!=null&&b.value?c.extractPureTextFromCell(b.value):"";if(!z){T+=1,se+=Ee;continue}const Oe=(A=b.value)!=null&&A.v&&!b.value.p?(U=(L=a.get((M=b.value)==null?void 0:M.s))==null?void 0:L.n)==null?void 0:U.pattern:"",rt=Oe&&c.numfmt.getFormatInfo(Oe).isDate;let it=!1;if(rt){const{year:W,month:Z,day:w}=c.numfmt.getFormatDateInfo(Oe);it=W||Z||w}if(Oe&&rt&&it){const W=(B=n.getCellRaw(b.row,b.col))==null?void 0:B.v;if(!W){se++;continue}const Z=c.numfmt.format(p,Number(W)),[w,V,de]=Z.split("-").map(Number);let J=h.get(`${w}`);J||(J={title:`${w}`,key:`${w}`,children:[],count:0,leaf:!1,checked:!1},h.set(`${w}`,J),m.set(`${w}`,[`${w}`]));let j=(Y=J.children)==null?void 0:Y.find(Ue=>Ue.key===`${w}-${V}`);j||(j={title:e.t(`sheets-filter.date.${V}`),key:`${w}-${V}`,children:[],count:0,leaf:!1,checked:!1},(q=J.children)==null||q.push(j),m.set(`${w}-${V}`,[`${w}`,`${w}-${V}`]));const Me=(oe=j==null?void 0:j.children)==null?void 0:oe.find(Ue=>Ue.key===`${w}-${V}-${de}`);Me?(Me.originValues.add(z),Me.count++,j.count++,J.count++):((H=j.children)==null||H.push({title:`${de}`,key:`${w}-${V}-${de}`,count:1,originValues:new Set([z]),leaf:!0,checked:v?!1:i.size?i.has(z):!s}),j.count++,J.count++,m.set(`${w}-${V}-${de}`,[`${w}`,`${w}-${V}`,`${w}-${V}-${de}`]))}else{const W=z;let Z=h.get(W);Z?Z.count++:(Z={title:z,leaf:!0,checked:v?!1:i.size?i.has(z):!s,key:W,count:1},h.set(W,Z),m.set(W,[W]))}se++}}const I=v?!1:r?s:!0;if(T>0){const b={title:e.t("sheets-filter.panel.empty"),count:T,leaf:!0,checked:I,key:O};h.set("empty",b),m.set("empty",[O])}return{filterTreeItems:st(Array.from(h.values())),filterTreeMapCache:m}}function st(r){return Array.from(r).sort((e,t)=>e.children&&!t.children?-1:!e.children&&t.children?1:at(e.title,t.title)).map(e=>(e.children&&e.children.sort((t,n)=>{const o=Number.parseInt(t.key.split("-")[1],10),l=Number.parseInt(n.key.split("-")[1],10);return o-l}).forEach(t=>{t.children&&t.children.sort((n,o)=>{const l=Number.parseInt(n.key.split("-")[2],10),i=Number.parseInt(o.key.split("-")[2],10);return l-i})}),e))}const Be=r=>!Number.isNaN(Number(r))&&!Number.isNaN(Number.parseFloat(r));function at(r,e){const t=Be(r),n=Be(e);return t&&n?Number.parseFloat(r)-Number.parseFloat(e):t&&!n?-1:!t&&n?1:r.localeCompare(e)}function ye(r,e){for(const t of r){if(t.key===e)return t;if(t.children){const n=ye(t.children,e);if(n)return n}}return null}function De(r){return r.leaf?r.checked:r.children?r.children.every(e=>De(e)):!0}function ae(r,e){r.leaf&&(e!==void 0?r.checked=e:r.checked=!r.checked),r.children&&r.children.forEach(t=>ae(t,e))}function He(r,e){const t=[];return r.forEach(n=>{const o=n.originValues?e.some(s=>Array.from(n.originValues).some(a=>a.toLowerCase().includes(s.toLowerCase()))):!1,l=!o&&e.some(s=>n.title.toLowerCase().includes(s.toLowerCase()));if(o||l)t.push({...n});else if(n.children){const s=He(n.children,e);if(s.length>0){const a=s.reduce((h,m)=>h+m.count,0);t.push({...n,count:a,children:s})}}}),t}var lt=Object.getOwnPropertyDescriptor,fe=(r,e,t,n)=>{for(var o=n>1?void 0:n?lt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},le=(r,e)=>(t,n)=>e(t,n,r);c.createIdentifier("sheets-filter-ui.sheets-filter-panel.service");let Q=class extends c.Disposable{constructor(e,t){super();_(this,"_filterBy$",new S.BehaviorSubject(u.FilterBy.VALUES));_(this,"filterBy$",this._filterBy$.asObservable());_(this,"_filterByModel$",new S.ReplaySubject(1));_(this,"filterByModel$",this._filterByModel$.asObservable());_(this,"_filterByModel",null);_(this,"_hasCriteria$",new S.BehaviorSubject(!1));_(this,"hasCriteria$",this._hasCriteria$.asObservable());_(this,"_filterModel",null);_(this,"_col$",new S.BehaviorSubject(-1));_(this,"col$",this._col$.asObservable());_(this,"_filterHeaderListener",null);this._injector=e,this._refRangeService=t}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,t){this.terminate(),this._filterModel=e,this._col$.next(t);const n=e.getFilterColumn(t);if(n){const o=n.getColumnData();if(o.customFilters){this._hasCriteria$.next(!0),this._setupByConditions(e,t);return}if(o.colorFilters){this._hasCriteria$.next(!0),this._setupByColors(e,t);return}if(o.filters){this._hasCriteria$.next(!0),this._setupByValues(e,t);return}this._hasCriteria$.next(!1),this._setupByValues(e,t);return}this._hasCriteria$.next(!1),this._setupByValues(e,t)}changeFilterBy(e){if(!this._filterModel||this.col===-1)return!1;switch(e){case u.FilterBy.VALUES:this._setupByValues(this._filterModel,this.col);break;case u.FilterBy.COLORS:this._setupByColors(this._filterModel,this.col);break;case u.FilterBy.CONDITIONS:this._setupByConditions(this._filterModel,this.col);break}return!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,t){this._disposeFilterHeaderChangeListener();const n=e.unitId,o=e.subUnitId,l=e.getRange(),i={startColumn:t,startRow:l.startRow,endRow:l.startRow,endColumn:t};this._filterHeaderListener=this._refRangeService.watchRange(n,o,i,(s,a)=>{if(!a)this.terminate();else{const h=a.startColumn-s.startColumn;h!==0&&this._filterByModel.deltaCol(h)}})}async _setupByValues(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=await _e.fromFilterColumn(this._injector,e,t);return this.filterByModel=o,this._filterBy$.next(u.FilterBy.VALUES),this._listenToFilterHeaderChange(e,t),!0}async _setupByColors(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=await ge.fromFilterColumn(this._injector,e,t);return this.filterByModel=o,this._filterBy$.next(u.FilterBy.COLORS),this._listenToFilterHeaderChange(e,t),!0}_setupByConditions(e,t){this._disposePreviousModel();const n=e.getRange();if(n.startRow===n.endRow)return!1;const o=ve.fromFilterColumn(this._injector,e,t,e.getFilterColumn(t));return this.filterByModel=o,this._filterBy$.next(u.FilterBy.CONDITIONS),this._listenToFilterHeaderChange(e,t),!0}_disposePreviousModel(){var e;(e=this._filterByModel)==null||e.dispose(),this.filterByModel=null}};Q=fe([le(0,c.Inject(c.Injector)),le(1,c.Inject(y.RefRangeService))],Q);let ve=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"canApply$",S.of(!0));_(this,"_conditionItem$");_(this,"conditionItem$");_(this,"_filterConditionFormParams$");_(this,"filterConditionFormParams$");this._filterModel=e,this.col=t,this._commandService=l,this._conditionItem$=new S.BehaviorSubject(n),this.conditionItem$=this._conditionItem$.asObservable(),this._filterConditionFormParams$=new S.BehaviorSubject(o),this.filterConditionFormParams$=this._filterConditionFormParams$.asObservable()}static fromFilterColumn(e,t,n,o){const[l,i]=f.testMappingFilterColumn(o==null?void 0:o.getColumnData());return e.createInstance(ve,t,n,l,i)}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=f.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 t=f.ALL_CONDITIONS.find(n=>n.operator===e);if(!t)throw new Error(`[ByConditionsModel]: condition item not found for operator: ${e}!`);this._conditionItem$.next(t),this._filterConditionFormParams$.next(f.getInitialFormParams(e))}onConditionFormChange(e){const t={...this.filterConditionFormParams,...e};if(t.and!==!0&&delete t.and,typeof e.and<"u"||typeof e.operator1<"u"||typeof e.operator2<"u"){const n=f.testMappingParams(t,this.conditionItem.numOfParameters);this._conditionItem$.next(n)}this._filterConditionFormParams$.next(t)}};ve=fe([le(4,c.ICommandService)],ve);let _e=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"_rawFilterItems$");_(this,"rawFilterItems$");_(this,"filterItems$");_(this,"_filterItems",[]);_(this,"_treeMapCache");_(this,"canApply$");_(this,"_manuallyUpdateFilterItems$");_(this,"_searchString$");_(this,"searchString$");this._filterModel=e,this.col=t,this._commandService=l,this._treeMapCache=o,this._searchString$=new S.BehaviorSubject(""),this.searchString$=this._searchString$.asObservable(),this._rawFilterItems$=new S.BehaviorSubject(n),this.rawFilterItems$=this._rawFilterItems$.asObservable(),this._manuallyUpdateFilterItems$=new S.Subject,this.filterItems$=S.merge(S.combineLatest([this._searchString$.pipe(S.throttleTime(500,void 0,{leading:!0,trailing:!0}),S.startWith(void 0)),this._rawFilterItems$]).pipe(S.map(([i,s])=>{if(!i)return s;const h=i.toLowerCase().split(/\s+/).filter(m=>!!m);return He(s,h)})),this._manuallyUpdateFilterItems$).pipe(S.shareReplay(1)),this.canApply$=this.filterItems$.pipe(S.map(i=>Ie(i).checked>0)),this.disposeWithMe(this.filterItems$.subscribe(i=>this._filterItems=i))}static async fromFilterColumn(e,t,n){const o=e.get(c.IUniverInstanceService),l=e.get(c.LocaleService),i=e.get(pe,c.Quantity.OPTIONAL),{unitId:s,subUnitId:a}=t,h=o.getUniverSheetInstance(s);if(!h)throw new Error(`[ByValuesModel]: Workbook not found for filter model with unitId: ${s}!`);const m=h==null?void 0:h.getSheetBySheetId(a);if(!m)throw new Error(`[ByValuesModel]: Worksheet not found for filter model with unitId: ${s} and subUnitId: ${a}!`);const p=t.getRange(),O=n,v=t.getFilterColumn(n),T=v==null?void 0:v.getColumnData().filters,I=new Set(T==null?void 0:T.filters),P=!!(T&&T.blank),A=t.getFilteredOutRowsExceptCol(n),M={...p,startRow:p.startRow+1,startColumn:O,endColumn:O};let L,U;if(i){const B=await i.getFilterValues({unitId:s,subUnitId:a,filteredOutRowsByOtherColumns:Array.from(A),filterColumn:v,filters:!!T,blankChecked:P,iterateRange:M,alreadyChecked:Array.from(I)});L=B.filterTreeItems,U=B.filterTreeMapCache}else{const B=ke(!!T,l,M,m,A,v,I,P,h.getStyles());L=B.filterTreeItems,U=B.filterTreeMapCache}return e.createInstance(_e,t,n,L,U)}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 t=c.Tools.deepClone(this._filterItems);t.forEach(n=>ae(n,e)),this._manuallyUpdateFilterItems(t)}onFilterCheckToggled(e){const t=c.Tools.deepClone(this._filterItems),n=ye(t,e.key);if(!n)return;const o=De(n);ae(n,!o),this._manuallyUpdateFilterItems(t)}onFilterOnly(e){const t=c.Tools.deepClone(this._filterItems);t.forEach(n=>ae(n,!1)),e.forEach(n=>{const o=ye(t,n);o&&ae(o,!0)}),this._manuallyUpdateFilterItems(t)}_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=Ie(this._filterItems),{checked:t,checkedItems:n}=e,o=this.rawFilterItems;let l=0;for(const h of o)l+=h.count;const i=t===0,s=e.checked===l,a={colId:this.col};if(i)throw new Error("[ByValuesModel]: no checked items!");if(s)return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});{a.filters={};const h=n.filter(p=>p.key!=="empty");h.length>0&&(a.filters={filters:h.flatMap(p=>p.originValues?Array.from(p.originValues):[p.title])}),h.length!==n.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})}};_e=fe([le(4,c.ICommandService)],_e);let ge=class extends c.Disposable{constructor(e,t,n,o,l){super();_(this,"canApply$",S.of(!0));_(this,"_cellFillColors$");_(this,"cellFillColors$");_(this,"_cellTextColors$");_(this,"cellTextColors$");this._filterModel=e,this.col=t,this._commandService=l,this._cellFillColors$=new S.BehaviorSubject(Array.from(n.values())),this.cellFillColors$=this._cellFillColors$.asObservable(),this._cellTextColors$=new S.BehaviorSubject(Array.from(o.values())),this.cellTextColors$=this._cellTextColors$.asObservable()}static async fromFilterColumn(e,t,n){var M,L,U;const o=e.get(c.IUniverInstanceService),{unitId:l,subUnitId:i}=t,s=o.getUniverSheetInstance(l);if(!s)throw new Error(`[ByColorsModel]: Workbook not found for filter model with unitId: ${l}!`);const a=s==null?void 0:s.getSheetBySheetId(i);if(!a)throw new Error(`[ByColorsModel]: Worksheet not found for filter model with unitId: ${l} and subUnitId: ${i}!`);const h=t.getRange(),m=n,p=(M=t.getFilterColumn(n))==null?void 0:M.getColumnData().colorFilters,O=t.getFilteredOutRowsExceptCol(n),v={...h,startRow:h.startRow+1,startColumn:m,endColumn:m},T=new Map,I=new Set((L=p==null?void 0:p.cellFillColors)!=null?L:[]),P=new Map,A=new Set((U=p==null?void 0:p.cellTextColors)!=null?U:[]);for(const B of a.iterateByColumn(v,!1,!0)){const{row:Y,col:q,value:oe}=B;if(O.has(Y))continue;const H=a.getComposedCellStyleByCellData(Y,q,oe);if(H.bg&&H.bg.rgb){const b=new c.ColorKit(H.bg.rgb).toRgbString();T.has(b)||T.set(b,{color:b,checked:I.has(b)})}else T.set("default-fill-color",{color:null,checked:I.has(null)});if(H.cl&&H.cl.rgb){const b=new c.ColorKit(H.cl.rgb).toRgbString();P.has(b)||P.set(b,{color:b,checked:A.has(b)})}else P.set("default-font-color",{color:K.COLOR_BLACK_RGB,checked:A.has(K.COLOR_BLACK_RGB)})}return e.createInstance(ge,t,n,T,P)}get cellFillColors(){return this._cellFillColors$.getValue()}get cellTextColors(){return this._cellTextColors$.getValue()}dispose(){super.dispose(),this._cellFillColors$.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})}onFilterCheckToggled(e,t=!0){const n=t?this.cellFillColors:this.cellTextColors,o=[];let l=!1;for(let i=0;i<n.length;i++){const s=n[i];if(s.color===e.color){l=!0,o.push({color:s.color,checked:!s.checked});continue}o.push({color:s.color,checked:s.checked})}l&&(this._resetColorsCheckedStatus(!t),t?this._cellFillColors$.next([...o]):this._cellTextColors$.next([...o]))}_resetColorsCheckedStatus(e=!0){const t=e?this.cellFillColors:this.cellTextColors,n=[];for(let o=0;o<t.length;o++)n.push({color:t[o].color,checked:!1});e?this._cellFillColors$.next([...n]):this._cellTextColors$.next([...n])}async apply(){if(this._disposed)return!1;const e=this.cellFillColors.filter(o=>o.checked).map(o=>o.color),t=this.cellTextColors.filter(o=>o.checked).map(o=>o.color);if(e.length===0&&t.length===0)return this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:null});const n={colId:this.col};return e.length>0?n.colorFilters={cellFillColors:e}:t.length>0&&(n.colorFilters={cellTextColors:t}),this._commandService.executeCommand(u.SetSheetsFilterCriteriaCommand.id,{unitId:this._filterModel.unitId,subUnitId:this._filterModel.subUnitId,col:this.col,criteria:n})}};ge=fe([le(4,c.ICommandService)],ge);const ee="FILTER_PANEL_OPENED",ce={id:"sheet.operation.open-filter-panel",type:c.CommandType.OPERATION,handler:(r,e)=>{const t=r.get(c.IContextService),n=r.get(u.SheetsFilterService),o=r.get(Q),l=r.get(c.ICommandService),i=r.has($.IEditorBridgeService)?r.get($.IEditorBridgeService):null;i!=null&&i.isVisible().visible&&l.syncExecuteCommand($.SetCellEditVisibleOperation.id,{visible:!1});const{unitId:s,subUnitId:a,col:h}=e,m=n.getFilterModel(s,a);return m?(o.setupCol(m,h),t.getContextValue(ee)||t.setContextValue(ee,!0),!0):!1}},te={id:"sheet.operation.close-filter-panel",type:c.CommandType.OPERATION,handler:r=>{const e=r.get(c.IContextService),t=r.get(Q),n=r.get(g.ILayoutService,c.Quantity.OPTIONAL);return e.getContextValue(ee)?(e.setContextValue(ee,!1),n==null||n.focus(),t.terminate()):!1}},Pe={id:"sheet.operation.apply-filter",type:c.CommandType.OPERATION,handler:(r,e)=>{const{filterBy:t}=e;return r.get(Q).changeFilterBy(t)}},xe="sheets-filter-ui.config",Ce={};var ct=Object.getOwnPropertyDescriptor,ut=(r,e,t,n)=>{for(var o=n>1?void 0:n?ct(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},re=(r,e)=>(t,n)=>e(t,n,r);let ie=class extends c.Disposable{constructor(r,e,t,n,o,l){super(),this._sheetsFilterService=r,this._localeService=e,this._commandService=t,this._sheetPermissionCheckPermission=n,this._injector=o,this._sheetsSelectionService=l,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(r=>{var e,t,n;if(r.id===u.SmartToggleSheetsFilterCommand.id){const o=this._injector.get(c.IUniverInstanceService),l=y.getSheetCommandTarget(o);if(!l)return;const{unitId:i,subUnitId:s,worksheet:a}=l,h=(e=this._sheetsFilterService.getFilterModel(i,s))==null?void 0:e.getRange();let m;if(h)m=this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetFilterPermission,y.WorksheetViewPermission]},[h],i,s);else{const p=(t=this._sheetsSelectionService.getCurrentLastSelection())==null?void 0:t.range;if(p){let O={...p};O=p.startColumn===p.endColumn&&p.startRow===p.endRow?y.expandToContinuousRange(O,{left:!0,right:!0,up:!0,down:!0},a):O,m=this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetViewPermission,y.WorksheetFilterPermission]},[O],i,s)}else m=this._sheetPermissionCheckPermission.permissionCheckWithoutRange({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetViewPermission,y.WorksheetFilterPermission]})}m||this._sheetPermissionCheckPermission.blockExecuteWithoutPermission(this._localeService.t("permission.dialog.filterErr"))}if(r.id===ce.id){const o=r.params,{unitId:l,subUnitId:i}=o,s=(n=this._sheetsFilterService.getFilterModel(l,i))==null?void 0:n.getRange(),a=c.Tools.deepClone(s);a&&(a.startColumn=o.col,a.endColumn=o.col,this._sheetPermissionCheckPermission.permissionCheckWithRanges({rangeTypes:[y.RangeProtectionPermissionViewPoint],worksheetTypes:[y.WorksheetFilterPermission,y.WorksheetViewPermission]},[a],l,i)||this._sheetPermissionCheckPermission.blockExecuteWithoutPermission(this._localeService.t("permission.dialog.filterErr")))}}))}};ie=ut([re(0,c.Inject(u.SheetsFilterService)),re(1,c.Inject(c.LocaleService)),re(2,c.ICommandService),re(3,c.Inject(y.SheetPermissionCheckController)),re(4,c.Inject(c.Injector)),re(5,c.Inject(y.SheetsSelectionsService))],ie);const G=16,ht=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 We{static drawNoCriteria(e,t,n,o){e.save(),K.Rect.drawWith(e,{radius:2,width:G,height:G,fill:o}),e.lineCap="square",e.strokeStyle=n,e.scale(t/G,t/G),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,t,n,o){e.save(),K.Rect.drawWith(e,{radius:2,width:G,height:G,fill:o}),e.scale(t/G,t/G),e.fillStyle=n,e.fill(ht),e.restore()}}var dt=Object.getOwnPropertyDescriptor,mt=(r,e,t,n)=>{for(var o=n>1?void 0:n?dt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Ae=(r,e)=>(t,n)=>e(t,n,r);const x=16,ue=1;let we=class extends K.Shape{constructor(e,t,n,o,l){super(e,t);_(this,"_cellWidth",0);_(this,"_cellHeight",0);_(this,"_filterParams");_(this,"_hovered",!1);this._contextService=n,this._commandService=o,this._themeService=l,this.setShapeProps(t),this.onPointerDown$.subscribeEvent(i=>this.onPointerDown(i)),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 t=this._cellHeight,n=this._cellWidth,o=x-n,l=x-t;e.save();const i=new Path2D;i.rect(o,l,n,t),e.clip(i);const{hasCriteria:s}=this._filterParams,a=this._themeService.getColorFromTheme("primary.600"),h=this._hovered?this._themeService.getColorFromTheme("gray.50"):"rgba(255, 255, 255, 1.0)";s?We.drawHasCriteria(e,x,a,h):We.drawNoCriteria(e,x,a,h),e.restore()}onPointerDown(e){if(e.button===2)return;const{col:t,unitId:n,subUnitId:o}=this._filterParams;this._contextService.getContextValue(ee)||!this._commandService.hasCommand(ce.id)||setTimeout(()=>{this._commandService.executeCommand(ce.id,{unitId:n,subUnitId:o,col:t})},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}};we=mt([Ae(2,c.IContextService),Ae(3,c.ICommandService),Ae(4,c.Inject(c.ThemeService))],we);var pt=Object.getOwnPropertyDescriptor,ft=(r,e,t,n)=>{for(var o=n>1?void 0:n?pt(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},X=(r,e)=>(t,n)=>e(t,n,r);const vt=1e3,_t=5e3;function gt(r,e,t,n){switch(n){case c.VerticalAlign.TOP:return r+ue;case c.VerticalAlign.MIDDLE:return r+Math.max(0,(t-x)/2);case c.VerticalAlign.BOTTOM:default:return e-x-ue}}let Re=class extends c.RxDisposable{constructor(e,t,n,o,l,i,s,a){super();_(this,"_filterRangeShape",null);_(this,"_buttonRenderDisposable",null);_(this,"_filterButtonShapes",[]);this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._sheetsFilterService=o,this._themeService=l,this._sheetInterceptorService=i,this._commandService=s,this._selectionRenderService=a,this._initRenderer()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){this._sheetSkeletonManagerService.currentSkeleton$.pipe(S.switchMap(e=>{var s,a;if(!e)return S.of(null);const{unit:t,unitId:n}=this._context,o=((s=t.getActiveSheet())==null?void 0:s.getSheetId())||"",l=(a=this._sheetsFilterService.getFilterModel(n,o))!=null?a:void 0,i=()=>({unitId:n,worksheetId:o,filterModel:l,range:l==null?void 0:l.getRange(),skeleton:e.skeleton});return c.fromCallback(this._commandService.onCommandExecuted.bind(this._commandService)).pipe(S.filter(([h])=>{var m;return h.type===c.CommandType.MUTATION&&((m=h.params)==null?void 0:m.unitId)===t.getUnitId()&&(u.FILTER_MUTATIONS.has(h.id)||h.id===y.SetRangeValuesMutation.id)}),S.throttleTime(20,void 0,{leading:!1,trailing:!0}),S.map(i),S.startWith(i()))}),S.takeUntil(this.dispose$)).subscribe(e=>{this._disposeRendering(),!(!e||!e.range)&&(this._renderRange(e.range,e.skeleton),this._renderButtons(e))})}_renderRange(e,t){const{scene:n}=this._context,{rowHeaderWidth:o,columnHeaderHeight:l}=t,i=this._filterRangeShape=new $.SelectionControl(n,vt,this._themeService,{rowHeaderWidth:o,columnHeaderHeight:l,enableAutoFill:!1,highlightHeader:!1}),s={range:e,primary:null,style:{fill:"rgba(0, 0, 0, 0.0)"}},a=$.attachSelectionWithCoord(s,t);i.updateRangeBySelectionWithCoord(a),i.setEvent(!1),n.makeDirty(!0)}_renderButtons(e){const{range:t,filterModel:n,unitId:o,skeleton:l,worksheetId:i}=e,{unit:s,scene:a}=this._context,h=s.getSheetBySheetId(i);if(!h)return;this._interceptCellContent(o,i,e.range);const{startColumn:m,endColumn:p,startRow:O}=t;for(let v=m;v<=p;v++){const T=`sheets-filter-button-${v}`,I=$.getCoordByCell(O,v,a,l),P=h.getComposedCellStyle(O,v),A=(P==null?void 0:P.vt)||c.VerticalAlign.BOTTOM,{startX:M,startY:L,endX:U,endY:B}=I,Y=U-M,q=B-L;if(q<=ue||Y<=ue)continue;const oe=!!n.getFilterColumn(v),H=U-x-ue,b=gt(L,B,q,A),$e={left:H,top:b,height:x,width:x,zIndex:_t,cellHeight:q,cellWidth:Y,filterParams:{unitId:o,subUnitId:i,col:v,hasCriteria:oe}},Ee=this._injector.createInstance(we,T,$e);this._filterButtonShapes.push(Ee)}a.addObjects(this._filterButtonShapes),a.makeDirty()}_interceptCellContent(e,t,n){const{startRow:o,startColumn:l,endColumn:i}=n;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(y.INTERCEPTOR_POINT.CELL_CONTENT,{effect:c.InterceptorEffectEnum.Style,handler:(s,a,h)=>{const{row:m,col:p,unitId:O,subUnitId:v}=a;return O!==e||v!==t||m!==o||p<l||p>i||((!s||s===a.rawData)&&(s={...a.rawData}),s.fontRenderExtension={...s==null?void 0:s.fontRenderExtension,rightOffset:x}),h(s)},priority:10})}_disposeRendering(){var e,t;(e=this._filterRangeShape)==null||e.dispose(),this._filterButtonShapes.forEach(n=>n.dispose()),(t=this._buttonRenderDisposable)==null||t.dispose(),this._filterRangeShape=null,this._buttonRenderDisposable=null,this._filterButtonShapes=[]}};Re=ft([X(1,c.Inject(c.Injector)),X(2,c.Inject($.SheetSkeletonManagerService)),X(3,c.Inject(u.SheetsFilterService)),X(4,c.Inject(c.ThemeService)),X(5,c.Inject(y.SheetInterceptorService)),X(6,c.ICommandService),X(7,$.ISheetSelectionRenderService)],Re);var Ct=Object.getOwnPropertyDescriptor,St=(r,e,t,n)=>{for(var o=n>1?void 0:n?Ct(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},Ve=(r,e)=>(t,n)=>e(t,n,r);let he=class extends c.RxDisposable{constructor(r,e){super(),this._renderManagerService=r,this._sheetsRenderService=e,[u.SetSheetsFilterRangeMutation,u.SetSheetsFilterCriteriaMutation,u.RemoveSheetsFilterMutation,u.ReCalcSheetsFilterMutation].forEach(t=>this.disposeWithMe(this._sheetsRenderService.registerSkeletonChangingMutations(t.id))),this.disposeWithMe(this._renderManagerService.registerRenderModule(c.UniverInstanceType.UNIVER_SHEET,[Re]))}};he=St([Ve(0,K.IRenderManagerService),Ve(1,c.Inject($.SheetsRenderService))],he);var Tt=Object.defineProperty,Et=Object.getOwnPropertyDescriptor,Ot=(r,e,t)=>e in r?Tt(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,It=(r,e,t,n)=>{for(var o=n>1?void 0:n?Et(e,t):e,l=r.length-1,i;l>=0;l--)(i=r[l])&&(o=i(o)||o);return o},je=(r,e)=>(t,n)=>e(t,n,r),Qe=(r,e,t)=>Ot(r,typeof e!="symbol"?e+"":e,t);const Ft="SHEET_FILTER_UI_PLUGIN";C.UniverSheetsFilterMobileUIPlugin=class extends c.Plugin{constructor(e=Ce,t,n){super(),this._config=e,this._injector=t,this._configService=n;const{menu:o,...l}=c.merge({},Ce,this._config);o&&this._configService.setConfig("menu",o,{merge:!0}),this._configService.setConfig(xe,l)}onStarting(){[[ie],[he]].forEach(e=>this._injector.add(e))}onReady(){this._injector.get(ie)}onRendered(){this._injector.get(he)}},Qe(C.UniverSheetsFilterMobileUIPlugin,"type",c.UniverInstanceType.UNIVER_SHEET),Qe(C.UniverSheetsFilterMobileUIPlugin,"pluginName",Ft),C.UniverSheetsFilterMobileUIPlugin=It([c.DependentOn(u.UniverSheetsFilterPlugin),je(1,c.Inject(c.Injector)),je(2,c.IConfigService)],C.UniverSheetsFilterMobileUIPlugin);function ne({ref:r,...e}){const{icon:t,id:n,className:o,extend:l,...i}=e,s=`univerjs-icon univerjs-icon-${n} ${o||""}`.trim(),a=F.useRef(`_${yt()}`);return Ge(t,`${n}`,{defIds:t.defIds,idSuffix:a.current},{ref:r,className:s,...i},l)}function Ge(r,e,t,n,o){return F.createElement(r.tag,{key:e,...Nt(r,t,o),...n},(bt(r,t).children||[]).map((l,i)=>Ge(l,`${e}-${r.tag}-${i}`,t,void 0,o)))}function Nt(r,e,t){const n={...r.attrs};t!=null&&t.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=t.colorChannel1),r.tag==="mask"&&n.id&&(n.id=n.id+e.idSuffix),Object.entries(n).forEach(([l,i])=>{l==="mask"&&typeof i=="string"&&(n[l]=i.replace(/url\(#(.*)\)/,`url(#$1${e.idSuffix})`))});const{defIds:o}=e;return!o||o.length===0||(r.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(([l,i])=>{typeof i=="string"&&(n[l]=i.replace(/url\(#(.*)\)/,`url(#$1${e.idSuffix})`))})),n}function bt(r,e){var n;const{defIds:t}=e;return!t||t.length===0?r:r.tag==="defs"&&((n=r.children)!=null&&n.length)?{...r,children:r.children.map(o=>typeof o.attrs.id=="string"&&t&&t.includes(o.attrs.id)?{...o,attrs:{...o.attrs,id:o.attrs.id+e.idSuffix}}:o)}:r}function yt(){return Math.random().toString(36).substring(2,8)}ne.displayName="UniverIcon";const Pt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M10 1.05957C10.356 1.05957 10.6816 1.26162 10.8408 1.58008L18.8408 17.5801L18.8799 17.668C19.0486 18.1134 18.8551 18.6232 18.4199 18.8408C17.9557 19.0727 17.3913 18.8841 17.1592 18.4199L10 4.10156L2.84082 18.4199C2.60871 18.8841 2.04434 19.0727 1.58008 18.8408C1.11587 18.6087 0.92731 18.0443 1.15918 17.5801L9.15918 1.58008C9.31841 1.26162 9.64395 1.05957 10 1.05957Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M15.3337 11.7261L15.4294 11.731C15.9035 11.779 16.2732 12.1798 16.2732 12.6665C16.2732 13.1532 15.9035 13.554 15.4294 13.602L15.3337 13.6069H4.66675C4.1476 13.6069 3.72632 13.1856 3.72632 12.6665C3.72632 12.1474 4.1476 11.7261 4.66675 11.7261H15.3337Z"}}]},Ye=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"a-icon",ref:t,icon:Pt}))});Ye.displayName="AIcon";const At={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 20",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M17.0596 10C17.0596 6.10087 13.8992 2.94043 10 2.94043C6.10087 2.94043 2.94043 6.10087 2.94043 10C2.94043 13.8992 6.10087 17.0596 10 17.0596C13.8992 17.0596 17.0596 13.8992 17.0596 10ZM18.9404 10C18.9404 14.9374 14.9374 18.9404 10 18.9404C5.06257 18.9404 1.05957 14.9374 1.05957 10C1.05957 5.06257 5.06257 1.05957 10 1.05957C14.9374 1.05957 18.9404 5.06257 18.9404 10Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.29492 4.13476C4.63911 3.79057 5.1845 3.76906 5.55371 4.07031L5.625 4.13476L16.0244 14.5352L16.0889 14.6064C16.3902 14.9757 16.3686 15.52 16.0244 15.8643C15.6573 16.2313 15.0624 16.2313 14.6953 15.8643L4.29492 5.46484L4.23047 5.39355C3.92922 5.02434 3.95073 4.47895 4.29492 4.13476Z"}}]},qe=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"ban-icon",ref:t,icon:At}))});qe.displayName="BanIcon";const wt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",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"}}]},Ze=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"filter-icon",ref:t,icon:wt}))});Ze.displayName="FilterIcon";const Rt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.00016 1.33203C6.68162 1.33203 5.39269 1.72302 4.29636 2.45557C3.20004 3.18811 2.34555 4.2293 1.84097 5.44747C1.33638 6.66565 1.20436 8.00609 1.4616 9.2993C1.71883 10.5925 2.35377 11.7804 3.28612 12.7127C4.21847 13.6451 5.40636 14.28 6.69956 14.5373C7.99277 14.7945 9.33321 14.6625 10.5514 14.1579C11.7696 13.6533 12.8108 12.7988 13.5433 11.7025C14.2758 10.6062 14.6668 9.31724 14.6668 7.9987C14.6649 6.23118 13.9619 4.53662 12.7121 3.2868C11.4622 2.03697 9.76768 1.33397 8.00016 1.33203ZM7.66683 3.9987C7.86461 3.9987 8.05795 4.05735 8.2224 4.16723C8.38685 4.27711 8.51502 4.43329 8.59071 4.61601C8.6664 4.79874 8.6862 4.99981 8.64762 5.19379C8.60903 5.38777 8.51379 5.56595 8.37394 5.7058C8.23409 5.84566 8.0559 5.9409 7.86192 5.97948C7.66794 6.01807 7.46687 5.99826 7.28415 5.92258C7.10142 5.84689 6.94524 5.71872 6.83536 5.55427C6.72548 5.38982 6.66683 5.19648 6.66683 4.9987C6.66683 4.73348 6.77219 4.47913 6.95972 4.29159C7.14726 4.10405 7.40162 3.9987 7.66683 3.9987ZM9.3335 11.332H6.66683C6.49002 11.332 6.32045 11.2618 6.19543 11.1368C6.0704 11.0117 6.00016 10.8422 6.00016 10.6654C6.00016 10.4886 6.0704 10.319 6.19543 10.194C6.32045 10.0689 6.49002 9.9987 6.66683 9.9987H7.3335V7.9987H6.66683C6.49002 7.9987 6.32045 7.92846 6.19543 7.80343C6.0704 7.67841 6.00016 7.50884 6.00016 7.33203C6.00016 7.15522 6.0704 6.98565 6.19543 6.86063C6.32045 6.7356 6.49002 6.66536 6.66683 6.66536H8.00016C8.17698 6.66536 8.34655 6.7356 8.47157 6.86063C8.59659 6.98565 8.66683 7.15522 8.66683 7.33203V9.9987H9.3335C9.51031 9.9987 9.67988 10.0689 9.8049 10.194C9.92993 10.319 10.0002 10.4886 10.0002 10.6654C10.0002 10.8422 9.92993 11.0117 9.8049 11.1368C9.67988 11.2618 9.51031 11.332 9.3335 11.332Z"}}]},Ke=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"info-icon",ref:t,icon:Rt}))});Ke.displayName="InfoIcon";const Lt={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM11.7245 6.42417C11.9588 6.18985 11.9588 5.80995 11.7245 5.57564C11.4901 5.34132 11.1102 5.34132 10.8759 5.57564L7.3002 9.15137L5.72446 7.57564C5.49014 7.34132 5.11025 7.34132 4.87593 7.57564C4.64162 7.80995 4.64162 8.18985 4.87593 8.42417L6.87593 10.4242C7.11025 10.6585 7.49014 10.6585 7.72446 10.4242L11.7245 6.42417Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Xe=F.forwardRef(function(e,t){return F.createElement(ne,Object.assign({},e,{id:"success-icon",ref:t,icon:Lt}))});Xe.displayName="SuccessIcon";function $t(r){const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.cellFillColors$,[],!0),o=g.useObservable(e.cellTextColors$,[],!0),l=F.useCallback(s=>{e.onFilterCheckToggled(s)},[e]),i=F.useCallback(s=>{e.onFilterCheckToggled(s,!1)},[e]);return d.jsx("div",{"data-u-comp":"sheets-filter-panel-colors-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:d.jsxs("div",{"data-u-comp":"sheets-filter-panel",className:N.clsx("univer-mt-2 univer-box-border univer-flex univer-h-[300px] univer-flex-grow univer-flex-col univer-gap-4 univer-overflow-auto univer-rounded-md univer-px-2 univer-py-2.5",N.borderClassName),children:[n.length>1&&d.jsxs("div",{children:[d.jsx("div",{className:"univer-mb-2 univer-text-sm univer-text-gray-900 dark:!univer-text-white",children:t.t("sheets-filter.panel.filter-by-cell-fill-color")}),d.jsx("div",{className:"univer-grid univer-grid-cols-8 univer-items-center univer-justify-start univer-gap-2",children:n.map((s,a)=>d.jsxs("div",{className:"univer-relative univer-h-6 univer-w-6",onClick:()=>l(s),children:[s.color?d.jsx("button",{type:"button",className:N.clsx("univer-box-border univer-h-6 univer-w-6 univer-cursor-pointer univer-rounded-full univer-border univer-border-solid univer-border-transparent univer-bg-gray-300 univer-transition-shadow hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white"),style:{backgroundColor:s.color}}):d.jsx(qe,{className:"univer-h-6 univer-w-6 univer-cursor-pointer univer-rounded-full hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white"}),s.checked&&d.jsx(ze,{})]},`sheets-filter-cell-fill-color-${a}`))})]}),o.length>1&&d.jsxs("div",{children:[d.jsx("div",{className:"univer-mb-2 univer-text-sm univer-text-gray-900 dark:!univer-text-white",children:t.t("sheets-filter.panel.filter-by-cell-text-color")}),d.jsx("div",{className:"univer-grid univer-grid-cols-8 univer-items-center univer-justify-start univer-gap-2",children:o.map((s,a)=>d.jsxs("div",{className:"univer-relative univer-h-6 univer-w-6",onClick:()=>i(s),children:[d.jsx("div",{className:"univer-box-border univer-flex univer-h-full univer-w-full univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-border univer-border-solid univer-border-[rgba(13,13,13,0.06)] univer-p-0.5 hover:univer-ring-2 hover:univer-ring-offset-2 hover:univer-ring-offset-white dark:!univer-border-[rgba(255,255,255,0.06)]",children:d.jsx(Ye,{style:{color:s.color}})}),s.checked&&d.jsx(ze,{})]},`sheets-filter-cell-text-color-${a}`))})]}),n.length<=1&&o.length<=1&&d.jsx("div",{className:"univer-flex univer-h-full univer-w-full univer-items-center univer-justify-center univer-text-sm univer-text-gray-900 dark:!univer-text-gray-200",children:t.t("sheets-filter.panel.filter-by-color-none")})]})})}function ze(){return d.jsx("div",{className:"univer-absolute -univer-bottom-0.5 -univer-right-0.5 univer-flex univer-h-3 univer-w-3 univer-cursor-pointer univer-items-center univer-justify-center univer-rounded-full univer-bg-white",children:d.jsx(Xe,{className:"univer-h-full univer-w-full univer-font-bold univer-text-[#418F1F]"})})}function Mt(r){var v,T;const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.conditionItem$,void 0),o=g.useObservable(e.filterConditionFormParams$,void 0),l=o!=null&&o.and?"AND":"OR",i=F.useCallback(I=>{e.onConditionFormChange({and:I==="AND"})},[e]),s=Ut(t),a=F.useCallback(I=>{e.onPrimaryConditionChange(I)},[e]),h=kt(t),m=F.useCallback(I=>{e.onConditionFormChange(I)},[e]),p=t.t("sheets-filter.panel.input-values-placeholder");function O(I,P,A){const M=f.getItemByOperator(I).numOfParameters===1;return d.jsxs(d.Fragment,{children:[A==="operator2"&&d.jsxs(N.RadioGroup,{value:l,onChange:i,children:[d.jsx(N.Radio,{value:"AND",children:t.t("sheets-filter.panel.and")}),d.jsx(N.Radio,{value:"OR",children:t.t("sheets-filter.panel.or")})]}),d.jsx(N.Select,{value:I,options:h,onChange:L=>m({[A]:L})}),M&&d.jsx("div",{children:d.jsx(N.Input,{className:"univer-mt-2",value:P,placeholder:p,onChange:L=>m({[A==="operator1"?"val1":"val2"]:L})})})]})}return d.jsx("div",{"data-u-comp":"sheets-filter-panel-conditions-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:n&&o&&d.jsxs(d.Fragment,{children:[d.jsx(N.Select,{value:n.operator,options:s,onChange:a}),f.getItemByOperator(n.operator).numOfParameters!==0?d.jsxs("div",{"data-u-comp":"sheets-filter-panel-conditions-container-inner",className:N.clsx("univer-mt-2 univer-flex-grow univer-overflow-hidden univer-rounded-md univer-p-2",N.borderClassName),children:[n.numOfParameters>=1&&O(o.operator1,(v=o.val1)!=null?v:"","operator1"),n.numOfParameters>=2&&O(o.operator2,(T=o.val2)!=null?T:"","operator2"),d.jsxs("div",{"data-u-comp":"sheets-filter-panel-conditions-desc",className:"univer-mt-2 univer-text-xs univer-text-gray-500",children:[t.t("sheets-filter.panel.?"),d.jsx("br",{}),t.t("sheets-filter.panel.*")]})]}):null]})})}function Ut(r){const e=r.getCurrentLocale();return F.useMemo(()=>[{options:[{label:r.t(f.NONE.label),value:f.NONE.operator}]},{options:[{label:r.t(f.EMPTY.label),value:f.EMPTY.operator},{label:r.t(f.NOT_EMPTY.label),value:f.NOT_EMPTY.operator}]},{options:[{label:r.t(f.TEXT_CONTAINS.label),value:f.TEXT_CONTAINS.operator},{label:r.t(f.DOES_NOT_CONTAIN.label),value:f.DOES_NOT_CONTAIN.operator},{label:r.t(f.STARTS_WITH.label),value:f.STARTS_WITH.operator},{label:r.t(f.ENDS_WITH.label),value:f.ENDS_WITH.operator},{label:r.t(f.EQUALS.label),value:f.EQUALS.operator}]},{options:[{label:r.t(f.GREATER_THAN.label),value:f.GREATER_THAN.operator},{label:r.t(f.GREATER_THAN_OR_EQUAL.label),value:f.GREATER_THAN_OR_EQUAL.operator},{label:r.t(f.LESS_THAN.label),value:f.LESS_THAN.operator},{label:r.t(f.LESS_THAN_OR_EQUAL.label),value:f.LESS_THAN_OR_EQUAL.operator},{label:r.t(f.EQUAL.label),value:f.EQUAL.operator},{label:r.t(f.NOT_EQUAL.label),value:f.NOT_EQUAL.operator},{label:r.t(f.BETWEEN.label),value:f.BETWEEN.operator},{label:r.t(f.NOT_BETWEEN.label),value:f.NOT_BETWEEN.operator}]},{options:[{label:r.t(f.CUSTOM.label),value:f.CUSTOM.operator}]}],[e,r])}function kt(r){const e=r.getCurrentLocale();return F.useMemo(()=>f.ALL_CONDITIONS.filter(t=>t.numOfParameters!==2).map(t=>({label:r.t(t.label),value:t.operator})),[e,r])}function Bt(r){const{model:e}=r,t=g.useDependency(c.LocaleService),n=g.useObservable(e.searchString$,"",!0),o=g.useObservable(e.filterItems$,void 0,!0),l=t.t("sheets-filter.panel.filter-only"),i=Ie(o),s=i.checked>0&&i.unchecked===0,a=i.checked>0&&i.unchecked>0,h=e.treeMapCache,m=F.useCallback(()=>{e.onCheckAllToggled(!s)},[e,s]),p=F.useCallback(v=>{e.setSearchString(v)},[e]);function O(v){let T=[];return v.forEach(I=>{I.checked&&T.push(I.key),I.children&&(T=T.concat(O(I.children)))}),T}return d.jsxs("div",{"data-u-comp":"sheets-filter-panel-values-container",className:"univer-flex univer-h-full univer-min-h-[300px] univer-flex-col",children:[d.jsx(N.Input,{autoFocus:!0,value:n,placeholder:t.t("sheets-filter.panel.search-placeholder"),onChange:p}),d.jsxs("div",{"data-u-comp":"sheets-filter-panel",className:N.clsx("univer-mt-2 univer-box-border univer-flex univer-flex-grow univer-flex-col univer-overflow-hidden univer-rounded-md univer-px-2 univer-py-2.5",N.borderClassName),children:[d.jsx("div",{"data-u-comp":"sheets-filter-panel-values-item",className:"univer-box-border univer-h-8 univer-w-full univer-py-0.5",children:d.jsxs("div",{"data-u-comp":"sheets-filter-panel-values-item-inner",className:"univer-box-border univer-flex univer-h-7 univer-items-center univer-rounded-md univer-pb-0 univer-pl-5 univer-pr-0.5 univer-pt-0 univer-text-sm",children:[d.jsx(N.Checkbox,{indeterminate:a,disabled:o.length===0,checked:s,onChange:m}),d.jsx("span",{"data-u-comp":"sheets-filter-panel-values-item-text",className:"univer-mx-1 univer-inline-block univer-flex-shrink univer-truncate univer-text-gray-900 dark:!univer-text-white",children:`${t.t("sheets-filter.panel.select-all")}`}),d.jsx("span",{"data-u-comp":"sheets-filter-panel-values-item-count",className:"univer-text-gray-400 dark:!univer-text-gray-500",children:`(${i.checked}/${i.checked+i.unchecked})`})]})}),d.jsx("div",{"data-u-comp":"sheets-filter-panel-values-virtual",className:"univer-flex-grow",children:d.jsx(N.Tree,{data:o,defaultExpandAll:!1,valueGroup:O(o),onChange:v=>{e.onFilterCheckToggled(v)},defaultCache:h,itemHeight:28,treeNodeClassName:`
11
11
  univer-pr-2 univer-border-box univer-rounded-md
12
12
  [&:hover_a]:univer-inline-block
13
13
  hover:univer-bg-gray-50 univer-h-full
@@ -0,0 +1,6 @@
1
+ // @univerjs/sheets-filter-ui/locale/ja-JP
2
+ (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.UniverSheetsFilterUiJaJP=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":"選択範囲に1行しか含まれていないため、フィルタを適用できません。"},shortcut:{"smart-toggle-filter":"フィルタの切替"},panel:{"clear-filter":"フィルタをクリア",cancel:"キャンセル",confirm:"確認","by-values":"値でフィルタ","by-colors":"色でフィルタ","filter-by-cell-fill-color":"セルの塗りつぶし色でフィルタ","filter-by-cell-text-color":"セルの文字色でフィルタ","filter-by-color-none":"この列は単一の色のみを含んでいます","by-conditions":"条件でフィルタ","filter-only":"フィルタのみ表示","search-placeholder":"検索語はスペースで区切る","select-all":"すべて選択","input-values-placeholder":"値を入力",and:"AND",or:"OR",empty:"(空白)","?":"「?」は任意の1文字","*":"「*」は任意の複数文字"},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:"1月",2:"2月",3:"3月",4:"4月",5:"5月",6:"6月",7:"7月",8:"8月",9:"9月",10:"10月",11:"11月",12:"12月"},sync:{title:"フィルタを全員が表示可能",statusTips:{on:"有効にすると、すべての共同作業者がフィルタ結果を表示できます。",off:"無効にすると、自分のみフィルタ結果を表示できます。"},switchTips:{on:"「フィルタを全員が表示可能」が有効な場合、すべての共同作業者がフィルタ結果を表示できます。",off:"「フィルタを全員が表示可能」が無効な場合、自分のみフィルタ結果を表示できます。"}}}}}));
3
+
4
+
5
+ // locale/ja-JP
6
+ (function(e,i){typeof exports=="object"&&typeof module<"u"?module.exports=i(require("@univerjs/core"),require("@univerjs/sheets-filter-ui/locale/ja-JP")):typeof define=="function"&&define.amd?define(["@univerjs/core","@univerjs/sheets-filter-ui/locale/ja-JP"],i):(e=typeof globalThis<"u"?globalThis:e||self,e.UniverPresetSheetsFilterJaJP=i(e.UniverCore,e.UniverSheetsFilterUiJaJP))})(this,(function(e,i){"use strict";return e.mergeLocales(i)}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/preset-sheets-filter",
3
- "version": "0.11.0",
3
+ "version": "0.12.1",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "author": "DreamNum Co., Ltd. <developer@univer.ai>",
@@ -63,16 +63,16 @@
63
63
  "rxjs": ">=7.0.0"
64
64
  },
65
65
  "dependencies": {
66
- "@univerjs/sheets-filter": "0.11.0",
67
- "@univerjs/sheets-filter-ui": "0.11.0"
66
+ "@univerjs/sheets-filter": "0.12.1",
67
+ "@univerjs/sheets-filter-ui": "0.12.1"
68
68
  },
69
69
  "devDependencies": {
70
- "@univerjs/core": "0.11.0",
70
+ "@univerjs/core": "0.12.1",
71
71
  "react": "18.3.1",
72
72
  "react-dom": "18.3.1",
73
73
  "rxjs": "7.8.2",
74
74
  "typescript": "^5.9.3",
75
- "@univerjs-infra/shared": "0.11.0"
75
+ "@univerjs-infra/shared": "0.12.1"
76
76
  },
77
77
  "scripts": {
78
78
  "prebuild:preset": "tsx prepare.ts",