@univerjs/sheets-numfmt 0.1.0-beta.4 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import './index.less';
16
17
  import type { FC } from 'react';
17
18
  import type { IBusinessComponentProps } from '../../base/types';
18
19
  export declare const isCurrencyPanel: (pattern: string) => boolean;
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import './index.less';
16
17
  import type { FC } from 'react';
17
18
  export interface ISheetNumfmtPanelProps {
18
19
  value: {
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import './index.less';
16
17
  import React from 'react';
17
18
  export declare const MoreNumfmtType: (props: {
18
19
  value?: string;
@@ -16,3 +16,4 @@
16
16
  export { type ISetNumfmtCommandParams, SetNumfmtCommand } from './commands/commands/set-numfmt.command';
17
17
  export { enUS, zhCN } from './locale';
18
18
  export { UniverSheetsNumfmtPlugin } from './numfmt-plugin';
19
+ export { getPatternPreview } from './utils/pattern';
@@ -13,39 +13,6 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- declare const _default: {
17
- sheet: {
18
- numfmt: {
19
- title: string;
20
- numfmtType: string;
21
- cancel: string;
22
- confirm: string;
23
- general: string;
24
- accounting: string;
25
- text: string;
26
- number: string;
27
- currency: string;
28
- date: string;
29
- time: string;
30
- thousandthPercentile: string;
31
- preview: string;
32
- dateTime: string;
33
- decimalLength: string;
34
- currencyType: string;
35
- moreFmt: string;
36
- financialValue: string;
37
- roundingCurrency: string;
38
- timeDuration: string;
39
- currencyDes: string;
40
- accountingDes: string;
41
- dateType: string;
42
- dateDes: string;
43
- negType: string;
44
- generalDes: string;
45
- thousandthPercentileDes: string;
46
- addDecimal: string;
47
- subtractDecimal: string;
48
- };
49
- };
50
- };
51
- export default _default;
16
+ import type zhCN from './zh-CN';
17
+ declare const locale: typeof zhCN;
18
+ export default locale;
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- declare const _default: {
16
+ declare const locale: {
17
17
  sheet: {
18
18
  numfmt: {
19
19
  title: string;
@@ -48,4 +48,4 @@ declare const _default: {
48
48
  };
49
49
  };
50
50
  };
51
- export default _default;
51
+ export default locale;
package/lib/umd/index.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(Z,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("@wendellhu/redi"),require("@univerjs/sheets-ui"),require("rxjs/operators"),require("@univerjs/engine-render"),require("@univerjs/ui"),require("rxjs"),require("react"),require("@univerjs/design"),require("@wendellhu/redi/react-bindings")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets","@wendellhu/redi","@univerjs/sheets-ui","rxjs/operators","@univerjs/engine-render","@univerjs/ui","rxjs","react","@univerjs/design","@wendellhu/redi/react-bindings"],p):(Z=typeof globalThis<"u"?globalThis:Z||self,p(Z.UniverSheetsNumfmt={},Z.UniverCore,Z.UniverSheets,Z["@wendellhu/redi"],Z.UniverSheetsUi,Z.rxjs.operators,Z.UniverEngineRender,Z.UniverUi,Z.rxjs,Z.React,Z.UniverDesign,Z["@wendellhu/redi/react-bindings"]))})(this,function(Z,p,v,T,re,ae,_t,ee,de,z,fe,ce){"use strict";var $r=Object.defineProperty;var Br=(Z,p,v)=>p in Z?$r(Z,p,{enumerable:!0,configurable:!0,writable:!0,value:v}):Z[p]=v;var we=(Z,p,v)=>(Br(Z,typeof p!="symbol"?p+"":p,v),v);var pt;const Me={id:"sheet.command.numfmt.set.numfmt",type:p.CommandType.COMMAND,handler:(e,t)=>{if(!t)return!1;const r=e.get(p.ICommandService),n=e.get(p.IUniverInstanceService),s=e.get(p.IUndoRedoService),l=n.getCurrentUniverSheetInstance(),u=l.getUnitId(),f=l.getActiveSheet().getSheetId(),y=t.values.filter(N=>!!N.pattern),h=t.values.filter(N=>!N.pattern),g=v.transformCellsToRange(u,f,y),C={unitId:u,subUnitId:f,ranges:h.map(N=>({startColumn:N.col,startRow:N.row,endColumn:N.col,endRow:N.row}))},w=[],P=[];if(y.length){Object.keys(g.values).forEach(V=>{const G=g.values[V];G.ranges=v.rangeMerge(G.ranges)}),w.push({id:v.SetNumfmtMutation.id,params:g});const N=v.factorySetNumfmtUndoMutation(e,g);P.push(...N)}if(h.length){C.ranges=v.rangeMerge(C.ranges),w.push({id:v.RemoveNumfmtMutation.id,params:C});const N=v.factoryRemoveNumfmtUndoMutation(e,C);P.push(...N)}const k=p.sequenceExecute(w,r).result;return k&&s.pushUndoRedo({unitID:u,undoMutations:P,redoMutations:w}),k}},Qt={sheet:{numfmt:{title:"数据格式",numfmtType:"格式类型",cancel:"取消",confirm:"确认",general:"常规",accounting:"会计",text:"文本",number:"数值",currency:"货币",date:"日期",time:"时间",thousandthPercentile:"千分位符",preview:"示例",dateTime:"日期时间",decimalLength:"小数位数",currencyType:"货币类型",moreFmt:"更多格式",financialValue:"财务数值",roundingCurrency:"货币取整",timeDuration:"持续时间",currencyDes:"货币格式用于表示一般货币数值。会计格式可以对一列数值进行小数点对齐",accountingDes:"会计数字格式可对一列数值进行货币符号和小数点对齐",dateType:"日期类型",dateDes:"日期格式将日期和时间系列数值品示为日期值。",negType:"负数类型",generalDes:"常规格式不包含任何特定的数字格式。",thousandthPercentileDes:"千分位符格式用于一般数字的表示。货币和会计格式则提供货币值计算的专用格式。",addDecimal:"增加小数位",subtractDecimal:"减少小数位"}}},yt={sheet:{numfmt:{title:"数据格式",numfmtType:"格式类型",cancel:"取消",confirm:"确认",general:"常规",accounting:"会计",text:"文本",number:"数值",currency:"货币",date:"日期",time:"时间",thousandthPercentile:"千分位符",preview:"示例",dateTime:"日期时间",decimalLength:"小数位数",currencyType:"货币类型",moreFmt:"更多格式",financialValue:"财务数值",roundingCurrency:"货币取整",timeDuration:"持续时间",currencyDes:"货币格式用于表示一般货币数值。会计格式可以对一列数值进行小数点对齐",accountingDes:"会计数字格式可对一列数值进行货币符号和小数点对齐",dateType:"日期类型",dateDes:"日期格式将日期和时间系列数值品示为日期值。",negType:"负数类型",generalDes:"常规格式不包含任何特定的数字格式。",thousandthPercentileDes:"千分位符格式用于一般数字的表示。货币和会计格式则提供货币值计算的专用格式。",addDecimal:"增加小数位",subtractDecimal:"减少小数位"}}},Ee="SHEET_NUMFMT_PLUGIN",He=e=>{const t=e.filter(l=>l.id===v.RemoveNumfmtMutation.id).map(l=>l.params),r=e.filter(l=>l.id===v.SetNumfmtMutation.id).map(l=>l.params),n=[];if(t[0]){const l=t.reduce((u,m)=>(u.ranges.push(...m.ranges),u),{ranges:[],unitId:t[0].unitId,subUnitId:t[0].subUnitId});l.ranges=v.rangeMerge(l.ranges),n.push({id:v.RemoveNumfmtMutation.id,params:l})}const s=(l,u)=>{const m=Object.keys(l),f=m.findIndex(y=>{const h=l[y];return p.Tools.diffValue(h,u)});return m[f]};if(r[0]){const l=r.reduce((u,m)=>(Object.keys(m.values).forEach(f=>{const y=m.values[f],h=m.refMap[f],g=s(u.refMap,h);if(g)u.values[g].ranges.push(...y.ranges);else{const C=Math.max(...Object.keys(u.refMap).map(Number),0)+1;u.values[C]={ranges:y.ranges},u.refMap[C]=h}}),u),{values:{},refMap:{},unitId:r[0].unitId,subUnitId:r[0].subUnitId});Object.keys(l.values).forEach(u=>{const m=l.values[u];m.ranges=v.rangeMerge(m.ranges)}),n.push({id:v.SetNumfmtMutation.id,params:l})}return n};var Xt=Object.defineProperty,qt=Object.getOwnPropertyDescriptor,en=(e,t,r,n)=>{for(var s=n>1?void 0:n?qt(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&Xt(t,r,s),s},Ve=(e,t)=>(r,n)=>t(r,n,e);let Ye=class extends p.Disposable{constructor(e,t,r,n){super(),this._injector=e,this._univerInstanceService=t,this._numfmtService=r,this._autoFillService=n,this._initAutoFill()}_initAutoFill(){const e=()=>({redos:[],undos:[]}),t=(s,l,u)=>{const m=this._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),f=this._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),y={startRow:s.row,startColumn:s.col,endColumn:s.col,endRow:s.row},h={startRow:l.row,startColumn:l.col,endColumn:l.col,endRow:l.row},g=[];if(p.Range.foreach(u,(C,w)=>{const P=p.Rectangle.getPositionRange({startRow:C,startColumn:w,endColumn:w,endRow:C},y),k=this._numfmtService.getValue(m,f,P.startRow,P.startColumn);if(k){const N=p.Rectangle.getPositionRange({startRow:C,startColumn:w,endColumn:w,endRow:C},h);g.push({pattern:k.pattern,type:k.type,row:N.startRow,col:N.startColumn})}}),g.length){const C={id:v.SetNumfmtMutation.id,params:v.transformCellsToRange(m,f,g)},w=v.factorySetNumfmtUndoMutation(this._injector,C.params);return{redos:[C],undos:w}}return{redos:[],undos:[]}},r=(s,l)=>{const u=[],m=[],f={row:s.startRow,col:s.startColumn};return re.getAutoFillRepeatRange(s,l).forEach(h=>{const{undos:g,redos:C}=t(f,h.repeatStartCell,h.relativeRange);u.push(...g),m.push(...C)}),{undos:He(u),redos:He(m)}},n={id:Ee,onFillData:(s,l,u)=>{if(u===re.APPLY_TYPE.COPY||u===re.APPLY_TYPE.ONLY_FORMAT||u===re.APPLY_TYPE.SERIES){const{source:m,target:f}=s;return r(m,f)}return e()}};this.disposeWithMe(this._autoFillService.addHook(n))}};Ye=en([p.OnLifecycle(p.LifecycleStages.Rendered,Ye),Ve(0,T.Inject(T.Injector)),Ve(1,T.Inject(p.IUniverInstanceService)),Ve(2,T.Inject(v.INumfmtService)),Ve(3,T.Inject(re.IAutoFillService))],Ye);var tn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function nn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var St={exports:{}};(function(e,t){(function(r,n){e.exports=n()})(typeof self<"u"?self:tn,function(){return function(){var r={d:function(i,a){for(var o in a)r.o(a,o)&&!r.o(i,o)&&Object.defineProperty(i,o,{enumerable:!0,get:a[o]})},o:function(i,a){return Object.prototype.hasOwnProperty.call(i,a)}},n={};r.d(n,{default:function(){return Yr}});var s={1078:"af",1052:"sq",1118:"am",5121:"ar_DZ",15361:"ar_BH",3073:"ar_EG",2049:"ar_IQ",11265:"ar_JO",13313:"ar_KW",12289:"ar_LB",4097:"ar_LY",6145:"ar_MA",8193:"ar_OM",16385:"ar_QA",1025:"ar_SA",10241:"ar_SY",7169:"ar_TN",14337:"ar_AE",9217:"ar_YE",1067:"hy",1101:"as",2092:"az_AZ",1068:"az_AZ",1069:"eu",1059:"be",2117:"bn",1093:"bn_IN",5146:"bs",1026:"bg",1109:"my",1027:"ca",2052:"zh_CN",3076:"zh_HK",5124:"zh_MO",4100:"zh_SG",1028:"zh_TW",1050:"hr",1029:"cs",1030:"da",1125:"dv",2067:"nl_BE",1043:"nl_NL",1126:"bin",3081:"en_AU",10249:"en_BZ",4105:"en_CA",9225:"en_CB",2057:"en_GB",16393:"en_IN",6153:"en_IE",8201:"en_JM",5129:"en_NZ",13321:"en_PH",7177:"en_ZA",11273:"en_TT",1033:"en_US",12297:"en_ZW",1061:"et",1071:"mk",1080:"fo",1065:"fa",1124:"fil",1035:"fi",2060:"fr_BE",11276:"fr_CM",3084:"fr_CA",9228:"fr_CG",12300:"fr_CI",1036:"fr_FR",5132:"fr_LU",13324:"fr_ML",6156:"fr_MC",14348:"fr_MA",10252:"fr_SN",4108:"fr_CH",7180:"fr",1122:"fy_NL",2108:"gd_IE",1084:"gd",1110:"gl",1079:"ka",3079:"de_AT",1031:"de_DE",5127:"de_LI",4103:"de_LU",2055:"de_CH",1032:"el",1140:"gn",1095:"gu",1279:"en",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig_NG",1057:"id",1040:"it_IT",2064:"it_CH",1041:"ja",1099:"kn",1120:"ks",1087:"kk",1107:"km",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1142:"la",1062:"lv",1063:"lt",2110:"ms_BN",1086:"ms_MY",1100:"ml",1082:"mt",1112:"mni",1153:"mi",1102:"mr",1104:"mn",2128:"mn",1121:"ne",1044:"no_NO",2068:"no_NO",1096:"or",1045:"pl",1046:"pt_BR",2070:"pt_PT",1094:"pa",1047:"rm",2072:"ro_MO",1048:"ro_RO",1049:"ru",2073:"ru_MO",1083:"se",1103:"sa",3098:"sr_SP",2074:"sr_SP",1072:"st",1074:"tn",1113:"sd",1115:"si",1051:"sk",1060:"sl",1143:"so",1070:"sb",11274:"es_AR",16394:"es_BO",13322:"es_CL",9226:"es_CO",5130:"es_CR",7178:"es_DO",12298:"es_EC",17418:"es_SV",4106:"es_GT",18442:"es_HN",2058:"es_MX",19466:"es_NI",6154:"es_PA",15370:"es_PY",10250:"es_PE",20490:"es_PR",1034:"es_ES",14346:"es_UY",8202:"es_VE",1089:"sw",2077:"sv_FI",1053:"sv_SE",1114:"syc",1064:"tg",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1073:"ts",1055:"tr",1090:"tk",1058:"uk",1056:"ur",2115:"uz_UZ",1091:"uz_UZ",1075:"ve",1066:"vi",1106:"cy",1076:"xh",1085:"yi",1077:"zu"};const l=/^([a-z\d]+)(?:[_-]([a-z\d]+))?(?:\.([a-z\d]+))?(?:@([a-z\d]+))?$/i,u={},m={group:" ",decimal:".",positive:"+",negative:"-",percent:"%",exponent:"E",nan:"NaN",infinity:"∞",ampm:["AM","PM"],mmmm6:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"],mmm6:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],mmmm:["January","February","March","April","May","June","July","August","September","October","November","December"],mmm:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]};function f(i){const a=l.exec(i);if(!a)throw new SyntaxError("Malformed locale: ".concat(i));return{lang:a[1]+(a[2]?"_"+a[2]:""),language:a[1],territory:a[2]||"",codeset:a[3]||"",modifier:a[4]||""}}function y(i){if(typeof i=="number")return s[65535&i]||null;const a=parseInt(i,16);return isFinite(a)&&s[65535&a]?s[65535&a]||null:l.test(i)?i:null}function h(i){const a=y(i);let o=null;if(a){const d=f(a);o=u[d.lang]||u[d.language]||null}return o}function g(i){return Object.assign({},m,i)}function C(i,a){const o=typeof a=="object"?a:f(a);return u[o.lang]=g(i),o.language===o.lang||u[o.language]||(u[o.language]=g(i)),u[o.lang]}const w=g({group:","});function P(i,a){if(typeof i!="number")return i;if(i<0)return-P(-i,a);if(a){const o=10**(a||0)||1;return P(i*o,0)/o}return Math.round(i)}w.isDefault=!0,C({group:",",ampm:["上午","下午"],mmmm:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["周日","周一","周二","周三","周四","周五","周六"]},"zh_CN"),C({group:",",nan:"非數值",ampm:["上午","下午"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["週日","週一","週二","週三","週四","週五","週六"]},"zh_TW"),C({group:",",ampm:["午前","午後"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],ddd:["日","月","火","水","木","金","土"]},"ja"),C({group:",",ampm:["오전","오후"],mmmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],mmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dddd:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],ddd:["일","월","화","수","목","금","토"]},"ko"),C({group:",",ampm:["ก่อนเที่ยง","หลังเที่ยง"],mmmm:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],mmm:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],dddd:["วันอาทิตย์","วันจันทร์","วันอังคาร","วันพุธ","วันพฤหัสบดี","วันศุกร์","วันเสาร์"],ddd:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."]},"th"),C({decimal:",",ampm:["dop.","odp."],mmmm:["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince"],mmm:["led","úno","bře","dub","kvě","čvn","čvc","srp","zář","říj","lis","pro"],dddd:["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],ddd:["ne","po","út","st","čt","pá","so"]},"cs"),C({group:".",decimal:",",mmmm:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],mmm:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"da"),C({group:".",decimal:",",ampm:["a.m.","p.m."],mmmm:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],mmm:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],ddd:["zo","ma","di","wo","do","vr","za"]},"nl"),C({group:","},"en"),C({decimal:",",nan:"epäluku",ampm:["ap.","ip."],mmmm:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kesäkuuta","heinäkuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],mmm:["tammik.","helmik.","maalisk.","huhtik.","toukok.","kesäk.","heinäk.","elok.","syysk.","lokak.","marrask.","jouluk."],dddd:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],ddd:["su","ma","ti","ke","to","pe","la"]},"fi"),C({group:" ",decimal:",",mmmm:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],mmm:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dddd:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],ddd:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."]},"fr"),C({group:".",decimal:",",mmmm:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],mmm:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez."],dddd:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],ddd:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."]},"de"),C({group:".",decimal:",",ampm:["π.μ.","μ.μ."],mmmm:["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου"],mmm:["Ιαν","Φεβ","Μαρ","Απρ","Μαΐ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],dddd:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],ddd:["Κυρ","Δευ","Τρί","Τετ","Πέμ","Παρ","Σάβ"]},"el"),C({decimal:",",ampm:["de.","du."],mmmm:["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december"],mmm:["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec."],dddd:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],ddd:["V","H","K","Sze","Cs","P","Szo"]},"hu"),C({group:".",decimal:",",ampm:["f.h.","e.h."],mmmm:["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember"],mmm:["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des."],dddd:["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],ddd:["sun.","mán.","þri.","mið.","fim.","fös.","lau."]},"is"),C({group:".",decimal:",",mmmm:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],mmm:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],dddd:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],ddd:["Min","Sen","Sel","Rab","Kam","Jum","Sab"]},"id"),C({group:".",decimal:",",mmmm:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],mmm:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],dddd:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],ddd:["dom","lun","mar","mer","gio","ven","sab"]},"it"),C({decimal:",",ampm:["a.m.","p.m."],mmmm:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],mmm:["jan.","feb.","mar.","apr.","mai","jun.","jul.","aug.","sep.","okt.","nov.","des."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"nb"),C({decimal:",",mmmm:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia"],mmm:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],dddd:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],ddd:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."]},"pl"),C({group:".",decimal:",",mmmm:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],mmm:["jan.","fev.","mar.","abr.","mai.","jun.","jul.","ago.","set.","out.","nov.","dez."],dddd:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],ddd:["dom.","seg.","ter.","qua.","qui.","sex.","sáb."]},"pt"),C({decimal:",",nan:"не число",mmmm:["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"],mmm:["янв.","февр.","мар.","апр.","мая","июн.","июл.","авг.","сент.","окт.","нояб.","дек."],dddd:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],ddd:["вс","пн","вт","ср","чт","пт","сб"]},"ru"),C({decimal:",",mmmm:["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra"],mmm:["jan","feb","mar","apr","máj","jún","júl","aug","sep","okt","nov","dec"],dddd:["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],ddd:["ne","po","ut","st","št","pi","so"]},"sk"),C({group:".",decimal:",",ampm:["a. m.","p. m."],mmmm:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],mmm:["ene.","feb.","mar.","abr.","may.","jun.","jul.","ago.","sept.","oct.","nov.","dic."],dddd:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],ddd:["dom.","lun.","mar.","mié.","jue.","vie.","sáb."]},"es"),C({decimal:",",ampm:["fm","em"],mmmm:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],mmm:["jan.","feb.","mars","apr.","maj","juni","juli","aug.","sep.","okt.","nov.","dec."],dddd:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],ddd:["sön","mån","tis","ons","tors","fre","lör"]},"sv"),C({group:".",decimal:",",ampm:["ÖÖ","ÖS"],mmmm:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],mmm:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],dddd:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],ddd:["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"]},"tr");function k(i,a,o){const d=i<0?-1:1,S=10**(a||2),j=10**(o||2);let b,_,c=Math.abs(i),x=0,F=0,M=0,U=1;if((i=c)%1==0)_=[i*d,1];else if(i<1e-19)_=[d,1e19];else if(i>1e19)_=[1e19*d,1];else{do if(c=1/(c-Math.floor(c)),b=U,U=U*Math.floor(c)+x,x=b,F=M,M=Math.floor(i*U+.5),M>=S||U>=j)return[d*F,x];while(Math.abs(i-M/U)>=1e-10&&c!==Math.floor(c));_=[d*M,U]}return _}const N={overflow:"######",dateErrorThrows:!1,dateErrorNumber:!0,dateSpanLarge:!0,leap1900:!0,nbsp:!0,throws:!0,invalid:"######",locale:"",ignoreTimezone:!1},V=Object.assign({},N);function G(i){if(i===null&&(i=N),i){for(const a in i)if(a in N){const o=i[a];V[a]=o==null?N[a]:o}}return{...V}}const Q={"#":"",0:"0","?":" "},ie={"@":"text","-":"minus","+":"plus"},ve=["#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#800","#080","#008","#880","#808","#088","#CCC","#888","#99F","#936","#FFC","#CFF","#606","#F88","#06C","#CCF","#008","#F0F","#FF0","#0FF","#808","#800","#088","#00F","#0CF","#CFF","#CFC","#FF9","#9CF","#F9C","#C9F","#FC9","#36F","#3CC","#9C0","#FC0"],Ie=["¤","$","£","¥","֏","؋","৳","฿","៛","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"],je=new RegExp("["+Ie.join("")+"]");function X(i,a,o){return a[o+"_max"]=i.length,a[o+"_min"]=i.replace(/#/g,"").length,a}const _e={};function Oe(i){if(!(i in _e)){const a=[],o=i.replace(/^[#,]+/,"").replace(/[1-9]\d*/g,d=>"?".repeat(d.length));for(let d=0;d<o.length;d++){const S=o.charAt(d);a[d]=S in Q?Q[S]:S}_e[i]=a.join("")}return _e[i]}function te(i,a){typeof i=="string"&&(i={type:"string",value:i=i.replace(/ /g,Q["?"])}),a.push(i)}function Re(i){const a=[],o={scale:1,percent:!1,text:!1,date:0,date_eval:!1,date_system:1,sec_decimals:0,general:!1,clock:24,int_pattern:[],frac_pattern:[],man_pattern:[],den_pattern:[],num_pattern:[],tokens:a};let d=i+"",S="int",j=!1,b=null;const _=[];let c,x,F=!1;for(;d&&!j;){if(c=/^General/i.exec(d))o.general=!0,te({type:"general"},a);else if(S==="int"&&(c=/^[#?0]+(?:,[#?0]+)*/.exec(d))||S==="den"&&(c=/^[#?\d]+/.exec(d))||(c=/^[#?0]+/.exec(d)))o[S+"_pattern"].push(c[0]),b={type:S,num:c[0]},te(b,a);else if((c=/^\//.exec(d))&&o[S+"_pattern"].length){if(!b)throw new SyntaxError("Missing a numerator in pattern ".concat(i));o.fractions=!0,o.num_pattern.push(o[S+"_pattern"].pop()),b.type="num",S="den",te({type:"div"},a)}else if(c=/^,+/.exec(d)){const I=d.charAt(1)in Q;x.slice(-1)in Q&&(c[0].length>1||!I)?o.scale=.001**c[0].length:o.dec_fractions||te(c[0],a)}else{if(c=/^;/.exec(d)){j=!0;break}if(c=/^[@+-]/.exec(d))c[0]==="@"&&(o.text=!0),te({type:ie[c[0]]},a);else if(c=/^(?:\[(h+|m+|s+)\])/i.exec(d)){const I=c[1].toLowerCase(),O=I[0],A={type:"",size:0,date:1,raw:c[0],pad:I.length};O==="h"?(A.size=16,A.type="hour-elap"):O==="m"?(A.size=32,A.type="min-elap"):(A.size=64,A.type="sec-elap"),o.date=o.date|A.size,_.push(A),te(A,a)}else if(c=/^(?:B2)/i.exec(d))F||(o.date_system=6);else if(c=/^(?:B1)/i.exec(d))F||(o.date_system=1);else if(c=/^(?:([hHmMsSyYbBdDegG])\1*)/.exec(d)){const I={type:"",size:0,date:1,raw:c[0]},O=c[0].toLowerCase(),A=O[0];if(O==="y"||O==="yy")I.size=2,I.type="year-short";else if(A==="y"||A==="e")I.size=2,I.type="year";else if(O==="b"||O==="bb")I.size=2,I.type="b-year-short";else if(A==="b")I.size=2,I.type="b-year";else if(O==="d"||O==="dd")I.size=8,I.type="day",I.pad=/dd/.test(O);else if(O==="ddd")I.size=8,I.type="weekday-short";else if(A==="d")I.size=8,I.type="weekday";else if(A==="h")I.size=16,I.type="hour",I.pad=/hh/i.test(O);else if(A==="m"){O.length===3?(I.size=4,I.type="monthname-short"):O.length===5?(I.size=4,I.type="monthname-single"):O.length>=4&&(I.size=4,I.type="monthname");const Y=_[_.length-1];!I.type&&Y&&!Y.used&&80&Y.size&&(Y.used=!0,I.size=32,I.type="min",I.pad=/mm/.test(O)),I.type||(I.size=4,I.type="month",I.pad=/mm/.test(O),I.indeterminate=!0)}else if(A==="s"){I.size=64,I.type="sec",I.pad=/ss/.test(O);const Y=_[_.length-1];Y&&32&Y.size?I.used=!0:Y&&Y.indeterminate&&(delete Y.indeterminate,Y.size=32,Y.type="min",I.used=!0)}o.date=o.date|I.size,o.date_eval=!0,_.push(I),te(I,a)}else if(c=/^(?:AM\/PM|am\/pm|A\/P)/.exec(d))o.clock=12,o.date=16|o.date,o.date_eval=!0,te({type:"am",short:c[0]==="A/P"},a);else if(o.date&&(c=/^\.0{1,3}/i.exec(d))){const I=c[0].length-1,O=[64,128,256,512][I];o.date=o.date|O,o.date_eval=!0,o.sec_decimals=Math.max(o.sec_decimals,I),te({type:"subsec",size:O,decimals:I,date:1,raw:c[0]},a)}else if((c=/^\\(.)/.exec(d))||(c=/^"([^"]*?)"/.exec(d)))te(c[1],a);else if(c=/^\[(<[=>]?|>=?|=)\s*(-?[.\d]+)\]/.exec(d))o.condition=[c[1],parseFloat(c[2],10)];else if(c=/^\[\$([^\]]+)\]/.exec(d)){const I=c[1].split("-"),O=I.length<2?"":I[I.length-1],A=I[0];A&&te(A,a);const Y=y(O);Y&&(o.locale=Y);const J=parseInt(O,16);isFinite(J)&&16711680&J&&(J>>16&255)===6&&(o.date_system=6),F=!0}else if(c=/^\[(black|blue|cyan|green|magenta|red|white|yellow|color\s*(\d+))\]/i.exec(d))o.color=c[2]?ve[parseInt(c[2],10)]||"#000":c[1].toLowerCase();else if(!(c=/^\[(DBNum1|ENG|HIJ|JPN|TWN)\]/i.exec(d))){if(c=/^%/.exec(d))o.scale=100,o.percent=!0,te("%",a);else if(c=/^_(\\.|.)/.exec(d))te(" ",a);else if(c=/^\./.exec(d))te({type:"point",value:c[0]},a),o.dec_fractions=!0,S="frac";else if(c=/^[Ee]([+-]?|(?=[0#?]))/.exec(d))o.exponential=!0,o.exp_plus=c[1]==="+",S="man",te({type:"exp",plus:c[1]==="+"},a);else if(!(c=/^\*(\\.|.)/.exec(d))){if(c=/^[BENn[]/.exec(d))throw new SyntaxError("Unexpected char ".concat(d.charAt(0)," in pattern ").concat(i));d[0]==="("&&(o.parens=!0),c=[d[0]],te(c[0],a)}}}x=c[0],d=d.slice(c?c[0].length:1)}if(o.pattern=i.slice(0,i.length-d.length),/^((?:\[[^\]]+\])+)(;|$)/.test(o.pattern)&&!/^\[(?:h+|m+|s+)\]/.test(o.pattern)&&te({type:"text"},a),o.fractions&&o.dec_fractions||o.fractions&&o.exponential)throw new SyntaxError("Invalid pattern: ".concat(o.pattern));const M=o.int_pattern.join("");if(o.grouping=M.indexOf(",")>=0,o.grouping){const I=M.split(","),O=I.length;O===2?(o.group_pri=I[1].length,o.group_sec=o.group_pri):O>2&&(o.group_pri=I[O-1].length,o.group_sec=I[O-2].length)}else o.group_pri=0,o.group_sec=0;X(M.replace(/[,]/g,""),o,"int"),X(o.frac_pattern.join(""),o,"frac"),X(o.man_pattern.join(""),o,"man");let U=o.num_pattern.join(""),H=o.den_pattern.join("");const L=/\?/.test(H)||/\?/.test(U);return H=H.replace(/\d/g,L?"?":"#"),L&&(H=H.replace(/#$/g,"?")),X(U,o,"num"),X(H,o,"den"),L&&(U=U.replace(/#$/g,"?")),o.int_padding=Oe(o.int_pattern.join("")),o.man_padding=Oe(o.man_pattern.join("")),o.num_padding=Oe(U),o.den_padding=Oe(H),o.den_pattern.length&&(o.denominator=parseInt(o.den_pattern.join("").replace(/\D/g,""),10)),o.integer=!!o.int_pattern.join("").length,o.fractions&&a.forEach((I,O)=>{const A=a[O+1];I.type==="string"&&A&&(A.type==="num"?I.rule="num+int":A.type==="div"?I.rule="num":A.type==="den"&&(I.rule="den"))}),o}const gt=i=>{const a=i.condition;a&&a[1]<0&&(a[0]==="<"||a[0]==="<="||a[0]==="=")||i.tokens.unshift({type:"minus",volatile:!0})};function Ut(i){const a=[];let o,d=!1,S=null,j=i,b=0,_=!1,c=0,x=0;do{if(_=Re(j),(_.date||_.general)&&(_.int_pattern.length||_.frac_pattern.length||_.scale!==1||_.text))throw new Error("Illegal format");if(_.condition&&(x++,d=!0),_.text){if(S)throw new Error("Unexpected partition");S=_}_.locale&&(o=y(_.locale)),a.push(_),b=j.charAt(_.pattern.length)===";"?1:0,j=j.slice(_.pattern.length+b),c++}while(b&&c<4&&x<3);if(b)throw new Error("Unexpected partition");if(x>2)throw new Error("Unexpected condition");const F=a[3];if(F&&(F.int_pattern.length||F.frac_pattern.length||F.date))throw new Error("Unexpected partition");if(d){const M=a.length;if(M===1&&(a[1]=Re("General"),a[1].generated=!0),M<3){const U=a[0],H=a[1];if(gt(U),H.condition)gt(H);else{const L=U.condition;(L[0]==="="||L[1]>=0&&(L[0]===">"||L[0]===">="))&&H.tokens.unshift({type:"minus",volatile:!0})}}else a.forEach(gt)}else{if(a.length<4&&S)for(let M=0,U=a.length;M<U;M++)a[M]===S&&a.splice(M,1);if(a.length<1&&S&&(a[0]=Re("General"),a[0].generated=!0),a.length<2){const M=Re(a[0].pattern);M.tokens.unshift({type:"minus",volatile:!0}),M.generated=!0,a.push(M)}if(a.length<3){const M=Re(a[0].pattern);M.generated=!0,a.push(M)}if(a.length<4)if(S)a.push(S);else{const M=Re("@");M.generated=!0,a.push(M)}a[0].condition=[">",0],a[1].condition=["<",0],a[2].condition=null}return{pattern:i,partitions:a,locale:o}}const oe=Math.floor;function Lt(i){if((!(arguments.length>1&&arguments[1]!==void 0)||arguments[1])&&i>=0){if(i===0)return[1900,1,0];if(i===60)return[1900,2,29];if(i<60)return[1900,i<32?1:2,(i-1)%31+1]}let o=i+68569+2415019;const d=oe(4*o/146097);o-=oe((146097*d+3)/4);const S=oe(4e3*(o+1)/1461001);o=o-oe(1461*S/4)+31;const j=oe(80*o/2447),b=o-oe(2447*j/80);o=oe(j/11);const _=j+2-12*o;return[0|100*(d-49)+S+o,0|_,0|b]}function Dr(i){return Lt(i+1462)}function Or(i){if(i===60)throw new Error("#VALUE!");if(i<=1)return[1317,8,29];if(i<60)return[1317,i<32?9:10,1+(i-2)%30];const a=10631/30,o=.1335;let d=i+466935;const S=oe(d/10631);d-=10631*S;const j=oe((d-o)/a);d-=oe(j*a+o);const b=oe((d+28.5001)/29.5);return b===13?[30*S+j,12,30]:[30*S+j,b,d-oe(29.5001*b-29)]}function At(i){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];const d=oe(i);return a===6?Or(d):a===-1?Dr(d):Lt(d,o)}const at=Math.floor,ht=86400;function st(i,a){let o=null;if(Array.isArray(i)){const[d,S,j,b,_,c]=i;o=Date.UTC(d,S==null?0:S-1,j!=null?j:1,b||0,_||0,c||0)}else if(i instanceof Date&&(o=1*i,!a||!a.ignoreTimezone)){const d=new Date;d.setUTCFullYear(i.getFullYear(),i.getMonth(),i.getDate()),d.setUTCHours(i.getHours(),i.getMinutes(),i.getSeconds(),i.getMilliseconds()),o=1*d}if(o!=null&&isFinite(o)){const d=o/864e5;return d-(d<=-25509?-25568:-25569)}return i}function zt(i,a){let o=0|i;const d=ht*(i-o);let S=at(d);d-S>.9999&&(S+=1,S===ht&&(S=0,o+=1));const j=S<0?ht+S:S,[b,_,c]=At(i,0,a&&a.leap1900),x=at(j/60/60)%60,F=at(j/60)%60,M=at(j)%60;if(a&&a.nativeDate){const U=new Date(0);return U.setUTCFullYear(b,_-1,c),U.setUTCHours(x,F,M),U}return[b,_,c,x,F,M]}function Pr(i){return!!(i[0]&&i[0].percent||i[1]&&i[1].percent||i[2]&&i[2].percent||i[3]&&i[3].percent)}function Er(i){return!!(i[0]&&i[0].date||i[1]&&i[1].date||i[2]&&i[2].date||i[3]&&i[3].date)}function Tr(i){const[a,o,d,S]=i;return!(a&&!a.generated||o&&!o.generated||d&&!d.generated||!S||!S.text||S.generated)}const kr={text:15,datetime:10.8,date:10.8,time:10.8,percent:10.6,currency:10.4,grouped:10.2,scientific:6,number:4,fraction:2,general:0,error:0},Fr=[["DMY",1],["DM",2],["MY",3],["MDY",4],["MD",5],["hmsa",6],["hma",7],["hms",8],["hm",9]],Ur={total:1,sign:0,period:0,int:1,frac:0},Le=(i,a)=>i.replace(/\./,a.decimal);function Ht(i,a,o,d){const S=0|o;if(typeof o=="string")i.push(o);else if(o===S)i.push(Math.abs(S));else{const j=Math.abs(o);let b=j?Math.floor(Math.log10(j)):0,_=b<0?j*10**-b:j/10**b;_===10&&(_=1,b++);const c=function(F){let M=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];const U=Math.abs(F);if(!U)return Ur;const H=M&&F<0?1:0,L=Math.floor(U),I=Math.floor(Math.log10(U)+1);let O=0,A=0;if(L!==U){O=1;const Y=String(P(I<0?U*10**-I:U/10**I,15));let J=Y.length,B=!0,ne=0;for(;ne<=Y.length;){if(Y[ne]==="."){J--;break}Y[ne]==="0"&&B?J--:B=!1,ne++}A=J-I,A<0&&(A=0,O=0)}return{total:H+Math.max(I,1)+O+A,digits:Math.max(I,0)+A,sign:H,period:O,int:Math.max(I,1),frac:A}}(j),x=()=>{const F=Math.abs(b);let M;M=_===1?_:P(_,5),i.push(Le(M+"",d),d.exponent,b<0?d.negative:d.positive,F<10?"0":"",F)};if(b>=-4&&b<=-1){const F=j.toPrecision(10+b).replace(/\.?0+$/,"");i.push(Le(F,d))}else if(b===10){const F=j.toFixed(10).slice(0,12).replace(/\.$/,"");i.push(Le(F,d))}else if(Math.abs(b)<=9)if(c.total<=11){const F=P(j,9).toFixed(c.frac);i.push(Le(F,d))}else b===9?i.push(Math.floor(j)):b>=0&&b<9?i.push(P(j,9-b)):x();else c.total>=12?x():Math.floor(j)===j?i.push(Math.floor(j)):i.push(Le(P(j,9).toFixed(c.frac),d))}return i}const Ae=86400,Vt={int:"integer",frac:"fraction",man:"mantissa",num:"numerator",den:"denominator"},Yt=function(i){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;const o=Math.floor(Math.log10(i));return a>1?Math.floor(o/a)*a:o};function $t(i,a,o,d){let S="",j="",b="",_="",c="",x=0,F=0|i,M=0,U=0,H=1,L=0,I=0,O=0,A=0,Y=0,J=0;const B=d||w;if(!a.text&&isFinite(a.scale)&&a.scale!==1&&(i=function($){if($===0)return $;const W=Math.ceil(Math.log10($<0?-$:$)),R=10**(16-Math.floor(W));return Math.round($*R)/R}(i*a.scale)),a.exponential){let $=Math.abs(i);if($){const W=10**-Yt($,a.int_max),R=P($*W,a.frac_max)/W;x=Yt(R,a.int_max)}$/=10**x,i=i<0?-$:$,S+=Math.abs(x)}if(a.integer){const $=Math.abs(P(i,a.fractions?1:a.frac_max));c+=$<1?"":Math.floor($)}if(a.grouping){let $="",W=c.length;for(W>a.group_pri&&(W-=a.group_pri,$=B.group+c.slice(W,W+a.group_pri)+$);W>a.group_sec;)W-=a.group_sec,$=B.group+c.slice(W,W+a.group_sec)+$;c=W?c.slice(0,W)+$:$}a.dec_fractions&&(_=String(P(i,a.frac_max)).split(".")[1]||"");let ne=!1;if(a.fractions){const $=Math.abs(a.integer?i%1:i);if($)if(ne=!0,isFinite(a.denominator))b+=a.denominator,j+=P($*a.denominator),j==="0"&&(j="",b="",ne=!1,c||(c="0"));else{const W=k($,a.integer?a.num_max:1/0,a.den_max);j+=W[0],b+=W[1],a.integer&&j==="0"&&(c||(c="0"),j="",b="",ne=!1)}}if(a.date){F=Math.trunc(i);const $=Ae*(i-F);if(M=Math.floor($),J=$-M,Math.abs(J)<1e-6?J=0:J>.9999&&(J=0,M+=1,M===Ae&&(M=0,F+=1)),J){const W=512&a.date||256&a.date||128&a.date;(W===512&&J>.9995||W===256&&J>.995||W===128&&J>.95||!W&&J>=.5)&&(M++,J=0)}if(F||a.date_system){const W=At(i,a.date_system,o.leap1900);U=W[0],H=W[1],L=W[2]}if(M){const W=M<0?Ae+M:M;Y=Math.floor(W)%60,A=Math.floor(W/60)%60,O=Math.floor(W/60/60)%60}if(I=(6+F)%7,a.date_eval&&(Se=i,xe=F+M/Ae,o.dateSpanLarge?Se<-694324||xe>=35830291:Se<0||xe>=2958466)){if(o.dateErrorThrows)throw new Error("Date out of bounds");return o.dateErrorNumber?Ht(i<0?[B.negative]:[],0,i,B).join(""):o.overflow}}var Se,xe;if(a.int_padding&&(c=a.int_padding.length===1?c||a.int_padding:a.int_padding.substring(0,a.int_padding.length-c.length)+c),a.num_padding&&(j=a.num_padding.length===1?j||a.num_padding:a.num_padding.substring(0,a.num_padding.length-j.length)+j),a.den_padding&&(b=a.den_padding.length===1?b||a.den_padding:b+a.den_padding.slice(b.length)),a.man_padding){const $=a.exp_plus?"+":"";S=a.man_padding.length===1?(x<0?"-":$)+(S||a.man_padding):(x<0?"-":$)+a.man_padding.slice(0,a.man_padding.length-S.length)+S}const D=[];let me=0;const Ce={int:0,frac:0,man:0,num:0,den:0};for(let $=0,W=a.tokens.length;$<W;$++){const R=a.tokens[$],it=R.num?R.num.length:0;if(R.type==="string")R.rule?R.rule==="num"?ne?D.push(R.value):(a.num_min>0||a.den_min>0)&&D.push(R.value.replace(/./g,Q["?"])):R.rule==="num+int"?ne&&c?D.push(R.value):a.den_min>0&&(c||a.num_min)&&D.push(R.value.replace(/./g,Q["?"])):R.rule==="den"&&(ne?D.push(R.value):(a.den_min>0||a.den_min>0)&&D.push(R.value.replace(/./g,Q["?"]))):D.push(R.value);else if(R.type==="error")D.push(o.invalid);else if(R.type==="point")D.push(a.date?R.value:B.decimal);else if(R.type==="general")Ht(D,0,i,B);else if(R.type==="exp")D.push(B.exponent);else if(R.type==="minus")R.volatile&&a.date||R.volatile&&(i>=0||typeof i!="number")||(R.volatile&&!a.fractions&&(a.integer||a.dec_fractions)?(i<0&&c&&c!=="0"||_)&&D.push(B.negative):D.push(B.negative));else if(R.type==="plus")D.push(B.positive);else if(R.type==="text")D.push(i);else if(R.type==="div")ne?D.push("/"):a.num_min>0||a.den_min>0?D.push(Q["?"]):D.push(Q["#"]);else if(R.type==="int")if(a.int_pattern.length===1)D.push(c);else{const q=me?a.int_pattern.join("").length-Ce.int:1/0,Pe=me===a.int_pattern.length-1?0:a.int_pattern.join("").length-(Ce.int+R.num.length);D.push(c.substring(c.length-q,c.length-Pe)),me++,Ce.int+=R.num.length}else if(R.type==="frac"){const q=Ce.frac;for(let Pe=0;Pe<it;Pe++)D.push(_[Pe+q]||Q[R.num[Pe]]);Ce.frac+=it}else if(R.type in Vt)a[R.type+"_pattern"].length===1?(R.type==="int"&&D.push(c),R.type==="frac"&&D.push(_),R.type==="man"&&D.push(S),R.type==="num"&&D.push(j),R.type==="den"&&D.push(b)):(D.push(Vt[R.type].slice(Ce[R.type],Ce[R.type]+it)),Ce[R.type]+=it);else if(R.type==="year")U<0&&D.push(B.negative),D.push(String(Math.abs(U)).padStart(4,"0"));else if(R.type==="year-short"){const q=U%100;D.push(q<10?"0":"",q)}else if(R.type==="month")D.push(R.pad&&H<10?"0":"",H);else if(R.type==="monthname-single")a.date_system===6?D.push(B.mmmm6[H-1].charAt(0)):D.push(B.mmmm[H-1].charAt(0));else if(R.type==="monthname-short")a.date_system===6?D.push(B.mmm6[H-1]):D.push(B.mmm[H-1]);else if(R.type==="monthname")a.date_system===6?D.push(B.mmmm6[H-1]):D.push(B.mmmm[H-1]);else if(R.type==="weekday-short")D.push(B.ddd[I]);else if(R.type==="weekday")D.push(B.dddd[I]);else if(R.type==="day")D.push(R.pad&&L<10?"0":"",L);else if(R.type==="hour"){const q=O%a.clock||(a.clock<24?a.clock:0);D.push(R.pad&&q<10?"0":"",q)}else if(R.type==="min")D.push(R.pad&&A<10?"0":"",A);else if(R.type==="sec")D.push(R.pad&&Y<10?"0":"",Y);else if(R.type==="subsec"){D.push(B.decimal);const q=J.toFixed(a.sec_decimals);D.push(q.slice(2,2+R.decimals))}else if(R.type==="am"){const q=O<12?0:1;R.short&&!d?D.push("AP"[q]):D.push(B.ampm[q])}else if(R.type==="hour-elap"){i<0&&D.push(B.negative);const q=24*F+Math.floor(Math.abs(M)/3600);D.push(String(Math.abs(q)).padStart(R.pad,"0"))}else if(R.type==="min-elap"){i<0&&D.push(B.negative);const q=1440*F+Math.floor(Math.abs(M)/60);D.push(String(Math.abs(q)).padStart(R.pad,"0"))}else if(R.type==="sec-elap"){i<0&&D.push(B.negative);const q=F*Ae+Math.abs(M);D.push(String(Math.abs(q)).padStart(R.pad,"0"))}else if(R.type==="b-year")D.push(U+543);else if(R.type==="b-year-short"){const q=(U+543)%100;D.push(q<10?"0":"",q)}}return o.nbsp?D.join(""):D.join("").replace(/\u00a0/g," ")}function Bt(i,a){for(let o=0;o<3;o++){const d=a[o];if(d){let S;if(d.condition){const j=d.condition[0],b=d.condition[1];j==="="?S=i===b:j===">"?S=i>b:j==="<"?S=i<b:j===">="?S=i>=b:j==="<="?S=i<=b:j==="<>"&&(S=i!==b)}else S=!0;if(S)return d}}}const Gt=Re("@"),Jt="black",pe={};function ge(i,a){if(i){const o=i[0];a[o]=a[o]||{},ge(i.slice(1),a[o])}else a.$=!0}["d-F-y","d-F-Y","d-M-y","d-M-Y","F-d-y","F-d-Y","F-j-y","F-j-Y","j-F-y","j-F-Y","j-M-y","j-M-Y","M-d-y","M-d-Y","M-j-y","M-j-Y","m-d-y","m-d-Y","m-j-y","m-j-Y","n-d-y","n-d-Y","n-j-y","n-j-Y","y-F-d","y-F-j","y-M-d","y-M-j","Y-F-d","Y-F-j","Y-M-d","Y-m-d","Y-M-j","Y-m-j","Y-n-d","Y-n-j","j-F","j-M","d-F","d-M","n-d","n-j","n-Y","m-d","m-j","m-Y","M-Y","M-y","F-y","F-Y","Y-M","Y-n","Y-m","Y-F","Y-M"].forEach(i=>{ge(i,pe),ge(i+" x",pe),ge(i+" l",pe),ge(i+" l x",pe),ge("l "+i,pe),ge("l "+i+" x",pe),ge(i+" D",pe),ge(i+" D x",pe),ge("D "+i,pe),ge("D "+i+" x",pe)});const Lr={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12},Ar={january:1,february:2,march:3,april:4,june:6,july:7,august:8,september:9,october:10,november:11,december:12},zr={sunday:"l",monday:"l",tuesday:"l",wednesday:"l",thursday:"l",friday:"l",saturday:"l",sun:"D",mon:"D",tue:"D",wed:"D",thu:"D",fri:"D",sat:"D"},Hr=new Date().getUTCFullYear();function Wt(i){const a=new RegExp("^([\\s+%"+Ie.join("")+"(-]*)(((?:(?:\\d[\\d,]*)(?:\\.\\d*)?|(?:\\.\\d+)))([eE][+-]?\\d+)?)([\\s%"+Ie.join("")+")]*)$").exec(i);if(a){const[,o,d,S,j,b]=a;let _=1,c="",x=!1,F=!1,M=!1,U=!1,H=!1,L=null,I=!1,O=parseFloat(d.replace(/,/g,""));if(!isFinite(O))return null;for(let Y=0;Y<o.length;Y++){const J=o[Y];if(J==="-"){if(x||F)return null;x=!0,_=-1}else if(je.test(J)){if(H)return null;H=!0,L=J}else if(J==="("){if(F||x)return null;F=!0,_=-1}else if(J==="%"){if(U)return null;U=!0}}for(let Y=0;Y<b.length;Y++){const J=b[Y];if(je.test(J)){if(H)return null;H=!0,L=J,I=!0}else if(J===")"){if(M||!F)return null;M=!0}else if(J==="%"){if(U)return null;U=!0}}if(j){if(U||H)return null;c="0.00E+00"}else if(U){if(H)return null;c=S.includes(".")?"0.00%":"0%",O*=.01}else if(H){const Y=S.includes(".")?"#,##0.00":"#,##0";c=I?Y+L:L+Y}else S.includes(",")&&(c=S.includes(".")?"#,##0.00":"#,##0");const A={v:O*_};return c&&(A.z=c),A}}const ye=(i,a,o)=>{const d=o.path||"",S=Object.keys(a);for(let j=0;j<S.length;j++){let b;const _=S[j];if(a[_]){if(_==="$"||_==="€")i||(b=o);else if(_==="-"){const c=/^(\s*([./-]|,\s)\s*|\s+)/.exec(i);if(c){const x=c[1]==="-"||c[1]==="/"||c[1]==="."?c[1]:" ";if(!o.sep||o.sep===x){const F=c[0].replace(/\s+/g," ");b=ye(i.slice(c[0].length),a[_],{...o,sep:x,path:d+F})}}}else if(_===" "){const c=/^[,.]?\s+/.exec(i);if(c){const x=c[0].replace(/\s+/g," ");b=ye(i.slice(c[0].length),a[_],{...o,path:d+x})}}else if(_==="j"||_==="d"){const c=/^(0?[1-9]|1\d|2\d|3[01])\b/.exec(i);c&&(b=ye(i.slice(c[0].length),a[_],{...o,day:c[0],path:d+_}))}else if(_==="n"||_==="m"){const c=/^(0?[1-9]|1[012])\b/.exec(i);c&&(b=ye(i.slice(c[0].length),a[_],{...o,month:+c[0],_mon:c[0],path:d+_}))}else if(_==="F"||_==="M"){const c=/^([a-z]{3,9})\b/i.exec(i),x=c&&(_==="F"?Ar:Lr)[c[0].toLowerCase()];x&&(b=ye(i.slice(c[0].length),a[_],{...o,month:x,_mon:c[0],path:d+_}))}else if(_==="l"||_==="D"){const c=/^([a-z]{3,9})\b/i.exec(i);(c&&zr[c[0].toLowerCase()])===_&&(b=ye(i.slice(c[0].length),a[_],{...o,path:d+_}))}else if(_==="y"){const c=/^\d\d\b/.exec(i);if(c){const x=+c[0]>=30?+c[0]+1900:+c[0]+2e3;b=ye(i.slice(c[0].length),a[_],{...o,year:x,path:d+_})}}else if(_==="Y"){const c=/^\d\d\d\d\b/.exec(i);c&&(b=ye(i.slice(c[0].length),a[_],{...o,year:+c[0],path:d+_}))}else{if(_!=="x")throw new Error('Unknown date token "'.concat(_,'"'));{const c=vt(i);c&&(b=ye("",a[_],{...o,time:c.v,tf:c.z,path:d+_}))}}if(b)return b}}};function Kt(i,a){const o=ye(i.trim(),pe,{path:""});if(o){var d;if(o.sep==="."&&o.path.length===3)return null;const S=+((d=o.year)!==null&&d!==void 0?d:Hr);if(o.day||(o.day=1),!function(_,c,x){if(x<1||c<1||c>12)return!1;if(c===2){if(x>(_%4==0&&_%100!=0||_%400==0||_===1900?29:28))return!1}else if((c===4||c===6||c===9||c===11)&&x>30||(c===1||c===3||c===5||c===7||c===8||c===10||c===12)&&x>31)return!1;return!0}(S,o.month,o.day))return null;let j=-1/0;if(S<1900)return null;S<=1900&&o.month<=2?j=25568:S<1e4&&(j=25569);const b=Date.UTC(S,o.month-1,o.day)/864e5+j+(o.time||0);if(b>=0&&b<=2958465){const _=o._mon[0]==="0"||o.day[0]==="0"||o._mon.length===2&&o.day.length===2,c=o.path.replace(/[jdlDnmMFyYx-]/g,x=>x==="j"||x==="d"?_?"dd":"d":x==="D"?"ddd":x==="l"?"dddd":x==="n"||x==="m"?_?"mm":"m":x==="M"?"mmm":x==="F"?"mmmm":x==="y"?"yy":x==="x"?o.tf||"":x==="Y"?"yyyy":x);return a&&a.nativeDate?{v:zt(b,a),z:c}:{v:b,z:c}}}return null}function vt(i){const a=/^\s*([10]?\d|2[0-4])(?::([0-5]\d|\d))?(?::([0-5]\d|\d))?(\.\d{1,10})?(?:\s*([AP])M?)?\s*$/i.exec(i);if(a){const[,o,d,S,j,b]=a;if(j&&!S||!b&&!d&&!S)return null;let _=1*(o||0);if(b){if(_>=13)return null;b[0]!=="p"&&b[0]!=="P"||(_+=12)}return{v:(60*_*60+60*(1*(d||0))+1*(S||0)+1*(j||0))/86400,z:(o.length===2?"hh":"h")+":mm"+(S?":ss":"")+(b?" AM/PM":"")}}return null}function Zt(i){return/^\s*true\s*$/i.test(i)?{v:!0}:/^\s*false\s*$/i.test(i)?{v:!1}:null}const ze={};function Vr(i,a){const{pattern:o,partitions:d,locale:S}=i,j=c=>{const x=Object.assign({},G(),a,c);return S&&(x.locale=S),x},b=(c,x)=>{const F=j(x);return function(M,U,H){const L=h(H.locale),I=U[3]?U[3]:Gt;if(typeof M=="boolean"&&(M=M?"TRUE":"FALSE"),M==null)return"";if(typeof M!="number")return $t(M,I,H,L);if(!isFinite(M)){const A=L||w;return isNaN(M)?A.nan:(M<0?A.negative:"")+A.infinity}const O=Bt(M,U);return O?$t(M,O,H,L):H.overflow}(st(c,F),d,F)};b.color=(c,x)=>function(F,M){if(typeof F!="number"||!isFinite(F))return(M[3]?M[3].color:Gt.color)||Jt;const U=Bt(F,M);return U&&U.color||Jt}(st(c,j(x)),d);const _=function(c){var x;let F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;const[M,U]=c,H=M.frac_max,L={type:"general",isDate:Er(c),isText:Tr(c),isPercent:Pr(c),maxDecimals:M.general?9:H,scale:(x=M.scale)!==null&&x!==void 0?x:1,color:0,parentheses:0,grouped:M.grouping?1:0,_partitions:c},I=!L.isDate&&!L.isText&&!M.error&&M.tokens.some(B=>B.type==="string"&&(F?B.value===F:je.test(B.value)));let O="G",A=H>=0?Math.min(15,H):"",Y="",J="";if(U&&U.color&&(J="-",L.color=1),M.parens&&(Y="()",L.parentheses=1),I)O="C",L.type="currency";else if(M.error)L.type="error",L.maxDecimals=0;else if(L.isDate){let B=0,ne=0,Se="";M.tokens.forEach(D=>{const me=D.type;/^(b-)?year/.test(me)?(Se+="Y",ne++):me.startsWith("month")?(Se+="M",ne++):/^(week)?day/.test(me)?(Se+="D",ne++):me!=="hour"&&me!=="min"&&me!=="sec"&&me!=="am"||(Se+=me[0],B++)}),L.type="date",ne&&B?L.type="datetime":!ne&&B&&(L.type="time");const xe=Fr.find(D=>Se.startsWith(D[0]));O=xe?"D":"G",A=xe?xe[1]:""}else L.isText?(O="G",L.type="text",A="",L.maxDecimals=0):M.general?(O="G",L.type="general",A=""):M.fractions?(O="G",L.type="fraction",A=""):M.exponential?(O="S",L.type="scientific"):L.isPercent?(O="P",L.type="percent"):M.grouping?(O=",",L.type="grouped"):(M.int_max||H)&&(O="F",L.type="number");return L.code=O+A+J+Y,L.level=kr[L.type],Object.freeze(L)}(d,(a||{}).currency)||new SyntaxError;return b.info=_,b.dateInfo=function(c){const[x]=c;return{year:!!(2&x.date),month:!!(4&x.date),day:!!(8&x.date),hours:!!(16&x.date),minutes:!!(32&x.date),seconds:!!(64&x.date),clockType:x.clock===12?12:24}}(d),b.isPercent=()=>!!_.isPercent,b.isDate=()=>!!_.isDate,b.isText=()=>!!_.isText,b.pattern=o,i.error&&(b.error=i.error),b.options=j,b.locale=S||a&&a.locale||"",Object.freeze(b)}function K(i,a){i||(i="General");let o=null;return ze[i]?o=ze[i]:(o=Object.assign({},G(),a).throws?Ut(i):function(d){try{return Ut(d)}catch(S){const j={tokens:[{type:"error"}],error:S.message};return{pattern:d,partitions:[j,j,j,j],error:S.message,locale:null}}}(i),o.error||(ze[i]=o)),Vr(o,a)}K.isDate=i=>K(i,{throws:!1}).isDate(),K.isPercent=i=>K(i,{throws:!1}).isPercent(),K.isText=i=>K(i,{throws:!1}).isText(),K.getInfo=(i,a)=>K(i,{...a,throws:!1}).info,K.getDateInfo=(i,a)=>K(i,{...a,throws:!1}).dateInfo,K.dateToSerial=st,K.dateFromSerial=zt,K.options=G,K.dec2frac=k,K.round=P,K.codeToLocale=s,K.parseLocale=f,K.getLocale=h,K.addLocale=(i,a)=>{const o=f(a);return delete ze[o.lang],delete ze[o.language],C(i,o)},K.format=function(i,a,o){let d=arguments.length>3&&arguments[3]!==void 0&&arguments[3];const S=o&&typeof o=="object"?o:{locale:o,throws:!d};return K(i,S)(st(a,S),S)},K.is_date=K.isDate,K.parseNumber=Wt,K.parseDate=Kt,K.parseTime=vt,K.parseBool=Zt,K.parseValue=function(i,a){var o,d,S;return(o=(d=(S=Wt(i))!==null&&S!==void 0?S:Kt(i,a))!==null&&d!==void 0?d:vt(i))!==null&&o!==void 0?o:Zt(i)};var Yr=K;return n=n.default}()})})(St);var rn=St.exports,an=rn;const he=nn(an),ot=e=>he.getInfo(e).type||"unknown",bt=(e,t)=>{const n=he.getInfo(e)._partitions[1],s=he.format(e,t,{locale:"zh-CN"});return t<0?{result:s,color:n.color}:{result:s}};var sn=Object.defineProperty,on=Object.getOwnPropertyDescriptor,cn=(e,t,r,n)=>{for(var s=n>1?void 0:n?on(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&sn(t,r,s),s},Te=(e,t)=>(r,n)=>t(r,n,e);let $e=class extends p.Disposable{constructor(e,t,r,n,s){super(),this._sheetInterceptorService=e,this._themeService=t,this._sheetSkeletonManagerService=r,this._commandService=n,this._numfmtService=s,this._initInterceptorCellContent()}_initInterceptorCellContent(){const e=new p.ObjectMatrix;this.disposeWithMe(this._sheetInterceptorService.intercept(v.INTERCEPTOR_POINT.CELL_CONTENT,{handler:(t,r,n)=>{const s=r.unitId,l=r.subUnitId,u=this._numfmtService.getValue(s,l,r.row,r.col);if(!u)return n(t);const m=t;if(!m||m.t!==p.CellValueType.NUMBER)return n(t);let f="";const y=e.getValue(r.row,r.col);if(y&&y.parameters===m.v)return{...t,...y.result};const h=bt(u.pattern,Number(m.v));if(f=h.result,!f)return n(t);const g={v:f};if(h.color){const C=this._themeService.getCurrentTheme()[`${h.color}500`];C&&(g.interceptorStyle={cl:{rgb:C}})}return e.setValue(r.row,r.col,{result:g,parameters:m.v}),{...t,...g}}})),this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(t.id===v.SetNumfmtMutation.id){const r=t.params;Object.keys(r.values).forEach(n=>{r.values[n].ranges.forEach(l=>{p.Range.foreach(l,(u,m)=>{e.realDeleteValue(u,m)})})})}})),this.disposeWithMe(p.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.pipe(ae.map(t=>t==null?void 0:t.sheetId),ae.distinctUntilChanged()).subscribe(()=>{e.reset()})))}};$e=cn([p.OnLifecycle(p.LifecycleStages.Rendered,$e),Te(0,T.Inject(v.SheetInterceptorService)),Te(1,T.Inject(p.ThemeService)),Te(2,T.Inject(re.SheetSkeletonManagerService)),Te(3,T.Inject(p.ICommandService)),Te(4,T.Inject(v.INumfmtService))],$e);const be=(e,t=0)=>{var n;return e&&(n=he.getInfo(e).maxDecimals)!=null?n:t},Ne=(e,t)=>{if(e&&!t||!e&&t)return!1;const r=y=>y.reduce((h,g)=>{if(h.isEnd)return h;const C=g.value||g.num;return g.type==="point"?(h.isEnd=!0,h):{...h,result:h.result+C}},{isEnd:!1,result:""}).result,n=he.getInfo(e)._partitions,s=he.getInfo(t)._partitions,l=r(n[0].tokens),u=r(s[0].tokens),m=r(n[1].tokens),f=r(s[1].tokens);return l===u&&m===f&&n[1].color===s[1].color},Ct=e=>new Array(Math.min(Math.max(0,Number(e)),30)).fill(0).join(""),se=(e,t)=>e.split(";").map(n=>/\.0?/.test(n)?n.replace(/\.0*/g,`${t>0?".":""}${Ct(Number(t||0))}`):/0([^0]?)|0$/.test(n)?n.replace(/0([^0]+)|0$/,`0${t>0?".":""}${Ct(Number(t||0))}$1`):n).join(";"),ln=e=>/\.0?/.test(e)||/0([^0]?)|0$/.test(e),Mt={id:"sheet.command.numfmt.add.decimal.command",type:p.CommandType.COMMAND,handler:async e=>{const t=e.get(p.ICommandService),r=e.get(v.SelectionManagerService),n=e.get(v.INumfmtService),s=e.get(p.IUniverInstanceService),l=r.getSelections();if(!l||!l.length)return!1;const u=s.getCurrentUniverSheetInstance(),m=u.getActiveSheet(),f=u.getUnitId(),y=m.getSheetId();let h=0;l.forEach(P=>{p.Range.foreach(P.range,(k,N)=>{const V=n.getValue(f,y,k,N);if(!V)return;const G=be(V.pattern);h=G>h?G:h})});const g=h+1,C=se(`0${g>0?".0":""}`,g),w=[];return l.forEach(P=>{p.Range.foreach(P.range,(k,N)=>{const V=n.getValue(f,y,k,N);if(!V||Ne(V.pattern,"0.0"))w.push({row:k,col:N,pattern:C});else{const G=be(V.pattern),Q=se(V.pattern,G+1);Q!==V.pattern&&w.push({row:k,col:N,pattern:Q})}})}),w.length?await t.executeCommand(Me.id,{values:w}):!1}},un=[{label:"1930-08-05",suffix:"yyyy-MM-dd"},{label:"1930/08/05",suffix:"yyyy/MM/dd"},{label:"1930年08月05日",suffix:'yyyy"年"MM"月"dd"日"'},{label:"08-05",suffix:"MM-dd"},{label:"8月5日",suffix:'M"月"d"日"'},{label:"13:30:30",suffix:"h:mm:ss"},{label:"13:30",suffix:"h:mm"},{label:"下午01:30",suffix:"A/P hh:mm"},{label:"下午1:30",suffix:"A/P h:mm"},{label:"下午1:30:30",suffix:"A/P h:mm:ss"},{label:"08-05 下午 01:30",suffix:"MM-dd A/P hh:mm"}],mn=[{label:"(1,235)",suffix:"#,##0_);(#,##0)"},{label:"(1,235) ",suffix:"#,##0_);[Red](#,##0)",color:"red"},{label:"1,234.56",suffix:"#,##0.00_);#,##0.00"},{label:"1,234.56",suffix:"#,##0.00_);[Red]#,##0.00",color:"red"},{label:"-1,234.56",suffix:"#,##0.00_);-#,##0.00"},{label:"-1,234.56",suffix:"#,##0.00_);[Red]-#,##0.00",color:"red"}],It=[{label:e=>`${e}1,235`,suffix:e=>`"${e}"#,##0.00_);"${e}"#,##0.00`},{label:e=>`${e}1,235`,suffix:e=>`"${e}"#,##0.00_);[Red]"${e}"#,##0.00`,color:"red"},{label:e=>`(${e}1,235)`,suffix:e=>`"${e}"#,##0.00_);("${e}"#,##0.00)`},{label:e=>`(${e}1,235)`,suffix:e=>`"${e}"#,##0.00_);[Red]("${e}"#,##0.00)`,color:"red"},{label:e=>`-${e}1,235`,suffix:e=>`"${e}"#,##0.00_);-"${e}"#,##0.00`},{label:e=>`-${e}1,235`,suffix:e=>`"${e}"#,##0.00_);[Red]-"${e}"#,##0.00`,color:"red"}],jt={id:"sheet.command.numfmt.set.currency",type:p.CommandType.COMMAND,handler:async e=>{const t=e.get(p.ICommandService),n=e.get(v.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const s=[],l=It[0].suffix("¥");return n.forEach(m=>{p.Range.foreach(m.range,(f,y)=>{s.push({row:f,col:y,pattern:l,type:"currency"})})}),await t.executeCommand(Me.id,{values:s})}},Rt={id:"sheet.command.numfmt.subtract.decimal.command",type:p.CommandType.COMMAND,handler:async e=>{const t=e.get(p.ICommandService),r=e.get(v.SelectionManagerService),n=e.get(v.INumfmtService),s=e.get(p.IUniverInstanceService),l=r.getSelections();if(!l||!l.length)return!1;const u=s.getCurrentUniverSheetInstance(),m=u.getActiveSheet(),f=u.getUnitId(),y=m.getSheetId();let h=0;l.forEach(k=>{p.Range.foreach(k.range,(N,V)=>{const G=n.getValue(f,y,N,V);if(!G)return;const Q=be(G.pattern);h=Q>h?Q:h})});const g=h-1,C=se(`0${g>0?".0":"."}`,g),w=[];return l.forEach(k=>{p.Range.foreach(k.range,(N,V)=>{const G=n.getValue(f,y,N,V);if(!G||Ne(G.pattern,"0.0"))w.push({row:N,col:V,pattern:C});else{const Q=be(G.pattern);w.push({row:N,col:V,pattern:se(G.pattern,Q-1)})}})}),await t.executeCommand(Me.id,{values:w})}},ct={id:"sheet.operation.close.numfmt.panel",type:p.CommandType.OPERATION,handler:()=>!0},lt=T.createIdentifier("INumfmtController");p.runOnLifecycle(p.LifecycleStages.Rendered,lt);const Be={id:"sheet.operation.open.numfmt.panel",type:p.CommandType.OPERATION,handler:e=>(e.get(lt).openPanel(),!0)};var xt={exports:{}},Ge={};/**
1
+ (function(b,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("@wendellhu/redi"),require("@univerjs/sheets-ui"),require("rxjs/operators"),require("@univerjs/engine-numfmt"),require("@univerjs/engine-render"),require("@univerjs/ui"),require("rxjs"),require("react"),require("@univerjs/design"),require("@wendellhu/redi/react-bindings"),require("@univerjs/engine-formula")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets","@wendellhu/redi","@univerjs/sheets-ui","rxjs/operators","@univerjs/engine-numfmt","@univerjs/engine-render","@univerjs/ui","rxjs","react","@univerjs/design","@wendellhu/redi/react-bindings","@univerjs/engine-formula"],c):(b=typeof globalThis<"u"?globalThis:b||self,c(b.UniverSheetsNumfmt={},b.UniverCore,b.UniverSheets,b["@wendellhu/redi"],b.UniverSheetsUi,b.rxjs.operators,b.UniverEngineNumfmt,b.UniverEngineRender,b.UniverUi,b.rxjs,b.React,b.UniverDesign,b["@wendellhu/redi/react-bindings"],b.UniverEngineFormula))})(this,function(b,c,u,S,O,P,L,ye,M,x,I,U,D,Fe){"use strict";var _n=Object.defineProperty;var Cn=(b,c,u)=>c in b?_n(b,c,{enumerable:!0,configurable:!0,writable:!0,value:u}):b[c]=u;var B=(b,c,u)=>(Cn(b,typeof c!="symbol"?c+"":c,u),u);var be;const F={id:"sheet.command.numfmt.set.numfmt",type:c.CommandType.COMMAND,handler:(e,t)=>{if(!t)return!1;const r=e.get(c.ICommandService),n=e.get(c.IUniverInstanceService),a=e.get(c.IUndoRedoService),s=n.getCurrentUniverSheetInstance(),i=s.getUnitId(),l=s.getActiveSheet().getSheetId(),f=t.values.filter(g=>!!g.pattern),m=t.values.filter(g=>!g.pattern),d=u.transformCellsToRange(i,l,f),v={unitId:i,subUnitId:l,ranges:m.map(g=>({startColumn:g.col,startRow:g.row,endColumn:g.col,endRow:g.row}))},h=[],C=[];if(f.length){Object.keys(d.values).forEach(R=>{const y=d.values[R];y.ranges=u.rangeMerge(y.ranges)}),h.push({id:u.SetNumfmtMutation.id,params:d});const g=u.factorySetNumfmtUndoMutation(e,d);C.push(...g)}if(m.length){v.ranges=u.rangeMerge(v.ranges),h.push({id:u.RemoveNumfmtMutation.id,params:v});const g=u.factoryRemoveNumfmtUndoMutation(e,v);C.push(...g)}const _=c.sequenceExecute(h,r).result;return _&&a.pushUndoRedo({unitID:i,undoMutations:C,redoMutations:h}),_}},$e={sheet:{numfmt:{title:"数据格式",numfmtType:"格式类型",cancel:"取消",confirm:"确认",general:"常规",accounting:"会计",text:"文本",number:"数值",currency:"货币",date:"日期",time:"时间",thousandthPercentile:"千分位符",preview:"示例",dateTime:"日期时间",decimalLength:"小数位数",currencyType:"货币类型",moreFmt:"更多格式",financialValue:"财务数值",roundingCurrency:"货币取整",timeDuration:"持续时间",currencyDes:"货币格式用于表示一般货币数值。会计格式可以对一列数值进行小数点对齐",accountingDes:"会计数字格式可对一列数值进行货币符号和小数点对齐",dateType:"日期类型",dateDes:"日期格式将日期和时间系列数值品示为日期值。",negType:"负数类型",generalDes:"常规格式不包含任何特定的数字格式。",thousandthPercentileDes:"千分位符格式用于一般数字的表示。货币和会计格式则提供货币值计算的专用格式。",addDecimal:"增加小数位",subtractDecimal:"减少小数位"}}},Me={sheet:{numfmt:{title:"数据格式",numfmtType:"格式类型",cancel:"取消",confirm:"确认",general:"常规",accounting:"会计",text:"文本",number:"数值",currency:"货币",date:"日期",time:"时间",thousandthPercentile:"千分位符",preview:"示例",dateTime:"日期时间",decimalLength:"小数位数",currencyType:"货币类型",moreFmt:"更多格式",financialValue:"财务数值",roundingCurrency:"货币取整",timeDuration:"持续时间",currencyDes:"货币格式用于表示一般货币数值。会计格式可以对一列数值进行小数点对齐",accountingDes:"会计数字格式可对一列数值进行货币符号和小数点对齐",dateType:"日期类型",dateDes:"日期格式将日期和时间系列数值品示为日期值。",negType:"负数类型",generalDes:"常规格式不包含任何特定的数字格式。",thousandthPercentileDes:"千分位符格式用于一般数字的表示。货币和会计格式则提供货币值计算的专用格式。",addDecimal:"增加小数位",subtractDecimal:"减少小数位"}}},G="SHEET_NUMFMT_PLUGIN",X=e=>{const t=e.filter(s=>s.id===u.RemoveNumfmtMutation.id).map(s=>s.params),r=e.filter(s=>s.id===u.SetNumfmtMutation.id).map(s=>s.params),n=[];if(t[0]){const s=t.reduce((i,o)=>(i.ranges.push(...o.ranges),i),{ranges:[],unitId:t[0].unitId,subUnitId:t[0].subUnitId});s.ranges=u.rangeMerge(s.ranges),n.push({id:u.RemoveNumfmtMutation.id,params:s})}const a=(s,i)=>{const o=Object.keys(s),l=o.findIndex(f=>{const m=s[f];return c.Tools.diffValue(m,i)});return o[l]};if(r[0]){const s=r.reduce((i,o)=>(Object.keys(o.values).forEach(l=>{const f=o.values[l],m=o.refMap[l],d=a(i.refMap,m);if(d)i.values[d].ranges.push(...f.ranges);else{const v=Math.max(...Object.keys(i.refMap).map(Number),0)+1;i.values[v]={ranges:f.ranges},i.refMap[v]=m}}),i),{values:{},refMap:{},unitId:r[0].unitId,subUnitId:r[0].subUnitId});Object.keys(s.values).forEach(i=>{const o=s.values[i];o.ranges=u.rangeMerge(o.ranges)}),n.push({id:u.SetNumfmtMutation.id,params:s})}return n};var Be=Object.defineProperty,We=Object.getOwnPropertyDescriptor,ze=(e,t,r,n)=>{for(var a=n>1?void 0:n?We(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&Be(t,r,a),a},q=(e,t)=>(r,n)=>t(r,n,e);let ee=class extends c.Disposable{constructor(e,t,r,n){super(),this._injector=e,this._univerInstanceService=t,this._numfmtService=r,this._autoFillService=n,this._initAutoFill()}_initAutoFill(){const e=()=>({redos:[],undos:[]}),t=(a,s,i)=>{const o=this._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),l=this._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),f={startRow:a.row,startColumn:a.col,endColumn:a.col,endRow:a.row},m={startRow:s.row,startColumn:s.col,endColumn:s.col,endRow:s.row},d=[];if(c.Range.foreach(i,(v,h)=>{const C=c.Rectangle.getPositionRange({startRow:v,startColumn:h,endColumn:h,endRow:v},f),_=this._numfmtService.getValue(o,l,C.startRow,C.startColumn);if(_){const g=c.Rectangle.getPositionRange({startRow:v,startColumn:h,endColumn:h,endRow:v},m);d.push({pattern:_.pattern,type:_.type,row:g.startRow,col:g.startColumn})}}),d.length){const v={id:u.SetNumfmtMutation.id,params:u.transformCellsToRange(o,l,d)},h=u.factorySetNumfmtUndoMutation(this._injector,v.params);return{redos:[v],undos:h}}return{redos:[],undos:[]}},r=(a,s)=>{const i=[],o=[],l={row:a.startRow,col:a.startColumn};return O.getAutoFillRepeatRange(a,s).forEach(m=>{const{undos:d,redos:v}=t(l,m.repeatStartCell,m.relativeRange);i.push(...d),o.push(...v)}),{undos:X(i),redos:X(o)}},n={id:G,onFillData:(a,s,i)=>{if(i===O.APPLY_TYPE.COPY||i===O.APPLY_TYPE.ONLY_FORMAT||i===O.APPLY_TYPE.SERIES){const{source:o,target:l}=a;return r(o,l)}return e()}};this.disposeWithMe(this._autoFillService.addHook(n))}};ee=ze([c.OnLifecycle(c.LifecycleStages.Rendered,ee),q(0,S.Inject(S.Injector)),q(1,S.Inject(c.IUniverInstanceService)),q(2,S.Inject(u.INumfmtService)),q(3,S.Inject(O.IAutoFillService))],ee);const he=e=>L.getInfo(e).type||"unknown",ge=(e,t)=>{const n=L.getInfo(e)._partitions[1],a=L.format(e,t,{locale:"zh-CN"});return t<0?{result:a,color:n.color}:{result:a}};var Ye=Object.defineProperty,Ge=Object.getOwnPropertyDescriptor,Ke=(e,t,r,n)=>{for(var a=n>1?void 0:n?Ge(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&Ye(t,r,a),a},K=(e,t)=>(r,n)=>t(r,n,e);let te=class extends c.Disposable{constructor(e,t,r,n,a){super(),this._sheetInterceptorService=e,this._themeService=t,this._sheetSkeletonManagerService=r,this._commandService=n,this._numfmtService=a,this._initInterceptorCellContent()}_initInterceptorCellContent(){const e=new c.ObjectMatrix;this.disposeWithMe(this._sheetInterceptorService.intercept(u.INTERCEPTOR_POINT.CELL_CONTENT,{handler:(t,r,n)=>{const a=r.unitId,s=r.subUnitId,i=this._numfmtService.getValue(a,s,r.row,r.col);if(!i)return n(t);const o=t;if(!o||o.t!==c.CellValueType.NUMBER)return n(t);let l="";const f=e.getValue(r.row,r.col);if(f&&f.parameters===o.v)return{...t,...f.result};const m=ge(i.pattern,Number(o.v));if(l=m.result,!l)return n(t);const d={v:l};if(m.color){const v=this._themeService.getCurrentTheme()[`${m.color}500`];v&&(d.interceptorStyle={cl:{rgb:v}})}return e.setValue(r.row,r.col,{result:d,parameters:o.v}),{...t,...d}}})),this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(t.id===u.SetNumfmtMutation.id){const r=t.params;Object.keys(r.values).forEach(n=>{r.values[n].ranges.forEach(s=>{c.Range.foreach(s,(i,o)=>{e.realDeleteValue(i,o)})})})}})),this.disposeWithMe(c.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.pipe(P.map(t=>t==null?void 0:t.sheetId),P.distinctUntilChanged()).subscribe(()=>{e.reset()})))}};te=Ke([c.OnLifecycle(c.LifecycleStages.Rendered,te),K(0,S.Inject(u.SheetInterceptorService)),K(1,S.Inject(c.ThemeService)),K(2,S.Inject(O.SheetSkeletonManagerService)),K(3,S.Inject(c.ICommandService)),K(4,S.Inject(u.INumfmtService))],te);const V=(e,t=0)=>{var n;return e&&(n=L.getInfo(e).maxDecimals)!=null?n:t},W=(e,t)=>{if(e&&!t||!e&&t)return!1;const r=f=>f.reduce((m,d)=>{if(m.isEnd)return m;const v=d.value||d.num;return d.type==="point"?(m.isEnd=!0,m):{...m,result:m.result+v}},{isEnd:!1,result:""}).result,n=L.getInfo(e)._partitions,a=L.getInfo(t)._partitions,s=r(n[0].tokens),i=r(a[0].tokens),o=r(n[1].tokens),l=r(a[1].tokens);return s===i&&o===l&&n[1].color===a[1].color},je=e=>new Array(Math.min(Math.max(0,Number(e)),30)).fill(0).join(""),w=(e,t)=>e.split(";").map(n=>/\.0?/.test(n)?n.replace(/\.0*/g,`${t>0?".":""}${je(Number(t||0))}`):/0([^0]?)|0$/.test(n)?n.replace(/0([^0]+)|0$/,`0${t>0?".":""}${je(Number(t||0))}$1`):n).join(";"),Ze=e=>/\.0?/.test(e)||/0([^0]?)|0$/.test(e),Ne={id:"sheet.command.numfmt.add.decimal.command",type:c.CommandType.COMMAND,handler:async e=>{const t=e.get(c.ICommandService),r=e.get(u.SelectionManagerService),n=e.get(u.INumfmtService),a=e.get(c.IUniverInstanceService),s=r.getSelections();if(!s||!s.length)return!1;const i=a.getCurrentUniverSheetInstance(),o=i.getActiveSheet(),l=i.getUnitId(),f=o.getSheetId();let m=0;s.forEach(C=>{c.Range.foreach(C.range,(_,g)=>{const R=n.getValue(l,f,_,g);if(!R)return;const y=V(R.pattern);m=y>m?y:m})});const d=m+1,v=w(`0${d>0?".0":""}`,d),h=[];return s.forEach(C=>{c.Range.foreach(C.range,(_,g)=>{const R=n.getValue(l,f,_,g);if(!R||W(R.pattern,"0.0"))h.push({row:_,col:g,pattern:v});else{const y=V(R.pattern),N=w(R.pattern,y+1);N!==R.pattern&&h.push({row:_,col:g,pattern:N})}})}),h.length?await t.executeCommand(F.id,{values:h}):!1}},Je=[{label:"1930-08-05",suffix:"yyyy-MM-dd"},{label:"1930/08/05",suffix:"yyyy/MM/dd"},{label:"1930年08月05日",suffix:'yyyy"年"MM"月"dd"日"'},{label:"08-05",suffix:"MM-dd"},{label:"8月5日",suffix:'M"月"d"日"'},{label:"13:30:30",suffix:"h:mm:ss"},{label:"13:30",suffix:"h:mm"},{label:"下午01:30",suffix:"A/P hh:mm"},{label:"下午1:30",suffix:"A/P h:mm"},{label:"下午1:30:30",suffix:"A/P h:mm:ss"},{label:"08-05 下午 01:30",suffix:"MM-dd A/P hh:mm"}],Qe=[{label:"(1,235)",suffix:"#,##0_);(#,##0)"},{label:"(1,235) ",suffix:"#,##0_);[Red](#,##0)",color:"red"},{label:"1,234.56",suffix:"#,##0.00_);#,##0.00"},{label:"1,234.56",suffix:"#,##0.00_);[Red]#,##0.00",color:"red"},{label:"-1,234.56",suffix:"#,##0.00_);-#,##0.00"},{label:"-1,234.56",suffix:"#,##0.00_);[Red]-#,##0.00",color:"red"}],Oe=[{label:e=>`${e}1,235`,suffix:e=>`"${e}"#,##0.00_);"${e}"#,##0.00`},{label:e=>`${e}1,235`,suffix:e=>`"${e}"#,##0.00_);[Red]"${e}"#,##0.00`,color:"red"},{label:e=>`(${e}1,235)`,suffix:e=>`"${e}"#,##0.00_);("${e}"#,##0.00)`},{label:e=>`(${e}1,235)`,suffix:e=>`"${e}"#,##0.00_);[Red]("${e}"#,##0.00)`,color:"red"},{label:e=>`-${e}1,235`,suffix:e=>`"${e}"#,##0.00_);-"${e}"#,##0.00`},{label:e=>`-${e}1,235`,suffix:e=>`"${e}"#,##0.00_);[Red]-"${e}"#,##0.00`,color:"red"}],Pe={id:"sheet.command.numfmt.set.currency",type:c.CommandType.COMMAND,handler:async e=>{const t=e.get(c.ICommandService),n=e.get(u.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const a=[],s=Oe[0].suffix("¥");return n.forEach(o=>{c.Range.foreach(o.range,(l,f)=>{a.push({row:l,col:f,pattern:s,type:"currency"})})}),await t.executeCommand(F.id,{values:a})}},we={id:"sheet.command.numfmt.subtract.decimal.command",type:c.CommandType.COMMAND,handler:async e=>{const t=e.get(c.ICommandService),r=e.get(u.SelectionManagerService),n=e.get(u.INumfmtService),a=e.get(c.IUniverInstanceService),s=r.getSelections();if(!s||!s.length)return!1;const i=a.getCurrentUniverSheetInstance(),o=i.getActiveSheet(),l=i.getUnitId(),f=o.getSheetId();let m=0;s.forEach(_=>{c.Range.foreach(_.range,(g,R)=>{const y=n.getValue(l,f,g,R);if(!y)return;const N=V(y.pattern);m=N>m?N:m})});const d=m-1,v=w(`0${d>0?".0":"."}`,d),h=[];return s.forEach(_=>{c.Range.foreach(_.range,(g,R)=>{const y=n.getValue(l,f,g,R);if(!y||W(y.pattern,"0.0"))h.push({row:g,col:R,pattern:v});else{const N=V(y.pattern);h.push({row:g,col:R,pattern:w(y.pattern,N-1)})}})}),await t.executeCommand(F.id,{values:h})}},pe={id:"sheet.operation.close.numfmt.panel",type:c.CommandType.OPERATION,handler:()=>!0},Se=S.createIdentifier("INumfmtController");c.runOnLifecycle(c.LifecycleStages.Rendered,Se);const ne={id:"sheet.operation.open.numfmt.panel",type:c.CommandType.OPERATION,handler:e=>(e.get(Se).openPanel(),!0)};var De={exports:{}},re={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.min.js
4
4
  *
@@ -6,4 +6,4 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var dn=z,fn=Symbol.for("react.element"),pn=Symbol.for("react.fragment"),gn=Object.prototype.hasOwnProperty,hn=dn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,vn={key:!0,ref:!0,__self:!0,__source:!0};function wt(e,t,r){var n,s={},l=null,u=null;r!==void 0&&(l=""+r),t.key!==void 0&&(l=""+t.key),t.ref!==void 0&&(u=t.ref);for(n in t)gn.call(t,n)&&!vn.hasOwnProperty(n)&&(s[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)s[n]===void 0&&(s[n]=t[n]);return{$$typeof:fn,type:e,key:l,ref:u,props:s,_owner:hn.current}}Ge.Fragment=pn,Ge.jsx=wt,Ge.jsxs=wt,xt.exports=Ge;var E=xt.exports;const ut=z.createContext([]),mt=["$","£","¥","¤","֏","؋","৳","฿","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"];var _n=Object.defineProperty,yn=Object.getOwnPropertyDescriptor,Sn=(e,t,r,n)=>{for(var s=n>1?void 0:n?yn(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&_n(t,r,s),s},bn=(e,t)=>(r,n)=>t(r,n,e);let Je=class{constructor(e){this._localStorageService=e}_getKey(e){return`userHabitController_${e}`}async addHabit(e,t){const r=this._getKey(e);return this._localStorageService.getItem(r).then(n=>{n||this._localStorageService.setItem(r,t)})}markHabit(e,t){const r=this._getKey(e);this._localStorageService.getItem(r).then(n=>{if(n){const s=n.findIndex(l=>l===t);s>-1&&n.splice(s,1),n.unshift(t),this._localStorageService.setItem(r,n)}})}async getHabit(e,t){const r=this._getKey(e),n=await this._localStorageService.getItem(r);if(t&&n){const s=n.map((l,u,m)=>{const f=m.length;return{value:l,priority:f-u}});return t.sort((l,u)=>{var y,h;const m=((y=s.find(g=>g.value===l))==null?void 0:y.priority)||-1;return(((h=s.find(g=>g.value===u))==null?void 0:h.priority)||-1)-m})}return n||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};Je=Sn([bn(0,T.Inject(p.ILocalStorageService))],Je);const Nt="numfmtCurrency",Cn=e=>{const t=ce.useDependency(Je),[r,n]=z.useState(mt);return z.useEffect(()=>{t.addHabit("numfmtCurrency",[]).then(()=>{t.getHabit(Nt,[...mt]).then(l=>{n(l),e&&e(l)})})},[]),{userHabitCurrency:r,mark:l=>{t.markHabit(Nt,l)}}},Mn=()=>{const e=z.useRef([]),[t,r]=z.useState({});return z.useEffect(()=>{e.current.forEach(s=>{s()}),e.current=[]},[t]),s=>{e.current.push(s),r({})}},ke=e=>mt.find(r=>e.includes(r)),In=e=>!!ke(e)&&e.startsWith("_("),jn=e=>{const[t,r]=z.useState(()=>be(e.defaultPattern||"",2)),n=z.useContext(ut),[s,l]=z.useState(()=>ke(e.defaultPattern)||n[0]),u=z.useMemo(()=>n.map(g=>({label:g,value:g})),[]),f=ce.useDependency(p.LocaleService).t;e.action.current=()=>se(`_("${s}"* #,##0${t>0?".0":""}_)`,t);const y=g=>{l(g),e.onChange(se(`_("${g}"* #,##0${t>0?".0":""}_)`,t))},h=g=>{const C=g||0;r(C),e.onChange(se(`_("${s}"* #,##0${C>0?".0":""}_)`,C))};return E.jsxs("div",{children:[E.jsxs("div",{className:"m-t-16 options ",children:[E.jsxs("div",{className:"option",children:[E.jsx("div",{className:"label",children:f("sheet.numfmt.decimalLength")}),E.jsx("div",{className:"m-t-8 w-120",children:E.jsx(fe.InputNumber,{value:t,max:20,min:0,onChange:h})})]}),E.jsxs("div",{className:"option",children:[E.jsx("div",{className:"label",children:f("sheet.numfmt.currencyType")}),E.jsx("div",{className:"m-t-8 w-140",children:E.jsx(fe.Select,{onChange:y,options:u,value:s})})]})]}),E.jsx("div",{className:"describe m-t-14",children:f("sheet.numfmt.accountingDes")})]})},dt=e=>It.map(t=>({label:t.label(e),value:t.suffix(e),color:t.color})),Dt=()=>un.map(e=>({label:e.label,value:e.suffix})),Ot=()=>mn.map(e=>({label:e.label,value:e.suffix,color:e.color})),Rn=e=>!!ke(e)&&!e.startsWith("_("),xn=e=>{const r=ce.useDependency(p.LocaleService).t,n=z.useContext(ut),[s,l]=z.useState(()=>ke(e.defaultPattern)||n[0]),[u,m]=z.useState(()=>be(e.defaultPattern||"",2)),[f,y]=z.useState(()=>{var V;const k=dt(s);return((V=k.find(G=>Ne(G.value,e.defaultPattern)))==null?void 0:V.value)||k[0].value}),h=z.useMemo(()=>dt(s),[s]),g=z.useMemo(()=>n.map(k=>({label:k,value:k})),[n]);e.action.current=()=>se(f,u);const C=k=>{l(k);const N=dt(k)[0].value;y(N),e.onChange(se(N,u))},w=k=>{y(k),e.onChange(se(k,u))},P=k=>{m(k||0),e.onChange(se(f,k||0))};return E.jsxs("div",{children:[E.jsxs("div",{className:"m-t-16 options ",children:[E.jsxs("div",{className:"option",children:[E.jsx("div",{className:"label",children:r("sheet.numfmt.decimalLength")}),E.jsx("div",{className:"m-t-8 w-120",children:E.jsx(fe.InputNumber,{value:u,max:20,min:0,onChange:P})})]}),E.jsxs("div",{className:"option",children:[E.jsx("div",{className:"label",children:r("sheet.numfmt.currencyType")}),E.jsx("div",{className:"m-t-8 w-140",children:E.jsx(fe.Select,{onChange:C,options:g,value:s})})]})]}),E.jsx("div",{className:"m-t-16 label",children:r("sheet.numfmt.negType")}),E.jsx("div",{className:"m-t-8",children:E.jsx(fe.SelectList,{onChange:w,options:h,value:f})}),E.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.currencyDes")})]})},wn=e=>{const t=he.getInfo(e);return Dt().map(r=>r.value).includes(e)||["date","datetime","time"].includes(t.type)},Nn=e=>{const t=z.useMemo(Dt,[]),n=ce.useDependency(p.LocaleService).t,[s,l]=z.useState(()=>{if(e.defaultPattern){const m=t.find(f=>f.value===e.defaultPattern);if(m)return m.value}return t[0].value});e.action.current=()=>s;const u=m=>{l(m),e.onChange(m)};return E.jsxs("div",{children:[E.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),E.jsx("div",{className:"m-t-8",children:E.jsx(fe.SelectList,{value:s,options:t,onChange:u})}),E.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},Dn=e=>!e,On=e=>{const r=ce.useDependency(p.LocaleService).t;return e.action.current=()=>"",E.jsx("div",{children:E.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.generalDes")})})},Pn=e=>Ot().some(t=>Ne(t.value,e)),En=e=>{const t=ce.useDependency(p.LocaleService),r=z.useMemo(Ot,[]),[n,s]=z.useState(()=>be(e.defaultPattern||"",0)),[l,u]=z.useState(()=>{const g=r.find(C=>Ne(C.value,e.defaultPattern||""));return(g==null?void 0:g.value)||r[0].value}),m=z.useMemo(()=>se(l,Number(n||0)),[l,n]),f=z.useMemo(()=>!ln(l),[l]),y=g=>{s(g||0),e.onChange(se(l,Number(g||0)))},h=g=>{s(be(g,0)),u(g),e.onChange(g)};return e.action.current=()=>m,E.jsxs("div",{children:[E.jsx("div",{className:"m-t-16 label",children:t.t("sheet.numfmt.decimalLength")}),E.jsx("div",{className:"m-t-8",children:E.jsx(fe.InputNumber,{disabled:f,value:n,max:20,min:0,onChange:y})}),E.jsxs("div",{className:"m-t-16 label",children:[" ",t.t("sheet.numfmt.negType")]}),E.jsx("div",{className:"m-t-8",children:E.jsx(fe.SelectList,{onChange:h,options:r,value:l})}),E.jsx("div",{className:"describe m-t-14",children:t.t("sheet.numfmt.thousandthPercentileDes")})]})},Tn=e=>{const{defaultValue:t,defaultPattern:r,row:n,col:s}=e.value,l=ce.useDependency(p.LocaleService),u=z.useRef(()=>""),m=l.t,f=Mn(),y=z.useMemo(()=>[{label:"sheet.numfmt.general",component:On},{label:"sheet.numfmt.accounting",component:jn},{label:"sheet.numfmt.currency",component:xn},{label:"sheet.numfmt.date",component:Nn},{label:"sheet.numfmt.thousandthPercentile",component:En}].map(X=>({...X,label:m(X.label)})),[]),[h,g]=z.useState(V),[C,w]=z.useState(()=>`${n}_${s}`),{mark:P,userHabitCurrency:k}=Cn(()=>w(`${n}_${s}_userCurrency'`)),N=z.useMemo(()=>{var X;return(X=y.find(_e=>_e.label===h))==null?void 0:X.component},[h]);function V(){return[Dn,In,Rn,wn,Pn].reduce((_e,Oe,te)=>_e||(Oe(r)?y[te].label:""),"")||y[0].label}const G=y.map(X=>({label:X.label,value:X.label})),Q=X=>{g(X),f(()=>e.onChange({type:"change",value:u.current()||""}))},ie=X=>{e.onChange({type:"change",value:X})},ve=()=>{const X=u.current()||"",_e=ke(X);_e&&P(_e),e.onChange({type:"confirm",value:X})},Ie=()=>{e.onChange({type:"cancel",value:""})},je={onChange:ie,defaultValue:t,defaultPattern:r,action:u};return z.useEffect(()=>{g(V()),w(`${n}_${s}`)},[n,s]),E.jsxs("div",{className:"numfmt-panel p-b-20",children:[E.jsxs("div",{children:[E.jsx("div",{className:"label m-t-14",children:m("sheet.numfmt.numfmtType")}),E.jsx("div",{className:"m-t-8",children:E.jsx(fe.Select,{onChange:Q,options:G,value:h})}),E.jsx("div",{children:N&&E.jsx(ut.Provider,{value:k,children:z.createElement(N,{...je,key:C})})})]}),E.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[E.jsx(fe.Button,{size:"small",onClick:Ie,className:"m-r-12",children:m("sheet.numfmt.cancel")}),E.jsx(fe.Button,{type:"primary",size:"small",onClick:ve,children:m("sheet.numfmt.confirm")})]})]})};var kn=Object.defineProperty,Fn=Object.getOwnPropertyDescriptor,Un=(e,t,r,n)=>{for(var s=n>1?void 0:n?Fn(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&kn(t,r,s),s},le=(e,t)=>(r,n)=>t(r,n,e);let We=class extends p.Disposable{constructor(t,r,n,s,l,u,m,f,y,h,g,C){super();we(this,"_previewPattern","");we(this,"openPanel",()=>{const t=this._sidebarService,r=this._selectionManagerService,n=this._commandService,s=this._univerInstanceService,l=this._numfmtService,u=this._localeService,f=(r.getSelectionRanges()||[])[0];if(!f)return!1;const y=s.getCurrentUniverSheetInstance(),h=y.getActiveSheet(),g=h.getCellRaw(f.startRow,f.startColumn),C=l.getValue(y.getUnitId(),h.getSheetId(),f.startRow,f.startColumn);let w="";C&&(w=C.pattern);const P=(g==null?void 0:g.t)===p.CellValueType.NUMBER?g.v:12345678,k={onChange:N=>{var V,G;if(N.type==="change")this._previewPattern=N.value,this._sheetSkeletonManagerService.reCalculate(),(G=(V=this._renderManagerService.getRenderById(y.getUnitId()))==null?void 0:V.mainComponent)==null||G.makeDirty();else if(N.type==="confirm"){const Q=r.getSelectionRanges()||[],ie={values:[]},ve=ot(N.value);Q.forEach(Ie=>{p.Range.foreach(Ie,(je,X)=>{ie.values.push({row:je,col:X,pattern:N.value,type:ve})})}),n.executeCommand(Me.id,ie),t.close()}else N.type==="cancel"&&t.close()},value:{defaultPattern:w,defaultValue:P,row:f.startRow,col:f.startColumn}};t.open({header:{title:u.t("sheet.numfmt.title")},children:{label:Ee,...k},onClose:()=>{var N,V;this._sheetSkeletonManagerService.reCalculate(),(V=(N=this._renderManagerService.getRenderById(y.getUnitId()))==null?void 0:N.mainComponent)==null||V.makeDirty(),n.executeCommand(ct.id)}})});this._sheetInterceptorService=t,this._themeService=r,this._injector=n,this._univerInstanceService=s,this._sheetSkeletonManagerService=l,this._commandService=u,this._selectionManagerService=m,this._renderManagerService=f,this._numfmtService=y,this._componentManager=h,this._sidebarService=g,this._localeService=C,this._initInterceptorCommands(),this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._commandExecutedListener()}_initCommands(){[Mt,Rt,jt,Be,ct,Me].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}_initPanel(){this._componentManager.register(Ee,Tn)}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){switch(r.id){case v.ClearSelectionAllCommand.id:case v.ClearSelectionFormatCommand.id:{const n=t._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),s=t._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),l=t._selectionManagerService.getSelectionRanges();if(!(l!=null&&l.length))break;const u={unitId:n,subUnitId:s,ranges:[]},m=t._numfmtService.getModel(n,s);l.forEach(y=>{p.Range.foreach(y,(h,g)=>{m!=null&&m.getValue(h,g)&&u.ranges.push({startColumn:g,endColumn:g,startRow:h,endRow:h})})}),u.ranges=v.rangeMerge(u.ranges);const f=v.factoryRemoveNumfmtUndoMutation(t._injector,u);return{redos:[{id:v.RemoveNumfmtMutation.id,params:u}],undos:f}}}return{redos:[],undos:[]}}}))}_initRealTimeRenderingInterceptor(){const t=new de.Observable(n=>{this._commandService.onCommandExecuted(s=>{s.id===Be.id&&n.next(!0),s.id===ct.id&&n.next(!1)})}),r=de.combineLatest([t,this._selectionManagerService.selectionMoveEnd$.pipe(ae.map(n=>n?n.map(s=>s.range):[]))]);this.disposeWithMe(p.toDisposable(r.pipe(ae.switchMap(([n,s])=>new de.Observable(l=>{const u=new p.DisposableCollection;return n&&s.length&&l.next({selectionRanges:s,disposableCollection:u}),()=>{u.dispose()}})),ae.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:s})=>{var u,m;const l=this._univerInstanceService.getCurrentUniverSheetInstance();this.openPanel(),n.add(this._sheetInterceptorService.intercept(v.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,handler:(f,y,h)=>{const{row:g,col:C}=y;if(s.find(w=>w.startColumn<=C&&w.endColumn>=C&&w.startRow<=g&&w.endRow>=g)){const w=y.worksheet.getCellRaw(g,C),P=w==null?void 0:w.v,k=w==null?void 0:w.t;if(P==null||k!==p.CellValueType.NUMBER||this._previewPattern===null)return h(f);const N=bt(this._previewPattern,P);if(N.color){const G=this._themeService.getCurrentTheme()[`${N.color}500`];return{...f,v:N.result,t:p.CellValueType.STRING,s:{cl:{rgb:G}}}}return{...f,v:N.result,t:p.CellValueType.STRING}}return h(f)}})),(m=(u=this._renderManagerService.getRenderById(l.getUnitId()))==null?void 0:u.mainComponent)==null||m.makeDirty()})))}_commandExecutedListener(){const t=[v.RemoveNumfmtMutation.id,v.SetNumfmtMutation.id];this.disposeWithMe(p.toDisposable(de.merge(new de.Observable(r=>{const n=this._commandService.onCommandExecuted(s=>{if(t.includes(s.id)){const l=s.params;r.next(l.unitId)}});return()=>{n.dispose()}}),this._numfmtService.modelReplace$).pipe(ae.debounceTime(16)).subscribe(r=>{var n,s;this._sheetSkeletonManagerService.reCalculate(),(s=(n=this._renderManagerService.getRenderById(r))==null?void 0:n.mainComponent)==null||s.makeDirty()})))}};We=Un([p.OnLifecycle(p.LifecycleStages.Rendered,We),le(0,T.Inject(v.SheetInterceptorService)),le(1,T.Inject(p.ThemeService)),le(2,T.Inject(T.Injector)),le(3,T.Inject(p.IUniverInstanceService)),le(4,T.Inject(re.SheetSkeletonManagerService)),le(5,T.Inject(p.ICommandService)),le(6,T.Inject(v.SelectionManagerService)),le(7,T.Inject(_t.IRenderManagerService)),le(8,T.Inject(v.INumfmtService)),le(9,T.Inject(ee.ComponentManager)),le(10,T.Inject(ee.ISidebarService)),le(11,T.Inject(p.LocaleService))],We);var Ln=Object.defineProperty,An=Object.getOwnPropertyDescriptor,zn=(e,t,r,n)=>{for(var s=n>1?void 0:n?An(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&Ln(t,r,s),s},Ke=(e,t)=>(r,n)=>t(r,n,e);let Ze=class extends p.Disposable{constructor(t,r,n,s){super();we(this,"_copyInfo");this._sheetClipboardService=t,this._injector=r,this._numfmtService=n,this._univerInstanceService=s,this._initClipboardHook()}_initClipboardHook(){this.disposeWithMe(this._sheetClipboardService.addClipboardHook({id:Ee,onBeforeCopy:(t,r,n)=>this._collectNumfmt(t,r,n),onPasteCells:(t,r,n,s)=>{const{copyType:l=re.COPY_TYPE.COPY,pasteType:u}=s,{range:m}=t||{},{range:f}=r;return this._generateNumfmtMutations(f,{copyType:l,pasteType:u,copyRange:m})}}))}_collectNumfmt(t,r,n){const s=new p.ObjectMatrix;this._copyInfo={matrix:s,info:{unitId:t,subUnitId:r}};const l=this._numfmtService.getModel(t,r);l&&p.Range.foreach(n,(u,m)=>{const f=this._numfmtService.getValue(t,r,u,m,l);if(!f)return;const y=p.Rectangle.getRelativeRange({startRow:u,endRow:u,startColumn:m,endColumn:m},n);s.setValue(y.startRow,y.startColumn,{pattern:f.pattern,type:f.type})})}_generateNumfmtMutations(t,r){const n=this._univerInstanceService.getCurrentUniverSheetInstance(),s=n.getActiveSheet(),l=n.getUnitId(),u=s.getSheetId();if(r.copyType===re.COPY_TYPE.CUT)return this._copyInfo=null,{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!r.copyRange)return{redos:[],undos:[]};if([re.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,re.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE].includes(r.pasteType))return{redos:[],undos:[]};const m=re.getRepeatRange(r.copyRange,t,!0),f=[],y={unitId:l,subUnitId:u,ranges:[]},h=this._numfmtService.getModel(l,u);p.Range.foreach(t,(w,P)=>{this._numfmtService.getValue(l,u,w,P,h)&&y.ranges.push({startRow:w,startColumn:P,endRow:w,endColumn:P})}),m.forEach(w=>{this._copyInfo&&this._copyInfo.matrix.forValue((P,k,N)=>{const V=p.Rectangle.getPositionRange({startRow:P,endRow:P,startColumn:k,endColumn:k},w.startRange);f.push({row:V.startRow,col:V.startColumn,pattern:N.pattern,type:N.type})})});const g=v.transformCellsToRange(l,u,f);Object.keys(g.values).forEach(w=>{const P=g.values[w];P.ranges=v.rangeMerge(P.ranges)}),y.ranges=v.rangeMerge(y.ranges);const C=[...v.factorySetNumfmtUndoMutation(this._injector,g),...v.factoryRemoveNumfmtUndoMutation(this._injector,y)];return{redos:[{id:v.RemoveNumfmtMutation.id,params:y},{id:v.SetNumfmtMutation.id,params:g}],undos:He(C)}}};Ze=zn([p.OnLifecycle(p.LifecycleStages.Rendered,Ze),Ke(0,T.Inject(re.ISheetClipboardService)),Ke(1,T.Inject(T.Injector)),Ke(2,T.Inject(v.INumfmtService)),Ke(3,T.Inject(p.IUniverInstanceService))],Ze);var Hn=Object.defineProperty,Vn=Object.getOwnPropertyDescriptor,Yn=(e,t,r,n)=>{for(var s=n>1?void 0:n?Vn(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&Hn(t,r,s),s},Fe=(e,t)=>(r,n)=>t(r,n,e);const $n=()=>{let e=[];return{add:(s,l,u,m,f)=>e.push({unitId:s,subUnitId:l,row:u,col:m,value:f}),getEffects:()=>e,clean:()=>{e=[]}}};let Qe=class extends p.Disposable{constructor(t,r,n,s,l){super();we(this,"_collectEffectMutation",$n());this._sheetInterceptorService=t,this._numfmtService=r,this._univerInstanceService=n,this._injector=s,this._editorBridgeService=l,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this.disposeWithMe(p.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:(t,r,n)=>{const s=r.row,l=r.col,u=this._numfmtService.getValue(r.unitId,r.subUnitId,s,l);if(u)switch(ot(u.pattern)){case"scientific":case"percent":case"currency":case"grouped":case"number":return r.worksheet.getCellRaw(s,l);case"date":case"time":case"datetime":default:return n&&n(t)}return n(t)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(p.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:(t,r,n)=>{this._collectEffectMutation.clean();const s=this._numfmtService.getValue(r.unitId,r.subUnitId,r.row,r.col),l=()=>{s&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,null)};if(!(t!=null&&t.v))return n(t);const u=String(t.v),m=he.parseDate(u)||he.parseTime(u);if(!!m){if(m&&m.z){const y=Number(m.v);return this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,{type:"date",pattern:m.z}),{...t,v:y,t:p.CellValueType.NUMBER}}}else(["date","time","datetime"].includes((s==null?void 0:s.type)||"")||!Bn(u))&&l();return n(t)}})))}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){switch(r.id){case v.SetRangeValuesCommand.id:{const n=t._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),s=t._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),l=t._collectEffectMutation.getEffects();if(!l.length)return{redos:[],undos:[]};const u=l.filter(h=>{var g;return!!((g=h.value)!=null&&g.pattern)}).map(h=>({row:h.row,col:h.col,pattern:h.value.pattern,type:h.value.type})),m=l.filter(h=>{var g;return!((g=h.value)!=null&&g.pattern)}).map(h=>({startRow:h.row,endColumn:h.col,startColumn:h.col,endRow:h.row})),f=[],y=[];if(u){const h={id:v.SetNumfmtMutation.id,params:v.transformCellsToRange(n,s,u)};f.push(h),y.push(...v.factorySetNumfmtUndoMutation(t._injector,h.params))}if(m){const h={id:v.RemoveNumfmtMutation.id,params:{unitId:n,subUnitId:s,ranges:m}};f.push(h),y.push(...v.factoryRemoveNumfmtUndoMutation(t._injector,h.params))}return{redos:f,undos:y.reverse()}}}return{redos:[],undos:[]}}}))}};Qe=Yn([p.OnLifecycle(p.LifecycleStages.Rendered,Qe),Fe(0,T.Inject(v.SheetInterceptorService)),Fe(1,T.Inject(v.INumfmtService)),Fe(2,T.Inject(p.IUniverInstanceService)),Fe(3,T.Inject(T.Injector)),Fe(4,T.Inject(re.IEditorBridgeService))],Qe);function Bn(e){return/^-?\d+(\.\d+)?$/.test(e)}var Gn=Object.defineProperty,Jn=Object.getOwnPropertyDescriptor,Wn=(e,t,r,n)=>{for(var s=n>1?void 0:n?Jn(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&Gn(t,r,s),s},Kn=(e,t)=>(r,n)=>t(r,n,e);let Xe=class extends p.Disposable{constructor(t){super();we(this,"_initLocal",()=>{this._localeService.load({zhCN:yt})});this._localeService=t,this._initLocal()}};Xe=Wn([p.OnLifecycle(p.LifecycleStages.Rendered,Xe),Kn(0,T.Inject(p.LocaleService))],Xe);var ue=function(){return ue=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s])}return e},ue.apply(this,arguments)},Zn=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(e);s<n.length;s++)t.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(e,n[s])&&(r[n[s]]=e[n[s]]);return r},Ue=z.forwardRef(function(e,t){var r=e.icon,n=e.id,s=e.className,l=e.extend,u=Zn(e,["icon","id","className","extend"]),m="univerjs-icon univerjs-icon-".concat(n," ").concat(s||"").trim(),f=z.useRef("_".concat(qn()));return Pt(r,"".concat(n),{defIds:r.defIds,idSuffix:f.current},ue({ref:t,className:m},u),l)});function Pt(e,t,r,n,s){return z.createElement(e.tag,ue(ue({key:t},Qn(e,r,s)),n),(Xn(e,r).children||[]).map(function(l,u){return Pt(l,"".concat(t,"-").concat(e.tag,"-").concat(u),r,void 0,s)}))}function Qn(e,t,r){var n=ue({},e.attrs);r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1);var s=t.defIds;return!s||s.length===0||(e.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(function(l){var u=l[0],m=l[1];typeof m=="string"&&(n[u]=m.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),n}function Xn(e,t){var r,n=t.defIds;return!n||n.length===0?e:e.tag==="defs"&&(!((r=e.children)===null||r===void 0)&&r.length)?ue(ue({},e),{children:e.children.map(function(s){return typeof s.attrs.id=="string"&&n&&n.indexOf(s.attrs.id)>-1?ue(ue({},s),{attrs:ue(ue({},s.attrs),{id:s.attrs.id+t.idSuffix})}):s})}):e}function qn(){return Math.random().toString(36).substring(2,8)}Ue.displayName="UniverIcon";var er={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.99988 3.60921C3.99988 2.32055 5.04456 1.27588 6.33321 1.27588 7.62187 1.27588 8.66654 2.32055 8.66654 3.60921V6.24136C8.66654 7.53002 7.62187 8.5747 6.33321 8.5747 5.04455 8.5747 3.99988 7.53002 3.99988 6.24136V3.60921zM6.33321 2.60921C5.78093 2.60921 5.33321 3.05693 5.33321 3.60921V6.24136C5.33321 6.79364 5.78093 7.24136 6.33321 7.24136 6.88549 7.24136 7.33321 6.79364 7.33321 6.24136V3.60921C7.33321 3.05693 6.88549 2.60921 6.33321 2.60921zM9.99988 3.60921C9.99988 2.32055 11.0446 1.27588 12.3332 1.27588 13.6219 1.27588 14.6665 2.32055 14.6665 3.60921V6.24136C14.6665 7.53002 13.6219 8.5747 12.3332 8.5747 11.0446 8.5747 9.99988 7.53002 9.99988 6.24136V3.60921zM12.3332 2.60921C11.7809 2.60921 11.3332 3.05693 11.3332 3.60921V6.24136C11.3332 6.79364 11.7809 7.24136 12.3332 7.24136 12.8855 7.24136 13.3332 6.79364 13.3332 6.24136V3.60921C13.3332 3.05693 12.8855 2.60921 12.3332 2.60921z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M12.4713 9.58625C12.211 9.3259 11.7889 9.3259 11.5285 9.58625 11.2682 9.8466 11.2682 10.2687 11.5285 10.5291L12.3904 11.391H6.33329C5.9651 11.391 5.66663 11.6895 5.66663 12.0577 5.66663 12.4258 5.9651 12.7243 6.33329 12.7243H12.3904L11.5285 13.5862C11.2682 13.8466 11.2682 14.2687 11.5285 14.5291 11.7889 14.7894 12.211 14.7894 12.4713 14.5291L14.4669 12.5335C14.4851 12.5156 14.5022 12.4968 14.5183 12.477 14.5484 12.4399 14.5739 12.4003 14.5948 12.359 14.6407 12.2685 14.6666 12.1661 14.6666 12.0577 14.6666 11.9492 14.6407 11.8468 14.5948 11.7563 14.5739 11.715 14.5484 11.6754 14.5183 11.6383 14.5022 11.6185 14.4851 11.5997 14.4669 11.5818L12.4713 9.58625zM1.33325 7.98825C1.33325 7.62006 1.63173 7.32159 1.99992 7.32159H2.33325C2.70144 7.32159 2.99992 7.62006 2.99992 7.98825 2.99992 8.35644 2.70144 8.65492 2.33325 8.65492H1.99992C1.63173 8.65492 1.33325 8.35644 1.33325 7.98825z"}}]},Et=z.forwardRef(function(e,t){return z.createElement(Ue,Object.assign({},e,{id:"add-digits-single",ref:t,icon:er}))});Et.displayName="AddDigitsSingle";const tr=Et;var nr={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"mask",attrs:{id:"mask0_102_556",style:{"mask-type":"alpha"},width:16,height:16,x:0,y:0,maskUnits:"userSpaceOnUse"},children:[{tag:"path",attrs:{fill:"#D9D9D9",d:"M0 0H16V16H0z"}}]},{tag:"g",attrs:{mask:"url(#mask0_102_556)"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M0.629584 3.99986C1.13729 3.4922 1.9604 3.49224 2.46806 3.99995L7.57569 9.10806C7.81 9.3424 8.18992 9.3424 8.42424 9.10808L13.5323 3.99998C14.04 3.4923 14.8631 3.4923 15.3708 3.99998C15.8785 4.50766 15.8785 5.33078 15.3708 5.83846L9.41415 11.7951C8.63307 12.5762 7.36669 12.5762 6.58565 11.7951L0.629497 5.83834C0.121839 5.33063 0.121879 4.50752 0.629584 3.99986Z",fillRule:"evenodd",clipRule:"evenodd"}}]}]},Tt=z.forwardRef(function(e,t){return z.createElement(Ue,Object.assign({},e,{id:"more-down-single",ref:t,icon:nr}))});Tt.displayName="MoreDownSingle";const rr=Tt;var ar={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5 3.61825C5 2.32958 6.04468 1.28491 7.33333 1.28491C8.62199 1.28491 9.66667 2.32958 9.66667 3.61825V6.30787C9.66667 7.59653 8.62199 8.64121 7.33333 8.64121C6.04468 8.64121 5 7.59653 5 6.30787V3.61825ZM7.33333 2.61825C6.78105 2.61825 6.33333 3.06596 6.33333 3.61825V6.30787C6.33333 6.86015 6.78106 7.30787 7.33333 7.30787C7.88561 7.30787 8.33333 6.86015 8.33333 6.30787V3.61825C8.33333 3.06596 7.88561 2.61825 7.33333 2.61825Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M2 7.9745C2 7.60631 2.29848 7.30783 2.66667 7.30783H3C3.36819 7.30783 3.66667 7.60631 3.66667 7.9745 3.66667 8.34269 3.36819 8.64117 3 8.64117H2.66667C2.29848 8.64117 2 8.34269 2 7.9745zM8.80482 9.56197C9.06517 9.82232 9.06517 10.2444 8.80482 10.5048L7.94289 11.3667H13.3334C13.7016 11.3667 14.0001 11.6652 14.0001 12.0334 14.0001 12.4016 13.7016 12.7 13.3334 12.7H7.94289L8.80482 13.562C9.06517 13.8223 9.06517 14.2444 8.80482 14.5048 8.54447 14.7651 8.12236 14.7651 7.86201 14.5048L5.86201 12.5048C5.79809 12.4409 5.74987 12.3672 5.71733 12.2886 5.68474 12.21 5.66675 12.1238 5.66675 12.0334 5.66675 11.943 5.68474 11.8568 5.71733 11.7782 5.74987 11.6996 5.79809 11.6259 5.86201 11.562L7.86201 9.56197C8.12236 9.30162 8.54447 9.30162 8.80482 9.56197z"}}]},kt=z.forwardRef(function(e,t){return z.createElement(Ue,Object.assign({},e,{id:"reduce-digits-single",ref:t,icon:ar}))});kt.displayName="ReduceDigitsSingle";const sr=kt;var ir={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.05443 1.55744C4.34898 1.33653 4.76685 1.39623 4.98776 1.69078L7.99996 5.98276L11.0122 1.69078C11.2331 1.39623 11.6509 1.33653 11.9455 1.55744C12.24 1.77836 12.2997 2.19623 12.0788 2.49078L9.33338 6.42708H12.0788C12.447 6.42708 12.7455 6.72556 12.7455 7.09375C12.7455 7.46194 12.447 7.76042 12.0788 7.76042H8.66659V9.69702H12.3348C12.703 9.69702 13.0015 9.9955 13.0015 10.3637C13.0015 10.7319 12.703 11.0304 12.3348 11.0304H8.66659V13.9091C8.66659 14.2773 8.36811 14.5758 7.99992 14.5758C7.63173 14.5758 7.33325 14.2773 7.33325 13.9091V11.0304H3.66508C3.29689 11.0304 2.99841 10.7319 2.99841 10.3637C2.99841 9.9955 3.29689 9.69702 3.66508 9.69702H7.33325V7.76042H3.92109C3.5529 7.76042 3.25443 7.46194 3.25443 7.09375C3.25443 6.72556 3.5529 6.42708 3.92109 6.42708H6.66653L3.92109 2.49078C3.70018 2.19623 3.75987 1.77836 4.05443 1.55744Z"}}]},Ft=z.forwardRef(function(e,t){return z.createElement(Ue,Object.assign({},e,{id:"rmb-single",ref:t,icon:ir}))});Ft.displayName="RmbSingle";const or=Ft,qe=[{label:"sheet.numfmt.general",pattern:null},{label:"sheet.numfmt.text",pattern:"@@@"},"|",{label:"sheet.numfmt.number",pattern:"0"},"|",{label:"sheet.numfmt.accounting",pattern:'"¥" #,##0.00_);[Red]("¥"#,##0.00)'},{label:"sheet.numfmt.financialValue",pattern:"#,##0.00;[Red]#,##0.00"},{label:"sheet.numfmt.currency",pattern:'"¥"#,##0.00_);[Red]("¥"#,##0.00)'},{label:"sheet.numfmt.roundingCurrency",pattern:'"¥"#,##0;[Red]"¥"#,##0'},"|",{label:"sheet.numfmt.date",pattern:"yyyy-mm-dd;@"},{label:"sheet.numfmt.time",pattern:'am/pm h":"mm":"ss'},{label:"sheet.numfmt.dateTime",pattern:"yyyy-m-d am/pm h:mm"},{label:"sheet.numfmt.timeDuration",pattern:"h:mm:ss"},"|",{label:"sheet.numfmt.moreFmt",pattern:""}],cr=e=>{var n;const t=ce.useDependency(p.LocaleService),r=(n=e.value)!=null?n:t.t("sheet.numfmt.general");return E.jsx("span",{className:"more-numfmt-type",children:r})},lr=()=>{const e=ce.useDependency(p.ICommandService),t=ce.useDependency(p.LocaleService),r=ce.useInjector(),n=ce.useDependency(v.SelectionManagerService),s=m=>{const f=n.getLast();if(!f)return;const y=r.get(_t.ITextSelectionRenderManager),h=f.range,g=[];p.Range.foreach(h,(C,w)=>{m?g.push({row:C,col:w,pattern:m,type:ot(m)}):g.push({row:C,col:w})}),e.executeCommand(Me.id,{values:g}),y.focus()},l=m=>{if(m===0)s(null);else if(m===qe.length-1)e.executeCommand(Be.id);else{const f=qe[m];f.pattern&&s(f.pattern)}},u=1220;return E.jsx("div",{className:"more-numfmt-type-options",children:qe.map((m,f)=>m==="|"?E.jsx("div",{className:"line m-t-4",onClick:y=>y.stopPropagation()},f):E.jsxs("div",{className:"option-item m-t-4",onClick:()=>{l(f)},children:[E.jsx("div",{children:t.t(m.label)}),E.jsx("div",{className:"m-l-26",children:m.pattern?he.format(m.pattern||"",u,{locale:"zh-CN"}):""})]},f))})},ur=e=>{const t="icon-rmbSingle";return e.register(t,or),e.register("MoreDownSingle",rr),r=>({icon:t,id:jt.id,title:"sheet.numfmt.currency",tooltip:"sheet.numfmt.currency",type:ee.MenuItemType.BUTTON,group:ee.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[ee.MenuPosition.TOOLBAR_START],hidden$:ee.getMenuHiddenObservable(r,p.UniverInstanceType.SHEET),disabled$:v.getCurrentSheetDisabled$(r)})},mr=e=>{const t="icon-addDigitsSingle";return e.register(t,tr),r=>({icon:t,id:Mt.id,title:"sheet.numfmt.addDecimal",tooltip:"sheet.numfmt.addDecimal",type:ee.MenuItemType.BUTTON,positions:[ee.MenuPosition.TOOLBAR_START],group:ee.MenuGroup.TOOLBAR_FORMULAS_INSERT,hidden$:ee.getMenuHiddenObservable(r,p.UniverInstanceType.SHEET),disabled$:v.getCurrentSheetDisabled$(r)})},dr=e=>{const t="icon-reduceDigitsSingle";return e.register(t,sr),r=>({icon:t,id:Rt.id,title:"sheet.numfmt.subtractDecimal",tooltip:"sheet.numfmt.subtractDecimal",type:ee.MenuItemType.BUTTON,group:ee.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[ee.MenuPosition.TOOLBAR_START],hidden$:ee.getMenuHiddenObservable(r,p.UniverInstanceType.SHEET),disabled$:v.getCurrentSheetDisabled$(r)})},fr=e=>{const t="sheet.numfmt.moreNumfmtType",r="sheet.numfmt.moreNumfmtType.options";return e.register(t,cr),e.register(r,lr),n=>{const s=n.get(v.INumfmtService),l=n.get(p.IUniverInstanceService),u=n.get(p.ICommandService),m=n.get(p.LocaleService),f=n.get(v.SelectionManagerService),y=new de.Observable(h=>de.merge(f.selectionMoveEnd$,new de.Observable(g=>{const C=[v.RemoveNumfmtMutation.id,v.SetNumfmtMutation.id],w=u.onCommandExecuted(P=>{C.includes(P.id)&&g.next(null)});return()=>w.dispose()})).subscribe(()=>{const g=f.getSelections();if(g&&g[0]){const C=l.getCurrentUniverSheetInstance(),w=C.getActiveSheet(),P=g[0].range,k=P.startRow,N=P.startColumn,V=s.getValue(C.getUnitId(),w.getSheetId(),k,N);let G=m.t("sheet.numfmt.general");if(V){const Q=V.pattern,ie=qe.filter(ve=>typeof ve=="object"&&ve.pattern).find(ve=>Ne(Q,ve.pattern));ie&&typeof ie=="object"&&ie.pattern?G=m.t(ie.label):G=m.t("sheet.numfmt.moreFmt")}h.next(G)}}));return{label:t,id:Be.id,tooltip:"sheet.numfmt.title",type:ee.MenuItemType.SELECTOR,group:ee.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[ee.MenuPosition.TOOLBAR_START],selections:[{label:{name:r,hoverable:!1}}],value$:y,hidden$:ee.getMenuHiddenObservable(n,p.UniverInstanceType.SHEET),disabled$:v.getCurrentSheetDisabled$(n)}}};var pr=Object.defineProperty,gr=Object.getOwnPropertyDescriptor,hr=(e,t,r,n)=>{for(var s=n>1?void 0:n?gr(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&pr(t,r,s),s},ft=(e,t)=>(r,n)=>t(r,n,e);let et=class extends p.Disposable{constructor(e,t,r){super(),this._injector=e,this._componentManager=t,this._menuService=r,this._initMenu()}_initMenu(){[mr,dr,ur,fr].map(e=>e(this._componentManager)).forEach(e=>{this.disposeWithMe(this._menuService.addMenuItem(e(this._injector)))})}};et=hr([p.OnLifecycle(p.LifecycleStages.Rendered,et),ft(0,T.Inject(T.Injector)),ft(1,T.Inject(ee.ComponentManager)),ft(2,T.Inject(ee.IMenuService))],et);var vr=Object.defineProperty,_r=Object.getOwnPropertyDescriptor,yr=(e,t,r,n)=>{for(var s=n>1?void 0:n?_r(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&vr(t,r,s),s},De=(e,t)=>(r,n)=>t(r,n,e);const Sr=[v.SetNumfmtMutation.id,v.RemoveNumfmtMutation.id];let tt=class extends p.Disposable{constructor(e,t,r,n,s,l){super(),this._numfmtService=e,this._univerInstanceService=t,this._injector=r,this._refRangeService=n,this._sheetSkeletonManagerService=s,this._commandService=l,this._registerRefRange(),this._mergeRefMutations()}_mergeRefMutations(){this._refRangeService.interceptor.intercept(this._refRangeService.interceptor.getInterceptPoints().MERGE_REDO,{handler:(e,t,r)=>{if(!e)return r(e);const n=e.filter(s=>!Sr.includes(s.id));return n.push(...He(e)),r(n)}})}_registerRefRange(){this.disposeWithMe(p.toDisposable(de.merge(this._sheetSkeletonManagerService.currentSkeleton$.pipe(ae.map(e=>e==null?void 0:e.sheetId),ae.distinctUntilChanged()),this._numfmtService.modelReplace$).pipe(ae.switchMap(()=>new de.Observable(e=>{const t=new p.DisposableCollection;return e.next(t),()=>{t.dispose()}}))).subscribe(e=>{const r=this._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),n=this._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),s=this._numfmtService.getModel(r,n),l=new Map,u=(m,f,y)=>{const h={startRow:f,startColumn:y,endRow:f,endColumn:y};let g=[];switch(m.id){case v.EffectRefRangId.DeleteRangeMoveLeftCommandId:{g=v.handleDeleteRangeMoveLeft(m,h);break}case v.EffectRefRangId.DeleteRangeMoveUpCommandId:{g=v.handleDeleteRangeMoveUp(m,h);break}case v.EffectRefRangId.InsertColCommandId:{g=v.handleInsertCol(m,h);break}case v.EffectRefRangId.InsertRangeMoveDownCommandId:{g=v.handleInsertRangeMoveDown(m,h);break}case v.EffectRefRangId.InsertRangeMoveRightCommandId:{g=v.handleInsertRangeMoveRight(m,h);break}case v.EffectRefRangId.InsertRowCommandId:{g=v.handleInsertRow(m,h);break}case v.EffectRefRangId.MoveRangeCommandId:{g=v.handleMoveRange(m,h);break}case v.EffectRefRangId.RemoveColCommandId:{g=v.handleIRemoveCol(m,h);break}case v.EffectRefRangId.RemoveRowCommandId:{g=v.handleIRemoveRow(m,h);break}case v.EffectRefRangId.MoveColsCommandId:{g=v.handleMoveCols(m,h);break}case v.EffectRefRangId.MoveRowsCommandId:g=v.handleMoveRows(m,h)}const C=v.runRefRangeMutations(g,h),w=this._numfmtService.getValue(r,n,f,y);if(!C&&w){const P={id:v.RemoveNumfmtMutation.id,params:{unitId:r,subUnitId:n,ranges:[{startColumn:y,startRow:f,endColumn:y,endRow:f}]}},k=v.factoryRemoveNumfmtUndoMutation(this._injector,P.params);return{redos:[P],undos:k}}if(w&&C){const P=[],k=[],N=[{pattern:w.pattern,type:w.type,row:C.startRow,col:C.startColumn}],V={id:v.SetNumfmtMutation.id,params:v.transformCellsToRange(r,n,N)},G=v.factorySetNumfmtUndoMutation(this._injector,V.params),Q={id:v.RemoveNumfmtMutation.id,params:{unitId:r,subUnitId:n,ranges:[{startColumn:y,startRow:f,endColumn:y,endRow:f}]}},ie=v.factoryRemoveNumfmtUndoMutation(this._injector,Q.params);return P.push(V,Q),k.push(...G,...ie),{redos:P,undos:k.reverse()}}return{redos:[],undos:[]}};s&&s.forValue((m,f)=>{const y={startRow:m,startColumn:f,endRow:m,endColumn:f},h=this._refRangeService.registerRefRange(y,g=>u(g,m,f));l.set(`${m}_${f}`,h),e.add(h)}),e.add(p.toDisposable(new de.Observable(m=>{e.add(this._commandService.onCommandExecuted(f=>{[v.SetNumfmtMutation.id,v.RemoveNumfmtMutation.id].includes(f.id)&&m.next(f.params)}))}).pipe(ae.filter(m=>m.unitId===r&&m.subUnitId===n),ae.map(m=>m.ranges?m.ranges:m.values?Object.keys(m.values).reduce((f,y)=>{const h=m.values[y];return f.push(...h.ranges),f},[]):[]),ae.bufferTime(300),ae.map(m=>m.reduce((f,y)=>(f.push(...y),f),[])),ae.filter(m=>!!m.length)).subscribe(m=>{m.forEach(f=>{p.Range.foreach(f,(y,h)=>{const g=`${y}_${h}`,C=l.get(g);if(l.delete(g),C&&C.dispose(),this._numfmtService.getValue(r,n,y,h)){const P={startRow:y,startColumn:h,endRow:y,endColumn:h},k=this._refRangeService.registerRefRange(P,N=>u(N,y,h));l.set(g,k),e.add(k)}})})})))})))}};tt=yr([p.OnLifecycle(p.LifecycleStages.Rendered,tt),De(0,T.Inject(v.INumfmtService)),De(1,T.Inject(p.IUniverInstanceService)),De(2,T.Inject(T.Injector)),De(3,T.Inject(v.RefRangeService)),De(4,T.Inject(re.SheetSkeletonManagerService)),De(5,T.Inject(p.ICommandService))],tt);var br=Object.defineProperty,Cr=Object.getOwnPropertyDescriptor,Mr=(e,t,r,n)=>{for(var s=n>1?void 0:n?Cr(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&br(t,r,s),s},nt=(e,t)=>(r,n)=>t(r,n,e);let rt=class extends p.Disposable{constructor(e,t,r,n){super(),this._numfmtService=e,this._sheetInterceptorService=t,this._univerInstanceService=r,this._injector=n,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===v.RemoveSheetCommand.id){const t=e.params,r=t.unitId||Ir(this._univerInstanceService),n=t.subUnitId||jr(this._univerInstanceService),s=this._numfmtService.getModel(r,n);if(!s)return{redos:[],undos:[]};const l=[];s.forValue((f,y)=>{l.push({startColumn:y,endColumn:y,startRow:f,endRow:f})});const u={unitId:r,subUnitId:n,ranges:v.rangeMerge(l)},m=v.factoryRemoveNumfmtUndoMutation(this._injector,u);return{redos:[{id:v.RemoveNumfmtMutation.id,params:u}],undos:m}}return{redos:[],undos:[]}}}))}};rt=Mr([p.OnLifecycle(p.LifecycleStages.Rendered,rt),nt(0,T.Inject(v.INumfmtService)),nt(1,T.Inject(v.SheetInterceptorService)),nt(2,T.Inject(p.IUniverInstanceService)),nt(3,T.Inject(T.Injector))],rt);const Ir=e=>e.getCurrentUniverSheetInstance().getUnitId(),jr=e=>e.getCurrentUniverSheetInstance().getActiveSheet().getSheetId();var Rr=Object.defineProperty,xr=Object.getOwnPropertyDescriptor,wr=(e,t,r,n)=>{for(var s=n>1?void 0:n?xr(t,r):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(s=(n?u(t,r,s):u(s))||s);return n&&s&&Rr(t,r,s),s},Nr=(e,t)=>(r,n)=>t(r,n,e);Z.UniverSheetsNumfmtPlugin=(pt=class extends p.Plugin{constructor(t,r){super(Ee),this._injector=r}onStarting(){this._injector.add([lt,{useClass:We,lazy:!1}]),this._injector.add([Qe]),this._injector.add([Je]),this._injector.add([tt]),this._injector.add([rt]),this._injector.add([Ze]),this._injector.add([Ye]),this._injector.add([$e]),this._injector.add([Xe]),this._injector.add([et])}},we(pt,"type",p.PluginType.Sheet),pt),Z.UniverSheetsNumfmtPlugin=wr([Nr(1,T.Inject(T.Injector))],Z.UniverSheetsNumfmtPlugin),Z.SetNumfmtCommand=Me,Z.enUS=Qt,Z.zhCN=yt,Object.defineProperty(Z,Symbol.toStringTag,{value:"Module"})});
9
+ */var Xe=I,qe=Symbol.for("react.element"),et=Symbol.for("react.fragment"),tt=Object.prototype.hasOwnProperty,nt=Xe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,rt={key:!0,ref:!0,__self:!0,__source:!0};function Ee(e,t,r){var n,a={},s=null,i=null;r!==void 0&&(s=""+r),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(i=t.ref);for(n in t)tt.call(t,n)&&!rt.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)a[n]===void 0&&(a[n]=t[n]);return{$$typeof:qe,type:e,key:s,ref:i,props:a,_owner:nt.current}}re.Fragment=et,re.jsx=Ee,re.jsxs=Ee,De.exports=re;var p=De.exports;const _e=I.createContext([]),Ce=["$","£","¥","¤","֏","؋","৳","฿","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"];var at=Object.defineProperty,st=Object.getOwnPropertyDescriptor,it=(e,t,r,n)=>{for(var a=n>1?void 0:n?st(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&at(t,r,a),a},ot=(e,t)=>(r,n)=>t(r,n,e);let ae=class{constructor(e){this._localStorageService=e}_getKey(e){return`userHabitController_${e}`}async addHabit(e,t){const r=this._getKey(e);return this._localStorageService.getItem(r).then(n=>{n||this._localStorageService.setItem(r,t)})}markHabit(e,t){const r=this._getKey(e);this._localStorageService.getItem(r).then(n=>{if(n){const a=n.findIndex(s=>s===t);a>-1&&n.splice(a,1),n.unshift(t),this._localStorageService.setItem(r,n)}})}async getHabit(e,t){const r=this._getKey(e),n=await this._localStorageService.getItem(r);if(t&&n){const a=n.map((s,i,o)=>{const l=o.length;return{value:s,priority:l-i}});return t.sort((s,i)=>{var f,m;const o=((f=a.find(d=>d.value===s))==null?void 0:f.priority)||-1;return(((m=a.find(d=>d.value===i))==null?void 0:m.priority)||-1)-o})}return n||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};ae=it([ot(0,S.Inject(c.ILocalStorageService))],ae);const Te="numfmtCurrency",ct=e=>{const t=D.useDependency(ae),[r,n]=I.useState(Ce);return I.useEffect(()=>{t.addHabit("numfmtCurrency",[]).then(()=>{t.getHabit(Te,[...Ce]).then(s=>{n(s),e&&e(s)})})},[]),{userHabitCurrency:r,mark:s=>{t.markHabit(Te,s)}}},lt=()=>{const e=I.useRef([]),[t,r]=I.useState({});return I.useEffect(()=>{e.current.forEach(a=>{a()}),e.current=[]},[t]),a=>{e.current.push(a),r({})}},Z=e=>Ce.find(r=>e.includes(r)),ut=e=>!!Z(e)&&e.startsWith("_("),mt=e=>{const[t,r]=I.useState(()=>V(e.defaultPattern||"",2)),n=I.useContext(_e),[a,s]=I.useState(()=>Z(e.defaultPattern)||n[0]),i=I.useMemo(()=>n.map(d=>({label:d,value:d})),[]),l=D.useDependency(c.LocaleService).t;e.action.current=()=>w(`_("${a}"* #,##0${t>0?".0":""}_)`,t);const f=d=>{s(d),e.onChange(w(`_("${d}"* #,##0${t>0?".0":""}_)`,t))},m=d=>{const v=d||0;r(v),e.onChange(w(`_("${a}"* #,##0${v>0?".0":""}_)`,v))};return p.jsxs("div",{children:[p.jsxs("div",{className:"m-t-16 options ",children:[p.jsxs("div",{className:"option",children:[p.jsx("div",{className:"label",children:l("sheet.numfmt.decimalLength")}),p.jsx("div",{className:"m-t-8 w-120",children:p.jsx(U.InputNumber,{value:t,max:20,min:0,onChange:m})})]}),p.jsxs("div",{className:"option",children:[p.jsx("div",{className:"label",children:l("sheet.numfmt.currencyType")}),p.jsx("div",{className:"m-t-8 w-140",children:p.jsx(U.Select,{onChange:f,options:i,value:a})})]})]}),p.jsx("div",{className:"describe m-t-14",children:l("sheet.numfmt.accountingDes")})]})},Ie=e=>Oe.map(t=>({label:t.label(e),value:t.suffix(e),color:t.color})),xe=()=>Je.map(e=>({label:e.label,value:e.suffix})),Ue=()=>Qe.map(e=>({label:e.label,value:e.suffix,color:e.color})),dt=e=>!!Z(e)&&!e.startsWith("_("),ft=e=>{const r=D.useDependency(c.LocaleService).t,n=I.useContext(_e),[a,s]=I.useState(()=>Z(e.defaultPattern)||n[0]),[i,o]=I.useState(()=>V(e.defaultPattern||"",2)),[l,f]=I.useState(()=>{var R;const _=Ie(a);return((R=_.find(y=>W(y.value,e.defaultPattern)))==null?void 0:R.value)||_[0].value}),m=I.useMemo(()=>Ie(a),[a]),d=I.useMemo(()=>n.map(_=>({label:_,value:_})),[n]);e.action.current=()=>w(l,i);const v=_=>{s(_);const g=Ie(_)[0].value;f(g),e.onChange(w(g,i))},h=_=>{f(_),e.onChange(w(_,i))},C=_=>{o(_||0),e.onChange(w(l,_||0))};return p.jsxs("div",{children:[p.jsxs("div",{className:"m-t-16 options ",children:[p.jsxs("div",{className:"option",children:[p.jsx("div",{className:"label",children:r("sheet.numfmt.decimalLength")}),p.jsx("div",{className:"m-t-8 w-120",children:p.jsx(U.InputNumber,{value:i,max:20,min:0,onChange:C})})]}),p.jsxs("div",{className:"option",children:[p.jsx("div",{className:"label",children:r("sheet.numfmt.currencyType")}),p.jsx("div",{className:"m-t-8 w-140",children:p.jsx(U.Select,{onChange:v,options:d,value:a})})]})]}),p.jsx("div",{className:"m-t-16 label",children:r("sheet.numfmt.negType")}),p.jsx("div",{className:"m-t-8",children:p.jsx(U.SelectList,{onChange:h,options:m,value:l})}),p.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.currencyDes")})]})},vt=e=>{const t=L.getInfo(e);return xe().map(r=>r.value).includes(e)||["date","datetime","time"].includes(t.type)},ht=e=>{const t=I.useMemo(xe,[]),n=D.useDependency(c.LocaleService).t,[a,s]=I.useState(()=>{if(e.defaultPattern){const o=t.find(l=>l.value===e.defaultPattern);if(o)return o.value}return t[0].value});e.action.current=()=>a;const i=o=>{s(o),e.onChange(o)};return p.jsxs("div",{children:[p.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),p.jsx("div",{className:"m-t-8",children:p.jsx(U.SelectList,{value:a,options:t,onChange:i})}),p.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},gt=e=>!e,pt=e=>{const r=D.useDependency(c.LocaleService).t;return e.action.current=()=>"",p.jsx("div",{children:p.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.generalDes")})})},St=e=>Ue().some(t=>W(t.value,e)),_t=e=>{const t=D.useDependency(c.LocaleService),r=I.useMemo(Ue,[]),[n,a]=I.useState(()=>V(e.defaultPattern||"",0)),[s,i]=I.useState(()=>{const d=r.find(v=>W(v.value,e.defaultPattern||""));return(d==null?void 0:d.value)||r[0].value}),o=I.useMemo(()=>w(s,Number(n||0)),[s,n]),l=I.useMemo(()=>!Ze(s),[s]),f=d=>{a(d||0),e.onChange(w(s,Number(d||0)))},m=d=>{a(V(d,0)),i(d),e.onChange(d)};return e.action.current=()=>o,p.jsxs("div",{children:[p.jsx("div",{className:"m-t-16 label",children:t.t("sheet.numfmt.decimalLength")}),p.jsx("div",{className:"m-t-8",children:p.jsx(U.InputNumber,{disabled:l,value:n,max:20,min:0,onChange:f})}),p.jsxs("div",{className:"m-t-16 label",children:[" ",t.t("sheet.numfmt.negType")]}),p.jsx("div",{className:"m-t-8",children:p.jsx(U.SelectList,{onChange:m,options:r,value:s})}),p.jsx("div",{className:"describe m-t-14",children:t.t("sheet.numfmt.thousandthPercentileDes")})]})},Ct=e=>{const{defaultValue:t,defaultPattern:r,row:n,col:a}=e.value,s=D.useDependency(c.LocaleService),i=I.useRef(()=>""),o=s.t,l=lt(),f=I.useMemo(()=>[{label:"sheet.numfmt.general",component:pt},{label:"sheet.numfmt.accounting",component:mt},{label:"sheet.numfmt.currency",component:ft},{label:"sheet.numfmt.date",component:ht},{label:"sheet.numfmt.thousandthPercentile",component:_t}].map(j=>({...j,label:o(j.label)})),[]),[m,d]=I.useState(R),[v,h]=I.useState(()=>`${n}_${a}`),{mark:C,userHabitCurrency:_}=ct(()=>h(`${n}_${a}_userCurrency'`)),g=I.useMemo(()=>{var j;return(j=f.find(Y=>Y.label===m))==null?void 0:j.component},[m]);function R(){return[gt,ut,dt,vt,St].reduce((Y,pn,Sn)=>Y||(pn(r)?f[Sn].label:""),"")||f[0].label}const y=f.map(j=>({label:j.label,value:j.label})),N=j=>{d(j),l(()=>e.onChange({type:"change",value:i.current()||""}))},A=j=>{e.onChange({type:"change",value:j})},$=()=>{const j=i.current()||"",Y=Z(j);Y&&C(Y),e.onChange({type:"confirm",value:j})},H=()=>{e.onChange({type:"cancel",value:""})},k={onChange:A,defaultValue:t,defaultPattern:r,action:i};return I.useEffect(()=>{d(R()),h(`${n}_${a}`)},[n,a]),p.jsxs("div",{className:"numfmt-panel p-b-20",children:[p.jsxs("div",{children:[p.jsx("div",{className:"label m-t-14",children:o("sheet.numfmt.numfmtType")}),p.jsx("div",{className:"m-t-8",children:p.jsx(U.Select,{onChange:N,options:y,value:m})}),p.jsx("div",{children:g&&p.jsx(_e.Provider,{value:_,children:I.createElement(g,{...k,key:v})})})]}),p.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[p.jsx(U.Button,{size:"small",onClick:H,className:"m-r-12",children:o("sheet.numfmt.cancel")}),p.jsx(U.Button,{type:"primary",size:"small",onClick:$,children:o("sheet.numfmt.confirm")})]})]})};var It=Object.defineProperty,Rt=Object.getOwnPropertyDescriptor,bt=(e,t,r,n)=>{for(var a=n>1?void 0:n?Rt(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&It(t,r,a),a},E=(e,t)=>(r,n)=>t(r,n,e);let se=class extends c.Disposable{constructor(t,r,n,a,s,i,o,l,f,m,d,v){super();B(this,"_previewPattern","");B(this,"openPanel",()=>{const t=this._sidebarService,r=this._selectionManagerService,n=this._commandService,a=this._univerInstanceService,s=this._numfmtService,i=this._localeService,l=(r.getSelectionRanges()||[])[0];if(!l)return!1;const f=a.getCurrentUniverSheetInstance(),m=f.getActiveSheet(),d=m.getCellRaw(l.startRow,l.startColumn),v=s.getValue(f.getUnitId(),m.getSheetId(),l.startRow,l.startColumn);let h="";v&&(h=v.pattern);const C=(d==null?void 0:d.t)===c.CellValueType.NUMBER?d.v:12345678,_={onChange:g=>{var R,y;if(g.type==="change")this._previewPattern=g.value,this._sheetSkeletonManagerService.reCalculate(),(y=(R=this._renderManagerService.getRenderById(f.getUnitId()))==null?void 0:R.mainComponent)==null||y.makeDirty();else if(g.type==="confirm"){const N=r.getSelectionRanges()||[],A={values:[]},$=he(g.value);N.forEach(H=>{c.Range.foreach(H,(k,j)=>{A.values.push({row:k,col:j,pattern:g.value,type:$})})}),n.executeCommand(F.id,A),t.close()}else g.type==="cancel"&&t.close()},value:{defaultPattern:h,defaultValue:C,row:l.startRow,col:l.startColumn}};t.open({header:{title:i.t("sheet.numfmt.title")},children:{label:G,..._},onClose:()=>{var g,R;this._sheetSkeletonManagerService.reCalculate(),(R=(g=this._renderManagerService.getRenderById(f.getUnitId()))==null?void 0:g.mainComponent)==null||R.makeDirty(),n.executeCommand(pe.id)}})});this._sheetInterceptorService=t,this._themeService=r,this._injector=n,this._univerInstanceService=a,this._sheetSkeletonManagerService=s,this._commandService=i,this._selectionManagerService=o,this._renderManagerService=l,this._numfmtService=f,this._componentManager=m,this._sidebarService=d,this._localeService=v,this._initInterceptorCommands(),this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._commandExecutedListener()}_initCommands(){[Ne,we,Pe,ne,pe,F].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}_initPanel(){this._componentManager.register(G,Ct)}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){switch(r.id){case u.ClearSelectionAllCommand.id:case u.ClearSelectionFormatCommand.id:{const n=t._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),a=t._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),s=t._selectionManagerService.getSelectionRanges();if(!(s!=null&&s.length))break;const i={unitId:n,subUnitId:a,ranges:[]},o=t._numfmtService.getModel(n,a);s.forEach(f=>{c.Range.foreach(f,(m,d)=>{o!=null&&o.getValue(m,d)&&i.ranges.push({startColumn:d,endColumn:d,startRow:m,endRow:m})})}),i.ranges=u.rangeMerge(i.ranges);const l=u.factoryRemoveNumfmtUndoMutation(t._injector,i);return{redos:[{id:u.RemoveNumfmtMutation.id,params:i}],undos:l}}}return{redos:[],undos:[]}}}))}_initRealTimeRenderingInterceptor(){const t=new x.Observable(n=>{this._commandService.onCommandExecuted(a=>{a.id===ne.id&&n.next(!0),a.id===pe.id&&n.next(!1)})}),r=x.combineLatest([t,this._selectionManagerService.selectionMoveEnd$.pipe(P.map(n=>n?n.map(a=>a.range):[]))]);this.disposeWithMe(c.toDisposable(r.pipe(P.switchMap(([n,a])=>new x.Observable(s=>{const i=new c.DisposableCollection;return n&&a.length&&s.next({selectionRanges:a,disposableCollection:i}),()=>{i.dispose()}})),P.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:a})=>{var i,o;const s=this._univerInstanceService.getCurrentUniverSheetInstance();this.openPanel(),n.add(this._sheetInterceptorService.intercept(u.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,handler:(l,f,m)=>{const{row:d,col:v}=f;if(a.find(h=>h.startColumn<=v&&h.endColumn>=v&&h.startRow<=d&&h.endRow>=d)){const h=f.worksheet.getCellRaw(d,v),C=h==null?void 0:h.v,_=h==null?void 0:h.t;if(C==null||_!==c.CellValueType.NUMBER||this._previewPattern===null)return m(l);const g=ge(this._previewPattern,C);if(g.color){const y=this._themeService.getCurrentTheme()[`${g.color}500`];return{...l,v:g.result,t:c.CellValueType.STRING,s:{cl:{rgb:y}}}}return{...l,v:g.result,t:c.CellValueType.STRING}}return m(l)}})),(o=(i=this._renderManagerService.getRenderById(s.getUnitId()))==null?void 0:i.mainComponent)==null||o.makeDirty()})))}_commandExecutedListener(){const t=[u.RemoveNumfmtMutation.id,u.SetNumfmtMutation.id];this.disposeWithMe(c.toDisposable(x.merge(new x.Observable(r=>{const n=this._commandService.onCommandExecuted(a=>{if(t.includes(a.id)){const s=a.params;r.next(s.unitId)}});return()=>{n.dispose()}}),this._numfmtService.modelReplace$).pipe(P.debounceTime(16)).subscribe(r=>{var n,a;this._sheetSkeletonManagerService.reCalculate(),(a=(n=this._renderManagerService.getRenderById(r))==null?void 0:n.mainComponent)==null||a.makeDirty()})))}};se=bt([c.OnLifecycle(c.LifecycleStages.Rendered,se),E(0,S.Inject(u.SheetInterceptorService)),E(1,S.Inject(c.ThemeService)),E(2,S.Inject(S.Injector)),E(3,S.Inject(c.IUniverInstanceService)),E(4,S.Inject(O.SheetSkeletonManagerService)),E(5,S.Inject(c.ICommandService)),E(6,S.Inject(u.SelectionManagerService)),E(7,S.Inject(ye.IRenderManagerService)),E(8,S.Inject(u.INumfmtService)),E(9,S.Inject(M.ComponentManager)),E(10,S.Inject(M.ISidebarService)),E(11,S.Inject(c.LocaleService))],se);var yt=Object.defineProperty,Mt=Object.getOwnPropertyDescriptor,jt=(e,t,r,n)=>{for(var a=n>1?void 0:n?Mt(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&yt(t,r,a),a},ie=(e,t)=>(r,n)=>t(r,n,e);let oe=class extends c.Disposable{constructor(t,r,n,a){super();B(this,"_copyInfo");this._sheetClipboardService=t,this._injector=r,this._numfmtService=n,this._univerInstanceService=a,this._initClipboardHook()}_initClipboardHook(){this.disposeWithMe(this._sheetClipboardService.addClipboardHook({id:G,onBeforeCopy:(t,r,n)=>this._collectNumfmt(t,r,n),onPasteCells:(t,r,n,a)=>{const{copyType:s=O.COPY_TYPE.COPY,pasteType:i}=a,{range:o}=t||{},{range:l}=r;return this._generateNumfmtMutations(l,{copyType:s,pasteType:i,copyRange:o})}}))}_collectNumfmt(t,r,n){const a=new c.ObjectMatrix;this._copyInfo={matrix:a,info:{unitId:t,subUnitId:r}};const s=this._numfmtService.getModel(t,r);s&&c.Range.foreach(n,(i,o)=>{const l=this._numfmtService.getValue(t,r,i,o,s);if(!l)return;const f=c.Rectangle.getRelativeRange({startRow:i,endRow:i,startColumn:o,endColumn:o},n);a.setValue(f.startRow,f.startColumn,{pattern:l.pattern,type:l.type})})}_generateNumfmtMutations(t,r){const n=this._univerInstanceService.getCurrentUniverSheetInstance(),a=n.getActiveSheet(),s=n.getUnitId(),i=a.getSheetId();if(r.copyType===O.COPY_TYPE.CUT)return this._copyInfo=null,{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!r.copyRange)return{redos:[],undos:[]};if([O.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,O.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE].includes(r.pasteType))return{redos:[],undos:[]};const o=O.getRepeatRange(r.copyRange,t,!0),l=[],f={unitId:s,subUnitId:i,ranges:[]},m=this._numfmtService.getModel(s,i);c.Range.foreach(t,(h,C)=>{this._numfmtService.getValue(s,i,h,C,m)&&f.ranges.push({startRow:h,startColumn:C,endRow:h,endColumn:C})}),o.forEach(h=>{this._copyInfo&&this._copyInfo.matrix.forValue((C,_,g)=>{const R=c.Rectangle.getPositionRange({startRow:C,endRow:C,startColumn:_,endColumn:_},h.startRange);l.push({row:R.startRow,col:R.startColumn,pattern:g.pattern,type:g.type})})});const d=u.transformCellsToRange(s,i,l);Object.keys(d.values).forEach(h=>{const C=d.values[h];C.ranges=u.rangeMerge(C.ranges)}),f.ranges=u.rangeMerge(f.ranges);const v=[...u.factorySetNumfmtUndoMutation(this._injector,d),...u.factoryRemoveNumfmtUndoMutation(this._injector,f)];return{redos:[{id:u.RemoveNumfmtMutation.id,params:f},{id:u.SetNumfmtMutation.id,params:d}],undos:X(v)}}};oe=jt([c.OnLifecycle(c.LifecycleStages.Rendered,oe),ie(0,S.Inject(O.ISheetClipboardService)),ie(1,S.Inject(S.Injector)),ie(2,S.Inject(u.INumfmtService)),ie(3,S.Inject(c.IUniverInstanceService))],oe);var Nt=Object.defineProperty,Ot=Object.getOwnPropertyDescriptor,Pt=(e,t,r,n)=>{for(var a=n>1?void 0:n?Ot(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&Nt(t,r,a),a},J=(e,t)=>(r,n)=>t(r,n,e);const wt=()=>{let e=[];return{add:(a,s,i,o,l)=>e.push({unitId:a,subUnitId:s,row:i,col:o,value:l}),getEffects:()=>e,clean:()=>{e=[]}}};let ce=class extends c.Disposable{constructor(t,r,n,a,s){super();B(this,"_collectEffectMutation",wt());this._sheetInterceptorService=t,this._numfmtService=r,this._univerInstanceService=n,this._injector=a,this._editorBridgeService=s,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this.disposeWithMe(c.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:(t,r,n)=>{const a=r.row,s=r.col,i=this._numfmtService.getValue(r.unitId,r.subUnitId,a,s);if(i)switch(he(i.pattern)){case"scientific":case"percent":case"currency":case"grouped":case"number":return r.worksheet.getCellRaw(a,s);case"date":case"time":case"datetime":default:return n&&n(t)}return n(t)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(c.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:(t,r,n)=>{this._collectEffectMutation.clean();const a=this._numfmtService.getValue(r.unitId,r.subUnitId,r.row,r.col),s=()=>{a&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,null)};if(!(t!=null&&t.v))return n(t);const i=String(t.v),o=L.parseDate(i)||L.parseTime(i);if(!!o){if(o&&o.z){const f=Number(o.v);return this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,{type:"date",pattern:o.z}),{...t,v:f,t:c.CellValueType.NUMBER}}}else(["date","time","datetime"].includes((a==null?void 0:a.type)||"")||!Dt(i))&&s();return n(t)}})))}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){switch(r.id){case u.SetRangeValuesCommand.id:{const n=t._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),a=t._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),s=t._collectEffectMutation.getEffects();if(!s.length)return{redos:[],undos:[]};const i=s.filter(m=>{var d;return!!((d=m.value)!=null&&d.pattern)}).map(m=>({row:m.row,col:m.col,pattern:m.value.pattern,type:m.value.type})),o=s.filter(m=>{var d;return!((d=m.value)!=null&&d.pattern)}).map(m=>({startRow:m.row,endColumn:m.col,startColumn:m.col,endRow:m.row})),l=[],f=[];if(i){const m={id:u.SetNumfmtMutation.id,params:u.transformCellsToRange(n,a,i)};l.push(m),f.push(...u.factorySetNumfmtUndoMutation(t._injector,m.params))}if(o){const m={id:u.RemoveNumfmtMutation.id,params:{unitId:n,subUnitId:a,ranges:o}};l.push(m),f.push(...u.factoryRemoveNumfmtUndoMutation(t._injector,m.params))}return{redos:l,undos:f.reverse()}}}return{redos:[],undos:[]}}}))}};ce=Pt([c.OnLifecycle(c.LifecycleStages.Rendered,ce),J(0,S.Inject(u.SheetInterceptorService)),J(1,S.Inject(u.INumfmtService)),J(2,S.Inject(c.IUniverInstanceService)),J(3,S.Inject(S.Injector)),J(4,S.Inject(O.IEditorBridgeService))],ce);function Dt(e){return/^-?\d+(\.\d+)?$/.test(e)}var Et=Object.defineProperty,Tt=Object.getOwnPropertyDescriptor,xt=(e,t,r,n)=>{for(var a=n>1?void 0:n?Tt(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&Et(t,r,a),a},Ut=(e,t)=>(r,n)=>t(r,n,e);let le=class extends c.Disposable{constructor(t){super();B(this,"_initLocal",()=>{this._localeService.load({zhCN:Me})});this._localeService=t,this._initLocal()}};le=xt([c.OnLifecycle(c.LifecycleStages.Rendered,le),Ut(0,S.Inject(c.LocaleService))],le);var T=function(){return T=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e},T.apply(this,arguments)},Lt=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(e);a<n.length;a++)t.indexOf(n[a])<0&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]]);return r},Q=I.forwardRef(function(e,t){var r=e.icon,n=e.id,a=e.className,s=e.extend,i=Lt(e,["icon","id","className","extend"]),o="univerjs-icon univerjs-icon-".concat(n," ").concat(a||"").trim(),l=I.useRef("_".concat(Ht()));return Le(r,"".concat(n),{defIds:r.defIds,idSuffix:l.current},T({ref:t,className:o},i),s)});function Le(e,t,r,n,a){return I.createElement(e.tag,T(T({key:t},At(e,r,a)),n),(Vt(e,r).children||[]).map(function(s,i){return Le(s,"".concat(t,"-").concat(e.tag,"-").concat(i),r,void 0,a)}))}function At(e,t,r){var n=T({},e.attrs);r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1);var a=t.defIds;return!a||a.length===0||(e.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(function(s){var i=s[0],o=s[1];typeof o=="string"&&(n[i]=o.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),n}function Vt(e,t){var r,n=t.defIds;return!n||n.length===0?e:e.tag==="defs"&&(!((r=e.children)===null||r===void 0)&&r.length)?T(T({},e),{children:e.children.map(function(a){return typeof a.attrs.id=="string"&&n&&n.indexOf(a.attrs.id)>-1?T(T({},a),{attrs:T(T({},a.attrs),{id:a.attrs.id+t.idSuffix})}):a})}):e}function Ht(){return Math.random().toString(36).substring(2,8)}Q.displayName="UniverIcon";var kt={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.99988 3.60921C3.99988 2.32055 5.04456 1.27588 6.33321 1.27588 7.62187 1.27588 8.66654 2.32055 8.66654 3.60921V6.24136C8.66654 7.53002 7.62187 8.5747 6.33321 8.5747 5.04455 8.5747 3.99988 7.53002 3.99988 6.24136V3.60921zM6.33321 2.60921C5.78093 2.60921 5.33321 3.05693 5.33321 3.60921V6.24136C5.33321 6.79364 5.78093 7.24136 6.33321 7.24136 6.88549 7.24136 7.33321 6.79364 7.33321 6.24136V3.60921C7.33321 3.05693 6.88549 2.60921 6.33321 2.60921zM9.99988 3.60921C9.99988 2.32055 11.0446 1.27588 12.3332 1.27588 13.6219 1.27588 14.6665 2.32055 14.6665 3.60921V6.24136C14.6665 7.53002 13.6219 8.5747 12.3332 8.5747 11.0446 8.5747 9.99988 7.53002 9.99988 6.24136V3.60921zM12.3332 2.60921C11.7809 2.60921 11.3332 3.05693 11.3332 3.60921V6.24136C11.3332 6.79364 11.7809 7.24136 12.3332 7.24136 12.8855 7.24136 13.3332 6.79364 13.3332 6.24136V3.60921C13.3332 3.05693 12.8855 2.60921 12.3332 2.60921z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M12.4713 9.58625C12.211 9.3259 11.7889 9.3259 11.5285 9.58625 11.2682 9.8466 11.2682 10.2687 11.5285 10.5291L12.3904 11.391H6.33329C5.9651 11.391 5.66663 11.6895 5.66663 12.0577 5.66663 12.4258 5.9651 12.7243 6.33329 12.7243H12.3904L11.5285 13.5862C11.2682 13.8466 11.2682 14.2687 11.5285 14.5291 11.7889 14.7894 12.211 14.7894 12.4713 14.5291L14.4669 12.5335C14.4851 12.5156 14.5022 12.4968 14.5183 12.477 14.5484 12.4399 14.5739 12.4003 14.5948 12.359 14.6407 12.2685 14.6666 12.1661 14.6666 12.0577 14.6666 11.9492 14.6407 11.8468 14.5948 11.7563 14.5739 11.715 14.5484 11.6754 14.5183 11.6383 14.5022 11.6185 14.4851 11.5997 14.4669 11.5818L12.4713 9.58625zM1.33325 7.98825C1.33325 7.62006 1.63173 7.32159 1.99992 7.32159H2.33325C2.70144 7.32159 2.99992 7.62006 2.99992 7.98825 2.99992 8.35644 2.70144 8.65492 2.33325 8.65492H1.99992C1.63173 8.65492 1.33325 8.35644 1.33325 7.98825z"}}]},Ae=I.forwardRef(function(e,t){return I.createElement(Q,Object.assign({},e,{id:"add-digits-single",ref:t,icon:kt}))});Ae.displayName="AddDigitsSingle";const Ft=Ae;var $t={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"mask",attrs:{id:"mask0_102_556",style:{maskType:"alpha"},width:16,height:16,x:0,y:0,maskUnits:"userSpaceOnUse"},children:[{tag:"path",attrs:{fill:"#D9D9D9",d:"M0 0H16V16H0z"}}]},{tag:"g",attrs:{mask:"url(#mask0_102_556)"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M0.629584 3.99986C1.13729 3.4922 1.9604 3.49224 2.46806 3.99995L7.57569 9.10806C7.81 9.3424 8.18992 9.3424 8.42424 9.10808L13.5323 3.99998C14.04 3.4923 14.8631 3.4923 15.3708 3.99998C15.8785 4.50766 15.8785 5.33078 15.3708 5.83846L9.41415 11.7951C8.63307 12.5762 7.36669 12.5762 6.58565 11.7951L0.629497 5.83834C0.121839 5.33063 0.121879 4.50752 0.629584 3.99986Z",fillRule:"evenodd",clipRule:"evenodd"}}]}]},Ve=I.forwardRef(function(e,t){return I.createElement(Q,Object.assign({},e,{id:"more-down-single",ref:t,icon:$t}))});Ve.displayName="MoreDownSingle";const Bt=Ve;var Wt={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5 3.61825C5 2.32958 6.04468 1.28491 7.33333 1.28491C8.62199 1.28491 9.66667 2.32958 9.66667 3.61825V6.30787C9.66667 7.59653 8.62199 8.64121 7.33333 8.64121C6.04468 8.64121 5 7.59653 5 6.30787V3.61825ZM7.33333 2.61825C6.78105 2.61825 6.33333 3.06596 6.33333 3.61825V6.30787C6.33333 6.86015 6.78106 7.30787 7.33333 7.30787C7.88561 7.30787 8.33333 6.86015 8.33333 6.30787V3.61825C8.33333 3.06596 7.88561 2.61825 7.33333 2.61825Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M2 7.9745C2 7.60631 2.29848 7.30783 2.66667 7.30783H3C3.36819 7.30783 3.66667 7.60631 3.66667 7.9745 3.66667 8.34269 3.36819 8.64117 3 8.64117H2.66667C2.29848 8.64117 2 8.34269 2 7.9745zM8.80482 9.56197C9.06517 9.82232 9.06517 10.2444 8.80482 10.5048L7.94289 11.3667H13.3334C13.7016 11.3667 14.0001 11.6652 14.0001 12.0334 14.0001 12.4016 13.7016 12.7 13.3334 12.7H7.94289L8.80482 13.562C9.06517 13.8223 9.06517 14.2444 8.80482 14.5048 8.54447 14.7651 8.12236 14.7651 7.86201 14.5048L5.86201 12.5048C5.79809 12.4409 5.74987 12.3672 5.71733 12.2886 5.68474 12.21 5.66675 12.1238 5.66675 12.0334 5.66675 11.943 5.68474 11.8568 5.71733 11.7782 5.74987 11.6996 5.79809 11.6259 5.86201 11.562L7.86201 9.56197C8.12236 9.30162 8.54447 9.30162 8.80482 9.56197z"}}]},He=I.forwardRef(function(e,t){return I.createElement(Q,Object.assign({},e,{id:"reduce-digits-single",ref:t,icon:Wt}))});He.displayName="ReduceDigitsSingle";const zt=He;var Yt={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.05443 1.55744C4.34898 1.33653 4.76685 1.39623 4.98776 1.69078L7.99996 5.98276L11.0122 1.69078C11.2331 1.39623 11.6509 1.33653 11.9455 1.55744C12.24 1.77836 12.2997 2.19623 12.0788 2.49078L9.33338 6.42708H12.0788C12.447 6.42708 12.7455 6.72556 12.7455 7.09375C12.7455 7.46194 12.447 7.76042 12.0788 7.76042H8.66659V9.69702H12.3348C12.703 9.69702 13.0015 9.9955 13.0015 10.3637C13.0015 10.7319 12.703 11.0304 12.3348 11.0304H8.66659V13.9091C8.66659 14.2773 8.36811 14.5758 7.99992 14.5758C7.63173 14.5758 7.33325 14.2773 7.33325 13.9091V11.0304H3.66508C3.29689 11.0304 2.99841 10.7319 2.99841 10.3637C2.99841 9.9955 3.29689 9.69702 3.66508 9.69702H7.33325V7.76042H3.92109C3.5529 7.76042 3.25443 7.46194 3.25443 7.09375C3.25443 6.72556 3.5529 6.42708 3.92109 6.42708H6.66653L3.92109 2.49078C3.70018 2.19623 3.75987 1.77836 4.05443 1.55744Z"}}]},ke=I.forwardRef(function(e,t){return I.createElement(Q,Object.assign({},e,{id:"rmb-single",ref:t,icon:Yt}))});ke.displayName="RmbSingle";const Gt=ke,ue=[{label:"sheet.numfmt.general",pattern:null},{label:"sheet.numfmt.text",pattern:"@@@"},"|",{label:"sheet.numfmt.number",pattern:"0"},"|",{label:"sheet.numfmt.accounting",pattern:'"¥" #,##0.00_);[Red]("¥"#,##0.00)'},{label:"sheet.numfmt.financialValue",pattern:"#,##0.00;[Red]#,##0.00"},{label:"sheet.numfmt.currency",pattern:'"¥"#,##0.00_);[Red]("¥"#,##0.00)'},{label:"sheet.numfmt.roundingCurrency",pattern:'"¥"#,##0;[Red]"¥"#,##0'},"|",{label:"sheet.numfmt.date",pattern:"yyyy-mm-dd;@"},{label:"sheet.numfmt.time",pattern:'am/pm h":"mm":"ss'},{label:"sheet.numfmt.dateTime",pattern:"yyyy-m-d am/pm h:mm"},{label:"sheet.numfmt.timeDuration",pattern:"h:mm:ss"},"|",{label:"sheet.numfmt.moreFmt",pattern:""}],Kt=e=>{var n;const t=D.useDependency(c.LocaleService),r=(n=e.value)!=null?n:t.t("sheet.numfmt.general");return p.jsx("span",{className:"more-numfmt-type",children:r})},Zt=()=>{const e=D.useDependency(c.ICommandService),t=D.useDependency(c.LocaleService),r=D.useInjector(),n=D.useDependency(u.SelectionManagerService),a=o=>{const l=n.getLast();if(!l)return;const f=r.get(ye.ITextSelectionRenderManager),m=l.range,d=[];c.Range.foreach(m,(v,h)=>{o?d.push({row:v,col:h,pattern:o,type:he(o)}):d.push({row:v,col:h})}),e.executeCommand(F.id,{values:d}),f.focus()},s=o=>{if(o===0)a(null);else if(o===ue.length-1)e.executeCommand(ne.id);else{const l=ue[o];l.pattern&&a(l.pattern)}},i=1220;return p.jsx("div",{className:"more-numfmt-type-options",children:ue.map((o,l)=>o==="|"?p.jsx("div",{className:"line m-t-4",onClick:f=>f.stopPropagation()},l):p.jsxs("div",{className:"option-item m-t-4",onClick:()=>{s(l)},children:[p.jsx("div",{children:t.t(o.label)}),p.jsx("div",{className:"m-l-26",children:o.pattern?L.format(o.pattern||"",i,{locale:"zh-CN"}):""})]},l))})},Jt=e=>{const t="icon-rmbSingle";return e.register(t,Gt),e.register("MoreDownSingle",Bt),r=>({icon:t,id:Pe.id,title:"sheet.numfmt.currency",tooltip:"sheet.numfmt.currency",type:M.MenuItemType.BUTTON,group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[M.MenuPosition.TOOLBAR_START],hidden$:M.getMenuHiddenObservable(r,c.UniverInstanceType.SHEET),disabled$:u.getCurrentSheetDisabled$(r)})},Qt=e=>{const t="icon-addDigitsSingle";return e.register(t,Ft),r=>({icon:t,id:Ne.id,title:"sheet.numfmt.addDecimal",tooltip:"sheet.numfmt.addDecimal",type:M.MenuItemType.BUTTON,positions:[M.MenuPosition.TOOLBAR_START],group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,hidden$:M.getMenuHiddenObservable(r,c.UniverInstanceType.SHEET),disabled$:u.getCurrentSheetDisabled$(r)})},Xt=e=>{const t="icon-reduceDigitsSingle";return e.register(t,zt),r=>({icon:t,id:we.id,title:"sheet.numfmt.subtractDecimal",tooltip:"sheet.numfmt.subtractDecimal",type:M.MenuItemType.BUTTON,group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[M.MenuPosition.TOOLBAR_START],hidden$:M.getMenuHiddenObservable(r,c.UniverInstanceType.SHEET),disabled$:u.getCurrentSheetDisabled$(r)})},qt=e=>{const t="sheet.numfmt.moreNumfmtType",r="sheet.numfmt.moreNumfmtType.options";return e.register(t,Kt),e.register(r,Zt),n=>{const a=n.get(u.INumfmtService),s=n.get(Fe.FormulaDataModel),i=n.get(c.IUniverInstanceService),o=n.get(c.ICommandService),l=n.get(c.LocaleService),f=n.get(u.SelectionManagerService),m=new x.Observable(d=>x.merge(f.selectionMoveEnd$,new x.Observable(v=>{const h=[u.RemoveNumfmtMutation.id,u.SetNumfmtMutation.id],C=o.onCommandExecuted(_=>{h.includes(_.id)&&v.next(null)});return()=>C.dispose()})).subscribe(()=>{const v=f.getSelections();if(v&&v[0]){const h=i.getCurrentUniverSheetInstance(),C=h.getActiveSheet(),_=v[0].range,g=_.startRow,R=_.startColumn,y=a.getValue(h.getUnitId(),C.getSheetId(),g,R),N=s.getNumfmtValue(h.getUnitId(),C.getSheetId(),g,R),A=(y==null?void 0:y.pattern)||N;let $=l.t("sheet.numfmt.general");if(A){const H=ue.filter(k=>typeof k=="object"&&k.pattern).find(k=>W(A,k.pattern));H&&typeof H=="object"&&H.pattern?$=l.t(H.label):$=l.t("sheet.numfmt.moreFmt")}d.next($)}}));return{label:t,id:ne.id,tooltip:"sheet.numfmt.title",type:M.MenuItemType.SELECTOR,group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[M.MenuPosition.TOOLBAR_START],selections:[{label:{name:r,hoverable:!1}}],value$:m,hidden$:M.getMenuHiddenObservable(n,c.UniverInstanceType.SHEET),disabled$:u.getCurrentSheetDisabled$(n)}}};var en=Object.defineProperty,tn=Object.getOwnPropertyDescriptor,nn=(e,t,r,n)=>{for(var a=n>1?void 0:n?tn(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&en(t,r,a),a},Re=(e,t)=>(r,n)=>t(r,n,e);let me=class extends c.Disposable{constructor(e,t,r){super(),this._injector=e,this._componentManager=t,this._menuService=r,this._initMenu()}_initMenu(){[Qt,Xt,Jt,qt].map(e=>e(this._componentManager)).forEach(e=>{this.disposeWithMe(this._menuService.addMenuItem(e(this._injector)))})}};me=nn([c.OnLifecycle(c.LifecycleStages.Rendered,me),Re(0,S.Inject(S.Injector)),Re(1,S.Inject(M.ComponentManager)),Re(2,S.Inject(M.IMenuService))],me);var rn=Object.defineProperty,an=Object.getOwnPropertyDescriptor,sn=(e,t,r,n)=>{for(var a=n>1?void 0:n?an(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&rn(t,r,a),a},z=(e,t)=>(r,n)=>t(r,n,e);const on=[u.SetNumfmtMutation.id,u.RemoveNumfmtMutation.id];let de=class extends c.Disposable{constructor(e,t,r,n,a,s){super(),this._numfmtService=e,this._univerInstanceService=t,this._injector=r,this._refRangeService=n,this._sheetSkeletonManagerService=a,this._commandService=s,this._registerRefRange(),this._mergeRefMutations()}_mergeRefMutations(){this._refRangeService.interceptor.intercept(this._refRangeService.interceptor.getInterceptPoints().MERGE_REDO,{handler:(e,t,r)=>{if(!e)return r(e);const n=e.filter(a=>!on.includes(a.id));return n.push(...X(e)),r(n)}})}_registerRefRange(){this.disposeWithMe(c.toDisposable(x.merge(this._sheetSkeletonManagerService.currentSkeleton$.pipe(P.map(e=>e==null?void 0:e.sheetId),P.distinctUntilChanged()),this._numfmtService.modelReplace$).pipe(P.switchMap(()=>new x.Observable(e=>{const t=new c.DisposableCollection;return e.next(t),()=>{t.dispose()}}))).subscribe(e=>{const r=this._univerInstanceService.getCurrentUniverSheetInstance().getUnitId(),n=this._univerInstanceService.getCurrentUniverSheetInstance().getActiveSheet().getSheetId(),a=this._numfmtService.getModel(r,n),s=new Map,i=(o,l,f)=>{const m={startRow:l,startColumn:f,endRow:l,endColumn:f};let d=[];switch(o.id){case u.EffectRefRangId.DeleteRangeMoveLeftCommandId:{d=u.handleDeleteRangeMoveLeft(o,m);break}case u.EffectRefRangId.DeleteRangeMoveUpCommandId:{d=u.handleDeleteRangeMoveUp(o,m);break}case u.EffectRefRangId.InsertColCommandId:{d=u.handleInsertCol(o,m);break}case u.EffectRefRangId.InsertRangeMoveDownCommandId:{d=u.handleInsertRangeMoveDown(o,m);break}case u.EffectRefRangId.InsertRangeMoveRightCommandId:{d=u.handleInsertRangeMoveRight(o,m);break}case u.EffectRefRangId.InsertRowCommandId:{d=u.handleInsertRow(o,m);break}case u.EffectRefRangId.MoveRangeCommandId:{d=u.handleMoveRange(o,m);break}case u.EffectRefRangId.RemoveColCommandId:{d=u.handleIRemoveCol(o,m);break}case u.EffectRefRangId.RemoveRowCommandId:{d=u.handleIRemoveRow(o,m);break}case u.EffectRefRangId.MoveColsCommandId:{d=u.handleMoveCols(o,m);break}case u.EffectRefRangId.MoveRowsCommandId:d=u.handleMoveRows(o,m)}const v=u.runRefRangeMutations(d,m),h=this._numfmtService.getValue(r,n,l,f);if(!v&&h){const C={id:u.RemoveNumfmtMutation.id,params:{unitId:r,subUnitId:n,ranges:[{startColumn:f,startRow:l,endColumn:f,endRow:l}]}},_=u.factoryRemoveNumfmtUndoMutation(this._injector,C.params);return{redos:[C],undos:_}}if(h&&v){const C=[],_=[],g=[{pattern:h.pattern,type:h.type,row:v.startRow,col:v.startColumn}],R={id:u.SetNumfmtMutation.id,params:u.transformCellsToRange(r,n,g)},y=u.factorySetNumfmtUndoMutation(this._injector,R.params),N={id:u.RemoveNumfmtMutation.id,params:{unitId:r,subUnitId:n,ranges:[{startColumn:f,startRow:l,endColumn:f,endRow:l}]}},A=u.factoryRemoveNumfmtUndoMutation(this._injector,N.params);return C.push(R,N),_.push(...y,...A),{redos:C,undos:_.reverse()}}return{redos:[],undos:[]}};a&&a.forValue((o,l)=>{const f={startRow:o,startColumn:l,endRow:o,endColumn:l},m=this._refRangeService.registerRefRange(f,d=>i(d,o,l));s.set(`${o}_${l}`,m),e.add(m)}),e.add(c.toDisposable(new x.Observable(o=>{e.add(this._commandService.onCommandExecuted(l=>{[u.SetNumfmtMutation.id,u.RemoveNumfmtMutation.id].includes(l.id)&&o.next(l.params)}))}).pipe(P.filter(o=>o.unitId===r&&o.subUnitId===n),P.map(o=>o.ranges?o.ranges:o.values?Object.keys(o.values).reduce((l,f)=>{const m=o.values[f];return l.push(...m.ranges),l},[]):[]),P.bufferTime(300),P.map(o=>o.reduce((l,f)=>(l.push(...f),l),[])),P.filter(o=>!!o.length)).subscribe(o=>{o.forEach(l=>{c.Range.foreach(l,(f,m)=>{const d=`${f}_${m}`,v=s.get(d);if(s.delete(d),v&&v.dispose(),this._numfmtService.getValue(r,n,f,m)){const C={startRow:f,startColumn:m,endRow:f,endColumn:m},_=this._refRangeService.registerRefRange(C,g=>i(g,f,m));s.set(d,_),e.add(_)}})})})))})))}};de=sn([c.OnLifecycle(c.LifecycleStages.Rendered,de),z(0,S.Inject(u.INumfmtService)),z(1,S.Inject(c.IUniverInstanceService)),z(2,S.Inject(S.Injector)),z(3,S.Inject(u.RefRangeService)),z(4,S.Inject(O.SheetSkeletonManagerService)),z(5,S.Inject(c.ICommandService))],de);var cn=Object.defineProperty,ln=Object.getOwnPropertyDescriptor,un=(e,t,r,n)=>{for(var a=n>1?void 0:n?ln(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&cn(t,r,a),a},fe=(e,t)=>(r,n)=>t(r,n,e);let ve=class extends c.Disposable{constructor(e,t,r,n){super(),this._numfmtService=e,this._sheetInterceptorService=t,this._univerInstanceService=r,this._injector=n,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===u.RemoveSheetCommand.id){const t=e.params,r=t.unitId||mn(this._univerInstanceService),n=t.subUnitId||dn(this._univerInstanceService),a=this._numfmtService.getModel(r,n);if(!a)return{redos:[],undos:[]};const s=[];a.forValue((l,f)=>{s.push({startColumn:f,endColumn:f,startRow:l,endRow:l})});const i={unitId:r,subUnitId:n,ranges:u.rangeMerge(s)},o=u.factoryRemoveNumfmtUndoMutation(this._injector,i);return{redos:[{id:u.RemoveNumfmtMutation.id,params:i}],undos:o}}return{redos:[],undos:[]}}}))}};ve=un([c.OnLifecycle(c.LifecycleStages.Rendered,ve),fe(0,S.Inject(u.INumfmtService)),fe(1,S.Inject(u.SheetInterceptorService)),fe(2,S.Inject(c.IUniverInstanceService)),fe(3,S.Inject(S.Injector))],ve);const mn=e=>e.getCurrentUniverSheetInstance().getUnitId(),dn=e=>e.getCurrentUniverSheetInstance().getActiveSheet().getSheetId();var fn=Object.defineProperty,vn=Object.getOwnPropertyDescriptor,hn=(e,t,r,n)=>{for(var a=n>1?void 0:n?vn(t,r):t,s=e.length-1,i;s>=0;s--)(i=e[s])&&(a=(n?i(t,r,a):i(a))||a);return n&&a&&fn(t,r,a),a},gn=(e,t)=>(r,n)=>t(r,n,e);b.UniverSheetsNumfmtPlugin=(be=class extends c.Plugin{constructor(t,r){super(G),this._injector=r}onStarting(){this._injector.add([Se,{useClass:se,lazy:!1}]),this._injector.add([ce]),this._injector.add([ae]),this._injector.add([de]),this._injector.add([ve]),this._injector.add([oe]),this._injector.add([ee]),this._injector.add([te]),this._injector.add([le]),this._injector.add([me])}},B(be,"type",c.PluginType.Sheet),be),b.UniverSheetsNumfmtPlugin=hn([gn(1,S.Inject(S.Injector))],b.UniverSheetsNumfmtPlugin),b.SetNumfmtCommand=F,b.enUS=$e,b.getPatternPreview=ge,b.zhCN=Me,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,10 +1,22 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-numfmt",
3
- "version": "0.1.0-beta.4",
3
+ "version": "0.1.1",
4
4
  "private": false,
5
5
  "description": "UniverSheet numfmt plugin",
6
6
  "author": "DreamNum <developer@univer.ai>",
7
7
  "license": "Apache-2.0",
8
+ "funding": {
9
+ "type": "opencollective",
10
+ "url": "https://opencollective.com/univer"
11
+ },
12
+ "homepage": "https://univer.ai",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/dream-num/univer"
16
+ },
17
+ "bugs": {
18
+ "url": "https://github.com/dream-num/univer/issues"
19
+ },
8
20
  "keywords": [],
9
21
  "sideEffects": [
10
22
  "**/*.css"
@@ -39,37 +51,39 @@
39
51
  "npm": ">=8.0.0"
40
52
  },
41
53
  "peerDependencies": {
42
- "@wendellhu/redi": ">=0.12.13",
54
+ "@wendellhu/redi": "^0.13.0",
43
55
  "react": ">=16.9.0",
44
56
  "rxjs": ">=7.0.0",
45
- "@univerjs/core": "0.1.0-beta.4",
46
- "@univerjs/design": "0.1.0-beta.4",
47
- "@univerjs/engine-numfmt": "0.1.0-beta.4",
48
- "@univerjs/engine-render": "0.1.0-beta.4",
49
- "@univerjs/sheets": "0.1.0-beta.4",
50
- "@univerjs/sheets-ui": "0.1.0-beta.4",
51
- "@univerjs/ui": "0.1.0-beta.4"
57
+ "@univerjs/core": "0.1.1",
58
+ "@univerjs/design": "0.1.1",
59
+ "@univerjs/engine-formula": "0.1.1",
60
+ "@univerjs/engine-numfmt": "0.1.1",
61
+ "@univerjs/engine-render": "0.1.1",
62
+ "@univerjs/sheets-ui": "0.1.1",
63
+ "@univerjs/sheets": "0.1.1",
64
+ "@univerjs/ui": "0.1.1"
52
65
  },
53
66
  "dependencies": {
54
- "@univerjs/icons": "^0.1.27"
67
+ "@univerjs/icons": "^0.1.28"
55
68
  },
56
69
  "devDependencies": {
57
- "@types/react": "^18.2.48",
58
- "@wendellhu/redi": "^0.12.13",
70
+ "@types/react": "^18.2.57",
71
+ "@wendellhu/redi": "^0.13.0",
59
72
  "less": "^4.2.0",
60
73
  "react": "^18.2.0",
61
74
  "rxjs": "^7.8.1",
62
75
  "typescript": "^5.3.3",
63
- "vite": "^5.0.12",
64
- "vitest": "^1.2.1",
65
- "@univerjs/core": "0.1.0-beta.4",
66
- "@univerjs/design": "0.1.0-beta.4",
67
- "@univerjs/shared": "0.1.0-beta.4",
68
- "@univerjs/engine-numfmt": "0.1.0-beta.4",
69
- "@univerjs/sheets": "0.1.0-beta.4",
70
- "@univerjs/sheets-ui": "0.1.0-beta.4",
71
- "@univerjs/ui": "0.1.0-beta.4",
72
- "@univerjs/engine-render": "0.1.0-beta.4"
76
+ "vite": "^5.1.4",
77
+ "vitest": "^1.3.1",
78
+ "@univerjs/core": "0.1.1",
79
+ "@univerjs/engine-numfmt": "0.1.1",
80
+ "@univerjs/design": "0.1.1",
81
+ "@univerjs/engine-formula": "0.1.1",
82
+ "@univerjs/engine-render": "0.1.1",
83
+ "@univerjs/sheets": "0.1.1",
84
+ "@univerjs/shared": "0.1.1",
85
+ "@univerjs/sheets-ui": "0.1.1",
86
+ "@univerjs/ui": "0.1.1"
73
87
  },
74
88
  "scripts": {
75
89
  "test": "vitest run",