@univerjs/sheets-numfmt 0.1.12 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,36 @@
1
+ {
2
+ "sheet": {
3
+ "numfmt": {
4
+ "percent": "Percentage",
5
+ "title": "Number format",
6
+ "numfmtType": "Format types",
7
+ "cancel": "Cancel",
8
+ "confirm": "Confirm",
9
+ "general": "General",
10
+ "accounting": "Accounting",
11
+ "text": "Text",
12
+ "number": "Number",
13
+ "currency": "Currency",
14
+ "date": "Date",
15
+ "time": "Time",
16
+ "thousandthPercentile": "Thousands separator",
17
+ "preview": "Preview",
18
+ "dateTime": "Date and time",
19
+ "decimalLength": "Decimal places",
20
+ "currencyType": "Currency Symbol",
21
+ "moreFmt": "More Formats",
22
+ "financialValue": "Financial value",
23
+ "roundingCurrency": "Rounding up the currency",
24
+ "timeDuration": "Duration Time",
25
+ "currencyDes": "The currency format is used to represent general currency values. The accounting format aligns a column of values with decimal points",
26
+ "accountingDes": "The accounting number format aligns a column of values with currency symbols and decimal points",
27
+ "dateType": "Date Type",
28
+ "dateDes": "The date format presents date and time series values as date values.",
29
+ "negType": "A negative number type",
30
+ "generalDes": "The regular format does not contain any specific number format.",
31
+ "thousandthPercentileDes": "The percentile format is used for the representation of ordinary numbers. Monetary and accounting formats provide a specialized format for monetary value calculations.",
32
+ "addDecimal": "Increase decimal places",
33
+ "subtractDecimal": "Decreasing decimal places"
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "sheet": {
3
+ "numfmt": {
4
+ "percent": "Процент",
5
+ "title": "Формат числа",
6
+ "numfmtType": "Типы форматов",
7
+ "cancel": "Отмена",
8
+ "confirm": "Подтвердить",
9
+ "general": "Общий",
10
+ "accounting": "Бухгалтерский",
11
+ "text": "Текст",
12
+ "number": "Число",
13
+ "currency": "Валюта",
14
+ "date": "Дата",
15
+ "time": "Время",
16
+ "thousandthPercentile": "Разделитель тысяч",
17
+ "preview": "Предпросмотр",
18
+ "dateTime": "Дата и время",
19
+ "decimalLength": "Десятичные знаки",
20
+ "currencyType": "Символ валюты",
21
+ "moreFmt": "Другие форматы",
22
+ "financialValue": "Финансовое значение",
23
+ "roundingCurrency": "Округление валюты",
24
+ "timeDuration": "Продолжительность времени",
25
+ "currencyDes": "Формат валюты используется для представления общих значений валюты. Формат бухгалтерского учета выравнивает столбец значений по десятичным точкам.",
26
+ "accountingDes": "Формат бухгалтерских чисел выравнивает столбец значений по символам валюты и десятичным точкам.",
27
+ "dateType": "Тип даты",
28
+ "dateDes": "Формат даты представляет значения времени и даты как значения даты.",
29
+ "negType": "Тип отрицательного числа",
30
+ "generalDes": "Обычный формат не содержит никакого специфического формата числа.",
31
+ "thousandthPercentileDes": "Формат процента используется для представления обычных чисел. Монетарные и бухгалтерские форматы предоставляют специальный формат для вычислений монетарных значений.",
32
+ "addDecimal": "Увеличить количество десятичных знаков",
33
+ "subtractDecimal": "Уменьшить количество десятичных знаков"
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "sheet": {
3
+ "numfmt": {
4
+ "percent": "百分比",
5
+ "title": "数字格式",
6
+ "numfmtType": "格式类型",
7
+ "cancel": "取消",
8
+ "confirm": "确认",
9
+ "general": "常规",
10
+ "accounting": "会计",
11
+ "text": "文本",
12
+ "number": "数值",
13
+ "currency": "货币",
14
+ "date": "日期",
15
+ "time": "时间",
16
+ "thousandthPercentile": "千分位符",
17
+ "preview": "示例",
18
+ "dateTime": "日期时间",
19
+ "decimalLength": "小数位数",
20
+ "currencyType": "货币类型",
21
+ "moreFmt": "更多格式",
22
+ "financialValue": "财务数值",
23
+ "roundingCurrency": "货币取整",
24
+ "timeDuration": "持续时间",
25
+ "currencyDes": "货币格式用于表示一般货币数值。会计格式可以对一列数值进行小数点对齐",
26
+ "accountingDes": "会计数字格式可对一列数值进行货币符号和小数点对齐",
27
+ "dateType": "日期类型",
28
+ "dateDes": "日期格式将日期和时间系列数值品示为日期值。",
29
+ "negType": "负数类型",
30
+ "generalDes": "常规格式不包含任何特定的数字格式。",
31
+ "thousandthPercentileDes": "千分位符格式用于一般数字的表示。货币和会计格式则提供货币值计算的专用格式。",
32
+ "addDecimal": "增加小数位",
33
+ "subtractDecimal": "减少小数位"
34
+ }
35
+ }
36
+ }
@@ -3,5 +3,4 @@ import { Disposable, LocaleService } from '@univerjs/core';
3
3
  export declare class NumfmtI18nController extends Disposable {
4
4
  private _localeService;
5
5
  constructor(_localeService: LocaleService);
6
- private _initLocal;
7
6
  }
@@ -14,6 +14,5 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  export { type ISetNumfmtCommandParams, SetNumfmtCommand } from './commands/commands/set-numfmt.command';
17
- export { enUS, zhCN, ruRU } from './locale';
18
17
  export { UniverSheetsNumfmtPlugin } from './numfmt-plugin';
19
18
  export { getPatternPreview } from './utils/pattern';
package/lib/umd/index.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(y,i){typeof exports=="object"&&typeof module<"u"?i(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")):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"],i):(y=typeof globalThis<"u"?globalThis:y||self,i(y.UniverSheetsNumfmt={},y.UniverCore,y.UniverSheets,y["@wendellhu/redi"],y.UniverSheetsUi,y.rxjs.operators,y.UniverEngineNumfmt,y.UniverEngineRender,y.UniverUi,y.rxjs,y.React,y.UniverDesign,y["@wendellhu/redi/react-bindings"]))})(this,function(y,i,h,I,W,L,E,fe,T,O,b,P,R){"use strict";var Ut=Object.defineProperty;var wt=(y,i,h)=>i in y?Ut(y,i,{enumerable:!0,configurable:!0,writable:!0,value:h}):y[i]=h;var w=(y,i,h)=>(wt(y,typeof i!="symbol"?i+"":i,h),h);var te;const x={id:"sheet.command.numfmt.set.numfmt",type:i.CommandType.COMMAND,handler:(e,t)=>{if(!t)return!1;const r=e.get(i.ICommandService),n=e.get(i.IUniverInstanceService),s=e.get(i.IUndoRedoService),a=h.getSheetCommandTarget(n,t);if(!a)return!1;const{unitId:c,subUnitId:l}=a,u=t.values.filter(p=>!!p.pattern),m=t.values.filter(p=>!p.pattern),f=h.transformCellsToRange(c,l,u),o={unitId:c,subUnitId:l,ranges:m.map(p=>({startColumn:p.col,startRow:p.row,endColumn:p.col,endRow:p.row}))},v=[],C=[];if(u.length){Object.keys(f.values).forEach(S=>{const g=f.values[S];g.ranges=h.rangeMerge(g.ranges)}),v.push({id:h.SetNumfmtMutation.id,params:f});const p=h.factorySetNumfmtUndoMutation(e,f);C.push(...p)}if(m.length){o.ranges=h.rangeMerge(o.ranges),v.push({id:h.RemoveNumfmtMutation.id,params:o});const p=h.factoryRemoveNumfmtUndoMutation(e,o);C.push(...p)}const _=i.sequenceExecute(v,r).result;return _&&s.pushUndoRedo({unitID:c,undoMutations:C,redoMutations:v}),_}},he={sheet:{numfmt:{percent:"Percentage",title:"Number format",numfmtType:"Format types",cancel:"Cancel",confirm:"Confirm",general:"General",accounting:"Accounting",text:"Text",number:"Number",currency:"Currency",date:"Date",time:"Time",thousandthPercentile:"Thousands separator",preview:"Preview",dateTime:"Date and time",decimalLength:"Decimal places",currencyType:"Currency Symbol",moreFmt:"More Formats",financialValue:"Financial value",roundingCurrency:"Rounding up the currency",timeDuration:"Duration Time",currencyDes:"The currency format is used to represent general currency values. The accounting format aligns a column of values with decimal points",accountingDes:"The accounting number format aligns a column of values with currency symbols and decimal points",dateType:"Date Type",dateDes:"The date format presents date and time series values as date values.",negType:"A negative number type",generalDes:"The regular format does not contain any specific number format.",thousandthPercentileDes:"The percentile format is used for the representation of ordinary numbers. Monetary and accounting formats provide a specialized format for monetary value calculations.",addDecimal:"Increase decimal places",subtractDecimal:"Decreasing decimal places"}}},pe={sheet:{numfmt:{percent:"百分比",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:"减少小数位"}}},Pe={sheet:{numfmt:{percent:"Процент",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:"Уменьшить количество десятичных знаков"}}},re="SHEET_NUMFMT_PLUGIN",k=e=>E.getInfo(e).type||"unknown",G=(e,t,r)=>{const n=E.getInfo(e),s=r===i.LocaleType.ZH_CN?"zh-CN":"en",a=n._partitions[1],c=E.format(e,t,{locale:s});return t<0?{result:c,color:a.color}:{result:c}};var De=Object.defineProperty,Ee=Object.getOwnPropertyDescriptor,Oe=(e,t,r,n)=>{for(var s=n>1?void 0:n?Ee(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&De(t,r,s),s},A=(e,t)=>(r,n)=>t(r,n,e);let z=class extends i.Disposable{constructor(e,t,r,n,s,a){super(),this._sheetInterceptorService=e,this._themeService=t,this._sheetSkeletonManagerService=r,this._commandService=n,this._numfmtService=s,this._localeService=a,this._initInterceptorCellContent()}_initInterceptorCellContent(){const e=new i.ObjectMatrix;this.disposeWithMe(this._sheetInterceptorService.intercept(h.INTERCEPTOR_POINT.CELL_CONTENT,{handler:(t,r,n)=>{const s=r.unitId,a=r.subUnitId,c=this._numfmtService.getValue(s,a,r.row,r.col);if(!c)return n(t);const l=t;if(!l||l.t!==i.CellValueType.NUMBER)return n(t);let u="";const m=e.getValue(r.row,r.col);if(m&&m.parameters===l.v)return n({...t,...m.result});const f=G(c.pattern,Number(l.v),this._localeService.getCurrentLocale());if(u=f.result,!u)return n(t);const o={v:u};if(f.color){const v=this._themeService.getCurrentTheme()[`${f.color}500`];v&&(o.interceptorStyle={cl:{rgb:v}})}return e.setValue(r.row,r.col,{result:o,parameters:l.v}),n({...t,...o})}})),this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(t.id===h.SetNumfmtMutation.id){const r=t.params;Object.keys(r.values).forEach(n=>{r.values[n].ranges.forEach(a=>{i.Range.foreach(a,(c,l)=>{e.realDeleteValue(c,l)})})})}})),this.disposeWithMe(i.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.pipe(L.map(t=>t==null?void 0:t.sheetId),L.distinctUntilChanged()).subscribe(()=>{e.reset()})))}};z=Oe([i.OnLifecycle(i.LifecycleStages.Rendered,z),A(0,I.Inject(h.SheetInterceptorService)),A(1,I.Inject(i.ThemeService)),A(2,I.Inject(W.SheetSkeletonManagerService)),A(3,I.Inject(i.ICommandService)),A(4,I.Inject(h.INumfmtService)),A(5,I.Inject(i.LocaleService))],z);const U=(e,t=0)=>{var n;return e&&(n=E.getInfo(e).maxDecimals)!=null?n:t},K=(e,t)=>{if(e&&!t||!e&&t)return!1;const r=m=>m.reduce((f,o)=>{if(f.isEnd)return f;const v=o.value||o.num;return o.type==="point"?(f.isEnd=!0,f):{...f,result:f.result+v}},{isEnd:!1,result:""}).result,n=E.getInfo(e)._partitions,s=E.getInfo(t)._partitions,a=r(n[0].tokens),c=r(s[0].tokens),l=r(n[1].tokens),u=r(s[1].tokens);return a===c&&l===u&&n[1].color===s[1].color},ve=e=>new Array(Math.min(Math.max(0,Number(e)),30)).fill(0).join(""),j=(e,t)=>e.split(";").map(n=>/\.0?/.test(n)?n.replace(/\.0*/g,`${t>0?".":""}${ve(Number(t||0))}`):/0([^0]?)|0$/.test(n)?n.replace(/0([^0]+)|0$/,`0${t>0?".":""}${ve(Number(t||0))}$1`):n).join(";"),xe=e=>/\.0?/.test(e)||/0([^0]?)|0$/.test(e),Se={id:"sheet.command.numfmt.add.decimal.command",type:i.CommandType.COMMAND,handler:async e=>{const t=e.get(i.ICommandService),r=e.get(h.SelectionManagerService),n=e.get(h.INumfmtService),s=e.get(i.IUniverInstanceService),a=r.getSelections();if(!a||!a.length)return!1;const c=h.getSheetCommandTarget(s);if(!c)return!1;const{unitId:l,subUnitId:u}=c;let m=0;a.forEach(C=>{i.Range.foreach(C.range,(_,p)=>{const S=n.getValue(l,u,_,p);if(!S)return;const g=U(S.pattern);m=g>m?g:m})});const f=m+1,o=j(`0${f>0?".0":""}`,f),v=[];return a.forEach(C=>{i.Range.foreach(C.range,(_,p)=>{const S=n.getValue(l,u,_,p);if(!S)v.push({row:_,col:p,pattern:o});else{const g=U(S.pattern),M=j(S.pattern,g+1);M!==S.pattern&&v.push({row:_,col:p,pattern:M})}})}),v.length?await t.executeCommand(x.id,{values:v}):!1}},Ue=[{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"}],we=[{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"}],ge=[{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"}],_e={id:"sheet.command.numfmt.set.currency",type:i.CommandType.COMMAND,handler:async e=>{const t=e.get(i.ICommandService),n=e.get(h.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const s=[],a=ge[0].suffix("¥");return n.forEach(l=>{i.Range.foreach(l.range,(u,m)=>{s.push({row:u,col:m,pattern:a,type:"currency"})})}),await t.executeCommand(x.id,{values:s})}},ye={id:"sheet.command.numfmt.subtract.decimal.command",type:i.CommandType.COMMAND,handler:async e=>{const t=e.get(i.ICommandService),r=e.get(h.SelectionManagerService),n=e.get(h.INumfmtService),s=e.get(i.IUniverInstanceService),a=r.getSelections();if(!a||!a.length)return!1;const c=h.getSheetCommandTarget(s);if(!c)return!1;const{unitId:l,subUnitId:u}=c;let m=0;a.forEach(_=>{i.Range.foreach(_.range,(p,S)=>{const g=n.getValue(l,u,p,S);if(!g)return;const M=U(g.pattern);m=M>m?M:m})});const f=m-1,o=j(`0${f>0?".0":"."}`,f),v=[];return a.forEach(_=>{i.Range.foreach(_.range,(p,S)=>{const g=n.getValue(l,u,p,S);if(!g)v.push({row:p,col:S,pattern:o});else{const M=U(g.pattern);v.push({row:p,col:S,pattern:j(g.pattern,M-1)})}})}),await t.executeCommand(x.id,{values:v})}},se={id:"sheet.operation.close.numfmt.panel",type:i.CommandType.OPERATION,handler:()=>!0},ae=I.createIdentifier("INumfmtController");i.runOnLifecycle(i.LifecycleStages.Rendered,ae);const Y={id:"sheet.operation.open.numfmt.panel",type:i.CommandType.OPERATION,handler:e=>(e.get(ae).openPanel(),!0)};var be={exports:{}},J={};/**
1
+ (function(C,a){typeof exports=="object"&&typeof module<"u"?a(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")):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"],a):(C=typeof globalThis<"u"?globalThis:C||self,a(C.UniverSheetsNumfmt={},C.UniverCore,C.UniverSheets,C["@wendellhu/redi"],C.UniverSheetsUi,C.rxjs.operators,C.UniverEngineNumfmt,C.UniverEngineRender,C.UniverUi,C.rxjs,C.React,C.UniverDesign,C["@wendellhu/redi/react-bindings"]))})(this,function(C,a,m,I,O,L,x,fe,M,D,y,E,R){"use strict";var Ot=Object.defineProperty;var xt=(C,a,m)=>a in C?Ot(C,a,{enumerable:!0,configurable:!0,writable:!0,value:m}):C[a]=m;var V=(C,a,m)=>(xt(C,typeof a!="symbol"?a+"":a,m),m);var te;const w={id:"sheet.command.numfmt.set.numfmt",type:a.CommandType.COMMAND,handler:(e,t)=>{if(!t)return!1;const s=e.get(a.ICommandService),n=e.get(a.IUniverInstanceService),r=e.get(a.IUndoRedoService),i=m.getSheetCommandTarget(n,t);if(!i)return!1;const{unitId:o,subUnitId:l}=i,u=t.values.filter(p=>!!p.pattern),d=t.values.filter(p=>!p.pattern),v=m.transformCellsToRange(o,l,u),c={unitId:o,subUnitId:l,ranges:d.map(p=>({startColumn:p.col,startRow:p.row,endColumn:p.col,endRow:p.row}))},h=[],b=[];if(u.length){Object.keys(v.values).forEach(S=>{const g=v.values[S];g.ranges=m.rangeMerge(g.ranges)}),h.push({id:m.SetNumfmtMutation.id,params:v});const p=m.factorySetNumfmtUndoMutation(e,v);b.push(...p)}if(d.length){c.ranges=m.rangeMerge(c.ranges),h.push({id:m.RemoveNumfmtMutation.id,params:c});const p=m.factoryRemoveNumfmtUndoMutation(e,c);b.push(...p)}const _=a.sequenceExecute(h,s).result;return _&&r.pushUndoRedo({unitID:o,undoMutations:b,redoMutations:h}),_}},se="SHEET_NUMFMT_PLUGIN",B=e=>x.getInfo(e).type||"unknown",G=(e,t,s)=>{const n=x.getInfo(e),r=s===a.LocaleType.ZH_CN?"zh-CN":"en",i=n._partitions[1],o=x.format(e,t,{locale:r});return t<0?{result:o,color:i.color}:{result:o}};var Ne=Object.defineProperty,Re=Object.getOwnPropertyDescriptor,Ee=(e,t,s,n)=>{for(var r=n>1?void 0:n?Re(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&Ne(t,s,r),r},k=(e,t)=>(s,n)=>t(s,n,e);let z=class extends a.Disposable{constructor(e,t,s,n,r,i){super(),this._sheetInterceptorService=e,this._themeService=t,this._sheetSkeletonManagerService=s,this._commandService=n,this._numfmtService=r,this._localeService=i,this._initInterceptorCellContent()}_initInterceptorCellContent(){const e=new a.ObjectMatrix;this.disposeWithMe(this._sheetInterceptorService.intercept(m.INTERCEPTOR_POINT.CELL_CONTENT,{handler:(t,s,n)=>{const r=s.unitId,i=s.subUnitId,o=this._numfmtService.getValue(r,i,s.row,s.col);if(!o)return n(t);const l=t;if(!l||l.t!==a.CellValueType.NUMBER)return n(t);let u="";const d=e.getValue(s.row,s.col);if(d&&d.parameters===l.v)return n({...t,...d.result});const v=G(o.pattern,Number(l.v),this._localeService.getCurrentLocale());if(u=v.result,!u)return n(t);const c={v:u};if(v.color){const h=this._themeService.getCurrentTheme()[`${v.color}500`];h&&(c.interceptorStyle={cl:{rgb:h}})}return e.setValue(s.row,s.col,{result:c,parameters:l.v}),n({...t,...c})},priority:10})),this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(t.id===m.SetNumfmtMutation.id){const s=t.params;Object.keys(s.values).forEach(n=>{s.values[n].ranges.forEach(i=>{a.Range.foreach(i,(o,l)=>{e.realDeleteValue(o,l)})})})}})),this.disposeWithMe(a.toDisposable(this._sheetSkeletonManagerService.currentSkeleton$.pipe(L.map(t=>t==null?void 0:t.sheetId),L.distinctUntilChanged()).subscribe(()=>{e.reset()})))}};z=Ee([a.OnLifecycle(a.LifecycleStages.Rendered,z),k(0,I.Inject(m.SheetInterceptorService)),k(1,I.Inject(a.ThemeService)),k(2,I.Inject(O.SheetSkeletonManagerService)),k(3,I.Inject(a.ICommandService)),k(4,I.Inject(m.INumfmtService)),k(5,I.Inject(a.LocaleService))],z);const U=(e,t=0)=>{var n;return e&&(n=x.getInfo(e).maxDecimals)!=null?n:t},K=(e,t)=>{if(e&&!t||!e&&t)return!1;const s=d=>d.reduce((v,c)=>{if(v.isEnd)return v;const h=c.value||c.num;return c.type==="point"?(v.isEnd=!0,v):{...v,result:v.result+h}},{isEnd:!1,result:""}).result,n=x.getInfo(e)._partitions,r=x.getInfo(t)._partitions,i=s(n[0].tokens),o=s(r[0].tokens),l=s(n[1].tokens),u=s(r[1].tokens);return i===o&&l===u&&n[1].color===r[1].color},ve=e=>new Array(Math.min(Math.max(0,Number(e)),30)).fill(0).join(""),N=(e,t)=>e.split(";").map(n=>/\.0?/.test(n)?n.replace(/\.0*/g,`${t>0?".":""}${ve(Number(t||0))}`):/0([^0]?)|0$/.test(n)?n.replace(/0([^0]+)|0$/,`0${t>0?".":""}${ve(Number(t||0))}$1`):n).join(";"),je=e=>/\.0?/.test(e)||/0([^0]?)|0$/.test(e),pe={id:"sheet.command.numfmt.add.decimal.command",type:a.CommandType.COMMAND,handler:async e=>{const t=e.get(a.ICommandService),s=e.get(m.SelectionManagerService),n=e.get(m.INumfmtService),r=e.get(a.IUniverInstanceService),i=s.getSelections();if(!i||!i.length)return!1;const o=m.getSheetCommandTarget(r);if(!o)return!1;const{unitId:l,subUnitId:u}=o;let d=0;i.forEach(b=>{a.Range.foreach(b.range,(_,p)=>{const S=n.getValue(l,u,_,p);if(!S)return;const g=U(S.pattern);d=g>d?g:d})});const v=d+1,c=N(`0${v>0?".0":""}`,v),h=[];return i.forEach(b=>{a.Range.foreach(b.range,(_,p)=>{const S=n.getValue(l,u,_,p);if(!S)h.push({row:_,col:p,pattern:c});else{const g=U(S.pattern),T=N(S.pattern,g+1);T!==S.pattern&&h.push({row:_,col:p,pattern:T})}})}),h.length?await t.executeCommand(w.id,{values:h}):!1}},Oe=[{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"}],xe=[{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"}],he=[{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"}],Se={id:"sheet.command.numfmt.set.currency",type:a.CommandType.COMMAND,handler:async e=>{const t=e.get(a.ICommandService),n=e.get(m.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const r=[],i=he[0].suffix("¥");return n.forEach(l=>{a.Range.foreach(l.range,(u,d)=>{r.push({row:u,col:d,pattern:i,type:"currency"})})}),await t.executeCommand(w.id,{values:r})}},ge={id:"sheet.command.numfmt.subtract.decimal.command",type:a.CommandType.COMMAND,handler:async e=>{const t=e.get(a.ICommandService),s=e.get(m.SelectionManagerService),n=e.get(m.INumfmtService),r=e.get(a.IUniverInstanceService),i=s.getSelections();if(!i||!i.length)return!1;const o=m.getSheetCommandTarget(r);if(!o)return!1;const{unitId:l,subUnitId:u}=o;let d=0;i.forEach(_=>{a.Range.foreach(_.range,(p,S)=>{const g=n.getValue(l,u,p,S);if(!g)return;const T=U(g.pattern);d=T>d?T:d})});const v=d-1,c=N(`0${v>0?".0":"."}`,v),h=[];return i.forEach(_=>{a.Range.foreach(_.range,(p,S)=>{const g=n.getValue(l,u,p,S);if(!g)h.push({row:p,col:S,pattern:c});else{const T=U(g.pattern);h.push({row:p,col:S,pattern:N(g.pattern,T-1)})}})}),await t.executeCommand(w.id,{values:h})}},re={id:"sheet.operation.close.numfmt.panel",type:a.CommandType.OPERATION,handler:()=>!0},ie=I.createIdentifier("INumfmtController");a.runOnLifecycle(a.LifecycleStages.Rendered,ie);const Y={id:"sheet.operation.open.numfmt.panel",type:a.CommandType.OPERATION,handler:e=>(e.get(ie).openPanel(),!0)};var _e={exports:{}},J={};/**
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 Le=b,Ae=Symbol.for("react.element"),Ve=Symbol.for("react.fragment"),$e=Object.prototype.hasOwnProperty,He=Le.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Fe={key:!0,ref:!0,__self:!0,__source:!0};function Ce(e,t,r){var n,s={},a=null,c=null;r!==void 0&&(a=""+r),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(c=t.ref);for(n in t)$e.call(t,n)&&!Fe.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:Ae,type:e,key:a,ref:c,props:s,_owner:He.current}}J.Fragment=Ve,J.jsx=Ce,J.jsxs=Ce,be.exports=J;var d=be.exports;const ie=b.createContext([]),ce=["$","£","¥","¤","֏","؋","৳","฿","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"];var Be=Object.defineProperty,We=Object.getOwnPropertyDescriptor,ke=(e,t,r,n)=>{for(var s=n>1?void 0:n?We(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&Be(t,r,s),s},Ge=(e,t)=>(r,n)=>t(r,n,e);let Z=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(a=>a===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((a,c,l)=>{const u=l.length;return{value:a,priority:u-c}});return t.sort((a,c)=>{var m,f;const l=((m=s.find(o=>o.value===a))==null?void 0:m.priority)||-1;return(((f=s.find(o=>o.value===c))==null?void 0:f.priority)||-1)-l})}return n||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};Z=ke([Ge(0,I.Inject(i.ILocalStorageService))],Z);const Ie="numfmtCurrency",ze=e=>{const t=R.useDependency(Z),[r,n]=b.useState(ce);return b.useEffect(()=>{t.addHabit("numfmtCurrency",[]).then(()=>{t.getHabit(Ie,[...ce]).then(a=>{n(a),e&&e(a)})})},[]),{userHabitCurrency:r,mark:a=>{t.markHabit(Ie,a)}}},Ke=()=>{const e=b.useRef([]),[t,r]=b.useState({});return b.useEffect(()=>{e.current.forEach(s=>{s()}),e.current=[]},[t]),s=>{e.current.push(s),r({})}},$=e=>ce.find(r=>e.includes(r)),Ye=e=>!!$(e)&&e.startsWith("_("),Je=e=>{const[t,r]=b.useState(()=>U(e.defaultPattern||"",2)),n=b.useContext(ie),[s,a]=b.useState(()=>$(e.defaultPattern)||n[0]),c=b.useMemo(()=>n.map(o=>({label:o,value:o})),[]),u=R.useDependency(i.LocaleService).t;e.action.current=()=>j(`_("${s}"* #,##0${t>0?".0":""}_)`,t);const m=o=>{a(o),e.onChange(j(`_("${o}"* #,##0${t>0?".0":""}_)`,t))},f=o=>{const v=o||0;r(v),e.onChange(j(`_("${s}"* #,##0${v>0?".0":""}_)`,v))};return d.jsxs("div",{children:[d.jsxs("div",{className:"m-t-16 options ",children:[d.jsxs("div",{className:"option",children:[d.jsx("div",{className:"label",children:u("sheet.numfmt.decimalLength")}),d.jsx("div",{className:"m-t-8 w-120",children:d.jsx(P.InputNumber,{value:t,max:20,min:0,onChange:f})})]}),d.jsxs("div",{className:"option",children:[d.jsx("div",{className:"label",children:u("sheet.numfmt.currencyType")}),d.jsx("div",{className:"m-t-8 w-140",children:d.jsx(P.Select,{onChange:m,options:c,value:s})})]})]}),d.jsx("div",{className:"describe m-t-14",children:u("sheet.numfmt.accountingDes")})]})},oe=e=>ge.map(t=>({label:t.label(e),value:t.suffix(e),color:t.color})),Te=()=>Ue.map(e=>({label:e.label,value:e.suffix})),Me=()=>we.map(e=>({label:e.label,value:e.suffix,color:e.color})),Ze=e=>!!$(e)&&!e.startsWith("_("),Qe=e=>{const r=R.useDependency(i.LocaleService).t,n=b.useContext(ie),[s,a]=b.useState(()=>$(e.defaultPattern)||n[0]),[c,l]=b.useState(()=>U(e.defaultPattern||"",2)),[u,m]=b.useState(()=>{var g;const p=oe(s);return((g=p.find(M=>K(M.value,e.defaultPattern)))==null?void 0:g.value)||p[0].value}),f=b.useMemo(()=>oe(s),[s]),o=b.useMemo(()=>n.map(p=>({label:p,value:p})),[n]);e.action.current=()=>j(u,c);const v=p=>{a(p);const S=oe(p)[0].value;m(S),e.onChange(j(S,c))},C=p=>{m(p),e.onChange(j(p,c))},_=p=>{l(p||0),e.onChange(j(u,p||0))};return d.jsxs("div",{children:[d.jsxs("div",{className:"m-t-16 options ",children:[d.jsxs("div",{className:"option",children:[d.jsx("div",{className:"label",children:r("sheet.numfmt.decimalLength")}),d.jsx("div",{className:"m-t-8 w-120",children:d.jsx(P.InputNumber,{value:c,max:20,min:0,onChange:_})})]}),d.jsxs("div",{className:"option",children:[d.jsx("div",{className:"label",children:r("sheet.numfmt.currencyType")}),d.jsx("div",{className:"m-t-8 w-140",children:d.jsx(P.Select,{onChange:v,options:o,value:s})})]})]}),d.jsx("div",{className:"m-t-16 label",children:r("sheet.numfmt.negType")}),d.jsx("div",{className:"m-t-8",children:d.jsx(P.SelectList,{onChange:C,options:f,value:u})}),d.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.currencyDes")})]})},Xe=e=>{const t=E.getInfo(e);return Te().map(r=>r.value).includes(e)||["date","datetime","time"].includes(t.type)},qe=e=>{const t=b.useMemo(Te,[]),n=R.useDependency(i.LocaleService).t,[s,a]=b.useState(()=>{if(e.defaultPattern){const l=t.find(u=>u.value===e.defaultPattern);if(l)return l.value}return t[0].value});e.action.current=()=>s;const c=l=>{a(l),e.onChange(l)};return d.jsxs("div",{children:[d.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),d.jsx("div",{className:"m-t-8",children:d.jsx(P.SelectList,{value:s,options:t,onChange:c})}),d.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},et=e=>!e,tt=e=>{const r=R.useDependency(i.LocaleService).t;return e.action.current=()=>"",d.jsx("div",{children:d.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.generalDes")})})},nt=e=>Me().some(t=>K(t.value,e)),rt=e=>{const t=R.useDependency(i.LocaleService),r=b.useMemo(Me,[]),[n,s]=b.useState(()=>U(e.defaultPattern||"",0)),[a,c]=b.useState(()=>{const o=r.find(v=>K(v.value,e.defaultPattern||""));return(o==null?void 0:o.value)||r[0].value}),l=b.useMemo(()=>j(a,Number(n||0)),[a,n]),u=b.useMemo(()=>!xe(a),[a]),m=o=>{s(o||0),e.onChange(j(a,Number(o||0)))},f=o=>{s(U(o,0)),c(o),e.onChange(o)};return e.action.current=()=>l,d.jsxs("div",{children:[d.jsx("div",{className:"m-t-16 label",children:t.t("sheet.numfmt.decimalLength")}),d.jsx("div",{className:"m-t-8",children:d.jsx(P.InputNumber,{disabled:u,value:n,max:20,min:0,onChange:m})}),d.jsxs("div",{className:"m-t-16 label",children:[" ",t.t("sheet.numfmt.negType")]}),d.jsx("div",{className:"m-t-8",children:d.jsx(P.SelectList,{onChange:f,options:r,value:a})}),d.jsx("div",{className:"describe m-t-14",children:t.t("sheet.numfmt.thousandthPercentileDes")})]})},st=e=>{const{defaultValue:t,defaultPattern:r,row:n,col:s}=e.value,a=R.useDependency(i.LocaleService),c=b.useRef(()=>""),l=a.t,u=Ke(),m=b.useMemo(()=>[{label:"sheet.numfmt.general",component:tt},{label:"sheet.numfmt.accounting",component:Je},{label:"sheet.numfmt.currency",component:Qe},{label:"sheet.numfmt.date",component:qe},{label:"sheet.numfmt.thousandthPercentile",component:rt}].map(N=>({...N,label:l(N.label)})),[]),[f,o]=b.useState(g),[v,C]=b.useState(()=>`${n}_${s}`),{mark:_,userHabitCurrency:p}=ze(()=>C(`${n}_${s}_userCurrency'`)),S=b.useMemo(()=>{var N;return(N=m.find(V=>V.label===f))==null?void 0:N.component},[f]);function g(){return[et,Ye,Ze,Xe,nt].reduce((V,Ot,xt)=>V||(Ot(r)?m[xt].label:""),"")||m[0].label}const M=m.map(N=>({label:N.label,value:N.label})),B=N=>{o(N),u(()=>e.onChange({type:"change",value:c.current()||""}))},ne=N=>{e.onChange({type:"change",value:N})},ue=()=>{const N=c.current()||"",V=$(N);V&&_(V),e.onChange({type:"confirm",value:N})},me=()=>{e.onChange({type:"cancel",value:""})},de={onChange:ne,defaultValue:t,defaultPattern:r,action:c};return b.useEffect(()=>{o(g()),C(`${n}_${s}`)},[n,s]),d.jsxs("div",{className:"numfmt-panel p-b-20",children:[d.jsxs("div",{children:[d.jsx("div",{className:"label m-t-14",children:l("sheet.numfmt.numfmtType")}),d.jsx("div",{className:"m-t-8",children:d.jsx(P.Select,{onChange:B,options:M,value:f})}),d.jsx("div",{children:S&&d.jsx(ie.Provider,{value:p,children:b.createElement(S,{...de,key:v})})})]}),d.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[d.jsx(P.Button,{size:"small",onClick:me,className:"m-r-12",children:l("sheet.numfmt.cancel")}),d.jsx(P.Button,{type:"primary",size:"small",onClick:ue,children:l("sheet.numfmt.confirm")})]})]})},Ne={id:"sheet.command.numfmt.set.percent",type:i.CommandType.COMMAND,handler:async e=>{const t=e.get(i.ICommandService),n=e.get(h.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const s=[],a="0%";return n.forEach(l=>{i.Range.foreach(l.range,(u,m)=>{s.push({row:u,col:m,pattern:a,type:"percent"})})}),await t.executeCommand(x.id,{values:s})}};var at=Object.defineProperty,it=Object.getOwnPropertyDescriptor,ct=(e,t,r,n)=>{for(var s=n>1?void 0:n?it(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&at(t,r,s),s},D=(e,t)=>(r,n)=>t(r,n,e);let Q=class extends i.Disposable{constructor(t,r,n,s,a,c,l,u,m,f,o){super();w(this,"_previewPattern","");w(this,"_sidebarDisposable",null);this._sheetInterceptorService=t,this._themeService=r,this._univerInstanceService=n,this._sheetSkeletonManagerService=s,this._commandService=a,this._selectionManagerService=c,this._renderManagerService=l,this._numfmtService=u,this._componentManager=m,this._sidebarService=f,this._localeService=o,this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener()}openPanel(){const t=this._sidebarService,r=this._selectionManagerService,n=this._commandService,s=this._univerInstanceService,a=this._numfmtService,c=this._localeService,u=(r.getSelectionRanges()||[])[0];if(!u)return!1;const m=s.getCurrentUnitForType(i.UniverInstanceType.UNIVER_SHEET),f=m.getActiveSheet(),o=f.getCellRaw(u.startRow,u.startColumn),v=a.getValue(m.getUnitId(),f.getSheetId(),u.startRow,u.startColumn);let C="";v&&(C=v.pattern);const _=(o==null?void 0:o.t)===i.CellValueType.NUMBER?o.v:12345678,p={onChange:S=>{var g,M;if(S.type==="change")this._previewPattern=S.value,this._sheetSkeletonManagerService.reCalculate(),(M=(g=this._renderManagerService.getRenderById(m.getUnitId()))==null?void 0:g.mainComponent)==null||M.makeDirty();else if(S.type==="confirm"){const B=r.getSelectionRanges()||[],ne={values:[]},ue=k(S.value);B.forEach(me=>{i.Range.foreach(me,(de,N)=>{ne.values.push({row:de,col:N,pattern:S.value,type:ue})})}),n.executeCommand(x.id,ne),t.close()}else S.type==="cancel"&&t.close()},value:{defaultPattern:C,defaultValue:_,row:u.startRow,col:u.startColumn}};return this._sidebarDisposable=t.open({header:{title:c.t("sheet.numfmt.title")},children:{label:re,...p},onClose:()=>{var S,g;this._sheetSkeletonManagerService.reCalculate(),(g=(S=this._renderManagerService.getRenderById(m.getUnitId()))==null?void 0:S.mainComponent)==null||g.makeDirty(),n.executeCommand(se.id)}}),!0}_initCommands(){[Se,ye,_e,Ne,Y,se,x].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}_initPanel(){this._componentManager.register(re,st)}_initRealTimeRenderingInterceptor(){const t=new O.Observable(n=>{this._commandService.onCommandExecuted(s=>{s.id===Y.id&&n.next(!0),s.id===se.id&&n.next(!1)})}),r=O.combineLatest([t,this._selectionManagerService.selectionMoveEnd$.pipe(L.map(n=>n?n.map(s=>s.range):[]))]);this.disposeWithMe(i.toDisposable(r.pipe(L.switchMap(([n,s])=>new O.Observable(a=>{const c=new i.DisposableCollection;return n&&s.length&&a.next({selectionRanges:s,disposableCollection:c}),()=>{c.dispose()}})),L.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:s})=>{var c,l;const a=this._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_SHEET);this.openPanel(),n.add(this._sheetInterceptorService.intercept(h.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,handler:(u,m,f)=>{const{row:o,col:v}=m,C=f(u)||{};if(s.find(_=>_.startColumn<=v&&_.endColumn>=v&&_.startRow<=o&&_.endRow>=o)){const _=m.worksheet.getCellRaw(o,v),p=_==null?void 0:_.v,S=_==null?void 0:_.t;if(p==null||S!==i.CellValueType.NUMBER||this._previewPattern===null)return C;const g=G(this._previewPattern,p,this._localeService.getCurrentLocale());if(g.color){const B=this._themeService.getCurrentTheme()[`${g.color}500`];return{...C,v:g.result,t:i.CellValueType.STRING,s:{cl:{rgb:B}}}}return{...C,v:g.result,t:i.CellValueType.STRING}}return C}})),(l=(c=this._renderManagerService.getRenderById(a.getUnitId()))==null?void 0:c.mainComponent)==null||l.makeDirty()})))}_commandExecutedListener(){const t=[h.RemoveNumfmtMutation.id,h.SetNumfmtMutation.id];this.disposeWithMe(i.toDisposable(O.merge(new O.Observable(r=>{const n=this._commandService.onCommandExecuted(s=>{if(t.includes(s.id)){const a=s.params;r.next(a.unitId)}});return()=>{n.dispose()}})).pipe(L.debounceTime(16)).subscribe(r=>{var n,s;this._sheetSkeletonManagerService.reCalculate(),(s=(n=this._renderManagerService.getRenderById(r))==null?void 0:n.mainComponent)==null||s.makeDirty()})))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET).subscribe(t=>{var r;t||((r=this._sidebarDisposable)==null||r.dispose(),this._sidebarDisposable=null)})}};Q=ct([i.OnLifecycle(i.LifecycleStages.Rendered,Q),D(0,I.Inject(h.SheetInterceptorService)),D(1,I.Inject(i.ThemeService)),D(2,i.IUniverInstanceService),D(3,I.Inject(W.SheetSkeletonManagerService)),D(4,i.ICommandService),D(5,I.Inject(h.SelectionManagerService)),D(6,fe.IRenderManagerService),D(7,h.INumfmtService),D(8,I.Inject(T.ComponentManager)),D(9,T.ISidebarService),D(10,I.Inject(i.LocaleService))],Q);var ot=Object.defineProperty,lt=Object.getOwnPropertyDescriptor,ut=(e,t,r,n)=>{for(var s=n>1?void 0:n?lt(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&ot(t,r,s),s},H=(e,t)=>(r,n)=>t(r,n,e);const mt=()=>{let e=[];return{add:(s,a,c,l,u)=>e.push({unitId:s,subUnitId:a,row:c,col:l,value:u}),getEffects:()=>e,clean:()=>{e=[]}}};let X=class extends i.Disposable{constructor(t,r,n,s,a){super();w(this,"_collectEffectMutation",mt());this._sheetInterceptorService=t,this._numfmtService=r,this._univerInstanceService=n,this._injector=s,this._editorBridgeService=a,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this.disposeWithMe(i.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:(t,r,n)=>{const s=r.row,a=r.col,c=this._numfmtService.getValue(r.unitId,r.subUnitId,s,a);if(c)switch(k(c.pattern)){case"scientific":case"percent":case"currency":case"grouped":case"number":return r.worksheet.getCellRaw(s,a);case"date":case"time":case"datetime":default:return n&&n(t)}return n(t)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(i.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:(t,r,n)=>{var f;this._collectEffectMutation.clean();const s=this._numfmtService.getValue(r.unitId,r.subUnitId,r.row,r.col),a=(f=s&&k(s.pattern))!=null?f:"",c=()=>{s&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,null)};if(!(t!=null&&t.v))return n(t);const l=String(t.v),u=E.parseDate(l)||E.parseTime(l);if(!!u){if(u&&u.z){const o=Number(u.v);return this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,{pattern:u.z}),{...t,v:o,t:i.CellValueType.NUMBER}}}else(["date","time","datetime"].includes(a)||!dt(l))&&c();return n(t)}})))}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){switch(r.id){case h.SetRangeValuesCommand.id:{const n=t._univerInstanceService.getCurrentUnitForType(i.UniverInstanceType.UNIVER_SHEET),s=n.getUnitId(),a=n.getActiveSheet().getSheetId(),c=t._collectEffectMutation.getEffects();if(!c.length)return{redos:[],undos:[]};const l=c.filter(o=>{var v;return!!((v=o.value)!=null&&v.pattern)}).map(o=>({row:o.row,col:o.col,pattern:o.value.pattern})),u=c.filter(o=>{var v;return!((v=o.value)!=null&&v.pattern)}).map(o=>({startRow:o.row,endColumn:o.col,startColumn:o.col,endRow:o.row})),m=[],f=[];if(l){const o={id:h.SetNumfmtMutation.id,params:h.transformCellsToRange(s,a,l)};m.push(o),f.push(...h.factorySetNumfmtUndoMutation(t._injector,o.params))}if(u){const o={id:h.RemoveNumfmtMutation.id,params:{unitId:s,subUnitId:a,ranges:u}};m.push(o),f.push(...h.factoryRemoveNumfmtUndoMutation(t._injector,o.params))}return{redos:m,undos:f.reverse()}}}return{redos:[],undos:[]}}}))}};X=ut([i.OnLifecycle(i.LifecycleStages.Rendered,X),H(0,I.Inject(h.SheetInterceptorService)),H(1,I.Inject(h.INumfmtService)),H(2,I.Inject(i.IUniverInstanceService)),H(3,I.Inject(I.Injector)),H(4,I.Inject(W.IEditorBridgeService))],X);function dt(e){return/^-?\d+(\.\d+)?$/.test(e)}var ft=Object.defineProperty,ht=Object.getOwnPropertyDescriptor,pt=(e,t,r,n)=>{for(var s=n>1?void 0:n?ht(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&ft(t,r,s),s},vt=(e,t)=>(r,n)=>t(r,n,e);let q=class extends i.Disposable{constructor(t){super();w(this,"_initLocal",()=>{this._localeService.load({zhCN:pe,enUS:he})});this._localeService=t,this._initLocal()}};q=pt([i.OnLifecycle(i.LifecycleStages.Rendered,q),vt(0,I.Inject(i.LocaleService))],q);const ee=[{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:""}],je="sheet.numfmt.moreNumfmtType",Re="sheet.numfmt.moreNumfmtType.options",St=e=>{var n;const t=R.useDependency(i.LocaleService),r=(n=e.value)!=null?n:t.t("sheet.numfmt.general");return d.jsx("span",{className:"more-numfmt-type",children:r})},gt=()=>{const e=R.useDependency(i.ICommandService),t=R.useDependency(i.LocaleService),r=R.useInjector(),n=R.useDependency(h.SelectionManagerService),s=l=>{const u=n.getLast();if(!u)return;const m=r.get(fe.ITextSelectionRenderManager),f=u.range,o=[];i.Range.foreach(f,(v,C)=>{l?o.push({row:v,col:C,pattern:l,type:k(l)}):o.push({row:v,col:C})}),e.executeCommand(x.id,{values:o}),m.focus()},a=l=>{if(l===0)s(null);else if(l===ee.length-1)e.executeCommand(Y.id);else{const u=ee[l];u.pattern&&s(u.pattern)}},c=1220;return d.jsx("div",{className:"more-numfmt-type-options",children:ee.map((l,u)=>l==="|"?d.jsx("div",{className:"line m-t-4",onClick:m=>m.stopPropagation()},u):d.jsxs("div",{className:"option-item m-t-4",onClick:()=>{a(u)},children:[d.jsx("div",{children:t.t(l.label)}),d.jsx("div",{className:"m-l-26",children:l.pattern?G(l.pattern||"",c,t.getCurrentLocale()).result:""})]},u))})},_t=e=>({icon:"RmbSingle",id:_e.id,title:"sheet.numfmt.currency",tooltip:"sheet.numfmt.currency",type:T.MenuItemType.BUTTON,group:T.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[T.MenuPosition.TOOLBAR_START],hidden$:T.getMenuHiddenObservable(e,i.UniverInstanceType.UNIVER_SHEET),disabled$:h.getCurrentSheetDisabled$(e)}),yt=e=>({icon:"AddDigitsSingle",id:Se.id,title:"sheet.numfmt.addDecimal",tooltip:"sheet.numfmt.addDecimal",type:T.MenuItemType.BUTTON,positions:[T.MenuPosition.TOOLBAR_START],group:T.MenuGroup.TOOLBAR_FORMULAS_INSERT,hidden$:T.getMenuHiddenObservable(e,i.UniverInstanceType.UNIVER_SHEET),disabled$:h.getCurrentSheetDisabled$(e)}),bt=e=>({icon:"ReduceDigitsSingle",id:ye.id,title:"sheet.numfmt.subtractDecimal",tooltip:"sheet.numfmt.subtractDecimal",type:T.MenuItemType.BUTTON,group:T.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[T.MenuPosition.TOOLBAR_START],hidden$:T.getMenuHiddenObservable(e,i.UniverInstanceType.UNIVER_SHEET),disabled$:h.getCurrentSheetDisabled$(e)}),Ct=e=>({icon:"PercentSingle",id:Ne.id,title:"sheet.numfmt.percent",tooltip:"sheet.numfmt.percent",type:T.MenuItemType.BUTTON,group:T.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[T.MenuPosition.TOOLBAR_START],hidden$:T.getMenuHiddenObservable(e,i.UniverInstanceType.UNIVER_SHEET),disabled$:h.getCurrentSheetDisabled$(e)}),It=e=>{const t=e.get(h.INumfmtService),r=e.get(i.IUniverInstanceService),n=e.get(i.ICommandService),s=e.get(i.LocaleService),a=e.get(h.SelectionManagerService),c=W.deriveStateFromActiveSheet$(r,"",({workbook:l,worksheet:u})=>new O.Observable(m=>O.merge(a.selectionMoveEnd$,new O.Observable(f=>{const o=[h.RemoveNumfmtMutation.id,h.SetNumfmtMutation.id],v=n.onCommandExecuted(C=>{o.includes(C.id)&&f.next(null)});return()=>v.dispose()})).subscribe(()=>{const f=a.getSelections();if(f&&f[0]){const o=f[0].range,v=o.startRow,C=o.startColumn,_=t.getValue(l.getUnitId(),u.getSheetId(),v,C),p=_==null?void 0:_.pattern;let S=s.t("sheet.numfmt.general");if(p){const g=ee.filter(M=>typeof M=="object"&&M.pattern).find(M=>K(p,M.pattern));g&&typeof g=="object"&&g.pattern?S=s.t(g.label):S=s.t("sheet.numfmt.moreFmt")}m.next(S)}})));return{label:je,id:Y.id,tooltip:"sheet.numfmt.title",type:T.MenuItemType.SELECTOR,group:T.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[T.MenuPosition.TOOLBAR_START],selections:[{label:{name:Re,hoverable:!1}}],value$:c,hidden$:T.getMenuHiddenObservable(e,i.UniverInstanceType.UNIVER_SHEET),disabled$:h.getCurrentSheetDisabled$(e)}};var Tt=Object.defineProperty,Mt=Object.getOwnPropertyDescriptor,Nt=(e,t,r,n)=>{for(var s=n>1?void 0:n?Mt(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&Tt(t,r,s),s},le=(e,t)=>(r,n)=>t(r,n,e);const jt={};let F=class extends i.Disposable{constructor(e,t,r,n){super(),this._config=e,this._injector=t,this._componentManager=r,this._menuService=n,this._initMenu()}_initMenu(){const{menu:e={}}=this._config;[Ct,yt,bt,_t,It].forEach(t=>{this.disposeWithMe(this._menuService.addMenuItem(t(this._injector),e))}),this.disposeWithMe(this._componentManager.register(je,St)),this.disposeWithMe(this._componentManager.register(Re,gt))}};F=Nt([i.OnLifecycle(i.LifecycleStages.Rendered,F),le(1,I.Inject(I.Injector)),le(2,I.Inject(T.ComponentManager)),le(3,I.Inject(T.IMenuService))],F);var Rt=Object.defineProperty,Pt=Object.getOwnPropertyDescriptor,Dt=(e,t,r,n)=>{for(var s=n>1?void 0:n?Pt(t,r):t,a=e.length-1,c;a>=0;a--)(c=e[a])&&(s=(n?c(t,r,s):c(s))||s);return n&&s&&Rt(t,r,s),s},Et=(e,t)=>(r,n)=>t(r,n,e);y.UniverSheetsNumfmtPlugin=(te=class extends i.Plugin{constructor(t={},r){super(),this._config=t,this._injector=r,this._config=i.Tools.deepMerge({},jt,this._config)}onStarting(){this._injector.add([ae,{useClass:Q,lazy:!1}]),this._injector.add([X]),this._injector.add([Z]),this._injector.add([z]),this._injector.add([q]),this._injector.add([F,{useFactory:()=>this._injector.createInstance(F,this._config)}])}},w(te,"pluginName",re),w(te,"type",i.UniverInstanceType.UNIVER_SHEET),te),y.UniverSheetsNumfmtPlugin=Dt([Et(1,I.Inject(I.Injector))],y.UniverSheetsNumfmtPlugin),y.SetNumfmtCommand=x,y.enUS=he,y.getPatternPreview=G,y.ruRU=Pe,y.zhCN=pe,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
9
+ */var De=y,we=Symbol.for("react.element"),Ue=Symbol.for("react.fragment"),Le=Object.prototype.hasOwnProperty,ke=De.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Ae={key:!0,ref:!0,__self:!0,__source:!0};function ye(e,t,s){var n,r={},i=null,o=null;s!==void 0&&(i=""+s),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(o=t.ref);for(n in t)Le.call(t,n)&&!Ae.hasOwnProperty(n)&&(r[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)r[n]===void 0&&(r[n]=t[n]);return{$$typeof:we,type:e,key:i,ref:o,props:r,_owner:ke.current}}J.Fragment=Ue,J.jsx=ye,J.jsxs=ye,_e.exports=J;var f=_e.exports;const ae=y.createContext([]),oe=["$","£","¥","¤","֏","؋","৳","฿","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"];var Ve=Object.defineProperty,He=Object.getOwnPropertyDescriptor,$e=(e,t,s,n)=>{for(var r=n>1?void 0:n?He(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&Ve(t,s,r),r},We=(e,t)=>(s,n)=>t(s,n,e);let Z=class{constructor(e){this._localStorageService=e}_getKey(e){return`userHabitController_${e}`}async addHabit(e,t){const s=this._getKey(e);return this._localStorageService.getItem(s).then(n=>{n||this._localStorageService.setItem(s,t)})}markHabit(e,t){const s=this._getKey(e);this._localStorageService.getItem(s).then(n=>{if(n){const r=n.findIndex(i=>i===t);r>-1&&n.splice(r,1),n.unshift(t),this._localStorageService.setItem(s,n)}})}async getHabit(e,t){const s=this._getKey(e),n=await this._localStorageService.getItem(s);if(t&&n){const r=n.map((i,o,l)=>{const u=l.length;return{value:i,priority:u-o}});return t.sort((i,o)=>{var d,v;const l=((d=r.find(c=>c.value===i))==null?void 0:d.priority)||-1;return(((v=r.find(c=>c.value===o))==null?void 0:v.priority)||-1)-l})}return n||[]}deleteHabit(e){this._localStorageService.removeItem(e)}};Z=$e([We(0,I.Inject(a.ILocalStorageService))],Z);const be="numfmtCurrency",Fe=e=>{const t=R.useDependency(Z),[s,n]=y.useState(oe);return y.useEffect(()=>{t.addHabit("numfmtCurrency",[]).then(()=>{t.getHabit(be,[...oe]).then(i=>{n(i),e&&e(i)})})},[]),{userHabitCurrency:s,mark:i=>{t.markHabit(be,i)}}},Be=()=>{const e=y.useRef([]),[t,s]=y.useState({});return y.useEffect(()=>{e.current.forEach(r=>{r()}),e.current=[]},[t]),r=>{e.current.push(r),s({})}},H=e=>oe.find(s=>e.includes(s)),Ge=e=>!!H(e)&&e.startsWith("_("),ze=e=>{const[t,s]=y.useState(()=>U(e.defaultPattern||"",2)),n=y.useContext(ae),[r,i]=y.useState(()=>H(e.defaultPattern)||n[0]),o=y.useMemo(()=>n.map(c=>({label:c,value:c})),[]),u=R.useDependency(a.LocaleService).t;e.action.current=()=>N(`_("${r}"* #,##0${t>0?".0":""}_)`,t);const d=c=>{i(c),e.onChange(N(`_("${c}"* #,##0${t>0?".0":""}_)`,t))},v=c=>{const h=c||0;s(h),e.onChange(N(`_("${r}"* #,##0${h>0?".0":""}_)`,h))};return f.jsxs("div",{children:[f.jsxs("div",{className:"m-t-16 options ",children:[f.jsxs("div",{className:"option",children:[f.jsx("div",{className:"label",children:u("sheet.numfmt.decimalLength")}),f.jsx("div",{className:"m-t-8 w-120",children:f.jsx(E.InputNumber,{value:t,max:20,min:0,onChange:v})})]}),f.jsxs("div",{className:"option",children:[f.jsx("div",{className:"label",children:u("sheet.numfmt.currencyType")}),f.jsx("div",{className:"m-t-8 w-140",children:f.jsx(E.Select,{onChange:d,options:o,value:r})})]})]}),f.jsx("div",{className:"describe m-t-14",children:u("sheet.numfmt.accountingDes")})]})},ce=e=>he.map(t=>({label:t.label(e),value:t.suffix(e),color:t.color})),Ce=()=>Oe.map(e=>({label:e.label,value:e.suffix})),Ie=()=>xe.map(e=>({label:e.label,value:e.suffix,color:e.color})),Ke=e=>!!H(e)&&!e.startsWith("_("),Ye=e=>{const s=R.useDependency(a.LocaleService).t,n=y.useContext(ae),[r,i]=y.useState(()=>H(e.defaultPattern)||n[0]),[o,l]=y.useState(()=>U(e.defaultPattern||"",2)),[u,d]=y.useState(()=>{var g;const p=ce(r);return((g=p.find(T=>K(T.value,e.defaultPattern)))==null?void 0:g.value)||p[0].value}),v=y.useMemo(()=>ce(r),[r]),c=y.useMemo(()=>n.map(p=>({label:p,value:p})),[n]);e.action.current=()=>N(u,o);const h=p=>{i(p);const S=ce(p)[0].value;d(S),e.onChange(N(S,o))},b=p=>{d(p),e.onChange(N(p,o))},_=p=>{l(p||0),e.onChange(N(u,p||0))};return f.jsxs("div",{children:[f.jsxs("div",{className:"m-t-16 options ",children:[f.jsxs("div",{className:"option",children:[f.jsx("div",{className:"label",children:s("sheet.numfmt.decimalLength")}),f.jsx("div",{className:"m-t-8 w-120",children:f.jsx(E.InputNumber,{value:o,max:20,min:0,onChange:_})})]}),f.jsxs("div",{className:"option",children:[f.jsx("div",{className:"label",children:s("sheet.numfmt.currencyType")}),f.jsx("div",{className:"m-t-8 w-140",children:f.jsx(E.Select,{onChange:h,options:c,value:r})})]})]}),f.jsx("div",{className:"m-t-16 label",children:s("sheet.numfmt.negType")}),f.jsx("div",{className:"m-t-8",children:f.jsx(E.SelectList,{onChange:b,options:v,value:u})}),f.jsx("div",{className:"describe m-t-14",children:s("sheet.numfmt.currencyDes")})]})},Je=e=>{const t=x.getInfo(e);return Ce().map(s=>s.value).includes(e)||["date","datetime","time"].includes(t.type)},Ze=e=>{const t=y.useMemo(Ce,[]),n=R.useDependency(a.LocaleService).t,[r,i]=y.useState(()=>{if(e.defaultPattern){const l=t.find(u=>u.value===e.defaultPattern);if(l)return l.value}return t[0].value});e.action.current=()=>r;const o=l=>{i(l),e.onChange(l)};return f.jsxs("div",{children:[f.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),f.jsx("div",{className:"m-t-8",children:f.jsx(E.SelectList,{value:r,options:t,onChange:o})}),f.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},Qe=e=>!e,Xe=e=>{const s=R.useDependency(a.LocaleService).t;return e.action.current=()=>"",f.jsx("div",{children:f.jsx("div",{className:"describe m-t-14",children:s("sheet.numfmt.generalDes")})})},qe=e=>Ie().some(t=>K(t.value,e)),et=e=>{const t=R.useDependency(a.LocaleService),s=y.useMemo(Ie,[]),[n,r]=y.useState(()=>U(e.defaultPattern||"",0)),[i,o]=y.useState(()=>{const c=s.find(h=>K(h.value,e.defaultPattern||""));return(c==null?void 0:c.value)||s[0].value}),l=y.useMemo(()=>N(i,Number(n||0)),[i,n]),u=y.useMemo(()=>!je(i),[i]),d=c=>{r(c||0),e.onChange(N(i,Number(c||0)))},v=c=>{r(U(c,0)),o(c),e.onChange(c)};return e.action.current=()=>l,f.jsxs("div",{children:[f.jsx("div",{className:"m-t-16 label",children:t.t("sheet.numfmt.decimalLength")}),f.jsx("div",{className:"m-t-8",children:f.jsx(E.InputNumber,{disabled:u,value:n,max:20,min:0,onChange:d})}),f.jsxs("div",{className:"m-t-16 label",children:[" ",t.t("sheet.numfmt.negType")]}),f.jsx("div",{className:"m-t-8",children:f.jsx(E.SelectList,{onChange:v,options:s,value:i})}),f.jsx("div",{className:"describe m-t-14",children:t.t("sheet.numfmt.thousandthPercentileDes")})]})},tt=e=>{const{defaultValue:t,defaultPattern:s,row:n,col:r}=e.value,i=R.useDependency(a.LocaleService),o=y.useRef(()=>""),l=i.t,u=Be(),d=y.useMemo(()=>[{label:"sheet.numfmt.general",component:Xe},{label:"sheet.numfmt.accounting",component:ze},{label:"sheet.numfmt.currency",component:Ye},{label:"sheet.numfmt.date",component:Ze},{label:"sheet.numfmt.thousandthPercentile",component:et}].map(P=>({...P,label:l(P.label)})),[]),[v,c]=y.useState(g),[h,b]=y.useState(()=>`${n}_${r}`),{mark:_,userHabitCurrency:p}=Fe(()=>b(`${n}_${r}_userCurrency'`)),S=y.useMemo(()=>{var P;return(P=d.find(A=>A.label===v))==null?void 0:P.component},[v]);function g(){return[Qe,Ge,Ke,Je,qe].reduce((A,Et,jt)=>A||(Et(s)?d[jt].label:""),"")||d[0].label}const T=d.map(P=>({label:P.label,value:P.label})),F=P=>{c(P),u(()=>e.onChange({type:"change",value:o.current()||""}))},ne=P=>{e.onChange({type:"change",value:P})},ue=()=>{const P=o.current()||"",A=H(P);A&&_(A),e.onChange({type:"confirm",value:P})},me=()=>{e.onChange({type:"cancel",value:""})},de={onChange:ne,defaultValue:t,defaultPattern:s,action:o};return y.useEffect(()=>{c(g()),b(`${n}_${r}`)},[n,r]),f.jsxs("div",{className:"numfmt-panel p-b-20",children:[f.jsxs("div",{children:[f.jsx("div",{className:"label m-t-14",children:l("sheet.numfmt.numfmtType")}),f.jsx("div",{className:"m-t-8",children:f.jsx(E.Select,{onChange:F,options:T,value:v})}),f.jsx("div",{children:S&&f.jsx(ae.Provider,{value:p,children:y.createElement(S,{...de,key:h})})})]}),f.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[f.jsx(E.Button,{size:"small",onClick:me,className:"m-r-12",children:l("sheet.numfmt.cancel")}),f.jsx(E.Button,{type:"primary",size:"small",onClick:ue,children:l("sheet.numfmt.confirm")})]})]})},Me={id:"sheet.command.numfmt.set.percent",type:a.CommandType.COMMAND,handler:async e=>{const t=e.get(a.ICommandService),n=e.get(m.SelectionManagerService).getSelections();if(!n||!n.length)return!1;const r=[],i="0%";return n.forEach(l=>{a.Range.foreach(l.range,(u,d)=>{r.push({row:u,col:d,pattern:i,type:"percent"})})}),await t.executeCommand(w.id,{values:r})}};var nt=Object.defineProperty,st=Object.getOwnPropertyDescriptor,rt=(e,t,s,n)=>{for(var r=n>1?void 0:n?st(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&nt(t,s,r),r},j=(e,t)=>(s,n)=>t(s,n,e);let Q=class extends a.Disposable{constructor(t,s,n,r,i,o,l,u,d,v,c){super();V(this,"_previewPattern","");V(this,"_sidebarDisposable",null);this._sheetInterceptorService=t,this._themeService=s,this._univerInstanceService=n,this._sheetSkeletonManagerService=r,this._commandService=i,this._selectionManagerService=o,this._renderManagerService=l,this._numfmtService=u,this._componentManager=d,this._sidebarService=v,this._localeService=c,this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener()}openPanel(){const t=this._sidebarService,s=this._selectionManagerService,n=this._commandService,r=this._univerInstanceService,i=this._numfmtService,o=this._localeService,u=(s.getSelectionRanges()||[])[0];if(!u)return!1;const d=r.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),v=d.getActiveSheet(),c=v.getCellRaw(u.startRow,u.startColumn),h=i.getValue(d.getUnitId(),v.getSheetId(),u.startRow,u.startColumn);let b="";h&&(b=h.pattern);const _=(c==null?void 0:c.t)===a.CellValueType.NUMBER?c.v:12345678,p={onChange:S=>{var g,T;if(S.type==="change")this._previewPattern=S.value,this._sheetSkeletonManagerService.reCalculate(),(T=(g=this._renderManagerService.getRenderById(d.getUnitId()))==null?void 0:g.mainComponent)==null||T.makeDirty();else if(S.type==="confirm"){const F=s.getSelectionRanges()||[],ne={values:[]},ue=B(S.value);F.forEach(me=>{a.Range.foreach(me,(de,P)=>{ne.values.push({row:de,col:P,pattern:S.value,type:ue})})}),n.executeCommand(w.id,ne),t.close()}else S.type==="cancel"&&t.close()},value:{defaultPattern:b,defaultValue:_,row:u.startRow,col:u.startColumn}};return this._sidebarDisposable=t.open({header:{title:o.t("sheet.numfmt.title")},children:{label:se,...p},onClose:()=>{var S,g;this._sheetSkeletonManagerService.reCalculate(),(g=(S=this._renderManagerService.getRenderById(d.getUnitId()))==null?void 0:S.mainComponent)==null||g.makeDirty(),n.executeCommand(re.id)}}),!0}_initCommands(){[pe,ge,Se,Me,Y,re,w].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}_initPanel(){this._componentManager.register(se,tt)}_initRealTimeRenderingInterceptor(){const t=new D.Observable(n=>{this._commandService.onCommandExecuted(r=>{r.id===Y.id&&n.next(!0),r.id===re.id&&n.next(!1)})}),s=D.combineLatest([t,this._selectionManagerService.selectionMoveEnd$.pipe(L.map(n=>n?n.map(r=>r.range):[]))]);this.disposeWithMe(a.toDisposable(s.pipe(L.switchMap(([n,r])=>new D.Observable(i=>{const o=new a.DisposableCollection;return n&&r.length&&i.next({selectionRanges:r,disposableCollection:o}),()=>{o.dispose()}})),L.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:r})=>{var o,l;const i=this._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);this.openPanel(),n.add(this._sheetInterceptorService.intercept(m.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,handler:(u,d,v)=>{const{row:c,col:h}=d,b=v(u)||{};if(r.find(_=>_.startColumn<=h&&_.endColumn>=h&&_.startRow<=c&&_.endRow>=c)){const _=d.worksheet.getCellRaw(c,h),p=_==null?void 0:_.v,S=_==null?void 0:_.t;if(p==null||S!==a.CellValueType.NUMBER||this._previewPattern===null)return b;const g=G(this._previewPattern,p,this._localeService.getCurrentLocale());if(g.color){const F=this._themeService.getCurrentTheme()[`${g.color}500`];return{...b,v:g.result,t:a.CellValueType.STRING,s:{cl:{rgb:F}}}}return{...b,v:g.result,t:a.CellValueType.STRING}}return b}})),(l=(o=this._renderManagerService.getRenderById(i.getUnitId()))==null?void 0:o.mainComponent)==null||l.makeDirty()})))}_commandExecutedListener(){const t=[m.RemoveNumfmtMutation.id,m.SetNumfmtMutation.id];this.disposeWithMe(a.toDisposable(D.merge(new D.Observable(s=>{const n=this._commandService.onCommandExecuted(r=>{if(t.includes(r.id)){const i=r.params;s.next(i.unitId)}});return()=>{n.dispose()}})).pipe(L.debounceTime(16)).subscribe(s=>{var n,r;this._sheetSkeletonManagerService.reCalculate(),(r=(n=this._renderManagerService.getRenderById(s))==null?void 0:n.mainComponent)==null||r.makeDirty()})))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(a.UniverInstanceType.UNIVER_SHEET).subscribe(t=>{var s;t||((s=this._sidebarDisposable)==null||s.dispose(),this._sidebarDisposable=null)})}};Q=rt([a.OnLifecycle(a.LifecycleStages.Rendered,Q),j(0,I.Inject(m.SheetInterceptorService)),j(1,I.Inject(a.ThemeService)),j(2,a.IUniverInstanceService),j(3,I.Inject(O.SheetSkeletonManagerService)),j(4,a.ICommandService),j(5,I.Inject(m.SelectionManagerService)),j(6,fe.IRenderManagerService),j(7,m.INumfmtService),j(8,I.Inject(M.ComponentManager)),j(9,M.ISidebarService),j(10,I.Inject(a.LocaleService))],Q);var it=Object.defineProperty,at=Object.getOwnPropertyDescriptor,ot=(e,t,s,n)=>{for(var r=n>1?void 0:n?at(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&it(t,s,r),r},$=(e,t)=>(s,n)=>t(s,n,e);const ct=()=>{let e=[];return{add:(r,i,o,l,u)=>e.push({unitId:r,subUnitId:i,row:o,col:l,value:u}),getEffects:()=>e,clean:()=>{e=[]}}};let X=class extends a.Disposable{constructor(t,s,n,r,i){super();V(this,"_collectEffectMutation",ct());this._sheetInterceptorService=t,this._numfmtService=s,this._univerInstanceService=n,this._injector=r,this._editorBridgeService=i,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this.disposeWithMe(a.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:(t,s,n)=>{const r=s.row,i=s.col,o=this._numfmtService.getValue(s.unitId,s.subUnitId,r,i);if(o)switch(B(o.pattern)){case"scientific":case"percent":case"currency":case"grouped":case"number":return s.worksheet.getCellRaw(r,i);case"date":case"time":case"datetime":default:return n&&n(t)}return n(t)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(a.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT,{handler:(t,s,n)=>{var v;this._collectEffectMutation.clean();const r=this._numfmtService.getValue(s.unitId,s.subUnitId,s.row,s.col),i=(v=r&&B(r.pattern))!=null?v:"",o=()=>{r&&this._collectEffectMutation.add(s.unitId,s.subUnitId,s.row,s.col,null)};if(!(t!=null&&t.v))return n(t);const l=String(t.v),u=x.parseDate(l)||x.parseTime(l);if(!!u){if(u&&u.z){const c=Number(u.v);return this._collectEffectMutation.add(s.unitId,s.subUnitId,s.row,s.col,{pattern:u.z}),{...t,v:c,t:a.CellValueType.NUMBER}}}else(["date","time","datetime"].includes(i)||!lt(l))&&o();return n(t)}})))}_initInterceptorCommands(){const t=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(s){switch(s.id){case m.SetRangeValuesCommand.id:{const n=t._univerInstanceService.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET),r=n.getUnitId(),i=n.getActiveSheet().getSheetId(),o=t._collectEffectMutation.getEffects();if(!o.length)return{redos:[],undos:[]};const l=o.filter(c=>{var h;return!!((h=c.value)!=null&&h.pattern)}).map(c=>({row:c.row,col:c.col,pattern:c.value.pattern})),u=o.filter(c=>{var h;return!((h=c.value)!=null&&h.pattern)}).map(c=>({startRow:c.row,endColumn:c.col,startColumn:c.col,endRow:c.row})),d=[],v=[];if(l){const c={id:m.SetNumfmtMutation.id,params:m.transformCellsToRange(r,i,l)};d.push(c),v.push(...m.factorySetNumfmtUndoMutation(t._injector,c.params))}if(u){const c={id:m.RemoveNumfmtMutation.id,params:{unitId:r,subUnitId:i,ranges:u}};d.push(c),v.push(...m.factoryRemoveNumfmtUndoMutation(t._injector,c.params))}return{redos:d,undos:v.reverse()}}}return{redos:[],undos:[]}}}))}};X=ot([a.OnLifecycle(a.LifecycleStages.Rendered,X),$(0,I.Inject(m.SheetInterceptorService)),$(1,I.Inject(m.INumfmtService)),$(2,I.Inject(a.IUniverInstanceService)),$(3,I.Inject(I.Injector)),$(4,I.Inject(O.IEditorBridgeService))],X);function lt(e){return/^-?\d+(\.\d+)?$/.test(e)}var ut=Object.defineProperty,mt=Object.getOwnPropertyDescriptor,dt=(e,t,s,n)=>{for(var r=n>1?void 0:n?mt(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&ut(t,s,r),r},ft=(e,t)=>(s,n)=>t(s,n,e);let q=class extends a.Disposable{constructor(e){super(),this._localeService=e}};q=dt([a.OnLifecycle(a.LifecycleStages.Rendered,q),ft(0,I.Inject(a.LocaleService))],q);const ee=[{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:""}],Te="sheet.numfmt.moreNumfmtType",Pe="sheet.numfmt.moreNumfmtType.options",vt=e=>{var n;const t=R.useDependency(a.LocaleService),s=(n=e.value)!=null?n:t.t("sheet.numfmt.general");return f.jsx("span",{className:"more-numfmt-type",children:s})},pt=()=>{const e=R.useDependency(a.ICommandService),t=R.useDependency(a.LocaleService),s=R.useInjector(),n=R.useDependency(m.SelectionManagerService),r=l=>{const u=n.getLast();if(!u)return;const d=s.get(fe.ITextSelectionRenderManager),v=u.range,c=[];a.Range.foreach(v,(h,b)=>{l?c.push({row:h,col:b,pattern:l,type:B(l)}):c.push({row:h,col:b})}),e.executeCommand(w.id,{values:c}),d.focus()},i=l=>{if(l===0)r(null);else if(l===ee.length-1)e.executeCommand(Y.id);else{const u=ee[l];u.pattern&&r(u.pattern)}},o=1220;return f.jsx("div",{className:"more-numfmt-type-options",children:ee.map((l,u)=>l==="|"?f.jsx("div",{className:"line m-t-4",onClick:d=>d.stopPropagation()},u):f.jsxs("div",{className:"option-item m-t-4",onClick:()=>{i(u)},children:[f.jsx("div",{children:t.t(l.label)}),f.jsx("div",{className:"m-l-26",children:l.pattern?G(l.pattern||"",o,t.getCurrentLocale()).result:""})]},u))})},ht=e=>({icon:"RmbSingle",id:Se.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(e,a.UniverInstanceType.UNIVER_SHEET),disabled$:O.getCurrentRangeDisable$(e,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}),St=e=>({icon:"AddDigitsSingle",id:pe.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(e,a.UniverInstanceType.UNIVER_SHEET),disabled$:O.getCurrentRangeDisable$(e,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}),gt=e=>({icon:"ReduceDigitsSingle",id:ge.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(e,a.UniverInstanceType.UNIVER_SHEET),disabled$:O.getCurrentRangeDisable$(e,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}),_t=e=>({icon:"PercentSingle",id:Me.id,title:"sheet.numfmt.percent",tooltip:"sheet.numfmt.percent",type:M.MenuItemType.BUTTON,group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[M.MenuPosition.TOOLBAR_START],hidden$:M.getMenuHiddenObservable(e,a.UniverInstanceType.UNIVER_SHEET),disabled$:O.getCurrentRangeDisable$(e,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetEditPermission,m.WorksheetSetCellStylePermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}),yt=e=>{const t=e.get(m.INumfmtService),s=e.get(a.IUniverInstanceService),n=e.get(a.ICommandService),r=e.get(a.LocaleService),i=e.get(m.SelectionManagerService),o=O.deriveStateFromActiveSheet$(s,"",({workbook:l,worksheet:u})=>new D.Observable(d=>D.merge(i.selectionMoveEnd$,new D.Observable(v=>{const c=[m.RemoveNumfmtMutation.id,m.SetNumfmtMutation.id],h=n.onCommandExecuted(b=>{c.includes(b.id)&&v.next(null)});return()=>h.dispose()})).subscribe(()=>{const v=i.getSelections();if(v&&v[0]){const c=v[0].range,h=c.startRow,b=c.startColumn,_=t.getValue(l.getUnitId(),u.getSheetId(),h,b),p=_==null?void 0:_.pattern;let S=r.t("sheet.numfmt.general");if(p){const g=ee.filter(T=>typeof T=="object"&&T.pattern).find(T=>K(p,T.pattern));g&&typeof g=="object"&&g.pattern?S=r.t(g.label):S=r.t("sheet.numfmt.moreFmt")}d.next(S)}})));return{label:Te,id:Y.id,tooltip:"sheet.numfmt.title",type:M.MenuItemType.SELECTOR,group:M.MenuGroup.TOOLBAR_FORMULAS_INSERT,positions:[M.MenuPosition.TOOLBAR_START],selections:[{label:{name:Pe,hoverable:!1}}],value$:o,hidden$:M.getMenuHiddenObservable(e,a.UniverInstanceType.UNIVER_SHEET),disabled$:O.getCurrentRangeDisable$(e,{workbookTypes:[m.WorkbookEditablePermission],worksheetTypes:[m.WorksheetSetCellStylePermission,m.WorksheetEditPermission],rangeTypes:[m.RangeProtectionPermissionEditPoint]})}};var bt=Object.defineProperty,Ct=Object.getOwnPropertyDescriptor,It=(e,t,s,n)=>{for(var r=n>1?void 0:n?Ct(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&bt(t,s,r),r},le=(e,t)=>(s,n)=>t(s,n,e);const Mt={};let W=class extends a.Disposable{constructor(e,t,s,n){super(),this._config=e,this._injector=t,this._componentManager=s,this._menuService=n,this._initMenu()}_initMenu(){const{menu:e={}}=this._config;[_t,St,gt,ht,yt].forEach(t=>{this.disposeWithMe(this._menuService.addMenuItem(t(this._injector),e))}),this.disposeWithMe(this._componentManager.register(Te,vt)),this.disposeWithMe(this._componentManager.register(Pe,pt))}};W=It([a.OnLifecycle(a.LifecycleStages.Rendered,W),le(1,I.Inject(I.Injector)),le(2,I.Inject(M.ComponentManager)),le(3,I.Inject(M.IMenuService))],W);var Tt=Object.defineProperty,Pt=Object.getOwnPropertyDescriptor,Nt=(e,t,s,n)=>{for(var r=n>1?void 0:n?Pt(t,s):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(r=(n?o(t,s,r):o(r))||r);return n&&r&&Tt(t,s,r),r},Rt=(e,t)=>(s,n)=>t(s,n,e);C.UniverSheetsNumfmtPlugin=(te=class extends a.Plugin{constructor(t={},s){super(),this._config=t,this._injector=s,this._config=a.Tools.deepMerge({},Mt,this._config)}onStarting(){this._injector.add([ie,{useClass:Q,lazy:!1}]),this._injector.add([X]),this._injector.add([Z]),this._injector.add([z]),this._injector.add([q]),this._injector.add([W,{useFactory:()=>this._injector.createInstance(W,this._config)}])}},V(te,"pluginName",se),V(te,"type",a.UniverInstanceType.UNIVER_SHEET),te),C.UniverSheetsNumfmtPlugin=Nt([Rt(1,I.Inject(I.Injector))],C.UniverSheetsNumfmtPlugin),C.SetNumfmtCommand=w,C.getPatternPreview=G,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-numfmt",
3
- "version": "0.1.12",
3
+ "version": "0.1.13",
4
4
  "private": false,
5
5
  "description": "UniverSheet numfmt plugin",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -34,6 +34,7 @@
34
34
  "require": "./lib/cjs/*",
35
35
  "types": "./lib/types/index.d.ts"
36
36
  },
37
+ "./locale/*": "./lib/locale/*.json",
37
38
  "./lib/*": "./lib/*"
38
39
  },
39
40
  "main": "./lib/cjs/index.js",
@@ -56,16 +57,16 @@
56
57
  "@wendellhu/redi": "0.15.2",
57
58
  "react": "^16.9.0 || ^17.0.0 || ^18.0.0",
58
59
  "rxjs": ">=7.0.0",
59
- "@univerjs/core": "0.1.12",
60
- "@univerjs/design": "0.1.12",
61
- "@univerjs/engine-numfmt": "0.1.12",
62
- "@univerjs/engine-render": "0.1.12",
63
- "@univerjs/sheets": "0.1.12",
64
- "@univerjs/sheets-ui": "0.1.12",
65
- "@univerjs/ui": "0.1.12"
60
+ "@univerjs/core": "0.1.13",
61
+ "@univerjs/design": "0.1.13",
62
+ "@univerjs/engine-render": "0.1.13",
63
+ "@univerjs/engine-numfmt": "0.1.13",
64
+ "@univerjs/sheets": "0.1.13",
65
+ "@univerjs/sheets-ui": "0.1.13",
66
+ "@univerjs/ui": "0.1.13"
66
67
  },
67
68
  "dependencies": {
68
- "@univerjs/icons": "^0.1.52"
69
+ "@univerjs/icons": "^0.1.55"
69
70
  },
70
71
  "devDependencies": {
71
72
  "@types/react": "^18.2.79",
@@ -74,17 +75,17 @@
74
75
  "react": "18.2.0",
75
76
  "rxjs": "^7.8.1",
76
77
  "typescript": "^5.4.5",
77
- "vite": "^5.2.11",
78
+ "vite": "^5.2.12",
78
79
  "vitest": "^1.6.0",
79
- "@univerjs/design": "0.1.12",
80
- "@univerjs/engine-formula": "0.1.12",
81
- "@univerjs/engine-numfmt": "0.1.12",
82
- "@univerjs/engine-render": "0.1.12",
83
- "@univerjs/shared": "0.1.12",
84
- "@univerjs/sheets": "0.1.12",
85
- "@univerjs/sheets-ui": "0.1.12",
86
- "@univerjs/ui": "0.1.12",
87
- "@univerjs/core": "0.1.12"
80
+ "@univerjs/core": "0.1.13",
81
+ "@univerjs/design": "0.1.13",
82
+ "@univerjs/engine-formula": "0.1.13",
83
+ "@univerjs/engine-numfmt": "0.1.13",
84
+ "@univerjs/sheets": "0.1.13",
85
+ "@univerjs/engine-render": "0.1.13",
86
+ "@univerjs/shared": "0.1.13",
87
+ "@univerjs/sheets-ui": "0.1.13",
88
+ "@univerjs/ui": "0.1.13"
88
89
  },
89
90
  "scripts": {
90
91
  "test": "vitest run",
@@ -1,18 +0,0 @@
1
- /**
2
- * Copyright 2023-present DreamNum Inc.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- export { default as enUS } from './en-US';
17
- export { default as zhCN } from './zh-CN';
18
- export { default as ruRU } from './ru-RU';