@univerjs/sheets-numfmt-ui 0.5.0 → 0.5.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.
package/lib/cjs/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var fe=Object.defineProperty;var pe=(t,e,r)=>e in t?fe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var H=(t,e,r)=>pe(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@univerjs/core"),m=require("@univerjs/sheets-numfmt"),x=require("@univerjs/sheets-ui"),P=require("@univerjs/ui"),ve=require("@univerjs/engine-render"),p=require("@univerjs/sheets"),D=require("rxjs"),W=require("rxjs/operators"),S=require("react"),M=require("@univerjs/design"),ne=require("@univerjs/engine-numfmt"),Se={},Y={id:"sheet.operation.close.numfmt.panel",type:o.CommandType.OPERATION,handler:()=>!0},$={id:"sheet.operation.open.numfmt.panel",type:o.CommandType.OPERATION,handler:t=>(t.get(k).openPanel(),!0)};var re={exports:{}},q={};/**
1
+ "use strict";var pe=Object.defineProperty;var ve=(t,e,r)=>e in t?pe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var W=(t,e,r)=>ve(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@univerjs/core"),m=require("@univerjs/sheets-numfmt"),j=require("@univerjs/sheets-ui"),I=require("@univerjs/ui"),Se=require("@univerjs/engine-render"),g=require("@univerjs/sheets"),D=require("rxjs"),A=require("rxjs/operators"),y=require("react"),E=require("@univerjs/design"),ie=require("@univerjs/engine-numfmt"),ge={},Y={id:"sheet.operation.close.numfmt.panel",type:o.CommandType.OPERATION,handler:()=>!0},$={id:"sheet.operation.open.numfmt.panel",type:o.CommandType.OPERATION,handler:t=>(t.get(k).openPanel(),!0)};var J={exports:{}},w={};/**
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 ge=S,ye=Symbol.for("react.element"),_e=Symbol.for("react.fragment"),be=Object.prototype.hasOwnProperty,Ce=ge.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Ie={key:!0,ref:!0,__self:!0,__source:!0};function se(t,e,r){var n,s={},i=null,c=null;r!==void 0&&(i=""+r),e.key!==void 0&&(i=""+e.key),e.ref!==void 0&&(c=e.ref);for(n in e)be.call(e,n)&&!Ie.hasOwnProperty(n)&&(s[n]=e[n]);if(t&&t.defaultProps)for(n in e=t.defaultProps,e)s[n]===void 0&&(s[n]=e[n]);return{$$typeof:ye,type:t,key:i,ref:c,props:s,_owner:Ce.current}}q.Fragment=_e;q.jsx=se;q.jsxs=se;re.exports=q;var l=re.exports,Pe=Object.defineProperty,Te=Object.getOwnPropertyDescriptor,Ne=(t,e,r,n)=>{for(var s=n>1?void 0:n?Te(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&Pe(e,r,s),s},Ee=(t,e)=>(r,n)=>e(r,n,t);const J=S.createContext([]);let L=class{constructor(t){this._localStorageService=t}_getKey(t){return`userHabitController_${t}`}async addHabit(t,e){const r=this._getKey(t);return this._localStorageService.getItem(r).then(n=>{n||this._localStorageService.setItem(r,e)})}markHabit(t,e){const r=this._getKey(t);this._localStorageService.getItem(r).then(n=>{if(n){const s=n.findIndex(i=>i===e);s>-1&&n.splice(s,1),n.unshift(e),this._localStorageService.setItem(r,n)}})}async getHabit(t,e){const r=this._getKey(t),n=await this._localStorageService.getItem(r);if(e&&n){const s=n.map((i,c,a)=>{const u=a.length;return{value:i,priority:u-c}});return e.sort((i,c)=>{var v,g;const a=((v=s.find(d=>d.value===i))==null?void 0:v.priority)||-1;return(((g=s.find(d=>d.value===c))==null?void 0:g.priority)||-1)-a})}return n||[]}deleteHabit(t){this._localStorageService.removeItem(t)}};L=Ne([Ee(0,o.Inject(o.ILocalStorageService))],L);const Z="numfmtCurrency",Me=t=>{const e=o.useDependency(L),[r,n]=S.useState(m.currencySymbols);return S.useEffect(()=>{e.addHabit("numfmtCurrency",[]).then(()=>{e.getHabit(Z,[...m.currencySymbols]).then(i=>{n(i),t&&t(i)})})},[]),{userHabitCurrency:r,mark:i=>{e.markHabit(Z,i)}}},je=()=>{const t=S.useRef([]),[e,r]=S.useState({});return S.useEffect(()=>{t.current.forEach(s=>{s()}),t.current=[]},[e]),s=>{t.current.push(s),r({})}},xe=t=>!!m.getCurrencyType(t)&&t.startsWith("_("),De=t=>{const{defaultPattern:e,action:r,onChange:n}=t,[s,i]=S.useState(()=>m.getDecimalFromPattern(e||"",2)),c=S.useContext(J),[a,u]=S.useState(()=>m.getCurrencyType(e)||c[0]),v=S.useMemo(()=>c.map(_=>({label:_,value:_})),[]),d=o.useDependency(o.LocaleService).t;r.current=()=>m.setPatternDecimal(`_("${a}"* #,##0${s>0?".0":""}_)`,s);const h=_=>{u(_),n(m.setPatternDecimal(`_("${_}"* #,##0${s>0?".0":""}_)`,s))},y=_=>{const f=_||0;i(f),n(m.setPatternDecimal(`_("${a}"* #,##0${f>0?".0":""}_)`,f))};return l.jsxs("div",{children:[l.jsxs("div",{className:"m-t-16 options ",children:[l.jsxs("div",{className:"option",children:[l.jsx("div",{className:"label",children:d("sheet.numfmt.decimalLength")}),l.jsx("div",{className:"m-t-8 w-120",children:l.jsx(M.InputNumber,{value:s,max:20,min:0,onChange:y})})]}),l.jsxs("div",{className:"option",children:[l.jsx("div",{className:"label",children:d("sheet.numfmt.currencyType")}),l.jsx("div",{className:"m-t-8 w-140",children:l.jsx(M.Select,{onChange:h,options:v,value:a})})]})]}),l.jsx("div",{className:"describe m-t-14",children:d("sheet.numfmt.accountingDes")})]})},Oe=t=>!!m.getCurrencyType(t)&&!t.startsWith("_("),Re=t=>{const r=o.useDependency(o.LocaleService).t,n=S.useContext(J),[s,i]=S.useState(()=>m.getCurrencyType(t.defaultPattern)||n[0]),[c,a]=S.useState(()=>m.getDecimalFromPattern(t.defaultPattern||"",2)),[u,v]=S.useState(()=>{var b;const f=m.getCurrencyFormatOptions(s);return((b=f.find(T=>m.isPatternEqualWithoutDecimal(T.value,t.defaultPattern)))==null?void 0:b.value)||f[0].value}),g=S.useMemo(()=>m.getCurrencyFormatOptions(s),[s]),d=S.useMemo(()=>n.map(f=>({label:f,value:f})),[n]);t.action.current=()=>m.setPatternDecimal(u,c);const h=f=>{if(f===void 0)return;i(f);const I=m.getCurrencyFormatOptions(f)[0].value;v(I),t.onChange(m.setPatternDecimal(I,c))},y=f=>{f!==void 0&&(v(f),t.onChange(m.setPatternDecimal(f,c)))},_=f=>{a(f||0),t.onChange(m.setPatternDecimal(u,f||0))};return l.jsxs("div",{children:[l.jsxs("div",{className:"m-t-16 options ",children:[l.jsxs("div",{className:"option",children:[l.jsx("div",{className:"label",children:r("sheet.numfmt.decimalLength")}),l.jsx("div",{className:"m-t-8 w-120",children:l.jsx(M.InputNumber,{value:c,max:20,min:0,onChange:_})})]}),l.jsxs("div",{className:"option",children:[l.jsx("div",{className:"label",children:r("sheet.numfmt.currencyType")}),l.jsx("div",{className:"m-t-8 w-140",children:l.jsx(M.Select,{onChange:h,options:d,value:s})})]})]}),l.jsx("div",{className:"m-t-16 label",children:r("sheet.numfmt.negType")}),l.jsx("div",{className:"m-t-8",children:l.jsx(M.SelectList,{onChange:y,options:g,value:u})}),l.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.currencyDes")})]})};var E=function(){return E=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++){e=arguments[r];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s])}return t},E.apply(this,arguments)},Ue=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(r[n[s]]=t[n[s]]);return r},ie=S.forwardRef(function(t,e){var r=t.icon,n=t.id,s=t.className,i=t.extend,c=Ue(t,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(n," ").concat(s||"").trim(),u=S.useRef("_".concat($e()));return oe(r,"".concat(n),{defIds:r.defIds,idSuffix:u.current},E({ref:e,className:a},c),i)});function oe(t,e,r,n,s){return S.createElement(t.tag,E(E({key:e},we(t,r,s)),n),(Fe(t,r).children||[]).map(function(i,c){return oe(i,"".concat(e,"-").concat(t.tag,"-").concat(c),r,void 0,s)}))}function we(t,e,r){var n=E({},t.attrs);r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1);var s=e.defIds;return!s||s.length===0||(t.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(function(i){var c=i[0],a=i[1];typeof a=="string"&&(n[c]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),n}function Fe(t,e){var r,n=e.defIds;return!n||n.length===0?t:t.tag==="defs"&&(!((r=t.children)===null||r===void 0)&&r.length)?E(E({},t),{children:t.children.map(function(s){return typeof s.attrs.id=="string"&&n&&n.indexOf(s.attrs.id)>-1?E(E({},s),{attrs:E(E({},s.attrs),{id:s.attrs.id+e.idSuffix})}):s})}):t}function $e(){return Math.random().toString(36).substring(2,8)}ie.displayName="UniverIcon";var Le={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ce=S.forwardRef(function(t,e){return S.createElement(ie,Object.assign({},t,{id:"check-mark-single",ref:e,icon:Le}))});ce.displayName="CheckMarkSingle";const ke="univer-custom-format-title",He="univer-custom-format-input",We="univer-custom-format-history-list",Ae="univer-custom-format-history-list-item",Be="univer-custom-format-history-list-item-icon-wrap",Ve="univer-custom-format-des",O={customFormatTitle:ke,customFormatInput:He,customFormatHistoryList:We,customFormatHistoryListItem:Ae,customFormatHistoryListItemIconWrap:Be,customFormatDes:Ve},z="customFormat",X="numfmt_custom_pattern";function qe(t){const{defaultPattern:e,action:r,onChange:n}=t,s=o.useDependency(L),i=o.useDependency(o.ILocalStorageService),c=o.useDependency(o.LocaleService),[a,u]=S.useState(e);r.current=()=>(s.markHabit(z,a),i.getItem(X).then((y=[])=>{const _=[...new Set([a,...y||[]])].splice(0,10).filter(f=>!!f);i.setItem(X,_)}),a);const[v,g]=S.useState([]);S.useEffect(()=>{i.getItem(X).then(y=>{const _=[...m.CURRENCYFORMAT.map(f=>f.suffix("$")),...m.DATEFMTLISG.map(f=>f.suffix),...m.NUMBERFORMAT.map(f=>f.suffix)];_.push(...y||[]),s.addHabit(z,[]).finally(()=>{s.getHabit(z,_).then(f=>{g([...new Set(f)])})})})},[]);const d=y=>{u(y),n(y)},h=()=>{n(a)};return l.jsxs("div",{className:O.customFormat,children:[l.jsx("div",{className:O.customFormatTitle,children:c.t("sheet.numfmt.customFormat")}),l.jsx(M.Input,{placeholder:c.t("sheet.numfmt.customFormat"),onBlur:h,value:a,onChange:u,className:O.customFormatInput}),l.jsx("div",{className:O.customFormatHistoryList,children:v.map(y=>l.jsxs("div",{onClick:()=>d(y),className:O.customFormatHistoryListItem,children:[l.jsx("div",{className:O.customFormatHistoryListItemIconWrap,children:a===y&&l.jsx(ce,{})}),l.jsx("div",{children:y})]},y))}),l.jsx("div",{className:O.customFormatDes,children:c.t("sheet.numfmt.customFormatDes")})]})}const Ge=t=>{const e=o.numfmt.getInfo(t);return m.getDateFormatOptions().map(r=>r.value).includes(t)||["date","datetime","time"].includes(e.type)},Ke=t=>{const e=S.useMemo(m.getDateFormatOptions,[]),n=o.useDependency(o.LocaleService).t,[s,i]=S.useState(()=>{if(t.defaultPattern){const a=e.find(u=>u.value===t.defaultPattern);if(a)return a.value}return e[0].value});t.action.current=()=>s;const c=a=>{a!==void 0&&(i(a),t.onChange(a))};return l.jsxs("div",{children:[l.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),l.jsx("div",{className:"m-t-8",children:l.jsx(M.SelectList,{value:s,options:e,onChange:c})}),l.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},Ye=t=>!t,ze=t=>{const r=o.useDependency(o.LocaleService).t;return t.action.current=()=>"",l.jsx("div",{children:l.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.generalDes")})})},Xe=t=>m.getNumberFormatOptions().some(e=>m.isPatternEqualWithoutDecimal(e.value,t)),Je=t=>{const e=o.useDependency(o.LocaleService),r=S.useMemo(m.getNumberFormatOptions,[]),[n,s]=S.useState(()=>m.getDecimalFromPattern(t.defaultPattern||"",0)),[i,c]=S.useState(()=>{const d=r.find(h=>m.isPatternEqualWithoutDecimal(h.value,t.defaultPattern||""));return(d==null?void 0:d.value)||r[0].value}),a=S.useMemo(()=>m.setPatternDecimal(i,Number(n||0)),[i,n]),u=S.useMemo(()=>!m.isPatternHasDecimal(i),[i]),v=d=>{s(d||0),t.onChange(m.setPatternDecimal(i,Number(d||0)))},g=d=>{d!==void 0&&(s(m.getDecimalFromPattern(d,0)),c(d),t.onChange(d))};return t.action.current=()=>a,l.jsxs("div",{children:[l.jsx("div",{className:"m-t-16 label",children:e.t("sheet.numfmt.decimalLength")}),l.jsx("div",{className:"m-t-8",children:l.jsx(M.InputNumber,{disabled:u,value:n,max:20,min:0,onChange:v})}),l.jsxs("div",{className:"m-t-16 label",children:[" ",e.t("sheet.numfmt.negType")]}),l.jsx("div",{className:"m-t-8",children:l.jsx(M.SelectList,{onChange:g,options:r,value:i})}),l.jsx("div",{className:"describe m-t-14",children:e.t("sheet.numfmt.thousandthPercentileDes")})]})},Ze=t=>{const{defaultValue:e,defaultPattern:r,row:n,col:s}=t.value,i=o.useDependency(o.LocaleService),c=S.useRef(()=>""),a=i.t,u=je(),v=S.useMemo(()=>[{label:"sheet.numfmt.general",component:ze},{label:"sheet.numfmt.accounting",component:De},{label:"sheet.numfmt.currency",component:Re},{label:"sheet.numfmt.date",component:Ke},{label:"sheet.numfmt.thousandthPercentile",component:Je},{label:"sheet.numfmt.customFormat",component:qe}].map(C=>({...C,label:a(C.label)})),[]),[g,d]=S.useState(b),[h,y]=S.useState(()=>`${n}_${s}`),{mark:_,userHabitCurrency:f}=Me(()=>y(`${n}_${s}_userCurrency'`)),I=S.useMemo(()=>{var C;return(C=v.find(U=>U.label===g))==null?void 0:C.component},[g]);function b(){return[Ye,xe,Oe,Ge,Xe].reduce((U,de,he)=>U||(de(r)?v[he].label:""),"")||v[0].label}const T=v.map(C=>({label:C.label,value:C.label})),N=C=>{d(C),u(()=>t.onChange({type:"change",value:c.current()||""}))},R=C=>{t.onChange({type:"change",value:C})},G=()=>{const C=c.current()||"",U=m.getCurrencyType(C);U&&_(U),t.onChange({type:"confirm",value:C})},w=()=>{t.onChange({type:"cancel",value:""})},K={onChange:R,defaultValue:e,defaultPattern:r,action:c};return S.useEffect(()=>{d(b()),y(`${n}_${s}`)},[n,s]),l.jsxs("div",{className:"numfmt-panel p-b-20",children:[l.jsxs("div",{children:[l.jsx("div",{className:"label m-t-14",children:a("sheet.numfmt.numfmtType")}),l.jsx("div",{className:"m-t-8",children:l.jsx(M.Select,{onChange:N,options:T,value:g,style:{width:"100%"}})}),l.jsx("div",{children:I&&l.jsx(J.Provider,{value:f,children:S.createElement(I,{...K,key:h})})})]}),l.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[l.jsx(M.Button,{size:"small",onClick:w,className:"m-r-12",children:a("sheet.numfmt.cancel")}),l.jsx(M.Button,{type:"primary",size:"small",onClick:G,children:a("sheet.numfmt.confirm")})]})]})};var Qe=Object.defineProperty,et=Object.getOwnPropertyDescriptor,tt=(t,e,r,n)=>{for(var s=n>1?void 0:n?et(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&Qe(e,r,s),s},j=(t,e)=>(r,n)=>e(r,n,t);const Q="SHEET_NUMFMT_PANEL";let k=class extends o.Disposable{constructor(e,r,n,s,i,c,a,u,v,g){super();H(this,"_previewPattern","");H(this,"_sidebarDisposable",null);this._sheetInterceptorService=e,this._themeService=r,this._univerInstanceService=n,this._commandService=s,this._selectionManagerService=i,this._renderManagerService=c,this._numfmtService=a,this._componentManager=u,this._sidebarService=v,this._localeService=g,this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener()}openPanel(){var I;const e=this._sidebarService,r=this._selectionManagerService,n=this._commandService,s=this._univerInstanceService,i=this._numfmtService,c=this._localeService,u=(((I=r.getCurrentSelections())==null?void 0:I.map(b=>b.range))||[])[0];if(!u)return!1;const v=s.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET),g=v.getActiveSheet();if(!g)return!1;const d=g.getCellRaw(u.startRow,u.startColumn),h=i.getValue(v.getUnitId(),g.getSheetId(),u.startRow,u.startColumn);let y="";h&&(y=h.pattern);const _=(d==null?void 0:d.t)===o.CellValueType.NUMBER?d.v:12345678,f={onChange:b=>{var T;if(b.type==="change")this._previewPattern=b.value,this._forceUpdate();else if(b.type==="confirm"){const N=((T=r.getCurrentSelections())==null?void 0:T.map(w=>w.range))||[],R={values:[]},G=m.getPatternType(b.value);N.forEach(w=>{o.Range.foreach(w,(K,C)=>{R.values.push({row:K,col:C,pattern:b.value,type:G})})}),n.executeCommand(m.SetNumfmtCommand.id,R),e.close()}else b.type==="cancel"&&e.close()},value:{defaultPattern:y,defaultValue:_,row:u.startRow,col:u.startColumn}};return this._sidebarDisposable=e.open({header:{title:c.t("sheet.numfmt.title")},children:{label:Q,...f},onClose:()=>{this._forceUpdate(),n.executeCommand(Y.id)}}),!0}_forceUpdate(e){var n;const r=this._renderManagerService.getRenderById(e!=null?e:this._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET).getUnitId());r==null||r.with(x.SheetSkeletonManagerService).reCalculate(),(n=r==null?void 0:r.mainComponent)==null||n.makeDirty()}_initCommands(){[$,Y].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initPanel(){this._componentManager.register(Q,Ze)}_initRealTimeRenderingInterceptor(){const e=new D.Observable(n=>{this._commandService.onCommandExecuted(s=>{s.id===$.id&&n.next(!0),s.id===Y.id&&n.next(!1)})}),r=D.combineLatest([e,this._selectionManagerService.selectionMoveEnd$.pipe(W.map(n=>n?n.map(s=>s.range):[]))]);this.disposeWithMe(o.toDisposable(r.pipe(W.switchMap(([n,s])=>new D.Observable(i=>{const c=new o.DisposableCollection;return n&&s.length&&i.next({selectionRanges:s,disposableCollection:c}),()=>{c.dispose()}})),W.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:s})=>{var c,a;const i=this._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET);this.openPanel(),n.add(this._sheetInterceptorService.intercept(p.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,effect:o.InterceptorEffectEnum.Value|o.InterceptorEffectEnum.Style,handler:(u,v,g)=>{const{row:d,col:h}=v,y=g(u)||{};if(s.find(_=>_.startColumn<=h&&_.endColumn>=h&&_.startRow<=d&&_.endRow>=d)){const _=v.worksheet.getCellRaw(d,h),f=_==null?void 0:_.v,I=_==null?void 0:_.t;if(f==null||I!==o.CellValueType.NUMBER||this._previewPattern===null)return y;const b=m.getPatternPreviewIgnoreGeneral(this._previewPattern,f,this._localeService.getCurrentLocale());if(b.color){const N=this._themeService.getCurrentTheme()[`${b.color}500`];return{...y,v:b.result,t:o.CellValueType.STRING,s:{cl:{rgb:N}}}}return{...y,v:b.result,t:o.CellValueType.STRING}}return y}})),(a=(c=this._renderManagerService.getRenderById(i.getUnitId()))==null?void 0:c.mainComponent)==null||a.makeDirty()})))}_commandExecutedListener(){const e=[p.RemoveNumfmtMutation.id,p.SetNumfmtMutation.id];this.disposeWithMe(new D.Observable(r=>{const n=this._commandService.onCommandExecuted(s=>{if(e.includes(s.id)){const i=s.params;r.next(i.unitId)}});return()=>n.dispose()}).pipe(W.debounceTime(16)).subscribe(r=>this._forceUpdate(r)))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(o.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{var r;e||((r=this._sidebarDisposable)==null||r.dispose(),this._sidebarDisposable=null)})}};k=tt([j(0,o.Inject(p.SheetInterceptorService)),j(1,o.Inject(o.ThemeService)),j(2,o.IUniverInstanceService),j(3,o.ICommandService),j(4,o.Inject(p.SheetsSelectionsService)),j(5,ve.IRenderManagerService),j(6,p.INumfmtService),j(7,o.Inject(P.ComponentManager)),j(8,P.ISidebarService),j(9,o.Inject(o.LocaleService))],k);var nt=Object.defineProperty,rt=Object.getOwnPropertyDescriptor,st=(t,e,r,n)=>{for(var s=n>1?void 0:n?rt(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&nt(e,r,s),s},F=(t,e)=>(r,n)=>e(r,n,t);const it=()=>{let t=[];return{add:(s,i,c,a,u)=>t.push({unitId:s,subUnitId:i,row:c,col:a,value:u}),getEffects:()=>t,clean:()=>{t=[]}}};let B=class extends o.Disposable{constructor(e,r,n,s,i){super();H(this,"_collectEffectMutation",it());this._sheetInterceptorService=e,this._numfmtService=r,this._univerInstanceService=n,this._injector=s,this._editorBridgeService=i,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this._editorBridgeService&&this.disposeWithMe(o.toDisposable(this._sheetInterceptorService.writeCellInterceptor.intercept(p.BEFORE_CELL_EDIT,{handler:(e,r,n)=>{const s=r.row,i=r.col,c=this._numfmtService.getValue(r.unitId,r.subUnitId,s,i);if(c)switch(m.getPatternType(c.pattern)){case"scientific":case"currency":case"grouped":case"number":return r.worksheet.getCellRaw(s,i);case"percent":case"date":case"time":case"datetime":default:return n&&n(e)}return n(e)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(o.toDisposable(this._sheetInterceptorService.writeCellInterceptor.intercept(p.AFTER_CELL_EDIT,{handler:(e,r,n)=>{var y,_,f,I,b;this._collectEffectMutation.clean();const{worksheet:s,row:i,col:c}=r,a=this._numfmtService.getValue(r.unitId,r.subUnitId,r.row,r.col),u=(y=a&&m.getPatternType(a.pattern))!=null?y:"",v=()=>{a&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,null)};if(!(e!=null&&e.v)&&!(e!=null&&e.p)||(a==null?void 0:a.pattern)===ne.DEFAULT_TEXT_FORMAT)return n(e);const g=(_=e.p)==null?void 0:_.body,d=(I=(f=e==null?void 0:e.p)==null?void 0:f.body)!=null&&I.dataStream?e.p.body.dataStream.replace(/\r\n$/,""):String(e.v),h=o.numfmt.parseDate(d)||o.numfmt.parseTime(d)||o.numfmt.parseNumber(d);if(g)if(ct(g)){const{dataStream:T}=g,N=T.replace(/\r\n$/,""),R=Number(N);if(Number.isNaN(R)&&!h)return n(e)}else return n(e);if(h){h.z&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,{pattern:h.z});const T=Number(h.v),N=(b=s.getCellStyleOnly(i,c))==null?void 0:b.s;return{...e,v:T,p:null,s:N,t:o.CellValueType.NUMBER}}else(["date","time","datetime","percent"].includes(u)||!ot(d))&&v();return n(e)}})))}_initInterceptorCommands(){const e=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){var n;switch(r.id){case p.SetRangeValuesCommand.id:{const s=e._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET),i=s.getUnitId(),c=(n=s.getActiveSheet())==null?void 0:n.getSheetId();if(!c)return{redos:[],undos:[]};const a=e._collectEffectMutation.getEffects();if(e._collectEffectMutation.clean(),!a.length)return{redos:[],undos:[]};const u=a.filter(h=>{var y;return!!((y=h.value)!=null&&y.pattern)}).map(h=>({row:h.row,col:h.col,pattern:h.value.pattern})),v=a.filter(h=>{var y;return!((y=h.value)!=null&&y.pattern)}).map(h=>({startRow:h.row,endColumn:h.col,startColumn:h.col,endRow:h.row})),g=[],d=[];if(u.length){const h={id:p.SetNumfmtMutation.id,params:p.transformCellsToRange(i,c,u)};g.push(h),d.push(...p.factorySetNumfmtUndoMutation(e._injector,h.params))}if(v.length){const h={id:p.RemoveNumfmtMutation.id,params:{unitId:i,subUnitId:c,ranges:v}};g.push(h),d.push(...p.factoryRemoveNumfmtUndoMutation(e._injector,h.params))}return{redos:g,undos:d.reverse()}}}return{redos:[],undos:[]}}}))}};B=st([F(0,o.Inject(p.SheetInterceptorService)),F(1,o.Inject(p.INumfmtService)),F(2,o.Inject(o.IUniverInstanceService)),F(3,o.Inject(o.Injector)),F(4,o.Optional(x.IEditorBridgeService))],B);function ot(t){return/^-?\d+(\.\d+)?$/.test(t)}function ct(t){const{textRuns:e=[],paragraphs:r=[],customRanges:n,customBlocks:s=[]}=t,i=["va"];return!(e.some(c=>!!(c.ts&&Object.keys(c.ts).some(u=>i.includes(u))))||r.some(c=>c.bullet)||r.length>=2||n!=null&&n.length||s.length>0)}const A=[{label:"sheet.numfmt.general",pattern:null},{label:"sheet.numfmt.text",pattern:ne.DEFAULT_TEXT_FORMAT},"|",{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:""}],at=t=>({icon:new D.Observable(e=>{const r=t.get(m.MenuCurrencyService);function n(i){return{[m.countryCurrencyMap.US]:"DollarSingle",[m.countryCurrencyMap.RU]:"RoubleSingle",[m.countryCurrencyMap.CN]:"RmbSingle",[m.countryCurrencyMap.AT]:"EuroSingle"}[i]||"DollarSingle"}const s=m.countryCurrencyMap[r.getCurrencySymbol()]||"$";return e.next(n(s)),r.currencySymbol$.subscribe(i=>{const c=m.countryCurrencyMap[i]||"$";e.next(n(c))})}),id:m.SetCurrencyCommand.id,title:"sheet.numfmt.currency",tooltip:"sheet.numfmt.currency",type:P.MenuItemType.BUTTON,hidden$:P.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:x.getCurrentRangeDisable$(t,{workbookTypes:[p.WorkbookEditablePermission],worksheetTypes:[p.WorksheetEditPermission,p.WorksheetSetCellStylePermission],rangeTypes:[p.RangeProtectionPermissionEditPoint]})}),lt=t=>({icon:"AddDigitsSingle",id:m.AddDecimalCommand.id,title:"sheet.numfmt.addDecimal",tooltip:"sheet.numfmt.addDecimal",type:P.MenuItemType.BUTTON,hidden$:P.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:x.getCurrentRangeDisable$(t,{workbookTypes:[p.WorkbookEditablePermission],worksheetTypes:[p.WorksheetEditPermission,p.WorksheetSetCellStylePermission],rangeTypes:[p.RangeProtectionPermissionEditPoint]})}),mt=t=>({icon:"ReduceDigitsSingle",id:m.SubtractDecimalCommand.id,title:"sheet.numfmt.subtractDecimal",tooltip:"sheet.numfmt.subtractDecimal",type:P.MenuItemType.BUTTON,hidden$:P.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:x.getCurrentRangeDisable$(t,{workbookTypes:[p.WorkbookEditablePermission],worksheetTypes:[p.WorksheetEditPermission,p.WorksheetSetCellStylePermission],rangeTypes:[p.RangeProtectionPermissionEditPoint]})}),ut=t=>({icon:"PercentSingle",id:m.SetPercentCommand.id,title:"sheet.numfmt.percent",tooltip:"sheet.numfmt.percent",type:P.MenuItemType.BUTTON,hidden$:P.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:x.getCurrentRangeDisable$(t,{workbookTypes:[p.WorkbookEditablePermission],worksheetTypes:[p.WorksheetEditPermission,p.WorksheetSetCellStylePermission],rangeTypes:[p.RangeProtectionPermissionEditPoint]})}),dt=t=>{const e=t.get(o.IUniverInstanceService),r=t.get(o.ICommandService),n=t.get(o.LocaleService),s=t.get(p.SheetsSelectionsService),i=x.deriveStateFromActiveSheet$(e,"",({workbook:c,worksheet:a})=>new D.Observable(u=>D.merge(s.selectionMoveEnd$,new D.Observable(v=>{const g=[p.RemoveNumfmtMutation.id,p.SetNumfmtMutation.id],d=r.onCommandExecuted(h=>{g.includes(h.id)&&v.next(null)});return()=>d.dispose()})).subscribe(()=>{var g,d;const v=s.getCurrentSelections();if(v&&v[0]){const h=v[0].range,y=h.startRow,_=h.startColumn,f=(d=c.getStyles().get((g=a.getCell(y,_))==null?void 0:g.s))==null?void 0:d.n,I=f==null?void 0:f.pattern;let b=n.t("sheet.numfmt.general");if(I){const T=A.filter(N=>typeof N=="object"&&N.pattern).find(N=>m.isPatternEqualWithoutDecimal(I,N.pattern));T&&typeof T=="object"&&T.pattern?b=n.t(T.label):b=n.t("sheet.numfmt.moreFmt")}u.next(b)}})));return{label:ae,id:$.id,tooltip:"sheet.numfmt.title",type:P.MenuItemType.SELECTOR,selections:[{label:{name:le,hoverable:!1}}],value$:i,hidden$:P.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:x.getCurrentRangeDisable$(t,{workbookTypes:[p.WorkbookEditablePermission],worksheetTypes:[p.WorksheetSetCellStylePermission,p.WorksheetEditPermission],rangeTypes:[p.RangeProtectionPermissionEditPoint]})}},ae="sheet.numfmt.moreNumfmtType",le="sheet.numfmt.moreNumfmtType.options",ht=t=>{var n;const e=o.useDependency(o.LocaleService),r=(n=t.value)!=null?n:e.t("sheet.numfmt.general");return l.jsx("span",{className:"more-numfmt-type",children:r})},ft=()=>{const t=o.useDependency(o.ICommandService),e=o.useDependency(o.LocaleService),r=o.useDependency(P.ILayoutService);o.useInjector();const n=o.useDependency(p.SheetsSelectionsService),s=a=>{const u=n.getCurrentLastSelection();if(!u)return;const v=u.range,g=[];o.Range.foreach(v,(d,h)=>{a?g.push({row:d,col:h,pattern:a,type:m.getPatternType(a)}):g.push({row:d,col:h})}),t.executeCommand(m.SetNumfmtCommand.id,{values:g}),r.focus()},i=a=>{if(a===0)s(null);else if(a===A.length-1)t.executeCommand($.id);else{const u=A[a];u.pattern&&s(u.pattern)}},c=1220;return l.jsx("div",{className:"more-numfmt-type-options",children:A.map((a,u)=>a==="|"?l.jsx("div",{className:"line m-t-4",onClick:v=>v.stopPropagation()},u):l.jsxs("div",{className:"option-item m-t-4",onClick:()=>{i(u)},children:[l.jsx("div",{children:e.t(a.label)}),l.jsx("div",{className:"m-l-26",children:a.pattern?m.getPatternPreview(a.pattern||"",c,e.getCurrentLocale()).result:""})]},u))})},pt={[P.RibbonStartGroup.FORMULAS_INSERT]:{[m.SetCurrencyCommand.id]:{order:4,menuItemFactory:at},[m.AddDecimalCommand.id]:{order:5,menuItemFactory:lt},[m.SubtractDecimalCommand.id]:{order:6,menuItemFactory:mt},[m.SetPercentCommand.id]:{order:7,menuItemFactory:ut},[$.id]:{order:8,menuItemFactory:dt}}};var vt=Object.defineProperty,St=Object.getOwnPropertyDescriptor,gt=(t,e,r,n)=>{for(var s=n>1?void 0:n?St(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&vt(e,r,s),s},ee=(t,e)=>(r,n)=>e(r,n,t);let V=class extends o.Disposable{constructor(t,e){super(),this._componentManager=t,this._menuManagerService=e,this._initMenu()}_initMenu(){this._menuManagerService.mergeMenu(pt),this.disposeWithMe(this._componentManager.register(ae,ht)),this.disposeWithMe(this._componentManager.register(le,ft))}};V=gt([ee(0,o.Inject(P.ComponentManager)),ee(1,P.IMenuManagerService)],V);var me=Object.defineProperty,yt=Object.getOwnPropertyDescriptor,_t=(t,e,r)=>e in t?me(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,bt=(t,e,r,n)=>{for(var s=n>1?void 0:n?yt(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&me(e,r,s),s},te=(t,e)=>(r,n)=>e(r,n,t),ue=(t,e,r)=>_t(t,typeof e!="symbol"?e+"":e,r);const Ct="SHEET_NUMFMT_UI_PLUGIN";exports.UniverSheetsNumfmtUIPlugin=class extends o.Plugin{constructor(e=Se,r,n){super(),this._config=e,this._injector=r,this._configService=n;const{menu:s,...i}=this._config;s&&this._configService.setConfig("menu",s,{merge:!0}),this._configService.setConfig(P.PLUGIN_CONFIG_KEY,i)}onStarting(){o.registerDependencies(this._injector,[[k],[B],[L],[V]])}onRendered(){o.touchDependencies(this._injector,[[k],[B],[V]])}};ue(exports.UniverSheetsNumfmtUIPlugin,"pluginName",Ct);ue(exports.UniverSheetsNumfmtUIPlugin,"type",o.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsNumfmtUIPlugin=bt([o.DependentOn(x.UniverSheetsUIPlugin,m.UniverSheetsNumfmtPlugin),te(1,o.Inject(o.Injector)),te(2,o.IConfigService)],exports.UniverSheetsNumfmtUIPlugin);
9
+ */var Q;function ye(){if(Q)return w;Q=1;var t=y,e=Symbol.for("react.element"),r=Symbol.for("react.fragment"),n=Object.prototype.hasOwnProperty,s=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function c(a,l,p){var f,d={},h=null,S=null;p!==void 0&&(h=""+p),l.key!==void 0&&(h=""+l.key),l.ref!==void 0&&(S=l.ref);for(f in l)n.call(l,f)&&!i.hasOwnProperty(f)&&(d[f]=l[f]);if(a&&a.defaultProps)for(f in l=a.defaultProps,l)d[f]===void 0&&(d[f]=l[f]);return{$$typeof:e,type:a,key:h,ref:S,props:d,_owner:s.current}}return w.Fragment=r,w.jsx=c,w.jsxs=c,w}var ee;function _e(){return ee||(ee=1,J.exports=ye()),J.exports}var u=_e(),be=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,Ie=(t,e,r,n)=>{for(var s=n>1?void 0:n?Ce(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&be(e,r,s),s},Pe=(t,e)=>(r,n)=>e(r,n,t);const Z=y.createContext([]);let L=class{constructor(t){this._localStorageService=t}_getKey(t){return`userHabitController_${t}`}async addHabit(t,e){const r=this._getKey(t);return this._localStorageService.getItem(r).then(n=>{n||this._localStorageService.setItem(r,e)})}markHabit(t,e){const r=this._getKey(t);this._localStorageService.getItem(r).then(n=>{if(n){const s=n.findIndex(i=>i===e);s>-1&&n.splice(s,1),n.unshift(e),this._localStorageService.setItem(r,n)}})}async getHabit(t,e){const r=this._getKey(t),n=await this._localStorageService.getItem(r);if(e&&n){const s=n.map((i,c,a)=>{const l=a.length;return{value:i,priority:l-c}});return e.sort((i,c)=>{var p,f;const a=((p=s.find(d=>d.value===i))==null?void 0:p.priority)||-1;return(((f=s.find(d=>d.value===c))==null?void 0:f.priority)||-1)-a})}return n||[]}deleteHabit(t){this._localStorageService.removeItem(t)}};L=Ie([Pe(0,o.Inject(o.ILocalStorageService))],L);const te="numfmtCurrency",Te=t=>{const e=o.useDependency(L),[r,n]=y.useState(m.currencySymbols);return y.useEffect(()=>{e.addHabit("numfmtCurrency",[]).then(()=>{e.getHabit(te,[...m.currencySymbols]).then(i=>{n(i),t&&t(i)})})},[]),{userHabitCurrency:r,mark:i=>{e.markHabit(te,i)}}},Ne=()=>{const t=y.useRef([]),[e,r]=y.useState({});return y.useEffect(()=>{t.current.forEach(s=>{s()}),t.current=[]},[e]),s=>{t.current.push(s),r({})}},Ee=t=>!!m.getCurrencyType(t)&&t.startsWith("_("),xe=t=>{const{defaultPattern:e,action:r,onChange:n}=t,[s,i]=y.useState(()=>m.getDecimalFromPattern(e||"",2)),c=y.useContext(Z),[a,l]=y.useState(()=>m.getCurrencyType(e)||c[0]),p=y.useMemo(()=>c.map(_=>({label:_,value:_})),[]),d=o.useDependency(o.LocaleService).t;r.current=()=>m.setPatternDecimal(`_("${a}"* #,##0${s>0?".0":""}_)`,s);const h=_=>{l(_),n(m.setPatternDecimal(`_("${_}"* #,##0${s>0?".0":""}_)`,s))},S=_=>{const v=_||0;i(v),n(m.setPatternDecimal(`_("${a}"* #,##0${v>0?".0":""}_)`,v))};return u.jsxs("div",{children:[u.jsxs("div",{className:"m-t-16 options",children:[u.jsxs("div",{className:"option",children:[u.jsx("div",{className:"label",children:d("sheet.numfmt.decimalLength")}),u.jsx("div",{className:"m-t-8 w-120",children:u.jsx(E.InputNumber,{value:s,max:20,min:0,onChange:S})})]}),u.jsxs("div",{className:"option",children:[u.jsx("div",{className:"label",children:d("sheet.numfmt.currencyType")}),u.jsx("div",{className:"m-t-8 w-140",children:u.jsx(E.Select,{onChange:h,options:p,value:a})})]})]}),u.jsx("div",{className:"describe m-t-14",children:d("sheet.numfmt.accountingDes")})]})},Me=t=>!!m.getCurrencyType(t)&&!t.startsWith("_("),je=t=>{const r=o.useDependency(o.LocaleService).t,n=y.useContext(Z),[s,i]=y.useState(()=>m.getCurrencyType(t.defaultPattern)||n[0]),[c,a]=y.useState(()=>m.getDecimalFromPattern(t.defaultPattern||"",2)),[l,p]=y.useState(()=>{var b;const v=m.getCurrencyFormatOptions(s);return((b=v.find(T=>m.isPatternEqualWithoutDecimal(T.value,t.defaultPattern)))==null?void 0:b.value)||v[0].value}),f=y.useMemo(()=>m.getCurrencyFormatOptions(s),[s]),d=y.useMemo(()=>n.map(v=>({label:v,value:v})),[n]);t.action.current=()=>m.setPatternDecimal(l,c);const h=v=>{if(v===void 0)return;i(v);const P=m.getCurrencyFormatOptions(v)[0].value;p(P),t.onChange(m.setPatternDecimal(P,c))},S=v=>{v!==void 0&&(p(v),t.onChange(m.setPatternDecimal(v,c)))},_=v=>{a(v||0),t.onChange(m.setPatternDecimal(l,v||0))};return u.jsxs("div",{children:[u.jsxs("div",{className:"m-t-16 options",children:[u.jsxs("div",{className:"option",children:[u.jsx("div",{className:"label",children:r("sheet.numfmt.decimalLength")}),u.jsx("div",{className:"m-t-8 w-120",children:u.jsx(E.InputNumber,{value:c,max:20,min:0,onChange:_})})]}),u.jsxs("div",{className:"option",children:[u.jsx("div",{className:"label",children:r("sheet.numfmt.currencyType")}),u.jsx("div",{className:"m-t-8 w-140",children:u.jsx(E.Select,{onChange:h,options:d,value:s})})]})]}),u.jsx("div",{className:"m-t-16 label",children:r("sheet.numfmt.negType")}),u.jsx("div",{className:"m-t-8",children:u.jsx(E.SelectList,{onChange:S,options:f,value:l})}),u.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.currencyDes")})]})};var N=function(){return N=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++){e=arguments[r];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s])}return t},N.apply(this,arguments)},De=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(r[n[s]]=t[n[s]]);return r},oe=y.forwardRef(function(t,e){var r=t.icon,n=t.id,s=t.className,i=t.extend,c=De(t,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(n," ").concat(s||"").trim(),l=y.useRef("_".concat(Ue()));return ce(r,"".concat(n),{defIds:r.defIds,idSuffix:l.current},N({ref:e,className:a},c),i)});function ce(t,e,r,n,s){return y.createElement(t.tag,N(N({key:e},Re(t,r,s)),n),(Oe(t,r).children||[]).map(function(i,c){return ce(i,"".concat(e,"-").concat(t.tag,"-").concat(c),r,void 0,s)}))}function Re(t,e,r){var n=N({},t.attrs);r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1);var s=e.defIds;return!s||s.length===0||(t.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+e.idSuffix),Object.entries(n).forEach(function(i){var c=i[0],a=i[1];typeof a=="string"&&(n[c]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),n}function Oe(t,e){var r,n=e.defIds;return!n||n.length===0?t:t.tag==="defs"&&(!((r=t.children)===null||r===void 0)&&r.length)?N(N({},t),{children:t.children.map(function(s){return typeof s.attrs.id=="string"&&n&&n.indexOf(s.attrs.id)>-1?N(N({},s),{attrs:N(N({},s.attrs),{id:s.attrs.id+e.idSuffix})}):s})}):t}function Ue(){return Math.random().toString(36).substring(2,8)}oe.displayName="UniverIcon";var we={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ae=y.forwardRef(function(t,e){return y.createElement(oe,Object.assign({},t,{id:"check-mark-single",ref:e,icon:we}))});ae.displayName="CheckMarkSingle";const Fe="univer-custom-format-title",$e="univer-custom-format-input",Le="univer-custom-format-history-list",ke="univer-custom-format-history-list-item",He="univer-custom-format-history-list-item-icon-wrap",We="univer-custom-format-des",R={customFormatTitle:Fe,customFormatInput:$e,customFormatHistoryList:Le,customFormatHistoryListItem:ke,customFormatHistoryListItemIconWrap:He,customFormatDes:We},z="customFormat",X="numfmt_custom_pattern";function Ae(t){const{defaultPattern:e,action:r,onChange:n}=t,s=o.useDependency(L),i=o.useDependency(o.ILocalStorageService),c=o.useDependency(o.LocaleService),[a,l]=y.useState(e);r.current=()=>(s.markHabit(z,a),i.getItem(X).then((S=[])=>{const _=[...new Set([a,...S||[]])].splice(0,10).filter(v=>!!v);i.setItem(X,_)}),a);const[p,f]=y.useState([]);y.useEffect(()=>{i.getItem(X).then(S=>{const _=[...m.CURRENCYFORMAT.map(v=>v.suffix("$")),...m.DATEFMTLISG.map(v=>v.suffix),...m.NUMBERFORMAT.map(v=>v.suffix)];_.push(...S||[]),s.addHabit(z,[]).finally(()=>{s.getHabit(z,_).then(v=>{f([...new Set(v)])})})})},[]);const d=S=>{l(S),n(S)},h=()=>{n(a)};return u.jsxs("div",{className:R.customFormat,children:[u.jsx("div",{className:R.customFormatTitle,children:c.t("sheet.numfmt.customFormat")}),u.jsx(E.Input,{placeholder:c.t("sheet.numfmt.customFormat"),onBlur:h,value:a,onChange:l,className:R.customFormatInput}),u.jsx("div",{className:R.customFormatHistoryList,children:p.map(S=>u.jsxs("div",{onClick:()=>d(S),className:R.customFormatHistoryListItem,children:[u.jsx("div",{className:R.customFormatHistoryListItemIconWrap,children:a===S&&u.jsx(ae,{})}),u.jsx("div",{children:S})]},S))}),u.jsx("div",{className:R.customFormatDes,children:c.t("sheet.numfmt.customFormatDes")})]})}const Be=t=>{const e=o.numfmt.getInfo(t);return m.getDateFormatOptions().map(r=>r.value).includes(t)||["date","datetime","time"].includes(e.type)},qe=t=>{const e=y.useMemo(m.getDateFormatOptions,[]),n=o.useDependency(o.LocaleService).t,[s,i]=y.useState(()=>{if(t.defaultPattern){const a=e.find(l=>l.value===t.defaultPattern);if(a)return a.value}return e[0].value});t.action.current=()=>s;const c=a=>{a!==void 0&&(i(a),t.onChange(a))};return u.jsxs("div",{children:[u.jsx("div",{className:"m-t-16 label",children:n("sheet.numfmt.dateType")}),u.jsx("div",{className:"m-t-8",children:u.jsx(E.SelectList,{value:s,options:e,onChange:c})}),u.jsx("div",{className:"describe m-t-14",children:n("sheet.numfmt.dateDes")})]})},Ve=t=>!t,Ge=t=>{const r=o.useDependency(o.LocaleService).t;return t.action.current=()=>"",u.jsx("div",{children:u.jsx("div",{className:"describe m-t-14",children:r("sheet.numfmt.generalDes")})})},Ke=t=>m.getNumberFormatOptions().some(e=>m.isPatternEqualWithoutDecimal(e.value,t)),Ye=t=>{const e=o.useDependency(o.LocaleService),r=y.useMemo(m.getNumberFormatOptions,[]),[n,s]=y.useState(()=>m.getDecimalFromPattern(t.defaultPattern||"",0)),[i,c]=y.useState(()=>{const d=r.find(h=>m.isPatternEqualWithoutDecimal(h.value,t.defaultPattern||""));return(d==null?void 0:d.value)||r[0].value}),a=y.useMemo(()=>m.setPatternDecimal(i,Number(n||0)),[i,n]),l=y.useMemo(()=>!m.isPatternHasDecimal(i),[i]),p=d=>{s(d||0),t.onChange(m.setPatternDecimal(i,Number(d||0)))},f=d=>{d!==void 0&&(s(m.getDecimalFromPattern(d,0)),c(d),t.onChange(d))};return t.action.current=()=>a,u.jsxs("div",{children:[u.jsx("div",{className:"m-t-16 label",children:e.t("sheet.numfmt.decimalLength")}),u.jsx("div",{className:"m-t-8",children:u.jsx(E.InputNumber,{disabled:l,value:n,max:20,min:0,onChange:p})}),u.jsxs("div",{className:"m-t-16 label",children:[" ",e.t("sheet.numfmt.negType")]}),u.jsx("div",{className:"m-t-8",children:u.jsx(E.SelectList,{onChange:f,options:r,value:i})}),u.jsx("div",{className:"describe m-t-14",children:e.t("sheet.numfmt.thousandthPercentileDes")})]})},Je=t=>{const{defaultValue:e,defaultPattern:r,row:n,col:s}=t.value,i=o.useDependency(o.LocaleService),c=y.useRef(()=>""),a=i.t,l=Ne(),p=y.useMemo(()=>[{label:"sheet.numfmt.general",component:Ge},{label:"sheet.numfmt.accounting",component:xe},{label:"sheet.numfmt.currency",component:je},{label:"sheet.numfmt.date",component:qe},{label:"sheet.numfmt.thousandthPercentile",component:Ye},{label:"sheet.numfmt.customFormat",component:Ae}].map(C=>({...C,label:a(C.label)})),[]),[f,d]=y.useState(b),[h,S]=y.useState(()=>`${n}_${s}`),{mark:_,userHabitCurrency:v}=Te(()=>S(`${n}_${s}_userCurrency'`)),P=y.useMemo(()=>{var C;return(C=p.find(O=>O.label===f))==null?void 0:C.component},[f]);function b(){return[Ve,Ee,Me,Be,Ke].reduce((O,he,fe)=>O||(he(r)?p[fe].label:""),"")||p[0].label}const T=p.map(C=>({label:C.label,value:C.label})),x=C=>{d(C),l(()=>t.onChange({type:"change",value:c.current()||""}))},H=C=>{t.onChange({type:"change",value:C})},G=()=>{const C=c.current()||"",O=m.getCurrencyType(C);O&&_(O),t.onChange({type:"confirm",value:C})},U=()=>{t.onChange({type:"cancel",value:""})},K={onChange:H,defaultValue:e,defaultPattern:r,action:c};return y.useEffect(()=>{d(b()),S(`${n}_${s}`)},[n,s]),u.jsxs("div",{className:"numfmt-panel p-b-20",children:[u.jsxs("div",{children:[u.jsx("div",{className:"label m-t-14",children:a("sheet.numfmt.numfmtType")}),u.jsx("div",{className:"m-t-8",children:u.jsx(E.Select,{onChange:x,options:T,value:f,style:{width:"100%"}})}),u.jsx("div",{children:P&&u.jsx(Z.Provider,{value:v,children:y.createElement(P,{...K,key:h})})})]}),u.jsxs("div",{className:"btn-list m-t-14 m-b-20",children:[u.jsx(E.Button,{size:"small",onClick:U,className:"m-r-12",children:a("sheet.numfmt.cancel")}),u.jsx(E.Button,{type:"primary",size:"small",onClick:G,children:a("sheet.numfmt.confirm")})]})]})};var ze=Object.defineProperty,Xe=Object.getOwnPropertyDescriptor,Ze=(t,e,r,n)=>{for(var s=n>1?void 0:n?Xe(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&ze(e,r,s),s},M=(t,e)=>(r,n)=>e(r,n,t);const ne="SHEET_NUMFMT_PANEL";let k=class extends o.Disposable{constructor(e,r,n,s,i,c,a,l,p,f){super();W(this,"_previewPattern","");W(this,"_sidebarDisposable",null);this._sheetInterceptorService=e,this._themeService=r,this._univerInstanceService=n,this._commandService=s,this._selectionManagerService=i,this._renderManagerService=c,this._numfmtService=a,this._componentManager=l,this._sidebarService=p,this._localeService=f,this._initRealTimeRenderingInterceptor(),this._initPanel(),this._initCommands(),this._initCloseListener(),this._commandExecutedListener()}openPanel(){var P;const e=this._sidebarService,r=this._selectionManagerService,n=this._commandService,s=this._univerInstanceService,i=this._numfmtService,c=this._localeService,l=(((P=r.getCurrentSelections())==null?void 0:P.map(b=>b.range))||[])[0];if(!l)return!1;const p=s.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET),f=p.getActiveSheet();if(!f)return!1;const d=f.getCellRaw(l.startRow,l.startColumn),h=i.getValue(p.getUnitId(),f.getSheetId(),l.startRow,l.startColumn);let S="";h&&(S=h.pattern);const _=(d==null?void 0:d.t)===o.CellValueType.NUMBER?d.v:12345678,v={onChange:b=>{var T;if(b.type==="change")this._previewPattern=b.value,this._forceUpdate();else if(b.type==="confirm"){const x=((T=r.getCurrentSelections())==null?void 0:T.map(U=>U.range))||[],H={values:[]},G=m.getPatternType(b.value);x.forEach(U=>{o.Range.foreach(U,(K,C)=>{H.values.push({row:K,col:C,pattern:b.value,type:G})})}),n.executeCommand(m.SetNumfmtCommand.id,H),e.close()}else b.type==="cancel"&&e.close()},value:{defaultPattern:S,defaultValue:_,row:l.startRow,col:l.startColumn}};return this._sidebarDisposable=e.open({header:{title:c.t("sheet.numfmt.title")},children:{label:ne,...v},onClose:()=>{this._forceUpdate(),n.executeCommand(Y.id)}}),!0}_forceUpdate(e){var n;const r=this._renderManagerService.getRenderById(e!=null?e:this._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET).getUnitId());r==null||r.with(j.SheetSkeletonManagerService).reCalculate(),(n=r==null?void 0:r.mainComponent)==null||n.makeDirty()}_initCommands(){[$,Y].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initPanel(){this._componentManager.register(ne,Je)}_initRealTimeRenderingInterceptor(){const e=new D.Observable(n=>{this._commandService.onCommandExecuted(s=>{s.id===$.id&&n.next(!0),s.id===Y.id&&n.next(!1)})}),r=D.combineLatest([e,this._selectionManagerService.selectionMoveEnd$.pipe(A.map(n=>n?n.map(s=>s.range):[]))]);this.disposeWithMe(o.toDisposable(r.pipe(A.switchMap(([n,s])=>new D.Observable(i=>{const c=new o.DisposableCollection;return n&&s.length&&i.next({selectionRanges:s,disposableCollection:c}),()=>{c.dispose()}})),A.tap(()=>{this._previewPattern=null})).subscribe(({disposableCollection:n,selectionRanges:s})=>{var c,a;const i=this._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET);this.openPanel(),n.add(this._sheetInterceptorService.intercept(g.INTERCEPTOR_POINT.CELL_CONTENT,{priority:99,effect:o.InterceptorEffectEnum.Value|o.InterceptorEffectEnum.Style,handler:(l,p,f)=>{const{row:d,col:h}=p,S=f(l)||{};if(s.find(_=>_.startColumn<=h&&_.endColumn>=h&&_.startRow<=d&&_.endRow>=d)){const _=p.worksheet.getCellRaw(d,h),v=_==null?void 0:_.v,P=_==null?void 0:_.t;if(v==null||P!==o.CellValueType.NUMBER||this._previewPattern===null)return S;const b=m.getPatternPreviewIgnoreGeneral(this._previewPattern,v,this._localeService.getCurrentLocale());if(b.color){const x=this._themeService.getCurrentTheme()[`${b.color}500`];return{...S,v:b.result,t:o.CellValueType.STRING,s:{cl:{rgb:x}}}}return{...S,v:b.result,t:o.CellValueType.STRING}}return S}})),(a=(c=this._renderManagerService.getRenderById(i.getUnitId()))==null?void 0:c.mainComponent)==null||a.makeDirty()})))}_commandExecutedListener(){const e=[g.RemoveNumfmtMutation.id,g.SetNumfmtMutation.id];this.disposeWithMe(new D.Observable(r=>{const n=this._commandService.onCommandExecuted(s=>{if(e.includes(s.id)){const i=s.params;r.next(i.unitId)}});return()=>n.dispose()}).pipe(A.debounceTime(16)).subscribe(r=>this._forceUpdate(r)))}_initCloseListener(){this._univerInstanceService.getCurrentTypeOfUnit$(o.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{var r;e||((r=this._sidebarDisposable)==null||r.dispose(),this._sidebarDisposable=null)})}};k=Ze([M(0,o.Inject(g.SheetInterceptorService)),M(1,o.Inject(o.ThemeService)),M(2,o.IUniverInstanceService),M(3,o.ICommandService),M(4,o.Inject(g.SheetsSelectionsService)),M(5,Se.IRenderManagerService),M(6,g.INumfmtService),M(7,o.Inject(I.ComponentManager)),M(8,I.ISidebarService),M(9,o.Inject(o.LocaleService))],k);var Qe=Object.defineProperty,et=Object.getOwnPropertyDescriptor,tt=(t,e,r,n)=>{for(var s=n>1?void 0:n?et(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&Qe(e,r,s),s},F=(t,e)=>(r,n)=>e(r,n,t);const nt=()=>{let t=[];return{add:(s,i,c,a,l)=>t.push({unitId:s,subUnitId:i,row:c,col:a,value:l}),getEffects:()=>t,clean:()=>{t=[]}}};let q=class extends o.Disposable{constructor(e,r,n,s,i){super();W(this,"_collectEffectMutation",nt());this._sheetInterceptorService=e,this._numfmtService=r,this._univerInstanceService=n,this._injector=s,this._editorBridgeService=i,this._initInterceptorEditorStart(),this._initInterceptorEditorEnd(),this._initInterceptorCommands()}_initInterceptorEditorStart(){this._editorBridgeService&&this.disposeWithMe(o.toDisposable(this._sheetInterceptorService.writeCellInterceptor.intercept(g.BEFORE_CELL_EDIT,{handler:(e,r,n)=>{const s=r.row,i=r.col,c=this._numfmtService.getValue(r.unitId,r.subUnitId,s,i);if(c)switch(m.getPatternType(c.pattern)){case"scientific":case"currency":case"grouped":case"number":return r.worksheet.getCellRaw(s,i);case"percent":case"date":case"time":case"datetime":default:return n&&n(e)}return n(e)}})))}_initInterceptorEditorEnd(){this.disposeWithMe(o.toDisposable(this._sheetInterceptorService.writeCellInterceptor.intercept(g.AFTER_CELL_EDIT,{handler:(e,r,n)=>{var f,d,h,S;this._collectEffectMutation.clean();const s=this._numfmtService.getValue(r.unitId,r.subUnitId,r.row,r.col),i=(f=s&&m.getPatternType(s.pattern))!=null?f:"",c=()=>{s&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,null)};if(!(e!=null&&e.v)&&!(e!=null&&e.p)||(s==null?void 0:s.pattern)===ie.DEFAULT_TEXT_FORMAT)return n(e);const a=(d=e.p)==null?void 0:d.body,l=(S=(h=e==null?void 0:e.p)==null?void 0:h.body)!=null&&S.dataStream?e.p.body.dataStream.replace(/\r\n$/,""):String(e.v),p=o.numfmt.parseDate(l)||o.numfmt.parseTime(l)||o.numfmt.parseNumber(l);if(a)if(st(a)){const{dataStream:_}=a,v=_.replace(/\r\n$/,""),P=Number(v);if(Number.isNaN(P)&&!p)return n(e)}else return n(e);if(p){p.z&&this._collectEffectMutation.add(r.unitId,r.subUnitId,r.row,r.col,{pattern:p.z});const _=Number(p.v);return n({...e,p:void 0,v:_,t:o.CellValueType.NUMBER})}else(["date","time","datetime","percent"].includes(i)||!rt(l))&&c();return n(e)}})))}_initInterceptorCommands(){const e=this;this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations(r){var n;switch(r.id){case g.SetRangeValuesCommand.id:{const s=e._univerInstanceService.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SHEET),i=s.getUnitId(),c=(n=s.getActiveSheet())==null?void 0:n.getSheetId();if(!c)return{redos:[],undos:[]};const a=e._collectEffectMutation.getEffects();if(e._collectEffectMutation.clean(),!a.length)return{redos:[],undos:[]};const l=a.filter(h=>{var S;return!!((S=h.value)!=null&&S.pattern)}).map(h=>({row:h.row,col:h.col,pattern:h.value.pattern})),p=a.filter(h=>{var S;return!((S=h.value)!=null&&S.pattern)}).map(h=>({startRow:h.row,endColumn:h.col,startColumn:h.col,endRow:h.row})),f=[],d=[];if(l.length){const h={id:g.SetNumfmtMutation.id,params:g.transformCellsToRange(i,c,l)};f.push(h),d.push(...g.factorySetNumfmtUndoMutation(e._injector,h.params))}if(p.length){const h={id:g.RemoveNumfmtMutation.id,params:{unitId:i,subUnitId:c,ranges:p}};f.push(h),d.push(...g.factoryRemoveNumfmtUndoMutation(e._injector,h.params))}return{redos:f,undos:d.reverse()}}}return{redos:[],undos:[]}}}))}};q=tt([F(0,o.Inject(g.SheetInterceptorService)),F(1,o.Inject(g.INumfmtService)),F(2,o.Inject(o.IUniverInstanceService)),F(3,o.Inject(o.Injector)),F(4,o.Optional(j.IEditorBridgeService))],q);function rt(t){return/^-?\d+(\.\d+)?$/.test(t)}function st(t){const{textRuns:e=[],paragraphs:r=[],customRanges:n,customBlocks:s=[]}=t,i=["va"];return!(e.some(c=>!!(c.ts&&Object.keys(c.ts).some(l=>i.includes(l))))||r.some(c=>c.bullet)||r.length>=2||n!=null&&n.length||s.length>0)}const B=[{label:"sheet.numfmt.general",pattern:null},{label:"sheet.numfmt.text",pattern:ie.DEFAULT_TEXT_FORMAT},"|",{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:""}],it=t=>({icon:new D.Observable(e=>{const r=t.get(m.MenuCurrencyService);function n(i){return{[m.countryCurrencyMap.US]:"DollarSingle",[m.countryCurrencyMap.RU]:"RoubleSingle",[m.countryCurrencyMap.CN]:"RmbSingle",[m.countryCurrencyMap.AT]:"EuroSingle"}[i]||"DollarSingle"}const s=m.countryCurrencyMap[r.getCurrencySymbol()]||"$";return e.next(n(s)),r.currencySymbol$.subscribe(i=>{const c=m.countryCurrencyMap[i]||"$";e.next(n(c))})}),id:m.SetCurrencyCommand.id,title:"sheet.numfmt.currency",tooltip:"sheet.numfmt.currency",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[g.WorkbookEditablePermission],worksheetTypes:[g.WorksheetEditPermission,g.WorksheetSetCellStylePermission],rangeTypes:[g.RangeProtectionPermissionEditPoint]})}),ot=t=>({icon:"AddDigitsSingle",id:m.AddDecimalCommand.id,title:"sheet.numfmt.addDecimal",tooltip:"sheet.numfmt.addDecimal",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[g.WorkbookEditablePermission],worksheetTypes:[g.WorksheetEditPermission,g.WorksheetSetCellStylePermission],rangeTypes:[g.RangeProtectionPermissionEditPoint]})}),ct=t=>({icon:"ReduceDigitsSingle",id:m.SubtractDecimalCommand.id,title:"sheet.numfmt.subtractDecimal",tooltip:"sheet.numfmt.subtractDecimal",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[g.WorkbookEditablePermission],worksheetTypes:[g.WorksheetEditPermission,g.WorksheetSetCellStylePermission],rangeTypes:[g.RangeProtectionPermissionEditPoint]})}),at=t=>({icon:"PercentSingle",id:m.SetPercentCommand.id,title:"sheet.numfmt.percent",tooltip:"sheet.numfmt.percent",type:I.MenuItemType.BUTTON,hidden$:I.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[g.WorkbookEditablePermission],worksheetTypes:[g.WorksheetEditPermission,g.WorksheetSetCellStylePermission],rangeTypes:[g.RangeProtectionPermissionEditPoint]})}),lt=t=>{const e=t.get(o.IUniverInstanceService),r=t.get(o.ICommandService),n=t.get(o.LocaleService),s=t.get(g.SheetsSelectionsService),i=j.deriveStateFromActiveSheet$(e,"",({workbook:c,worksheet:a})=>new D.Observable(l=>D.merge(s.selectionMoveEnd$,new D.Observable(p=>{const f=[g.RemoveNumfmtMutation.id,g.SetNumfmtMutation.id],d=r.onCommandExecuted(h=>{f.includes(h.id)&&p.next(null)});return()=>d.dispose()})).subscribe(()=>{var f,d;const p=s.getCurrentSelections();if(p&&p[0]){const h=p[0].range,S=h.startRow,_=h.startColumn,v=(d=c.getStyles().get((f=a.getCell(S,_))==null?void 0:f.s))==null?void 0:d.n,P=v==null?void 0:v.pattern;let b=n.t("sheet.numfmt.general");if(P){const T=B.filter(x=>typeof x=="object"&&x.pattern).find(x=>m.isPatternEqualWithoutDecimal(P,x.pattern));T&&typeof T=="object"&&T.pattern?b=n.t(T.label):b=n.t("sheet.numfmt.moreFmt")}l.next(b)}})));return{label:le,id:$.id,tooltip:"sheet.numfmt.title",type:I.MenuItemType.SELECTOR,selections:[{label:{name:ue,hoverable:!1}}],value$:i,hidden$:I.getMenuHiddenObservable(t,o.UniverInstanceType.UNIVER_SHEET),disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[g.WorkbookEditablePermission],worksheetTypes:[g.WorksheetSetCellStylePermission,g.WorksheetEditPermission],rangeTypes:[g.RangeProtectionPermissionEditPoint]})}},le="sheet.numfmt.moreNumfmtType",ue="sheet.numfmt.moreNumfmtType.options",ut=t=>{var n;const e=o.useDependency(o.LocaleService),r=(n=t.value)!=null?n:e.t("sheet.numfmt.general");return u.jsx("span",{className:"more-numfmt-type",children:r})},mt=()=>{const t=o.useDependency(o.ICommandService),e=o.useDependency(o.LocaleService),r=o.useDependency(I.ILayoutService);o.useInjector();const n=o.useDependency(g.SheetsSelectionsService),s=a=>{const l=n.getCurrentLastSelection();if(!l)return;const p=l.range,f=[];o.Range.foreach(p,(d,h)=>{a?f.push({row:d,col:h,pattern:a,type:m.getPatternType(a)}):f.push({row:d,col:h})}),t.executeCommand(m.SetNumfmtCommand.id,{values:f}),r.focus()},i=a=>{if(a===0)s(null);else if(a===B.length-1)t.executeCommand($.id);else{const l=B[a];l.pattern&&s(l.pattern)}},c=1220;return u.jsx("div",{className:"more-numfmt-type-options",children:B.map((a,l)=>a==="|"?u.jsx("div",{className:"line m-t-4",onClick:p=>p.stopPropagation()},l):u.jsxs("div",{className:"option-item m-t-4",onClick:()=>{i(l)},children:[u.jsx("div",{children:e.t(a.label)}),u.jsx("div",{className:"m-l-26",children:a.pattern?m.getPatternPreview(a.pattern||"",c,e.getCurrentLocale()).result:""})]},l))})},dt={[I.RibbonStartGroup.FORMULAS_INSERT]:{[m.SetCurrencyCommand.id]:{order:4,menuItemFactory:it},[m.AddDecimalCommand.id]:{order:5,menuItemFactory:ot},[m.SubtractDecimalCommand.id]:{order:6,menuItemFactory:ct},[m.SetPercentCommand.id]:{order:7,menuItemFactory:at},[$.id]:{order:8,menuItemFactory:lt}}};var ht=Object.defineProperty,ft=Object.getOwnPropertyDescriptor,pt=(t,e,r,n)=>{for(var s=n>1?void 0:n?ft(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&ht(e,r,s),s},re=(t,e)=>(r,n)=>e(r,n,t);let V=class extends o.Disposable{constructor(t,e){super(),this._componentManager=t,this._menuManagerService=e,this._initMenu()}_initMenu(){this._menuManagerService.mergeMenu(dt),this.disposeWithMe(this._componentManager.register(le,ut)),this.disposeWithMe(this._componentManager.register(ue,mt))}};V=pt([re(0,o.Inject(I.ComponentManager)),re(1,I.IMenuManagerService)],V);var me=Object.defineProperty,vt=Object.getOwnPropertyDescriptor,St=(t,e,r)=>e in t?me(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,gt=(t,e,r,n)=>{for(var s=n>1?void 0:n?vt(e,r):e,i=t.length-1,c;i>=0;i--)(c=t[i])&&(s=(n?c(e,r,s):c(s))||s);return n&&s&&me(e,r,s),s},se=(t,e)=>(r,n)=>e(r,n,t),de=(t,e,r)=>St(t,typeof e!="symbol"?e+"":e,r);const yt="SHEET_NUMFMT_UI_PLUGIN";exports.UniverSheetsNumfmtUIPlugin=class extends o.Plugin{constructor(e=ge,r,n){super(),this._config=e,this._injector=r,this._configService=n;const{menu:s,...i}=this._config;s&&this._configService.setConfig("menu",s,{merge:!0}),this._configService.setConfig(I.UI_PLUGIN_CONFIG_KEY,i)}onStarting(){o.registerDependencies(this._injector,[[k],[q],[L],[V]])}onRendered(){o.touchDependencies(this._injector,[[k],[q],[V]])}};de(exports.UniverSheetsNumfmtUIPlugin,"pluginName",yt);de(exports.UniverSheetsNumfmtUIPlugin,"type",o.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsNumfmtUIPlugin=gt([o.DependentOn(j.UniverSheetsUIPlugin,m.UniverSheetsNumfmtPlugin),se(1,o.Inject(o.Injector)),se(2,o.IConfigService)],exports.UniverSheetsNumfmtUIPlugin);
@@ -0,0 +1 @@
1
+ "use strict";const e={sheet:{numfmt:{percent:"Pourcentage",title:"Format de nombre",numfmtType:"Types de format",cancel:"Annuler",confirm:"Confirmer",general:"Général",accounting:"Comptabilité",text:"Texte",number:"Nombre",currency:"Devise",date:"Date",time:"Heure",thousandthPercentile:"Séparateur de milliers",preview:"Aperçu",dateTime:"Date et heure",decimalLength:"Nombre de décimales",currencyType:"Symbole de devise",moreFmt:"Formats",financialValue:"Valeur financière",roundingCurrency:"Arrondir la devise",timeDuration:"Durée",currencyDes:"Le format de devise est utilisé pour représenter des valeurs monétaires générales. Le format de comptabilité aligne une colonne de valeurs avec des points décimaux",accountingDes:"Le format de nombre de comptabilité aligne une colonne de valeurs avec des symboles de devise et des points décimaux",dateType:"Type de date",dateDes:"Le format de date présente les valeurs de la série date et heure sous forme de valeurs de date.",negType:"Type de nombre négatif",generalDes:"Le format général ne contient aucun format de nombre spécifique.",thousandthPercentileDes:"Le format de percentile est utilisé pour la représentation des nombres ordinaires. Les formats monétaires et comptables fournissent un format spécialisé pour les calculs de valeurs monétaires.",addDecimal:"Augmenter les décimales",subtractDecimal:"Diminuer les décimales",customFormat:"Format personnalisé",customFormatDes:"Générer des formats de nombre personnalisés basés sur des formats existants."}}};module.exports=e;