@univerjs/preset-sheets-table 0.10.3 → 0.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/umd/index.js +2 -2
  2. package/package.json +5 -5
package/lib/umd/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @univerjs/sheets-table/index
2
- (function(h,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets","rxjs"],u):(h=typeof globalThis<"u"?globalThis:h||self,u(h.UniverSheetsTable={},h.UniverCore,h.UniverSheets,h.rxjs))})(this,function(h,u,C,N){"use strict";var tn=Object.defineProperty;var nn=(h,u,C)=>u in h?tn(h,u,{enumerable:!0,configurable:!0,writable:!0,value:C}):h[u]=C;var R=(h,u,C)=>nn(h,typeof u!="symbol"?u+"":u,C);var ee;var _=(n=>(n.Insert="insert",n.Delete="delete",n))(_||{}),D=(n=>(n.Row="row",n.Col="column",n))(D||{}),ne=(n=>(n.None="none",n.String="string",n.Number="number",n.Date="date",n.Bool="bool",n.Checkbox="checkbox",n.List="list",n))(ne||{}),W=(n=>(n.manual="manual",n.condition="condition",n))(W||{}),O=(n=>(n.Date="date",n.Number="number",n.String="string",n.Logic="logic",n))(O||{}),F=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.GreaterThan="greaterThan",n.GreaterThanOrEqual="greaterThanOrEqual",n.LessThan="lessThan",n.LessThanOrEqual="lessThanOrEqual",n.Between="between",n.NotBetween="notBetween",n.Above="above",n.Below="below",n.TopN="topN",n))(F||{}),E=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.Contains="contains",n.NotContains="notContains",n.StartsWith="startsWith",n.EndsWith="endsWith",n))(E||{}),S=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.After="after",n.AfterOrEqual="afterOrEqual",n.Before="before",n.BeforeOrEqual="beforeOrEqual",n.Between="between",n.NotBetween="notBetween",n.Today="today",n.Yesterday="yesterday",n.Tomorrow="tomorrow",n.ThisWeek="thisWeek",n.LastWeek="lastWeek",n.NextWeek="nextWeek",n.ThisMonth="thisMonth",n.LastMonth="lastMonth",n.NextMonth="nextMonth",n.ThisQuarter="thisQuarter",n.LastQuarter="lastQuarter",n.NextQuarter="nextQuarter",n.ThisYear="thisYear",n.LastYear="lastYear",n.NextYear="nextYear",n.YearToDate="yearToDate",n.Quarter="quarter",n.Month="month",n.M1="m1",n.M2="m2",n.M3="m3",n.M4="m4",n.M5="m5",n.M6="m6",n.M7="m7",n.M8="m8",n.M9="m9",n.M10="m10",n.M11="m11",n.M12="m12",n.Q1="q1",n.Q2="q2",n.Q3="q3",n.Q4="q4",n))(S||{}),$=(n=>(n[n.FilteredSortNone=1]="FilteredSortNone",n[n.FilteredSortAsc=2]="FilteredSortAsc",n[n.FilteredSortDesc=3]="FilteredSortDesc",n[n.FilterNoneSortNone=4]="FilterNoneSortNone",n[n.FilterNoneSortAsc=5]="FilterNoneSortAsc",n[n.FilterNoneSortDesc=6]="FilterNoneSortDesc",n))($||{}),A=(n=>(n.Asc="asc",n.Desc="desc",n.None="none",n))(A||{});function k(n,e){return`${e} ${n}`}const le="TRUE",ue="FALSE",xe=n=>{var t;return((t=n.body)==null?void 0:t.dataStream.replace(/\r\n$/,""))||""};function de(n){if(n){const{v:e,t,p:a}=n;return a?xe(a):(t===u.CellValueType.FORCE_STRING||t===u.CellValueType.STRING)&&e!==void 0&&e!==null?String(e):t===u.CellValueType.BOOLEAN?e?le:ue:t===u.CellValueType.NUMBER?String(e):typeof e==="boolean"?e?le:ue:e==null?"":String(e)}return""}function Ee(n,e){if(n!=null)switch(e){case A.Asc:return $.FilteredSortAsc;case A.Desc:return $.FilteredSortDesc;default:return $.FilteredSortNone}else switch(e){case A.Asc:return $.FilterNoneSortAsc;case A.Desc:return $.FilterNoneSortDesc;default:return $.FilterNoneSortNone}}function ce(n){return n?n.filterType===W.condition:!1}function $e(n){return n?n.filterType===W.manual:!1}const U={s:u.BorderStyleTypes.THIN,cl:{rgb:"rgb(95 101 116)"}},Ae={headerRowStyle:{bd:{t:U}},headerColumnStyle:{bd:{l:U}},lastColumnStyle:{bd:{r:U}},lastRowStyle:{bd:{b:U}}},Be=(n,e)=>{if(n==="headerRowStyle"){if(!e.bd)return{...e,bd:{t:U}}}else if(n==="lastRowStyle"){if(!e.bd)return{...e,bd:{b:U}}}else if(n==="lastColumnStyle"){if(!e.bd)return{...e,bd:{r:U}}}else if(n==="headerColumnStyle"&&!e.bd)return{...e,bd:{l:U}};return e},q=[[["#6280F9","#FFFFFF","#BAC6F8","#D2DAFA"],["#fff"]],[["#16BDCA","#FFFFFF","#EDFAFA","#AFECEF"],["#000"]],[["#31C48D","#FFFFFF","#F3FAF7","#BCF0DA"],["#fff"]],[["#AC94FA","#FFFFFF","#F6F5FF","#EDEBFE"],["#fff"]],[["#F17EBB","#FFFFFF","#FDF2F8","#FCE8F3"],["#fff"]],[["#F98080","#FFFFFF","#FDF2F2","#FDE8E8"],["#fff"]]].map((n,e)=>{const[t,a]=n,[r,s,o,i]=t,[d]=a;return{name:`table-default-${e}`,style:{headerRowStyle:{bg:{rgb:r},cl:{rgb:d},bd:{t:U}},headerColumnStyle:{bd:{l:U}},firstRowStyle:{bg:{rgb:s}},secondRowStyle:{bg:{rgb:o}},lastRowStyle:{bg:{rgb:i},bd:{b:U}},lastColumnStyle:{bd:{r:U}}}}});class B{constructor(e,t){R(this,"dataType");R(this,"id");R(this,"displayName");R(this,"formula");R(this,"meta");R(this,"style");this.id=e,this.displayName=t,this.dataType=ne.String,this.formula="",this.meta={},this.style={}}getMeta(){return this.meta}setMeta(e){this.meta=e}getDisplayName(){return this.displayName}toJSON(){return{id:this.id,displayName:this.displayName,dataType:this.dataType,formula:this.formula,meta:this.meta,style:this.style}}fromJSON(e){this.id=e.id,this.displayName=e.displayName,this.dataType=e.dataType,this.formula=e.formula,this.meta=e.meta,this.style=e.style}}const Le=n=>n.getMonth()<=2,We=n=>{const e=n.getMonth();return e>2&&e<=5},qe=n=>{const e=n.getMonth();return e>5&&e<=8},Pe=n=>{const e=n.getMonth();return e>8&&e<=11},Ve=n=>n.getMonth()===0,He=n=>n.getMonth()===1,Je=n=>n.getMonth()===2,ke=n=>n.getMonth()===3,Qe=n=>n.getMonth()===4,Ye=n=>n.getMonth()===5,je=n=>n.getMonth()===6,Ge=n=>n.getMonth()===7,ze=n=>n.getMonth()===8,Ke=n=>n.getMonth()===9,Xe=n=>n.getMonth()===10,Ze=n=>n.getMonth()===11,et=(n,e=new Date)=>n.toDateString()===e.toDateString(),tt=(n,e=new Date)=>{const t=new Date(e);return t.setDate(t.getDate()+1),n.toDateString()===t.toDateString()},nt=(n,e=new Date)=>{const t=new Date(e);return t.setDate(t.getDate()-1),n.toDateString()===t.toDateString()},P=n=>{const e=n.getDay(),t=n.getDate()-e+(e===0?-6:1),a=new Date(n);return a.setDate(t),a},ge=10080*60*1e3,at=(n,e=new Date)=>{const t=P(n),a=P(e);return t.toDateString()===a.toDateString()},rt=(n,e=new Date)=>{const t=P(n),a=new Date(P(e).getTime()+ge);return t.toDateString()===a.toDateString()},st=(n,e=new Date)=>{const t=P(n),a=new Date(P(e).getTime()-ge);return t.toDateString()===a.toDateString()},ot=(n,e=new Date)=>n.getFullYear()===e.getFullYear()&&n.getMonth()===e.getMonth(),it=n=>{const e=new Date(n);return e.setHours(0,0,0,0),e.setDate(1),e},lt=(n,e=new Date)=>{const t=new Date(e);t.setHours(0,0,0,0),t.setMonth(t.getMonth()+1,1);const a=new Date(t);a.setMonth(a.getMonth()+1,0);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},ut=(n,e=new Date)=>{const t=it(e),a=new Date(t);a.setMonth(a.getMonth()+1,0);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},ae=n=>{const e=new Date(n);e.setHours(0,0,0,0),e.setDate(1);const t=e.getMonth();return e.setMonth(t-t%3),e},dt=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()+3);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},ct=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()+3);const r=new Date(a);r.setMonth(r.getMonth()+3,0);const s=n.getTime();return s>=a.getTime()&&s<r.getTime()},gt=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()-3);const r=new Date(t);r.setDate(0);const s=n.getTime();return s>=a.getTime()&&s<r.getTime()},ht=(n,e=new Date)=>n.getFullYear()===e.getFullYear(),mt=(n,e=new Date)=>n.getFullYear()===e.getFullYear()+1,bt=(n,e=new Date)=>n.getFullYear()===e.getFullYear()-1,St=(n,e=new Date)=>{const t=new Date(e);t.setHours(0,0,0,0),t.setMonth(0,1);const a=n.getTime();return a>=t.getTime()&&a<e.getTime()};function Ct(n){switch(n.compareType){case S.Equal:{const e=new Date(n.expectedValue);return t=>t.getTime()===e.getTime()}case S.NotEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()!==e.getTime()}case S.After:{const e=new Date(n.expectedValue);return t=>t.getTime()>e.getTime()}case S.Before:{const e=new Date(n.expectedValue);return t=>t.getTime()<e.getTime()}case S.AfterOrEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()>=e.getTime()}case S.BeforeOrEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()<=e.getTime()}case S.Between:return e=>{const[t,a]=n.expectedValue;return e.getTime()>=new Date(t).getTime()&&e.getTime()<=new Date(a).getTime()};case S.NotBetween:return e=>{const[t,a]=n.expectedValue;return e.getTime()<new Date(t).getTime()||e.getTime()>new Date(a).getTime()};case S.Today:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>et(t,e)}case S.Yesterday:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>nt(t,e)}case S.Tomorrow:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>tt(t,e)}case S.ThisWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>at(t,e)}case S.LastWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>st(t,e)}case S.NextWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>rt(t,e)}case S.ThisMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ot(t,e)}case S.LastMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ut(t,e)}case S.NextMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>lt(t,e)}case S.ThisQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>dt(t,e)}case S.LastQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>gt(t,e)}case S.NextQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ct(t,e)}case S.ThisYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ht(t,e)}case S.LastYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>bt(t,e)}case S.NextYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>mt(t,e)}case S.YearToDate:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>St(t,e)}case S.M1:return Ve;case S.M2:return He;case S.M3:return Je;case S.M4:return ke;case S.M5:return Qe;case S.M6:return Ye;case S.M7:return je;case S.M8:return Ge;case S.M9:return ze;case S.M10:return Ke;case S.M11:return Xe;case S.M12:return Ze;case S.Q1:return Le;case S.Q2:return We;case S.Q3:return qe;case S.Q4:return Pe;default:throw new Error("Unsupported compare type")}}class Rt{constructor(){R(this,"heap");this.heap=[]}swap(e,t){const a=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=a}getParentIndex(e){return Math.floor((e-1)/2)}getLeftIndex(e){return e*2+1}getRightIndex(e){return e*2+2}size(){return this.heap.length}peek(){return this.heap[0]}include(e){return this.heap.includes(e)}}class wt extends Rt{constructor(){super()}shiftUp(e){if(e===0)return;const t=this.getParentIndex(e);this.heap[t]>this.heap[e]&&(this.swap(t,e),this.shiftUp(t))}shiftDown(e){const t=this.getLeftIndex(e),a=this.getRightIndex(e);this.heap[t]<this.heap[e]&&(this.swap(t,e),this.shiftDown(t)),this.heap[a]<this.heap[e]&&(this.swap(a,e),this.shiftDown(a))}insert(e){this.heap.push(e),this.shiftUp(this.heap.length-1)}pop(){this.heap[0]=this.heap.pop(),this.shiftDown(0)}}const Tt=(n,e)=>{const t=new wt;for(const a of n)t.insert(a),t.size()>e&&t.pop();return t.heap},ft=(n,e)=>n>e,It=(n,e)=>n<e,pt=(n,e,t)=>Tt(n,e).includes(t);function _t(n,e){switch(n.compareType){case F.Equal:{const t=Number(n.expectedValue);return a=>a===t}case F.NotEqual:{const t=Number(n.expectedValue);return a=>a!==t}case F.GreaterThan:{const t=Number(n.expectedValue);return a=>a>t}case F.GreaterThanOrEqual:{const t=Number(n.expectedValue);return a=>a>=t}case F.LessThan:{const t=Number(n.expectedValue);return a=>a<t}case F.LessThanOrEqual:{const t=Number(n.expectedValue);return a=>a<=t}case F.Between:{const[t,a]=n.expectedValue,r=Number(t),s=Number(a);return r>s?o=>o>=s&&o<=r:o=>o>=r&&o<=s}case F.NotBetween:{const[t,a]=n.expectedValue,r=Number(t),s=Number(a);return r>s?o=>o<s||o>r:o=>o<r||o>s}case F.Above:{const t=e.average;return a=>ft(a,t)}case F.Below:{const t=e.average;return a=>It(a,t)}case F.TopN:{const t=e.list,a=Number(n.expectedValue);return r=>pt(t,a,r)}}}const V=n=>{const t=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*/g,".*").replace(/\\\?/g,".");return new RegExp(`^${t}$`)},vt=(n,e)=>V(e).test(n),Mt=(n,e)=>!V(e).test(n),Ft=(n,e)=>V(`*${e}*`).test(n),yt=(n,e)=>!V(`*${e}*`).test(n),Dt=(n,e)=>V(`${e}*`).test(n),Nt=(n,e)=>V(`*${e}`).test(n);function Ot(n){switch(n.compareType){case E.Equal:return e=>vt(e,n.expectedValue);case E.NotEqual:return e=>Mt(e,n.expectedValue);case E.Contains:return e=>Ft(e,n.expectedValue);case E.NotContains:return e=>yt(e,n.expectedValue);case E.StartsWith:return e=>Dt(e,n.expectedValue);case E.EndsWith:return e=>Nt(e,n.expectedValue);default:return console.error(`Unknown filter operator: ${n.compareType}`),e=>!0}}const Ut=new Set([F.Above,F.Below,F.TopN]);S.Today,S.Yesterday,S.Tomorrow,S.ThisWeek,S.LastWeek,S.NextWeek,S.ThisMonth,S.LastMonth,S.NextMonth,S.ThisQuarter,S.LastQuarter,S.NextQuarter,S.NextYear,S.ThisYear,S.LastYear,S.YearToDate;function he(n){return Ut.has(n)}function xt(n,e){if(he(n.filterInfo.compareType))return t=>!0;switch(n.filterInfo.conditionType){case O.Date:return Ct(n.filterInfo);case O.Number:return _t(n.filterInfo,e);case O.String:return Ot(n.filterInfo);case O.Logic:default:return t=>!0}}function Y(n,e,t,a){switch(a){case O.Date:{const r=me(n,e,t);return r?At(r):null}case O.Number:return me(n,e,t);case O.String:default:return $t(n,e,t)}}const Et=n=>{var t;return((t=n.body)==null?void 0:t.dataStream.replace(/\r\n$/,""))||""};function $t(n,e,t){const a=n.getCell(e,t);if(!a)return null;const{v:r,t:s,p:o}=a;if(o)return Et(o);if(typeof r=="string")return s===u.CellValueType.BOOLEAN?r.toUpperCase():r;if(typeof r=="number")return s===u.CellValueType.BOOLEAN?r?"TRUE":"FALSE":r;if(typeof r=="boolean")return r?"TRUE":"FALSE";if(r!==void 0)return String(r)}function me(n,e,t){const a=n.getCell(e,t);if(!a)return null;const{v:r,t:s,p:o}=a;return o?null:typeof r=="string"&&s===u.CellValueType.NUMBER?Number(n.getCellRaw(e,t).v):Number(r)}function At(n){const e=new Date(Date.UTC(1900,0,1,0,0,0)),t=new Date(Date.UTC(1900,1,28,0,0,0));let a=n-1;return a>(t.getTime()-e.getTime())/(1e3*3600*24)&&(a-=1),a<0&&(a=n),new Date(e.getTime()+a*(1e3*3600*24))}class be{constructor(){R(this,"_tableColumnFilterList");R(this,"_tableSortInfo");R(this,"_filterOutRows");this._tableColumnFilterList=[]}setColumnFilter(e,t){t?this._tableColumnFilterList[e]=t:this._tableColumnFilterList[e]=void 0}setSortState(e,t){this._tableSortInfo={columnIndex:e,sortState:t}}getColumnFilter(e){return this._tableColumnFilterList[e]}getFilterState(e){var a;const t=((a=this._tableSortInfo)==null?void 0:a.columnIndex)===e?this._tableSortInfo.sortState:A.None;return Ee(this._tableColumnFilterList[e],t)}getSortState(){var e;return(e=this._tableSortInfo)!=null?e:{}}getFilterStates(e){const t=[],{startColumn:a,endColumn:r}=e;for(let s=a;s<=r;s++)t.push(this.getFilterState(s-a));return t}getFilterOutRows(){return this._filterOutRows}doFilter(e,t){const a=new Set,r=this._tableColumnFilterList;for(let s=0;s<r.length;s++)r[s]&&this.doColumnFilter(e,t,s,a);return this._filterOutRows=a,a}doColumnFilter(e,t,a,r){const s=this._tableColumnFilterList[a];if(s&&e){const{startRow:o,endRow:i,startColumn:d}=t,l=d+a,g=this.getExecuteFunc(e,t,a,s);for(let m=o;m<=i;m++){const c=ce(s)?s.filterInfo.conditionType:O.String;Y(e,m,l,c)===null?r.add(m):g(Y(e,m,l,c))||r.add(m)}}}_getNumberCalculatedOptions(e,t,a){const{startRow:r,endRow:s,startColumn:o}=t,i=o+a,d=[];let l=0,g=0;for(let m=r;m<=s;m++){const c=Y(e,m,i,O.Number);c!==null&&(d.push(c),l++,g+=c)}return{list:d,average:l>0?g/l:0}}getExecuteFunc(e,t,a,r){if(r.filterType===W.manual){const s=new Set(r.values);return o=>s.has(o)}else if(r.filterType===W.condition){const o=he(r.filterInfo.compareType)?this._getNumberCalculatedOptions(e,t,a):void 0;return xt(r,o)}else return s=>!0}toJSON(){return{tableColumnFilterList:this._tableColumnFilterList,tableSortInfo:this._tableSortInfo}}fromJSON(e){var t;this._tableColumnFilterList=(t=e.tableColumnFilterList)!=null?t:[],e.tableSortInfo&&(this._tableSortInfo=e.tableSortInfo)}dispose(){this._tableColumnFilterList=[]}}class Se{constructor(e,t,a,r,s={}){R(this,"_id");R(this,"_name");R(this,"_tableStyleId");R(this,"_showHeader");R(this,"_showFooter");R(this,"_range");R(this,"_columns",new Map);R(this,"_columnOrder",[]);R(this,"tableMeta");R(this,"_tableFilters");R(this,"_subUnitId");this._id=e,this._range=a,this._name=t,this._tableFilters=new be,this._init(r,s)}_init(e,t){var a;if(this._tableStyleId=t==null?void 0:t.tableStyleId,this._showHeader=(a=t==null?void 0:t.showHeader)!=null?a:!0,this._showFooter=!1,t.columns)t.columns.forEach(r=>{const s=r.id||u.generateRandomId(),o=new B(s,r.displayName);o.fromJSON(r),this._columns.set(s,o),this._columnOrder.push(s)});else{const r=this.getRange(),s=r.startColumn,o=r.endColumn;for(let i=s;i<=o;i++){const d=u.generateRandomId(),l=new B(d,e[i-s]);this._columns.set(d,l),this._columnOrder.push(d)}}t.filters&&t.filters.forEach((s,o)=>{s&&this._tableFilters.setColumnFilter(o,s)})}setTableFilterColumn(e,t){this._tableFilters.setColumnFilter(e,t)}getTableFilterColumn(e){return this._tableFilters.getColumnFilter(e)}getTableFilters(){return this._tableFilters}getTableFilterRange(){const e=this.getRange(),t=this.isShowHeader(),a=this.isShowFooter(),{startRow:r,startColumn:s,endRow:o,endColumn:i}=e,d=t?r+1:r,l=a?o-1:o;return{startRow:d,startColumn:s,endRow:l,endColumn:i}}setColumns(e){this._columns.clear(),this._columnOrder=[],e.forEach(t=>{const a=new B(t.id,t.displayName);a.fromJSON(t),this._columns.set(t.id,a),this._columnOrder.push(t.id)})}getColumnsCount(){return this._columnOrder.length}insertColumn(e,t){const a=t.id;this._columns.set(a,t),this._columnOrder.splice(e,0,a)}removeColumn(e){const t=this._columnOrder[e];this._columns.delete(t),this._columnOrder.splice(e,1)}setTableMeta(e){this.tableMeta=e}getTableMeta(){return this.tableMeta}getColumn(e){return this._columns.get(e)}getTableColumnByIndex(e){const t=this._columnOrder[e];return this.getColumn(t)}getColumnNameByIndex(e){var a;const t=this._columnOrder[e];return((a=this.getColumn(t))==null?void 0:a.getDisplayName())||""}getId(){return this._id}getRangeInfo(){return{...this._range}}getRange(){return{...this._range}}setRange(e){this._range=e}setDisplayName(e){this._name=e}getDisplayName(){return this._name}getSubunitId(){return this._subUnitId}setSubunitId(e){this._subUnitId=e}getTableStyleId(){var e;return(e=this._tableStyleId)!=null?e:q[0].name}setTableStyleId(e){this._tableStyleId=e}isShowHeader(){var e;return(e=this._showHeader)!=null?e:!0}setShowHeader(e){this._showHeader=e}isShowFooter(){var e;return(e=this._showFooter)!=null?e:!1}getTableInfo(){return{id:this._id,subUnitId:this._subUnitId,name:this._name,range:this.getRangeInfo(),meta:this.tableMeta,showHeader:this._showHeader,columns:this._columnOrder.map(e=>this._columns.get(e).toJSON())}}getTableConfig(){return{name:this.getDisplayName(),range:this.getRangeInfo(),options:{showHeader:this._showHeader,showFooter:this._showFooter},tableStyleId:this._tableStyleId}}getFilterStates(e){return this._tableFilters.getFilterStates(e)}toJSON(){const e=[];return this._columns.forEach(t=>{e.push(t.toJSON())}),{id:this._id,name:this._name,range:this.getRangeInfo(),options:{showHeader:this._showHeader,showFooter:this._showFooter,tableStyleId:this._tableStyleId},filters:this._tableFilters.toJSON(),columns:e,meta:this.tableMeta}}fromJSON(e){this._id=e.id,this._name=e.name,this._range=e.range,this.tableMeta=e.meta,this._tableStyleId=e.options.tableStyleId||"",this._showHeader=e.options.showHeader||!0,this._showFooter=e.options.showFooter||!0,e.columns.forEach(a=>{const r=new B(a.id,a.displayName);r.fromJSON(a),this._columns.set(a.id,r),this._columnOrder.push(a.id)}),this._tableFilters=new be,this._tableFilters.fromJSON(e.filters)}dispose(){this._id="",this._name="",this._tableStyleId="",this._showHeader=!0,this._showFooter=!0,delete this._range,this._columns.clear(),this._columnOrder=[]}}var Bt=Object.getOwnPropertyDescriptor,Lt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Bt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Ce=(n,e)=>(t,a)=>e(t,a,n);h.TableManager=class extends u.Disposable{constructor(t,a){super();R(this,"_tableMap");R(this,"_tableAdd$",new N.Subject);R(this,"tableAdd$",this._tableAdd$.asObservable());R(this,"_tableDelete$",new N.Subject);R(this,"tableDelete$",this._tableDelete$.asObservable());R(this,"_tableNameChanged$",new N.Subject);R(this,"tableNameChanged$",this._tableNameChanged$.asObservable());R(this,"_tableRangeChanged$",new N.Subject);R(this,"tableRangeChanged$",this._tableRangeChanged$.asObservable());R(this,"_tableThemeChanged$",new N.Subject);R(this,"tableThemeChanged$",this._tableThemeChanged$.asObservable());R(this,"_tableFilterChanged$",new N.Subject);R(this,"tableFilterChanged$",this._tableFilterChanged$.asObservable());R(this,"_tableInitStatus",new N.BehaviorSubject(!1));R(this,"tableInitStatus$",this._tableInitStatus.asObservable());this._univerInstanceService=t,this._localeService=a,this._tableMap=new Map}_ensureUnit(t){return this._tableMap.has(t)||this._tableMap.set(t,new Map),this._tableMap.get(t)}getColumnHeader(t,a,r,s){var c;const o=(c=this._univerInstanceService.getUnit(t))==null?void 0:c.getSheetBySheetId(a),{startRow:i,startColumn:d,endColumn:l}=r,g=[],m=s!=null?s:"Column";for(let b=d;b<=l;b++)g.push(de(o==null?void 0:o.getCell(i,b))||k(b-d+1,m));return g}addTable(t,a,r,s,o,i,d){const l=i!=null?i:u.generateRandomId(),g=o||this.getColumnHeader(t,a,s),m=new Se(l,r,s,g,d);return m.setSubunitId(a),this._ensureUnit(t).set(l,m),this._tableAdd$.next({unitId:t,subUnitId:a,range:s,tableName:r,tableId:l}),l}addFilter(t,a,r,s){const o=this.getTable(t,a);if(o){o.getTableFilters().setColumnFilter(r,s);const d=o.getSubunitId();this._tableFilterChanged$.next({unitId:t,subUnitId:d,tableId:a})}}getFilterRanges(t,a){const r=this._tableMap.get(t);if(!r)return[];const s=[];return r.forEach(o=>{o.getSubunitId()===a&&o.isShowHeader()&&s.push(o.getRange())}),s}getSheetFilterRangeWithState(t,a){const r=this._tableMap.get(t);if(!r)return[];const s=[];return r.forEach(o=>{o.getSubunitId()===a&&o.isShowHeader()&&s.push({tableId:o.getId(),range:o.getRange(),states:o.getFilterStates(o.getRange())})}),s}getTable(t,a){const r=this._tableMap.get(t);if(r)return r.get(a)}getUniqueTableName(t,a){const r=this._tableMap.get(t);if(!r)return a;const s=new Set(Array.from(r.values()).map(d=>d.getDisplayName()));let o=a,i=1;for(;s.has(o);)o=`${a}-${i}`,i++;return o}getTableById(t,a){return this.getTable(t,a)}getTableList(t){const a=this._tableMap.get(t);return a?Array.from(a.values()).map(r=>({...r.getTableInfo(),unitId:t})):[]}getTablesBySubunitId(t,a){const r=this._tableMap.get(t);return r?Array.from(r.values()).filter(s=>s.getSubunitId()===a):[]}getTablesInfoBySubunitId(t,a){return this.getTablesBySubunitId(t,a).map(r=>({id:r.getId(),name:r.getDisplayName(),range:r.getRange()}))}deleteTable(t,a){const r=this._tableMap.get(t),s=r==null?void 0:r.get(a);if(s){const o=s.getTableInfo(),i=s.getTableStyleId();r==null||r.delete(a);const{subUnitId:d,range:l,name:g}=o;this._tableDelete$.next({unitId:t,subUnitId:d,tableId:a,range:l,tableName:g,tableStyleId:i})}}operationTableRowCol(t,a,r){const s=this.getTableById(t,a);if(!s)return;const{operationType:o,rowColType:i,index:d,count:l,columnsJson:g}=r,m=s.getRange(),c={...m};if(o===_.Insert){if(i==="row")c.endRow+=l;else if(i==="column"){c.endColumn+=l;for(let b=0;b<l;b++){const f=this._localeService.t("sheets-table.columnPrefix"),w=new B(u.generateRandomId(),k(s.getColumnsCount()+1+b,f));g!=null&&g[b]&&w.fromJSON(g[b]);const I=d+b-m.startColumn;s.insertColumn(I,w)}}}else if(i==="row")c.endRow-=l;else if(i==="column"){c.endColumn-=l;for(let b=l-1;b>=0;b--){const f=d+b-m.startColumn;s.removeColumn(f)}}s.setRange(c),this._tableRangeChanged$.next({unitId:t,subUnitId:s.getSubunitId(),tableId:a,range:c,oldRange:m})}updateTableRange(t,a,r){const s=this.getTableById(t,a);if(!s)return;const o=s.getRange(),i=r.newRange;if(i.startColumn<o.startColumn){const d=o.startColumn-i.startColumn,l=this._localeService.t("sheets-table.columnPrefix");for(let g=0;g<d;g++)s.insertColumn(o.startColumn,new B(u.generateRandomId(),k(s.getColumnsCount()+1,l)))}else if(i.startColumn>o.startColumn){const d=i.startColumn-o.startColumn;for(let l=d-1;l>=0;l--){const g=i.startColumn+l-o.startColumn;s.removeColumn(g)}}if(i.endColumn<o.endColumn){const d=o.endColumn-i.endColumn;for(let l=d-1;l>=0;l--){const g=i.endColumn+l-o.startColumn;s.removeColumn(g)}}else if(i.endColumn>o.endColumn){const d=i.endColumn-o.endColumn;for(let l=0;l<d;l++)s.insertColumn(o.endColumn,new B(u.generateRandomId(),k(s.getColumnsCount()+1,"Column")))}s.setRange(i),this._tableRangeChanged$.next({unitId:t,subUnitId:s.getSubunitId(),tableId:a,range:i,oldRange:o})}setTableByConfig(t,a,r){var b;const s=this._tableMap.get(t),o=s==null?void 0:s.get(a);if(!o)return;const i=o.getSubunitId(),{name:d,updateRange:l,rowColOperation:g,theme:m,options:c}=r;if(d){const f=o.getDisplayName();o.setDisplayName(d),this._tableNameChanged$.next({unitId:t,subUnitId:i,tableId:a,tableName:d,oldTableName:f})}if(g&&this.operationTableRowCol(t,a,g),l&&this.updateTableRange(t,a,l),m){const f=(b=o.getTableStyleId())!=null?b:"default";o.setTableStyleId(m),this._tableThemeChanged$.next({unitId:t,subUnitId:i,tableId:a,theme:m,oldTheme:f})}c&&c.showHeader!==void 0&&o.setShowHeader(c.showHeader)}toJSON(t){const a={},r=this._tableMap.get(t);return r&&r.forEach(s=>{const o=s.getSubunitId();if(!a[o]){const i=new Set;this.getTablesBySubunitId(t,o).forEach(l=>{const g=l.getTableFilters().getFilterOutRows();if(g)for(const m of g)i.add(m)}),a[o]={tables:[],tableFilteredOutRows:Array.from(i)}}a[o].tables.push(s.toJSON())}),a}fromJSON(t,a){const r=this._ensureUnit(t);Object.keys(a).forEach(o=>{const i=C.getSheetCommandTarget(this._univerInstanceService,{unitId:t,subUnitId:o});if(!i)return;const d=i.worksheet;let l;a[o].tables?l=a[o].tables:Array.isArray(a[o])&&(l=a[o]),l&&l.forEach(g=>{const m=this.getColumnHeader(t,o,g.range),c=new Se(g.id,g.name,g.range,m,g.options);if(c.setTableMeta(g.meta),g.columns.length&&c.setColumns(g.columns),g.filters){const b=c.getTableFilters();b.fromJSON(g.filters),b.doFilter(d,c.getTableFilterRange())}c.setSubunitId(o),r.set(g.id,c),this._tableAdd$.next({unitId:t,subUnitId:o,range:g.range,tableName:g.name,tableId:g.id})})}),this._tableInitStatus.next(!0)}deleteUnitId(t){this._tableMap.delete(t)}dispose(){super.dispose(),this._tableMap.forEach(t=>{t.forEach(a=>a.dispose()),t.clear()}),this._tableMap.clear()}},h.TableManager=Lt([Ce(0,u.IUniverInstanceService),Ce(1,u.Inject(u.LocaleService))],h.TableManager);var Wt=Object.getOwnPropertyDescriptor,qt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Wt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Pt=(n,e)=>(t,a)=>e(t,a,n);h.SheetTableService=class extends u.Disposable{constructor(e){super(),this._tableManager=e}getTableInfo(e,t){const a=this._tableManager.getTable(e,t);if(a)return{unitId:e,...a.getTableInfo()}}getTableList(e){return this._tableManager.getTableList(e)}addTable(e,t,a,r,s,o,i){return this._tableManager.addTable(e,t,a,r,s,o,i)}deleteTable(e,t,a){this._tableManager.deleteTable(e,a)}getTableMeta(e,t){var a;return(a=this._tableManager.getTable(e,t))==null?void 0:a.getTableMeta()}setTableMeta(e,t,a){var r;(r=this._tableManager.getTable(e,t))==null||r.setTableMeta(a)}getTableColumnMeta(e,t,a){var r,s;return(s=(r=this._tableManager.getTable(e,t))==null?void 0:r.getTableColumnByIndex(a))==null?void 0:s.getMeta()}selTableColumnMeta(e,t,a,r){var s,o;(o=(s=this._tableManager.getTable(e,t))==null?void 0:s.getTableColumnByIndex(a))==null||o.setMeta(r)}addFilter(e,t,a,r){this._tableManager.addFilter(e,t,a,r)}getCellValueWithConditionType(e,t,a,r=O.String){return Y(e,t,a,r)}},h.SheetTableService=qt([Pt(0,u.Inject(h.TableManager))],h.SheetTableService);const H={id:"sheet.mutation.add-table",type:u.CommandType.MUTATION,handler:(n,e)=>{const{tableId:t,unitId:a,subUnitId:r,name:s,range:o,header:i,options:d}=e;return n.get(h.SheetTableService).addTable(a,r,s,o,i,t,d),!0}},J={id:"sheet.mutation.delete-table",type:u.CommandType.MUTATION,handler:(n,e)=>{const{unitId:t,subUnitId:a,tableId:r}=e;return n.get(h.SheetTableService).deleteTable(t,a,r),!0}},Re={id:"sheet.command.add-table",type:u.CommandType.COMMAND,handler:(n,e)=>{var w;if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=n.get(u.LocaleService),s=(w=e.id)!=null?w:u.generateRandomId();let o=e.name;if(!o){const T=n.get(h.TableManager).getTableList(e.unitId).length;o=`${r.t("sheets-table.tablePrefix")}${T+1}`}const i=[],d=[],l=n.get(h.TableManager),{unitId:g,subUnitId:m,range:c}=e,b=l.getColumnHeader(g,m,c,r.t("sheets-table.columnPrefix"));return i.push({id:H.id,params:{...e,tableId:s,name:o,header:b}}),d.push({id:J.id,params:{tableId:s,unitId:e.unitId}}),u.sequenceExecute(i,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:d,redoMutations:i}),!0}},we={id:"sheet.command.delete-table",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=n.get(h.TableManager),s=[],o=[],i=r.getTable(e.unitId,e.tableId),d=i==null?void 0:i.toJSON();if(!d)throw new Error("[TableManager]: Table not found");return s.push({id:J.id,params:{...e}}),o.push({id:H.id,params:{unitId:e.unitId,subUnitId:e.subUnitId,tableId:e.tableId,name:d.name,range:d.range,options:d.options}}),u.sequenceExecute(s,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:o,redoMutations:s}),!0}},j={id:"sheet.mutation.set-table-filter",type:u.CommandType.MUTATION,handler:(n,e)=>{const{tableId:t,unitId:a,column:r,tableFilter:s}=e;return n.get(h.TableManager).addFilter(a,t,r,s),!0}},Te={id:"sheet.command.set-table-filter",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=e.tableId||u.generateRandomId(),s=[],o=[];return s.push({id:j.id,params:{...e,tableId:r}}),o.push({id:j.id,params:{...e,tableId:r,tableFilter:void 0}}),u.sequenceExecute(s,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:o,redoMutations:s}),!0}},fe="SHEET_TABLE_PLUGIN",G="SHEET_TABLE",Ie="table-custom";var Vt=Object.getOwnPropertyDescriptor,Ht=(n,e,t,a)=>{for(var r=a>1?void 0:a?Vt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},re=(n,e)=>(t,a)=>e(t,a,n);h.SheetsTableController=class extends u.Disposable{constructor(t,a,r){super();R(this,"_tableRangeRTree",new Map);this._sheetInterceptorService=t,this._tableManager=a,this._resourceManagerService=r,this._initSnapshot(),this.registerTableChangeEvent(),this.registerTableHeaderInterceptor()}getContainerTableWithRange(t,a,r){const s=this._ensureTableRangeRTree(t),i=Array.from(s.bulkSearch([{unitId:t,sheetId:a,range:r}])).find(d=>{const l=this._tableManager.getTable(t,String(d));return l?u.Rectangle.contains(l.getRange(),r):!1});if(i)return this._tableManager.getTable(t,String(i))}_ensureTableRangeRTree(t){return this._tableRangeRTree.has(t)||this._tableRangeRTree.set(t,new u.RTree),this._tableRangeRTree.get(t)}registerTableChangeEvent(){this.disposeWithMe(this._tableManager.tableAdd$.subscribe(t=>{const{range:a,tableId:r,unitId:s,subUnitId:o}=t;this._ensureTableRangeRTree(s).insert({unitId:s,sheetId:o,id:r,range:{...a}})})),this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(t=>{const{range:a,tableId:r,unitId:s,subUnitId:o,oldRange:i}=t,d=this._ensureTableRangeRTree(s);d.remove({unitId:s,sheetId:o,id:r,range:{...i}}),d.insert({unitId:s,sheetId:o,id:r,range:{...a}})})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(t=>{const{tableId:a,unitId:r,subUnitId:s,range:o}=t;this._ensureTableRangeRTree(r).remove({unitId:r,sheetId:s,id:a,range:{...o}})}))}registerTableHeaderInterceptor(){this.disposeWithMe(this._sheetInterceptorService.intercept(C.INTERCEPTOR_POINT.CELL_CONTENT,{effect:u.InterceptorEffectEnum.Value,handler:(t,a,r)=>{const{row:s,col:o,unitId:i,subUnitId:d}=a,l=this._ensureTableRangeRTree(i);if((t==null?void 0:t.v)===void 0&&l){const m=Array.from(l.bulkSearch([{unitId:i,sheetId:d,range:{startColumn:o,endColumn:o,startRow:s,endRow:s}}]));if(m.length>0){const c=this._tableManager.getTable(i,m[0]);if(c){const b=c.getRange(),f=o-b.startColumn;if(b.startRow===s){const I=c.getColumnNameByIndex(f);return(!t||t===a.rawData)&&(t={...a.rawData}),t.v=I,r(t)}}}}return r(t)}}))}_toJson(t){return this._tableManager.toJSON(t)}_fromJSON(t,a){return this._tableManager.fromJSON(t,a)}_deleteUnitId(t){this._tableManager.deleteUnitId(t)}_initSnapshot(){this.disposeWithMe(this._resourceManagerService.registerPluginResource({toJson:t=>JSON.stringify(this._toJson(t)),parseJson:t=>{if(!t)return{};try{return JSON.parse(t)}catch{return{}}},businesses:[u.UniverInstanceType.UNIVER_SHEET],pluginName:fe,onLoad:(t,a)=>{this._fromJSON(t,a)},onUnLoad:t=>{this._deleteUnitId(t)}}))}dispose(){super.dispose(),this._tableRangeRTree.clear()}},h.SheetsTableController=Ht([re(0,u.Inject(C.SheetInterceptorService)),re(1,u.Inject(h.TableManager)),re(2,u.Inject(u.IResourceManagerService))],h.SheetsTableController);const p={id:"sheet.mutation.set-sheet-table",type:u.CommandType.MUTATION,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,config:r}=e;return n.get(h.TableManager).setTableByConfig(t,a,r),!0}},pe={id:"sheet.command.add-table-theme",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(h.TableManager),{unitId:a,tableId:r,themeStyle:s}=e,o=[],i=[],d=t.getTableById(a,r);if(!d)return!1;const l=d.getSubunitId();o.push({id:C.AddRangeThemeMutation.id,params:{unitId:a,subUnitId:l,styleJSON:s.toJson()}}),o.push({id:p.id,params:{unitId:a,subUnitId:l,tableId:r,config:{theme:s.getName()}}}),i.push({id:p.id,params:{unitId:a,subUnitId:l,tableId:r,config:{themeStyle:d.getTableStyleId()}}}),i.push({id:C.RemoveRangeThemeMutation.id,params:{unitId:a,subUnitId:l,styleName:s.getName()}});const g=n.get(u.ICommandService);return u.sequenceExecute(o,g)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:a,undoMutations:i,redoMutations:o}),!0}},_e={id:"sheet.command.remove-table-theme",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,themeName:r}=e,s=n.get(h.TableManager),o=n.get(C.SheetRangeThemeModel),i=s.getTableById(t,a);if(!i)return!1;const d=i.getSubunitId(),l=[],g=[],m=o.getRegisteredRangeThemes().filter(T=>T==null?void 0:T.startsWith("table-default"));let b=o.getRegisteredRangeThemes().filter(T=>T==null?void 0:T.startsWith(Ie)).find(T=>T!==r);b||(b=m[0]),l.push({id:p.id,params:{unitId:t,subUnitId:d,tableId:a,config:{theme:b}}}),l.push({id:C.RemoveRangeThemeMutation.id,params:{unitId:t,subUnitId:d,styleName:r}});const f=o.getDefaultRangeThemeStyle(r);f&&(g.push({id:C.AddRangeThemeMutation.id,params:{unitId:t,subUnitId:d,styleJSON:f.toJson()}}),g.push({id:p.id,params:{unitId:t,subUnitId:d,tableId:a,config:{theme:r}}}));const w=n.get(u.ICommandService);return u.sequenceExecute(l,w)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:t,redoMutations:l,undoMutations:g}),!0}},ve={id:"sheet.command.set-table-config",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,name:r,updateRange:s,rowColOperation:o,theme:i}=e,l=n.get(h.TableManager).getTableById(t,a);if(!l)return!1;const g={},m={},c=n.get(u.LocaleService),f=n.get(u.IUniverInstanceService).getCurrentUnitOfType(u.UniverInstanceType.UNIVER_SHEET),w=new Set;if(f&&f.getSheets().forEach(x=>{w.add(x.getName())}),r){if(!u.customNameCharacterCheck(r,w))return n.get(u.ILogService).warn(c.t("sheets-table.tableNameError")),!1;g.name=l.getDisplayName(),m.name=r}o&&(g.rowColOperation={operationType:o.operationType===_.Insert?_.Delete:_.Insert,rowColType:o.rowColType,index:o.index,count:o.count},m.rowColOperation=o),s&&(g.updateRange={newRange:l.getRange()},m.updateRange=s),i&&(g.theme=l.getTableStyleId(),m.theme=i);const I={unitId:t,subUnitId:l.getSubunitId(),tableId:a,config:m};return n.get(u.ICommandService).executeCommand(p.id,I),n.get(u.IUndoRedoService).pushUndoRedo({unitID:t,undoMutations:[{id:p.id,params:{unitId:t,subUnitId:l.getSubunitId(),tableId:a,config:g}}],redoMutations:[{id:p.id,params:I}]}),!0}},Me={id:"sheet.command.table-insert-row",type:u.CommandType.COMMAND,handler:n=>{const e=n.get(u.IUniverInstanceService),t=C.getSheetCommandTarget(e);if(!t)return!1;const{workbook:a,worksheet:r,unitId:s,subUnitId:o}=t,d=n.get(C.SheetsSelectionsService).getCurrentSelections();if(!d.length||d.length>1)return!1;n.get(h.TableManager);const g=d[0].range,c=n.get(h.SheetsTableController).getContainerTableWithRange(s,o,g);if(!c)return!1;const b=g.endRow-g.startRow+1,w=r.getRowCount()-1,I=r.getCellMatrix().getDataRange().endRow,T=[],v=[];if(w-I<b)T.push({id:C.InsertRowMutation.id,params:{unitId:s,subUnitId:o,range:{...g}}}),T.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...c.getRange(),endRow:c.getRange().endRow+b}}}}}),v.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:c.getRange()}}}}),v.push({id:C.RemoveRowMutation.id,params:{unitId:s,subUnitId:o,range:{...g}}});else{const M={...c.getRange()};T.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...M,endRow:M.endRow+b}}}}}),v.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...M}}}}});const Q=C.getMoveRangeUndoRedoMutations(n,{unitId:s,subUnitId:o,range:{startRow:g.startRow,endRow:I,startColumn:M.startColumn,endColumn:M.endColumn}},{unitId:s,subUnitId:o,range:{startRow:g.startRow+b,endRow:I+b,startColumn:M.startColumn,endColumn:M.endColumn}});Q&&(T.push(...Q.redos),v.push(...Q.undos))}const x=n.get(u.ICommandService);return u.sequenceExecute(T,x)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:s,undoMutations:v,redoMutations:T}),!0}},Fe={id:"sheet.command.table-insert-col",type:u.CommandType.COMMAND,handler:n=>{const e=n.get(u.IUniverInstanceService),t=C.getSheetCommandTarget(e);if(!t)return!1;const{worksheet:a,unitId:r,subUnitId:s}=t,i=n.get(C.SheetsSelectionsService).getCurrentSelections();if(!i.length||i.length>1)return!1;const l=i[0].range,m=n.get(h.SheetsTableController).getContainerTableWithRange(r,s,l);if(!m)return!1;const c=l.endColumn-l.startColumn+1,f=a.getColumnCount()-1,w=a.getCellMatrix().getDataRange().endColumn,I=[],T=[];if(f-w<c)I.push({id:C.InsertColMutation.id,params:{unitId:r,subUnitId:s,range:{...l}}}),I.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:l.startColumn,count:c}}}}),T.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:l.startColumn,count:c}}}}),T.push({id:C.RemoveColMutation.id,params:{unitId:r,subUnitId:s,range:{...l}}});else{const y=m.getRange();I.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:l.startColumn,count:c}}}}),T.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:l.startColumn,count:c}}}});const M=C.getMoveRangeUndoRedoMutations(n,{unitId:r,subUnitId:s,range:{startRow:y.startRow,endRow:y.endRow,startColumn:l.startColumn,endColumn:w}},{unitId:r,subUnitId:s,range:{startRow:y.startRow,endRow:y.endRow,startColumn:l.startColumn+c,endColumn:w+c}});M&&(I.push(...M.redos),T.push(...M.undos))}const v=n.get(u.ICommandService);return u.sequenceExecute(I,v)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:r,undoMutations:T,redoMutations:I}),!0}},ye={id:"sheet.command.table-remove-row",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUniverInstanceService),a=C.getSheetCommandTarget(t);if(!a)return!1;const{unitId:r,subUnitId:s}=a,i=n.get(C.SheetsSelectionsService).getCurrentSelections();if(!i.length||i.length>1)return!1;const l=i[0].range,m=n.get(h.SheetsTableController).getContainerTableWithRange(r,s,l);if(!m)return!1;const c=l.endRow-l.startRow+1,b=[],f=[],w=m.getRange();b.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{updateRange:{newRange:{...w,endRow:w.endRow-c}}}}}),f.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{updateRange:{newRange:{...w}}}}});const T=a.worksheet.getCellMatrix().getDataRange().endRow,v=C.getMoveRangeUndoRedoMutations(n,{unitId:r,subUnitId:s,range:{startRow:l.endRow+1,endRow:T,startColumn:w.startColumn,endColumn:w.endColumn}},{unitId:r,subUnitId:s,range:{startRow:l.startRow,endRow:T-c,startColumn:w.startColumn,endColumn:w.endColumn}});v&&(b.push(...v.redos),f.push(...v.undos));const x=n.get(u.ICommandService);return u.sequenceExecute(b,x)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:r,undoMutations:f,redoMutations:b}),!0}},De={id:"sheet.command.table-remove-col",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUniverInstanceService),a=C.getSheetCommandTarget(t);if(!a)return!1;const{workbook:r,unitId:s,subUnitId:o}=a;n.get(h.TableManager);const d=n.get(C.SheetsSelectionsService).getCurrentSelections();if(!d.length||d.length>1)return!1;const g=d[0].range,c=n.get(h.SheetsTableController).getContainerTableWithRange(s,o,g);if(!c)return!1;const b=g.endColumn-g.startColumn+1,f=[],w=[],I=c.getRange();f.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:g.startColumn,count:b}}}});const T=[],v=g.startColumn-I.startColumn;for(let te=0;te<b;te++){const Ue=c.getTableInfo().columns[v+te];Ue&&T.push(Ue)}w.push({id:p.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:g.startColumn,count:b,columnsJson:T}}}});const y=a.worksheet.getCellMatrix().getDataRange().endColumn,M=C.getMoveRangeUndoRedoMutations(n,{unitId:s,subUnitId:o,range:{startRow:I.startRow,endRow:I.endRow,startColumn:g.endColumn+1,endColumn:y}},{unitId:s,subUnitId:o,range:{startRow:I.startRow,endRow:I.endRow,startColumn:g.startColumn,endColumn:y-b}});M&&(f.push(...M.redos),w.push(...M.undos));const Q=n.get(u.ICommandService);return u.sequenceExecute(f,Q)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:s,undoMutations:w,redoMutations:f}),!0}},Jt="sheets-table.config",Ne={};var kt=Object.getOwnPropertyDescriptor,Qt=(n,e,t,a)=>{for(var r=a>1?void 0:a?kt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Oe=(n,e)=>(t,a)=>e(t,a,n);let z=class extends u.Disposable{constructor(n,e){super(),this._tableManager=n,this._exclusiveRangeService=e,this._initRangeListener()}_initRangeListener(){this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(n=>{const{range:e,tableId:t,unitId:a,subUnitId:r}=n;this._exclusiveRangeService.clearExclusiveRangesByGroupId(a,r,G,t),this._exclusiveRangeService.addExclusiveRange(a,r,G,[{range:{...e},groupId:t}])})),this.disposeWithMe(this._tableManager.tableAdd$.subscribe(n=>{const{tableId:e,unitId:t,subUnitId:a,range:r}=n;this._exclusiveRangeService.addExclusiveRange(t,a,G,[{range:{...r},groupId:e}])})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(n=>{const{tableId:e,unitId:t,subUnitId:a}=n;this._exclusiveRangeService.clearExclusiveRangesByGroupId(t,a,G,e)}))}};z=Qt([Oe(0,u.Inject(h.TableManager)),Oe(1,u.Inject(C.IExclusiveRangeService))],z);var Yt=Object.getOwnPropertyDescriptor,jt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Yt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},L=(n,e)=>(t,a)=>e(t,a,n);let K=class extends u.Disposable{constructor(n,e,t,a,r,s,o){super(),this._commandService=n,this._refRangeService=e,this._univerInstanceService=t,this._injector=a,this._sheetInterceptorService=r,this._tableManager=s,this._localeService=o,this._initCommandInterceptor(),this._initCommandListener()}_initCommandInterceptor(){const n=this;this._sheetInterceptorService.interceptCommand({getMutations(e){const t={redos:[],undos:[]},{id:a,params:r}=e;switch(a){case C.InsertRowCommand.id:return n._generateTableMutationWithInsertRow(r);case C.InsertColCommand.id:return n._generateTableMutationWithInsertCol(r);case C.RemoveRowCommand.id:return n._generateTableMutationWithRemoveRow(r);case C.RemoveColCommand.id:return n._generateTableMutationWithRemoveCol(r)}return t}})}_generateTableMutationWithInsertRow(n){const e=[],t=[],a=C.getSheetCommandTarget(this._univerInstanceService);if(!a)return{undos:e,redos:t};const{unitId:r,subUnitId:s}=a,o=this._tableManager.getTablesBySubunitId(r,s);if(!o.length)return{undos:e,redos:t};const{range:i}=n;return o.forEach(d=>{const l=d.getRange();if(i.startRow>l.startRow&&i.startRow<=l.endRow){const g=i.endRow-i.startRow+1;t.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{updateRange:{newRange:{...l,endRow:l.endRow+g}}}}}),e.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{updateRange:{newRange:{...l}}}}})}}),{undos:e,redos:t}}_generateTableMutationWithInsertCol(n){const e=[],t=[],a=C.getSheetCommandTarget(this._univerInstanceService);if(!a)return{undos:e,redos:t};const{unitId:r,subUnitId:s}=a,o=this._tableManager.getTablesBySubunitId(r,s);if(!o.length)return{undos:e,redos:t};const{range:i}=n;return o.forEach(d=>{const l=d.getRange();if(i.startColumn>l.startColumn&&i.startColumn<=l.endColumn){const g=i.endColumn-i.startColumn+1;t.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:i.startColumn,count:g}}}}),e.push({id:p.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:i.startColumn,count:g}}}})}}),{undos:e,redos:t}}_generateTableMutationWithRemoveRow(n){const e=[],t=[],a=[],r=[],s=C.getSheetCommandTarget(this._univerInstanceService);if(!s)return{undos:e,redos:t,preRedos:a,preUndos:r};const{unitId:o,subUnitId:i}=s,d=this._tableManager.getTablesBySubunitId(o,i);if(!d.length)return{undos:e,redos:t,preRedos:a,preUndos:r};const{range:l}=n,g=l.endRow-l.startRow+1;return d.forEach(m=>{const c=m.getRange();if(u.Rectangle.intersects(c,l))if(l.startRow<=c.startRow&&l.endRow>=c.startRow){a.push({id:J.id,params:{unitId:o,subUnitId:i,tableId:m.getId()}});const b=m.toJSON();e.push({id:H.id,params:{unitId:o,subUnitId:i,tableId:b.id,name:b.name,range:b.range,options:b.options}})}else l.startRow>c.startRow&&l.startRow<=c.endRow?(t.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c,endRow:c.endRow-g}}}}}),e.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c}}}}})):l.startRow<c.endRow&&l.endRow>=c.endRow&&(t.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c,endRow:l.startRow-1}}}}}),e.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c}}}}}))}),{undos:e,redos:t,preRedos:a,preUndos:r}}_generateTableMutationWithRemoveCol(n){const e=[],t=[],a=[],r=[],s=C.getSheetCommandTarget(this._univerInstanceService);if(!s)return{undos:e,redos:t,preRedos:a,preUndos:r};const{unitId:o,subUnitId:i}=s,d=this._tableManager.getTablesBySubunitId(o,i);if(!d.length)return{undos:e,redos:t,preRedos:a,preUndos:r};const{range:l}=n,g=l.endColumn-l.startColumn+1;return d.forEach(m=>{const c=m.getRange();if(u.Rectangle.intersects(c,l)){if(l.startColumn<=c.startColumn&&l.endColumn>=c.endColumn){a.push({id:J.id,params:{unitId:o,subUnitId:i,tableId:m.getId()}});const b=m.toJSON(),{startRow:f,startColumn:w,endColumn:I}=b.range,T=this._univerInstanceService.getUnit(o),v=T==null?void 0:T.getSheetBySheetId(i);if(!v)return{undos:e,redos:t,preRedos:a,preUndos:r};const x=[];for(let y=w;y<=I;y++)x.push(de(v==null?void 0:v.getCell(f,y))||k(y-w+1,this._localeService.t("sheets-table.columnPrefix")));e.push({id:H.id,params:{unitId:o,subUnitId:i,tableId:b.id,name:b.name,header:x,range:b.range,options:b.options}})}else if(l.startColumn<=c.startColumn&&l.endColumn>=c.startColumn){const b=l.endColumn-c.startColumn+1;t.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:c.startColumn,count:b}}}});const f=[];for(let w=0;w<b;w++){const I=m.getTableColumnByIndex(w);I&&f.push(I.toJSON())}e.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:c.startColumn,count:b,columnsJson:f}}}})}else if(l.startColumn>c.startColumn&&l.endColumn>c.endColumn){const b=c.endColumn-l.startColumn+1;t.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:l.startColumn,count:b}}}});const f=[],w=l.startColumn-c.startColumn;for(let I=0;I<b;I++){const T=m.getTableColumnByIndex(I+w);T&&f.push(T.toJSON())}e.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:l.startColumn,count:g,columnsJson:f}}}})}else if(l.startColumn>c.startColumn&&l.endColumn<=c.endColumn){t.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Delete,rowColType:D.Col,index:l.startColumn,count:g}}}});const b=[],f=l.startColumn-c.startColumn;for(let w=0;w<g;w++){const I=m.getTableColumnByIndex(w+f);I&&b.push(I.toJSON())}e.push({id:p.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:_.Insert,rowColType:D.Col,index:l.startColumn,count:g,columnsJson:b}}}})}}}),{undos:e,redos:t,preRedos:a,preUndos:r}}_initCommandListener(){this._commandService.onCommandExecuted(n=>{if(n.id===C.InsertRowMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endRow-r.startRow+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startRow<=d.startRow&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startRow:d.startRow+s,endRow:d.endRow+s}})})}else if(n.id===C.InsertColMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endColumn-r.startColumn+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startColumn<=d.startColumn&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startColumn:d.startColumn+s,endColumn:d.endColumn+s}})})}else if(n.id===C.RemoveRowMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endRow-r.startRow+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startRow<d.startRow&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startRow:d.startRow-s,endRow:d.endRow-s}})})}else if(n.id===C.RemoveColMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endColumn-r.startColumn+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startColumn<d.startColumn&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startColumn:d.startColumn-s,endColumn:d.endColumn-s}})})}})}};K=jt([L(0,u.Inject(u.ICommandService)),L(1,u.Inject(C.RefRangeService)),L(2,u.Inject(u.IUniverInstanceService)),L(3,u.Inject(u.Injector)),L(4,u.Inject(C.SheetInterceptorService)),L(5,u.Inject(h.TableManager)),L(6,u.Inject(u.LocaleService))],K);var Gt=Object.getOwnPropertyDescriptor,zt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Gt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},se=(n,e)=>(t,a)=>e(t,a,n);let X=class extends u.Disposable{constructor(n,e,t){super(),this._tableManager=n,this._sheetRangeThemeService=e,this._sheetRangeThemeModel=t,this.registerTableChangeEvent(),this._initDefaultTableTheme()}registerTableChangeEvent(){this.disposeWithMe(this._tableManager.tableAdd$.subscribe(n=>{const{range:e,tableId:t,unitId:a,subUnitId:r}=n,o=this._tableManager.getTable(a,t).getTableStyleId()||q[0].name;this._sheetRangeThemeService.registerRangeThemeStyle(o,{unitId:a,subUnitId:r,range:{...e}})})),this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(n=>{const{range:e,oldRange:t,tableId:a,unitId:r,subUnitId:s}=n,i=this._tableManager.getTable(r,a).getTableStyleId()||q[0].name;this._sheetRangeThemeService.removeRangeThemeRule(i,{unitId:r,subUnitId:s,range:{...t}}),this._sheetRangeThemeService.registerRangeThemeStyle(i,{unitId:r,subUnitId:s,range:{...e}})})),this.disposeWithMe(this._tableManager.tableThemeChanged$.subscribe(n=>{const{theme:e,oldTheme:t,tableId:a,unitId:r,subUnitId:s}=n,i=this._tableManager.getTable(r,a).getRange();this._sheetRangeThemeService.removeRangeThemeRule(t,{unitId:r,subUnitId:s,range:{...i}}),this._sheetRangeThemeService.registerRangeThemeStyle(e,{unitId:r,subUnitId:s,range:{...i}})})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(n=>{const{range:e,unitId:t,subUnitId:a,tableStyleId:r=q[0].name}=n;this._sheetRangeThemeService.removeRangeThemeRule(r,{unitId:t,subUnitId:a,range:{...e}})}))}_initDefaultTableTheme(){for(let n=0;n<q.length;n++){const{name:e,style:t}=q[n],a=new C.RangeThemeStyle(e,t);this._sheetRangeThemeModel.registerDefaultRangeTheme(a)}}dispose(){super.dispose()}};X=zt([se(0,u.Inject(h.TableManager)),se(1,u.Inject(C.SheetRangeThemeService)),se(2,u.Inject(C.SheetRangeThemeModel))],X);var Kt=Object.getOwnPropertyDescriptor,Xt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Kt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},oe=(n,e)=>(t,a)=>e(t,a,n);let Z=class extends u.Disposable{constructor(e,t,a){super();R(this,"_tableFilteredOutRows$",new N.BehaviorSubject(new Set));R(this,"tableFilteredOutRows$",this._tableFilteredOutRows$.asObservable());R(this,"_subscription",null);this._tableManager=e,this._sheetInterceptorService=t,this._univerInstanceService=a,this.registerFilterChangeEvent(),this.initTableHiddenRowIntercept(),this._initFilteredOutRows()}get tableFilteredOutRows(){return this._tableFilteredOutRows$.value}set tableFilteredOutRows(e){this._tableFilteredOutRows$.next(e)}initTableHiddenRowIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(C.INTERCEPTOR_POINT.ROW_FILTERED,{priority:100,handler:(e,t,a)=>{if(e)return!0;const r=this.tableFilteredOutRows.has(t.row);return r?!0:a(r)}}))}_initFilteredOutRows(){this._tableManager.tableInitStatus$.pipe(N.filter(e=>e),N.switchMap(()=>this._univerInstanceService.getCurrentTypeOfUnit$(u.UniverInstanceType.UNIVER_SHEET)),N.filter(e=>e!=null),N.switchMap(e=>e.activeSheet$),N.filter(e=>e!=null)).subscribe(()=>{const e=C.getSheetCommandTarget(this._univerInstanceService);if(!e)return;const{unitId:t,subUnitId:a}=e;this.tableFilteredOutRows.clear(),this._tableManager.getTablesBySubunitId(t,a).forEach(s=>{const o=s.getTableFilters().getFilterOutRows();if(o)for(const i of o)this.tableFilteredOutRows.add(i)})})}registerFilterChangeEvent(){this.disposeWithMe(this._tableManager.tableFilterChanged$.subscribe(e=>{var l;const{unitId:t,subUnitId:a,tableId:r}=e,s=(l=this._univerInstanceService.getUnit(t))==null?void 0:l.getSheetBySheetId(a),o=this._tableManager.getTable(t,r);if(!s||!o)return;this.tableFilteredOutRows.clear(),o.getTableFilters().doFilter(s,o.getTableFilterRange()),this._tableManager.getTablesBySubunitId(t,a).forEach(g=>{const m=g.getTableFilters().getFilterOutRows();if(m)for(const c of m)this.tableFilteredOutRows.add(c)})}))}dispose(){var e;super.dispose(),(e=this._subscription)==null||e.unsubscribe()}};Z=Xt([oe(0,u.Inject(h.TableManager)),oe(1,u.Inject(C.SheetInterceptorService)),oe(2,u.Inject(u.IUniverInstanceService))],Z);var Zt=Object.getOwnPropertyDescriptor,en=(n,e,t,a)=>{for(var r=a>1?void 0:a?Zt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},ie=(n,e)=>(t,a)=>e(t,a,n);h.UniverSheetsTablePlugin=(ee=class extends u.Plugin{constructor(e=Ne,t,a,r){super(),this._config=e,this._injector=t,this._configService=a,this._commandService=r;const{...s}=u.merge({},Ne,this._config);this._configService.setConfig(Jt,s),this._initRegisterCommand()}onStarting(){u.registerDependencies(this._injector,[[h.TableManager],[X],[h.SheetsTableController],[h.SheetTableService],[Z],[z],[K]]),u.touchDependencies(this._injector,[[z],[K],[X],[h.SheetsTableController],[h.SheetTableService],[Z]])}onReady(){u.touchDependencies(this._injector,[[h.TableManager]])}_initRegisterCommand(){[Re,H,we,J,j,Te,ve,p,pe,_e,Me,Fe,ye,De].forEach(e=>this._commandService.registerCommand(e))}},R(ee,"pluginName",fe),R(ee,"type",u.UniverInstanceType.UNIVER_SHEET),ee),h.UniverSheetsTablePlugin=en([ie(1,u.Inject(u.Injector)),ie(2,u.IConfigService),ie(3,u.Inject(u.ICommandService))],h.UniverSheetsTablePlugin),h.AddSheetTableCommand=Re,h.AddSheetTableMutation=H,h.AddTableThemeCommand=pe,h.DeleteSheetTableCommand=we,h.DeleteSheetTableMutation=J,h.RemoveTableThemeCommand=_e,h.SHEET_TABLE_CUSTOM_THEME_PREFIX=Ie,h.SetSheetTableCommand=ve,h.SetSheetTableFilterCommand=Te,h.SetSheetTableFilterMutation=j,h.SetSheetTableMutation=p,h.SheetTableInsertColCommand=Fe,h.SheetTableInsertRowCommand=Me,h.SheetTableRemoveColCommand=De,h.SheetTableRemoveRowCommand=ye,h.SheetsTableButtonStateEnum=$,h.SheetsTableSortStateEnum=A,h.TableColumnDataTypeEnum=ne,h.TableColumnFilterTypeEnum=W,h.TableConditionTypeEnum=O,h.TableDateCompareTypeEnum=S,h.TableNumberCompareTypeEnum=F,h.TableStringCompareTypeEnum=E,h.customEmptyThemeWithBorderStyle=Ae,h.isConditionFilter=ce,h.isManualFilter=$e,h.processStyleWithBorderStyle=Be,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})});
2
+ (function(g,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets","rxjs"],u):(g=typeof globalThis<"u"?globalThis:g||self,u(g.UniverSheetsTable={},g.UniverCore,g.UniverSheets,g.rxjs))})(this,function(g,u,T,N){"use strict";var tn=Object.defineProperty;var nn=(g,u,T)=>u in g?tn(g,u,{enumerable:!0,configurable:!0,writable:!0,value:T}):g[u]=T;var C=(g,u,T)=>nn(g,typeof u!="symbol"?u+"":u,T);var ee;var p=(n=>(n.Insert="insert",n.Delete="delete",n))(p||{}),D=(n=>(n.Row="row",n.Col="column",n))(D||{}),ne=(n=>(n.None="none",n.String="string",n.Number="number",n.Date="date",n.Bool="bool",n.Checkbox="checkbox",n.List="list",n))(ne||{}),W=(n=>(n.manual="manual",n.condition="condition",n))(W||{}),O=(n=>(n.Date="date",n.Number="number",n.String="string",n.Logic="logic",n))(O||{}),F=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.GreaterThan="greaterThan",n.GreaterThanOrEqual="greaterThanOrEqual",n.LessThan="lessThan",n.LessThanOrEqual="lessThanOrEqual",n.Between="between",n.NotBetween="notBetween",n.Above="above",n.Below="below",n.TopN="topN",n))(F||{}),E=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.Contains="contains",n.NotContains="notContains",n.StartsWith="startsWith",n.EndsWith="endsWith",n))(E||{}),S=(n=>(n.Equal="equal",n.NotEqual="notEqual",n.After="after",n.AfterOrEqual="afterOrEqual",n.Before="before",n.BeforeOrEqual="beforeOrEqual",n.Between="between",n.NotBetween="notBetween",n.Today="today",n.Yesterday="yesterday",n.Tomorrow="tomorrow",n.ThisWeek="thisWeek",n.LastWeek="lastWeek",n.NextWeek="nextWeek",n.ThisMonth="thisMonth",n.LastMonth="lastMonth",n.NextMonth="nextMonth",n.ThisQuarter="thisQuarter",n.LastQuarter="lastQuarter",n.NextQuarter="nextQuarter",n.ThisYear="thisYear",n.LastYear="lastYear",n.NextYear="nextYear",n.YearToDate="yearToDate",n.Quarter="quarter",n.Month="month",n.M1="m1",n.M2="m2",n.M3="m3",n.M4="m4",n.M5="m5",n.M6="m6",n.M7="m7",n.M8="m8",n.M9="m9",n.M10="m10",n.M11="m11",n.M12="m12",n.Q1="q1",n.Q2="q2",n.Q3="q3",n.Q4="q4",n))(S||{}),$=(n=>(n[n.FilteredSortNone=1]="FilteredSortNone",n[n.FilteredSortAsc=2]="FilteredSortAsc",n[n.FilteredSortDesc=3]="FilteredSortDesc",n[n.FilterNoneSortNone=4]="FilterNoneSortNone",n[n.FilterNoneSortAsc=5]="FilterNoneSortAsc",n[n.FilterNoneSortDesc=6]="FilterNoneSortDesc",n))($||{}),A=(n=>(n.Asc="asc",n.Desc="desc",n.None="none",n))(A||{});function J(n,e){return`${e} ${n}`}const ie="TRUE",le="FALSE",Ee=n=>{var t;return((t=n.body)==null?void 0:t.dataStream.replace(/\r\n$/,""))||""};function ue(n){if(n){const{v:e,t,p:a}=n;return a?Ee(a):(t===u.CellValueType.FORCE_STRING||t===u.CellValueType.STRING)&&e!==void 0&&e!==null?String(e):t===u.CellValueType.BOOLEAN?e?ie:le:t===u.CellValueType.NUMBER?String(e):typeof e==="boolean"?e?ie:le:e==null?"":String(e)}return""}function $e(n,e){if(n!=null)switch(e){case A.Asc:return $.FilteredSortAsc;case A.Desc:return $.FilteredSortDesc;default:return $.FilteredSortNone}else switch(e){case A.Asc:return $.FilterNoneSortAsc;case A.Desc:return $.FilterNoneSortDesc;default:return $.FilterNoneSortNone}}function de(n){return n?n.filterType===W.condition:!1}function Ae(n){return n?n.filterType===W.manual:!1}const U={s:u.BorderStyleTypes.THIN,cl:{rgb:"rgb(95 101 116)"}},ce="sheets-table.config",he={},Be={headerRowStyle:{bd:{t:U}},headerColumnStyle:{bd:{l:U}},lastColumnStyle:{bd:{r:U}},lastRowStyle:{bd:{b:U}}},Le=(n,e)=>{if(n==="headerRowStyle"){if(!e.bd)return{...e,bd:{t:U}}}else if(n==="lastRowStyle"){if(!e.bd)return{...e,bd:{b:U}}}else if(n==="lastColumnStyle"){if(!e.bd)return{...e,bd:{r:U}}}else if(n==="headerColumnStyle"&&!e.bd)return{...e,bd:{l:U}};return e},ge=[[["#6280F9","#FFFFFF","#BAC6F8","#D2DAFA"],["#fff"]],[["#16BDCA","#FFFFFF","#EDFAFA","#AFECEF"],["#000"]],[["#31C48D","#FFFFFF","#F3FAF7","#BCF0DA"],["#fff"]],[["#AC94FA","#FFFFFF","#F6F5FF","#EDEBFE"],["#fff"]],[["#F17EBB","#FFFFFF","#FDF2F8","#FCE8F3"],["#fff"]],[["#F98080","#FFFFFF","#FDF2F2","#FDE8E8"],["#fff"]]].map((n,e)=>{const[t,a]=n,[r,s,o,i]=t,[d]=a;return{name:`table-default-${e}`,style:{headerRowStyle:{bg:{rgb:r},cl:{rgb:d},bd:{t:U}},headerColumnStyle:{bd:{l:U}},firstRowStyle:{bg:{rgb:s}},secondRowStyle:{bg:{rgb:o}},lastRowStyle:{bg:{rgb:i},bd:{b:U}},lastColumnStyle:{bd:{r:U}}}}});class B{constructor(e,t){C(this,"dataType");C(this,"id");C(this,"displayName");C(this,"formula");C(this,"meta");C(this,"style");this.id=e,this.displayName=t,this.dataType=ne.String,this.formula="",this.meta={},this.style={}}getMeta(){return this.meta}setMeta(e){this.meta=e}getDisplayName(){return this.displayName}toJSON(){return{id:this.id,displayName:this.displayName,dataType:this.dataType,formula:this.formula,meta:this.meta,style:this.style}}fromJSON(e){this.id=e.id,this.displayName=e.displayName,this.dataType=e.dataType,this.formula=e.formula,this.meta=e.meta,this.style=e.style}}const We=n=>n.getMonth()<=2,qe=n=>{const e=n.getMonth();return e>2&&e<=5},Pe=n=>{const e=n.getMonth();return e>5&&e<=8},Ve=n=>{const e=n.getMonth();return e>8&&e<=11},He=n=>n.getMonth()===0,Je=n=>n.getMonth()===1,ke=n=>n.getMonth()===2,Qe=n=>n.getMonth()===3,Ye=n=>n.getMonth()===4,je=n=>n.getMonth()===5,Ge=n=>n.getMonth()===6,ze=n=>n.getMonth()===7,Ke=n=>n.getMonth()===8,Xe=n=>n.getMonth()===9,Ze=n=>n.getMonth()===10,et=n=>n.getMonth()===11,tt=(n,e=new Date)=>n.toDateString()===e.toDateString(),nt=(n,e=new Date)=>{const t=new Date(e);return t.setDate(t.getDate()+1),n.toDateString()===t.toDateString()},at=(n,e=new Date)=>{const t=new Date(e);return t.setDate(t.getDate()-1),n.toDateString()===t.toDateString()},q=n=>{const e=n.getDay(),t=n.getDate()-e+(e===0?-6:1),a=new Date(n);return a.setDate(t),a},me=10080*60*1e3,rt=(n,e=new Date)=>{const t=q(n),a=q(e);return t.toDateString()===a.toDateString()},st=(n,e=new Date)=>{const t=q(n),a=new Date(q(e).getTime()+me);return t.toDateString()===a.toDateString()},ot=(n,e=new Date)=>{const t=q(n),a=new Date(q(e).getTime()-me);return t.toDateString()===a.toDateString()},it=(n,e=new Date)=>n.getFullYear()===e.getFullYear()&&n.getMonth()===e.getMonth(),lt=n=>{const e=new Date(n);return e.setHours(0,0,0,0),e.setDate(1),e},ut=(n,e=new Date)=>{const t=new Date(e);t.setHours(0,0,0,0),t.setMonth(t.getMonth()+1,1);const a=new Date(t);a.setMonth(a.getMonth()+1,0);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},dt=(n,e=new Date)=>{const t=lt(e),a=new Date(t);a.setMonth(a.getMonth()+1,0);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},ae=n=>{const e=new Date(n);e.setHours(0,0,0,0),e.setDate(1);const t=e.getMonth();return e.setMonth(t-t%3),e},ct=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()+3);const r=n.getTime();return r>=t.getTime()&&r<a.getTime()},ht=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()+3);const r=new Date(a);r.setMonth(r.getMonth()+3,0);const s=n.getTime();return s>=a.getTime()&&s<r.getTime()},gt=(n,e=new Date)=>{const t=ae(e),a=new Date(t);a.setMonth(a.getMonth()-3);const r=new Date(t);r.setDate(0);const s=n.getTime();return s>=a.getTime()&&s<r.getTime()},mt=(n,e=new Date)=>n.getFullYear()===e.getFullYear(),bt=(n,e=new Date)=>n.getFullYear()===e.getFullYear()+1,St=(n,e=new Date)=>n.getFullYear()===e.getFullYear()-1,Tt=(n,e=new Date)=>{const t=new Date(e);t.setHours(0,0,0,0),t.setMonth(0,1);const a=n.getTime();return a>=t.getTime()&&a<e.getTime()};function Ct(n){switch(n.compareType){case S.Equal:{const e=new Date(n.expectedValue);return t=>t.getTime()===e.getTime()}case S.NotEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()!==e.getTime()}case S.After:{const e=new Date(n.expectedValue);return t=>t.getTime()>e.getTime()}case S.Before:{const e=new Date(n.expectedValue);return t=>t.getTime()<e.getTime()}case S.AfterOrEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()>=e.getTime()}case S.BeforeOrEqual:{const e=new Date(n.expectedValue);return t=>t.getTime()<=e.getTime()}case S.Between:return e=>{const[t,a]=n.expectedValue;return e.getTime()>=new Date(t).getTime()&&e.getTime()<=new Date(a).getTime()};case S.NotBetween:return e=>{const[t,a]=n.expectedValue;return e.getTime()<new Date(t).getTime()||e.getTime()>new Date(a).getTime()};case S.Today:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>tt(t,e)}case S.Yesterday:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>at(t,e)}case S.Tomorrow:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>nt(t,e)}case S.ThisWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>rt(t,e)}case S.LastWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ot(t,e)}case S.NextWeek:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>st(t,e)}case S.ThisMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>it(t,e)}case S.LastMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>dt(t,e)}case S.NextMonth:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ut(t,e)}case S.ThisQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ct(t,e)}case S.LastQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>gt(t,e)}case S.NextQuarter:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>ht(t,e)}case S.ThisYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>mt(t,e)}case S.LastYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>St(t,e)}case S.NextYear:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>bt(t,e)}case S.YearToDate:{const e=n.anchorTime?new Date(n.anchorTime):new Date;return t=>Tt(t,e)}case S.M1:return He;case S.M2:return Je;case S.M3:return ke;case S.M4:return Qe;case S.M5:return Ye;case S.M6:return je;case S.M7:return Ge;case S.M8:return ze;case S.M9:return Ke;case S.M10:return Xe;case S.M11:return Ze;case S.M12:return et;case S.Q1:return We;case S.Q2:return qe;case S.Q3:return Pe;case S.Q4:return Ve;default:throw new Error("Unsupported compare type")}}class Rt{constructor(){C(this,"heap");this.heap=[]}swap(e,t){const a=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=a}getParentIndex(e){return Math.floor((e-1)/2)}getLeftIndex(e){return e*2+1}getRightIndex(e){return e*2+2}size(){return this.heap.length}peek(){return this.heap[0]}include(e){return this.heap.includes(e)}}class wt extends Rt{constructor(){super()}shiftUp(e){if(e===0)return;const t=this.getParentIndex(e);this.heap[t]>this.heap[e]&&(this.swap(t,e),this.shiftUp(t))}shiftDown(e){const t=this.getLeftIndex(e),a=this.getRightIndex(e);this.heap[t]<this.heap[e]&&(this.swap(t,e),this.shiftDown(t)),this.heap[a]<this.heap[e]&&(this.swap(a,e),this.shiftDown(a))}insert(e){this.heap.push(e),this.shiftUp(this.heap.length-1)}pop(){this.heap[0]=this.heap.pop(),this.shiftDown(0)}}const ft=(n,e)=>{const t=new wt;for(const a of n)t.insert(a),t.size()>e&&t.pop();return t.heap},It=(n,e)=>n>e,_t=(n,e)=>n<e,pt=(n,e,t)=>ft(n,e).includes(t);function vt(n,e){switch(n.compareType){case F.Equal:{const t=Number(n.expectedValue);return a=>a===t}case F.NotEqual:{const t=Number(n.expectedValue);return a=>a!==t}case F.GreaterThan:{const t=Number(n.expectedValue);return a=>a>t}case F.GreaterThanOrEqual:{const t=Number(n.expectedValue);return a=>a>=t}case F.LessThan:{const t=Number(n.expectedValue);return a=>a<t}case F.LessThanOrEqual:{const t=Number(n.expectedValue);return a=>a<=t}case F.Between:{const[t,a]=n.expectedValue,r=Number(t),s=Number(a);return r>s?o=>o>=s&&o<=r:o=>o>=r&&o<=s}case F.NotBetween:{const[t,a]=n.expectedValue,r=Number(t),s=Number(a);return r>s?o=>o<s||o>r:o=>o<r||o>s}case F.Above:{const t=e.average;return a=>It(a,t)}case F.Below:{const t=e.average;return a=>_t(a,t)}case F.TopN:{const t=e.list,a=Number(n.expectedValue);return r=>pt(t,a,r)}}}const P=n=>{const t=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*/g,".*").replace(/\\\?/g,".");return new RegExp(`^${t}$`)},Mt=(n,e)=>P(e).test(n),Ft=(n,e)=>!P(e).test(n),yt=(n,e)=>P(`*${e}*`).test(n),Dt=(n,e)=>!P(`*${e}*`).test(n),Nt=(n,e)=>P(`${e}*`).test(n),Ot=(n,e)=>P(`*${e}`).test(n);function Ut(n){switch(n.compareType){case E.Equal:return e=>Mt(e,n.expectedValue);case E.NotEqual:return e=>Ft(e,n.expectedValue);case E.Contains:return e=>yt(e,n.expectedValue);case E.NotContains:return e=>Dt(e,n.expectedValue);case E.StartsWith:return e=>Nt(e,n.expectedValue);case E.EndsWith:return e=>Ot(e,n.expectedValue);default:return console.error(`Unknown filter operator: ${n.compareType}`),e=>!0}}const xt=new Set([F.Above,F.Below,F.TopN]);S.Today,S.Yesterday,S.Tomorrow,S.ThisWeek,S.LastWeek,S.NextWeek,S.ThisMonth,S.LastMonth,S.NextMonth,S.ThisQuarter,S.LastQuarter,S.NextQuarter,S.NextYear,S.ThisYear,S.LastYear,S.YearToDate;function be(n){return xt.has(n)}function Et(n,e){if(be(n.filterInfo.compareType))return t=>!0;switch(n.filterInfo.conditionType){case O.Date:return Ct(n.filterInfo);case O.Number:return vt(n.filterInfo,e);case O.String:return Ut(n.filterInfo);case O.Logic:default:return t=>!0}}function Q(n,e,t,a){switch(a){case O.Date:{const r=Se(n,e,t);return r?Bt(r):null}case O.Number:return Se(n,e,t);case O.String:default:return At(n,e,t)}}const $t=n=>{var t;return((t=n.body)==null?void 0:t.dataStream.replace(/\r\n$/,""))||""};function At(n,e,t){const a=n.getCell(e,t);if(!a)return null;const{v:r,t:s,p:o}=a;if(o)return $t(o);if(typeof r=="string")return s===u.CellValueType.BOOLEAN?r.toUpperCase():r;if(typeof r=="number")return s===u.CellValueType.BOOLEAN?r?"TRUE":"FALSE":r;if(typeof r=="boolean")return r?"TRUE":"FALSE";if(r!==void 0)return String(r)}function Se(n,e,t){const a=n.getCell(e,t);if(!a)return null;const{v:r,t:s,p:o}=a;return o?null:typeof r=="string"&&s===u.CellValueType.NUMBER?Number(n.getCellRaw(e,t).v):Number(r)}function Bt(n){const e=new Date(Date.UTC(1900,0,1,0,0,0)),t=new Date(Date.UTC(1900,1,28,0,0,0));let a=n-1;return a>(t.getTime()-e.getTime())/(1e3*3600*24)&&(a-=1),a<0&&(a=n),new Date(e.getTime()+a*(1e3*3600*24))}class Te{constructor(){C(this,"_tableColumnFilterList");C(this,"_tableSortInfo");C(this,"_filterOutRows");this._tableColumnFilterList=[]}setColumnFilter(e,t){t?this._tableColumnFilterList[e]=t:this._tableColumnFilterList[e]=void 0}setSortState(e,t){this._tableSortInfo={columnIndex:e,sortState:t}}getColumnFilter(e){return this._tableColumnFilterList[e]}getFilterState(e){var a;const t=((a=this._tableSortInfo)==null?void 0:a.columnIndex)===e?this._tableSortInfo.sortState:A.None;return $e(this._tableColumnFilterList[e],t)}getSortState(){var e;return(e=this._tableSortInfo)!=null?e:{}}getFilterStates(e){const t=[],{startColumn:a,endColumn:r}=e;for(let s=a;s<=r;s++)t.push(this.getFilterState(s-a));return t}getFilterOutRows(){return this._filterOutRows}doFilter(e,t){const a=new Set,r=this._tableColumnFilterList;for(let s=0;s<r.length;s++)r[s]&&this.doColumnFilter(e,t,s,a);return this._filterOutRows=a,a}doColumnFilter(e,t,a,r){const s=this._tableColumnFilterList[a];if(s&&e){const{startRow:o,endRow:i,startColumn:d}=t,l=d+a,h=this.getExecuteFunc(e,t,a,s);for(let m=o;m<=i;m++){const c=de(s)?s.filterInfo.conditionType:O.String;Q(e,m,l,c)===null?r.add(m):h(Q(e,m,l,c))||r.add(m)}}}_getNumberCalculatedOptions(e,t,a){const{startRow:r,endRow:s,startColumn:o}=t,i=o+a,d=[];let l=0,h=0;for(let m=r;m<=s;m++){const c=Q(e,m,i,O.Number);c!==null&&(d.push(c),l++,h+=c)}return{list:d,average:l>0?h/l:0}}getExecuteFunc(e,t,a,r){if(r.filterType===W.manual){const s=new Set(r.values);return o=>s.has(o)}else if(r.filterType===W.condition){const o=be(r.filterInfo.compareType)?this._getNumberCalculatedOptions(e,t,a):void 0;return Et(r,o)}else return s=>!0}toJSON(){return{tableColumnFilterList:this._tableColumnFilterList,tableSortInfo:this._tableSortInfo}}fromJSON(e){var t;this._tableColumnFilterList=(t=e.tableColumnFilterList)!=null?t:[],e.tableSortInfo&&(this._tableSortInfo=e.tableSortInfo)}dispose(){this._tableColumnFilterList=[]}}class Ce{constructor(e,t,a,r,s={}){C(this,"_id");C(this,"_name");C(this,"_tableStyleId");C(this,"_showHeader");C(this,"_showFooter");C(this,"_range");C(this,"_columns",new Map);C(this,"_columnOrder",[]);C(this,"tableMeta");C(this,"_tableFilters");C(this,"_subUnitId");this._id=e,this._range=a,this._name=t,this._tableFilters=new Te,this._init(r,s)}_init(e,t){var a;if(this._tableStyleId=t==null?void 0:t.tableStyleId,this._showHeader=(a=t==null?void 0:t.showHeader)!=null?a:!0,this._showFooter=!1,t.columns)t.columns.forEach(r=>{const s=r.id||u.generateRandomId(),o=new B(s,r.displayName);o.fromJSON(r),this._columns.set(s,o),this._columnOrder.push(s)});else{const r=this.getRange(),s=r.startColumn,o=r.endColumn;for(let i=s;i<=o;i++){const d=u.generateRandomId(),l=new B(d,e[i-s]);this._columns.set(d,l),this._columnOrder.push(d)}}t.filters&&t.filters.forEach((s,o)=>{s&&this._tableFilters.setColumnFilter(o,s)})}setTableFilterColumn(e,t){this._tableFilters.setColumnFilter(e,t)}getTableFilterColumn(e){return this._tableFilters.getColumnFilter(e)}getTableFilters(){return this._tableFilters}getTableFilterRange(){const e=this.getRange(),t=this.isShowHeader(),a=this.isShowFooter(),{startRow:r,startColumn:s,endRow:o,endColumn:i}=e,d=t?r+1:r,l=a?o-1:o;return{startRow:d,startColumn:s,endRow:l,endColumn:i}}setColumns(e){this._columns.clear(),this._columnOrder=[],e.forEach(t=>{const a=new B(t.id,t.displayName);a.fromJSON(t),this._columns.set(t.id,a),this._columnOrder.push(t.id)})}getColumnsCount(){return this._columnOrder.length}insertColumn(e,t){const a=t.id;this._columns.set(a,t),this._columnOrder.splice(e,0,a)}removeColumn(e){const t=this._columnOrder[e];this._columns.delete(t),this._columnOrder.splice(e,1)}setTableMeta(e){this.tableMeta=e}getTableMeta(){return this.tableMeta}getColumn(e){return this._columns.get(e)}getTableColumnByIndex(e){const t=this._columnOrder[e];return this.getColumn(t)}getColumnNameByIndex(e){var a;const t=this._columnOrder[e];return((a=this.getColumn(t))==null?void 0:a.getDisplayName())||""}getId(){return this._id}getRangeInfo(){return{...this._range}}getRange(){return{...this._range}}setRange(e){this._range=e}setDisplayName(e){this._name=e}getDisplayName(){return this._name}getSubunitId(){return this._subUnitId}setSubunitId(e){this._subUnitId=e}getTableStyleId(){var e;return(e=this._tableStyleId)!=null?e:ge[0].name}setTableStyleId(e){this._tableStyleId=e}isShowHeader(){var e;return(e=this._showHeader)!=null?e:!0}setShowHeader(e){this._showHeader=e}isShowFooter(){var e;return(e=this._showFooter)!=null?e:!1}getTableInfo(){return{id:this._id,subUnitId:this._subUnitId,name:this._name,range:this.getRangeInfo(),meta:this.tableMeta,showHeader:this._showHeader,columns:this._columnOrder.map(e=>this._columns.get(e).toJSON())}}getTableConfig(){return{name:this.getDisplayName(),range:this.getRangeInfo(),options:{showHeader:this._showHeader,showFooter:this._showFooter},tableStyleId:this._tableStyleId}}getFilterStates(e){return this._tableFilters.getFilterStates(e)}toJSON(){const e=[];return this._columns.forEach(t=>{e.push(t.toJSON())}),{id:this._id,name:this._name,range:this.getRangeInfo(),options:{showHeader:this._showHeader,showFooter:this._showFooter,tableStyleId:this._tableStyleId},filters:this._tableFilters.toJSON(),columns:e,meta:this.tableMeta}}fromJSON(e){this._id=e.id,this._name=e.name,this._range=e.range,this.tableMeta=e.meta,this._tableStyleId=e.options.tableStyleId||"",this._showHeader=e.options.showHeader||!0,this._showFooter=e.options.showFooter||!0,e.columns.forEach(a=>{const r=new B(a.id,a.displayName);r.fromJSON(a),this._columns.set(a.id,r),this._columnOrder.push(a.id)}),this._tableFilters=new Te,this._tableFilters.fromJSON(e.filters)}dispose(){this._id="",this._name="",this._tableStyleId="",this._showHeader=!0,this._showFooter=!0,delete this._range,this._columns.clear(),this._columnOrder=[]}}var Lt=Object.getOwnPropertyDescriptor,Wt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Lt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Re=(n,e)=>(t,a)=>e(t,a,n);g.TableManager=class extends u.Disposable{constructor(t,a){super();C(this,"_tableMap");C(this,"_tableAdd$",new N.Subject);C(this,"tableAdd$",this._tableAdd$.asObservable());C(this,"_tableDelete$",new N.Subject);C(this,"tableDelete$",this._tableDelete$.asObservable());C(this,"_tableNameChanged$",new N.Subject);C(this,"tableNameChanged$",this._tableNameChanged$.asObservable());C(this,"_tableRangeChanged$",new N.Subject);C(this,"tableRangeChanged$",this._tableRangeChanged$.asObservable());C(this,"_tableThemeChanged$",new N.Subject);C(this,"tableThemeChanged$",this._tableThemeChanged$.asObservable());C(this,"_tableFilterChanged$",new N.Subject);C(this,"tableFilterChanged$",this._tableFilterChanged$.asObservable());C(this,"_tableInitStatus",new N.BehaviorSubject(!1));C(this,"tableInitStatus$",this._tableInitStatus.asObservable());this._univerInstanceService=t,this._localeService=a,this._tableMap=new Map}_ensureUnit(t){return this._tableMap.has(t)||this._tableMap.set(t,new Map),this._tableMap.get(t)}getColumnHeader(t,a,r,s){var c;const o=(c=this._univerInstanceService.getUnit(t))==null?void 0:c.getSheetBySheetId(a),{startRow:i,startColumn:d,endColumn:l}=r,h=[],m=s!=null?s:"Column";for(let b=d;b<=l;b++)h.push(ue(o==null?void 0:o.getCell(i,b))||J(b-d+1,m));return h}addTable(t,a,r,s,o,i,d){const l=i!=null?i:u.generateRandomId(),h=o||this.getColumnHeader(t,a,s),m=new Ce(l,r,s,h,d);return m.setSubunitId(a),this._ensureUnit(t).set(l,m),this._tableAdd$.next({unitId:t,subUnitId:a,range:s,tableName:r,tableId:l}),l}addFilter(t,a,r,s){const o=this.getTable(t,a);if(o){o.getTableFilters().setColumnFilter(r,s);const d=o.getSubunitId();this._tableFilterChanged$.next({unitId:t,subUnitId:d,tableId:a})}}getFilterRanges(t,a){const r=this._tableMap.get(t);if(!r)return[];const s=[];return r.forEach(o=>{o.getSubunitId()===a&&o.isShowHeader()&&s.push(o.getRange())}),s}getSheetFilterRangeWithState(t,a){const r=this._tableMap.get(t);if(!r)return[];const s=[];return r.forEach(o=>{o.getSubunitId()===a&&o.isShowHeader()&&s.push({tableId:o.getId(),range:o.getRange(),states:o.getFilterStates(o.getRange())})}),s}getTable(t,a){const r=this._tableMap.get(t);if(r)return r.get(a)}getUniqueTableName(t,a){const r=this._tableMap.get(t);if(!r)return a;const s=new Set(Array.from(r.values()).map(d=>d.getDisplayName()));let o=a,i=1;for(;s.has(o);)o=`${a}-${i}`,i++;return o}getTableById(t,a){return this.getTable(t,a)}getTableList(t){const a=this._tableMap.get(t);return a?Array.from(a.values()).map(r=>({...r.getTableInfo(),unitId:t})):[]}getTablesBySubunitId(t,a){const r=this._tableMap.get(t);return r?Array.from(r.values()).filter(s=>s.getSubunitId()===a):[]}getTablesInfoBySubunitId(t,a){return this.getTablesBySubunitId(t,a).map(r=>({id:r.getId(),name:r.getDisplayName(),range:r.getRange()}))}deleteTable(t,a){const r=this._tableMap.get(t),s=r==null?void 0:r.get(a);if(s){const o=s.getTableInfo(),i=s.getTableStyleId();r==null||r.delete(a);const{subUnitId:d,range:l,name:h}=o;this._tableDelete$.next({unitId:t,subUnitId:d,tableId:a,range:l,tableName:h,tableStyleId:i})}}operationTableRowCol(t,a,r){const s=this.getTableById(t,a);if(!s)return;const{operationType:o,rowColType:i,index:d,count:l,columnsJson:h}=r,m=s.getRange(),c={...m};if(o===p.Insert){if(i==="row")c.endRow+=l;else if(i==="column"){c.endColumn+=l;for(let b=0;b<l;b++){const f=this._localeService.t("sheets-table.columnPrefix"),R=new B(u.generateRandomId(),J(s.getColumnsCount()+1+b,f));h!=null&&h[b]&&R.fromJSON(h[b]);const I=d+b-m.startColumn;s.insertColumn(I,R)}}}else if(i==="row")c.endRow-=l;else if(i==="column"){c.endColumn-=l;for(let b=l-1;b>=0;b--){const f=d+b-m.startColumn;s.removeColumn(f)}}s.setRange(c),this._tableRangeChanged$.next({unitId:t,subUnitId:s.getSubunitId(),tableId:a,range:c,oldRange:m})}updateTableRange(t,a,r){const s=this.getTableById(t,a);if(!s)return;const o=s.getRange(),i=r.newRange;if(i.startColumn<o.startColumn){const d=o.startColumn-i.startColumn,l=this._localeService.t("sheets-table.columnPrefix");for(let h=0;h<d;h++)s.insertColumn(o.startColumn,new B(u.generateRandomId(),J(s.getColumnsCount()+1,l)))}else if(i.startColumn>o.startColumn){const d=i.startColumn-o.startColumn;for(let l=d-1;l>=0;l--){const h=i.startColumn+l-o.startColumn;s.removeColumn(h)}}if(i.endColumn<o.endColumn){const d=o.endColumn-i.endColumn;for(let l=d-1;l>=0;l--){const h=i.endColumn+l-o.startColumn;s.removeColumn(h)}}else if(i.endColumn>o.endColumn){const d=i.endColumn-o.endColumn;for(let l=0;l<d;l++)s.insertColumn(o.endColumn,new B(u.generateRandomId(),J(s.getColumnsCount()+1,"Column")))}s.setRange(i),this._tableRangeChanged$.next({unitId:t,subUnitId:s.getSubunitId(),tableId:a,range:i,oldRange:o})}setTableByConfig(t,a,r){var b;const s=this._tableMap.get(t),o=s==null?void 0:s.get(a);if(!o)return;const i=o.getSubunitId(),{name:d,updateRange:l,rowColOperation:h,theme:m,options:c}=r;if(d){const f=o.getDisplayName();o.setDisplayName(d),this._tableNameChanged$.next({unitId:t,subUnitId:i,tableId:a,tableName:d,oldTableName:f})}if(h&&this.operationTableRowCol(t,a,h),l&&this.updateTableRange(t,a,l),m){const f=(b=o.getTableStyleId())!=null?b:"default";o.setTableStyleId(m),this._tableThemeChanged$.next({unitId:t,subUnitId:i,tableId:a,theme:m,oldTheme:f})}c&&c.showHeader!==void 0&&o.setShowHeader(c.showHeader)}toJSON(t){const a={},r=this._tableMap.get(t);return r&&r.forEach(s=>{const o=s.getSubunitId();if(!a[o]){const i=new Set;this.getTablesBySubunitId(t,o).forEach(l=>{const h=l.getTableFilters().getFilterOutRows();if(h)for(const m of h)i.add(m)}),a[o]={tables:[],tableFilteredOutRows:Array.from(i)}}a[o].tables.push(s.toJSON())}),a}fromJSON(t,a){const r=this._ensureUnit(t);Object.keys(a).forEach(o=>{const i=T.getSheetCommandTarget(this._univerInstanceService,{unitId:t,subUnitId:o});if(!i)return;const d=i.worksheet;let l;a[o].tables?l=a[o].tables:Array.isArray(a[o])&&(l=a[o]),l&&l.forEach(h=>{const m=this.getColumnHeader(t,o,h.range),c=new Ce(h.id,h.name,h.range,m,h.options);if(c.setTableMeta(h.meta),h.columns.length&&c.setColumns(h.columns),h.filters){const b=c.getTableFilters();b.fromJSON(h.filters),b.doFilter(d,c.getTableFilterRange())}c.setSubunitId(o),r.set(h.id,c),this._tableAdd$.next({unitId:t,subUnitId:o,range:h.range,tableName:h.name,tableId:h.id})})}),this._tableInitStatus.next(!0)}deleteUnitId(t){this._tableMap.delete(t)}dispose(){super.dispose(),this._tableMap.forEach(t=>{t.forEach(a=>a.dispose()),t.clear()}),this._tableMap.clear()}},g.TableManager=Wt([Re(0,u.IUniverInstanceService),Re(1,u.Inject(u.LocaleService))],g.TableManager);var qt=Object.getOwnPropertyDescriptor,Pt=(n,e,t,a)=>{for(var r=a>1?void 0:a?qt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Vt=(n,e)=>(t,a)=>e(t,a,n);g.SheetTableService=class extends u.Disposable{constructor(e){super(),this._tableManager=e}getTableInfo(e,t){const a=this._tableManager.getTable(e,t);if(a)return{unitId:e,...a.getTableInfo()}}getTableList(e){return this._tableManager.getTableList(e)}addTable(e,t,a,r,s,o,i){return this._tableManager.addTable(e,t,a,r,s,o,i)}deleteTable(e,t,a){this._tableManager.deleteTable(e,a)}getTableMeta(e,t){var a;return(a=this._tableManager.getTable(e,t))==null?void 0:a.getTableMeta()}setTableMeta(e,t,a){var r;(r=this._tableManager.getTable(e,t))==null||r.setTableMeta(a)}getTableColumnMeta(e,t,a){var r,s;return(s=(r=this._tableManager.getTable(e,t))==null?void 0:r.getTableColumnByIndex(a))==null?void 0:s.getMeta()}selTableColumnMeta(e,t,a,r){var s,o;(o=(s=this._tableManager.getTable(e,t))==null?void 0:s.getTableColumnByIndex(a))==null||o.setMeta(r)}addFilter(e,t,a,r){this._tableManager.addFilter(e,t,a,r)}getCellValueWithConditionType(e,t,a,r=O.String){return Q(e,t,a,r)}},g.SheetTableService=Pt([Vt(0,u.Inject(g.TableManager))],g.SheetTableService);const V={id:"sheet.mutation.add-table",type:u.CommandType.MUTATION,handler:(n,e)=>{const{tableId:t,unitId:a,subUnitId:r,name:s,range:o,header:i,options:d}=e;return n.get(g.SheetTableService).addTable(a,r,s,o,i,t,d),!0}},H={id:"sheet.mutation.delete-table",type:u.CommandType.MUTATION,handler:(n,e)=>{const{unitId:t,subUnitId:a,tableId:r}=e;return n.get(g.SheetTableService).deleteTable(t,a,r),!0}},we={id:"sheet.command.add-table",type:u.CommandType.COMMAND,handler:(n,e)=>{var R;if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=n.get(u.LocaleService),s=(R=e.id)!=null?R:u.generateRandomId();let o=e.name;if(!o){const w=n.get(g.TableManager).getTableList(e.unitId).length;o=`${r.t("sheets-table.tablePrefix")}${w+1}`}const i=[],d=[],l=n.get(g.TableManager),{unitId:h,subUnitId:m,range:c}=e,b=l.getColumnHeader(h,m,c,r.t("sheets-table.columnPrefix"));return i.push({id:V.id,params:{...e,tableId:s,name:o,header:b}}),d.push({id:H.id,params:{tableId:s,unitId:e.unitId}}),u.sequenceExecute(i,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:d,redoMutations:i}),!0}},fe={id:"sheet.command.delete-table",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=n.get(g.TableManager),s=[],o=[],i=r.getTable(e.unitId,e.tableId),d=i==null?void 0:i.toJSON();if(!d)throw new Error("[TableManager]: Table not found");return s.push({id:H.id,params:{...e}}),o.push({id:V.id,params:{unitId:e.unitId,subUnitId:e.subUnitId,tableId:e.tableId,name:d.name,range:d.range,options:d.options}}),u.sequenceExecute(s,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:o,redoMutations:s}),!0}},Y={id:"sheet.mutation.set-table-filter",type:u.CommandType.MUTATION,handler:(n,e)=>{const{tableId:t,unitId:a,column:r,tableFilter:s}=e;return n.get(g.TableManager).addFilter(a,t,r,s),!0}},Ie={id:"sheet.command.set-table-filter",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUndoRedoService),a=n.get(u.ICommandService),r=e.tableId||u.generateRandomId(),s=[],o=[];return s.push({id:Y.id,params:{...e,tableId:r}}),o.push({id:Y.id,params:{...e,tableId:r,tableFilter:void 0}}),u.sequenceExecute(s,a)&&t.pushUndoRedo({unitID:e.unitId,undoMutations:o,redoMutations:s}),!0}},_e="SHEET_TABLE_PLUGIN",j="SHEET_TABLE",pe="table-custom";var Ht=Object.getOwnPropertyDescriptor,Jt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Ht(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},re=(n,e)=>(t,a)=>e(t,a,n);g.SheetsTableController=class extends u.Disposable{constructor(t,a,r){super();C(this,"_tableRangeRTree",new Map);this._sheetInterceptorService=t,this._tableManager=a,this._resourceManagerService=r,this._initSnapshot(),this.registerTableChangeEvent(),this.registerTableHeaderInterceptor()}getContainerTableWithRange(t,a,r){const s=this._ensureTableRangeRTree(t),i=Array.from(s.bulkSearch([{unitId:t,sheetId:a,range:r}])).find(d=>{const l=this._tableManager.getTable(t,String(d));return l?u.Rectangle.contains(l.getRange(),r):!1});if(i)return this._tableManager.getTable(t,String(i))}_ensureTableRangeRTree(t){return this._tableRangeRTree.has(t)||this._tableRangeRTree.set(t,new u.RTree),this._tableRangeRTree.get(t)}registerTableChangeEvent(){this.disposeWithMe(this._tableManager.tableAdd$.subscribe(t=>{const{range:a,tableId:r,unitId:s,subUnitId:o}=t;this._ensureTableRangeRTree(s).insert({unitId:s,sheetId:o,id:r,range:{...a}})})),this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(t=>{const{range:a,tableId:r,unitId:s,subUnitId:o,oldRange:i}=t,d=this._ensureTableRangeRTree(s);d.remove({unitId:s,sheetId:o,id:r,range:{...i}}),d.insert({unitId:s,sheetId:o,id:r,range:{...a}})})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(t=>{const{tableId:a,unitId:r,subUnitId:s,range:o}=t;this._ensureTableRangeRTree(r).remove({unitId:r,sheetId:s,id:a,range:{...o}})}))}registerTableHeaderInterceptor(){this.disposeWithMe(this._sheetInterceptorService.intercept(T.INTERCEPTOR_POINT.CELL_CONTENT,{effect:u.InterceptorEffectEnum.Value,handler:(t,a,r)=>{const{row:s,col:o,unitId:i,subUnitId:d}=a,l=this._ensureTableRangeRTree(i);if((t==null?void 0:t.v)===void 0&&l){const m=Array.from(l.bulkSearch([{unitId:i,sheetId:d,range:{startColumn:o,endColumn:o,startRow:s,endRow:s}}]));if(m.length>0){const c=this._tableManager.getTable(i,m[0]);if(c){const b=c.getRange(),f=o-b.startColumn;if(b.startRow===s){const I=c.getColumnNameByIndex(f);return(!t||t===a.rawData)&&(t={...a.rawData}),t.v=I,r(t)}}}}return r(t)}}))}_toJson(t){return this._tableManager.toJSON(t)}_fromJSON(t,a){return this._tableManager.fromJSON(t,a)}_deleteUnitId(t){this._tableManager.deleteUnitId(t)}_initSnapshot(){this.disposeWithMe(this._resourceManagerService.registerPluginResource({toJson:t=>JSON.stringify(this._toJson(t)),parseJson:t=>{if(!t)return{};try{return JSON.parse(t)}catch{return{}}},businesses:[u.UniverInstanceType.UNIVER_SHEET],pluginName:_e,onLoad:(t,a)=>{this._fromJSON(t,a)},onUnLoad:t=>{this._deleteUnitId(t)}}))}dispose(){super.dispose(),this._tableRangeRTree.clear()}},g.SheetsTableController=Jt([re(0,u.Inject(T.SheetInterceptorService)),re(1,u.Inject(g.TableManager)),re(2,u.Inject(u.IResourceManagerService))],g.SheetsTableController);const _={id:"sheet.mutation.set-sheet-table",type:u.CommandType.MUTATION,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,config:r}=e;return n.get(g.TableManager).setTableByConfig(t,a,r),!0}},ve={id:"sheet.command.add-table-theme",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(g.TableManager),{unitId:a,tableId:r,themeStyle:s}=e,o=[],i=[],d=t.getTableById(a,r);if(!d)return!1;const l=d.getSubunitId();o.push({id:T.AddRangeThemeMutation.id,params:{unitId:a,subUnitId:l,styleJSON:s.toJson()}}),o.push({id:_.id,params:{unitId:a,subUnitId:l,tableId:r,config:{theme:s.getName()}}}),i.push({id:_.id,params:{unitId:a,subUnitId:l,tableId:r,config:{themeStyle:d.getTableStyleId()}}}),i.push({id:T.RemoveRangeThemeMutation.id,params:{unitId:a,subUnitId:l,styleName:s.getName()}});const h=n.get(u.ICommandService);return u.sequenceExecute(o,h)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:a,undoMutations:i,redoMutations:o}),!0}},Me={id:"sheet.command.remove-table-theme",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,themeName:r}=e,s=n.get(g.TableManager),o=n.get(T.SheetRangeThemeModel),i=s.getTableById(t,a);if(!i)return!1;const d=i.getSubunitId(),l=[],h=[],m=o.getRegisteredRangeThemes().filter(w=>w==null?void 0:w.startsWith("table-default"));let b=o.getRegisteredRangeThemes().filter(w=>w==null?void 0:w.startsWith(pe)).find(w=>w!==r);b||(b=m[0]),l.push({id:_.id,params:{unitId:t,subUnitId:d,tableId:a,config:{theme:b}}}),l.push({id:T.RemoveRangeThemeMutation.id,params:{unitId:t,subUnitId:d,styleName:r}});const f=o.getDefaultRangeThemeStyle(r);f&&(h.push({id:T.AddRangeThemeMutation.id,params:{unitId:t,subUnitId:d,styleJSON:f.toJson()}}),h.push({id:_.id,params:{unitId:t,subUnitId:d,tableId:a,config:{theme:r}}}));const R=n.get(u.ICommandService);return u.sequenceExecute(l,R)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:t,redoMutations:l,undoMutations:h}),!0}},Fe={id:"sheet.command.set-table-config",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const{unitId:t,tableId:a,name:r,updateRange:s,rowColOperation:o,theme:i}=e,l=n.get(g.TableManager).getTableById(t,a);if(!l)return!1;const h={},m={},c=n.get(u.LocaleService),f=n.get(u.IUniverInstanceService).getCurrentUnitOfType(u.UniverInstanceType.UNIVER_SHEET),R=new Set;if(f&&f.getSheets().forEach(x=>{R.add(x.getName())}),r){if(!u.customNameCharacterCheck(r,R))return n.get(u.ILogService).warn(c.t("sheets-table.tableNameError")),!1;h.name=l.getDisplayName(),m.name=r}o&&(h.rowColOperation={operationType:o.operationType===p.Insert?p.Delete:p.Insert,rowColType:o.rowColType,index:o.index,count:o.count},m.rowColOperation=o),s&&(h.updateRange={newRange:l.getRange()},m.updateRange=s),i&&(h.theme=l.getTableStyleId(),m.theme=i);const I={unitId:t,subUnitId:l.getSubunitId(),tableId:a,config:m};return n.get(u.ICommandService).executeCommand(_.id,I),n.get(u.IUndoRedoService).pushUndoRedo({unitID:t,undoMutations:[{id:_.id,params:{unitId:t,subUnitId:l.getSubunitId(),tableId:a,config:h}}],redoMutations:[{id:_.id,params:I}]}),!0}},ye={id:"sheet.command.table-insert-row",type:u.CommandType.COMMAND,handler:n=>{const e=n.get(u.IUniverInstanceService),t=T.getSheetCommandTarget(e);if(!t)return!1;const{workbook:a,worksheet:r,unitId:s,subUnitId:o}=t,d=n.get(T.SheetsSelectionsService).getCurrentSelections();if(!d.length||d.length>1)return!1;n.get(g.TableManager);const h=d[0].range,c=n.get(g.SheetsTableController).getContainerTableWithRange(s,o,h);if(!c)return!1;const b=h.endRow-h.startRow+1,R=r.getRowCount()-1,I=r.getCellMatrix().getDataRange().endRow,w=[],v=[];if(R-I<b)w.push({id:T.InsertRowMutation.id,params:{unitId:s,subUnitId:o,range:{...h}}}),w.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...c.getRange(),endRow:c.getRange().endRow+b}}}}}),v.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:c.getRange()}}}}),v.push({id:T.RemoveRowMutation.id,params:{unitId:s,subUnitId:o,range:{...h}}});else{const M={...c.getRange()};w.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...M,endRow:M.endRow+b}}}}}),v.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{updateRange:{newRange:{...M}}}}});const k=T.getMoveRangeUndoRedoMutations(n,{unitId:s,subUnitId:o,range:{startRow:h.startRow,endRow:I,startColumn:M.startColumn,endColumn:M.endColumn}},{unitId:s,subUnitId:o,range:{startRow:h.startRow+b,endRow:I+b,startColumn:M.startColumn,endColumn:M.endColumn}});k&&(w.push(...k.redos),v.push(...k.undos))}const x=n.get(u.ICommandService);return u.sequenceExecute(w,x)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:s,undoMutations:v,redoMutations:w}),!0}},De={id:"sheet.command.table-insert-col",type:u.CommandType.COMMAND,handler:n=>{const e=n.get(u.IUniverInstanceService),t=T.getSheetCommandTarget(e);if(!t)return!1;const{worksheet:a,unitId:r,subUnitId:s}=t,i=n.get(T.SheetsSelectionsService).getCurrentSelections();if(!i.length||i.length>1)return!1;const l=i[0].range,m=n.get(g.SheetsTableController).getContainerTableWithRange(r,s,l);if(!m)return!1;const c=l.endColumn-l.startColumn+1,f=a.getColumnCount()-1,R=a.getCellMatrix().getDataRange().endColumn,I=[],w=[];if(f-R<c)I.push({id:T.InsertColMutation.id,params:{unitId:r,subUnitId:s,range:{...l}}}),I.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:l.startColumn,count:c}}}}),w.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:l.startColumn,count:c}}}}),w.push({id:T.RemoveColMutation.id,params:{unitId:r,subUnitId:s,range:{...l}}});else{const y=m.getRange();I.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:l.startColumn,count:c}}}}),w.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:l.startColumn,count:c}}}});const M=T.getMoveRangeUndoRedoMutations(n,{unitId:r,subUnitId:s,range:{startRow:y.startRow,endRow:y.endRow,startColumn:l.startColumn,endColumn:R}},{unitId:r,subUnitId:s,range:{startRow:y.startRow,endRow:y.endRow,startColumn:l.startColumn+c,endColumn:R+c}});M&&(I.push(...M.redos),w.push(...M.undos))}const v=n.get(u.ICommandService);return u.sequenceExecute(I,v)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:r,undoMutations:w,redoMutations:I}),!0}},Ne={id:"sheet.command.table-remove-row",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUniverInstanceService),a=T.getSheetCommandTarget(t);if(!a)return!1;const{unitId:r,subUnitId:s}=a,i=n.get(T.SheetsSelectionsService).getCurrentSelections();if(!i.length||i.length>1)return!1;const l=i[0].range,m=n.get(g.SheetsTableController).getContainerTableWithRange(r,s,l);if(!m)return!1;const c=l.endRow-l.startRow+1,b=[],f=[],R=m.getRange();b.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{updateRange:{newRange:{...R,endRow:R.endRow-c}}}}}),f.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:m.getId(),config:{updateRange:{newRange:{...R}}}}});const w=a.worksheet.getCellMatrix().getDataRange().endRow,v=T.getMoveRangeUndoRedoMutations(n,{unitId:r,subUnitId:s,range:{startRow:l.endRow+1,endRow:w,startColumn:R.startColumn,endColumn:R.endColumn}},{unitId:r,subUnitId:s,range:{startRow:l.startRow,endRow:w-c,startColumn:R.startColumn,endColumn:R.endColumn}});v&&(b.push(...v.redos),f.push(...v.undos));const x=n.get(u.ICommandService);return u.sequenceExecute(b,x)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:r,undoMutations:f,redoMutations:b}),!0}},Oe={id:"sheet.command.table-remove-col",type:u.CommandType.COMMAND,handler:(n,e)=>{if(!e)return!1;const t=n.get(u.IUniverInstanceService),a=T.getSheetCommandTarget(t);if(!a)return!1;const{workbook:r,unitId:s,subUnitId:o}=a;n.get(g.TableManager);const d=n.get(T.SheetsSelectionsService).getCurrentSelections();if(!d.length||d.length>1)return!1;const h=d[0].range,c=n.get(g.SheetsTableController).getContainerTableWithRange(s,o,h);if(!c)return!1;const b=h.endColumn-h.startColumn+1,f=[],R=[],I=c.getRange();f.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:h.startColumn,count:b}}}});const w=[],v=h.startColumn-I.startColumn;for(let te=0;te<b;te++){const xe=c.getTableInfo().columns[v+te];xe&&w.push(xe)}R.push({id:_.id,params:{unitId:s,subUnitId:o,tableId:c.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:h.startColumn,count:b,columnsJson:w}}}});const y=a.worksheet.getCellMatrix().getDataRange().endColumn,M=T.getMoveRangeUndoRedoMutations(n,{unitId:s,subUnitId:o,range:{startRow:I.startRow,endRow:I.endRow,startColumn:h.endColumn+1,endColumn:y}},{unitId:s,subUnitId:o,range:{startRow:I.startRow,endRow:I.endRow,startColumn:h.startColumn,endColumn:y-b}});M&&(f.push(...M.redos),R.push(...M.undos));const k=n.get(u.ICommandService);return u.sequenceExecute(f,k)&&n.get(u.IUndoRedoService).pushUndoRedo({unitID:s,undoMutations:R,redoMutations:f}),!0}};var kt=Object.getOwnPropertyDescriptor,Qt=(n,e,t,a)=>{for(var r=a>1?void 0:a?kt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},Ue=(n,e)=>(t,a)=>e(t,a,n);let G=class extends u.Disposable{constructor(n,e){super(),this._tableManager=n,this._exclusiveRangeService=e,this._initRangeListener()}_initRangeListener(){this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(n=>{const{range:e,tableId:t,unitId:a,subUnitId:r}=n;this._exclusiveRangeService.clearExclusiveRangesByGroupId(a,r,j,t),this._exclusiveRangeService.addExclusiveRange(a,r,j,[{range:{...e},groupId:t}])})),this.disposeWithMe(this._tableManager.tableAdd$.subscribe(n=>{const{tableId:e,unitId:t,subUnitId:a,range:r}=n;this._exclusiveRangeService.addExclusiveRange(t,a,j,[{range:{...r},groupId:e}])})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(n=>{const{tableId:e,unitId:t,subUnitId:a}=n;this._exclusiveRangeService.clearExclusiveRangesByGroupId(t,a,j,e)}))}};G=Qt([Ue(0,u.Inject(g.TableManager)),Ue(1,u.Inject(T.IExclusiveRangeService))],G);var Yt=Object.getOwnPropertyDescriptor,jt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Yt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},L=(n,e)=>(t,a)=>e(t,a,n);let z=class extends u.Disposable{constructor(n,e,t,a,r,s,o){super(),this._commandService=n,this._refRangeService=e,this._univerInstanceService=t,this._injector=a,this._sheetInterceptorService=r,this._tableManager=s,this._localeService=o,this._initCommandInterceptor(),this._initCommandListener()}_initCommandInterceptor(){const n=this;this._sheetInterceptorService.interceptCommand({getMutations(e){const t={redos:[],undos:[]},{id:a,params:r}=e;switch(a){case T.InsertRowCommand.id:return n._generateTableMutationWithInsertRow(r);case T.InsertColCommand.id:return n._generateTableMutationWithInsertCol(r);case T.RemoveRowCommand.id:return n._generateTableMutationWithRemoveRow(r);case T.RemoveColCommand.id:return n._generateTableMutationWithRemoveCol(r)}return t}})}_generateTableMutationWithInsertRow(n){const e=[],t=[],a=T.getSheetCommandTarget(this._univerInstanceService);if(!a)return{undos:e,redos:t};const{unitId:r,subUnitId:s}=a,o=this._tableManager.getTablesBySubunitId(r,s);if(!o.length)return{undos:e,redos:t};const{range:i}=n;return o.forEach(d=>{const l=d.getRange();if(i.startRow>l.startRow&&i.startRow<=l.endRow){const h=i.endRow-i.startRow+1;t.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{updateRange:{newRange:{...l,endRow:l.endRow+h}}}}}),e.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{updateRange:{newRange:{...l}}}}})}}),{undos:e,redos:t}}_generateTableMutationWithInsertCol(n){const e=[],t=[],a=T.getSheetCommandTarget(this._univerInstanceService);if(!a)return{undos:e,redos:t};const{unitId:r,subUnitId:s}=a,o=this._tableManager.getTablesBySubunitId(r,s);if(!o.length)return{undos:e,redos:t};const{range:i}=n;return o.forEach(d=>{const l=d.getRange();if(i.startColumn>l.startColumn&&i.startColumn<=l.endColumn){const h=i.endColumn-i.startColumn+1;t.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:i.startColumn,count:h}}}}),e.push({id:_.id,params:{unitId:r,subUnitId:s,tableId:d.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:i.startColumn,count:h}}}})}}),{undos:e,redos:t}}_generateTableMutationWithRemoveRow(n){const e=[],t=[],a=[],r=[],s=T.getSheetCommandTarget(this._univerInstanceService);if(!s)return{undos:e,redos:t,preRedos:a,preUndos:r};const{unitId:o,subUnitId:i}=s,d=this._tableManager.getTablesBySubunitId(o,i);if(!d.length)return{undos:e,redos:t,preRedos:a,preUndos:r};const{range:l}=n,h=l.endRow-l.startRow+1;return d.forEach(m=>{const c=m.getRange();if(u.Rectangle.intersects(c,l))if(l.startRow<=c.startRow&&l.endRow>=c.startRow){a.push({id:H.id,params:{unitId:o,subUnitId:i,tableId:m.getId()}});const b=m.toJSON();e.push({id:V.id,params:{unitId:o,subUnitId:i,tableId:b.id,name:b.name,range:b.range,options:b.options}})}else l.startRow>c.startRow&&l.startRow<=c.endRow?(t.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c,endRow:c.endRow-h}}}}}),e.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c}}}}})):l.startRow<c.endRow&&l.endRow>=c.endRow&&(t.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c,endRow:l.startRow-1}}}}}),e.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{updateRange:{newRange:{...c}}}}}))}),{undos:e,redos:t,preRedos:a,preUndos:r}}_generateTableMutationWithRemoveCol(n){const e=[],t=[],a=[],r=[],s=T.getSheetCommandTarget(this._univerInstanceService);if(!s)return{undos:e,redos:t,preRedos:a,preUndos:r};const{unitId:o,subUnitId:i}=s,d=this._tableManager.getTablesBySubunitId(o,i);if(!d.length)return{undos:e,redos:t,preRedos:a,preUndos:r};const{range:l}=n,h=l.endColumn-l.startColumn+1;return d.forEach(m=>{const c=m.getRange();if(u.Rectangle.intersects(c,l)){if(l.startColumn<=c.startColumn&&l.endColumn>=c.endColumn){a.push({id:H.id,params:{unitId:o,subUnitId:i,tableId:m.getId()}});const b=m.toJSON(),{startRow:f,startColumn:R,endColumn:I}=b.range,w=this._univerInstanceService.getUnit(o),v=w==null?void 0:w.getSheetBySheetId(i);if(!v)return{undos:e,redos:t,preRedos:a,preUndos:r};const x=[];for(let y=R;y<=I;y++)x.push(ue(v==null?void 0:v.getCell(f,y))||J(y-R+1,this._localeService.t("sheets-table.columnPrefix")));e.push({id:V.id,params:{unitId:o,subUnitId:i,tableId:b.id,name:b.name,header:x,range:b.range,options:b.options}})}else if(l.startColumn<=c.startColumn&&l.endColumn>=c.startColumn){const b=l.endColumn-c.startColumn+1;t.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:c.startColumn,count:b}}}});const f=[];for(let R=0;R<b;R++){const I=m.getTableColumnByIndex(R);I&&f.push(I.toJSON())}e.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:c.startColumn,count:b,columnsJson:f}}}})}else if(l.startColumn>c.startColumn&&l.endColumn>c.endColumn){const b=c.endColumn-l.startColumn+1;t.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:l.startColumn,count:b}}}});const f=[],R=l.startColumn-c.startColumn;for(let I=0;I<b;I++){const w=m.getTableColumnByIndex(I+R);w&&f.push(w.toJSON())}e.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:l.startColumn,count:h,columnsJson:f}}}})}else if(l.startColumn>c.startColumn&&l.endColumn<=c.endColumn){t.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Delete,rowColType:D.Col,index:l.startColumn,count:h}}}});const b=[],f=l.startColumn-c.startColumn;for(let R=0;R<h;R++){const I=m.getTableColumnByIndex(R+f);I&&b.push(I.toJSON())}e.push({id:_.id,params:{unitId:o,subUnitId:i,tableId:m.getId(),config:{rowColOperation:{operationType:p.Insert,rowColType:D.Col,index:l.startColumn,count:h,columnsJson:b}}}})}}}),{undos:e,redos:t,preRedos:a,preUndos:r}}_initCommandListener(){this._commandService.onCommandExecuted(n=>{if(n.id===T.InsertRowMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endRow-r.startRow+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startRow<=d.startRow&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startRow:d.startRow+s,endRow:d.endRow+s}})})}else if(n.id===T.InsertColMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endColumn-r.startColumn+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startColumn<=d.startColumn&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startColumn:d.startColumn+s,endColumn:d.endColumn+s}})})}else if(n.id===T.RemoveRowMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endRow-r.startRow+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startRow<d.startRow&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startRow:d.startRow-s,endRow:d.endRow-s}})})}else if(n.id===T.RemoveColMutation.id){const e=n.params,{unitId:t,subUnitId:a,range:r}=e,s=r.endColumn-r.startColumn+1;this._tableManager.getTablesBySubunitId(t,a).forEach(i=>{const d=i.getRange();r.startColumn<d.startColumn&&this._tableManager.updateTableRange(t,i.getId(),{newRange:{...d,startColumn:d.startColumn-s,endColumn:d.endColumn-s}})})}})}};z=jt([L(0,u.Inject(u.ICommandService)),L(1,u.Inject(T.RefRangeService)),L(2,u.Inject(u.IUniverInstanceService)),L(3,u.Inject(u.Injector)),L(4,u.Inject(T.SheetInterceptorService)),L(5,u.Inject(g.TableManager)),L(6,u.Inject(u.LocaleService))],z);var Gt=Object.getOwnPropertyDescriptor,zt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Gt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},K=(n,e)=>(t,a)=>e(t,a,n);let X=class extends u.Disposable{constructor(e,t,a,r){super();C(this,"_defaultThemeIndex",0);C(this,"_allThemes",[]);this._tableManager=e,this._sheetRangeThemeService=t,this._sheetRangeThemeModel=a,this._configService=r,this._initUserTableTheme(),this.registerTableChangeEvent(),this._initDefaultTableTheme()}registerTableChangeEvent(){this.disposeWithMe(this._tableManager.tableAdd$.subscribe(e=>{const{range:t,tableId:a,unitId:r,subUnitId:s}=e,o=this._tableManager.getTable(r,a),i=this._allThemes[this._defaultThemeIndex].name;o.setTableStyleId(i),this._sheetRangeThemeService.registerRangeThemeStyle(i,{unitId:r,subUnitId:s,range:{...t}})})),this.disposeWithMe(this._tableManager.tableRangeChanged$.subscribe(e=>{const{range:t,oldRange:a,tableId:r,unitId:s,subUnitId:o}=e,i=this._tableManager.getTable(s,r);let d=i.getTableStyleId();d||(d=this._allThemes[this._defaultThemeIndex].name,i.setTableStyleId(d)),this._sheetRangeThemeService.removeRangeThemeRule(d,{unitId:s,subUnitId:o,range:{...a}}),this._sheetRangeThemeService.registerRangeThemeStyle(d,{unitId:s,subUnitId:o,range:{...t}})})),this.disposeWithMe(this._tableManager.tableThemeChanged$.subscribe(e=>{const{theme:t,oldTheme:a,tableId:r,unitId:s,subUnitId:o}=e,d=this._tableManager.getTable(s,r).getRange();this._sheetRangeThemeService.removeRangeThemeRule(a,{unitId:s,subUnitId:o,range:{...d}}),this._sheetRangeThemeService.registerRangeThemeStyle(t,{unitId:s,subUnitId:o,range:{...d}})})),this.disposeWithMe(this._tableManager.tableDelete$.subscribe(e=>{const{range:t,unitId:a,subUnitId:r,tableStyleId:s=this._allThemes[this._defaultThemeIndex].name}=e;this._sheetRangeThemeService.removeRangeThemeRule(s,{unitId:a,subUnitId:r,range:{...t}})}))}_initUserTableTheme(){const e=this._configService.getConfig(ce)||{},t=e.defaultThemeIndex||0,a=e.userThemes||[];this._defaultThemeIndex=t,this._allThemes=a.concat(ge)}_initDefaultTableTheme(){for(let e=0;e<this._allThemes.length;e++){const{name:t,style:a}=this._allThemes[e],r=new T.RangeThemeStyle(t,a);this._sheetRangeThemeModel.registerDefaultRangeTheme(r)}}dispose(){super.dispose(),this._allThemes=[],this._defaultThemeIndex=0}};X=zt([K(0,u.Inject(g.TableManager)),K(1,u.Inject(T.SheetRangeThemeService)),K(2,u.Inject(T.SheetRangeThemeModel)),K(3,u.IConfigService)],X);var Kt=Object.getOwnPropertyDescriptor,Xt=(n,e,t,a)=>{for(var r=a>1?void 0:a?Kt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},se=(n,e)=>(t,a)=>e(t,a,n);let Z=class extends u.Disposable{constructor(e,t,a){super();C(this,"_tableFilteredOutRows$",new N.BehaviorSubject(new Set));C(this,"tableFilteredOutRows$",this._tableFilteredOutRows$.asObservable());C(this,"_subscription",null);this._tableManager=e,this._sheetInterceptorService=t,this._univerInstanceService=a,this.registerFilterChangeEvent(),this.initTableHiddenRowIntercept(),this._initFilteredOutRows()}get tableFilteredOutRows(){return this._tableFilteredOutRows$.value}set tableFilteredOutRows(e){this._tableFilteredOutRows$.next(e)}initTableHiddenRowIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(T.INTERCEPTOR_POINT.ROW_FILTERED,{priority:100,handler:(e,t,a)=>{if(e)return!0;const r=this.tableFilteredOutRows.has(t.row);return r?!0:a(r)}}))}_initFilteredOutRows(){this._tableManager.tableInitStatus$.pipe(N.filter(e=>e),N.switchMap(()=>this._univerInstanceService.getCurrentTypeOfUnit$(u.UniverInstanceType.UNIVER_SHEET)),N.filter(e=>e!=null),N.switchMap(e=>e.activeSheet$),N.filter(e=>e!=null)).subscribe(()=>{const e=T.getSheetCommandTarget(this._univerInstanceService);if(!e)return;const{unitId:t,subUnitId:a}=e;this.tableFilteredOutRows.clear(),this._tableManager.getTablesBySubunitId(t,a).forEach(s=>{const o=s.getTableFilters().getFilterOutRows();if(o)for(const i of o)this.tableFilteredOutRows.add(i)})})}registerFilterChangeEvent(){this.disposeWithMe(this._tableManager.tableFilterChanged$.subscribe(e=>{var l;const{unitId:t,subUnitId:a,tableId:r}=e,s=(l=this._univerInstanceService.getUnit(t))==null?void 0:l.getSheetBySheetId(a),o=this._tableManager.getTable(t,r);if(!s||!o)return;this.tableFilteredOutRows.clear(),o.getTableFilters().doFilter(s,o.getTableFilterRange()),this._tableManager.getTablesBySubunitId(t,a).forEach(h=>{const m=h.getTableFilters().getFilterOutRows();if(m)for(const c of m)this.tableFilteredOutRows.add(c)})}))}dispose(){var e;super.dispose(),(e=this._subscription)==null||e.unsubscribe()}};Z=Xt([se(0,u.Inject(g.TableManager)),se(1,u.Inject(T.SheetInterceptorService)),se(2,u.Inject(u.IUniverInstanceService))],Z);var Zt=Object.getOwnPropertyDescriptor,en=(n,e,t,a)=>{for(var r=a>1?void 0:a?Zt(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(r=o(r)||r);return r},oe=(n,e)=>(t,a)=>e(t,a,n);g.UniverSheetsTablePlugin=(ee=class extends u.Plugin{constructor(e=he,t,a,r){super(),this._config=e,this._injector=t,this._configService=a,this._commandService=r;const{...s}=u.merge({},he,this._config);this._configService.setConfig(ce,s),this._initRegisterCommand()}onStarting(){u.registerDependencies(this._injector,[[g.TableManager],[X],[g.SheetsTableController],[g.SheetTableService],[Z],[G],[z]]),u.touchDependencies(this._injector,[[G],[z],[X],[g.SheetsTableController],[g.SheetTableService],[Z]])}onReady(){u.touchDependencies(this._injector,[[g.TableManager]])}_initRegisterCommand(){[we,V,fe,H,Y,Ie,Fe,_,ve,Me,ye,De,Ne,Oe].forEach(e=>this._commandService.registerCommand(e))}},C(ee,"pluginName",_e),C(ee,"type",u.UniverInstanceType.UNIVER_SHEET),ee),g.UniverSheetsTablePlugin=en([oe(1,u.Inject(u.Injector)),oe(2,u.IConfigService),oe(3,u.Inject(u.ICommandService))],g.UniverSheetsTablePlugin),g.AddSheetTableCommand=we,g.AddSheetTableMutation=V,g.AddTableThemeCommand=ve,g.DeleteSheetTableCommand=fe,g.DeleteSheetTableMutation=H,g.RemoveTableThemeCommand=Me,g.SHEET_TABLE_CUSTOM_THEME_PREFIX=pe,g.SetSheetTableCommand=Fe,g.SetSheetTableFilterCommand=Ie,g.SetSheetTableFilterMutation=Y,g.SetSheetTableMutation=_,g.SheetTableInsertColCommand=De,g.SheetTableInsertRowCommand=ye,g.SheetTableRemoveColCommand=Oe,g.SheetTableRemoveRowCommand=Ne,g.SheetsTableButtonStateEnum=$,g.SheetsTableSortStateEnum=A,g.TableColumnDataTypeEnum=ne,g.TableColumnFilterTypeEnum=W,g.TableConditionTypeEnum=O,g.TableDateCompareTypeEnum=S,g.TableNumberCompareTypeEnum=F,g.TableStringCompareTypeEnum=E,g.customEmptyThemeWithBorderStyle=Be,g.isConditionFilter=de,g.isManualFilter=Ae,g.processStyleWithBorderStyle=Le,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
3
3
 
4
4
 
5
5
  // @univerjs/sheets-table/facade
@@ -7,7 +7,7 @@
7
7
 
8
8
 
9
9
  // @univerjs/sheets-table-ui/index
10
- (function(L,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@univerjs/engine-render"),require("@univerjs/sheets-table"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("rxjs"),require("react/jsx-runtime"),require("@univerjs/design"),require("@univerjs/sheets"),require("@univerjs/sheets-sort"),require("react"),require("@univerjs/engine-formula"),require("@univerjs/sheets-formula-ui")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render","@univerjs/sheets-table","@univerjs/sheets-ui","@univerjs/ui","rxjs","react/jsx-runtime","@univerjs/design","@univerjs/sheets","@univerjs/sheets-sort","react","@univerjs/engine-formula","@univerjs/sheets-formula-ui"],s):(L=typeof globalThis<"u"?globalThis:L||self,s(L.UniverSheetsTableUi={},L.UniverCore,L.UniverEngineRender,L.UniverSheetsTable,L.UniverSheetsUi,L.UniverUi,L.rxjs,L.React,L.UniverDesign,L.UniverSheets,L.UniverSheetsSort,L.React,L.UniverEngineFormula,L.UniverSheetsFormulaUi))})(this,function(L,s,q,r,Y,h,x,l,p,k,Ue,T,Ae,yt){"use strict";var Rn=Object.defineProperty;var Fn=(L,s,q)=>s in L?Rn(L,s,{enumerable:!0,configurable:!0,writable:!0,value:q}):L[s]=q;var U=(L,s,q)=>Fn(L,typeof s!="symbol"?s+"":s,q);const Et="SHEET_TABLE_UI_PLUGIN",re="SHEETS_TABLE_FILTER_PANEL_OPENED_KEY",It="UNIVER_SHEET_Table_FILTER_PANEL_ID",nt="TABLE_TOOLBAR_BUTTON",ve="TABLE_SELECTOR_DIALOG",_t="SHEET_TABLE_THEME_PANEL_ID",rt="SHEET_TABLE_THEME_PANEL",je="table-custom-",wt="table-default-",ae="rgb(255, 255, 255)",Q="none",Me="1px solid rgb(var(--grey-200))";var G=function(){return G=Object.assign||function(a){for(var e,t=1,n=arguments.length;t<n;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(a[i]=e[i])}return a},G.apply(this,arguments)},Dt=function(a,e){var t={};for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&e.indexOf(n)<0&&(t[n]=a[n]);if(a!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(a);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(a,n[i])&&(t[n[i]]=a[n[i]]);return t},J=T.forwardRef(function(a,e){var t=a.icon,n=a.id,i=a.className,o=a.extend,c=Dt(a,["icon","id","className","extend"]),u="univerjs-icon univerjs-icon-".concat(n," ").concat(i||"").trim(),v=T.useRef("_".concat(xt()));return at(t,"".concat(n),{defIds:t.defIds,idSuffix:v.current},G({ref:e,className:u},c),o)});function at(a,e,t,n,i){return T.createElement(a.tag,G(G({key:e},Nt(a,t,i)),n),(Mt(a,t).children||[]).map(function(o,c){return at(o,"".concat(e,"-").concat(a.tag,"-").concat(c),t,void 0,i)}))}function Nt(a,e,t){var n=G({},a.attrs);t!=null&&t.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=t.colorChannel1),a.tag==="mask"&&n.id&&(n.id=n.id+e.idSuffix),Object.entries(n).forEach(function(o){var c=o[0],u=o[1];c==="mask"&&typeof u=="string"&&(n[c]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))});var i=e.defIds;return!i||i.length===0||(a.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(function(o){var c=o[0],u=o[1];typeof u=="string"&&(n[c]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),n}function Mt(a,e){var t,n=e.defIds;return!n||n.length===0?a:a.tag==="defs"&&(!((t=a.children)===null||t===void 0)&&t.length)?G(G({},a),{children:a.children.map(function(i){return typeof i.attrs.id=="string"&&n&&n.includes(i.attrs.id)?G(G({},i),{attrs:G(G({},i.attrs),{id:i.attrs.id+e.idSuffix})}):i})}):a}function xt(){return Math.random().toString(36).substring(2,8)}J.displayName="UniverIcon";var 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:"M12.4208 14.4667C12.4208 14.798 12.1522 15.0667 11.8208 15.0667C11.4895 15.0667 11.2208 14.798 11.2208 14.4667V2.98193L9.97861 4.22417C9.7443 4.45848 9.3644 4.45848 9.13008 4.22417C8.89577 3.98985 8.89577 3.60995 9.13008 3.37564L11.3967 1.10897C11.6311 0.874657 12.011 0.874657 12.2453 1.10897L14.5119 3.37564C14.7463 3.60995 14.7463 3.98985 14.5119 4.22417C14.2776 4.45848 13.8977 4.45848 13.6634 4.22417L12.4208 2.9816V14.4667Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.98967 10.2798C1.6583 10.2798 1.38967 10.0112 1.38967 9.67983C1.38967 9.34846 1.6583 9.07983 1.98967 9.07983H6.50138C6.74406 9.07983 6.96284 9.22602 7.05571 9.45022C7.14858 9.67443 7.09725 9.9325 6.92565 10.1041L3.43819 13.5916H6.50138C6.83276 13.5916 7.10138 13.8602 7.10138 14.1916C7.10138 14.5229 6.83276 14.7916 6.50138 14.7916H1.98967C1.74699 14.7916 1.52821 14.6454 1.43534 14.4212C1.34247 14.197 1.3938 13.9389 1.5654 13.7673L5.05286 10.2798H1.98967Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.1846 1.86439C4.8641 0.989866 3.62725 0.989866 3.30674 1.86439L1.34882 7.20672C1.23479 7.51786 1.39458 7.86252 1.70571 7.97655C2.01684 8.09058 2.3615 7.93079 2.47553 7.61966L3.06159 6.02055L3.06338 6.02056H5.42975L6.01581 7.61966C6.12984 7.93079 6.4745 8.09058 6.78563 7.97655C7.09677 7.86252 7.25655 7.51786 7.14252 7.20672L5.1846 1.86439ZM4.98996 4.82056L4.24567 2.78971L3.50138 4.82056H4.98996Z",fillRule:"evenodd",clipRule:"evenodd"}}]},it=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"ascending-icon",ref:e,icon:Lt}))});it.displayName="AscendingIcon";var $t={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:"M5.3313 1.4667C5.3313 1.13533 5.59993 0.866699 5.9313 0.866699H10.069C10.4004 0.866699 10.669 1.13533 10.669 1.4667C10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443C14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928L9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171C10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778L9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539C9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263L6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539C5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778L6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ot=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"delete-icon",ref:e,icon:$t}))});ot.displayName="DeleteIcon";var kt={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:"M12.4208 1.53335C12.4208 1.20198 12.1522 0.93335 11.8208 0.93335C11.4895 0.93335 11.2208 1.20198 11.2208 1.53335V13.0181L9.97861 11.7758C9.7443 11.5415 9.3644 11.5415 9.13008 11.7758C8.89577 12.0101 8.89577 12.39 9.13008 12.6244L11.3967 14.891C11.6311 15.1253 12.011 15.1253 12.2453 14.891L14.5119 12.6244C14.7463 12.39 14.7463 12.0101 14.5119 11.7758C14.2776 11.5415 13.8977 11.5415 13.6634 11.7758L12.4208 13.0184V1.53335Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.98967 10.2798C1.6583 10.2798 1.38967 10.0112 1.38967 9.67983C1.38967 9.34846 1.6583 9.07983 1.98967 9.07983H6.50138C6.74406 9.07983 6.96284 9.22602 7.05571 9.45022C7.14858 9.67443 7.09725 9.9325 6.92565 10.1041L3.43819 13.5916H6.50138C6.83276 13.5916 7.10138 13.8602 7.10138 14.1916C7.10138 14.5229 6.83276 14.7916 6.50138 14.7916H1.98967C1.74699 14.7916 1.52821 14.6454 1.43534 14.4212C1.34247 14.197 1.3938 13.9389 1.5654 13.7673L5.05286 10.2798H1.98967Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.1846 1.86439C4.8641 0.989866 3.62725 0.989866 3.30674 1.86439L1.34882 7.20672C1.23479 7.51786 1.39458 7.86252 1.70571 7.97655C2.01684 8.09058 2.3615 7.93079 2.47553 7.61966L3.06159 6.02055L3.06338 6.02056H5.42975L6.01581 7.61966C6.12984 7.93079 6.4745 8.09058 6.78563 7.97655C7.09677 7.86252 7.25655 7.51786 7.14252 7.20672L5.1846 1.86439ZM4.98996 4.82056L4.24567 2.78971L3.50138 4.82056H4.98996Z",fillRule:"evenodd",clipRule:"evenodd"}}]},lt=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"descending-icon",ref:e,icon:kt}))});lt.displayName="DescendingIcon";var Pt={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.85869 12.9216C8.38445 13.4708 7.61555 13.4708 7.14131 12.9216L0.358114 5.06726C-0.406895 4.18144 0.134916 2.66683 1.2168 2.66683L14.7832 2.66683C15.8651 2.66683 16.4069 4.18144 15.6419 5.06726L8.85869 12.9216Z"}}]},ge=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"dropdown-icon",ref:e,icon:Pt}))});ge.displayName="DropdownIcon";var Ot={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:"M3.33333 3.33333V6H6V3.33333H3.33333ZM2 3.238C2 2.55427 2.55427 2 3.238 2H6.09533C6.77906 2 7.33333 2.55427 7.33333 3.238V6.09533C7.33333 6.77906 6.77906 7.33333 6.09533 7.33333H3.238C2.55427 7.33333 2 6.77906 2 6.09533V3.238ZM10 3.33333V6H12.6667V3.33333H10ZM8.66667 3.238C8.66667 2.55427 9.22094 2 9.90467 2H12.762C13.4457 2 14 2.55427 14 3.238V6.09533C14 6.77906 13.4457 7.33333 12.762 7.33333H9.90467C9.22094 7.33333 8.66667 6.77906 8.66667 6.09533V3.238ZM3.33333 10V12.6667H6V10H3.33333ZM2 9.90467C2 9.22094 2.55427 8.66667 3.238 8.66667H6.09533C6.77906 8.66667 7.33333 9.22094 7.33333 9.90467V12.762C7.33333 13.4457 6.77906 14 6.09533 14H3.238C2.55427 14 2 13.4457 2 12.762V9.90467ZM10 10V12.6667H12.6667V10H10ZM8.66667 9.90467C8.66667 9.22094 9.22094 8.66667 9.90467 8.66667H12.762C13.4457 8.66667 14 9.22094 14 9.90467V12.762C14 13.4457 13.4457 14 12.762 14H9.90467C9.22094 14 8.66667 13.4457 8.66667 12.762V9.90467Z",fillRule:"evenodd",clipRule:"evenodd"}}]},st=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"grid-outline-icon",ref:e,icon:Ot}))});st.displayName="GridOutlineIcon";var Bt={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:"M11.3536 6.14645C11.5488 6.34171 11.5488 6.65829 11.3536 6.85355L8.35355 9.85355C8.15829 10.0488 7.84171 10.0488 7.64645 9.85355L4.64645 6.85355C4.45118 6.65829 4.45118 6.34171 4.64645 6.14645C4.84171 5.95118 5.15829 5.95118 5.35355 6.14645L8 8.79289L10.6464 6.14645C10.8417 5.95118 11.1583 5.95118 11.3536 6.14645Z",fillRule:"evenodd",clipRule:"evenodd"}}]},We=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"more-down-icon",ref:e,icon:Bt}))});We.displayName="MoreDownIcon";var Rt={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:"M8.01281 1.36643C8.79386 0.585377 10.0602 0.585378 10.8412 1.36643L12.9223 3.44752C13.7034 4.22857 13.7034 5.4949 12.9223 6.27595L9.36445 9.83383C8.5834 10.6149 7.31707 10.6149 6.53602 9.83383L4.45493 7.75273C3.67388 6.97168 3.67388 5.70535 4.45493 4.9243L8.01281 1.36643ZM9.9927 2.21495C9.68028 1.90253 9.17375 1.90253 8.86133 2.21495L5.30346 5.77283L5.29671 5.77966L10.839 6.66224L12.0738 5.42742C12.3862 5.115 12.3862 4.60847 12.0738 4.29605L9.9927 2.21495Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M14.5179 9.48875C14.5179 9.99175 14.1101 10.3995 13.607 10.3995C13.1041 10.3995 12.6963 9.99175 12.6963 9.48875C12.6963 9.1773 13.0455 8.59966 13.3114 8.20487C13.4549 7.99177 13.7591 7.99177 13.9027 8.20486C14.1687 8.59965 14.5179 9.1773 14.5179 9.48875Z"}},{tag:"path",attrs:{fill:"colorChannel1",d:"M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z"}}]},ct=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"paint-bucket-double-icon",ref:e,icon:Rt}))});ct.displayName="PaintBucketDoubleIcon";var Ft={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:"M3.80068 2.57257L7.27955 2.57256C7.61092 2.57256 7.87954 2.30393 7.87954 1.97256C7.87954 1.64119 7.61091 1.37256 7.27954 1.37256L3.80068 1.37257C2.36473 1.37257 1.20067 2.53665 1.20068 3.97259L1.20074 12.3001C1.20075 13.736 2.36481 14.9 3.80074 14.9H12.1282C13.5641 14.9 14.7282 13.736 14.7282 12.3V8.82116C14.7282 8.48979 14.4595 8.22116 14.1282 8.22116C13.7968 8.22116 13.5282 8.48979 13.5282 8.82116V12.3C13.5282 13.0732 12.9014 13.7 12.1282 13.7H3.80074C3.02754 13.7 2.40074 13.0732 2.40074 12.3001L2.40068 3.97258C2.40068 3.19938 3.02748 2.57257 3.80068 2.57257Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M14.0072 2.0955C13.0997 1.18757 11.6278 1.18794 10.7207 2.09632L6.17749 6.646C6.10294 6.72065 6.04543 6.81056 6.00889 6.90954L4.59817 10.7315C4.51713 10.951 4.57116 11.1977 4.73657 11.3633C4.90198 11.5288 5.14858 11.5831 5.36823 11.5023L9.20237 10.0916C9.30186 10.055 9.3922 9.99722 9.46714 9.92224L14.0073 5.37972C14.9139 4.47266 14.9138 3.00252 14.0072 2.0955ZM11.5698 2.94424C12.0083 2.50513 12.7198 2.50496 13.1585 2.94384C13.5968 3.38229 13.5968 4.09294 13.1585 4.53141L8.69127 9.00102L6.1742 9.92713L7.09912 7.42132L11.5698 2.94424Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ut=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"rename-icon",ref:e,icon:Ft}))});ut.displayName="RenameIcon";var Ht={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:"M1.7643 4.13354C1.7643 2.82523 2.82488 1.76465 4.13319 1.76465H11.8665C13.1748 1.76465 14.2354 2.82524 14.2354 4.13354V11.8669C14.2354 13.1752 13.1748 14.2358 11.8665 14.2358H4.13318C2.82488 14.2358 1.7643 13.1752 1.7643 11.8669V6.1462C1.76388 6.13711 1.76367 6.12797 1.76367 6.11878C1.76367 6.10959 1.76388 6.10045 1.7643 6.09136V4.13354ZM2.94652 6.70989V11.8669C2.94652 12.5222 3.47781 13.0535 4.13318 13.0535H5.52732V6.70989H2.94652ZM5.52732 5.52767H2.94652V4.13354C2.94652 3.47816 3.47781 2.94687 4.13319 2.94687H5.52732V5.52767ZM6.70954 6.70989V13.0535H11.8665C12.5219 13.0535 13.0532 12.5222 13.0532 11.8669V6.70989L6.70954 6.70989ZM13.0532 5.52767L6.70954 5.52767V2.94687H11.8665C12.5219 2.94687 13.0532 3.47816 13.0532 4.13354V5.52767Z",fillRule:"evenodd",clipRule:"evenodd"}}]},dt=T.forwardRef(function(a,e){return T.createElement(J,Object.assign({},a,{id:"table-icon",ref:e,icon:Ht}))});dt.displayName="TableIcon";var ie=(a=>(a.Items="items",a.Condition="condition",a))(ie||{}),Vt=Object.getOwnPropertyDescriptor,Ut=(a,e,t,n)=>{for(var i=n>1?void 0:n?Vt(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},fe=(a,e)=>(t,n)=>e(t,n,a);let me=class extends s.Disposable{constructor(e,t,n,i,o){super();U(this,"_itemsCache",new Map);this._tableManager=e,this._sheetTableService=t,this._univerInstanceService=n,this._commandService=i,this._localeService=o,this._registerTableFilterChangeEvent()}_registerTableFilterChangeEvent(){this._commandService.onCommandExecuted(e=>{if(e.id===k.SetRangeValuesMutation.id){const{unitId:t,subUnitId:n,cellValue:i}=e.params,o=this._tableManager.getTablesBySubunitId(t,n);if(!o.length)return;new s.ObjectMatrix(i).forValue((u,v,m)=>{const d=s.cellToRange(u,v),b=o.find(I=>{const E=I.getTableFilterRange();return s.Rectangle.intersects(E,d)});if(b){const I=v-b.getRange().startColumn;this._itemsCache.delete(b.getId()+I)}})}else if(e.id===r.SetSheetTableFilterCommand.id){const{unitId:t,tableId:n}=e.params,i=this._tableManager.getTable(t,n);if(!i)return;const o=i.getSubunitId();this._tableManager.getTablesBySubunitId(t,o).forEach(u=>{const v=u.getRange();for(let m=v.startColumn;m<=v.endColumn;m++)this._itemsCache.delete(u.getId()+m)})}})}getTableFilterPanelInitProps(e,t,n,i){const o=this._tableManager.getTable(e,n),c=o.getRange(),u=o.getTableFilterColumn(i-c.startColumn);return{unitId:e,subUnitId:t,tableFilter:u,currentFilterBy:r.isConditionFilter(u)?ie.Condition:ie.Items,tableId:n,columnIndex:i-c.startColumn}}getTableFilterCheckedItems(e,t,n){const i=this._tableManager.getTable(e,t),o=[];if(i){const c=i.getTableFilterColumn(n);c&&r.isManualFilter(c)&&o.push(...c.values)}return o}setTableFilter(e,t,n,i){if(!this._tableManager.getTable(e,t))return;const c={unitId:e,tableId:t,column:n,tableFilter:i};this._commandService.executeCommand(r.SetSheetTableFilterCommand.id,c)}getTableFilterItems(e,t,n,i){var B;if(this._itemsCache.has(n+i))return this._itemsCache.get(n+i)||{data:[],itemsCountMap:new Map,allItemsCount:0};const o=this._tableManager.getTable(e,n);if(!o)return{data:[],itemsCountMap:new Map,allItemsCount:0};const c=o.getTableFilterRange(),{startRow:u,endRow:v,startColumn:m}=c,d=m+i,b=(B=this._univerInstanceService.getUnit(e))==null?void 0:B.getSheetBySheetId(t);if(!b)return{data:[],itemsCountMap:new Map,allItemsCount:0};const I=[],E=new Map;let _=0;for(let y=u;y<=v;y++){if(b.isRowFiltered(y))continue;let D=this._sheetTableService.getCellValueWithConditionType(b,y,d);D===void 0&&(D=this._localeService.t("sheets-table.condition.empty")),E.has(D)||I.push({title:D,key:`${d}_${y}`,leaf:!0}),_++,E.set(D,(E.get(D)||0)+1)}return this._itemsCache.set(n+i,{data:I,itemsCountMap:E,allItemsCount:_}),{data:I,itemsCountMap:E,allItemsCount:_}}};me=Ut([fe(0,s.Inject(r.TableManager)),fe(1,s.Inject(r.SheetTableService)),fe(2,s.Inject(s.IUniverInstanceService)),fe(3,s.ICommandService),fe(4,s.Inject(s.LocaleService))],me);var A=(a=>(a.DatePicker="DatePicker",a.DateRange="DateRange",a.Input="Input",a.Inputs="Inputs",a.Select="Select",a.None="None",a))(A||{});function At(a){const t=a.get(s.LocaleService).t;return[{value:r.TableConditionTypeEnum.String,label:t(`sheets-table.condition.${r.TableConditionTypeEnum.String}`),children:[{value:r.TableStringCompareTypeEnum.Equal,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.Equal}`)},{value:r.TableStringCompareTypeEnum.NotEqual,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.NotEqual}`)},{value:r.TableStringCompareTypeEnum.Contains,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.Contains}`)},{value:r.TableStringCompareTypeEnum.NotContains,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.NotContains}`)},{value:r.TableStringCompareTypeEnum.StartsWith,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.StartsWith}`)},{value:r.TableStringCompareTypeEnum.EndsWith,label:t(`sheets-table.string.compare.${r.TableStringCompareTypeEnum.EndsWith}`)}]},{value:r.TableConditionTypeEnum.Number,label:t(`sheets-table.condition.${r.TableConditionTypeEnum.Number}`),children:[{value:r.TableNumberCompareTypeEnum.Equal,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.Equal}`)},{value:r.TableNumberCompareTypeEnum.NotEqual,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.NotEqual}`)},{value:r.TableNumberCompareTypeEnum.GreaterThan,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.GreaterThan}`)},{value:r.TableNumberCompareTypeEnum.GreaterThanOrEqual,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.GreaterThanOrEqual}`)},{value:r.TableNumberCompareTypeEnum.LessThan,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.LessThan}`)},{value:r.TableNumberCompareTypeEnum.LessThanOrEqual,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.LessThanOrEqual}`)},{value:r.TableNumberCompareTypeEnum.Between,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.Between}`)},{value:r.TableNumberCompareTypeEnum.NotBetween,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.NotBetween}`)},{value:r.TableNumberCompareTypeEnum.Above,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.Above}`)},{value:r.TableNumberCompareTypeEnum.Below,label:t(`sheets-table.number.compare.${r.TableNumberCompareTypeEnum.Below}`)}]},{value:r.TableConditionTypeEnum.Date,label:t(`sheets-table.condition.${r.TableConditionTypeEnum.Date}`),children:[{value:r.TableDateCompareTypeEnum.Equal,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Equal}`)},{value:r.TableDateCompareTypeEnum.NotEqual,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.NotEqual}`)},{value:r.TableDateCompareTypeEnum.After,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.After}`)},{value:r.TableDateCompareTypeEnum.AfterOrEqual,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.AfterOrEqual}`)},{value:r.TableDateCompareTypeEnum.Before,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Before}`)},{value:r.TableDateCompareTypeEnum.BeforeOrEqual,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.BeforeOrEqual}`)},{value:r.TableDateCompareTypeEnum.Between,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Between}`)},{value:r.TableDateCompareTypeEnum.NotBetween,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.NotBetween}`)},{value:r.TableDateCompareTypeEnum.Today,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Today}`)},{value:r.TableDateCompareTypeEnum.Yesterday,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Yesterday}`)},{value:r.TableDateCompareTypeEnum.Tomorrow,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Tomorrow}`)},{value:r.TableDateCompareTypeEnum.ThisWeek,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.ThisWeek}`)},{value:r.TableDateCompareTypeEnum.LastWeek,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.LastWeek}`)},{value:r.TableDateCompareTypeEnum.NextWeek,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.NextWeek}`)},{value:r.TableDateCompareTypeEnum.ThisMonth,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.ThisMonth}`)},{value:r.TableDateCompareTypeEnum.LastMonth,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.LastMonth}`)},{value:r.TableDateCompareTypeEnum.NextMonth,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.NextMonth}`)},{value:r.TableDateCompareTypeEnum.ThisYear,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.ThisYear}`)},{value:r.TableDateCompareTypeEnum.LastYear,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.LastYear}`)},{value:r.TableDateCompareTypeEnum.NextYear,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.NextYear}`)},{value:r.TableDateCompareTypeEnum.Quarter,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Quarter}`)},{value:r.TableDateCompareTypeEnum.Month,label:t(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Month}`)}]}]}function jt(a,e){if(!e)return[];const n=a.get(s.LocaleService).t;switch(e){case r.TableDateCompareTypeEnum.Quarter:return[{value:r.TableDateCompareTypeEnum.Q1,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Q1}`)},{value:r.TableDateCompareTypeEnum.Q2,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Q2}`)},{value:r.TableDateCompareTypeEnum.Q3,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Q3}`)},{value:r.TableDateCompareTypeEnum.Q4,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.Q4}`)}];case r.TableDateCompareTypeEnum.Month:return[{value:r.TableDateCompareTypeEnum.M1,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M1}`)},{value:r.TableDateCompareTypeEnum.M2,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M2}`)},{value:r.TableDateCompareTypeEnum.M3,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M3}`)},{value:r.TableDateCompareTypeEnum.M4,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M4}`)},{value:r.TableDateCompareTypeEnum.M5,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M5}`)},{value:r.TableDateCompareTypeEnum.M6,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M6}`)},{value:r.TableDateCompareTypeEnum.M7,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M7}`)},{value:r.TableDateCompareTypeEnum.M8,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M8}`)},{value:r.TableDateCompareTypeEnum.M9,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M9}`)},{value:r.TableDateCompareTypeEnum.M10,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M10}`)},{value:r.TableDateCompareTypeEnum.M11,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M11}`)},{value:r.TableDateCompareTypeEnum.M12,label:n(`sheets-table.date.compare.${r.TableDateCompareTypeEnum.M12}`)}];default:return[]}}const Ze=new Set([r.TableDateCompareTypeEnum.Equal,r.TableDateCompareTypeEnum.NotEqual,r.TableDateCompareTypeEnum.After,r.TableDateCompareTypeEnum.AfterOrEqual,r.TableDateCompareTypeEnum.Before,r.TableDateCompareTypeEnum.BeforeOrEqual]);function Wt(a,e){return e?a===r.TableConditionTypeEnum.String?A.Input:a===r.TableConditionTypeEnum.Number?e===r.TableNumberCompareTypeEnum.Between||e===r.TableNumberCompareTypeEnum.NotBetween?A.Inputs:A.Input:a===r.TableConditionTypeEnum.Date?e===r.TableDateCompareTypeEnum.Between||e===r.TableDateCompareTypeEnum.NotBetween?A.DateRange:e===r.TableDateCompareTypeEnum.Quarter||e===r.TableDateCompareTypeEnum.Month?A.Select:Ze.has(e)?A.DatePicker:A.None:A.None:A.None}function Zt(a){if(!a||a.filterType!=="condition")return{type:r.TableConditionTypeEnum.String,compareType:r.TableStringCompareTypeEnum.Equal,info:{}};const e=a.filterInfo,{conditionType:t,compareType:n}=e;if(t===r.TableConditionTypeEnum.Date)if(n===r.TableDateCompareTypeEnum.Between||n===r.TableDateCompareTypeEnum.NotBetween){let i;return Array.isArray(e.expectedValue)&&(i=e.expectedValue.map(o=>typeof o=="string"?new Date(o):o)),{type:t,compare:n,info:{dateRange:i}}}else{if(n===r.TableDateCompareTypeEnum.Today||n===r.TableDateCompareTypeEnum.Yesterday||n===r.TableDateCompareTypeEnum.Tomorrow||n===r.TableDateCompareTypeEnum.ThisWeek||n===r.TableDateCompareTypeEnum.LastWeek||n===r.TableDateCompareTypeEnum.NextWeek||n===r.TableDateCompareTypeEnum.ThisMonth||n===r.TableDateCompareTypeEnum.LastMonth||n===r.TableDateCompareTypeEnum.NextMonth||n===r.TableDateCompareTypeEnum.ThisYear||n===r.TableDateCompareTypeEnum.LastYear||n===r.TableDateCompareTypeEnum.NextYear)return{type:t,compare:n,info:{}};if(Ze.has(n)){let i;if(typeof e.expectedValue=="string")i=new Date(e.expectedValue);else if(Array.isArray(e.expectedValue))for(let o=0;o<e.expectedValue.length;o++)typeof e.expectedValue[o]=="string"&&(e.expectedValue[o]=new Date(e.expectedValue[o]));return{type:t,compare:n,info:{date:i}}}else return new Set([r.TableDateCompareTypeEnum.Q1,r.TableDateCompareTypeEnum.Q2,r.TableDateCompareTypeEnum.Q3,r.TableDateCompareTypeEnum.Q4]).has(n)?{type:t,compare:r.TableDateCompareTypeEnum.Quarter,info:{dateSelect:e.compareType}}:{type:t,compare:r.TableDateCompareTypeEnum.Month,info:{dateSelect:e.compareType}}}else{if(t===r.TableConditionTypeEnum.Number)return n===r.TableNumberCompareTypeEnum.Between||n===r.TableNumberCompareTypeEnum.NotBetween?{type:t,compare:n,info:{numberRange:e.expectedValue}}:{type:t,compare:n,info:{number:e.expectedValue}};if(t===r.TableConditionTypeEnum.String)return{type:t,compare:n,info:{string:e.expectedValue}}}return{type:r.TableConditionTypeEnum.String,compare:r.TableStringCompareTypeEnum.Equal,info:{}}}const qt=a=>{var E,_,B,y,P,D,F,N;const{conditionInfo:e,onChange:t}=a,n=h.useDependency(s.LocaleService),[i,o]=T.useState(!1),c=h.useDependency(s.Injector),u=At(c),v=(C,$,M)=>{t({type:$!=null?$:e.type,compare:M!=null?M:e.compare,info:C})},m=C=>{var H;const $=C[0],M=C[1];M&&o(!1);const f={};$===r.TableConditionTypeEnum.Date?M===r.TableDateCompareTypeEnum.Quarter?f.dateSelect=r.TableDateCompareTypeEnum.Q1:M===r.TableDateCompareTypeEnum.Month?f.dateSelect=r.TableDateCompareTypeEnum.M1:Ze.has(M)?f.date=new Date:f.dateRange=[new Date,new Date]:$===r.TableConditionTypeEnum.Number?f.number=0:$===r.TableConditionTypeEnum.String&&(f.string=""),v(f,C[0],(H=C[1])!=null?H:r.TableStringCompareTypeEnum.Equal)},d=Wt(e.type,e.compare);let b="";e.compare?b=`${n.t(`sheets-table.condition.${e.type}`)} - ${n.t(`sheets-table.${e.type}.compare.${e.compare}`)}`:b=n.t(`sheets-table.condition.${e.type}`);const I=jt(c,e.compare);return l.jsxs("div",{children:[l.jsx(p.Dropdown,{align:"start",open:i,onOpenChange:o,overlay:l.jsx(p.CascaderList,{value:[e.type,e.compare],options:u,onChange:m,contentClassName:"univer-flex-1",wrapperClassName:"!univer-h-[150px]"}),children:l.jsxs("div",{className:p.clsx("univer-box-border univer-flex univer-h-8 univer-w-full univer-items-center univer-justify-between univer-rounded-md univer-bg-white univer-px-2 univer-text-sm univer-transition-colors univer-duration-200 hover:univer-border-primary-600 focus:univer-border-primary-600 focus:univer-outline-none focus:univer-ring-2 dark:!univer-bg-gray-700 dark:!univer-text-white",p.borderClassName),children:[l.jsx("span",{children:b}),l.jsx(We,{})]})}),l.jsxs("div",{className:"univer-mt-3 univer-w-full",children:[d===A.Input&&l.jsx(l.Fragment,{children:e.type===r.TableConditionTypeEnum.String?l.jsx(p.Input,{className:"univer-w-full",placeholder:"请输入",value:e.info.string,onChange:C=>v({string:C})}):l.jsx(p.InputNumber,{className:"univer-h-7 univer-w-full",value:e.info.number,controls:!1,onChange:C=>{C!==null&&v({number:C})}})}),d===A.DatePicker&&l.jsx("div",{id:"univer-table-date-picker-wrapper",children:l.jsx(p.DatePicker,{className:"univer-w-full",value:(E=e.info.date)!=null?E:new Date,onValueChange:C=>v({date:C})})}),d===A.DateRange&&l.jsx("div",{id:"univer-table-date-range-wrapper",children:l.jsx(p.DateRangePicker,{className:"univer-w-full",value:[(B=(_=e.info.dateRange)==null?void 0:_[0])!=null?B:new Date,(P=(y=e.info.dateRange)==null?void 0:y[1])!=null?P:new Date],onValueChange:C=>{v(C?{dateRange:C}:{})}})}),d===A.Inputs&&l.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[l.jsx(p.InputNumber,{className:"univer-w-full",value:(D=e.info.numberRange)==null?void 0:D[0],onChange:C=>{var $;C!==null&&v({numberRange:[C,($=e.info.numberRange)==null?void 0:$[1]]})},controls:!1}),l.jsx("span",{children:" - "}),l.jsx(p.InputNumber,{className:"univer-w-full",value:(F=e.info.numberRange)==null?void 0:F[1],controls:!1,onChange:C=>{var $;C!==null&&v({numberRange:[($=e.info.numberRange)==null?void 0:$[0],C]})}})]}),d===A.Select&&l.jsx(p.Select,{className:"univer-w-full",value:(N=e.info.dateSelect)!=null?N:I[0].value,options:I,onChange:C=>v({dateSelect:C})})]})]})},Yt=a=>{let e=0;return a.forEach(t=>{e+=t}),e};function Qt(a){const{unitId:e,tableId:t,subUnitId:n,columnIndex:i,checkedItemSet:o,setCheckedItemSet:c,tableFilter:u}=a,v=h.useDependency(s.LocaleService),m=h.useDependency(me),{data:d,itemsCountMap:b,allItemsCount:I}=m.getTableFilterItems(e,n,t,i),[E,_]=T.useState(u===void 0?!0:o.size===b.size),[B,y]=T.useState(E?I:Yt(b)),P=!E&&o.size>0,[D,F]=T.useState(""),N=T.useMemo(()=>D?d.filter(f=>String(f.title).toLowerCase().includes(D.toLowerCase())):d,[D,d]),C=T.useCallback(()=>{E?(o.clear(),c(new Set(o)),_(!1)):(N.forEach(f=>{o.add(f.title)}),c(new Set(o)),_(!0))},[E]),$=T.useCallback(f=>{f===""?(_(!0),d.forEach(H=>{o.add(H.title)}),y(I)):(o.clear(),_(!1),y(0)),F(f)},[]),M=f=>{if(E){_(!1);const H=new Set;for(const{title:O}of d)f!==O&&H.add(O);y(I-b.get(f)),c(H)}else o.has(f)?(o.delete(f),y(B-b.get(f))):(o.add(f),y(B+b.get(f))),c(new Set(o))};return l.jsxs("div",{className:"univer-flex univer-h-full univer-flex-col",children:[l.jsx(p.Input,{autoFocus:!0,value:D,placeholder:v.t("sheets-filter.panel.search-placeholder"),onChange:$}),l.jsx("div",{className:p.clsx("univer-mt-2 univer-box-border univer-flex univer-h-[180px] univer-max-h-[180px] univer-flex-grow univer-flex-col univer-overflow-hidden univer-rounded-md univer-py-1.5 univer-pl-2",p.borderClassName),children:l.jsx("div",{className:p.clsx("univer-h-40 univer-overflow-y-auto univer-py-1 univer-pl-2",p.scrollbarClassName),children:l.jsxs("div",{className:"univer-h-full",children:[l.jsx("div",{className:"univer-flex univer-items-center univer-px-2 univer-py-1",children:l.jsx(p.Checkbox,{indeterminate:P,disabled:d.length===0,checked:E,onChange:C,children:l.jsxs("div",{className:"univer-flex univer-h-5 univer-flex-1 univer-items-center univer-text-sm",children:[l.jsx("span",{className:"univer-inline-block univer-truncate",children:`${v.t("sheets-filter.panel.select-all")}`}),l.jsx("span",{className:"univer-ml univer-text-gray-400",children:`(${B}/${D?N.length:I})`})]})})}),N.map(f=>l.jsx("div",{className:"univer-flex univer-items-center univer-px-2 univer-py-1",children:l.jsx(p.Checkbox,{checked:E||o.has(f.title),onChange:()=>{M(f.title)},children:l.jsxs("div",{className:"univer-flex univer-h-5 univer-flex-1 univer-text-sm",children:[l.jsx("span",{className:"univer-inline-block univer-truncate",children:f.title}),l.jsx("span",{className:"univer-ml-1 univer-text-gray-400",children:`(${b.get(f.title)||0})`})]})})},f.key))]})})})]})}function Gt(){var se;const a=h.useDependency(s.LocaleService),e=Xt(a),t=h.useDependency(me),n=h.useDependency(r.TableManager),i=h.useDependency(s.ICommandService),o=h.useDependency(s.IPermissionService),c=h.useDependency(he),u=c.getCurrentTableFilterInfo(),v=t.getTableFilterPanelInitProps(u.unitId,u.subUnitId,u.tableId,u.column),{unitId:m,subUnitId:d,tableId:b,tableFilter:I,currentFilterBy:E,columnIndex:_}=v,{data:B}=t.getTableFilterItems(m,d,b,_),y=t.getTableFilterCheckedItems(m,b,_),[P,D]=T.useState(new Set(y)),[F,N]=T.useState(E||ie.Items),[C,$]=T.useState(()=>{const g=v.tableFilter;return Zt(g)}),M=n.getTable(m,b);if(!M)return null;const f=M.getTableFilters(),H=f.getSortState();H.columnIndex===_&&(H.sortState,r.SheetsTableSortStateEnum.Asc),H.columnIndex===_&&(H.sortState,r.SheetsTableSortStateEnum.Desc);const O=()=>{c.closeFilterPanel()},X=()=>{O()},j=g=>{const R=M.getTableFilterRange();i.executeCommand(Ue.SortRangeCommand.id,{unitId:m,subUnitId:d,range:R,orderRules:[{colIndex:_+R.startColumn,type:g?Ue.SortType.ASC:Ue.SortType.DESC}],hasTitle:!1}),f.setSortState(_,g?r.SheetsTableSortStateEnum.Asc:r.SheetsTableSortStateEnum.Desc),O()},te=()=>{if(F===ie.Items){const g=[];for(const Z of B)P.has(Z.title)&&g.push(Z.title);const R=M.getTableFilterColumn(_);if(R){if(R.values.join(",")===g.join(",")){O();return}}else if(g.length===0){O();return}const V={filterType:r.TableColumnFilterTypeEnum.manual,values:g};t.setTableFilter(m,b,_,V)}else{let g;C.compare===r.TableDateCompareTypeEnum.Quarter||C.compare===r.TableDateCompareTypeEnum.Month?g={conditionType:C.type,compareType:Object.values(C.info)[0]}:g={conditionType:C.type,compareType:C.compare,expectedValue:Object.values(C.info)[0]};const R={filterType:r.TableColumnFilterTypeEnum.condition,filterInfo:g};t.setTableFilter(m,b,_,R)}O()},Ce=()=>{t.setTableFilter(m,b,_,void 0),O()},le=new k.WorkbookEditablePermission(m).id,ue=(se=o.getPermissionPoint(le))==null?void 0:se.value;return l.jsxs("div",{className:"univer-box-border univer-flex univer-w-[312px] univer-flex-col univer-rounded-[10px] univer-bg-white univer-p-4 univer-shadow-lg dark:!univer-border-gray-600 dark:!univer-bg-gray-700",children:[ue&&l.jsx("div",{className:"univer-mb-3 univer-flex",children:l.jsxs(p.ButtonGroup,{className:"univer-mb-3 !univer-flex univer-w-full",children:[l.jsxs(p.Button,{className:"univer-w-1/2",onClick:()=>j(!0),children:[l.jsx(it,{className:"univer-mr-1"}),a.t("sheets-sort.general.sort-asc")]}),l.jsxs(p.Button,{className:"univer-w-1/2",onClick:()=>j(!1),children:[l.jsx(lt,{className:"univer-mr-1"}),a.t("sheets-sort.general.sort-desc")]})]})}),l.jsx("div",{className:"univer-w-full",children:l.jsx(p.Segmented,{value:F,items:e,onChange:g=>N(g)})}),l.jsx("div",{className:"univer-z-10 univer-h-60 univer-w-[280px]",children:l.jsx("div",{className:"univer-mt-3 univer-h-full univer-w-full",children:F===ie.Items?l.jsx(Qt,{tableFilter:I,unitId:m,subUnitId:d,tableId:b,columnIndex:_,checkedItemSet:P,setCheckedItemSet:D}):l.jsx(qt,{tableFilter:I,unitId:m,subUnitId:d,tableId:b,columnIndex:_,conditionInfo:C,onChange:$})})}),l.jsxs("div",{className:"univer-flex-wrap-nowrap univer-mt-4 univer-inline-flex univer-flex-shrink-0 univer-flex-grow-0 univer-justify-between univer-overflow-hidden",children:[l.jsx(p.Button,{disabled:I===void 0,onClick:Ce,children:a.t("sheets-filter.panel.clear-filter")}),l.jsxs("div",{children:[l.jsx(p.Button,{className:"univer-mr-2",onClick:X,children:a.t("sheets-filter.panel.cancel")}),l.jsx(p.Button,{variant:"primary",onClick:te,children:a.t("sheets-filter.panel.confirm")})]})]})]})}function Xt(a){const e=a.getCurrentLocale();return T.useMemo(()=>[{label:a.t("sheets-filter.panel.by-values"),value:ie.Items},{label:a.t("sheets-filter.panel.by-conditions"),value:ie.Condition}],[e,a])}var Kt=Object.getOwnPropertyDescriptor,zt=(a,e,t,n)=>{for(var i=n>1?void 0:n?Kt(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},xe=(a,e)=>(t,n)=>e(t,n,a);let he=class extends s.Disposable{constructor(e,t,n,i){super();U(this,"_popupDisposable");U(this,"_currentTableFilterInfo",null);this._componentManager=e,this._contextService=t,this._sheetCanvasPopupService=n,this._dialogService=i,this._initComponents(),this._initUIPopup()}setCurrentTableFilterInfo(e){this._currentTableFilterInfo=e}clearCurrentTableFilterInfo(){this._currentTableFilterInfo=null}getCurrentTableFilterInfo(){return this._currentTableFilterInfo}_initComponents(){[[re,Gt]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}_initUIPopup(){this.disposeWithMe(this._contextService.subscribeContextValue$(re).pipe(x.startWith(void 0),x.distinctUntilChanged()).subscribe(e=>{e?this._openFilterPopup():e===!1&&this._closeFilterPopup()}))}closeFilterPanel(){this._contextService.setContextValue(re,!1)}_openFilterPopup(){const e=this._currentTableFilterInfo;if(!e)throw new Error("[SheetsFilterUIController]: no filter model when opening filter popup!");const{row:t,column:n}=e;this._popupDisposable=this._sheetCanvasPopupService.attachPopupToCell(t,n,{componentKey:re,direction:"horizontal",onClickOutside:()=>{this._dialogService.close(It),this._contextService.setContextValue(re,!1)},offset:[5,0],portal:!0})}_closeFilterPopup(){var e;(e=this._popupDisposable)==null||e.dispose(),this._popupDisposable=null,this.clearCurrentTableFilterInfo()}};he=zt([xe(0,s.Inject(h.ComponentManager)),xe(1,s.IContextService),xe(2,s.Inject(Y.SheetCanvasPopManagerService)),xe(3,s.Inject(h.IDialogService))],he);const qe={type:s.CommandType.OPERATION,id:"sheet.operation.open-table-filter-panel",async handler(a,e){if(!e)return!1;const{row:t,col:n,unitId:i,subUnitId:o,tableId:c}=e,u=a.get(r.TableManager),v=a.get(s.IContextService),m=a.get(he);return u.getTable(i,c)?(v.getContextValue(re)||(m.setCurrentTableFilterInfo({unitId:i,subUnitId:o,row:t,tableId:c,column:n}),v.setContextValue(re,!0)),!0):!1}},Ye={type:s.CommandType.OPERATION,id:"sheet.operation.open-table-selector",async handler(a){var E;const e=a.get(s.IUniverInstanceService),t=a.get(s.ICommandService),n=k.getSheetCommandTarget(e);if(!n)return!1;const{unitId:i,subUnitId:o,worksheet:c}=n,v=a.get(k.SheetsSelectionsService).getCurrentLastSelection(),m=(E=v==null?void 0:v.range)!=null?E:{startRow:0,endRow:0,startColumn:0,endColumn:0},b=k.isSingleCellSelection(v)?k.expandToContinuousRange(m,{up:!0,left:!0,right:!0,down:!0},c):m,I=await pt(a,i,o,b);return I?(t.executeCommand(r.AddSheetTableCommand.id,{...I}),!0):!1}};async function pt(a,e,t,n,i){const o=a.get(h.IDialogService),c=a.get(s.LocaleService);return new Promise(u=>{const v={unitId:e,subUnitId:t,range:n,tableId:i,onConfirm:m=>{u(m),o.close(ve)},onCancel:()=>{u(null),o.close(ve)}};o.open({id:ve,title:{title:c.t("sheets-table.selectRange")},draggable:!0,destroyOnClose:!0,mask:!1,maskClosable:!1,children:{label:{name:ve,props:v}},width:300,onClose:()=>{u(null),o.close(ve)}})})}const vt="sheets-table-ui.config",mt={anchorHeight:24,anchorBackgroundColor:"rgb(134,139,156)"};var Jt=Object.getOwnPropertyDescriptor,en=(a,e,t,n)=>{for(var i=n>1?void 0:n?Jt(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},tn=(a,e)=>(t,n)=>e(t,n,a);let ce=class extends s.Disposable{constructor(e){super();U(this,"_refreshTable",new x.Subject);U(this,"refreshTable$",this._refreshTable.asObservable());this._commandService=e,this._initListener()}_initListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===k.SetRangeThemeMutation.id){const t=e.params,{styleName:n}=t;n.startsWith(r.SHEET_TABLE_CUSTOM_THEME_PREFIX)&&this._refreshTable.next(Math.random())}}))}};ce=en([tn(0,s.Inject(s.ICommandService))],ce);const nn=()=>{var ue,se;const[a,e]=T.useState(""),[t,n]=T.useState(""),i=h.useDependency(h.ISidebarService),[o,c]=T.useState({}),u=h.useDependency(s.Injector),v=h.useDependency(Le),m=h.useObservable(v.anchorPosition$),d=h.useDependency(s.ICommandService),b=h.useDependency(s.IUniverInstanceService),I=h.useDependency(k.WorkbookPermissionService),E=h.useObservable(I.unitPermissionInitStateChange$,!1),_=h.useDependency(r.TableManager),B=h.useDependency(k.SheetRangeThemeModel),y=h.useDependency(ce),P=h.useObservable(y.refreshTable$),D=h.useDependency(s.LocaleService),F=h.useDependency(k.SheetsSelectionsService),N=h.useObservable(F.selectionChanged$,[{range:s.cellToRange(0,0),primary:null}]),[,C]=T.useState(Math.random()),M=h.useDependency(s.IConfigService).getConfig(vt),f=(ue=M==null?void 0:M.anchorHeight)!=null?ue:24,H=(se=M==null?void 0:M.anchorBackgroundColor)!=null?se:"rgb(53,91,183)",O=(g,R)=>{c(V=>({...V,[g]:R}))};if(T.useEffect(()=>{C(Math.random())},[P]),!(m!=null&&m.length))return null;const X=k.getSheetCommandTarget(b);if(!X)return null;const{unitId:j,subUnitId:te}=X,Ce=(g,R)=>{var Z;if(((Z=_.getTableById(j,g))==null?void 0:Z.getDisplayName())===R){e(""),n("");return}d.executeCommand(r.SetSheetTableCommand.id,{tableId:g,unitId:j,name:R}),n(""),e("")},le=async g=>{const R=_.getTableById(j,g);if(!R)return;const V=R.getRange(),Z=await pt(u,j,te,V,g);Z&&d.executeCommand(r.SetSheetTableCommand.id,{tableId:g,unitId:j,updateRange:{newRange:Z.range}})};return E?l.jsx("div",{className:"univer-absolute univer-z-50 univer-h-0 univer-w-0",children:m.map(g=>{var Te,ye,S,w,K,z,ne;const R=_.getTableById(j,g.tableId);if(!R)return null;const V=B.getRangeThemeStyle(j,R.getTableStyleId()),Z=(S=(ye=(Te=V==null?void 0:V.getHeaderRowStyle())==null?void 0:Te.bg)==null?void 0:ye.rgb)!=null?S:H,Fe=(z=(K=(w=V==null?void 0:V.getHeaderRowStyle())==null?void 0:w.cl)==null?void 0:K.rgb)!=null?z:"rgb(255, 255, 255)",He=R.getRange();if(!(N!=null&&N.length))return null;const Ve=N[N.length-1].range,Se=!s.Rectangle.intersects(He,Ve)&&g.y<=20;return l.jsxs("div",{className:p.clsx("univer-shadow-xs univer-absolute univer-box-border univer-cursor-pointer univer-items-center univer-rounded-xl univer-pl-2 univer-pr-2",p.borderClassName,{"univer-flex":!Se,"univer-hidden":Se}),style:{left:g.x,top:Math.max(g.y,0),backgroundColor:Z,color:Fe,borderWidth:"0.5px",height:f?`${f}px`:"24px"},children:[l.jsx("div",{className:"univer-text-nowrap",children:a===g.tableId?l.jsx(p.Input,{className:"univer-h-[18px] univer-min-w-16 univer-rounded-none",inputClass:"univer-h-[18px] univer-w-[80px]",value:t,onChange:W=>n(W),onBlur:()=>Ce(g.tableId,t),onKeyDown:W=>{W.key==="Enter"&&Ce(g.tableId,t)},autoFocus:a===g.tableId}):l.jsx("div",{className:"univer-h-[18px] univer-max-w-24 univer-truncate univer-text-sm",children:g.tableName})}),l.jsx(p.Dropdown,{align:"start",overlay:l.jsxs("div",{className:"univer-pb-2 univer-pt-2",children:[l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{e(g.tableId),n(g.tableName)},children:[l.jsx(ut,{}),D.t("sheets-table.rename")]}),l.jsx("div",{className:"univer-mb-1 univer-mt-1 univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{onClick:()=>le(g.tableId),className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",children:[l.jsx(st,{}),D.t("sheets-table.updateRange")]}),l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{O(g.tableId,!1);const W=_.getTableById(j,g.tableId);if(!W)return;const de=W.getTableConfig(),pe={id:_t,header:{title:D.t("sheets-table.tableStyle")},children:{label:rt,oldConfig:de,unitId:j,subUnitId:te,tableId:g.tableId},width:330};i.open(pe)},children:[l.jsx(ct,{extend:{colorChannel1:"rgb(53,91,183)"}}),D.t("sheets-table.setTheme")]}),l.jsx("div",{className:"univer-mb-1 univer-mt-1 univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{O(g.tableId,!1),d.executeCommand(r.DeleteSheetTableCommand.id,{tableId:g.tableId,subUnitId:te,unitId:j})},children:[l.jsx(ot,{className:"univer-mr-2"}),D.t("sheets-table.removeTable")]})]}),open:(ne=o[g.tableId])!=null?ne:!1,onOpenChange:W=>{O(g.tableId,W)},children:l.jsx(We,{})},g.tableId)]},g.tableId)})}):null};var rn=Object.getOwnPropertyDescriptor,an=(a,e,t,n)=>{for(var i=n>1?void 0:n?rn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},ee=(a,e)=>(t,n)=>e(t,n,a);let Le=class extends s.Disposable{constructor(e,t,n,i,o,c,u,v,m,d,b){super();U(this,"_anchorVisible$",new x.BehaviorSubject(!0));U(this,"_timer");U(this,"_anchorPosition$",new x.BehaviorSubject([]));U(this,"anchorPosition$",this._anchorPosition$.asObservable());this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._renderManagerService=i,this._commandService=o,this._univerInstanceService=c,this._uiPartsService=u,this._tableManager=v,this._scrollManagerService=m,this._workbookPermissionService=d,this._permissionService=b,this._initUI(),this._initListener(),this._initTableAnchor()}_initUI(){this.disposeWithMe(this._uiPartsService.registerComponent(h.BuiltInUIPart.CONTENT,()=>h.connectInjector(nn,this._injector)))}_initListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{(e.id===Y.SetZoomRatioOperation.id||e.id===Y.SetScrollOperation.id)&&(this._anchorVisible$.next(!1),this._timer&&clearTimeout(this._timer),this._timer=setTimeout(()=>{this._anchorVisible$.next(!0)},300))}))}_initTableAnchor(){this.disposeWithMe(x.merge(this._context.unit.activeSheet$,this._sheetSkeletonManagerService.currentSkeleton$,this._scrollManagerService.validViewportScrollInfo$,this._tableManager.tableAdd$,this._tableManager.tableDelete$,this._tableManager.tableNameChanged$,this._tableManager.tableRangeChanged$,this._tableManager.tableThemeChanged$,this._workbookPermissionService.unitPermissionInitStateChange$.pipe(x.filter(e=>e)),this._permissionService.permissionPointUpdate$.pipe(x.debounceTime(300)),this._anchorVisible$).subscribe(()=>{var m;if(!this._anchorVisible$.getValue()){this._anchorPosition$.next([]);return}const t=this._context.unit,n=t.getActiveSheet(),i=n==null?void 0:n.getSheetId(),o=this._tableManager.getTableList(this._context.unitId).filter(d=>d.subUnitId===i),c=this._renderManagerService.getRenderById(this._context.unitId);if(!c){this._anchorPosition$.next([]);return}if(!((m=this._permissionService.getPermissionPoint(new k.WorkbookEditablePermission(t.getUnitId()).id))==null?void 0:m.value)){this._anchorPosition$.next([]);return}const v=o.reduce((d,b)=>{const{startRow:I,startColumn:E}=b.range,_=c.with(Y.SheetSkeletonManagerService),B=Y.getSheetObject(this._univerInstanceService,this._renderManagerService);if(!B)return d;const{scene:y}=B,P=y.getViewport(q.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(!P)return d;const D=y==null?void 0:y.scaleX,F=y==null?void 0:y.scaleY,N=y==null?void 0:y.getViewportScrollXY(P);if(!D||!y||!F||!N)return d;const C=_.getCurrentSkeleton();if(!C)return d;const $=C.getNoMergeCellWithCoordByIndex(I,E),M=q.convertTransformToOffsetX($.startX,D,N),f=q.convertTransformToOffsetY($.startY,F,N)-25-4;return f>=-10&&M>=45&&d.push({x:M,y:f,tableId:b.id,tableName:b.name}),d},[]);this._anchorPosition$.next(v)}))}};Le=an([ee(1,s.Inject(s.Injector)),ee(2,s.Inject(Y.SheetSkeletonManagerService)),ee(3,q.IRenderManagerService),ee(4,s.ICommandService),ee(5,s.IUniverInstanceService),ee(6,h.IUIPartsService),ee(7,s.Inject(r.TableManager)),ee(8,s.Inject(Y.SheetScrollManagerService)),ee(9,s.Inject(k.WorkbookPermissionService)),ee(10,s.Inject(s.IPermissionService))],Le);const be=16;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 ht{static drawNoSetting(e,t,n,i){e.save(),q.Rect.drawWith(e,{radius:2,width:be,height:be,fill:i}),e.lineCap="square",e.strokeStyle=n,e.scale(t/be,t/be),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 drawIconByPath(e,t,n,i){e.save(),e.strokeStyle=n,e.fillStyle=i,q.Rect.drawWith(e,{radius:2,width:be,height:be,fill:i}),t.forEach(o=>{const c=new Path2D(o);e.fillStyle=n,e.fill(c,"evenodd")}),e.restore()}}const on=["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"],ln=["M12.4008 13.1831C12.6907 13.1831 12.9258 12.9481 12.9258 12.6581V4.60873L14.013 5.69597C14.218 5.901 14.5505 5.901 14.7555 5.69597C14.9605 5.49094 14.9605 5.15853 14.7555 4.95351L12.7721 2.97017C12.5671 2.76515 12.2347 2.76515 12.0297 2.97017L10.0463 4.95351C9.84132 5.15853 9.84132 5.49094 10.0463 5.69597C10.2514 5.901 10.5838 5.901 10.7888 5.69597L11.8758 4.60901V12.6581C11.8758 12.9481 12.1108 13.1831 12.4008 13.1831Z","M1.28069 4.85447C0.842195 4.33439 1.21191 3.5391 1.89218 3.5391H8.59333C9.2736 3.5391 9.64331 4.33439 9.20482 4.85447L6.51052 8.0501V11.6601C6.51052 12.2245 5.94174 12.6114 5.41683 12.404L4.48092 12.0343C4.1756 11.9136 3.97498 11.6187 3.97498 11.2904V8.0501L1.28069 4.85447Z"],sn=["M12.4008 2.81641C12.6907 2.81641 12.9258 3.05146 12.9258 3.34141V11.3908L14.013 10.3036C14.218 10.0986 14.5505 10.0986 14.7555 10.3036C14.9605 10.5086 14.9605 10.841 14.7555 11.046L12.7721 13.0294C12.5671 13.2344 12.2347 13.2344 12.0297 13.0294L10.0463 11.046C9.84132 10.841 9.84132 10.5086 10.0463 10.3036C10.2514 10.0986 10.5838 10.0986 10.7888 10.3036L11.8758 11.3905V3.34141C11.8758 3.05146 12.1108 2.81641 12.4008 2.81641Z","M1.28069 4.85444C0.842195 4.33435 1.21191 3.53906 1.89218 3.53906H8.59333C9.2736 3.53906 9.64331 4.33435 9.20482 4.85443L6.51052 8.05006V11.6601C6.51052 12.2245 5.94174 12.6113 5.41683 12.404L4.48092 12.0342C4.1756 11.9136 3.97498 11.6186 3.97498 11.2903V8.05006L1.28069 4.85444Z"],cn=["M11.9003 13.7046C11.9003 13.9969 11.6633 14.2339 11.371 14.2339C11.0787 14.2339 10.8417 13.9969 10.8417 13.7046V3.57272L9.74577 4.66862C9.53906 4.87534 9.20391 4.87534 8.9972 4.66862C8.79048 4.46191 8.79048 4.12676 8.9972 3.92005L10.9969 1.92039C11.2036 1.71368 11.5387 1.71368 11.7454 1.92039L13.7451 3.92005C13.9518 4.12676 13.9518 4.46191 13.7451 4.66862C13.5384 4.87534 13.2032 4.87534 12.9965 4.66862L11.9003 3.57243V13.7046Z","M2.69779 10.0113C2.40546 10.0113 2.16847 9.77429 2.16847 9.48196C2.16847 9.18962 2.40546 8.95264 2.69779 8.95264H6.67804C6.89213 8.95264 7.08514 9.0816 7.16707 9.2794C7.249 9.47719 7.20371 9.70486 7.05233 9.85624L3.97569 12.9329H6.67804C6.97038 12.9329 7.20736 13.1699 7.20736 13.4622C7.20736 13.7545 6.97038 13.9915 6.67804 13.9915H2.69779C2.4837 13.9915 2.29069 13.8626 2.20876 13.6648C2.12684 13.467 2.17212 13.2393 2.32351 13.0879L5.40015 10.0113H2.69779Z","M5.51638 2.58693C5.23363 1.81542 4.14248 1.81543 3.85973 2.58693L2.13245 7.29995C2.03185 7.57443 2.17281 7.87849 2.4473 7.97909C2.72178 8.07969 3.02584 7.93872 3.12644 7.66424L3.64346 6.25351L3.64504 6.25351H5.73266L6.24968 7.66424C6.35027 7.93872 6.65433 8.07969 6.92882 7.97909C7.2033 7.87849 7.34426 7.57443 7.24367 7.29995L5.51638 2.58693ZM5.34467 5.19487L4.68806 3.40325L4.03144 5.19487H5.34467Z"],un=["M11.9003 2.29495C11.9003 2.00261 11.6633 1.76562 11.371 1.76562C11.0787 1.76562 10.8417 2.00261 10.8417 2.29495V12.4268L9.74577 11.3309C9.53906 11.1242 9.20391 11.1242 8.9972 11.3309C8.79048 11.5376 8.79048 11.8727 8.9972 12.0795L10.9969 14.0791C11.2036 14.2858 11.5387 14.2858 11.7454 14.0791L13.7451 12.0795C13.9518 11.8727 13.9518 11.5376 13.7451 11.3309C13.5384 11.1242 13.2032 11.1242 12.9965 11.3309L11.9003 12.4271V2.29495Z","M2.69792 10.0113C2.40558 10.0113 2.16859 9.77429 2.16859 9.48196C2.16859 9.18962 2.40558 8.95264 2.69792 8.95264H6.67816C6.89225 8.95264 7.08526 9.0816 7.16719 9.2794C7.24912 9.47719 7.20384 9.70486 7.05245 9.85624L3.97581 12.9329H6.67816C6.9705 12.9329 7.20749 13.1699 7.20749 13.4622C7.20749 13.7545 6.9705 13.9915 6.67816 13.9915H2.69792C2.48383 13.9915 2.29082 13.8626 2.20889 13.6648C2.12696 13.467 2.17224 13.2393 2.32363 13.0879L5.40027 10.0113H2.69792Z","M5.5165 2.58693C5.23375 1.81542 4.1426 1.81543 3.85985 2.58693L2.13257 7.29995C2.03197 7.57443 2.17294 7.8785 2.44742 7.97909C2.7219 8.07969 3.02596 7.93872 3.12656 7.66424L3.64358 6.25351L3.64516 6.25351H5.73278L6.2498 7.66424C6.35039 7.93872 6.65446 8.07969 6.92894 7.97909C7.20342 7.8785 7.34438 7.57443 7.24379 7.29995L5.5165 2.58693ZM5.34479 5.19487L4.68818 3.40325L4.03156 5.19487H5.34479Z"];var dn=Object.getOwnPropertyDescriptor,pn=(a,e,t,n)=>{for(var i=n>1?void 0:n?dn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},Qe=(a,e)=>(t,n)=>e(t,n,a);const oe=16,$e=1;let Ge=class extends q.Shape{constructor(e,t,n,i,o){super(e,t);U(this,"_cellWidth",0);U(this,"_cellHeight",0);U(this,"_filterParams");U(this,"_hovered",!1);this._contextService=n,this._commandService=i,this._themeService=o,this.setShapeProps(t),this.onPointerDown$.subscribeEvent(c=>this.onPointerDown(c)),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,i=oe-n,o=oe-t;e.save();const c=new Path2D;c.rect(i,o,n,t),e.clip(c);const{buttonState:u}=this._filterParams,v=this._themeService.getColorFromTheme("primary.600"),m=this._hovered?this._themeService.getColorFromTheme("gray.50"):"rgba(255, 255, 255, 1.0)";let d;switch(u){case r.SheetsTableButtonStateEnum.FilteredSortNone:d=on;break;case r.SheetsTableButtonStateEnum.FilteredSortAsc:d=ln;break;case r.SheetsTableButtonStateEnum.FilteredSortDesc:d=sn;break;case r.SheetsTableButtonStateEnum.FilterNoneSortNone:break;case r.SheetsTableButtonStateEnum.FilterNoneSortAsc:d=cn;break;case r.SheetsTableButtonStateEnum.FilterNoneSortDesc:d=un;break}d?ht.drawIconByPath(e,d,v,m):u!==void 0&&ht.drawNoSetting(e,oe,v,m),e.restore()}onPointerDown(e){if(e.button===2)return;const{row:t,col:n,unitId:i,subUnitId:o,tableId:c}=this._filterParams;this._contextService.getContextValue(re)||!this._commandService.hasCommand(qe.id)||setTimeout(()=>{const v={row:t,col:n,unitId:i,subUnitId:o,tableId:c};this._commandService.executeCommand(qe.id,v)},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}};Ge=pn([Qe(2,s.IContextService),Qe(3,s.ICommandService),Qe(4,s.Inject(s.ThemeService))],Ge);var vn=Object.getOwnPropertyDescriptor,mn=(a,e,t,n)=>{for(var i=n>1?void 0:n?vn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},ke=(a,e)=>(t,n)=>e(t,n,a);const hn=5e3;let Xe=class extends s.RxDisposable{constructor(e,t,n,i,o){super();U(this,"_buttonRenderDisposable",null);U(this,"_tableFilterButtonShapes",[]);this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._sheetInterceptorService=i,this._tableManager=o,this._initRenderer()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){const e=this._tableManager;this._sheetSkeletonManagerService.currentSkeleton$.pipe(x.switchMap(t=>{var u;if(!t)return x.of(null);const{unit:n,unitId:i}=this._context,o=((u=n.getActiveSheet())==null?void 0:u.getSheetId())||"",c=()=>({unitId:i,worksheetId:o,tableFilterRanges:this._tableManager.getSheetFilterRangeWithState(n.getUnitId(),o),skeleton:t.skeleton});return x.merge(e.tableAdd$,e.tableNameChanged$,e.tableRangeChanged$,e.tableThemeChanged$,e.tableDelete$,e.tableFilterChanged$).pipe(x.map(()=>c()),x.startWith(c()))}),x.takeUntil(this.dispose$)).subscribe(t=>{this._disposeRendering(),!(!t||!t.tableFilterRanges)&&this._renderButtons(t)})}_renderButtons(e){const{tableFilterRanges:t,unitId:n,skeleton:i,worksheetId:o}=e,{scene:c}=this._context;for(const{range:u,states:v,tableId:m}of t){const{startRow:d,startColumn:b,endColumn:I}=u;this._interceptCellContent(n,o,u);for(let E=b;E<=I;E++){const _=`sheets-table-filter-button-${d}-${E}`,B=Y.getCoordByCell(d,E,c,i),{startX:y,startY:P,endX:D,endY:F}=B,N=D-y,C=F-P;if(C<=$e||N<=$e)continue;const $=v[E-b],M=D-oe-$e,f=F-oe-$e,H={left:M,top:f,height:oe,width:oe,zIndex:hn,cellHeight:C,cellWidth:N,filterParams:{unitId:n,subUnitId:o,row:d,col:E,buttonState:$,tableId:m}},O=this._injector.createInstance(Ge,_,H);this._tableFilterButtonShapes.push(O)}}c.addObjects(this._tableFilterButtonShapes),c.makeDirty()}_interceptCellContent(e,t,n){const{startRow:i,startColumn:o,endColumn:c}=n;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(k.INTERCEPTOR_POINT.CELL_CONTENT,{effect:s.InterceptorEffectEnum.Style,handler:(u,v,m)=>{const{row:d,col:b,unitId:I,subUnitId:E}=v;return I!==e||E!==t||d!==i||b<o||b>c||((!u||u===v.rawData)&&(u={...v.rawData}),u.fontRenderExtension={...u==null?void 0:u.fontRenderExtension,rightOffset:oe}),m(u)},priority:10})}_disposeRendering(){var e;this._tableFilterButtonShapes.forEach(t=>t.dispose()),(e=this._buttonRenderDisposable)==null||e.dispose(),this._buttonRenderDisposable=null,this._tableFilterButtonShapes=[]}};Xe=mn([ke(1,s.Inject(s.Injector)),ke(2,s.Inject(Y.SheetSkeletonManagerService)),ke(3,s.Inject(k.SheetInterceptorService)),ke(4,s.Inject(r.TableManager))],Xe);const bn=a=>{const{unitId:e,subUnitId:t,range:n,onCancel:i,onConfirm:o,tableId:c}=a,u=h.useDependency(r.TableManager),[v,m]=T.useState(n),[d,b]=T.useState(""),I=h.useDependency(s.LocaleService),E=h.useDependency(s.IUniverInstanceService);return l.jsxs(l.Fragment,{children:[l.jsx(yt.RangeSelector,{maxRangeCount:1,unitId:e,subUnitId:t,initialValue:Ae.serializeRange(n),onChange:(_,B)=>{const y=Ae.serializeRange(n),P=Ae.deserializeRangeWithSheet(B).range,D=k.getSheetCommandTarget(E,{unitId:e,subUnitId:t});if(!D)return;if(D.worksheet.getMergeData().some(O=>s.Rectangle.intersects(P,O))){b(I.t("sheets-table.tableRangeWithMergeError"));return}if(u.getTablesBySubunitId(e,t).some(O=>{if(O.getId()===c)return!1;const X=O.getRange();return s.Rectangle.intersects(P,X)})){b(I.t("sheets-table.tableRangeWithOtherTableError"));return}const{startRow:M,endRow:f}=P;if(M===f){b(I.t("sheets-table.tableRangeSingleRowError"));return}if(y!==B){if(c){const O=u.getTableById(e,c);if(O){const X=O.getRange();if(s.Rectangle.intersects(P,X)&&X.startRow===P.startRow){m(P),b(""),o({unitId:e,subUnitId:t,range:P});return}else{b(I.t("sheets-table.updateError"));return}}}m(P),b("")}},supportAcrossSheet:!1}),d&&l.jsx("div",{className:"univer-mt-1 univer-text-xs univer-text-red-500",children:d}),l.jsxs("div",{className:"univer-mt-4 univer-flex univer-justify-end",children:[l.jsx(p.Button,{onClick:i,children:I.t("sheets-table.cancel")}),l.jsx(p.Button,{variant:"primary",onClick:()=>{d||o({unitId:e,subUnitId:t,range:v})},className:"univer-ml-2",children:I.t("sheets-table.confirm")})]})]})},Cn=a=>{var R,V,Z,Je,Fe,He,et,Ve,tt,Se,Te,ye;const{unitId:e,subUnitId:t,tableId:n}=a,i=h.useDependency(s.ICommandService),o=h.useDependency(s.LocaleService),c=h.useDependency(r.TableManager),u=c.getTableById(e,n),v=h.useDependency(k.SheetRangeThemeModel),m=h.useDependency(ce),d=h.useObservable(v.rangeThemeMapChange$),b=h.useObservable(m.refreshTable$),I=h.useDependency(s.ErrorService),[,E]=T.useState(Math.random()),_=h.useObservable(c.tableThemeChanged$,{theme:u==null?void 0:u.getTableStyleId(),oldTheme:u==null?void 0:u.getTableStyleId(),unitId:e,subUnitId:t,tableId:n}),B=v.getRegisteredRangeThemes().filter(S=>S==null?void 0:S.startsWith(wt)),y=v.getALLRegisteredTheme(e).filter(S=>S==null?void 0:S.startsWith(je)),P=u==null?void 0:u.getTableStyleId(),D=y.find(S=>S===P),F=D||y[0],N=v.getCustomRangeThemeStyle(e,F),C=(Z=(V=(R=N==null?void 0:N.getHeaderRowStyle())==null?void 0:R.bg)==null?void 0:V.rgb)!=null?Z:ae,$=(He=(Fe=(Je=N==null?void 0:N.getFirstRowStyle())==null?void 0:Je.bg)==null?void 0:Fe.rgb)!=null?He:ae,M=(tt=(Ve=(et=N==null?void 0:N.getSecondRowStyle())==null?void 0:et.bg)==null?void 0:Ve.rgb)!=null?tt:ae,f=(ye=(Te=(Se=N==null?void 0:N.getLastRowStyle())==null?void 0:Se.bg)==null?void 0:Te.rgb)!=null?ye:ae,[H,O]=T.useState(null),X=S=>{i.executeCommand(r.SetSheetTableCommand.id,{unitId:e,tableId:n,theme:S})},j=()=>{if(y.length>=11){I.emit(o.t("sheets-table.customTooMore"));return}const S=y[y.length-1];let w=`${je}1`;if(S){const z=Number(S.split("-")[2]);w=`${je}${z+1}`}const K=new k.RangeThemeStyle(w,{...r.customEmptyThemeWithBorderStyle});i.executeCommand(r.AddTableThemeCommand.id,{unitId:e,tableId:n,themeStyle:K})},te=(S,w)=>{i.executeCommand(k.SetRangeThemeMutation.id,{unitId:e,subUnitId:t,styleName:S,style:w})},Ce=S=>{i.executeCommand(r.RemoveTableThemeCommand.id,{unitId:e,tableId:n,themeName:S})};if(T.useEffect(()=>{E(Math.random())},[d,b]),!u)return null;const le=new s.ColorKit(C).isDark(),ue=new s.ColorKit($).isDark(),se=new s.ColorKit(M).isDark(),g=new s.ColorKit(f).isDark();return l.jsxs("div",{children:[l.jsx("h5",{children:o.t("sheets-table.defaultStyle")}),l.jsx("div",{className:"univer-flex univer-gap-2",children:B.map(S=>{var de,pe,Ee,Ie,_e,we,De,Ne;const w=v.getDefaultRangeThemeStyle(S),K=((pe=(de=w==null?void 0:w.getHeaderRowStyle())==null?void 0:de.bg)==null?void 0:pe.rgb)||ae,z=((Ie=(Ee=w==null?void 0:w.getFirstRowStyle())==null?void 0:Ee.bg)==null?void 0:Ie.rgb)||ae,ne=((we=(_e=w==null?void 0:w.getSecondRowStyle())==null?void 0:_e.bg)==null?void 0:we.rgb)||ae,W=((Ne=(De=w==null?void 0:w.getLastRowStyle())==null?void 0:De.bg)==null?void 0:Ne.rgb)||ae;return l.jsxs("div",{className:p.clsx("univer-h-10 univer-w-8 univer-cursor-pointer univer-border univer-border-solid univer-border-gray-200 univer-p-px [&>div]:univer-box-border [&>div]:univer-h-2.5",{"univer-border-blue-500":S===_.theme}),onClick:()=>X(S),children:[l.jsx("div",{style:{background:K,border:`${Q}`}}),l.jsx("div",{style:{background:z,border:`${Q}`}}),l.jsx("div",{style:{background:ne,border:`${Q}`}}),l.jsx("div",{style:{background:W,border:`${Q}`}})]},S)})}),l.jsx("h5",{children:o.t("sheets-table.customStyle")}),l.jsxs("div",{className:p.clsx("univer-w-full univer-rounded-sm",p.borderClassName),children:[l.jsxs("div",{className:"univer-flex univer-flex-wrap univer-gap-2 univer-p-2",children:[l.jsx("div",{className:p.clsx("univer-h-10 univer-w-8 univer-cursor-pointer univer-p-px univer-text-center univer-leading-10",p.borderClassName),onClick:j,children:"+"}),y.map(S=>{var de,pe,Ee,Ie,_e,we,De,Ne;const w=v.getCustomRangeThemeStyle(e,S),K=(pe=(de=w==null?void 0:w.getHeaderRowStyle())==null?void 0:de.bg)==null?void 0:pe.rgb,z=(Ie=(Ee=w==null?void 0:w.getFirstRowStyle())==null?void 0:Ee.bg)==null?void 0:Ie.rgb,ne=(we=(_e=w==null?void 0:w.getSecondRowStyle())==null?void 0:_e.bg)==null?void 0:we.rgb,W=(Ne=(De=w==null?void 0:w.getLastRowStyle())==null?void 0:De.bg)==null?void 0:Ne.rgb;return l.jsxs("div",{className:p.clsx("univer-relative univer-h-10 univer-w-8 univer-cursor-pointer univer-border univer-border-solid univer-border-gray-200 univer-p-px",{"univer-border-blue-500":S===_.theme}),onClick:()=>X(S),onMouseEnter:()=>O(S),onMouseLeave:()=>O(null),children:[l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:K!=null?K:Q,border:`${K?Q:Me}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:z!=null?z:Q,border:`${z?Q:Me}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:ne!=null?ne:Q,border:`${ne?Q:Me}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:W!=null?W:Q,border:`${W?Q:Me}`}}),l.jsx("div",{className:"univer-absolute univer-right-[-3px] univer-top-[-3px] univer-h-3 univer-w-3 univer-rounded-md univer-bg-gray-200 univer-text-center univer-text-xs univer-leading-[10px]",style:{display:H===S?"block":"none"},onClick:Bn=>{Bn.stopPropagation(),Ce(S)},children:"x"})]},S)})]}),D&&l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{className:"univer-flex univer-flex-col univer-gap-2 univer-p-2",children:[l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":le,"univer-text-gray-900":!le}),style:{background:C},children:o.t("sheets-table.header")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:C,onChange:S=>{const w=r.processStyleWithBorderStyle("headerRowStyle",{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}});te(u.getTableStyleId(),{headerRowStyle:w})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName,{"univer-text-white":le,"univer-text-gray-900":!le}),style:{background:C}}),l.jsx(ge,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":ue,"univer-text-gray-900":!ue}),style:{background:$},children:o.t("sheets-table.firstLine")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:$,onChange:S=>{te(u.getTableStyleId(),{firstRowStyle:{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}}})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:$}}),l.jsx(ge,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":se,"univer-text-gray-900":!se}),style:{background:M},children:o.t("sheets-table.secondLine")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:M,onChange:S=>te(u.getTableStyleId(),{secondRowStyle:{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}}})})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:M}}),l.jsx(ge,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":g,"univer-text-gray-900":!g}),style:{background:f},children:o.t("sheets-table.footer")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:f,onChange:S=>{const w=r.processStyleWithBorderStyle("lastRowStyle",{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}});te(u.getTableStyleId(),{lastRowStyle:w})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:f}}),l.jsx(ge,{className:"univer-h-2 univer-w-2"})]})})]})]})]})]})]})},bt="sheet.table.context-insert_menu-id",Ct="sheet.table.context-remove_menu-id";function gn(a){return{id:Ye.id,type:h.MenuItemType.BUTTON,icon:nt,tooltip:"sheets-table.title",title:"sheets-table.title",hidden$:h.getMenuHiddenObservable(a,s.UniverInstanceType.UNIVER_SHEET),disabled$:Y.getCurrentRangeDisable$(a,{},!0)}}function fn(a){return{id:bt,type:h.MenuItemType.SUBITEMS,icon:"InsertDoubleIcon",title:"sheets-table.insert.main",hidden$:gt(a)}}function Sn(a){return{id:Ct,type:h.MenuItemType.SUBITEMS,icon:"ReduceDoubleIcon",title:"sheets-table.remove.main",hidden$:gt(a)}}function Tn(a){return{id:r.SheetTableInsertRowCommand.id,type:h.MenuItemType.BUTTON,title:"sheets-table.insert.row",hidden$:ft(a)}}function yn(a){return{id:r.SheetTableInsertColCommand.id,title:"sheets-table.insert.col",type:h.MenuItemType.BUTTON}}function En(a){return{id:r.SheetTableRemoveRowCommand.id,type:h.MenuItemType.BUTTON,title:"sheets-table.remove.row",hidden$:ft(a)}}function In(a){return{id:r.SheetTableRemoveColCommand.id,title:"sheets-table.remove.col",type:h.MenuItemType.BUTTON}}function gt(a){const e=a.get(k.SheetsSelectionsService);return a.get(s.IUniverInstanceService).getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_SHEET).pipe(x.switchMap(i=>i?i.activeSheet$.pipe(x.switchMap(o=>o?e.selectionMoveEnd$.pipe(x.switchMap(c=>{if(!c.length||c.length>1)return x.of(!0);const v=c[0].range,d=a.get(r.SheetsTableController).getContainerTableWithRange(i.getUnitId(),o.getSheetId(),v);return x.of(!d)})):x.of(!0))):x.of(!0)))}function ft(a){const e=a.get(k.SheetsSelectionsService);return a.get(s.IUniverInstanceService).getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_SHEET).pipe(x.switchMap(i=>i?i.activeSheet$.pipe(x.switchMap(o=>o?e.selectionMoveEnd$.pipe(x.switchMap(c=>{if(!c.length||c.length>1)return x.of(!0);const v=c[0].range,d=a.get(r.SheetsTableController).getContainerTableWithRange(i.getUnitId(),o.getSheetId(),v);if(!d)return x.of(!0);const b=d.getRange();return v.startRow===b.startRow?x.of(!0):x.of(!1)})):x.of(!0))):x.of(!0)))}const _n={[h.RibbonDataGroup.ORGANIZATION]:{[Ye.id]:{order:0,menuItemFactory:gn}},[h.ContextMenuPosition.MAIN_AREA]:{[h.ContextMenuGroup.LAYOUT]:{[bt]:{order:5,menuItemFactory:fn,[r.SheetTableInsertRowCommand.id]:{order:1,menuItemFactory:Tn},[r.SheetTableInsertColCommand.id]:{order:2,menuItemFactory:yn}},[Ct]:{order:6,menuItemFactory:Sn,[r.SheetTableRemoveRowCommand.id]:{order:1,menuItemFactory:En},[r.SheetTableRemoveColCommand.id]:{order:2,menuItemFactory:In}}}}};var wn=Object.getOwnPropertyDescriptor,Dn=(a,e,t,n)=>{for(var i=n>1?void 0:n?wn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},St=(a,e)=>(t,n)=>e(t,n,a);let Pe=class extends s.Disposable{constructor(a,e){super(),this._componentManager=a,this._menuManagerService=e,this._initComponents(),this._initMenu()}_initComponents(){[[nt,dt],[ve,bn],[rt,Cn]].forEach(([a,e])=>{this.disposeWithMe(this._componentManager.register(a,e))})}_initMenu(){this._menuManagerService.mergeMenu(_n)}};Pe=Dn([St(0,s.Inject(h.ComponentManager)),St(1,s.Inject(h.IMenuManagerService))],Pe);var Nn=Object.getOwnPropertyDescriptor,Mn=(a,e,t,n)=>{for(var i=n>1?void 0:n?Nn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},Oe=(a,e)=>(t,n)=>e(t,n,a);let Ke=class extends s.RxDisposable{constructor(a,e,t,n,i){super(),this._context=a,this._injector=e,this._sheetSkeletonManagerService=t,this._tableManager=n,this._sheetTableThemeUIController=i,this._initListener()}_dirtySkeleton(){var e;(e=this._context.mainComponent)==null||e.makeDirty();const a=this._sheetSkeletonManagerService.getCurrentParam();if(a){const t={...a,dirty:!0};this._sheetSkeletonManagerService.reCalculate(t)}}_initListener(){const a=this._tableManager,e=this._dirtySkeleton.bind(this);this.disposeWithMe(x.merge(a.tableAdd$,a.tableDelete$,a.tableNameChanged$,a.tableRangeChanged$,a.tableThemeChanged$,a.tableFilterChanged$,a.tableInitStatus$,this._sheetTableThemeUIController.refreshTable$).subscribe(e))}};Ke=Mn([Oe(1,s.Inject(s.Injector)),Oe(2,s.Inject(Y.SheetSkeletonManagerService)),Oe(3,s.Inject(r.TableManager)),Oe(4,s.Inject(ce))],Ke);var xn=Object.getOwnPropertyDescriptor,Ln=(a,e,t,n)=>{for(var i=n>1?void 0:n?xn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},ze=(a,e)=>(t,n)=>e(t,n,a);let Be=class extends s.Disposable{constructor(a,e,t){super(),this._sheetInterceptorService=a,this._univerInstanceService=e,this._tableManager=t,this._initSelectionChange()}_initSelectionChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:a=>{if(a.id===Y.SelectAllCommand.id){const e=k.getSheetCommandTarget(this._univerInstanceService);if(!e)return{redos:[],undos:[]};const t=a.params,{range:n}=t,{unitId:i,subUnitId:o,worksheet:c}=e,v=this._tableManager.getTablesBySubunitId(i,o).find(m=>{const d=m.getRange();return s.Rectangle.contains(d,n)});if(v){const m=v.getRange(),d={...m,startRow:m.startRow+1};return s.Rectangle.equals(m,n)?{undos:[],redos:[]}:s.Rectangle.equals(d,n)?{undos:[],redos:[{id:k.SetSelectionsOperation.id,params:{unitId:i,subUnitId:o,selections:[{range:m,primary:k.getPrimaryForRange(m,c)}]}}]}:{undos:[],redos:[{id:k.SetSelectionsOperation.id,params:{unitId:i,subUnitId:o,selections:[{range:d,primary:k.getPrimaryForRange(d,c)}]}}]}}}return{redos:[],undos:[]}}}))}};Be=Ln([ze(0,s.Inject(k.SheetInterceptorService)),ze(1,s.Inject(s.IUniverInstanceService)),ze(2,s.Inject(r.TableManager))],Be);var $n=Object.defineProperty,kn=Object.getOwnPropertyDescriptor,Pn=(a,e,t)=>e in a?$n(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,On=(a,e,t,n)=>{for(var i=n>1?void 0:n?kn(e,t):e,o=a.length-1,c;o>=0;o--)(c=a[o])&&(i=c(i)||i);return i},Re=(a,e)=>(t,n)=>e(t,n,a),Tt=(a,e,t)=>Pn(a,typeof e!="symbol"?e+"":e,t);L.UniverSheetsTableUIPlugin=class extends s.Plugin{constructor(e=mt,t,n,i,o){super(),this._config=e,this._injector=t,this._commandService=n,this._configService=i,this._renderManagerService=o;const{menu:c,...u}=s.merge({},mt,this._config);c&&this._configService.setConfig("menu",c,{merge:!0}),this._configService.setConfig(vt,u),this._initRegisterCommand()}onStarting(){s.registerDependencies(this._injector,[[he],[me],[Pe],[ce],[Be]])}onReady(){s.touchDependencies(this._injector,[[he],[me],[Pe],[ce],[Be]])}onRendered(){this._registerRenderModules()}_registerRenderModules(){const e=[[Xe],[Ke]];this._config.hideAnchor!==!0&&e.push([Le]),e.forEach(t=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(s.UniverInstanceType.UNIVER_SHEET,t))})}_initRegisterCommand(){[qe,Ye].forEach(e=>this._commandService.registerCommand(e))}},Tt(L.UniverSheetsTableUIPlugin,"pluginName",Et),Tt(L.UniverSheetsTableUIPlugin,"type",s.UniverInstanceType.UNIVER_SHEET),L.UniverSheetsTableUIPlugin=On([s.DependentOn(r.UniverSheetsTablePlugin),Re(1,s.Inject(s.Injector)),Re(2,s.Inject(s.ICommandService)),Re(3,s.IConfigService),Re(4,q.IRenderManagerService)],L.UniverSheetsTableUIPlugin),Object.defineProperty(L,Symbol.toStringTag,{value:"Module"})});
10
+ (function($,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@univerjs/engine-render"),require("@univerjs/sheets-table"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("rxjs"),require("react/jsx-runtime"),require("@univerjs/design"),require("@univerjs/sheets"),require("@univerjs/sheets-sort"),require("react"),require("@univerjs/engine-formula"),require("@univerjs/sheets-formula-ui")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/engine-render","@univerjs/sheets-table","@univerjs/sheets-ui","@univerjs/ui","rxjs","react/jsx-runtime","@univerjs/design","@univerjs/sheets","@univerjs/sheets-sort","react","@univerjs/engine-formula","@univerjs/sheets-formula-ui"],s):($=typeof globalThis<"u"?globalThis:$||self,s($.UniverSheetsTableUi={},$.UniverCore,$.UniverEngineRender,$.UniverSheetsTable,$.UniverSheetsUi,$.UniverUi,$.rxjs,$.React,$.UniverDesign,$.UniverSheets,$.UniverSheetsSort,$.React,$.UniverEngineFormula,$.UniverSheetsFormulaUi))})(this,function($,s,Y,a,Q,h,x,l,p,O,Ue,T,Ae,yt){"use strict";var Fn=Object.defineProperty;var Vn=($,s,Y)=>s in $?Fn($,s,{enumerable:!0,configurable:!0,writable:!0,value:Y}):$[s]=Y;var A=($,s,Y)=>Vn($,typeof s!="symbol"?s+"":s,Y);const Et="SHEET_TABLE_UI_PLUGIN",ae="SHEETS_TABLE_FILTER_PANEL_OPENED_KEY",It="UNIVER_SHEET_Table_FILTER_PANEL_ID",nt="TABLE_TOOLBAR_BUTTON",me="TABLE_SELECTOR_DIALOG",_t="SHEET_TABLE_THEME_PANEL_ID",rt="SHEET_TABLE_THEME_PANEL",je="table-custom-",wt="table-default-",ie="rgb(255, 255, 255)",G="none",Le="1px solid rgb(var(--grey-200))";var X=function(){return X=Object.assign||function(r){for(var e,t=1,n=arguments.length;t<n;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]=e[i])}return r},X.apply(this,arguments)},Dt=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t},ee=T.forwardRef(function(r,e){var t=r.icon,n=r.id,i=r.className,o=r.extend,c=Dt(r,["icon","id","className","extend"]),u="univerjs-icon univerjs-icon-".concat(n," ").concat(i||"").trim(),d=T.useRef("_".concat(xt()));return at(t,"".concat(n),{defIds:t.defIds,idSuffix:d.current},X({ref:e,className:u},c),o)});function at(r,e,t,n,i){return T.createElement(r.tag,X(X({key:e},Mt(r,t,i)),n),(Nt(r,t).children||[]).map(function(o,c){return at(o,"".concat(e,"-").concat(r.tag,"-").concat(c),t,void 0,i)}))}function Mt(r,e,t){var n=X({},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(function(o){var c=o[0],u=o[1];c==="mask"&&typeof u=="string"&&(n[c]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))});var i=e.defIds;return!i||i.length===0||(r.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(function(o){var c=o[0],u=o[1];typeof u=="string"&&(n[c]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),n}function Nt(r,e){var t,n=e.defIds;return!n||n.length===0?r:r.tag==="defs"&&(!((t=r.children)===null||t===void 0)&&t.length)?X(X({},r),{children:r.children.map(function(i){return typeof i.attrs.id=="string"&&n&&n.includes(i.attrs.id)?X(X({},i),{attrs:X(X({},i.attrs),{id:i.attrs.id+e.idSuffix})}):i})}):r}function xt(){return Math.random().toString(36).substring(2,8)}ee.displayName="UniverIcon";var 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:"M12.4208 14.4667C12.4208 14.798 12.1522 15.0667 11.8208 15.0667C11.4895 15.0667 11.2208 14.798 11.2208 14.4667V2.98193L9.97861 4.22417C9.7443 4.45848 9.3644 4.45848 9.13008 4.22417C8.89577 3.98985 8.89577 3.60995 9.13008 3.37564L11.3967 1.10897C11.6311 0.874657 12.011 0.874657 12.2453 1.10897L14.5119 3.37564C14.7463 3.60995 14.7463 3.98985 14.5119 4.22417C14.2776 4.45848 13.8977 4.45848 13.6634 4.22417L12.4208 2.9816V14.4667Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.98967 10.2798C1.6583 10.2798 1.38967 10.0112 1.38967 9.67983C1.38967 9.34846 1.6583 9.07983 1.98967 9.07983H6.50138C6.74406 9.07983 6.96284 9.22602 7.05571 9.45022C7.14858 9.67443 7.09725 9.9325 6.92565 10.1041L3.43819 13.5916H6.50138C6.83276 13.5916 7.10138 13.8602 7.10138 14.1916C7.10138 14.5229 6.83276 14.7916 6.50138 14.7916H1.98967C1.74699 14.7916 1.52821 14.6454 1.43534 14.4212C1.34247 14.197 1.3938 13.9389 1.5654 13.7673L5.05286 10.2798H1.98967Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.1846 1.86439C4.8641 0.989866 3.62725 0.989866 3.30674 1.86439L1.34882 7.20672C1.23479 7.51786 1.39458 7.86252 1.70571 7.97655C2.01684 8.09058 2.3615 7.93079 2.47553 7.61966L3.06159 6.02055L3.06338 6.02056H5.42975L6.01581 7.61966C6.12984 7.93079 6.4745 8.09058 6.78563 7.97655C7.09677 7.86252 7.25655 7.51786 7.14252 7.20672L5.1846 1.86439ZM4.98996 4.82056L4.24567 2.78971L3.50138 4.82056H4.98996Z",fillRule:"evenodd",clipRule:"evenodd"}}]},it=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"ascending-icon",ref:e,icon:Lt}))});it.displayName="AscendingIcon";var $t={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:"M5.3313 1.4667C5.3313 1.13533 5.59993 0.866699 5.9313 0.866699H10.069C10.4004 0.866699 10.669 1.13533 10.669 1.4667C10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443C14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928L9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171C10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778L9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539C9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263L6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539C5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778L6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ot=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"delete-icon",ref:e,icon:$t}))});ot.displayName="DeleteIcon";var kt={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:"M12.4208 1.53335C12.4208 1.20198 12.1522 0.93335 11.8208 0.93335C11.4895 0.93335 11.2208 1.20198 11.2208 1.53335V13.0181L9.97861 11.7758C9.7443 11.5415 9.3644 11.5415 9.13008 11.7758C8.89577 12.0101 8.89577 12.39 9.13008 12.6244L11.3967 14.891C11.6311 15.1253 12.011 15.1253 12.2453 14.891L14.5119 12.6244C14.7463 12.39 14.7463 12.0101 14.5119 11.7758C14.2776 11.5415 13.8977 11.5415 13.6634 11.7758L12.4208 13.0184V1.53335Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.98967 10.2798C1.6583 10.2798 1.38967 10.0112 1.38967 9.67983C1.38967 9.34846 1.6583 9.07983 1.98967 9.07983H6.50138C6.74406 9.07983 6.96284 9.22602 7.05571 9.45022C7.14858 9.67443 7.09725 9.9325 6.92565 10.1041L3.43819 13.5916H6.50138C6.83276 13.5916 7.10138 13.8602 7.10138 14.1916C7.10138 14.5229 6.83276 14.7916 6.50138 14.7916H1.98967C1.74699 14.7916 1.52821 14.6454 1.43534 14.4212C1.34247 14.197 1.3938 13.9389 1.5654 13.7673L5.05286 10.2798H1.98967Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.1846 1.86439C4.8641 0.989866 3.62725 0.989866 3.30674 1.86439L1.34882 7.20672C1.23479 7.51786 1.39458 7.86252 1.70571 7.97655C2.01684 8.09058 2.3615 7.93079 2.47553 7.61966L3.06159 6.02055L3.06338 6.02056H5.42975L6.01581 7.61966C6.12984 7.93079 6.4745 8.09058 6.78563 7.97655C7.09677 7.86252 7.25655 7.51786 7.14252 7.20672L5.1846 1.86439ZM4.98996 4.82056L4.24567 2.78971L3.50138 4.82056H4.98996Z",fillRule:"evenodd",clipRule:"evenodd"}}]},lt=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"descending-icon",ref:e,icon:kt}))});lt.displayName="DescendingIcon";var Ot={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.85869 12.9216C8.38445 13.4708 7.61555 13.4708 7.14131 12.9216L0.358114 5.06726C-0.406895 4.18144 0.134916 2.66683 1.2168 2.66683L14.7832 2.66683C15.8651 2.66683 16.4069 4.18144 15.6419 5.06726L8.85869 12.9216Z"}}]},Ce=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"dropdown-icon",ref:e,icon:Ot}))});Ce.displayName="DropdownIcon";var Pt={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:"M3.33333 3.33333V6H6V3.33333H3.33333ZM2 3.238C2 2.55427 2.55427 2 3.238 2H6.09533C6.77906 2 7.33333 2.55427 7.33333 3.238V6.09533C7.33333 6.77906 6.77906 7.33333 6.09533 7.33333H3.238C2.55427 7.33333 2 6.77906 2 6.09533V3.238ZM10 3.33333V6H12.6667V3.33333H10ZM8.66667 3.238C8.66667 2.55427 9.22094 2 9.90467 2H12.762C13.4457 2 14 2.55427 14 3.238V6.09533C14 6.77906 13.4457 7.33333 12.762 7.33333H9.90467C9.22094 7.33333 8.66667 6.77906 8.66667 6.09533V3.238ZM3.33333 10V12.6667H6V10H3.33333ZM2 9.90467C2 9.22094 2.55427 8.66667 3.238 8.66667H6.09533C6.77906 8.66667 7.33333 9.22094 7.33333 9.90467V12.762C7.33333 13.4457 6.77906 14 6.09533 14H3.238C2.55427 14 2 13.4457 2 12.762V9.90467ZM10 10V12.6667H12.6667V10H10ZM8.66667 9.90467C8.66667 9.22094 9.22094 8.66667 9.90467 8.66667H12.762C13.4457 8.66667 14 9.22094 14 9.90467V12.762C14 13.4457 13.4457 14 12.762 14H9.90467C9.22094 14 8.66667 13.4457 8.66667 12.762V9.90467Z",fillRule:"evenodd",clipRule:"evenodd"}}]},st=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"grid-outline-icon",ref:e,icon:Pt}))});st.displayName="GridOutlineIcon";var Bt={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:"M11.3536 6.14645C11.5488 6.34171 11.5488 6.65829 11.3536 6.85355L8.35355 9.85355C8.15829 10.0488 7.84171 10.0488 7.64645 9.85355L4.64645 6.85355C4.45118 6.65829 4.45118 6.34171 4.64645 6.14645C4.84171 5.95118 5.15829 5.95118 5.35355 6.14645L8 8.79289L10.6464 6.14645C10.8417 5.95118 11.1583 5.95118 11.3536 6.14645Z",fillRule:"evenodd",clipRule:"evenodd"}}]},We=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"more-down-icon",ref:e,icon:Bt}))});We.displayName="MoreDownIcon";var Rt={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:"M8.01281 1.36643C8.79386 0.585377 10.0602 0.585378 10.8412 1.36643L12.9223 3.44752C13.7034 4.22857 13.7034 5.4949 12.9223 6.27595L9.36445 9.83383C8.5834 10.6149 7.31707 10.6149 6.53602 9.83383L4.45493 7.75273C3.67388 6.97168 3.67388 5.70535 4.45493 4.9243L8.01281 1.36643ZM9.9927 2.21495C9.68028 1.90253 9.17375 1.90253 8.86133 2.21495L5.30346 5.77283L5.29671 5.77966L10.839 6.66224L12.0738 5.42742C12.3862 5.115 12.3862 4.60847 12.0738 4.29605L9.9927 2.21495Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M14.5179 9.48875C14.5179 9.99175 14.1101 10.3995 13.607 10.3995C13.1041 10.3995 12.6963 9.99175 12.6963 9.48875C12.6963 9.1773 13.0455 8.59966 13.3114 8.20487C13.4549 7.99177 13.7591 7.99177 13.9027 8.20486C14.1687 8.59965 14.5179 9.1773 14.5179 9.48875Z"}},{tag:"path",attrs:{fill:"colorChannel1",d:"M1.98682 13.4992C1.98682 12.5603 2.74793 11.7992 3.68682 11.7992H14.2868C15.2257 11.7992 15.9868 12.5603 15.9868 13.4992V13.4992C15.9868 14.4381 15.2257 15.1992 14.2868 15.1992H3.68682C2.74793 15.1992 1.98682 14.4381 1.98682 13.4992V13.4992Z"}}]},ct=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"paint-bucket-double-icon",ref:e,icon:Rt}))});ct.displayName="PaintBucketDoubleIcon";var Ft={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:"M3.80068 2.57257L7.27955 2.57256C7.61092 2.57256 7.87954 2.30393 7.87954 1.97256C7.87954 1.64119 7.61091 1.37256 7.27954 1.37256L3.80068 1.37257C2.36473 1.37257 1.20067 2.53665 1.20068 3.97259L1.20074 12.3001C1.20075 13.736 2.36481 14.9 3.80074 14.9H12.1282C13.5641 14.9 14.7282 13.736 14.7282 12.3V8.82116C14.7282 8.48979 14.4595 8.22116 14.1282 8.22116C13.7968 8.22116 13.5282 8.48979 13.5282 8.82116V12.3C13.5282 13.0732 12.9014 13.7 12.1282 13.7H3.80074C3.02754 13.7 2.40074 13.0732 2.40074 12.3001L2.40068 3.97258C2.40068 3.19938 3.02748 2.57257 3.80068 2.57257Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M14.0072 2.0955C13.0997 1.18757 11.6278 1.18794 10.7207 2.09632L6.17749 6.646C6.10294 6.72065 6.04543 6.81056 6.00889 6.90954L4.59817 10.7315C4.51713 10.951 4.57116 11.1977 4.73657 11.3633C4.90198 11.5288 5.14858 11.5831 5.36823 11.5023L9.20237 10.0916C9.30186 10.055 9.3922 9.99722 9.46714 9.92224L14.0073 5.37972C14.9139 4.47266 14.9138 3.00252 14.0072 2.0955ZM11.5698 2.94424C12.0083 2.50513 12.7198 2.50496 13.1585 2.94384C13.5968 3.38229 13.5968 4.09294 13.1585 4.53141L8.69127 9.00102L6.1742 9.92713L7.09912 7.42132L11.5698 2.94424Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ut=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"rename-icon",ref:e,icon:Ft}))});ut.displayName="RenameIcon";var Vt={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:"M1.7643 4.13354C1.7643 2.82523 2.82488 1.76465 4.13319 1.76465H11.8665C13.1748 1.76465 14.2354 2.82524 14.2354 4.13354V11.8669C14.2354 13.1752 13.1748 14.2358 11.8665 14.2358H4.13318C2.82488 14.2358 1.7643 13.1752 1.7643 11.8669V6.1462C1.76388 6.13711 1.76367 6.12797 1.76367 6.11878C1.76367 6.10959 1.76388 6.10045 1.7643 6.09136V4.13354ZM2.94652 6.70989V11.8669C2.94652 12.5222 3.47781 13.0535 4.13318 13.0535H5.52732V6.70989H2.94652ZM5.52732 5.52767H2.94652V4.13354C2.94652 3.47816 3.47781 2.94687 4.13319 2.94687H5.52732V5.52767ZM6.70954 6.70989V13.0535H11.8665C12.5219 13.0535 13.0532 12.5222 13.0532 11.8669V6.70989L6.70954 6.70989ZM13.0532 5.52767L6.70954 5.52767V2.94687H11.8665C12.5219 2.94687 13.0532 3.47816 13.0532 4.13354V5.52767Z",fillRule:"evenodd",clipRule:"evenodd"}}]},dt=T.forwardRef(function(r,e){return T.createElement(ee,Object.assign({},r,{id:"table-icon",ref:e,icon:Vt}))});dt.displayName="TableIcon";var oe=(r=>(r.Items="items",r.Condition="condition",r))(oe||{}),Ht=Object.getOwnPropertyDescriptor,Ut=(r,e,t,n)=>{for(var i=n>1?void 0:n?Ht(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},fe=(r,e)=>(t,n)=>e(t,n,r);let he=class extends s.Disposable{constructor(e,t,n,i,o){super();A(this,"_itemsCache",new Map);this._tableManager=e,this._sheetTableService=t,this._univerInstanceService=n,this._commandService=i,this._localeService=o,this._registerTableFilterChangeEvent()}_registerTableFilterChangeEvent(){this._commandService.onCommandExecuted(e=>{if(e.id===O.SetRangeValuesMutation.id){const{unitId:t,subUnitId:n,cellValue:i}=e.params,o=this._tableManager.getTablesBySubunitId(t,n);if(!o.length)return;new s.ObjectMatrix(i).forValue((u,d,m)=>{const v=s.cellToRange(u,d),b=o.find(y=>{const w=y.getTableFilterRange();return s.Rectangle.intersects(w,v)});if(b){const y=d-b.getRange().startColumn;this._itemsCache.delete(b.getId()+y)}})}else if(e.id===a.SetSheetTableFilterCommand.id){const{unitId:t,tableId:n}=e.params,i=this._tableManager.getTable(t,n);if(!i)return;const o=i.getSubunitId();this._tableManager.getTablesBySubunitId(t,o).forEach(u=>{const d=u.getRange();for(let m=d.startColumn;m<=d.endColumn;m++)this._itemsCache.delete(u.getId()+m)})}})}getTableFilterPanelInitProps(e,t,n,i){const o=this._tableManager.getTable(e,n),c=o.getRange(),u=o.getTableFilterColumn(i-c.startColumn);return{unitId:e,subUnitId:t,tableFilter:u,currentFilterBy:a.isConditionFilter(u)?oe.Condition:oe.Items,tableId:n,columnIndex:i-c.startColumn}}getTableFilterCheckedItems(e,t,n){const i=this._tableManager.getTable(e,t),o=[];if(i){const c=i.getTableFilterColumn(n);c&&a.isManualFilter(c)&&o.push(...c.values)}return o}setTableFilter(e,t,n,i){if(!this._tableManager.getTable(e,t))return;const c={unitId:e,tableId:t,column:n,tableFilter:i};this._commandService.executeCommand(a.SetSheetTableFilterCommand.id,c)}getTableFilterItems(e,t,n,i){var k;if(this._itemsCache.has(n+i))return this._itemsCache.get(n+i)||{data:[],itemsCountMap:new Map,allItemsCount:0};const o=this._tableManager.getTable(e,n);if(!o)return{data:[],itemsCountMap:new Map,allItemsCount:0};const c=o.getTableFilterRange(),{startRow:u,endRow:d,startColumn:m}=c,v=m+i,b=(k=this._univerInstanceService.getUnit(e))==null?void 0:k.getSheetBySheetId(t);if(!b)return{data:[],itemsCountMap:new Map,allItemsCount:0};const y=[],w=new Map;let I=0;for(let E=u;E<=d;E++){if(b.isRowFiltered(E))continue;let D=this._sheetTableService.getCellValueWithConditionType(b,E,v);D===void 0&&(D=this._localeService.t("sheets-table.condition.empty")),w.has(D)||y.push({title:D,key:`${v}_${E}`,leaf:!0}),I++,w.set(D,(w.get(D)||0)+1)}return this._itemsCache.set(n+i,{data:y,itemsCountMap:w,allItemsCount:I}),{data:y,itemsCountMap:w,allItemsCount:I}}};he=Ut([fe(0,s.Inject(a.TableManager)),fe(1,s.Inject(a.SheetTableService)),fe(2,s.Inject(s.IUniverInstanceService)),fe(3,s.ICommandService),fe(4,s.Inject(s.LocaleService))],he);var j=(r=>(r.DatePicker="DatePicker",r.DateRange="DateRange",r.Input="Input",r.Inputs="Inputs",r.Select="Select",r.None="None",r))(j||{});function At(r){const t=r.get(s.LocaleService).t;return[{value:a.TableConditionTypeEnum.String,label:t(`sheets-table.condition.${a.TableConditionTypeEnum.String}`),children:[{value:a.TableStringCompareTypeEnum.Equal,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.Equal}`)},{value:a.TableStringCompareTypeEnum.NotEqual,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.NotEqual}`)},{value:a.TableStringCompareTypeEnum.Contains,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.Contains}`)},{value:a.TableStringCompareTypeEnum.NotContains,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.NotContains}`)},{value:a.TableStringCompareTypeEnum.StartsWith,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.StartsWith}`)},{value:a.TableStringCompareTypeEnum.EndsWith,label:t(`sheets-table.string.compare.${a.TableStringCompareTypeEnum.EndsWith}`)}]},{value:a.TableConditionTypeEnum.Number,label:t(`sheets-table.condition.${a.TableConditionTypeEnum.Number}`),children:[{value:a.TableNumberCompareTypeEnum.Equal,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.Equal}`)},{value:a.TableNumberCompareTypeEnum.NotEqual,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.NotEqual}`)},{value:a.TableNumberCompareTypeEnum.GreaterThan,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.GreaterThan}`)},{value:a.TableNumberCompareTypeEnum.GreaterThanOrEqual,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.GreaterThanOrEqual}`)},{value:a.TableNumberCompareTypeEnum.LessThan,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.LessThan}`)},{value:a.TableNumberCompareTypeEnum.LessThanOrEqual,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.LessThanOrEqual}`)},{value:a.TableNumberCompareTypeEnum.Between,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.Between}`)},{value:a.TableNumberCompareTypeEnum.NotBetween,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.NotBetween}`)},{value:a.TableNumberCompareTypeEnum.Above,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.Above}`)},{value:a.TableNumberCompareTypeEnum.Below,label:t(`sheets-table.number.compare.${a.TableNumberCompareTypeEnum.Below}`)}]},{value:a.TableConditionTypeEnum.Date,label:t(`sheets-table.condition.${a.TableConditionTypeEnum.Date}`),children:[{value:a.TableDateCompareTypeEnum.Equal,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Equal}`)},{value:a.TableDateCompareTypeEnum.NotEqual,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.NotEqual}`)},{value:a.TableDateCompareTypeEnum.After,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.After}`)},{value:a.TableDateCompareTypeEnum.AfterOrEqual,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.AfterOrEqual}`)},{value:a.TableDateCompareTypeEnum.Before,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Before}`)},{value:a.TableDateCompareTypeEnum.BeforeOrEqual,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.BeforeOrEqual}`)},{value:a.TableDateCompareTypeEnum.Between,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Between}`)},{value:a.TableDateCompareTypeEnum.NotBetween,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.NotBetween}`)},{value:a.TableDateCompareTypeEnum.Today,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Today}`)},{value:a.TableDateCompareTypeEnum.Yesterday,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Yesterday}`)},{value:a.TableDateCompareTypeEnum.Tomorrow,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Tomorrow}`)},{value:a.TableDateCompareTypeEnum.ThisWeek,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.ThisWeek}`)},{value:a.TableDateCompareTypeEnum.LastWeek,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.LastWeek}`)},{value:a.TableDateCompareTypeEnum.NextWeek,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.NextWeek}`)},{value:a.TableDateCompareTypeEnum.ThisMonth,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.ThisMonth}`)},{value:a.TableDateCompareTypeEnum.LastMonth,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.LastMonth}`)},{value:a.TableDateCompareTypeEnum.NextMonth,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.NextMonth}`)},{value:a.TableDateCompareTypeEnum.ThisYear,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.ThisYear}`)},{value:a.TableDateCompareTypeEnum.LastYear,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.LastYear}`)},{value:a.TableDateCompareTypeEnum.NextYear,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.NextYear}`)},{value:a.TableDateCompareTypeEnum.Quarter,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Quarter}`)},{value:a.TableDateCompareTypeEnum.Month,label:t(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Month}`)}]}]}function jt(r,e){if(!e)return[];const n=r.get(s.LocaleService).t;switch(e){case a.TableDateCompareTypeEnum.Quarter:return[{value:a.TableDateCompareTypeEnum.Q1,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Q1}`)},{value:a.TableDateCompareTypeEnum.Q2,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Q2}`)},{value:a.TableDateCompareTypeEnum.Q3,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Q3}`)},{value:a.TableDateCompareTypeEnum.Q4,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.Q4}`)}];case a.TableDateCompareTypeEnum.Month:return[{value:a.TableDateCompareTypeEnum.M1,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M1}`)},{value:a.TableDateCompareTypeEnum.M2,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M2}`)},{value:a.TableDateCompareTypeEnum.M3,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M3}`)},{value:a.TableDateCompareTypeEnum.M4,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M4}`)},{value:a.TableDateCompareTypeEnum.M5,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M5}`)},{value:a.TableDateCompareTypeEnum.M6,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M6}`)},{value:a.TableDateCompareTypeEnum.M7,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M7}`)},{value:a.TableDateCompareTypeEnum.M8,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M8}`)},{value:a.TableDateCompareTypeEnum.M9,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M9}`)},{value:a.TableDateCompareTypeEnum.M10,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M10}`)},{value:a.TableDateCompareTypeEnum.M11,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M11}`)},{value:a.TableDateCompareTypeEnum.M12,label:n(`sheets-table.date.compare.${a.TableDateCompareTypeEnum.M12}`)}];default:return[]}}const Ze=new Set([a.TableDateCompareTypeEnum.Equal,a.TableDateCompareTypeEnum.NotEqual,a.TableDateCompareTypeEnum.After,a.TableDateCompareTypeEnum.AfterOrEqual,a.TableDateCompareTypeEnum.Before,a.TableDateCompareTypeEnum.BeforeOrEqual]);function Wt(r,e){return e?r===a.TableConditionTypeEnum.String?j.Input:r===a.TableConditionTypeEnum.Number?e===a.TableNumberCompareTypeEnum.Between||e===a.TableNumberCompareTypeEnum.NotBetween?j.Inputs:j.Input:r===a.TableConditionTypeEnum.Date?e===a.TableDateCompareTypeEnum.Between||e===a.TableDateCompareTypeEnum.NotBetween?j.DateRange:e===a.TableDateCompareTypeEnum.Quarter||e===a.TableDateCompareTypeEnum.Month?j.Select:Ze.has(e)?j.DatePicker:j.None:j.None:j.None}function Zt(r){if(!r||r.filterType!=="condition")return{type:a.TableConditionTypeEnum.String,compareType:a.TableStringCompareTypeEnum.Equal,info:{}};const e=r.filterInfo,{conditionType:t,compareType:n}=e;if(t===a.TableConditionTypeEnum.Date)if(n===a.TableDateCompareTypeEnum.Between||n===a.TableDateCompareTypeEnum.NotBetween){let i;return Array.isArray(e.expectedValue)&&(i=e.expectedValue.map(o=>typeof o=="string"?new Date(o):o)),{type:t,compare:n,info:{dateRange:i}}}else{if(n===a.TableDateCompareTypeEnum.Today||n===a.TableDateCompareTypeEnum.Yesterday||n===a.TableDateCompareTypeEnum.Tomorrow||n===a.TableDateCompareTypeEnum.ThisWeek||n===a.TableDateCompareTypeEnum.LastWeek||n===a.TableDateCompareTypeEnum.NextWeek||n===a.TableDateCompareTypeEnum.ThisMonth||n===a.TableDateCompareTypeEnum.LastMonth||n===a.TableDateCompareTypeEnum.NextMonth||n===a.TableDateCompareTypeEnum.ThisYear||n===a.TableDateCompareTypeEnum.LastYear||n===a.TableDateCompareTypeEnum.NextYear)return{type:t,compare:n,info:{}};if(Ze.has(n)){let i;if(typeof e.expectedValue=="string")i=new Date(e.expectedValue);else if(Array.isArray(e.expectedValue))for(let o=0;o<e.expectedValue.length;o++)typeof e.expectedValue[o]=="string"&&(e.expectedValue[o]=new Date(e.expectedValue[o]));return{type:t,compare:n,info:{date:i}}}else return new Set([a.TableDateCompareTypeEnum.Q1,a.TableDateCompareTypeEnum.Q2,a.TableDateCompareTypeEnum.Q3,a.TableDateCompareTypeEnum.Q4]).has(n)?{type:t,compare:a.TableDateCompareTypeEnum.Quarter,info:{dateSelect:e.compareType}}:{type:t,compare:a.TableDateCompareTypeEnum.Month,info:{dateSelect:e.compareType}}}else{if(t===a.TableConditionTypeEnum.Number)return n===a.TableNumberCompareTypeEnum.Between||n===a.TableNumberCompareTypeEnum.NotBetween?{type:t,compare:n,info:{numberRange:e.expectedValue}}:{type:t,compare:n,info:{number:e.expectedValue}};if(t===a.TableConditionTypeEnum.String)return{type:t,compare:n,info:{string:e.expectedValue}}}return{type:a.TableConditionTypeEnum.String,compare:a.TableStringCompareTypeEnum.Equal,info:{}}}const qt=r=>{var w,I,k,E,P,D,V,N;const{conditionInfo:e,onChange:t}=r,n=h.useDependency(s.LocaleService),[i,o]=T.useState(!1),c=h.useDependency(s.Injector),u=At(c),d=(g,L,M)=>{t({type:L!=null?L:e.type,compare:M!=null?M:e.compare,info:g})},m=g=>{var F;const L=g[0],M=g[1];M&&o(!1);const f={};L===a.TableConditionTypeEnum.Date?M===a.TableDateCompareTypeEnum.Quarter?f.dateSelect=a.TableDateCompareTypeEnum.Q1:M===a.TableDateCompareTypeEnum.Month?f.dateSelect=a.TableDateCompareTypeEnum.M1:Ze.has(M)?f.date=new Date:f.dateRange=[new Date,new Date]:L===a.TableConditionTypeEnum.Number?f.number=0:L===a.TableConditionTypeEnum.String&&(f.string=""),d(f,g[0],(F=g[1])!=null?F:a.TableStringCompareTypeEnum.Equal)},v=Wt(e.type,e.compare);let b="";e.compare?b=`${n.t(`sheets-table.condition.${e.type}`)} - ${n.t(`sheets-table.${e.type}.compare.${e.compare}`)}`:b=n.t(`sheets-table.condition.${e.type}`);const y=jt(c,e.compare);return l.jsxs("div",{children:[l.jsx(p.Dropdown,{align:"start",open:i,onOpenChange:o,overlay:l.jsx(p.CascaderList,{value:[e.type,e.compare],options:u,onChange:m,contentClassName:"univer-flex-1",wrapperClassName:"!univer-h-[150px]"}),children:l.jsxs("div",{className:p.clsx("univer-box-border univer-flex univer-h-8 univer-w-full univer-items-center univer-justify-between univer-rounded-md univer-bg-white univer-px-2 univer-text-sm univer-transition-colors univer-duration-200 hover:univer-border-primary-600 focus:univer-border-primary-600 focus:univer-outline-none focus:univer-ring-2 dark:!univer-bg-gray-700 dark:!univer-text-white",p.borderClassName),children:[l.jsx("span",{children:b}),l.jsx(We,{})]})}),l.jsxs("div",{className:"univer-mt-3 univer-w-full",children:[v===j.Input&&l.jsx(l.Fragment,{children:e.type===a.TableConditionTypeEnum.String?l.jsx(p.Input,{className:"univer-w-full",placeholder:"请输入",value:e.info.string,onChange:g=>d({string:g})}):l.jsx(p.InputNumber,{className:"univer-h-7 univer-w-full",value:e.info.number,controls:!1,onChange:g=>{g!==null&&d({number:g})}})}),v===j.DatePicker&&l.jsx("div",{id:"univer-table-date-picker-wrapper",children:l.jsx(p.DatePicker,{className:"univer-w-full",value:(w=e.info.date)!=null?w:new Date,onValueChange:g=>d({date:g})})}),v===j.DateRange&&l.jsx("div",{id:"univer-table-date-range-wrapper",children:l.jsx(p.DateRangePicker,{className:"univer-w-full",value:[(k=(I=e.info.dateRange)==null?void 0:I[0])!=null?k:new Date,(P=(E=e.info.dateRange)==null?void 0:E[1])!=null?P:new Date],onValueChange:g=>{d(g?{dateRange:g}:{})}})}),v===j.Inputs&&l.jsxs("div",{className:"univer-flex univer-items-center univer-gap-2",children:[l.jsx(p.InputNumber,{className:"univer-w-full",value:(D=e.info.numberRange)==null?void 0:D[0],onChange:g=>{var L;g!==null&&d({numberRange:[g,(L=e.info.numberRange)==null?void 0:L[1]]})},controls:!1}),l.jsx("span",{children:" - "}),l.jsx(p.InputNumber,{className:"univer-w-full",value:(V=e.info.numberRange)==null?void 0:V[1],controls:!1,onChange:g=>{var L;g!==null&&d({numberRange:[(L=e.info.numberRange)==null?void 0:L[0],g]})}})]}),v===j.Select&&l.jsx(p.Select,{className:"univer-w-full",value:(N=e.info.dateSelect)!=null?N:y[0].value,options:y,onChange:g=>d({dateSelect:g})})]})]})},Yt=r=>{let e=0;return r.forEach(t=>{e+=t}),e};function Qt(r){const{unitId:e,tableId:t,subUnitId:n,columnIndex:i,checkedItemSet:o,setCheckedItemSet:c,tableFilter:u}=r,d=h.useDependency(s.LocaleService),m=h.useDependency(he),{data:v,itemsCountMap:b,allItemsCount:y}=m.getTableFilterItems(e,n,t,i),[w,I]=T.useState(u===void 0?!0:o.size===b.size),[k,E]=T.useState(w?y:Yt(b)),P=!w&&o.size>0,[D,V]=T.useState(""),N=T.useMemo(()=>D?v.filter(f=>String(f.title).toLowerCase().includes(D.toLowerCase())):v,[D,v]),g=T.useCallback(()=>{w?(o.clear(),c(new Set(o)),I(!1)):(N.forEach(f=>{o.add(f.title)}),c(new Set(o)),I(!0))},[w]),L=T.useCallback(f=>{f===""?(I(!0),v.forEach(F=>{o.add(F.title)}),E(y)):(o.clear(),I(!1),E(0)),V(f)},[]),M=f=>{if(w){I(!1);const F=new Set;for(const{title:B}of v)f!==B&&F.add(B);E(y-b.get(f)),c(F)}else o.has(f)?(o.delete(f),E(k-b.get(f))):(o.add(f),E(k+b.get(f))),c(new Set(o))};return l.jsxs("div",{className:"univer-flex univer-h-full univer-flex-col",children:[l.jsx(p.Input,{autoFocus:!0,value:D,placeholder:d.t("sheets-filter.panel.search-placeholder"),onChange:L}),l.jsx("div",{className:p.clsx("univer-mt-2 univer-box-border univer-flex univer-h-[180px] univer-max-h-[180px] univer-flex-grow univer-flex-col univer-overflow-hidden univer-rounded-md univer-py-1.5 univer-pl-2",p.borderClassName),children:l.jsx("div",{className:p.clsx("univer-h-40 univer-overflow-y-auto univer-py-1 univer-pl-2",p.scrollbarClassName),children:l.jsxs("div",{className:"univer-h-full",children:[l.jsx("div",{className:"univer-flex univer-items-center univer-px-2 univer-py-1",children:l.jsx(p.Checkbox,{indeterminate:P,disabled:v.length===0,checked:w,onChange:g,children:l.jsxs("div",{className:"univer-flex univer-h-5 univer-flex-1 univer-items-center univer-text-sm",children:[l.jsx("span",{className:"univer-inline-block univer-truncate",children:`${d.t("sheets-filter.panel.select-all")}`}),l.jsx("span",{className:"univer-ml univer-text-gray-400",children:`(${k}/${D?N.length:y})`})]})})}),N.map(f=>l.jsx("div",{className:"univer-flex univer-items-center univer-px-2 univer-py-1",children:l.jsx(p.Checkbox,{checked:w||o.has(f.title),onChange:()=>{M(f.title)},children:l.jsxs("div",{className:"univer-flex univer-h-5 univer-flex-1 univer-text-sm",children:[l.jsx("span",{className:"univer-inline-block univer-truncate",children:f.title}),l.jsx("span",{className:"univer-ml-1 univer-text-gray-400",children:`(${b.get(f.title)||0})`})]})})},f.key))]})})})]})}function Gt(){var ce;const r=h.useDependency(s.LocaleService),e=Xt(r),t=h.useDependency(he),n=h.useDependency(a.TableManager),i=h.useDependency(s.ICommandService),o=h.useDependency(s.IPermissionService),c=h.useDependency(be),u=c.getCurrentTableFilterInfo(),d=t.getTableFilterPanelInitProps(u.unitId,u.subUnitId,u.tableId,u.column),{unitId:m,subUnitId:v,tableId:b,tableFilter:y,currentFilterBy:w,columnIndex:I}=d,{data:k}=t.getTableFilterItems(m,v,b,I),E=t.getTableFilterCheckedItems(m,b,I),[P,D]=T.useState(new Set(E)),[V,N]=T.useState(w||oe.Items),[g,L]=T.useState(()=>{const C=d.tableFilter;return Zt(C)}),M=n.getTable(m,b);if(!M)return null;const f=M.getTableFilters(),F=f.getSortState();F.columnIndex===I&&(F.sortState,a.SheetsTableSortStateEnum.Asc),F.columnIndex===I&&(F.sortState,a.SheetsTableSortStateEnum.Desc);const B=()=>{c.closeFilterPanel()},Z=()=>{B()},H=C=>{const R=M.getTableFilterRange();i.executeCommand(Ue.SortRangeCommand.id,{unitId:m,subUnitId:v,range:R,orderRules:[{colIndex:I+R.startColumn,type:C?Ue.SortType.ASC:Ue.SortType.DESC}],hasTitle:!1}),f.setSortState(I,C?a.SheetsTableSortStateEnum.Asc:a.SheetsTableSortStateEnum.Desc),B()},K=()=>{if(V===oe.Items){const C=[];for(const q of k)P.has(q.title)&&C.push(q.title);const R=M.getTableFilterColumn(I);if(R){if(R.values.join(",")===C.join(",")){B();return}}else if(C.length===0){B();return}const U={filterType:a.TableColumnFilterTypeEnum.manual,values:C};t.setTableFilter(m,b,I,U)}else{let C;g.compare===a.TableDateCompareTypeEnum.Quarter||g.compare===a.TableDateCompareTypeEnum.Month?C={conditionType:g.type,compareType:Object.values(g.info)[0]}:C={conditionType:g.type,compareType:g.compare,expectedValue:Object.values(g.info)[0]};const R={filterType:a.TableColumnFilterTypeEnum.condition,filterInfo:C};t.setTableFilter(m,b,I,R)}B()},le=()=>{t.setTableFilter(m,b,I,void 0),B()},se=new O.WorkbookEditablePermission(m).id,de=(ce=o.getPermissionPoint(se))==null?void 0:ce.value;return l.jsxs("div",{className:"univer-box-border univer-flex univer-w-[312px] univer-flex-col univer-rounded-[10px] univer-bg-white univer-p-4 univer-shadow-lg dark:!univer-border-gray-600 dark:!univer-bg-gray-700",children:[de&&l.jsx("div",{className:"univer-mb-3 univer-flex",children:l.jsxs(p.ButtonGroup,{className:"univer-mb-3 !univer-flex univer-w-full",children:[l.jsxs(p.Button,{className:"univer-w-1/2",onClick:()=>H(!0),children:[l.jsx(it,{className:"univer-mr-1"}),r.t("sheets-sort.general.sort-asc")]}),l.jsxs(p.Button,{className:"univer-w-1/2",onClick:()=>H(!1),children:[l.jsx(lt,{className:"univer-mr-1"}),r.t("sheets-sort.general.sort-desc")]})]})}),l.jsx("div",{className:"univer-w-full",children:l.jsx(p.Segmented,{value:V,items:e,onChange:C=>N(C)})}),l.jsx("div",{className:"univer-z-10 univer-h-60 univer-w-[280px]",children:l.jsx("div",{className:"univer-mt-3 univer-h-full univer-w-full",children:V===oe.Items?l.jsx(Qt,{tableFilter:y,unitId:m,subUnitId:v,tableId:b,columnIndex:I,checkedItemSet:P,setCheckedItemSet:D}):l.jsx(qt,{tableFilter:y,unitId:m,subUnitId:v,tableId:b,columnIndex:I,conditionInfo:g,onChange:L})})}),l.jsxs("div",{className:"univer-flex-wrap-nowrap univer-mt-4 univer-inline-flex univer-flex-shrink-0 univer-flex-grow-0 univer-justify-between univer-overflow-hidden",children:[l.jsx(p.Button,{disabled:y===void 0,onClick:le,children:r.t("sheets-filter.panel.clear-filter")}),l.jsxs("div",{children:[l.jsx(p.Button,{className:"univer-mr-2",onClick:Z,children:r.t("sheets-filter.panel.cancel")}),l.jsx(p.Button,{variant:"primary",onClick:K,children:r.t("sheets-filter.panel.confirm")})]})]})]})}function Xt(r){const e=r.getCurrentLocale();return T.useMemo(()=>[{label:r.t("sheets-filter.panel.by-values"),value:oe.Items},{label:r.t("sheets-filter.panel.by-conditions"),value:oe.Condition}],[e,r])}var Kt=Object.getOwnPropertyDescriptor,zt=(r,e,t,n)=>{for(var i=n>1?void 0:n?Kt(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},$e=(r,e)=>(t,n)=>e(t,n,r);let be=class extends s.Disposable{constructor(e,t,n,i){super();A(this,"_popupDisposable");A(this,"_currentTableFilterInfo",null);this._componentManager=e,this._contextService=t,this._sheetCanvasPopupService=n,this._dialogService=i,this._initComponents(),this._initUIPopup()}setCurrentTableFilterInfo(e){this._currentTableFilterInfo=e}clearCurrentTableFilterInfo(){this._currentTableFilterInfo=null}getCurrentTableFilterInfo(){return this._currentTableFilterInfo}_initComponents(){[[ae,Gt]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}_initUIPopup(){this.disposeWithMe(this._contextService.subscribeContextValue$(ae).pipe(x.startWith(void 0),x.distinctUntilChanged()).subscribe(e=>{e?this._openFilterPopup():e===!1&&this._closeFilterPopup()}))}closeFilterPanel(){this._contextService.setContextValue(ae,!1)}_openFilterPopup(){const e=this._currentTableFilterInfo;if(!e)throw new Error("[SheetsFilterUIController]: no filter model when opening filter popup!");const{row:t,column:n}=e;this._popupDisposable=this._sheetCanvasPopupService.attachPopupToCell(t,n,{componentKey:ae,direction:"horizontal",onClickOutside:()=>{this._dialogService.close(It),this._contextService.setContextValue(ae,!1)},offset:[5,0],portal:!0})}_closeFilterPopup(){var e;(e=this._popupDisposable)==null||e.dispose(),this._popupDisposable=null,this.clearCurrentTableFilterInfo()}};be=zt([$e(0,s.Inject(h.ComponentManager)),$e(1,s.IContextService),$e(2,s.Inject(Q.SheetCanvasPopManagerService)),$e(3,s.Inject(h.IDialogService))],be);const qe={type:s.CommandType.OPERATION,id:"sheet.operation.open-table-filter-panel",async handler(r,e){if(!e)return!1;const{row:t,col:n,unitId:i,subUnitId:o,tableId:c}=e,u=r.get(a.TableManager),d=r.get(s.IContextService),m=r.get(be);return u.getTable(i,c)?(d.getContextValue(ae)||(m.setCurrentTableFilterInfo({unitId:i,subUnitId:o,row:t,tableId:c,column:n}),d.setContextValue(ae,!0)),!0):!1}},Ye={type:s.CommandType.OPERATION,id:"sheet.operation.open-table-selector",async handler(r){var w;const e=r.get(s.IUniverInstanceService),t=r.get(s.ICommandService),n=O.getSheetCommandTarget(e);if(!n)return!1;const{unitId:i,subUnitId:o,worksheet:c}=n,d=r.get(O.SheetsSelectionsService).getCurrentLastSelection(),m=(w=d==null?void 0:d.range)!=null?w:{startRow:0,endRow:0,startColumn:0,endColumn:0},b=O.isSingleCellSelection(d)?O.expandToContinuousRange(m,{up:!0,left:!0,right:!0,down:!0},c):m,y=await pt(r,i,o,b);return y?(t.executeCommand(a.AddSheetTableCommand.id,{...y}),!0):!1}};async function pt(r,e,t,n,i){const o=r.get(h.IDialogService),c=r.get(s.LocaleService);return new Promise(u=>{const d={unitId:e,subUnitId:t,range:n,tableId:i,onConfirm:m=>{u(m),o.close(me)},onCancel:()=>{u(null),o.close(me)}};o.open({id:me,title:{title:c.t("sheets-table.selectRange")},draggable:!0,destroyOnClose:!0,mask:!1,maskClosable:!1,children:{label:{name:me,props:d}},width:300,onClose:()=>{u(null),o.close(me)}})})}const vt="sheets-table-ui.config",mt={anchorHeight:24,anchorBackgroundColor:"rgb(134,139,156)"};var Jt=Object.getOwnPropertyDescriptor,en=(r,e,t,n)=>{for(var i=n>1?void 0:n?Jt(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},tn=(r,e)=>(t,n)=>e(t,n,r);let ue=class extends s.Disposable{constructor(e){super();A(this,"_refreshTable",new x.Subject);A(this,"refreshTable$",this._refreshTable.asObservable());this._commandService=e,this._initListener()}_initListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===O.SetRangeThemeMutation.id){const t=e.params,{styleName:n}=t;n.startsWith(a.SHEET_TABLE_CUSTOM_THEME_PREFIX)&&this._refreshTable.next(Math.random())}}))}};ue=en([tn(0,s.Inject(s.ICommandService))],ue);const nn=()=>{var de,ce;const[r,e]=T.useState(""),[t,n]=T.useState(""),i=h.useDependency(h.ISidebarService),[o,c]=T.useState({}),u=h.useDependency(s.Injector),d=h.useDependency(ke),m=h.useObservable(d.anchorPosition$),v=h.useDependency(s.ICommandService),b=h.useDependency(s.IUniverInstanceService),y=h.useDependency(O.WorkbookPermissionService),w=h.useObservable(y.unitPermissionInitStateChange$,!1),I=h.useDependency(a.TableManager),k=h.useDependency(O.SheetRangeThemeModel),E=h.useDependency(ue),P=h.useObservable(E.refreshTable$),D=h.useDependency(s.LocaleService),V=h.useDependency(O.SheetsSelectionsService),N=h.useObservable(V.selectionChanged$,[{range:s.cellToRange(0,0),primary:null}]),[,g]=T.useState(Math.random()),M=h.useDependency(s.IConfigService).getConfig(vt),f=(de=M==null?void 0:M.anchorHeight)!=null?de:24,F=(ce=M==null?void 0:M.anchorBackgroundColor)!=null?ce:"rgb(53,91,183)",B=(C,R)=>{c(U=>({...U,[C]:R}))};if(T.useEffect(()=>{g(Math.random())},[P]),!(m!=null&&m.length))return null;const Z=O.getSheetCommandTarget(b);if(!Z)return null;const{unitId:H,subUnitId:K}=Z,le=(C,R)=>{var q;if(((q=I.getTableById(H,C))==null?void 0:q.getDisplayName())===R){e(""),n("");return}v.executeCommand(a.SetSheetTableCommand.id,{tableId:C,unitId:H,name:R}),n(""),e("")},se=async C=>{const R=I.getTableById(H,C);if(!R)return;const U=R.getRange(),q=await pt(u,H,K,U,C);q&&v.executeCommand(a.SetSheetTableCommand.id,{tableId:C,unitId:H,updateRange:{newRange:q.range}})};return w?l.jsx("div",{className:"univer-absolute univer-z-50 univer-h-0 univer-w-0",children:m.map(C=>{var Ee,Ie,S,_,z,J,re;const R=I.getTableById(H,C.tableId);if(!R)return null;const U=k.getRangeThemeStyle(H,R.getTableStyleId()),q=(S=(Ie=(Ee=U==null?void 0:U.getHeaderRowStyle())==null?void 0:Ee.bg)==null?void 0:Ie.rgb)!=null?S:F,Fe=(J=(z=(_=U==null?void 0:U.getHeaderRowStyle())==null?void 0:_.cl)==null?void 0:z.rgb)!=null?J:"rgb(255, 255, 255)",Ve=R.getRange();if(!(N!=null&&N.length))return null;const He=N[N.length-1].range,ye=!s.Rectangle.intersects(Ve,He)&&C.y<=20;return l.jsxs("div",{className:p.clsx("univer-shadow-xs univer-absolute univer-box-border univer-cursor-pointer univer-items-center univer-rounded-xl univer-pl-2 univer-pr-2",p.borderClassName,{"univer-flex":!ye,"univer-hidden":ye}),style:{left:C.x,top:Math.max(C.y,0),backgroundColor:q,color:Fe,borderWidth:"0.5px",height:f?`${f}px`:"24px"},children:[l.jsx("div",{className:"univer-text-nowrap",children:r===C.tableId?l.jsx(p.Input,{className:"univer-h-[18px] univer-min-w-16 univer-rounded-none",inputClass:"univer-h-[18px] univer-w-[80px]",value:t,onChange:W=>n(W),onBlur:()=>le(C.tableId,t),onKeyDown:W=>{W.key==="Enter"&&le(C.tableId,t)},autoFocus:r===C.tableId}):l.jsx("div",{className:"univer-h-[18px] univer-max-w-24 univer-truncate univer-text-sm",children:C.tableName})}),l.jsx(p.Dropdown,{align:"start",overlay:l.jsxs("div",{className:"univer-pb-2 univer-pt-2",children:[l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{e(C.tableId),n(C.tableName)},children:[l.jsx(ut,{}),D.t("sheets-table.rename")]}),l.jsx("div",{className:"univer-mb-1 univer-mt-1 univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{onClick:()=>se(C.tableId),className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",children:[l.jsx(st,{}),D.t("sheets-table.updateRange")]}),l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-gap-2 univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{B(C.tableId,!1);const W=I.getTableById(H,C.tableId);if(!W)return;const pe=W.getTableConfig(),ve={id:_t,header:{title:D.t("sheets-table.tableStyle")},children:{label:rt,oldConfig:pe,unitId:H,subUnitId:K,tableId:C.tableId},width:330};i.open(ve)},children:[l.jsx(ct,{extend:{colorChannel1:"rgb(53,91,183)"}}),D.t("sheets-table.setTheme")]}),l.jsx("div",{className:"univer-mb-1 univer-mt-1 univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{className:"univer-flex univer-min-w-32 univer-cursor-pointer univer-items-center univer-pb-1 univer-pl-2 univer-pr-2 univer-pt-1 univer-text-sm hover:univer-bg-gray-200",onClick:()=>{B(C.tableId,!1),v.executeCommand(a.DeleteSheetTableCommand.id,{tableId:C.tableId,subUnitId:K,unitId:H})},children:[l.jsx(ot,{className:"univer-mr-2"}),D.t("sheets-table.removeTable")]})]}),open:(re=o[C.tableId])!=null?re:!1,onOpenChange:W=>{B(C.tableId,W)},children:l.jsx(We,{})},C.tableId)]},C.tableId)})}):null};var rn=Object.getOwnPropertyDescriptor,an=(r,e,t,n)=>{for(var i=n>1?void 0:n?rn(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},te=(r,e)=>(t,n)=>e(t,n,r);let ke=class extends s.Disposable{constructor(e,t,n,i,o,c,u,d,m,v,b){super();A(this,"_anchorVisible$",new x.BehaviorSubject(!0));A(this,"_timer");A(this,"_anchorPosition$",new x.BehaviorSubject([]));A(this,"anchorPosition$",this._anchorPosition$.asObservable());this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._renderManagerService=i,this._commandService=o,this._univerInstanceService=c,this._uiPartsService=u,this._tableManager=d,this._scrollManagerService=m,this._workbookPermissionService=v,this._permissionService=b,this._initUI(),this._initListener(),this._initTableAnchor()}_initUI(){this.disposeWithMe(this._uiPartsService.registerComponent(h.BuiltInUIPart.CONTENT,()=>h.connectInjector(nn,this._injector)))}_initListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{(e.id===Q.SetZoomRatioOperation.id||e.id===Q.SetScrollOperation.id)&&(this._anchorVisible$.next(!1),this._timer&&clearTimeout(this._timer),this._timer=setTimeout(()=>{this._anchorVisible$.next(!0)},300))}))}_initTableAnchor(){this.disposeWithMe(x.merge(this._context.unit.activeSheet$,this._sheetSkeletonManagerService.currentSkeleton$,this._scrollManagerService.validViewportScrollInfo$,this._tableManager.tableAdd$,this._tableManager.tableDelete$,this._tableManager.tableNameChanged$,this._tableManager.tableRangeChanged$,this._tableManager.tableThemeChanged$,this._workbookPermissionService.unitPermissionInitStateChange$.pipe(x.filter(e=>e)),this._permissionService.permissionPointUpdate$.pipe(x.debounceTime(300)),this._anchorVisible$).subscribe(()=>{var m;if(!this._anchorVisible$.getValue()){this._anchorPosition$.next([]);return}const t=this._context.unit,n=t.getActiveSheet(),i=n==null?void 0:n.getSheetId(),o=this._tableManager.getTableList(this._context.unitId).filter(v=>v.subUnitId===i),c=this._renderManagerService.getRenderById(this._context.unitId);if(!c){this._anchorPosition$.next([]);return}if(!((m=this._permissionService.getPermissionPoint(new O.WorkbookEditablePermission(t.getUnitId()).id))==null?void 0:m.value)){this._anchorPosition$.next([]);return}const d=o.reduce((v,b)=>{const{startRow:y,startColumn:w}=b.range,I=c.with(Q.SheetSkeletonManagerService),k=Q.getSheetObject(this._univerInstanceService,this._renderManagerService);if(!k)return v;const{scene:E}=k,P=E.getViewport(Y.SHEET_VIEWPORT_KEY.VIEW_MAIN);if(!P)return v;const D=E==null?void 0:E.scaleX,V=E==null?void 0:E.scaleY,N=E==null?void 0:E.getViewportScrollXY(P);if(!D||!E||!V||!N)return v;const g=I.getCurrentSkeleton();if(!g)return v;const L=g.getNoMergeCellWithCoordByIndex(y,w),M=Y.convertTransformToOffsetX(L.startX,D,N),f=Y.convertTransformToOffsetY(L.startY,V,N)-25-4;return f>=-10&&M>=45&&v.push({x:M,y:f,tableId:b.id,tableName:b.name}),v},[]);this._anchorPosition$.next(d)}))}};ke=an([te(1,s.Inject(s.Injector)),te(2,s.Inject(Q.SheetSkeletonManagerService)),te(3,Y.IRenderManagerService),te(4,s.ICommandService),te(5,s.IUniverInstanceService),te(6,h.IUIPartsService),te(7,s.Inject(a.TableManager)),te(8,s.Inject(Q.SheetScrollManagerService)),te(9,s.Inject(O.WorkbookPermissionService)),te(10,s.Inject(s.IPermissionService))],ke);const ge=16;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 ht{static drawNoSetting(e,t,n,i){e.save(),Y.Rect.drawWith(e,{radius:2,width:ge,height:ge,fill:i}),e.lineCap="square",e.strokeStyle=n,e.scale(t/ge,t/ge),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 drawIconByPath(e,t,n,i){e.save(),e.strokeStyle=n,e.fillStyle=i,Y.Rect.drawWith(e,{radius:2,width:ge,height:ge,fill:i}),t.forEach(o=>{const c=new Path2D(o);e.fillStyle=n,e.fill(c,"evenodd")}),e.restore()}}const on=["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"],ln=["M12.4008 13.1831C12.6907 13.1831 12.9258 12.9481 12.9258 12.6581V4.60873L14.013 5.69597C14.218 5.901 14.5505 5.901 14.7555 5.69597C14.9605 5.49094 14.9605 5.15853 14.7555 4.95351L12.7721 2.97017C12.5671 2.76515 12.2347 2.76515 12.0297 2.97017L10.0463 4.95351C9.84132 5.15853 9.84132 5.49094 10.0463 5.69597C10.2514 5.901 10.5838 5.901 10.7888 5.69597L11.8758 4.60901V12.6581C11.8758 12.9481 12.1108 13.1831 12.4008 13.1831Z","M1.28069 4.85447C0.842195 4.33439 1.21191 3.5391 1.89218 3.5391H8.59333C9.2736 3.5391 9.64331 4.33439 9.20482 4.85447L6.51052 8.0501V11.6601C6.51052 12.2245 5.94174 12.6114 5.41683 12.404L4.48092 12.0343C4.1756 11.9136 3.97498 11.6187 3.97498 11.2904V8.0501L1.28069 4.85447Z"],sn=["M12.4008 2.81641C12.6907 2.81641 12.9258 3.05146 12.9258 3.34141V11.3908L14.013 10.3036C14.218 10.0986 14.5505 10.0986 14.7555 10.3036C14.9605 10.5086 14.9605 10.841 14.7555 11.046L12.7721 13.0294C12.5671 13.2344 12.2347 13.2344 12.0297 13.0294L10.0463 11.046C9.84132 10.841 9.84132 10.5086 10.0463 10.3036C10.2514 10.0986 10.5838 10.0986 10.7888 10.3036L11.8758 11.3905V3.34141C11.8758 3.05146 12.1108 2.81641 12.4008 2.81641Z","M1.28069 4.85444C0.842195 4.33435 1.21191 3.53906 1.89218 3.53906H8.59333C9.2736 3.53906 9.64331 4.33435 9.20482 4.85443L6.51052 8.05006V11.6601C6.51052 12.2245 5.94174 12.6113 5.41683 12.404L4.48092 12.0342C4.1756 11.9136 3.97498 11.6186 3.97498 11.2903V8.05006L1.28069 4.85444Z"],cn=["M11.9003 13.7046C11.9003 13.9969 11.6633 14.2339 11.371 14.2339C11.0787 14.2339 10.8417 13.9969 10.8417 13.7046V3.57272L9.74577 4.66862C9.53906 4.87534 9.20391 4.87534 8.9972 4.66862C8.79048 4.46191 8.79048 4.12676 8.9972 3.92005L10.9969 1.92039C11.2036 1.71368 11.5387 1.71368 11.7454 1.92039L13.7451 3.92005C13.9518 4.12676 13.9518 4.46191 13.7451 4.66862C13.5384 4.87534 13.2032 4.87534 12.9965 4.66862L11.9003 3.57243V13.7046Z","M2.69779 10.0113C2.40546 10.0113 2.16847 9.77429 2.16847 9.48196C2.16847 9.18962 2.40546 8.95264 2.69779 8.95264H6.67804C6.89213 8.95264 7.08514 9.0816 7.16707 9.2794C7.249 9.47719 7.20371 9.70486 7.05233 9.85624L3.97569 12.9329H6.67804C6.97038 12.9329 7.20736 13.1699 7.20736 13.4622C7.20736 13.7545 6.97038 13.9915 6.67804 13.9915H2.69779C2.4837 13.9915 2.29069 13.8626 2.20876 13.6648C2.12684 13.467 2.17212 13.2393 2.32351 13.0879L5.40015 10.0113H2.69779Z","M5.51638 2.58693C5.23363 1.81542 4.14248 1.81543 3.85973 2.58693L2.13245 7.29995C2.03185 7.57443 2.17281 7.87849 2.4473 7.97909C2.72178 8.07969 3.02584 7.93872 3.12644 7.66424L3.64346 6.25351L3.64504 6.25351H5.73266L6.24968 7.66424C6.35027 7.93872 6.65433 8.07969 6.92882 7.97909C7.2033 7.87849 7.34426 7.57443 7.24367 7.29995L5.51638 2.58693ZM5.34467 5.19487L4.68806 3.40325L4.03144 5.19487H5.34467Z"],un=["M11.9003 2.29495C11.9003 2.00261 11.6633 1.76562 11.371 1.76562C11.0787 1.76562 10.8417 2.00261 10.8417 2.29495V12.4268L9.74577 11.3309C9.53906 11.1242 9.20391 11.1242 8.9972 11.3309C8.79048 11.5376 8.79048 11.8727 8.9972 12.0795L10.9969 14.0791C11.2036 14.2858 11.5387 14.2858 11.7454 14.0791L13.7451 12.0795C13.9518 11.8727 13.9518 11.5376 13.7451 11.3309C13.5384 11.1242 13.2032 11.1242 12.9965 11.3309L11.9003 12.4271V2.29495Z","M2.69792 10.0113C2.40558 10.0113 2.16859 9.77429 2.16859 9.48196C2.16859 9.18962 2.40558 8.95264 2.69792 8.95264H6.67816C6.89225 8.95264 7.08526 9.0816 7.16719 9.2794C7.24912 9.47719 7.20384 9.70486 7.05245 9.85624L3.97581 12.9329H6.67816C6.9705 12.9329 7.20749 13.1699 7.20749 13.4622C7.20749 13.7545 6.9705 13.9915 6.67816 13.9915H2.69792C2.48383 13.9915 2.29082 13.8626 2.20889 13.6648C2.12696 13.467 2.17224 13.2393 2.32363 13.0879L5.40027 10.0113H2.69792Z","M5.5165 2.58693C5.23375 1.81542 4.1426 1.81543 3.85985 2.58693L2.13257 7.29995C2.03197 7.57443 2.17294 7.8785 2.44742 7.97909C2.7219 8.07969 3.02596 7.93872 3.12656 7.66424L3.64358 6.25351L3.64516 6.25351H5.73278L6.2498 7.66424C6.35039 7.93872 6.65446 8.07969 6.92894 7.97909C7.20342 7.8785 7.34438 7.57443 7.24379 7.29995L5.5165 2.58693ZM5.34479 5.19487L4.68818 3.40325L4.03156 5.19487H5.34479Z"];var dn=Object.getOwnPropertyDescriptor,pn=(r,e,t,n)=>{for(var i=n>1?void 0:n?dn(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},Qe=(r,e)=>(t,n)=>e(t,n,r);const ne=16,Se=1;let Ge=class extends Y.Shape{constructor(e,t,n,i,o){super(e,t);A(this,"_cellWidth",0);A(this,"_cellHeight",0);A(this,"_filterParams");A(this,"_hovered",!1);this._contextService=n,this._commandService=i,this._themeService=o,this.setShapeProps(t),this.onPointerDown$.subscribeEvent(c=>this.onPointerDown(c)),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,i=ne-n,o=ne-t;e.save();const c=new Path2D;c.rect(i,o,n,t),e.clip(c);const{buttonState:u}=this._filterParams,d=this._themeService.getColorFromTheme("primary.600"),m=this._hovered?this._themeService.getColorFromTheme("gray.50"):"rgba(255, 255, 255, 1.0)";let v;switch(u){case a.SheetsTableButtonStateEnum.FilteredSortNone:v=on;break;case a.SheetsTableButtonStateEnum.FilteredSortAsc:v=ln;break;case a.SheetsTableButtonStateEnum.FilteredSortDesc:v=sn;break;case a.SheetsTableButtonStateEnum.FilterNoneSortNone:break;case a.SheetsTableButtonStateEnum.FilterNoneSortAsc:v=cn;break;case a.SheetsTableButtonStateEnum.FilterNoneSortDesc:v=un;break}v?ht.drawIconByPath(e,v,d,m):u!==void 0&&ht.drawNoSetting(e,ne,d,m),e.restore()}onPointerDown(e){if(e.button===2)return;const{row:t,col:n,unitId:i,subUnitId:o,tableId:c}=this._filterParams;this._contextService.getContextValue(ae)||!this._commandService.hasCommand(qe.id)||setTimeout(()=>{const d={row:t,col:n,unitId:i,subUnitId:o,tableId:c};this._commandService.executeCommand(qe.id,d)},200)}onPointerEnter(){this._hovered=!0,this.makeDirty(!0)}onPointerLeave(){this._hovered=!1,this.makeDirty(!0)}};Ge=pn([Qe(2,s.IContextService),Qe(3,s.ICommandService),Qe(4,s.Inject(s.ThemeService))],Ge);var vn=Object.getOwnPropertyDescriptor,mn=(r,e,t,n)=>{for(var i=n>1?void 0:n?vn(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},Te=(r,e)=>(t,n)=>e(t,n,r);const hn=5e3,bn=(r,e,t,n)=>{switch(n){case s.VerticalAlign.TOP:return r+Se;case s.VerticalAlign.MIDDLE:return r+Math.max(0,(t-ne)/2);case s.VerticalAlign.BOTTOM:default:return e-ne-Se}};let Xe=class extends s.RxDisposable{constructor(e,t,n,i,o,c){super();A(this,"_buttonRenderDisposable",null);A(this,"_tableFilterButtonShapes",[]);this._context=e,this._injector=t,this._sheetSkeletonManagerService=n,this._sheetInterceptorService=i,this._tableManager=o,this._commandService=c,this._initRenderer(),this._initCommandExecuted()}dispose(){super.dispose(),this._disposeRendering()}_initRenderer(){const e=this._tableManager;this._sheetSkeletonManagerService.currentSkeleton$.pipe(x.switchMap(t=>{var u;if(!t)return x.of(null);const{unit:n,unitId:i}=this._context,o=((u=n.getActiveSheet())==null?void 0:u.getSheetId())||"",c=()=>({unitId:i,worksheetId:o,tableFilterRanges:this._tableManager.getSheetFilterRangeWithState(n.getUnitId(),o),skeleton:t.skeleton});return x.merge(e.tableAdd$,e.tableNameChanged$,e.tableRangeChanged$,e.tableThemeChanged$,e.tableDelete$,e.tableFilterChanged$).pipe(x.map(()=>c()),x.startWith(c()))}),x.takeUntil(this.dispose$)).subscribe(t=>{this._disposeRendering(),!(!t||!t.tableFilterRanges)&&this._renderButtons(t)})}_initCommandExecuted(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{var u;if(e.id!==O.SetVerticalTextAlignCommand.id)return;const{unit:t,unitId:n}=this._context,i=((u=t.getActiveSheet())==null?void 0:u.getSheetId())||"",o=this._sheetSkeletonManagerService.getCurrentSkeleton();if(!o)return;const c={unitId:n,worksheetId:i,tableFilterRanges:this._tableManager.getSheetFilterRangeWithState(t.getUnitId(),i),skeleton:o};this._disposeRendering(),!(!c||!c.tableFilterRanges)&&this._renderButtons(c)}))}_renderButtons(e){const{tableFilterRanges:t,unitId:n,skeleton:i,worksheetId:o}=e,{unit:c,scene:u}=this._context,d=c.getSheetBySheetId(o);if(d){for(const{range:m,states:v,tableId:b}of t){const{startRow:y,startColumn:w,endColumn:I}=m;this._interceptCellContent(n,o,m);for(let k=w;k<=I;k++){const E=`sheets-table-filter-button-${y}-${k}`,P=Q.getCoordByCell(y,k,u,i),D=d.getCellStyle(y,k),V=(D==null?void 0:D.vt)||s.VerticalAlign.BOTTOM,{startX:N,startY:g,endX:L,endY:M}=P,f=L-N,F=M-g;if(F<=Se||f<=Se)continue;const B=v[k-w],Z=L-ne-Se,H=bn(g,M,F,V),K={left:Z,top:H,height:ne,width:ne,zIndex:hn,cellHeight:F,cellWidth:f,filterParams:{unitId:n,subUnitId:o,row:y,col:k,buttonState:B,tableId:b}},le=this._injector.createInstance(Ge,E,K);this._tableFilterButtonShapes.push(le)}}u.addObjects(this._tableFilterButtonShapes),u.makeDirty()}}_interceptCellContent(e,t,n){const{startRow:i,startColumn:o,endColumn:c}=n;this._buttonRenderDisposable=this._sheetInterceptorService.intercept(O.INTERCEPTOR_POINT.CELL_CONTENT,{effect:s.InterceptorEffectEnum.Style,handler:(u,d,m)=>{const{row:v,col:b,unitId:y,subUnitId:w}=d;return y!==e||w!==t||v!==i||b<o||b>c||((!u||u===d.rawData)&&(u={...d.rawData}),u.fontRenderExtension={...u==null?void 0:u.fontRenderExtension,rightOffset:ne}),m(u)},priority:10})}_disposeRendering(){var e;this._tableFilterButtonShapes.forEach(t=>t.dispose()),(e=this._buttonRenderDisposable)==null||e.dispose(),this._buttonRenderDisposable=null,this._tableFilterButtonShapes=[]}};Xe=mn([Te(1,s.Inject(s.Injector)),Te(2,s.Inject(Q.SheetSkeletonManagerService)),Te(3,s.Inject(O.SheetInterceptorService)),Te(4,s.Inject(a.TableManager)),Te(5,s.ICommandService)],Xe);const gn=r=>{const{unitId:e,subUnitId:t,range:n,onCancel:i,onConfirm:o,tableId:c}=r,u=h.useDependency(a.TableManager),[d,m]=T.useState(n),[v,b]=T.useState(""),y=h.useDependency(s.LocaleService),w=h.useDependency(s.IUniverInstanceService);return l.jsxs(l.Fragment,{children:[l.jsx(yt.RangeSelector,{maxRangeCount:1,unitId:e,subUnitId:t,initialValue:Ae.serializeRange(n),onChange:(I,k)=>{const E=Ae.serializeRange(n),P=Ae.deserializeRangeWithSheet(k).range,D=O.getSheetCommandTarget(w,{unitId:e,subUnitId:t});if(!D)return;if(D.worksheet.getMergeData().some(B=>s.Rectangle.intersects(P,B))){b(y.t("sheets-table.tableRangeWithMergeError"));return}if(u.getTablesBySubunitId(e,t).some(B=>{if(B.getId()===c)return!1;const Z=B.getRange();return s.Rectangle.intersects(P,Z)})){b(y.t("sheets-table.tableRangeWithOtherTableError"));return}const{startRow:M,endRow:f}=P;if(M===f){b(y.t("sheets-table.tableRangeSingleRowError"));return}if(E!==k){if(c){const B=u.getTableById(e,c);if(B){const Z=B.getRange();if(s.Rectangle.intersects(P,Z)&&Z.startRow===P.startRow){m(P),b(""),o({unitId:e,subUnitId:t,range:P});return}else{b(y.t("sheets-table.updateError"));return}}}m(P),b("")}},supportAcrossSheet:!1}),v&&l.jsx("div",{className:"univer-mt-1 univer-text-xs univer-text-red-500",children:v}),l.jsxs("div",{className:"univer-mt-4 univer-flex univer-justify-end",children:[l.jsx(p.Button,{onClick:i,children:y.t("sheets-table.cancel")}),l.jsx(p.Button,{variant:"primary",onClick:()=>{v||o({unitId:e,subUnitId:t,range:d})},className:"univer-ml-2",children:y.t("sheets-table.confirm")})]})]})},Cn=r=>{var R,U,q,Je,Fe,Ve,et,He,tt,ye,Ee,Ie;const{unitId:e,subUnitId:t,tableId:n}=r,i=h.useDependency(s.ICommandService),o=h.useDependency(s.LocaleService),c=h.useDependency(a.TableManager),u=c.getTableById(e,n),d=h.useDependency(O.SheetRangeThemeModel),m=h.useDependency(ue),v=h.useObservable(d.rangeThemeMapChange$),b=h.useObservable(m.refreshTable$),y=h.useDependency(s.ErrorService),[,w]=T.useState(Math.random()),I=h.useObservable(c.tableThemeChanged$,{theme:u==null?void 0:u.getTableStyleId(),oldTheme:u==null?void 0:u.getTableStyleId(),unitId:e,subUnitId:t,tableId:n}),k=d.getRegisteredRangeThemes().filter(S=>S==null?void 0:S.startsWith(wt)),E=d.getALLRegisteredTheme(e).filter(S=>S==null?void 0:S.startsWith(je)),P=u==null?void 0:u.getTableStyleId(),D=E.find(S=>S===P),V=D||E[0],N=d.getCustomRangeThemeStyle(e,V),g=(q=(U=(R=N==null?void 0:N.getHeaderRowStyle())==null?void 0:R.bg)==null?void 0:U.rgb)!=null?q:ie,L=(Ve=(Fe=(Je=N==null?void 0:N.getFirstRowStyle())==null?void 0:Je.bg)==null?void 0:Fe.rgb)!=null?Ve:ie,M=(tt=(He=(et=N==null?void 0:N.getSecondRowStyle())==null?void 0:et.bg)==null?void 0:He.rgb)!=null?tt:ie,f=(Ie=(Ee=(ye=N==null?void 0:N.getLastRowStyle())==null?void 0:ye.bg)==null?void 0:Ee.rgb)!=null?Ie:ie,[F,B]=T.useState(null),Z=S=>{i.executeCommand(a.SetSheetTableCommand.id,{unitId:e,tableId:n,theme:S})},H=()=>{if(E.length>=11){y.emit(o.t("sheets-table.customTooMore"));return}const S=E[E.length-1];let _=`${je}1`;if(S){const J=Number(S.split("-")[2]);_=`${je}${J+1}`}const z=new O.RangeThemeStyle(_,{...a.customEmptyThemeWithBorderStyle});i.executeCommand(a.AddTableThemeCommand.id,{unitId:e,tableId:n,themeStyle:z})},K=(S,_)=>{i.executeCommand(O.SetRangeThemeMutation.id,{unitId:e,subUnitId:t,styleName:S,style:_})},le=S=>{i.executeCommand(a.RemoveTableThemeCommand.id,{unitId:e,tableId:n,themeName:S})};if(T.useEffect(()=>{w(Math.random())},[v,b]),!u)return null;const se=new s.ColorKit(g).isDark(),de=new s.ColorKit(L).isDark(),ce=new s.ColorKit(M).isDark(),C=new s.ColorKit(f).isDark();return l.jsxs("div",{children:[l.jsx("h5",{children:o.t("sheets-table.defaultStyle")}),l.jsx("div",{className:"univer-flex univer-gap-2",children:k.map(S=>{var pe,ve,_e,we,De,Me,Ne,xe;const _=d.getDefaultRangeThemeStyle(S),z=((ve=(pe=_==null?void 0:_.getHeaderRowStyle())==null?void 0:pe.bg)==null?void 0:ve.rgb)||ie,J=((we=(_e=_==null?void 0:_.getFirstRowStyle())==null?void 0:_e.bg)==null?void 0:we.rgb)||ie,re=((Me=(De=_==null?void 0:_.getSecondRowStyle())==null?void 0:De.bg)==null?void 0:Me.rgb)||ie,W=((xe=(Ne=_==null?void 0:_.getLastRowStyle())==null?void 0:Ne.bg)==null?void 0:xe.rgb)||ie;return l.jsxs("div",{className:p.clsx("univer-h-10 univer-w-8 univer-cursor-pointer univer-border univer-border-solid univer-border-gray-200 univer-p-px [&>div]:univer-box-border [&>div]:univer-h-2.5",{"univer-border-blue-500":S===I.theme}),onClick:()=>Z(S),children:[l.jsx("div",{style:{background:z,border:`${G}`}}),l.jsx("div",{style:{background:J,border:`${G}`}}),l.jsx("div",{style:{background:re,border:`${G}`}}),l.jsx("div",{style:{background:W,border:`${G}`}})]},S)})}),l.jsx("h5",{children:o.t("sheets-table.customStyle")}),l.jsxs("div",{className:p.clsx("univer-w-full univer-rounded-sm",p.borderClassName),children:[l.jsxs("div",{className:"univer-flex univer-flex-wrap univer-gap-2 univer-p-2",children:[l.jsx("div",{className:p.clsx("univer-h-10 univer-w-8 univer-cursor-pointer univer-p-px univer-text-center univer-leading-10",p.borderClassName),onClick:H,children:"+"}),E.map(S=>{var pe,ve,_e,we,De,Me,Ne,xe;const _=d.getCustomRangeThemeStyle(e,S),z=(ve=(pe=_==null?void 0:_.getHeaderRowStyle())==null?void 0:pe.bg)==null?void 0:ve.rgb,J=(we=(_e=_==null?void 0:_.getFirstRowStyle())==null?void 0:_e.bg)==null?void 0:we.rgb,re=(Me=(De=_==null?void 0:_.getSecondRowStyle())==null?void 0:De.bg)==null?void 0:Me.rgb,W=(xe=(Ne=_==null?void 0:_.getLastRowStyle())==null?void 0:Ne.bg)==null?void 0:xe.rgb;return l.jsxs("div",{className:p.clsx("univer-relative univer-h-10 univer-w-8 univer-cursor-pointer univer-border univer-border-solid univer-border-gray-200 univer-p-px",{"univer-border-blue-500":S===I.theme}),onClick:()=>Z(S),onMouseEnter:()=>B(S),onMouseLeave:()=>B(null),children:[l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:z!=null?z:G,border:`${z?G:Le}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:J!=null?J:G,border:`${J?G:Le}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:re!=null?re:G,border:`${re?G:Le}`}}),l.jsx("div",{className:"univer-box-border univer-h-2.5",style:{background:W!=null?W:G,border:`${W?G:Le}`}}),l.jsx("div",{className:"univer-absolute univer-right-[-3px] univer-top-[-3px] univer-h-3 univer-w-3 univer-rounded-md univer-bg-gray-200 univer-text-center univer-text-xs univer-leading-[10px]",style:{display:F===S?"block":"none"},onClick:Rn=>{Rn.stopPropagation(),le(S)},children:"x"})]},S)})]}),D&&l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"univer-h-px univer-w-full univer-bg-gray-200"}),l.jsxs("div",{className:"univer-flex univer-flex-col univer-gap-2 univer-p-2",children:[l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":se,"univer-text-gray-900":!se}),style:{background:g},children:o.t("sheets-table.header")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:g,onChange:S=>{const _=a.processStyleWithBorderStyle("headerRowStyle",{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}});K(u.getTableStyleId(),{headerRowStyle:_})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName,{"univer-text-white":se,"univer-text-gray-900":!se}),style:{background:g}}),l.jsx(Ce,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":de,"univer-text-gray-900":!de}),style:{background:L},children:o.t("sheets-table.firstLine")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:L,onChange:S=>{K(u.getTableStyleId(),{firstRowStyle:{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}}})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:L}}),l.jsx(Ce,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":ce,"univer-text-gray-900":!ce}),style:{background:M},children:o.t("sheets-table.secondLine")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:M,onChange:S=>K(u.getTableStyleId(),{secondRowStyle:{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}}})})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:M}}),l.jsx(Ce,{className:"univer-h-2 univer-w-2"})]})})]}),l.jsxs("div",{className:"univer-flex univer-h-9 univer-gap-2",children:[l.jsx("div",{className:p.clsx("univer-box-border univer-h-full univer-w-52 univer-rounded-sm univer-text-center univer-leading-9",p.borderClassName,{"univer-text-white":C,"univer-text-gray-900":!C}),style:{background:f},children:o.t("sheets-table.footer")}),l.jsx(p.Dropdown,{overlay:l.jsx("div",{className:"univer-p-2",children:l.jsx(p.ColorPicker,{value:f,onChange:S=>{const _=a.processStyleWithBorderStyle("lastRowStyle",{bg:{rgb:S},cl:{rgb:new s.ColorKit(S).isDark()?"#fff":"#000"}});K(u.getTableStyleId(),{lastRowStyle:_})}})}),children:l.jsxs("div",{className:p.clsx("univer-flex univer-cursor-pointer univer-items-center univer-gap-2 univer-rounded-sm univer-bg-white univer-p-1",p.borderClassName),children:[l.jsx("div",{className:p.clsx("univer-h-4 univer-w-4 univer-rounded-lg univer-bg-gray-400",p.borderClassName),style:{background:f}}),l.jsx(Ce,{className:"univer-h-2 univer-w-2"})]})})]})]})]})]})]})},bt="sheet.table.context-insert_menu-id",gt="sheet.table.context-remove_menu-id";function fn(r){return{id:Ye.id,type:h.MenuItemType.BUTTON,icon:nt,tooltip:"sheets-table.title",title:"sheets-table.title",hidden$:h.getMenuHiddenObservable(r,s.UniverInstanceType.UNIVER_SHEET),disabled$:Q.getCurrentRangeDisable$(r,{},!0)}}function Sn(r){return{id:bt,type:h.MenuItemType.SUBITEMS,icon:"InsertDoubleIcon",title:"sheets-table.insert.main",hidden$:Ct(r)}}function Tn(r){return{id:gt,type:h.MenuItemType.SUBITEMS,icon:"ReduceDoubleIcon",title:"sheets-table.remove.main",hidden$:Ct(r)}}function yn(r){return{id:a.SheetTableInsertRowCommand.id,type:h.MenuItemType.BUTTON,title:"sheets-table.insert.row",hidden$:ft(r)}}function En(r){return{id:a.SheetTableInsertColCommand.id,title:"sheets-table.insert.col",type:h.MenuItemType.BUTTON}}function In(r){return{id:a.SheetTableRemoveRowCommand.id,type:h.MenuItemType.BUTTON,title:"sheets-table.remove.row",hidden$:ft(r)}}function _n(r){return{id:a.SheetTableRemoveColCommand.id,title:"sheets-table.remove.col",type:h.MenuItemType.BUTTON}}function Ct(r){const e=r.get(O.SheetsSelectionsService);return r.get(s.IUniverInstanceService).getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_SHEET).pipe(x.switchMap(i=>i?i.activeSheet$.pipe(x.switchMap(o=>o?e.selectionMoveEnd$.pipe(x.switchMap(c=>{if(!c.length||c.length>1)return x.of(!0);const d=c[0].range,v=r.get(a.SheetsTableController).getContainerTableWithRange(i.getUnitId(),o.getSheetId(),d);return x.of(!v)})):x.of(!0))):x.of(!0)))}function ft(r){const e=r.get(O.SheetsSelectionsService);return r.get(s.IUniverInstanceService).getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_SHEET).pipe(x.switchMap(i=>i?i.activeSheet$.pipe(x.switchMap(o=>o?e.selectionMoveEnd$.pipe(x.switchMap(c=>{if(!c.length||c.length>1)return x.of(!0);const d=c[0].range,v=r.get(a.SheetsTableController).getContainerTableWithRange(i.getUnitId(),o.getSheetId(),d);if(!v)return x.of(!0);const b=v.getRange();return d.startRow===b.startRow?x.of(!0):x.of(!1)})):x.of(!0))):x.of(!0)))}const wn={[h.RibbonDataGroup.ORGANIZATION]:{[Ye.id]:{order:0,menuItemFactory:fn}},[h.ContextMenuPosition.MAIN_AREA]:{[h.ContextMenuGroup.LAYOUT]:{[bt]:{order:5,menuItemFactory:Sn,[a.SheetTableInsertRowCommand.id]:{order:1,menuItemFactory:yn},[a.SheetTableInsertColCommand.id]:{order:2,menuItemFactory:En}},[gt]:{order:6,menuItemFactory:Tn,[a.SheetTableRemoveRowCommand.id]:{order:1,menuItemFactory:In},[a.SheetTableRemoveColCommand.id]:{order:2,menuItemFactory:_n}}}}};var Dn=Object.getOwnPropertyDescriptor,Mn=(r,e,t,n)=>{for(var i=n>1?void 0:n?Dn(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},St=(r,e)=>(t,n)=>e(t,n,r);let Oe=class extends s.Disposable{constructor(r,e){super(),this._componentManager=r,this._menuManagerService=e,this._initComponents(),this._initMenu()}_initComponents(){[[nt,dt],[me,gn],[rt,Cn]].forEach(([r,e])=>{this.disposeWithMe(this._componentManager.register(r,e))})}_initMenu(){this._menuManagerService.mergeMenu(wn)}};Oe=Mn([St(0,s.Inject(h.ComponentManager)),St(1,s.Inject(h.IMenuManagerService))],Oe);var Nn=Object.getOwnPropertyDescriptor,xn=(r,e,t,n)=>{for(var i=n>1?void 0:n?Nn(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},Pe=(r,e)=>(t,n)=>e(t,n,r);let Ke=class extends s.RxDisposable{constructor(r,e,t,n,i){super(),this._context=r,this._injector=e,this._sheetSkeletonManagerService=t,this._tableManager=n,this._sheetTableThemeUIController=i,this._initListener()}_dirtySkeleton(){var e;(e=this._context.mainComponent)==null||e.makeDirty();const r=this._sheetSkeletonManagerService.getCurrentParam();if(r){const t={...r,dirty:!0};this._sheetSkeletonManagerService.reCalculate(t)}}_initListener(){const r=this._tableManager,e=this._dirtySkeleton.bind(this);this.disposeWithMe(x.merge(r.tableAdd$,r.tableDelete$,r.tableNameChanged$,r.tableRangeChanged$,r.tableThemeChanged$,r.tableFilterChanged$,r.tableInitStatus$,this._sheetTableThemeUIController.refreshTable$).subscribe(e))}};Ke=xn([Pe(1,s.Inject(s.Injector)),Pe(2,s.Inject(Q.SheetSkeletonManagerService)),Pe(3,s.Inject(a.TableManager)),Pe(4,s.Inject(ue))],Ke);var Ln=Object.getOwnPropertyDescriptor,$n=(r,e,t,n)=>{for(var i=n>1?void 0:n?Ln(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},ze=(r,e)=>(t,n)=>e(t,n,r);let Be=class extends s.Disposable{constructor(r,e,t){super(),this._sheetInterceptorService=r,this._univerInstanceService=e,this._tableManager=t,this._initSelectionChange()}_initSelectionChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:r=>{if(r.id===Q.SelectAllCommand.id){const e=O.getSheetCommandTarget(this._univerInstanceService);if(!e)return{redos:[],undos:[]};const t=r.params,{range:n}=t,{unitId:i,subUnitId:o,worksheet:c}=e,d=this._tableManager.getTablesBySubunitId(i,o).find(m=>{const v=m.getRange();return s.Rectangle.contains(v,n)});if(d){const m=d.getRange(),v={...m,startRow:m.startRow+1};return s.Rectangle.equals(m,n)?{undos:[],redos:[]}:s.Rectangle.equals(v,n)?{undos:[],redos:[{id:O.SetSelectionsOperation.id,params:{unitId:i,subUnitId:o,selections:[{range:m,primary:O.getPrimaryForRange(m,c)}]}}]}:{undos:[],redos:[{id:O.SetSelectionsOperation.id,params:{unitId:i,subUnitId:o,selections:[{range:v,primary:O.getPrimaryForRange(v,c)}]}}]}}}return{redos:[],undos:[]}}}))}};Be=$n([ze(0,s.Inject(O.SheetInterceptorService)),ze(1,s.Inject(s.IUniverInstanceService)),ze(2,s.Inject(a.TableManager))],Be);var kn=Object.defineProperty,On=Object.getOwnPropertyDescriptor,Pn=(r,e,t)=>e in r?kn(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Bn=(r,e,t,n)=>{for(var i=n>1?void 0:n?On(e,t):e,o=r.length-1,c;o>=0;o--)(c=r[o])&&(i=c(i)||i);return i},Re=(r,e)=>(t,n)=>e(t,n,r),Tt=(r,e,t)=>Pn(r,typeof e!="symbol"?e+"":e,t);$.UniverSheetsTableUIPlugin=class extends s.Plugin{constructor(e=mt,t,n,i,o){super(),this._config=e,this._injector=t,this._commandService=n,this._configService=i,this._renderManagerService=o;const{menu:c,...u}=s.merge({},mt,this._config);c&&this._configService.setConfig("menu",c,{merge:!0}),this._configService.setConfig(vt,u),this._initRegisterCommand()}onStarting(){s.registerDependencies(this._injector,[[be],[he],[Oe],[ue],[Be]])}onReady(){s.touchDependencies(this._injector,[[be],[he],[Oe],[ue],[Be]])}onRendered(){this._registerRenderModules()}_registerRenderModules(){const e=[[Xe],[Ke]];this._config.hideAnchor!==!0&&e.push([ke]),e.forEach(t=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(s.UniverInstanceType.UNIVER_SHEET,t))})}_initRegisterCommand(){[qe,Ye].forEach(e=>this._commandService.registerCommand(e))}},Tt($.UniverSheetsTableUIPlugin,"pluginName",Et),Tt($.UniverSheetsTableUIPlugin,"type",s.UniverInstanceType.UNIVER_SHEET),$.UniverSheetsTableUIPlugin=Bn([s.DependentOn(a.UniverSheetsTablePlugin),Re(1,s.Inject(s.Injector)),Re(2,s.Inject(s.ICommandService)),Re(3,s.IConfigService),Re(4,Y.IRenderManagerService)],$.UniverSheetsTableUIPlugin),Object.defineProperty($,Symbol.toStringTag,{value:"Module"})});
11
11
 
12
12
 
13
13
  // index
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/preset-sheets-table",
3
- "version": "0.10.3",
3
+ "version": "0.10.4",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "author": "DreamNum Co., Ltd. <developer@univer.ai>",
@@ -58,16 +58,16 @@
58
58
  "rxjs": ">=7.0.0"
59
59
  },
60
60
  "dependencies": {
61
- "@univerjs/sheets-table": "0.10.3",
62
- "@univerjs/sheets-table-ui": "0.10.3"
61
+ "@univerjs/sheets-table": "0.10.4",
62
+ "@univerjs/sheets-table-ui": "0.10.4"
63
63
  },
64
64
  "devDependencies": {
65
- "@univerjs/core": "0.10.3",
65
+ "@univerjs/core": "0.10.4",
66
66
  "react": "18.3.1",
67
67
  "react-dom": "18.3.1",
68
68
  "rxjs": "7.8.2",
69
69
  "typescript": "^5.8.3",
70
- "@univerjs-infra/shared": "0.10.3"
70
+ "@univerjs-infra/shared": "0.10.4"
71
71
  },
72
72
  "scripts": {
73
73
  "prebuild:preset": "tsx prepare.ts",